全文鏈接:http:///?p=30793您想構(gòu)建一個(gè)沒(méi)有太多訓(xùn)練數(shù)據(jù)的機(jī)器學(xué)習(xí)模型嗎?眾所周知,機(jī)器學(xué)習(xí)需要大量數(shù)據(jù),而收集和注釋數(shù)據(jù)需要時(shí)間且成本高昂(點(diǎn)擊文末“閱讀原文”獲取完整代碼數(shù)據(jù))。 本文介紹了一些在沒(méi)有太多數(shù)據(jù)或標(biāo)記數(shù)據(jù)的情況下進(jìn)行圖像分類(lèi)的方法。我將介紹遷移學(xué)習(xí)、自監(jiān)督學(xué)習(xí)的最重要方面。 視頻 利用未標(biāo)記的數(shù)據(jù)與標(biāo)記數(shù)據(jù)相比,未標(biāo)記的數(shù)據(jù)通常更容易訪問(wèn)。不利用這一點(diǎn)就是一種浪費(fèi)! 自我監(jiān)督學(xué)習(xí)自監(jiān)督學(xué)習(xí)解決了從未標(biāo)記的數(shù)據(jù)中學(xué)習(xí)深度特征的問(wèn)題。訓(xùn)練自監(jiān)督模型后,特征提取器可以像在遷移學(xué)習(xí)中一樣使用,因此您仍然需要一些帶注釋的數(shù)據(jù)來(lái)進(jìn)行微調(diào)。 那么,如何從未標(biāo)記的數(shù)據(jù)中訓(xùn)練深度特征提取器呢?總而言之,您需要一個(gè)足夠困難的代理任務(wù)(Pretext Task),使您能夠?qū)W習(xí)分類(lèi)任務(wù)的有趣特征。 如果你想在不玩實(shí)際比賽的情況下贏得足球比賽,例如,你可以盡可能多地訓(xùn)練雜技球。雜技球?qū)⑻岣吣目厍蚣夹g(shù),這在玩游戲時(shí)會(huì)派上用場(chǎng)。 代理任務(wù)的一個(gè)例子是預(yù)測(cè)圖像的旋轉(zhuǎn)角度?;旧希瑢?duì)于每個(gè)圖像,您應(yīng)用旋轉(zhuǎn) z 來(lái)獲取旋轉(zhuǎn)的圖像 x。然后,你訓(xùn)練一個(gè)神經(jīng)網(wǎng)絡(luò)來(lái)預(yù)測(cè) x 中的 z 。 此轉(zhuǎn)換預(yù)測(cè)任務(wù)會(huì)強(qiáng)制您的網(wǎng)絡(luò)深入了解您的數(shù)據(jù)。事實(shí)上,要預(yù)測(cè)狗圖像的旋轉(zhuǎn),您的網(wǎng)絡(luò)首先需要了解圖像中有一只狗,并且狗應(yīng)該以特定的方式定向。 根據(jù)特定目標(biāo),代理任務(wù)可能會(huì)有很大差異。常用的代理任務(wù)包括:
遷移學(xué)習(xí)當(dāng)您從頭開(kāi)始訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)時(shí),您通常會(huì)隨機(jī)初始化權(quán)重。這是初始化神經(jīng)網(wǎng)絡(luò)的最佳方法嗎?答案通常是否定的。 首先,深度學(xué)習(xí)是關(guān)于表征的。在經(jīng)典機(jī)器學(xué)習(xí)中,特征需要手動(dòng)制作。深度學(xué)習(xí)背后的想法是,你讓你的神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時(shí)自己學(xué)習(xí)特征表示。 在神經(jīng)網(wǎng)絡(luò)的每一層之間,您有一個(gè)輸入數(shù)據(jù)的表示形式。你越深入你的神經(jīng)網(wǎng)絡(luò),你的表示應(yīng)該越全局化。通常,已知分類(lèi)器神經(jīng)網(wǎng)絡(luò)的第一層能夠檢測(cè)顏色和形狀。中間層將第一層表示作為輸入,以計(jì)算比第一層更復(fù)雜的概念。例如,他們可能會(huì)檢測(cè)到蘋(píng)果葉或枝干的存在。最后一層給出了圖像來(lái)自每個(gè)類(lèi)的概率。 遷移學(xué)習(xí)背后的想法是,從另一個(gè)分類(lèi)任務(wù)中學(xué)習(xí)的一些表示可能對(duì)您的任務(wù)有用。遷移學(xué)習(xí)是關(guān)于在另一項(xiàng)任務(wù)上獲取預(yù)訓(xùn)練網(wǎng)絡(luò)的第一層,在其上添加新層,并在感興趣的數(shù)據(jù)集上微調(diào)整個(gè)網(wǎng)絡(luò)。 點(diǎn)擊標(biāo)題查閱往期內(nèi)容 ![]() 左右滑動(dòng)查看更多 01 ![]() 02 ![]() 03 ![]() 04 ![]() 作為比較,如果你的目標(biāo)是學(xué)習(xí)贏得足球比賽,那么遷移學(xué)習(xí)將包括先學(xué)習(xí)打籃球,習(xí)慣移動(dòng)你的身體,鍛煉你的耐力等,然后再開(kāi)始玩足球比賽。 它將如何影響最終網(wǎng)絡(luò)的性能?您應(yīng)該在哪里切斷預(yù)先訓(xùn)練的網(wǎng)絡(luò)?這些問(wèn)題在中得到了廣泛的解決。 總結(jié)最重要的想法:
R語(yǔ)言深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò) (CNN)對(duì) CIFAR 圖像進(jìn)行分類(lèi):訓(xùn)練與結(jié)果評(píng)估可視化 本文演示了訓(xùn)練一個(gè)簡(jiǎn)單的卷積神經(jīng)網(wǎng)絡(luò) (CNN) 來(lái)對(duì) CIFAR 圖像進(jìn)行分類(lèi)。由于本教程使用 Keras Sequential API,因此創(chuàng)建和訓(xùn)練我們的模型只需幾行代碼。設(shè)置library(keras) 下載并準(zhǔn)備 CIFAR10 數(shù)據(jù)集CIFAR10 數(shù)據(jù)集包含 10 個(gè)類(lèi)別的 60,000 張彩色圖像,每個(gè)類(lèi)別有 6,000 張圖像。數(shù)據(jù)集分為 50,000 張訓(xùn)練圖像和 10,000 張測(cè)試圖像。這些類(lèi)是互斥的,它們之間沒(méi)有重疊。 驗(yàn)證數(shù)據(jù)為了驗(yàn)證數(shù)據(jù)集看起來(lái)是否正確,讓我們繪制訓(xùn)練集中的前 25 張圖像并在每張圖像下方顯示類(lèi)別名稱(chēng)。 train %>% 創(chuàng)建卷積基下面的6行代碼使用一種常見(jiàn)的模式定義了卷積基礎(chǔ):Conv2D和MaxPooling2D層的堆疊。 作為輸入,CNN接受形狀的張量(image\_height, image\_width, color\_channels),忽略了批次大小。如果你是第一次接觸這些維度,color\_channels指的是(R,G,B)。在這個(gè)例子中,你將配置我們的CNN來(lái)處理形狀為(32,32,3)的輸入,這是CIFAR圖像的格式。你可以通過(guò)將參數(shù)input_shape傳遞給我們的第一層來(lái)做到這一點(diǎn)。 kers\_moe\_etl %>% 到目前為止,讓我們展示一下我們模型的架構(gòu)。 summary(model) |
|
來(lái)自: 拓端數(shù)據(jù) > 《待分類(lèi)》