0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

四個(gè)計(jì)算機(jī)視覺(jué)領(lǐng)域用作遷移學(xué)習(xí)的模型

電子設(shè)計(jì) ? 來(lái)源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-12-15 00:07 ? 次閱讀

首發(fā):AI公園
作者:OrhanG. Yal??n
編譯:ronghuaiyang

導(dǎo)讀

使用SOTA的預(yù)訓(xùn)練模型來(lái)通過(guò)遷移學(xué)習(xí)解決現(xiàn)實(shí)的計(jì)算機(jī)視覺(jué)問(wèn)題。

如果你試過(guò)構(gòu)建高精度機(jī)器學(xué)習(xí)模型,但還沒(méi)有試過(guò)遷移學(xué)習(xí),這篇文章將改變你的生活。至少,對(duì)我來(lái)說(shuō)是的。

我們大多數(shù)人已經(jīng)嘗試過(guò),通過(guò)幾個(gè)機(jī)器學(xué)習(xí)教程來(lái)掌握神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)知識(shí)。這些教程非常有助于了解人工神經(jīng)網(wǎng)絡(luò)的基本知識(shí),如循環(huán)神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò),GANs和自編碼器。但是這些教程的主要功能是為你在現(xiàn)實(shí)場(chǎng)景中實(shí)現(xiàn)做準(zhǔn)備。

現(xiàn)在,如果你計(jì)劃建立一個(gè)利用深度學(xué)習(xí)人工智能系統(tǒng),你要么(i)有一個(gè)非常大的預(yù)算用于培訓(xùn)優(yōu)秀的人工智能研究人員,或者(ii)可以從遷移學(xué)習(xí)中受益。

什么是遷移學(xué)習(xí)?

遷移學(xué)習(xí)是機(jī)器學(xué)習(xí)和人工智能的一個(gè)分支,其目的是將從一個(gè)任務(wù)(源任務(wù))中獲得的知識(shí)應(yīng)用到一個(gè)不同但相似的任務(wù)(目標(biāo)任務(wù))中。

例如,在學(xué)習(xí)對(duì)維基百科文本進(jìn)行分類時(shí)獲得的知識(shí)可以用于解決法律文本分類問(wèn)題。另一個(gè)例子是利用在學(xué)習(xí)對(duì)汽車進(jìn)行分類時(shí)獲得的知識(shí)來(lái)識(shí)別天空中的鳥(niǎo)類。這些樣本之間存在關(guān)聯(lián)。我們沒(méi)有在鳥(niǎo)類檢測(cè)上使用文本分類模型。

遷移學(xué)習(xí)是指從相關(guān)的已經(jīng)學(xué)習(xí)過(guò)的任務(wù)中遷移知識(shí),從而對(duì)新的任務(wù)中的學(xué)習(xí)進(jìn)行改進(jìn)

總而言之,遷移學(xué)習(xí)是一個(gè)讓你不必重復(fù)發(fā)明輪子的領(lǐng)域,并幫助你在很短的時(shí)間內(nèi)構(gòu)建AI應(yīng)用。

遷移學(xué)習(xí)的歷史

==========

為了展示遷移學(xué)習(xí)的力量,我們可以引用Andrew Ng的話:

遷移學(xué)習(xí)將是繼監(jiān)督學(xué)習(xí)之后機(jī)器學(xué)習(xí)商業(yè)成功的下一個(gè)驅(qū)動(dòng)因素

遷移學(xué)習(xí)的歷史可以追溯到1993年。Lorien Pratt的論文“Discriminability-Based Transfer between Neural Networks”打開(kāi)了潘多拉的盒子,向世界介紹了遷移學(xué)習(xí)的潛力。1997年7月,“Machine Learning”雜志發(fā)表了一篇遷移學(xué)習(xí)論文專刊。隨著該領(lǐng)域的深入,諸如多任務(wù)學(xué)習(xí)等相鄰主題也被納入遷移學(xué)習(xí)領(lǐng)域?!癓earning to Learn”是這一領(lǐng)域的先驅(qū)書(shū)籍之一。如今,遷移學(xué)習(xí)是科技企業(yè)家構(gòu)建新的人工智能解決方案、研究人員推動(dòng)機(jī)器學(xué)習(xí)前沿的強(qiáng)大源泉。

