您好,登錄后才能下訂單哦!
如何使用TensorFlow for Poets訓練圖像分類器,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
今天我們學習如何訓練圖像分類器,只需通過圖像目錄即可完成。比如說,你想要構建一個分類器來區分霸龍和三角龍的圖片:
或者你想區分莫奈或畢加索的畫:
為了做到以上功能我們需要使用一個代碼實驗室叫做TensorFlow for Poets,這是開始學習并且做圖片分類相關工作一個的好方法。
現在有兩件事需要完成:首先,這個代碼實驗室是非常高級的,為了訓練我們的分類器我們只需要運行幾個腳本,令人印象深刻的是分類器所創造的要比我們自己寫的腳本好,之后會向你展示代碼實驗室,在運行狀態時是什么樣子的,會添加上下文和背景來解釋為什么它這么好,讓我們開始吧。要通過TensorFlow for Poets訓練一個圖像分類器,我們只需要提供一樣東西 ——訓練數據。也就是一個有很多圖像的圖像目錄:
我的計劃是創造一個可以區分五種不同的花的圖片分類器,玫瑰、太陽花等等:
這就是我的訓練數據,注意我有五個目錄,每一種花都有一個目錄,在每個目錄中都有很多的圖片:
我們用花來舉例的原因是我們在編碼實驗室中提供了這組數據,因此你可以很快上手。如果你想使用你自己的圖片比如關于恐龍的圖片或者名畫,你只需要創建一個目錄把從網上找到的圖片放在相應的目錄中,每一個目錄中都需要大約一百張圖片:
我們有了訓練數據后我們就可以開始訓練分類器了,我們會使用TensorFlow來做這一步。TensorFlow是一個開源的機器學習庫,在深度學習領域尤其強大,深度學習最近幾年發展迅猛尤其在圖像分類領域:
也就是我們今天所要做的事,之前的文章中我們討論過如何區分蘋果和橘子的不同,我們發現手動做這個工作是不可能的。因為世界上有太多不同的蘋果和橘子,但現在我們也知道分類器把特征作為輸入,我們很難用代碼把有用的信息從圖像中提取出來。
比如,你不會想去寫一個可以探測一片水果質地的代碼。為了解決這個問題我們使用深度學習,因為在圖像處理方面它有巨大的優勢,就是這個你不用手動提取特征,你可以使用像素圖像的特征。分類器會解決其余問題,為了區分我們訓練素材的不同,讓我們把鳶尾花數據集和圖像目錄相比較在鳶尾花。數據集中每一列都描述花的一個特征,你可以想象我們是手動提取這些特征的,比如通過尺子來量花朵,相比之下,這是我們的訓練數據。
在TensorFlow for Poets中這就是一個標記好的圖片清單,圖片分類器僅僅是一個函數f(x)=y在這里,x是一個2D的圖像像素矩陣,y是玫瑰標簽。當我們在說深度學習時,我們使用的分類器叫做神經網絡:
高級層面上來講這僅僅是另一個分類器。也就是跟上一次記錄相比最接近的一次,區別在于神經網絡可以學習很多復雜的函數,在這個編碼實驗室里TensorFlow for Poets會在幕后為你負責準備并訓練神經網絡,這并不意味著TensorFlow的編碼要比我們目前所看到的更難寫。我們要先運行這個腳本,在代碼實驗室里有所有的詳細信息(文末附上鏈接地址),所以我在這里就不再贅述:
但我會對兩件事交代一下背景,你也許會想知道,首先,腳本大約需要20分鐘來訓練分類器。現在你可以問自己這是很長的一段時間嗎?當然不是很長,事實上TensorFlow for Poets并不是從零開始訓練分類器,它是從一個現有的叫做Inception的分類器開始訓練的,Inception是谷歌最好的圖像分類器之一,并且它是開源的。
在我們的訓練數據里有只有幾千張圖時,Inception已經通過了一千多種類,一百二十萬張圖片的訓練了。訓練Inception需要大約兩周的時間在一個有八個繪圖處理器的快速電腦上。在TensorFlow for Poets里我們以Inception為基礎,然后使用一個叫做再次訓練的功能來調試使其更好地分辨我們的圖像。
也讓我們重新定義Inception之前學習的一些參數,這樣我們就可以用很少的訓練數據創建一個高精準度的分類器,現在訓練結束了:
當我們有了一個訓練好的分類器后, 我們就可以測試它了。我會從網上下載這張玫瑰的圖片:
使用我們的分類器來預測這是哪一種花。我們可以看到,答案正確,我們可以看到對可能是其它花的置信分布:
請記住,我們的分類器僅知道我們向它展示的圖片,所以如果我們讓它分類一個圖片比如羅馬角斗場:
它一定會說這是一種花。我們只能希望置信區間會很低了,現在讓我再說一兩點:訓練一個圖像分類器是一個多樣性和數量的游戲。多樣性來說,我們有更多不同玫瑰的圖像,預測結果會更準確。比如說,我們的訓練數據包含紅,白,黃色的玫瑰,我們也有在不同角度拍攝的照片,比如從上方或者從旁側,我們也有玫瑰作為前景或者是背景的圖片。數量上來講,我的意思是我們的訓練數據越多我們就會創造更好的分類器。
在玫瑰文件夾中有幾百張照片這用來再次訓練Inception足夠了。你可能可以用更少的圖片不過準確度可能會降低。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。