吴恩达DeepLearningCourse3-结构化机器学习项目
文章目錄
- 第一周:機(jī)器學(xué)習(xí)策略1
- 正交化
- 單一數(shù)字評估指標(biāo)
- 滿足和優(yōu)化指標(biāo)
- 訓(xùn)練/開發(fā)/測試集
- 機(jī)器學(xué)習(xí)和人的表現(xiàn)
- 第二周:機(jī)器學(xué)習(xí)策略2
- 進(jìn)行誤差分析
- 修正標(biāo)注錯誤的數(shù)據(jù)
- 使用來自不同分布的數(shù)據(jù)進(jìn)行訓(xùn)練和測試
- 數(shù)據(jù)分布不匹配時(shí)的偏差與方差的分析
- 處理數(shù)據(jù)分布不匹配問題
- 遷移學(xué)習(xí)
- 多任務(wù)學(xué)習(xí)
- 端到端的深度學(xué)習(xí)
第一周:機(jī)器學(xué)習(xí)策略1
正交化
需要正交化的四個(gè)標(biāo)準(zhǔn)
-訓(xùn)練集的表現(xiàn):訓(xùn)練更大的神經(jīng)網(wǎng)絡(luò)、使用優(yōu)化算法
-開發(fā)集的表現(xiàn):正則化、使用更大的訓(xùn)練集
-測試集的表現(xiàn):使用更大的開發(fā)集
-真實(shí)應(yīng)用中的表現(xiàn):改變開發(fā)集或成本函數(shù)
單一數(shù)字評估指標(biāo)
思想是,使用單一的數(shù)字來對不同的模型進(jìn)行評估。
例:貓識別器
A算法的查準(zhǔn)率為95%,查全率為90%
B算法的查準(zhǔn)率為98%,查全率為85%
通過計(jì)算兩種算法的查準(zhǔn)率和查全率的調(diào)和平均數(shù)(F1-Score),以此評估A和B。
滿足和優(yōu)化指標(biāo)
滿足指標(biāo):所有參選算法必須滿足,且只有滿足和不滿足的差別(考查課)。
優(yōu)化指標(biāo):數(shù)值不同,其結(jié)果就不同(考試課)。
訓(xùn)練/開發(fā)/測試集
訓(xùn)練/開發(fā)/測試集的選擇:
核心是”瞄準(zhǔn)靶心“,即將來源不同的所有數(shù)據(jù)隨機(jī)混洗,放入開發(fā)集和測試集,此時(shí)開發(fā)集和測試集都來自同一分布,這分布就是所有數(shù)據(jù)混在一起。在設(shè)立開發(fā)集和測試集時(shí),要選擇能夠反映未來會得到的數(shù)據(jù)的開發(fā)集和測試集。如果開發(fā)集與測試集/開發(fā)集、測試集與真實(shí)數(shù)據(jù)偏差較大,則無法達(dá)到預(yù)期效果。
訓(xùn)練/開發(fā)/測試集的劃分:
傳統(tǒng)機(jī)器學(xué)習(xí)一般采用7/3或6/2/2的劃分。如今可獲得的數(shù)據(jù)量增多,開發(fā)集和測試集的占比更小(如1%)。
訓(xùn)練/開發(fā)/測試集,以及評估指標(biāo)的更改:
當(dāng)訓(xùn)練/開發(fā)/測試集,以及評估指標(biāo)不符合實(shí)際要求時(shí),需要立即調(diào)整。評估指標(biāo)可以有效加快工作效率,在團(tuán)隊(duì)工作中可以先快速確立指標(biāo),再根據(jù)實(shí)際修改。
機(jī)器學(xué)習(xí)和人的表現(xiàn)
①模型的準(zhǔn)確度隨著時(shí)間通常呈現(xiàn)上圖趨勢。
導(dǎo)致上圖趨勢的原因:在模型表現(xiàn)低于人類水平時(shí),可以通過一系列的工具提升訓(xùn)練效果,而超過人類水平時(shí)可利用的工具會明顯減少。可以用人類水平表現(xiàn)估計(jì)貝葉斯誤差,從而分析偏差/方差的問題。另一方面,人類水平在許多工作中都接近貝葉斯誤差,超越人類水平后,留給模型的進(jìn)步空間小。
②可避免偏差:貝葉斯誤差和訓(xùn)練集誤差的差距。
③人類水平表現(xiàn):人類能達(dá)到的最高水平(最接近貝葉斯偏差的水平)。
第二周:機(jī)器學(xué)習(xí)策略2
進(jìn)行誤差分析
在開發(fā)集或測試集里找一組錯誤樣本,統(tǒng)計(jì)屬于不同錯誤類型的錯誤數(shù)量。通過統(tǒng)計(jì)不同錯誤標(biāo)記類型占總數(shù)的百分比,幫助發(fā)現(xiàn)哪些問題需要優(yōu)先解決。
修正標(biāo)注錯誤的數(shù)據(jù)
深度學(xué)習(xí)算法對隨機(jī)誤差很健壯,但對系統(tǒng)性的錯誤就沒那么健壯了。比如,做標(biāo)記的人一直把白色的狗標(biāo)記成貓,分類器學(xué)習(xí)之后,會把所有白色的狗都分類為貓。
根據(jù)錯誤標(biāo)記引起的錯誤百分比判斷,如果這些標(biāo)記錯誤嚴(yán)重影響了在開發(fā)集上評估算法的能力,那么就應(yīng)該去花時(shí)間修正錯誤的標(biāo)簽。但如果它們沒有嚴(yán)重影響到你用開發(fā)集評估成本偏差的能力,那么可能就不應(yīng)該時(shí)間去處理。
注意:修正標(biāo)簽要同時(shí)作用到開發(fā)集和測試集上。
使用來自不同分布的數(shù)據(jù)進(jìn)行訓(xùn)練和測試
假設(shè)有200,000張網(wǎng)絡(luò)貓圖和10,000張用戶拍照貓圖,模型的目標(biāo)是識別用戶上傳的貓圖。如果將兩種來源的數(shù)據(jù)混洗并放入訓(xùn)練、開發(fā)、測試集中,有悖于設(shè)立開發(fā)集的目的(瞄準(zhǔn)的目標(biāo))。此時(shí)可以將200,000張網(wǎng)絡(luò)貓圖全部放入訓(xùn)練集(也可以放部分用戶貓圖),開發(fā)集和測試集只使用用戶貓圖。
數(shù)據(jù)分布不匹配時(shí)的偏差與方差的分析
訓(xùn)練-開發(fā)集:從訓(xùn)練集劃分出的子集,不參與訓(xùn)練,和訓(xùn)練集同一來源。
方差問題:如果 訓(xùn)練-開發(fā)集 的誤差高于 訓(xùn)練集 的誤差,說明盡管神經(jīng)網(wǎng)絡(luò)在訓(xùn)練集中表現(xiàn)良好,但無法泛化到來自相同分布的訓(xùn)練-開發(fā)集里,無法很好地泛化推廣到來自同一分布但以前沒見過的數(shù)據(jù)中,所以存在方差問題。
數(shù)據(jù)不匹配問題:算法擅長處理和關(guān)心的數(shù)據(jù)分布不同。
處理數(shù)據(jù)分布不匹配問題
誤差分析,看看訓(xùn)練集和開發(fā)集,了解這兩個(gè)數(shù)據(jù)分布到底有什么不同,然后看看是否有辦法收集更多看起來像開發(fā)集的數(shù)據(jù)作訓(xùn)練。其中一種方法是人工數(shù)據(jù)合成。使用人工數(shù)據(jù)合成時(shí),一定要謹(jǐn)慎,因?yàn)橛锌赡軓乃锌赡苄缘目臻g只選了很小一部分去模擬數(shù)據(jù),從而對這部分?jǐn)?shù)據(jù)產(chǎn)生了過擬合。
遷移學(xué)習(xí)
適用情況:任務(wù)A和任務(wù)B是相關(guān)的,A任務(wù)具有龐大的數(shù)據(jù)輸入,并已經(jīng)訓(xùn)練出神經(jīng)網(wǎng)絡(luò)。B任務(wù)的數(shù)據(jù)量較少,且需要獲得B任務(wù)的神經(jīng)網(wǎng)絡(luò)。由于任務(wù)B單個(gè)輸入樣本的價(jià)值高于A,所以要求A的輸入數(shù)據(jù)量足夠大,才能在遷移學(xué)習(xí)中起作用。
為什么遷移學(xué)習(xí)可以起作用:有很多低層次特征,比如說邊緣檢測、曲線檢測、陽性對象檢測),從非常大的圖像識別數(shù)據(jù)庫中習(xí)得這些能力可能有助于你的學(xué)習(xí)算法在任務(wù)B(同屬于圖像試別任務(wù))中訓(xùn)練得更快/需要數(shù)據(jù)量更少。
操作方法:將任務(wù)A的最后一層替換為一層或多層神經(jīng)網(wǎng)絡(luò),并初始化權(quán)重。如果B的數(shù)據(jù)足夠多,可以用其訓(xùn)練新神經(jīng)網(wǎng)絡(luò)所有層的參數(shù);如果不夠多,則只訓(xùn)練新層的參數(shù)。
多任務(wù)學(xué)習(xí)
和使用Softmax進(jìn)行多分類不同,多分類問題將單個(gè)標(biāo)簽分配給單個(gè)樣本(如輸入是貓/是狗/是老鼠),而多任務(wù)學(xué)習(xí)的一個(gè)輸入可以有多個(gè)不同的標(biāo)簽(有無貓/有無狗/有無老鼠)。
多任務(wù)學(xué)習(xí)的優(yōu)點(diǎn):可以訓(xùn)練多個(gè)不同的神經(jīng)網(wǎng)絡(luò),而不是訓(xùn)練一個(gè)網(wǎng)絡(luò)做多件事情。但神經(jīng)網(wǎng)絡(luò)一些早期特征,在識別不同物體時(shí)都會用到,訓(xùn)練一個(gè)神經(jīng)網(wǎng)絡(luò)做四件事情會比訓(xùn)練四個(gè)完全獨(dú)立的神經(jīng)網(wǎng)絡(luò)分別做四件事性能要更好。
多任務(wù)學(xué)習(xí)的使用條件:訓(xùn)練的一組任務(wù)可以共用低層次特征、(通常)每個(gè)任務(wù)的數(shù)據(jù)量很接近、神經(jīng)網(wǎng)絡(luò)足夠大。
端到端的深度學(xué)習(xí)
直觀上理解,由輸入直接得到輸出,而不包含任何中間環(huán)節(jié)的學(xué)習(xí)(也可能因此錯過了這些環(huán)節(jié)具有的優(yōu)點(diǎn))。
端到端的深度學(xué)習(xí)要求具有巨大的數(shù)據(jù)量,且任務(wù)越復(fù)雜,數(shù)據(jù)量的需求越大。如:識別圖像中人臉的位置 比 識別圖像中人臉的特征 更簡單,數(shù)據(jù)需求量更小。
對同一個(gè)問題,如果將其分解成若干步驟,每個(gè)步驟都具有足夠的數(shù)據(jù)量;如果采用端到端的深度學(xué)習(xí),數(shù)據(jù)量可能不夠。
總結(jié)
以上是生活随笔為你收集整理的吴恩达DeepLearningCourse3-结构化机器学习项目的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 白背木耳的功效与作用、禁忌和食用方法
- 下一篇: 白心红薯的功效与作用、禁忌和食用方法