亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        兩級鄰域采樣的孿生網(wǎng)絡在流形學習中的應用

        2021-05-14 06:29:30徐承志
        計算機工程與應用 2021年9期

        徐承志,萬 方

        湖北工業(yè)大學 計算機學院,武漢430068

        隨著多媒體技術的發(fā)展和大數(shù)據(jù)技術的興起,數(shù)據(jù)維度呈爆炸性增長,使得機器學習、圖像處理、模式識別等研究領域的數(shù)據(jù)分析變得越來越困難。為消除上述問題中的維度災難,降維操作成為數(shù)據(jù)預處理中的重要手段。流形學習(Manifold Learning)是一類特殊的降維問題[1],自2000 年Science中被首次提出以來,已成為信息科學領域的研究熱點[2-3]。流形學習的觀點認為:從局部看,數(shù)據(jù)具有歐氏空間的性質;從全局看,數(shù)據(jù)是嵌入在一個更高緯度的流形體上。流形學習要消除冗余的緯度,用較低緯度來表示數(shù)據(jù)(降維操作)。降維的依據(jù)是,局部歐氏空間的性質在低維空間中得以保留。保留歐氏空間性質的一個主要方式就是保持數(shù)據(jù)間的歐氏距離不變,或者說保持數(shù)據(jù)間的相對位置不變。

        鑒于流形結構的高維嵌入特性,傳統(tǒng)的線性降維方法,如PCA算法[4]、LDA算法[5]等,并不適合流形學習,而一些基于局部線性假設的非線性數(shù)值解法則能很好處理這類特殊的降維問題,如基于重建鄰域線性關系的LLE算法[6]、基于測地距離的Isomap算法[7]、基于重建鄰接圖的LE算法[8]、基于切空間的LTSA算法[9],以及它們的眾多改進算法[10]。這些算法的理論基礎都是基于矩陣數(shù)值分析與優(yōu)化的,但隨著深度學習在人工智能領域的興起,利用神經(jīng)網(wǎng)絡實現(xiàn)降維也成為一種有潛力的研究方向。目前,具有降維效果的神經(jīng)網(wǎng)絡有,用于聚類和分類問題的自組織映射網(wǎng)絡SOM[11],用于詞嵌入的跳字模型Skip-gram 和連續(xù)詞袋模型CBOW[12],用于特征提取的有損壓縮網(wǎng)絡自編碼器Autoencoder[13],以及基于共享權值的孿生網(wǎng)絡[14](Siamese Network)。上述神經(jīng)網(wǎng)絡通過不同的方式實現(xiàn)了傳統(tǒng)領域內的降維需求,并取得了不錯的效果。但是因為流形結構的特殊非線性,鮮有神經(jīng)網(wǎng)絡直接應用于流形學習,本文嘗試將孿生神經(jīng)網(wǎng)絡與流形學習相結合,希望為流形學習提供一種新的解決方案。

        1 孿生網(wǎng)絡

        傳統(tǒng)的基于邏輯回歸的分類網(wǎng)絡,適用于存在大量標注樣本的情況,但在某些情況下,比如類別數(shù)量過多或類別數(shù)量不定,且每個類別的樣本數(shù)量又相對較少時,傳統(tǒng)分類網(wǎng)絡就不那么有效了,比如判定兩幅圖片是否屬于同一類物品,或兩張人臉是否屬于同一個人等。為了解決上述問題,Lecun 等人[15]提出了孿生網(wǎng)絡模型,用于計算樣本間的差異度。孿生網(wǎng)絡將數(shù)據(jù)從樣本空間映射到目標空間,同類數(shù)據(jù)在目標空間中的差異度較小,反之差異度較大。通過計算數(shù)據(jù)間的差異度,孿生網(wǎng)絡可以判斷數(shù)據(jù)是否屬于同一類別。一般情況下,孿生網(wǎng)絡的輸出維度(目標空間維度)要小于輸入維度(樣本空間維度),所以從這種角度看,孿生網(wǎng)絡實現(xiàn)了數(shù)據(jù)降維。如圖1所示,典型的孿生網(wǎng)絡包含兩條通道,并且兩條通道的網(wǎng)絡結構相同、權值相同,故稱為孿生網(wǎng)絡。

        圖1 孿生網(wǎng)絡

        圖1 中的兩個子網(wǎng)Network_1 和Network_2 即為兩條通道,它們共享權值,即是兩個完全相同的子網(wǎng)。兩條通道各自接收樣本空間中的一對數(shù)據(jù)X1和X2,并分別映射為目標空間的GW(X1)和GW(X2)。網(wǎng)絡輸出的能量值EW(X1,X2) 是一個非負數(shù),等于||GW(X1)-GW(X2)||,相當于兩個數(shù)據(jù)在目標空間中的差異度。孿生網(wǎng)絡的另一個輸入Y代表X1與X2這對數(shù)據(jù)的標簽,如果兩個數(shù)據(jù)屬于同類,則Y為0,并希望EW盡量小,否則Y為1,并希望EW盡量大,當兩個數(shù)據(jù)完全相同時,EW自然為最小值0。為了讓同類型數(shù)據(jù)的差異度小,異類型數(shù)據(jù)的差異度大,孿生網(wǎng)絡的損失函數(shù)Loss定義如公式(1)和(2)所示:

        其中,n是訓練的樣本總數(shù),(X1i,X2i,Yi)是第i個數(shù)據(jù)對,LG負責計算同類樣本的損失函數(shù),LI負責計算異類樣本的損失函數(shù)。為了達到同類樣本的差異度小,異類樣本的差異度大的效果,需要將LG設計成單調遞增函數(shù),LI設計成單調遞減函數(shù)。

        孿生網(wǎng)絡的通道結構可以根據(jù)問題的需要進行不同設計,比如針對回歸問題可以選擇多層感知機(MLP)[16]、針對圖像問題可以選擇卷積神經(jīng)網(wǎng)絡(CNN)[17]、針對時序問題又可以選擇循環(huán)神經(jīng)網(wǎng)絡(RNN)[18]等。同時,差異度的計算方法也可以靈活選擇,比如余弦相似度、曼哈頓距離、歐氏距離、漢明距離等。最后,損失函數(shù)也可以自由設計,只要保證優(yōu)化方向符合預期目標就行,比如Lecun[15]就將LG定義為EW的二次項函數(shù)(遞增函數(shù)),把LI定義為EW的負指數(shù)冪函數(shù)(遞減函數(shù))。

        2 孿生網(wǎng)絡與流形學習

        孿生網(wǎng)絡可以實現(xiàn)從樣本空間到目標空間的降維,但是孿生網(wǎng)絡是有監(jiān)督學習,需要樣本標簽來引導網(wǎng)絡訓練,而傳統(tǒng)的流形學習是無監(jiān)督學習,為了將孿生網(wǎng)絡應用于流形學習,需要調整網(wǎng)絡的使用方法。

        2.1 損失函數(shù)與子網(wǎng)設計

        如眾多傳統(tǒng)算法認為的,從局部看,流形是線性嵌入在高維空間中的低維結構,通過找出所有局部映射關系,并附加人為約束,最后整體優(yōu)化,即可實現(xiàn)流形降維,如LLE 算法設定鄰域樣本的線性組合為當前樣本,并以∑Wij=1 為約束進行整合[6];LE 算法在降維過程中保持鄰域內的鄰接圖關系,并以YTDY=I為約束進行整合[8];LTSA 是對局部空間進行PCA 映射,并以TTT=I為約束進行整合[9];而LMDS 則是對局部空間進行MDS 映射,并以YYT=I為約束進行整合[19]。理論上神經(jīng)網(wǎng)絡具有任意復雜的模式分類能力和優(yōu)良的多維函數(shù)映射能力,如果神經(jīng)網(wǎng)絡能夠蘊含足夠多的局部映射關系,并且實現(xiàn)不同的輸入樣本激活不同的映射關系,就可以將神經(jīng)網(wǎng)絡引入流形學習。

        為了將孿生網(wǎng)絡引入流形學習,需要重新設計孿生網(wǎng)絡的損失函數(shù)。將樣本間的空間關系用歐氏距離來表示,并希望映射到低維空間后,樣本間盡量保持原空間里的歐氏距離。假設樣本所在的原始空間是R,降維后的子空間是P,采用圖1 中的孿生網(wǎng)絡結構,則樣本在原始空間內的歐氏距離表示為dR=||X1-X2||,在子空間內的歐氏距離表示為dP=||GW(X1)-GW(X2)||。網(wǎng)絡訓練的目標是希望dR與dP的差值盡量小,即降維后空間關系盡量保持,則可以設計網(wǎng)絡的損失函數(shù)Loss1,如公式(3)~(5)所示:

        上述網(wǎng)絡訓練思路與多維縮放算法(MDS)非常相似[20],不同的是,MDS 要保證所有數(shù)據(jù)點在低維空間中的距離等于在高維空間中的距離,而流形學習只需要保證鄰域內的樣本在低維空間內的距離保持不變。因此在構建訓練集時,只需要選擇鄰域內數(shù)據(jù)來構建訓練樣本。確定鄰域的方法有兩種,第一種是k鄰近法[21],即選擇距離當前樣本最近的k個樣本作為鄰域,第二種是ε鄰域法[22],即選擇與當前樣本的歐氏距離在ε以內的樣本作為鄰域。傳統(tǒng)流形學習算法通常選擇第一種方法來創(chuàng)建鄰域,因為第一種方法能夠產生固定數(shù)目的鄰域樣本,非常適合進行矩陣運算與分析。本文則采用第二種方法,訓練集對鄰域內樣本數(shù)目沒有限制。確定鄰域產生方法后,每個數(shù)據(jù)與其鄰域數(shù)據(jù)形成一組樣本對,匯總所有數(shù)據(jù)的樣本對,并去掉重復后,就形成了孿生網(wǎng)絡的訓練集。

        后續(xù)工作是確定孿生網(wǎng)絡中的通道結構,即子網(wǎng)結構。孿生網(wǎng)絡輸入的是高維樣本,輸出的是低維數(shù)據(jù),僅從某側通道來看,它是一個解決多元多值回歸問題的模型,對于簡單應用可以直接選擇多層感知機(MLP)作為子網(wǎng)結構,如圖2所示。

        圖2 孿生網(wǎng)絡的子網(wǎng)結構

        由于流形學習是非線性降維,可將子網(wǎng)分為前、中、后三個部分。最前端是包含線性激活函數(shù)的升維層(increase dimension layer),中間部分是包含非線性激活函數(shù)relu 的過濾層(filter layer),后端是包含線性激活函數(shù)的降維層(reduce dimension layer)。升維層目的是為了讓樣本的特性盡量充分地表達出來,使得訓練效果更好。這個過程類似支持向量機(SVM)[23]利用核函數(shù)將輸入數(shù)據(jù)映射到高維特征空間的效果。如果輸入樣本的緯度本來就很高,可以考慮省略這一層。過濾層選擇激活函數(shù)relu 的原因是,relu 能有效克服梯度消失問題,并且計算速度和收斂速度都很快。更重要的是,relu是單向飽和(負向飽和),當激勵小于0時輸出為0,當激勵大于0 時輸出則線性增強。單向飽和的直接效果就是,過濾層會產生大量飽和值為0 的“死結點”,而剩余的“活結點”才能與后續(xù)的降維層構成有效輸出。整個過程等效于過濾層中的“活結點”與后端降維層一同構成了局部線性映射關系。孿生網(wǎng)絡的具體算法如圖3所示。

        當孿生網(wǎng)絡訓練到一定的程度后,可任選兩條通道中的一條,用作降維映射。圖4呈現(xiàn)了孿生網(wǎng)絡對于不同曲率的流形結構的降維效果。由于原始空間只有三維,所以子網(wǎng)結構包含1 層線性升維層(100 個結點),2層非線性過濾層(各100個結點)和1層線性降維層(2個結點)。

        當流形結構的曲率不大時,如圖4(a)所示,孿生網(wǎng)絡的降維效果是良好的。但當曲率增加時,如圖4(b)所示,會出現(xiàn)子空間內重疊的現(xiàn)象。造成這一問題的原因是,設計損失函數(shù)時,只考慮了保持鄰近樣本間的距離,而沒有考慮遠離樣本間的空間關系,當樣本在子空間內重疊時,沒有對損失函數(shù)產生明顯的負面影響。為了讓孿生網(wǎng)絡具有更好的適應性,必須對損失函數(shù)做出改進。

        圖3 孿生網(wǎng)絡算法流程圖

        圖4 不同曲率下的流形學習

        2.2 兩級鄰域的損失函數(shù)

        要避免降維數(shù)據(jù)在子空間內重疊,除了確保鄰域樣本在子空間里依然保持距離,還要確保非鄰域樣本在子空間里也要互相遠離。為了在損失函數(shù)中體現(xiàn)樣本的遠離效果,本研究提出了兩級鄰域的概念,一級鄰域的距離是ε1,二級鄰域的距離是ε2(0 <ε1<ε2),如圖5 所示。為此,需要重新引入樣本標簽Y,樣本輸入也還原為傳統(tǒng)孿生網(wǎng)絡的輸入形式(X1,X2,Y)。如果X1與X2距離小于等于ε1,Y取值為0,為正樣本;如果X1與X2的距離大于ε1且小于等于ε2,Y取值為1,為負樣本。正樣本要保持歐氏距離不變,而負樣本要保證歐氏距離大于ε1。從流形結構的特點來看,當樣本遠離到一定的程度后,比如超過ε2時,樣本間的歐氏距離變得沒有意義,所以設置ε2值的時候沒有必要太大,可以綜合考慮樣本間的平均距離和最大距離來設定ε1和ε2。

        圖5 兩級鄰域內的正、負樣本

        為了體現(xiàn)正、負樣本各自產生的效果,重新設計損失函數(shù)Loss2,如公式(6)所示:

        2.3 對比實驗

        下面將改進后的孿生網(wǎng)絡應用到經(jīng)典的仿真數(shù)據(jù)(Swiss roll)的降維中。由于Swiss roll 的原始空間僅僅是三維,為了充分表達樣本蘊含的信息,即降低網(wǎng)絡訓練難度,孿生子網(wǎng)的前端設計了150 個結點的升維層,將3 維輸入映射到150 維空間中。子網(wǎng)的中部是三層各包含了150 個結點的過濾層,最后是包含2 個結點的降維層。Swiss roll采樣了800個數(shù)據(jù),數(shù)據(jù)間的平均歐氏距離為0.68。實驗設置一級鄰域的ε1設為3.0,二級鄰域的ε2設為6.0,Loss2中的λ設為100。訓練集中正樣本(距離小于等于ε1的數(shù)據(jù)對)有6 488對,負樣本(距離介于ε1和ε2之間的數(shù)據(jù)對)有17 123 對,網(wǎng)絡的學習率為0.001。經(jīng)過150 個周期(epoch)的訓練,孿生網(wǎng)絡的學習效果與其他傳統(tǒng)的流形學習方法進行對比,如圖7所示。

        圖7(a)為Swiss roll 在原始三維空間中形狀,圖7(b)~(e)分別是采用LLE、Hessian、LTSA 和Isomap 方法降維后的效果,圖7(f)是孿生網(wǎng)的降維效果。通過降維后的比例尺可以看出,Isomap 和孿生網(wǎng)絡在降維時,有效保留了流形結構在高維空間內的真實跨度(比例),而其他傳統(tǒng)方法則是附帶人為約束的優(yōu)化問題(見2.1節(jié)),這種約束造成了各維度間的不成比例的壓縮,如圖7(b)~(d)所示,LLE、Hessian 和LTSA 方法將Swiss roll壓縮在一個長寬大約都為0.2 的矩形區(qū)域內。需要注意,各維度不成比例的壓縮,將造成樣本在子空間內各維度上的疏密程度不能真實反應高維流形的局部空間關系,最終導致低維數(shù)據(jù)整體的變形與失真。雖然Isomap 方法在全局尺度上可以較好地保持數(shù)據(jù)在空間中的跨度,但是因為采用近似測地距離作為計算的依據(jù),所以在局部結構上會存在變形,特別是當數(shù)據(jù)分布不均或存在采樣空洞的情況下,變形將更為明顯。與Isomap不同,孿生網(wǎng)絡是將高維空間中的歐氏距離盡可能地映射到低維空間中,所以對數(shù)據(jù)分布或采樣空洞不敏感,使得Swiss roll的流形結構在降維后的空間中得以真實地保留。

        圖6 改進后的孿生網(wǎng)絡算法流程圖

        圖7 Swiss roll降維效果對比

        3 可視化手寫數(shù)據(jù)集

        流形學習主要用于流形結構的降維、特征提取或可視化等目的,本章將孿生網(wǎng)絡用于實際數(shù)據(jù)的可視化處理中。文獻[24]分析了字符的旋轉和縮放數(shù)據(jù)集,證明字符是嵌入高維空間內的流形結構,本章對scikit-learn手寫數(shù)字集[25]進行二維可視化操作。

        Scikit-learn 手寫數(shù)字集是8×8 的圖像,樣本空間是64維,具有較高維度,可以省略升維層,而直接添加過濾層和降維層。孿生網(wǎng)絡的子網(wǎng)結構是包含64個結點的輸入層、兩層各包含200 個結點的過濾層和包含2 個結點的降維層。從手寫數(shù)據(jù)集中選擇0~5這六種數(shù)字,并對每種數(shù)字隨機選擇50個樣本,共300個原始樣本。原始樣本歸一化后,設置一級鄰域的ε1為2.0,二級鄰域的ε2為3.0,產生3 795個正樣本和15 006個負樣本。Loss2中的λ設為10,網(wǎng)絡的學習率為0.005。經(jīng)過250 個周期的訓練,孿生網(wǎng)絡的二維可視化效果與其他傳統(tǒng)方法對比,如圖8所示。

        圖8 手寫數(shù)字集降維可視化效果對比

        從圖8的實驗結果來看,LLE、Hessian和LTSA方法雖然有明顯的聚類效果,但是類別的邊界較模糊,個別類別有明顯的重疊現(xiàn)象。相對的,Isomap和孿生網(wǎng)絡也有明顯的聚類效果,類別邊界較為清晰。整體來看,經(jīng)過孿生網(wǎng)絡可視化后,數(shù)據(jù)在空間內的分布更加均勻,沒有明顯空間壓縮的痕跡,空間關系的辨識度較高,這為后續(xù)的數(shù)據(jù)分析打下了良好的基礎。

        4 結束語

        本文為流形學習提供了一種新的研究思路,即通過孿生網(wǎng)絡的“樣本對”訓練方法,實現(xiàn)能夠保持原有的空間關系的降維映射。同時,針對孿生網(wǎng)絡的通道設計,提出了升維、過濾和降維的三層結構,以及兩級鄰域采樣的概念,并設計了包含正、負樣本對的損失函數(shù)Loss2。將該方法運用在仿真數(shù)據(jù)(Swiss roll)的流形降維和真實數(shù)據(jù)(handwritten digits)的二維可視化上,都取得了良好的效果。該方法的優(yōu)點有:(1)對流形結構沒有凸包要求、空洞限制;(2)對數(shù)據(jù)的均勻采樣要求不高;(3)降維設計避免了復雜的數(shù)值分析和添加額外約束;(4)降維過程沒有維度壓縮、還原度高。

        同時,用孿生網(wǎng)絡進行流形學習也存在局限性與不足:(1)隨著訓練集增大、流形結構曲率增加,網(wǎng)絡結構也更加復雜,訓練難度也在加大;(2)與傳統(tǒng)方法類似,如果數(shù)據(jù)集中引入過多的新數(shù)據(jù),則需要重新進行學習,才能達到較好的效果。針對前一種局限性,可以考慮優(yōu)化訓練集的產生方式,控制訓練集的規(guī)模,同時根據(jù)具體的應用,給出子網(wǎng)結構的優(yōu)化方案。針對后一種局限性,可以考慮遷移學習,即在原有訓練好的網(wǎng)絡基礎上繼續(xù)進行新的數(shù)據(jù)集的訓練。

        免费福利视频二区三区 | 亚洲欧美日韩精品久久| 亚洲av成人无码久久精品| 亚洲色偷拍一区二区三区| av大片网站在线观看| 变态调教一区二区三区女同| 欧美极品jizzhd欧美| 亚洲国产成人无码影院| 中文字幕一区二区人妻在线不卡| 日本一区二区在线免费视频| 亚洲国产精品va在线看黑人| 欧美国产亚洲日韩在线二区| 久久伊人精品只有这里有| 精品视频在线观看日韩 | 国产真实乱对白在线观看| 日本精品中文字幕人妻| 永久天堂网av手机版| 日日碰狠狠丁香久燥| 99久久精品国产片| 亚洲综合视频一区二区| 国产免费一区二区三区免费视频| 99久久久无码国产精品9| 精品熟妇av一区二区三区四区| 国产精品亚洲精品国产| 亚洲欧美日韩国产精品一区二区| 一区二区日韩国产精品| 日美韩精品一区二区三区| 国产亚洲精品久久午夜玫瑰园| 日韩人妻无码一区二区三区| 国产成人av在线影院无毒| aa日韩免费精品视频一| 无码熟妇人妻av影音先锋| 污污污污污污污网站污| 五月婷婷激情六月开心| 男女av一区二区三区| 欧美亚洲国产片在线播放| 久9热免费精品视频在线观看| 久久人妻少妇嫩草av| 美女高潮无遮挡免费视频| 亚洲av五月天天堂网| 国产精品成人亚洲一区|