丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能 正文
發(fā)私信給AI科技評(píng)論
發(fā)送

0

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

本文作者: AI科技評(píng)論 編輯:郭奕欣 2018-07-16 09:42
導(dǎo)語:本文分享了之前使用手工設(shè)計(jì)規(guī)則的方法來提取圖片特征用于衡量相似度,隨后介紹了深度學(xué)習(xí)在圖片搜索的過程,并給出三篇文章介紹了圖片檢索任務(wù)的大體框架和思路流程。

雷鋒網(wǎng) AI 科技評(píng)論按:本文為專欄作者兔子老大為 AI 科技評(píng)論撰寫的獨(dú)家稿件,未經(jīng)許可不得轉(zhuǎn)載。

前言

圖片檢索是計(jì)算機(jī)視覺,數(shù)字圖像處理等領(lǐng)域常見的話題,在我學(xué)習(xí)相關(guān)知識(shí)的過程中,圖像檢索算是我第一個(gè)學(xué)習(xí)的 demo,該過程都記錄在 利用python進(jìn)行識(shí)別相似圖片(一) 和 利用python進(jìn)行識(shí)別相似圖片(二) 兩篇文章,分別記錄了直方圖匹配,phash/average hash/dhash 三種基于哈希的方法。

圖片檢索的的大體框架大致可以分成兩步,抽取某種特征,計(jì)算相似度。其中像上述提及的幾種方法,都是對(duì)應(yīng)抽取特征這一步,而計(jì)算相似度,則常使用歐式距離/漢明距離/Triplet 等方法。顯然的,上述方法都屬于人工設(shè)計(jì)的方法來進(jìn)行抽取特征,很自然的就想到使用當(dāng)今很火熱的深度學(xué)習(xí)來代替人工的設(shè)計(jì)的方法,所以這篇文章主要介紹的就是基于深度學(xué)習(xí)的圖片檢索。

本文主要介紹的文章有以下幾篇:

  • Deep Learning of Binary Hash Codes for Fast Image Retrieval -- CVPR WORKSHOP 2015

  • DEEP SUPERVISED HASHING FOR FAST IMAGE RETRIEVAL -- CVPR 2016

  • Feature Learning based Deep Supervised Hashing with Pairwise Labels -- IJCAI 2016

提及到使用深度學(xué)習(xí)提取圖像特征,業(yè)界一般認(rèn)為現(xiàn)有的圖像模型中,前面的卷積層負(fù)責(zé)提取相關(guān)特征,最后的全連接層或者 globel pooling 負(fù)責(zé)分類,因此一般的做法是直接取前幾層卷積的輸出,然后再計(jì)算相似度。

但這樣涉及到一個(gè)問題,首先一個(gè)是數(shù)據(jù)精度問題,因?yàn)橹苯尤√卣鬏敵龆嗍歉↑c(diǎn)數(shù),且維度高,這會(huì)導(dǎo)致儲(chǔ)存這些圖像的特征值會(huì)耗費(fèi)大量空間,第二個(gè)因?yàn)榫暥雀?,所以用歐式距離這種方式計(jì)算相似度,可能會(huì)觸發(fā)維度災(zāi)難,令使用歐式距離代表相似度這種方法失效。

其中一種解決方法是使用 Triplet 函數(shù)構(gòu)造一個(gè)能夠?qū)W習(xí)如何計(jì)算相似度的神經(jīng)網(wǎng)絡(luò)。雖然 Triplet 這個(gè)方法并不在本文介紹范圍,但為了讀者可以橫向?qū)Ρ认嚓P(guān)方法,這里粗略的介紹以下基于 Triplet 的做法。

Triplet 的做法很簡(jiǎn)單,人工構(gòu)建一個(gè)三元集合,該三元集合包括(圖片 A,與 A 相似的圖片 B,與 A 不相似的圖片 C),期望該神經(jīng)網(wǎng)絡(luò)接受兩個(gè)圖片輸入,若為相似,則輸出一個(gè)較高的分?jǐn)?shù),若不相似則輸出一個(gè)較低的分?jǐn)?shù)。

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

Triplet Loss 的構(gòu)造如上式所示,其中 f(xi) 為原圖在神經(jīng)網(wǎng)絡(luò)輸出的分?jǐn)?shù),f(xj) 相似圖在神經(jīng)網(wǎng)絡(luò)輸出的分?jǐn)?shù),f(xk) 為不相似圖片的輸出分?jǐn)?shù),在這條表達(dá)式中,我們期待相似圖片的分?jǐn)?shù)之間,盡量接近,而不相似圖片的分?jǐn)?shù)盡量遠(yuǎn)離。在不考慮α?xí)r有個(gè)問題,顯然,

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法時(shí),L=0,