遷移學(xué)習(xí)是如何工作的?

==============

實(shí)現(xiàn)遷移學(xué)習(xí)有三個(gè)要求:

由第三方開(kāi)發(fā)開(kāi)源預(yù)訓(xùn)練模型

重用模型

對(duì)問(wèn)題進(jìn)行微調(diào)

開(kāi)發(fā)開(kāi)源預(yù)訓(xùn)練模型

預(yù)訓(xùn)練的模型是由其他人創(chuàng)建和訓(xùn)練來(lái)解決與我們類似的問(wèn)題的模型。在實(shí)踐中,幾乎總是有人是科技巨頭或一群明星研究人員。他們通常選擇一個(gè)非常大的數(shù)據(jù)集作為他們的基礎(chǔ)數(shù)據(jù)集,比如ImageNet或Wikipedia Corpus。然后,他們創(chuàng)建一個(gè)大型神經(jīng)網(wǎng)絡(luò)(例如,VGG19有143,667,240個(gè)參數(shù))來(lái)解決一個(gè)特定的問(wèn)題(例如,這個(gè)問(wèn)題用VGG19做圖像分類。)當(dāng)然,這個(gè)預(yù)先訓(xùn)練過(guò)的模型必須公開(kāi),這樣我們就可以利用這些模型并重新使用它們。

重用模型

在我們掌握了這些預(yù)先訓(xùn)練好的模型之后,我們重新定位學(xué)習(xí)到的知識(shí),包括層、特征、權(quán)重和偏差。有幾種方法可以將預(yù)先訓(xùn)練好的模型加載到我們的環(huán)境中。最后,它只是一個(gè)包含相關(guān)信息的文件/文件夾。然而,深度學(xué)習(xí)庫(kù)已經(jīng)托管了許多這些預(yù)先訓(xùn)練過(guò)的模型,這使得它們更容易訪問(wèn):

TensorFlow Hub

Keras Applications

PyTorch Hub

你可以使用上面的一個(gè)源來(lái)加載經(jīng)過(guò)訓(xùn)練的模型。它通常會(huì)有所有的層和權(quán)重,你可以根據(jù)你的意愿調(diào)整網(wǎng)絡(luò)。

對(duì)問(wèn)題進(jìn)行微調(diào)

現(xiàn)在的模型也許能解決我們的問(wèn)題。對(duì)預(yù)先訓(xùn)練好的模型進(jìn)行微調(diào)通常更好,原因有兩個(gè):

這樣我們可以達(dá)到更高的精度。

我們的微調(diào)模型可以產(chǎn)生正確的格式的輸出。

一般來(lái)說(shuō),在神經(jīng)網(wǎng)絡(luò)中,底層和中層通常代表一般的特征,而頂層則代表特定問(wèn)題的特征。由于我們的新問(wèn)題與原來(lái)的問(wèn)題不同,我們傾向于刪除頂層。通過(guò)為我們的問(wèn)題添加特定的層,我們可以達(dá)到更高的精度。

在刪除頂層之后,我們需要放置自己的層,這樣我們就可以得到我們想要的輸出。例如,使用ImageNet訓(xùn)練的模型可以分類多達(dá)1000個(gè)對(duì)象。如果我們?cè)噲D對(duì)手寫(xiě)數(shù)字進(jìn)行分類(例如,MNIST classification),那么最后得到一個(gè)只有10個(gè)神經(jīng)元的層可能會(huì)更好。

在我們將自定義層添加到預(yù)先訓(xùn)練好的模型之后,我們可以用特殊的損失函數(shù)和優(yōu)化器來(lái)配置它,并通過(guò)額外的訓(xùn)練進(jìn)行微調(diào)。

計(jì)算機(jī)視覺(jué)中的4個(gè)預(yù)訓(xùn)練模型

這里有四個(gè)預(yù)先訓(xùn)練好的網(wǎng)絡(luò),可以用于計(jì)算機(jī)視覺(jué)任務(wù),如圖像生成、神經(jīng)風(fēng)格轉(zhuǎn)換、圖像分類、圖像描述、異常檢測(cè)等:

VGG19

Inceptionv3 (GoogLeNet)

