日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Siamese Network 孪生网络基础学习笔记

發(fā)布時間:2023/12/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Siamese Network 孪生网络基础学习笔记 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Siamese Network 孿生網(wǎng)絡(luò)基礎(chǔ)學(xué)習(xí)筆記


本筆記主要是對相關(guān)文章的摘錄梳理,作為小白學(xué)習(xí)目標(biāo)跟蹤的學(xué)習(xí)筆記。

孿生網(wǎng)絡(luò)在目標(biāo)跟蹤中有很重要的應(yīng)用,故特作此整理,希望為后續(xù)的學(xué)習(xí)打好基礎(chǔ)。

整理的比較倉促,后續(xù)會修改完善。


參考文章鏈接:

  • Siamese network 孿生神經(jīng)網(wǎng)絡(luò):一個簡單神奇的結(jié)構(gòu)
  • Siamese network總結(jié)
  • [視覺跟蹤] Siamese Network方法概述:從SiamFC到SiamRPN系列
  • 卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)筆記——Siamese networks(孿生神經(jīng)網(wǎng)絡(luò))

  • 一. Siamese Network 名字的由來

    Siamese在英語中是“孿生”、“連體”的意思。具體由來參見Siamese network 孿生神經(jīng)網(wǎng)絡(luò):一個簡單神奇的結(jié)構(gòu)

    二. 孿生網(wǎng)絡(luò)的主要特點

  • Siamese 網(wǎng)絡(luò)采用兩個不同的輸入,通過兩個具有相同架構(gòu)、參數(shù)和權(quán)重的相似子網(wǎng)絡(luò)。

  • 這兩個子網(wǎng)互為鏡像,就像連體雙胞胎一樣。 因此,對任何子網(wǎng)架構(gòu)、參數(shù)或權(quán)重的任何更改也適用于其他子網(wǎng)。

  • 兩個子網(wǎng)絡(luò)輸出一個編碼來計算兩個輸入之間的差異。

  • Siamese 網(wǎng)絡(luò)的目標(biāo)是使用相似度分?jǐn)?shù)對兩個輸入是相同還是不同進行分類。可以使用二元交叉熵、對比函數(shù)或三元組損失來計算相似度分?jǐn)?shù),這些都是用于一般距離度量學(xué)習(xí)方法的技術(shù)。

  • Siamese 網(wǎng)絡(luò)是一種one-shot分類器,它使用判別特征從未知分布中概括不熟悉的類別。

  • 三. Siamese Network的模型架構(gòu)

  • 將輸入pair送入編碼器,映射到新的空間,得到編碼后的向量化表示。需要注意的是,在Siamese Network中,輸入pair是共用編碼器參數(shù)的,不論在訓(xùn)練還是在測試過程中,編碼器只有一套,所有輸入共用。

  • 向量特征組合和交叉。這一步的目的是為了讓模型能夠?qū)W習(xí)輸入pair的“匹配”特征,得到交叉后的特征向量;

  • 將上一步特征向量送入特征映射層,并設(shè)計損失函數(shù)來評價兩個輸入的相似度,使得模型能夠完成指定任務(wù)。

  • 孿生網(wǎng)絡(luò)的核心特征是兩個子網(wǎng)絡(luò)的權(quán)重是共享的。因為這種共享,兩個輸入相當(dāng)于采用了相同的編碼機制映射到相同的向量空間。進而我們就能通過對embedding后得到的的向量進行處理,計算兩者的相似度。

    四. 孿生神經(jīng)網(wǎng)絡(luò)的用途是什么?

    孿生網(wǎng)絡(luò)主要用來衡量兩個輸入的相似程度。該模型能夠處理但不局限于“匹配”問題。

    五. 孿生神經(jīng)網(wǎng)絡(luò)和偽孿生神經(jīng)網(wǎng)絡(luò)

    Pseudo Siamese Network 偽孿生網(wǎng)絡(luò)

    如果兩個子體網(wǎng)絡(luò)不共享權(quán)重,即兩個子體是不同的神經(jīng)網(wǎng)絡(luò),則稱為Pseudo Siamese Network,偽孿生神經(jīng)網(wǎng)絡(luò)。偽連體孿生經(jīng)網(wǎng)絡(luò)的兩個子體,可以是結(jié)構(gòu)相同但權(quán)重不同,也可以是完全不同的結(jié)構(gòu),如一個是CNN,另一個是RNN。CNN和RNN的這種連體網(wǎng)絡(luò),可以用來比對不同數(shù)據(jù)類型的信息所表達的內(nèi)容的相似性,如一個圖片和一段文字。

    孿生神經(jīng)網(wǎng)絡(luò)和偽孿生神經(jīng)網(wǎng)絡(luò)分別適用的場景

    孿生神經(jīng)網(wǎng)絡(luò)用于處理兩個輸入"比較類似"的情況。偽孿生神經(jīng)網(wǎng)絡(luò)適用于處理兩個輸入"有一定差別"的情況。比如,我們要計算兩個句子或者詞匯的語義相似度,使用siamese network比較適合;如果驗證標(biāo)題與正文的描述是否一致(標(biāo)題和正文長度差別很大),或者文字是否描述了一幅圖片(一個是圖片,一個是文字),就應(yīng)該使用pseudo-siamese network。也就是說,要根據(jù)具體的應(yīng)用,判斷應(yīng)該使用哪一種結(jié)構(gòu),哪一種Loss。

    六. Siamese network 的 loss function

  • Siamese 網(wǎng)絡(luò)使用相似度分?jǐn)?shù)來預(yù)測兩個輸入是相似還是不同,使用度量學(xué)習(xí)方法,該方法找到其輸入之間的相對距離。

  • 可以使用二元交叉熵、對比函數(shù)或三重?fù)p失計算相似度分?jǐn)?shù)。

  • Siamese 網(wǎng)絡(luò)執(zhí)行二元分類,將輸入分類為相似或不相似;因此,默認(rèn)使用二元交叉熵?fù)p失函數(shù)。

  • 常用損失

    1. contrastive loss 對比損失函數(shù)

  • 對比損失函數(shù)通過對比兩個輸入來區(qū)分相似和不同的圖像。當(dāng)你在訓(xùn)練時不了解所有類別并且訓(xùn)練數(shù)據(jù)有限時,它會有所幫助。它創(chuàng)建了一種數(shù)據(jù)編碼,可以在將來有新類時使用。

  • 對比損失需要一對正負(fù)訓(xùn)練數(shù)據(jù)。 正對包含一個anchor樣本和一個正樣本,負(fù)對包含一個anchor樣本和一個負(fù)樣本。

  • 對比損失函數(shù)的目標(biāo)是使正對具有較小的距離,對負(fù)對具有較大的距離。

  • 2. cosine距離與exp距離

    3. Triplet loss

    在 Triplet loss 中,我們使用數(shù)據(jù)的三元組而不是二元對。 三元組由anchor、正樣本和負(fù)樣本組成,主要用于面部識別。

    在 Triplet loss 中,anchor和正樣本編碼之間的距離被最小化,而anchor和負(fù)樣本編碼之間的距離被最大化。

    Triplet loss 將 d(a,p) 推到 0 ,并且 d(a,n) 大于 d(a,p)+margin

    七. 為什么Siamese神經(jīng)網(wǎng)絡(luò)被稱為one-shot分類?

  • one-shot分類模型僅使用每個新類別的單個訓(xùn)練樣本即可正確進行預(yù)測。

  • Siamese 網(wǎng)絡(luò)使用有監(jiān)督的訓(xùn)練方法來學(xué)習(xí)通用輸入特征,然后根據(jù)訓(xùn)練數(shù)據(jù)對未知的類分布進行預(yù)測。

  • 受過訓(xùn)練的 Siamese 網(wǎng)絡(luò)使用一次性學(xué)習(xí)來預(yù)測兩個輸入之間的相似性或不相似性,即使這些新分布中的樣本很少。

  • 八. Siamese 網(wǎng)絡(luò)的優(yōu)點

  • Siamese 網(wǎng)絡(luò)是一種one-shot分類模型,只需一個訓(xùn)練樣本即可進行預(yù)測。

  • 對類別不平衡更魯棒,因為它需要很少的信息。 它可以用于某些類的樣本很少的數(shù)據(jù)集。

  • Siamese 網(wǎng)絡(luò)的one-shot學(xué)習(xí)特性不依賴于特定領(lǐng)域的知識,而是利用了深度學(xué)習(xí)技術(shù)。

  • 九. Siamese 網(wǎng)絡(luò)的缺點

    僅輸出相似性分?jǐn)?shù)而不輸出概率。(互斥事件的概率總和為 1。而距離不限于小于或等于 1。)

    十. Siamese network是雙胞胎連體,整一個三胞胎連體行不行?

    不好意思,已經(jīng)有人整過了,叫Triplet network,論文是《Deep metric learning using Triplet network》,輸入是三個,一個正例+兩個負(fù)例,或者一個負(fù)例+兩個正例,訓(xùn)練的目標(biāo)是讓相同類別間的距離盡可能的小,讓不同類別間的距離盡可能的大。Triplet在cifar, mnist的數(shù)據(jù)集上,效果都是很不錯的,超過了siamese network。四胞胎,五胞胎會不會更屌?。。。。。目前還沒見過。。。。

    十一. Siamese network的應(yīng)用

  • 簽名驗證

  • 面部識別

  • 比較指紋

  • 根據(jù)臨床分級評估疾病嚴(yán)重程度

  • 工作資料的文本相似度以恢復(fù)匹配

  • 用于配對相似問題的文本相似度

  • 總結(jié)

    以上是生活随笔為你收集整理的Siamese Network 孪生网络基础学习笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。