這樣就沒有達(dá)到我們希望相似圖片和不相似圖片的分?jǐn)?shù)在空間上存在一定的間隔這個(gè)目標(biāo),而 α 的設(shè)定,就是這個(gè)間隔。

顯然,α 設(shè)定太小,神經(jīng)網(wǎng)絡(luò)不太容易區(qū)分相似圖片,而設(shè)定太大,則相當(dāng)于對(duì)神經(jīng)網(wǎng)絡(luò)提出更高的要求,神經(jīng)網(wǎng)絡(luò)的收斂會(huì)更加不穩(wěn)定。

Triplet 適合圖片檢索時(shí)每個(gè)類別的樣本不大的情況下,比如人臉檢測(cè)。但有研究指出,Triplet 集合的構(gòu)建會(huì)影響訓(xùn)練的效果,也就是該如何人工的定義相似和不相似,所以也有相關(guān)工作在構(gòu)建 Triplet 上展開,但本文主要說的是另一種方法,即基于哈希的三種方法。

Deep Learning of Binary Hash Codes for Fast Image Retrieval -- CVPR WORKSHOP 2015

之所以先選擇這篇文章先作討論,是因?yàn)檫@篇文章的工作的思想和上文提及的方法,和下文要提到的文章思想過度的比較自然,方便讀者理解。

上文提及,最為簡(jiǎn)單的方式是使用神經(jīng)網(wǎng)絡(luò)特征層的輸出用于計(jì)算空間距離來判斷相似度,但這樣會(huì)導(dǎo)致浮點(diǎn)型數(shù)據(jù)儲(chǔ)存消耗和維度災(zāi)難。針對(duì)這兩個(gè)問題,這篇文章提出的方法較為直接。

浮點(diǎn)數(shù)據(jù)怎么辦?將他離散成二值型數(shù)據(jù),也就是一串 0 和 1 的哈希,這樣只需要幾個(gè) byte 就能儲(chǔ)存一個(gè)數(shù)據(jù)了。

維度高怎么辦?把他壓縮成低維唄。

所以我才說這篇文章的思路是十分直接和易于理解的,十分適合放在第一篇用于過渡。

下面說說文章的具體做法:

 從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

既然我們希望特征的輸出可以離散化成 0 和 1,那就希望特征的分布是關(guān)于某個(gè)值對(duì)稱的,然后只要根據(jù)該值作為閾值二值化即可,就這樣一步步推導(dǎo),自然想到使用 tanh 或 sigmoid 函數(shù),因?yàn)槠漭敵鍪顷P(guān)于 0 對(duì)稱或關(guān)于 0.5 對(duì)稱。該論文使用的 sigmoid 代替了預(yù)訓(xùn)練網(wǎng)絡(luò)的倒數(shù)第二層的 ReLU 函數(shù),且把輸出的維度壓縮至 12~48 之間,然后進(jìn)行微調(diào)。

在微調(diào)的過程中,有幾點(diǎn):一般我們的微調(diào)方法是指將前面卷積的權(quán)重凍結(jié),然后訓(xùn)練后面分類器的的權(quán)重。但在這里,一個(gè)是因?yàn)榫S度的減少,第二個(gè)是 sigmoid 做中間層的激活函數(shù)可能會(huì)造成梯度消失,神經(jīng)網(wǎng)絡(luò)的能力其實(shí)有了一定程度的衰減。因此做微調(diào)的時(shí)候,作者只是把 sigmoid 層的參數(shù)采用隨機(jī)化,其余參數(shù),包括分類器的大部分參數(shù)都保留下來,然后在訓(xùn)練期間,sigmoid 使用 1e-3 的學(xué)習(xí)率,其余層使用 1e-4 的學(xué)習(xí)率進(jìn)行學(xué)習(xí)。對(duì)于 cifar10 來說,使用數(shù)據(jù)強(qiáng)化后,能達(dá)到 89% 左右的 Accuracy,圖片檢索的 map 能夠達(dá)到 85%,可以說性能上十分可觀。

論文鏈接:http://www.iis.sinica.edu.tw/~kevinlin311.tw/cvprw15.pdf

