迁移学习理解
遷移學(xué)習(xí),即將一個領(lǐng)域已經(jīng)成熟的只是應(yīng)用到其他的場景中去。
用神經(jīng)網(wǎng)絡(luò)的詞語來表述,就是一層層網(wǎng)絡(luò)中每個節(jié)點的權(quán)重從一個訓(xùn)練好的網(wǎng)絡(luò)遷移到一個全新的網(wǎng)絡(luò)里,而不是從頭開始,為每特定的個任務(wù)訓(xùn)練一個神經(jīng)網(wǎng)絡(luò)。這樣做的好處,可以從下面的例子中體現(xiàn),假設(shè)你已經(jīng)有了一個可以高精確度分辨貓和狗的深度神經(jīng)網(wǎng)絡(luò),你之后想訓(xùn)練一個能夠分別不同品種的狗的圖片模型,你需要做的不是從頭訓(xùn)練那些用來分辨直線,銳角的神經(jīng)網(wǎng)絡(luò)的前幾層,而是利用訓(xùn)練好的網(wǎng)絡(luò),提取初級特征,之后只訓(xùn)練最后幾層神經(jīng)元,讓其可以分辨狗的品種。
一種遷移學(xué)習(xí)的方法是對整個網(wǎng)絡(luò)進(jìn)行微調(diào),假設(shè)你已訓(xùn)練好了識別貓品種的神經(jīng)網(wǎng)絡(luò),你的網(wǎng)絡(luò)能對50種貓按品種進(jìn)行分類。接下來你想對網(wǎng)絡(luò)進(jìn)行升級,讓其能夠識別100種貓,這時你不應(yīng)該只訓(xùn)練網(wǎng)絡(luò)的最后一層,而應(yīng)該逐層對網(wǎng)絡(luò)中每個節(jié)點的權(quán)重進(jìn)行微調(diào)。顯然,只訓(xùn)練最后幾層,是遷移學(xué)習(xí)最簡單的1.0版,而對節(jié)點權(quán)重進(jìn)行微調(diào)(fine turing),就是更難的2.0版,通過將其他層的權(quán)重固定,只訓(xùn)練一層這樣的逐層訓(xùn)練,可以更好的完成上述任務(wù)。
另一種遷移學(xué)習(xí)的方式是借用網(wǎng)絡(luò)的結(jié)構(gòu),即不是使用已訓(xùn)練好的網(wǎng)絡(luò)的權(quán)重,而是使用相同的網(wǎng)絡(luò)結(jié)構(gòu),例如多少層,每層多少節(jié)點這樣的信息,然后使用隨機(jī)生成的權(quán)重作為訓(xùn)練的起點。例如你要訓(xùn)練世界上第一個識別fMRI圖像的神經(jīng)網(wǎng)絡(luò),你就可以借鑒識別X光圖片的神經(jīng)網(wǎng)絡(luò)。
轉(zhuǎn)載于:https://www.cnblogs.com/yeran/p/10451767.html
總結(jié)
- 上一篇: 测试用例的常用设计方法
- 下一篇: Hadoop记录-监控几个思路