ResNet50

EfficientNet

讓我們一個(gè)一個(gè)地深入研究。

VGG-19

VGG是一種卷積神經(jīng)網(wǎng)絡(luò),深度為19層。它是由牛津大學(xué)的Karen Simonyan和Andrew Zisserman在2014年構(gòu)建和訓(xùn)練的,論文為:Very Deep Convolutional Networks for large Image Recognition。VGG-19網(wǎng)絡(luò)還使用ImageNet數(shù)據(jù)庫(kù)中的100多萬(wàn)張圖像進(jìn)行訓(xùn)練。當(dāng)然,你可以使用ImageNet訓(xùn)練過(guò)的權(quán)重導(dǎo)入模型。這個(gè)預(yù)先訓(xùn)練過(guò)的網(wǎng)絡(luò)可以分類多達(dá)1000個(gè)物體。對(duì)224x224像素的彩色圖像進(jìn)行網(wǎng)絡(luò)訓(xùn)練。以下是關(guān)于其大小和性能的簡(jiǎn)要信息:

大?。?49 MB

Top-1 準(zhǔn)確率:71.3%

Top-5 準(zhǔn)確率:90.0%

參數(shù)個(gè)數(shù):143,667,240

深度:26

Inceptionv3 (GoogLeNet)

Inceptionv3是一個(gè)深度為50層的卷積神經(jīng)網(wǎng)絡(luò)。它是由谷歌構(gòu)建和訓(xùn)練的,你可以查看這篇論文:“Going deep with convolutions”。預(yù)訓(xùn)練好的帶有ImageNet權(quán)重的Inceptionv3可以分類多達(dá)1000個(gè)對(duì)象。該網(wǎng)絡(luò)的圖像輸入大小為299x299像素,大于VGG19網(wǎng)絡(luò)。VGG19是2014年ImageNet競(jìng)賽的亞軍,而Inception是冠軍。以下是對(duì)Inceptionv3特性的簡(jiǎn)要總結(jié):

尺寸:92 MB

Top-1 準(zhǔn)確率:77.9%

Top-5 準(zhǔn)確率:93.7%

參數(shù)數(shù)量:23,851,784

深度:159

ResNet50 (Residual Network)