參考實(shí)現(xiàn):https://github.com/flyingpot/pytorch_deephash

DEEP SUPERVISED HASHING FOR FAST IMAGE RETRIEVAL -- CVPR 2016

上文提及我們離散化時(shí)希望輸出的特征的關(guān)于某個(gè)值對(duì)稱,所以有文章用了 sigmoid 作為特征層的輸出的激活函數(shù),但直接引用 sigmoid 函數(shù)會(huì)導(dǎo)致一些問題,那有沒有辦法緩解這些問題?有,那就是使用正則的方法將輸出約束到某一個(gè)范圍內(nèi)。

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

這篇 CVPR 2016 的論文做法就是如此,并沒有像上述文章那樣使用分類網(wǎng)絡(luò)中間層來進(jìn)行哈希,而是使用神經(jīng)網(wǎng)絡(luò)直接學(xué)習(xí)哈希編碼,并用正則化方法將編碼進(jìn)行約束。

具體來說,就是讓神經(jīng)網(wǎng)絡(luò)的輸出通過正則的手法約束到 {-1,1} 之內(nèi)(后續(xù)使用 0 作為閾值進(jìn)行離散化),然后讓網(wǎng)絡(luò)的輸出達(dá)到以下的要求,相似的時(shí)候向量距離應(yīng)該較近,反之則遠(yuǎn),下面通過其目標(biāo)函數(shù)的表現(xiàn)形式來介紹具體過程

目標(biāo)函數(shù):

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

其中 b1,b2 是神經(jīng)網(wǎng)絡(luò)輸出的向量,y 是一個(gè)標(biāo)志,相似時(shí)記為 0,不相似時(shí)記作 1,其中超參數(shù)有兩個(gè),m 時(shí)用于控制 b1 和 b2 的最優(yōu)間隔,和 α 是正則項(xiàng)的權(quán)重,可見當(dāng)輸入的是相似圖片時(shí),y=0,要使 L 最小,需要最小化兩個(gè)向量的距離和正則項(xiàng)。而當(dāng)圖片不相似時(shí),y=1,最少化 L 需要使得兩個(gè)向量的距離分布在 m 的附近,以及最小化正則項(xiàng)。

最后的正則項(xiàng)使得輸出的特征向量分布在 {-1,1}。

而下圖是展示的是 m 和 α 對(duì)輸出分布的影響。

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

對(duì)于 CIFAR-10 來說,最終 map 只能 0.54~0.61,比上文提到的第一個(gè)方法要低,但實(shí)質(zhì)這個(gè)方法要更靈活。

論文鏈接:https://www.cv-foundation.org/openaccess/content_cvpr_2016/papers/Liu_Deep_Supervised_Hashing_CVPR_2016_paper.pdf

參考實(shí)現(xiàn):https://github.com/yg33717/DSH_tensorflow

Feature Learning based Deep Supervised Hashing with Pairwise Labels——IJCAI 2016

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

如圖所示,這篇文章和上文提及的第二種方法大致相似。不采用分類網(wǎng)絡(luò)的中間層作為特征,而是直接采取一個(gè)神經(jīng)網(wǎng)絡(luò)進(jìn)行哈希函數(shù)的學(xué)習(xí),并用正則方法將輸出的特征的序列約束到一定范圍內(nèi)。

下面通過目標(biāo)函數(shù)的形式來說明具體過程:

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

其中 b 為輸出向量,Sij 是 label,相似為 1,否則為 0,ξij=bi*bjT,而 W,v 分別是最后一層的權(quán)重和偏置,而?(x;ξ) 即是倒數(shù)第二層輸出。

算法的更新步驟如下:

 從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

該方法在 CIFAR-10 數(shù)據(jù)集上取得 0.71~0.80 的 map 值。

論文鏈接:https://cs.nju.edu.cn/lwj/paper/IJCAI16_DPSH.pdf

參考實(shí)現(xiàn):https://github.com/jiangqy/DPSH-pytorch

總結(jié)

本文分享了之前使用手工設(shè)計(jì)規(guī)則的方法來提取圖片特征用于衡量相似度,隨后介紹了深度學(xué)習(xí)在圖片搜索的過程,并給出三篇文章介紹了圖片檢索任務(wù)的大體框架和思路流程。

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知

從手工提取特征到深度學(xué)習(xí)的三種圖像檢索方法

分享:
相關(guān)文章
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說