<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 設(shè)計(jì)應(yīng)用 > 遷移學(xué)習(xí):共享AI智慧的途徑

          遷移學(xué)習(xí):共享AI智慧的途徑

          作者:高煥堂 時(shí)間:2020-03-03 來源:電子產(chǎn)品世界 收藏

          高煥堂? (臺(tái)灣VR產(chǎn)業(yè)聯(lián)盟主席,廈門VR/AR協(xié)會(huì)榮譽(yù)會(huì)長(zhǎng)兼顧問)

          本文引用地址:http://www.ex-cimer.com/article/202003/410498.htm

          0  引言 

          遷移學(xué)習(xí)(Transfer Learning)就像俗稱的“拿來主義”,善用別人已經(jīng)訓(xùn)練好模型的參數(shù)(智慧),引入到 自己的模型里,可以迅速建立1個(gè)的應(yīng)用情境。本文 以ResNet50為例,說明如何復(fù)用(Reuse)已經(jīng)訓(xùn)練好的 ResNet50的智慧(模型和參數(shù)),幫您瞬間探索任何一張 圖像的特征(Feature),然后幫您識(shí)別出圖片里的人或物 的種類,如水牛、斑馬、貓頭鷹或汽車等。

          1  認(rèn)識(shí)遷移學(xué)習(xí):以ResNet50為例 

          的智慧是來自機(jī)器的自我學(xué)習(xí),通稱為機(jī)器 學(xué)習(xí)。它經(jīng)常需要借助大量的數(shù)據(jù)來訓(xùn)練。例如, ResNet50就使用100多萬張圖像而訓(xùn)練出來的。在訓(xùn)練 的過程中,它去探索每張圖像中的特稱,并且學(xué)習(xí)歸納 和分類。目前的ResNet50可以準(zhǔn)確地識(shí)別出1000種人 或物,如日常生活中常遇到的狗、貓、食物、汽車和各 種家居物品等。例如,您可以隨意從百度圖片上截取一 張224x224大小的圖片,如圖1。

          微信截圖_20200306112121.png

          當(dāng)您把這圖片提交給ResNet50,它會(huì)瞬間探 索并進(jìn)行分類,然后告訴您:我預(yù)測(cè)這是大熊貓(Giant panda)。

          2  介紹ResNet50模型的結(jié)構(gòu) 

          目前最常見的圖像識(shí)別模型是:卷積網(wǎng)路(CNN) 模型。這ResNet50就是基于CNN的模型,如圖2。

          微信截圖_20200306112148.png

          其中,CNN模型包含兩部分:卷積層(Convolution Layers)與全連接層(Full-Connected Layers)。前者我特 別稱之為丫鬟部分;而后者則稱之為格格部分[1-2],如圖3。

          微信截圖_20200306112207.png

          Conv部分比較復(fù)雜,共約有40個(gè)層;而FC部分約 有10個(gè)層。所以稱之為ResNet50模型。

          3  復(fù)用ResNet50智慧的方法 

          典型的復(fù)用(Reuse)步驟如下。

          1)撰寫Python程式來建立一個(gè)ResNet50模型。 您可以從網(wǎng)路下載此Python程式的源碼來做修改。網(wǎng)址為:

          https://github.com/fchollet/deep-learning-models/ releases/ 

          如圖4的綠色框部分:

          微信截圖_20200306112229.png

          2)從網(wǎng)絡(luò)下載已經(jīng)訓(xùn)練好的模型參數(shù)(智慧)。 例如,圖4里的紅色框部分。包含2個(gè)檔案(下文詳細(xì) 說明)。 

          3)把所下載的模型參數(shù)檔案內(nèi)容載入您剛才建立 的ResNet50模型里。 

          經(jīng)由這3個(gè)步驟,就把別人已經(jīng)訓(xùn)練(學(xué)習(xí))好的模型 參數(shù),順利地遷移(Transfer)到您自己建立的模型里了。

          4   新潮方法:使用Excel把ResNet50模型包裝起來 

          4.1 準(zhǔn)備執(zhí)行環(huán)境(不需要編程) 

          使用Excel來包裝Python程式,可以讓許多不熟悉編 程者,來輕易地使用AI的各種應(yīng)用情境。只要您的電 腦上安裝有Excel和Python的相關(guān)套件(如TensorFlow、 Keras等)就能夠執(zhí)行基于Excel+Python的AI模板 (Template)了。至于這項(xiàng)執(zhí)行環(huán)境的安裝指南,可以參 閱筆者的博客:https://www.cnblogs.com/SmartADT/。 

          安裝好了執(zhí)行環(huán)境,就可以從上述網(wǎng)頁里下載兩個(gè) 模板:jjt18.zip,依據(jù)說明文件復(fù)制到您的環(huán)境里,然 后就可以執(zhí)行了。 4.2 開始執(zhí)行jjt18模板 

          首先,把這張圖像放在圖5里。

          微信截圖_20200306112245.png

          準(zhǔn)備把c:/oopc/im001pd.pg圖像提交給ResNet50去探 索和分類。接著,請(qǐng)您開啟Python程式:jjt18.py。畫面 上就出現(xiàn)了預(yù)先寫好的Python程式:

          微信截圖_20200306112306.png

          然后執(zhí)行這個(gè)程式,就呈現(xiàn)出Excel畫面:

          1583465140925483.png

          請(qǐng)按下“Predict”按鈕,這Excel背后的ResNet50就 展開瞬間探索這張像并進(jìn)行分類,然后輸出如下:

          1583465157660442.png

          它告訴您了:我預(yù)測(cè)99%的可能性是大熊貓(Giant panda)。

          5  僅復(fù)用丫鬟,訓(xùn)練自己的格格 

          5.1 說明 由于ResNet50是典型的CNN模型,包含卷積層與 FC層。在上一節(jié)里,使用Excel畫面來操作ResNet50, 并復(fù)用了全部(卷積層與FC層)的權(quán)重,就不必重新訓(xùn) 練,而直接用來辨別圖像里的東西。在本節(jié)里,就來介 紹另一種用法:只復(fù)用它的卷積層(丫鬟)部分,而不復(fù) 用FC層(格格)部分的權(quán)重。也就是,要自己來訓(xùn)練FC層 (格格)部分。 

          在CNN 模型(如ResNet50)里,丫鬟部分負(fù)責(zé)探索像 的特征,然后把這些特征值交給格格,讓格格(依據(jù)特 征值)來分辨出種類。例如,丫鬟看到一張圖片里的動(dòng) 物特征是:身體黑白條紋、4只腳,然后格格就依據(jù)這 特征而判斷這很可能是一匹斑馬。 

          雖然ResNet50里的格格已經(jīng)有智慧來進(jìn)行圖像分類 (Classification)了,而且可以辨識(shí)1000種日常生活中的 人或物。然而,在一些較狹窄的應(yīng)用場(chǎng)域里,只需要 (更準(zhǔn)確)辨識(shí)較少的種類時(shí),就需要訓(xùn)練自己的格格。 

          剛才提到了,有些場(chǎng)合需要重新訓(xùn)練格格來分類, 但是丫鬟具有的探索像特征的智慧,卻可以復(fù)用之。亦即,能借助于ResNet50的丫鬟(即卷積部分)的智慧,幫 忙探索我的圖片,來協(xié)助訓(xùn)練新的格格。一旦新格格訓(xùn) 練好了之后,ResNet50原有的丫鬟就能和新格格協(xié)同合 作,來更精確地區(qū)分特定的數(shù)據(jù)(圖片)集了。由于不必 重新訓(xùn)練丫鬟部分,就能節(jié)約許多訓(xùn)練(丫鬟的)時(shí)間。 

          5.2 準(zhǔn)備數(shù)據(jù),來訓(xùn)練新格格 

          茲拿一個(gè)較狹小的應(yīng)用場(chǎng)域,只需要格格來分辨 3個(gè)種類:斑馬、貓頭鷹和蘑菇。于是,筆者在/oopc/ v_data/train/文件夾里,準(zhǔn)備了150張圖片(皆為224 x 224),包括50張斑馬、50張貓頭鷹、以及50張蘑菇的圖 片。將它們分別放在這3個(gè)小文件夾里:

          微信截圖_20200306112411.png

          例如,其中的/Zebra/小文件夾里有50張圖片,如圖 6里。

          1583465202717425.png

          亦即,在/v_data/train/里共有150張圖片,分為3 種類(Classes)。接下來,就拿3類的圖像來訓(xùn)練自己的 格格。于是,繼續(xù)使用jjt18模板,執(zhí)行jjt18.py呈現(xiàn)出 <工作表2”的畫面,并按下<Train”按鈕,就展開訓(xùn) 練了:

          1583465225911570.png

          大約經(jīng)過5分鐘,就可訓(xùn)練完畢了。接著點(diǎn)選“工 作表3”,并按下“Show”按鈕,就顯示出一張圖片, 如下圖。

          微信截圖_20200306112637.png

          接著,按下“Predict”,就把這張圖片提交給 ResNet50去識(shí)別。此時(shí),就先由(ResNet50原有的)丫鬟 先去探索這張圖片的特征,然后把特征值轉(zhuǎn)交給新格格 去分類。最后由格格輸出結(jié)果如圖7。

          6  結(jié)語 

          本文是以ResNet50為例,說明如何借助ResNet50已 經(jīng)訓(xùn)練好的智慧去識(shí)別形形色色的圖像。此外,還可以 復(fù)用ResNet50里的丫鬟智慧,搭配自己的圖片集,來訓(xùn) 練自己的新格格,更新了ResNet50的智慧。 

          隨著AI的應(yīng)用領(lǐng)域愈來愈多,除了ResNet50之外, 您還可以通過本文所介紹的“遷移學(xué)習(xí)”途徑來共享更 多的AI模型和智慧。

          微信截圖_20200306112700.png

          參考文獻(xiàn): 

          [1] 高煥堂.學(xué)AI之路,從探索特征出發(fā)[J].電子產(chǎn)品世界, 2019(11):81-84. 

          [2] 高煥堂.邁向AI與IC產(chǎn)業(yè)結(jié)合之路——從AI神鷹設(shè)計(jì)模式談起 [J].電子產(chǎn)品世界,2019(12):78-80.

          本文來源于科技期刊《電子產(chǎn)品世界》2020年第03期第85頁,歡迎您寫論文時(shí)引用,并注明出處。



          關(guān)鍵詞: 202003 AI 人工智能

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();