




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、機(jī)器學(xué)習(xí)支持機(jī)復(fù)旦大學(xué)博士wdzhao支持機(jī)(Support Vector Machine,SVM)屬于有監(jiān)督學(xué)習(xí)模型,主要用于解決數(shù)據(jù)解為多個(gè)二元問題。通常SVM用于二元問題,對(duì)于多元可將其分、文本分問題,再進(jìn)行,主要應(yīng)用場(chǎng)景有圖像類、面部識(shí)別和郵件檢測(cè)等領(lǐng)域。本章共劃分為兩個(gè)小節(jié),分別的應(yīng)用過程。支持機(jī)模型的基礎(chǔ)以及支持機(jī) 章節(jié) 章節(jié)結(jié)構(gòu) 支持機(jī)模型核函數(shù)模型原理分析支持機(jī)應(yīng)用基于SVM進(jìn)行基于支持機(jī)和主成分分析的人臉識(shí)別一個(gè)例子:青光眼圖中“+”表示開角型青光眼樣本點(diǎn),“”表示閉角型青光眼型樣本點(diǎn)。樣本數(shù)據(jù)相互交叉較多,不易進(jìn)行線性可分。 支持機(jī)模型支持空間機(jī)在 到維數(shù)或無限中構(gòu)造超平面
2、或超平面集合,將原有限維的空間中,在該空間中進(jìn)行分離可能會(huì)更容易。它可以同時(shí)最小化經(jīng)驗(yàn)誤差和最大化集合邊緣區(qū),因此它也被稱為最大間隔器。直觀來說,邊界距離最近的訓(xùn)練數(shù)據(jù)點(diǎn)越遠(yuǎn)越好,因?yàn)檫@樣可以縮小器的泛化誤差。低維不可分問題未必不可分以一個(gè)二元問題為例講解模型原理。首先假設(shè)有兩類數(shù)據(jù),如圖需要找出一條邊界來將兩類數(shù)據(jù)分隔開來。模型基本思想下圖中列出一些可行的分隔方式。在當(dāng)前的數(shù)據(jù)集的條件下,三種分隔方式都是可行的,我們?cè)撊绾巫鲞x擇?模型基本思想說來,需要選擇的是具有較強(qiáng)能力的直線,有較的結(jié)果和較強(qiáng)的抗噪能力,比如在數(shù)據(jù)集擴(kuò)展之后如下圖所示。在這三種分隔方式中,b的分隔效果更好。模型基本思想找到
3、最優(yōu)數(shù)據(jù)的分界線,使得對(duì)樣本數(shù)據(jù)的效果更就是要盡可能地遠(yuǎn)離兩類數(shù)據(jù)點(diǎn),即數(shù)據(jù)集的邊緣點(diǎn)到分界線的距離d最大,這里虛線穿過的邊緣點(diǎn)稱作支持,間隔為2d。如下圖所示。模型基本思想支持機(jī)原理SVM是從線性可分情況下的最優(yōu)面發(fā)展而來的。超平面:(w.x)+b=0 函數(shù):yi = sgn(wxi + b)yi Î-1,1 最大間隔問題:在間隔固定為1時(shí),尋求最小的w 支持機(jī)原理Ø 容易看出,最優(yōu)化目標(biāo)就是最大化幾何間隔,并且注意到幾何間隔與w 反比,因此只需尋找最小的w ,即Ø 對(duì)于這個(gè)目標(biāo)函數(shù),可以用一個(gè)等價(jià)的目標(biāo)函數(shù)來替代:支持機(jī)原理Ø 為使對(duì)所有樣本正確,要
4、求滿足如下約束:支持機(jī)原理2Ø優(yōu)化問題:mins.t.w12yi (wxi ) + b -1 ³ 0(i = 1, 2,., n)Ø為解決這個(gè)約束問題的最優(yōu)解,引入Lagrange函數(shù):式中i>=0為L(zhǎng)agrange乘子。為求函數(shù)的最小值,分別對(duì)w、b、 i求偏微:支持機(jī)原理Ø分別對(duì)w、b、 求偏微:可以將上述求最優(yōu)平面的問題轉(zhuǎn)化為對(duì)偶問題:支持機(jī)原理支持機(jī)原理Ø這是一個(gè)二次函數(shù)尋優(yōu)的問題,:唯一的解。若a*為最優(yōu)解式中束條件:為不為零的樣本,即支持。是閾值,可由約得到最優(yōu)函數(shù)為支持空間機(jī)通過線性變換A(x)將輸入空間X到特征空間Y,如果
5、低維函數(shù)K,x,yX,使得K(x,y)=A(x)·A(y),則稱K(x,y)為核函數(shù)。核函數(shù)可以與不同的算法相結(jié)合,形成多種不同的基于核函數(shù)的的核函數(shù)有:,常用線性核函數(shù)多項(xiàng)式核函數(shù)徑向基核函數(shù)Sigmoid核核函數(shù)線性核函數(shù)(Linear Kernel)是最簡(jiǎn)單的核函數(shù),主要用于線性可分的情況, 表達(dá)式如下:K(x,y) = x·y+c其中c是可選的常數(shù)。線性核函數(shù)是原始輸入空間的內(nèi)積,即特征空間和輸入空間的維度是一樣的,參數(shù)較少運(yùn)算速度較快。適用的情景是在特征數(shù)量相對(duì)于樣本數(shù)量非常多時(shí)。線性核函數(shù)多項(xiàng)式核函數(shù)(Polynomial Kernel)是一種非穩(wěn)態(tài)核函數(shù),適合
6、于正交歸一化后的數(shù)據(jù),表達(dá)式如下:K(x,y) = a·x·y+c d其中a是調(diào)節(jié)參數(shù),d是最高次項(xiàng)次數(shù),c是可選的常數(shù)。多項(xiàng)式核函數(shù)徑向基核函數(shù)(Radial Basis Function Kernel)具有很強(qiáng)的靈活性,應(yīng)用廣泛。與多項(xiàng)式核函數(shù)相比參數(shù)較少。因此大多數(shù)情況下都有較性能。徑向基核函數(shù)類似于函數(shù),所以也被稱為核函數(shù)。在不確定用哪種核函數(shù)時(shí),可優(yōu)先驗(yàn)證核函數(shù)。表達(dá)式如下:K(x,y) = exp-(|x-y|2)/(2·a2)其中a2越大。核函數(shù)就會(huì)變得越平滑,此時(shí)函數(shù)隨輸入x變化較緩慢,模型的偏差和方差大,泛化能力差,容易過擬合。 a2越小,核函數(shù)
7、變化越劇烈,模型的偏差和方差越小,模型對(duì)噪聲樣本比較敏感。徑向基核函數(shù)Sigmoid核(Sigmoid Kernel)來源于MLP中的激活函數(shù),SVM使用Sigmoid相當(dāng)于一個(gè)兩層的感知機(jī)網(wǎng)絡(luò),表達(dá)式如下:K(x,y) = tanh(a·x·y+c)其中a表示調(diào)節(jié)參數(shù),c為可選常數(shù),情況c取1/n,n是數(shù)據(jù)維度。Sigmoid核 支持機(jī)應(yīng)用支持機(jī)(SVM)算法比較適合圖像和文本等樣本特征較多的應(yīng)用場(chǎng)合。基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理,對(duì)樣本集進(jìn)行壓縮,解決了以往需要大樣本數(shù)量進(jìn)行訓(xùn)練的問題。它將文本通過計(jì)算抽象的精確率。量化的訓(xùn)練數(shù)據(jù),提高了的是根據(jù)中與相關(guān)的詞匯來完成的。應(yīng)用S
8、VM對(duì)可以劃分為五個(gè)步驟:獲取數(shù)據(jù)集將文本轉(zhuǎn)化為可處理的分割數(shù)據(jù)集支持機(jī)結(jié)果顯示數(shù)據(jù)集來自于sklearn官網(wǎng)上的20組數(shù)據(jù)集,地址為:dataset數(shù)據(jù)集中一共包含20類0,1,2。部分代碼如下:,選擇其中三類,對(duì)應(yīng)的target依次為select = 'alt.atheism', 'talk.religion.misc', 'comp.graphics'newsgroups_train_se = fetch_20newsgroups(subset='train', categories=select)獲取數(shù)據(jù)集sklearn中
9、封裝了化工具TfidfVectorizer,它統(tǒng)計(jì)每則中各個(gè)單詞出現(xiàn)的頻率,并進(jìn)行TF-IDF處理,其中TF(term frequency)是某一個(gè)給定的詞語(yǔ)在該文件中出現(xiàn)的次數(shù)。IDF(inverse document frequency)是逆文檔頻率,用于降低其它文檔中普遍出現(xiàn)的詞語(yǔ)的重要性,TF-IDF傾向于過濾掉常見的詞語(yǔ),保留重要的詞語(yǔ)。通過TF-IDF來實(shí)現(xiàn)文本特征的選擇,也就是說,一個(gè)詞語(yǔ)在當(dāng)前文章中出現(xiàn)次數(shù)較多,但在其它文章中較少出現(xiàn),那么可認(rèn)為這個(gè)詞語(yǔ)能夠代表此文章,具有較高的類別區(qū)分能力。使用TfidfVectorizer實(shí)例化、建立索引和編碼文檔的過程如下:vectori
10、zer = TfidfVectorizer()vectors = vectorizer.fit_transform(newsgroups_train_se.data) print(vectors.shape)文本轉(zhuǎn)化為使用sklearn中的SVM工具包SVC(C-Support Vector Classification)來進(jìn)行,核函數(shù)采用的是線性核函數(shù),代碼如下:svc = SVC(kernel='linear')svc.fit(x_train, y_train)支持機(jī)print(svc.score(x_test, y_test)Result: 0.955017301038可
11、以看到訓(xùn)練正確率約為95.5%結(jié)果顯示主成分分析(Principal Component Analysis , PCA)是一種降維,可以從多種特征中出主要的影響因素,使用較少的特征數(shù)量表示整體。PCA的目標(biāo)就是找到方差大的維度作為特征。本案例可以被劃分為六個(gè)步驟:獲取數(shù)據(jù)集將圖片轉(zhuǎn)化為可處理的n維分割數(shù)據(jù)集PCA主成分分析,降維處理支持機(jī)查看訓(xùn)練后的結(jié)果基于支持機(jī)和主成分分析的人臉識(shí)別主成分分析是最常用的線性降維,它的目標(biāo)是通過某種線性投影,將的數(shù)據(jù)到低維的空間中,并期望在所投影的維度上數(shù)據(jù)的方差最大,以此使用較少的維度,同時(shí)保留較多原數(shù)據(jù)的維度盡可能如果把所有的點(diǎn)都到一起,那么幾乎所有的區(qū)分
12、都丟失了,而如果后方差盡可能的大,那么數(shù)據(jù)點(diǎn)則會(huì)分散開來,特征更加明顯。PCA是丟失原始數(shù)據(jù)最少的一種線性降維,最接近原始數(shù)據(jù)PCA算法目標(biāo)是求出樣本數(shù)據(jù)的協(xié)方差矩陣的特征值和特征,而協(xié)方差矩陣的特征的方向就是PCA需要投影的方向。使樣本數(shù)據(jù)向低維投影后,能盡可能表征原始的數(shù)據(jù)。協(xié)方差矩陣可以用散布矩陣代替,協(xié)方差矩陣乘以(n-1)就是散布矩陣,n為樣本的數(shù)量。協(xié)方差矩陣和散布矩陣都是對(duì)稱矩陣,主對(duì)角線是各個(gè)隨量(各個(gè)維度)的方差主成分分析設(shè)有m條n維數(shù)據(jù),PCA的步驟如下將原始數(shù)據(jù)按列組成n行m列矩陣X計(jì)算矩陣X中每個(gè)特征屬性(n維)的平均M(平均值)將X的每行(代表一個(gè)屬性字段)進(jìn)行零均值
13、化,即減去M1按照公式𝐶 =𝑋𝑋𝑇求出協(xié)方差矩陣m求出協(xié)方差矩陣的特征值及對(duì)應(yīng)的特征將特征按對(duì)應(yīng)特征值從大到小按行排列成矩陣,取前k(k < n)行組成基P通過𝑌 = 𝑃𝑋計(jì)算降維到k維后的樣本特征主成分分析基于sklearn(語(yǔ)言下的機(jī)器學(xué)習(xí)庫(kù))和numpy隨機(jī)生成2個(gè)類別共40個(gè)3的樣本點(diǎn),生成的代碼如下:mu_vec1 = np.array(0,0,0)cov_mat1 = np.array(1,0,0,0,1,0,0,0,1)class1_sample = np.ran
14、dom.multivariate_normal(mu_vec1, cov_mat1, 20).T mu_vec2 = np.array(1,1,1)cov_mat2 = np.array(1,0,0,0,1,0,0,0,1)class2_sample = np.random.multivariate_normal(mu_vec2, cov_mat2, 20).T主成分分析數(shù)據(jù)集來自于英國(guó)劍橋大學(xué)的AT&T人臉數(shù)據(jù)集,此數(shù)據(jù)集共有40×10=400張圖片,圖片大小為112x92,已經(jīng)經(jīng)過灰度處理。一共被劃分為40個(gè)類,每類中包含的是同一個(gè)人的10張圖像。獲取數(shù)據(jù)集由于每張圖片的
15、大小為112x92,每張圖片共有10304個(gè)像素點(diǎn),這時(shí)需要一個(gè)圖片轉(zhuǎn)化函數(shù)ImageConvert(),將每張圖片轉(zhuǎn)化為一個(gè)10304維下:def ImageConvert():for i in range(1, 41):for j in range(1, 11):path = picture_savePath + "s" + str(i) + "/" + str(j) + ".pgm" # 單通道圖片,代碼如img = cv2.imh, w = img.shape(path, cv2.IM_GRAYSCALE)img_col =
16、img.reshape(h * w)data.append(img_col) label.append(i)圖片轉(zhuǎn)化為data變量中l(wèi)abel中了每個(gè)圖片的10304維,格式為列表變量(list)。變量了每個(gè)圖片的類別,為數(shù)字140。應(yīng)用numpy生成特征矩陣,代碼如下:import numpy as npC_data = np.array(data) C_label = np.array(label)圖片轉(zhuǎn)化為將訓(xùn)練集與測(cè)試集按照4:1的比例進(jìn)行隨機(jī)分割,即測(cè)試集占20%,代碼如下:from sklearn.m_selection import train_test_splitx_train
17、, x_test, y_train, y_test = train_test_split(C_data, C_label, test_size=0.2,random_state=256)分割數(shù)據(jù)集引入sklearn工具進(jìn)行PCA處理:from sklearn.decomposition import PCApca = PCA(n_components=15, svd_solver='auto').fit(x_train)中的15表示處理后保留維度為15個(gè),auto表示PCA會(huì)自動(dòng)選擇合適的SVD算法,進(jìn)行維度轉(zhuǎn)化: x_train_pca = pca.transform(x_t
18、rain)x_test_pca = pca.transform(x_test)PCA主成分分析,降維處理使用sklearn中的SVM工具包SVC(C-Support Vector Classification)來進(jìn)行,核函數(shù)采用的是線性核函數(shù),代碼如下:svc = SVC(kernel='linear')svc.fit(x_train, y_train)支持機(jī)使用測(cè)試集評(píng)估器的效果,代碼如下:print('%.5f' % svc.score(x_test_pca, y_test)得到的輸出正確率結(jié)果如下圖所示:查看訓(xùn)練后的結(jié)果進(jìn)行對(duì)比實(shí)驗(yàn),將保留維度為10和20時(shí)的效果依次如下面兩張圖所示:從圖中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 60670-24:2024 EXV EN Boxes and enclosures for electrical accessories for household and similar fixed electrical installations - Part 24: Particular requirements for encl
- 2025-2030年中國(guó)鎂錳電池市場(chǎng)規(guī)模分析及發(fā)展建議研究報(bào)告
- 2025-2030年中國(guó)辣椒制品行業(yè)運(yùn)行動(dòng)態(tài)與投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)蒿甲醚行業(yè)市場(chǎng)現(xiàn)狀調(diào)研與前景規(guī)模預(yù)測(cè)報(bào)告
- 2025-2030年中國(guó)自動(dòng)高壓蒸汽滅菌器市場(chǎng)發(fā)展?fàn)顩r及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)育發(fā)水市場(chǎng)發(fā)展?fàn)顩r及投資規(guī)劃研究報(bào)告
- 2025安全員-C證考試題庫(kù)
- 2025-2030年中國(guó)糯玉米汁飲料市場(chǎng)發(fā)展預(yù)測(cè)及前景調(diào)研分析報(bào)告
- 2025-2030年中國(guó)粉針類頭孢制劑行業(yè)需求分析與十三五規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)移動(dòng)電源車產(chǎn)業(yè)運(yùn)行動(dòng)態(tài)及前景趨勢(shì)預(yù)測(cè)報(bào)告
- 2023年高中音樂課件陽(yáng)關(guān)三疊(琴歌)
- 胸腔閉式引流護(hù)理-中華護(hù)理學(xué)會(huì)團(tuán)體標(biāo)準(zhǔn)
- 公司資產(chǎn)情況說明范文百度
- 醫(yī)療器械中有害殘留物檢驗(yàn)技術(shù)
- 2015-2022年大慶醫(yī)學(xué)高等專科學(xué)校高職單招語(yǔ)文/數(shù)學(xué)/英語(yǔ)筆試參考題庫(kù)含答案解析
- 產(chǎn)品過程特殊特性初始清單(示例)
- 兩篇古典英文版成語(yǔ)故事塞翁失馬
- 中國(guó)古代文學(xué)史 馬工程課件(中)13第五編 宋代文學(xué) 第一章 北宋初期文學(xué)
- GB/T 14643.4-2009工業(yè)循環(huán)冷卻水中菌藻的測(cè)定方法第4部分:土壤真菌的測(cè)定平皿計(jì)數(shù)法
- DL-T 5190.1-2022 電力建設(shè)施工技術(shù)規(guī)范 第1部分:土建結(jié)構(gòu)工程(附條文說明)
- GA/T 914-2010聽力障礙的法醫(yī)學(xué)評(píng)定
評(píng)論
0/150
提交評(píng)論