ResNet50是一個(gè)卷積神經(jīng)網(wǎng)絡(luò),深度為50層。它是由微軟于2015年建立和訓(xùn)練的,論文:[Deep Residual Learning for Image Recognition](http://deep Residual Learning for Image Recognition /)。該模型對(duì)ImageNet數(shù)據(jù)庫(kù)中的100多萬(wàn)張圖像進(jìn)行了訓(xùn)練。與VGG-19一樣,它可以分類多達(dá)1000個(gè)對(duì)象,網(wǎng)絡(luò)訓(xùn)練的是224x224像素的彩色圖像。以下是關(guān)于其大小和性能的簡(jiǎn)要信息:

尺寸:98 MB

Top-1 準(zhǔn)確率:74.9%

Top-5 準(zhǔn)確率:92.1%

參數(shù)數(shù)量:25,636,712

如果你比較ResNet50和VGG19,你會(huì)發(fā)現(xiàn)ResNet50實(shí)際上比VGG19性能更好,盡管它的復(fù)雜性更低。你也可以使用更新的版本,如ResNet101,ResNet152,ResNet50V2,ResNet101V2,ResNet152V2。

EfficientNet

EfficientNet是一種最先進(jìn)的卷積神經(jīng)網(wǎng)絡(luò),由谷歌在2019年的論文“efficient entnet: Rethinking Model Scaling for convolutional neural Networks”中訓(xùn)練并發(fā)布。EfficientNet有8種可選實(shí)現(xiàn)(B0到B7),甚至最簡(jiǎn)單的EfficientNet B0也是非常出色的。通過(guò)530萬(wàn)個(gè)參數(shù),實(shí)現(xiàn)了77.1%的最高精度性能。

EfficientNetB0的特性簡(jiǎn)要介紹如下:

尺寸:29 MB

Top-1 準(zhǔn)確率:77.1%

Top-5 準(zhǔn)確率:93.3%

參數(shù)數(shù)量:~5,300,000

深度:159

其他的計(jì)算機(jī)視覺(jué)問(wèn)題的預(yù)訓(xùn)練模型

我們列出了四種最先進(jìn)的獲獎(jiǎng)卷積神經(jīng)網(wǎng)絡(luò)模型。然而,還有幾十種其他模型可供遷移學(xué)習(xí)使用。下面是對(duì)這些模型的基準(zhǔn)分析,這些模型都可以在Keras Applications中獲得。

總結(jié)

=====

在一個(gè)我們可以很容易地獲得最先進(jìn)的神經(jīng)網(wǎng)絡(luò)模型的世界里,試圖用有限的資源建立你自己的模型就像是在重復(fù)發(fā)明輪子,是毫無(wú)意義的。

相反,嘗試使用這些訓(xùn)練模型,在上面添加一些新的層,考慮你的特殊計(jì)算機(jī)視覺(jué)任務(wù),然后訓(xùn)練。其結(jié)果將比你從頭構(gòu)建的模型更成功。

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1789

    文章

    46669

    瀏覽量

    237104
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3116

    瀏覽量

    48660
  • 計(jì)算機(jī)視覺(jué)

    關(guān)注

    8

    文章

    1694

    瀏覽量

    45901
  • 遷移學(xué)習(xí)
    +關(guān)注

    關(guān)注

    0

    文章

    74

    瀏覽量

    5554
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    計(jì)算機(jī)視覺(jué)有哪些優(yōu)缺點(diǎn)

    計(jì)算機(jī)視覺(jué)作為人工智能領(lǐng)域的一個(gè)重要分支,旨在使計(jì)算機(jī)能夠像人類一樣理解和解釋圖像和視頻中的信息。這一技術(shù)的發(fā)展不僅推動(dòng)了多個(gè)行業(yè)的變革,也
    的頭像 發(fā)表于 08-14 09:49 ?659次閱讀

    計(jì)算機(jī)視覺(jué)技術(shù)的AI算法模型

    計(jì)算機(jī)視覺(jué)技術(shù)作為人工智能領(lǐng)域的一個(gè)重要分支,旨在使計(jì)算機(jī)能夠像人類一樣理解和解釋圖像及視頻中的信息。為了實(shí)現(xiàn)這一目標(biāo),
    的頭像 發(fā)表于 07-24 12:46 ?543次閱讀

    計(jì)算機(jī)視覺(jué)的五大技術(shù)

    計(jì)算機(jī)視覺(jué)作為深度學(xué)習(xí)領(lǐng)域最熱門(mén)的研究方向之一,其技術(shù)涵蓋了多個(gè)方面,為人工智能的發(fā)展開(kāi)拓了廣闊的道路。以下是對(duì)計(jì)算機(jī)
    的頭像 發(fā)表于 07-10 18:26 ?1146次閱讀

    計(jì)算機(jī)視覺(jué)的工作原理和應(yīng)用

    計(jì)算機(jī)視覺(jué)(Computer Vision,簡(jiǎn)稱CV)是一門(mén)跨學(xué)科的研究領(lǐng)域,它利用計(jì)算機(jī)和數(shù)學(xué)算法來(lái)模擬人類視覺(jué)系統(tǒng)對(duì)圖像和視頻進(jìn)行識(shí)別、
    的頭像 發(fā)表于 07-10 18:24 ?1502次閱讀

    計(jì)算機(jī)視覺(jué)與人工智能的關(guān)系是什么

    引言 計(jì)算機(jī)視覺(jué)是一門(mén)研究如何使計(jì)算機(jī)能夠理解和解釋視覺(jué)信息的學(xué)科。它涉及到圖像處理、模式識(shí)別、機(jī)器學(xué)習(xí)等多個(gè)
    的頭像 發(fā)表于 07-09 09:25 ?484次閱讀

    計(jì)算機(jī)視覺(jué)與智能感知是干嘛的

    引言 計(jì)算機(jī)視覺(jué)(Computer Vision)是一門(mén)研究如何使計(jì)算機(jī)能夠理解和解釋視覺(jué)信息的學(xué)科。它涉及到圖像處理、模式識(shí)別、機(jī)器學(xué)習(xí)
    的頭像 發(fā)表于 07-09 09:23 ?658次閱讀

    計(jì)算機(jī)視覺(jué)和機(jī)器視覺(jué)區(qū)別在哪

    計(jì)算機(jī)視覺(jué)和機(jī)器視覺(jué)是兩個(gè)密切相關(guān)但又有明顯區(qū)別的領(lǐng)域。 一、定義 計(jì)算機(jī)
    的頭像 發(fā)表于 07-09 09:22 ?384次閱讀

    計(jì)算機(jī)視覺(jué)在人工智能領(lǐng)域有哪些主要應(yīng)用?

    與分類是計(jì)算機(jī)視覺(jué)的基礎(chǔ)應(yīng)用之一。通過(guò)訓(xùn)練機(jī)器學(xué)習(xí)模型,計(jì)算機(jī)可以識(shí)別和分類各種圖像,如動(dòng)物、植物、物體等。這種技術(shù)在許多
    的頭像 發(fā)表于 07-09 09:14 ?1098次閱讀

    計(jì)算機(jī)視覺(jué)屬于人工智能嗎

    屬于,計(jì)算機(jī)視覺(jué)是人工智能領(lǐng)域的一個(gè)重要分支。 引言 計(jì)算機(jī)視覺(jué)是一門(mén)研究如何使
    的頭像 發(fā)表于 07-09 09:11 ?1029次閱讀

    深度學(xué)習(xí)計(jì)算機(jī)視覺(jué)領(lǐng)域的應(yīng)用

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)作為其中的核心技術(shù)之一,已經(jīng)在計(jì)算機(jī)視覺(jué)領(lǐng)域取得了顯著的成果。計(jì)算機(jī)
    的頭像 發(fā)表于 07-01 11:38 ?635次閱讀

    機(jī)器視覺(jué)計(jì)算機(jī)視覺(jué)的區(qū)別

    在人工智能和自動(dòng)化技術(shù)的快速發(fā)展中,機(jī)器視覺(jué)(Machine Vision, MV)和計(jì)算機(jī)視覺(jué)(Computer Vision, CV)作為兩個(gè)重要的分支
    的頭像 發(fā)表于 06-06 17:24 ?1177次閱讀

    計(jì)算機(jī)視覺(jué)的主要研究方向

    計(jì)算機(jī)視覺(jué)(Computer Vision, CV)作為人工智能領(lǐng)域的一個(gè)重要分支,致力于使計(jì)算機(jī)能夠像人眼一樣理解和解釋圖像和視頻中的信息
    的頭像 發(fā)表于 06-06 17:17 ?778次閱讀

    計(jì)算機(jī)視覺(jué)的十大算法

    隨著科技的不斷發(fā)展,計(jì)算機(jī)視覺(jué)領(lǐng)域也取得了長(zhǎng)足的進(jìn)步。本文將介紹計(jì)算機(jī)視覺(jué)領(lǐng)域的十大算法,包括它
    的頭像 發(fā)表于 02-19 13:26 ?1177次閱讀
    <b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺(jué)</b>的十大算法

    什么是計(jì)算機(jī)視覺(jué)?計(jì)算機(jī)視覺(jué)的三種方法

    計(jì)算機(jī)視覺(jué)是指通過(guò)為計(jì)算機(jī)賦予人類視覺(jué)這一技術(shù)目標(biāo),從而賦能裝配線檢查到駕駛輔助和機(jī)器人等應(yīng)用。計(jì)算機(jī)缺乏像人類一樣憑直覺(jué)產(chǎn)生
    的頭像 發(fā)表于 11-16 16:38 ?4414次閱讀
    什么是<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺(jué)</b>?<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺(jué)</b>的三種方法

    最適合AI應(yīng)用的計(jì)算機(jī)視覺(jué)類型是什么?

    計(jì)算機(jī)視覺(jué)是指為計(jì)算機(jī)賦予人類視覺(jué)這一技術(shù)目標(biāo),從而賦能裝配線檢查到駕駛輔助和機(jī)器人等應(yīng)用。計(jì)算機(jī)缺乏像人類一樣憑直覺(jué)產(chǎn)生
    的頭像 發(fā)表于 11-15 16:38 ?407次閱讀
    最適合AI應(yīng)用的<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺(jué)</b>類型是什么?