1. 程式人生 > >吳恩達deeplearning.ai課程系列筆記09

吳恩達deeplearning.ai課程系列筆記09

#寫在最前,deeplearning.ai系列課程相較於之前的Andrew Ng在coursera上2014釋出的機器學習課程內容更加豐富。 重要的是此次課程示例程式碼都是用python來實現,不需要去熟悉octave,對大部分需要用python來學習機器學習的同學來說是個福音! 原課程視訊請移步網易雲課堂或者coursera上學習。

#本文內容部分來自網路,只為自己學習以及分享供更多的人學習使用微笑

1、誤差分析

視訊中舉了個動物分類的例子,簡單的來說,就是我們可以並行分析,來考慮導致誤差的多種因素所佔的比重。可以建個表格:


統計錯誤型別的百分比,這個分析步驟可以給我們一個粗略的估計,讓我們大致確定是否值得去處理每個不同的錯誤型別。

另外,我們也需要對錯誤標註的資料提高警惕:

對於部分人工產生的隨機誤差,我們不需要耗費大量的精力在其中,因為如果資料足夠大,這部分誤差的影響並不明顯。說白了,吳大大就是讓我們通過進行誤差分析,來發現到底是哪些因素導致了比較大的壞作用,然後讓我們朝著改善這個的方向去努力,清楚後期的優化方向。

另外,吳大大還說了,就是掄起袖子幹,快速搭建第一個系統,並進行迭代。

2、不同分佈上的訓練和測試

現如今,由於需求的資料量非常大,很多的團隊,可能使用的訓練資料都是和開發集和測試集來自不同的分佈。

我們可以從網上獲取大量的高清晰的貓的圖片去做分類,如200000張,但是隻能獲取少量利用手機拍攝的不清晰的圖片,如10000張。但是我們系統的目的是應用到手機上做分類。

方法一:

將兩組資料合併到一起,總共得到21萬張圖片樣本。將這些樣本隨機分配到訓練、開發、測試集中。

  • 好處:三個集合中的資料均來自於同一分佈;
  • 壞處:我們設立開發集的目的是瞄準目標,而現在我們的目標絕大部分是為了去優化網上獲取的高清晰度的照片,而不是我們真正的目標。

這個方法不是一個好的方法。

方法二:

訓練集均是來自網上下載的20萬張高清圖片,當然也可以加上5000張手機非高清圖片;對於開發和測試集都是手機非高清圖片。

  • 好處:開發集全部來自手機圖片,瞄準目標;
  • 壞處:訓練集和開發、測試集來自不同的分佈。

從長期來看,這樣的分佈能夠給我們帶來更好的系統性能。

所以,吳大大更建議開發和測試集最好是全部來自目標樣本。

對於不同分佈的偏差和方差的分析,我們可以設立訓練開發集:

訓練開發集,其中的資料和訓練資料來自同一分佈,但是卻不用於訓練過程。

如果最終,我們的模型得到的誤差分別為:

  • Training error:1%
  • Training-dev error:9%
  • Dev error:10%

那麼,由於訓練開發集儘管和訓練集來自同一分佈,但是卻有很大的誤差, 模型無法泛化到同分布的資料,那麼說明我們的模型存在方差問題

但如果我們的模型得到的誤差分別為:

  • Training error:1%
  • Training-dev error:1.5%
  • Dev error:10%

那麼在這樣的情況下,我們可以看到,來自同分布的資料,模型的泛化能力強,而開發集的誤差主要是來自於分佈不匹配導致的。

而解決資料分佈不均產生的問題的辦法有:

  • 進行人工誤差分析,嘗試去了解訓練集和開發測試集的具體差異在哪裡。如:噪音等;
  • 嘗試把訓練資料變得更像開發集,或者收集更多的類似開發集和測試集的資料,如增加噪音;
3、遷移學習

簡單的解釋就是假如我們之前訓練好了一個喵咪分類器,後來我們有了新任務——做一個海豚分類器,那麼就可以將之前建立的喵咪分類器模型運用到新任務中去。

一般來說,如果想將A模型運用到B模型,需要滿足下面一些條件

  • A和B需要有相類似的輸入資料集,例如要麼都是影象識別,要麼是語音識別
  • A的資料集要足夠多,即遠多於B
  • A中學到一些low level features要對B有所幫助
4、多工學習 在多工學習中,我們的子任務是並行處理的。例如在無人駕駛過程中,需要同時識別人,紅綠燈以及其他各種物體。

最後的ŷ 是一個有4元素的向量,假設分別是行人、汽車、停車標誌、訊號燈。如果識別出圖片中有哪一個元素,對應位置則輸出1。這跟softmax要進行區分,softmax只是一次識別一種物體,比如說識別出是行人,則輸出[1,0,0,0],而不會說同時識別出行人和訊號燈。

5、端到端的學習

相對於傳統的一些資料處理系統或者學習系統,它們包含了多個階段的處理過程,而端到端的深度學習則忽略了這些階段,用單個神經網路來替代。

吳大大舉了個語音識別的例子,感興趣的可以去找視訊看一下。

一般來說,在少資料集的情況下傳統的特徵提取方式可能會取得好的效果;如果在有足夠的大量資料集情況下,端到端的深度學習會發揮巨大的價值。

相關推薦

deeplearning.ai課程系列筆記09

#寫在最前,deeplearning.ai系列課程相較於之前的Andrew Ng在coursera上2014釋出的機器學習課程內容更加豐富。 重要的是此次課程示例程式碼都是用python來實現,不需要去熟悉octave,對大部分需要用python來學習機器學習的同學來說

deeplearning.ai課程系列筆記05(下)

#寫在最前,deeplearning.ai系列課程相較於之前的Andrew Ng在coursera上2014釋出的機器學習課程內容更加豐富。 重要的是此次課程示例程式碼都是用python來實現,不需要去熟悉octave,對大部分需要用python來學習機器學習的同學來說

deeplearning.ai課程系列筆記06

#寫在最前,deeplearning.ai系列課程相較於之前的Andrew Ng在coursera上2014釋出的機器學習課程內容更加豐富。 重要的是此次課程示例程式碼都是用python來

deeplearning.ai課程系列筆記01

#寫在最前,deeplearning.ai系列課程相較於之前的Andrew Ng在coursea上2014釋出的機器學習課程內容更加豐富。 重要的是此次課程示例程式碼都是用python來實現,

DeepLearning.ai 課程提煉筆記(4-2)卷積神經網絡 --- 深度卷積模型

mes and shift abd actual 應用 比賽 特征 通道 1. 經典的卷積網絡 介紹幾種經典的卷積神經網絡結構,分別是LeNet、AlexNet、VGGNet。 LeNet-5: LeNet-5主要是針對灰度設計的,所以其輸入較小,為 ,其結構如下:

deeplearning.ai課程《改善深層神經網路:超引數除錯、正則化以及優化》____學習筆記(第一週)

____tz_zs學習筆記第一週 深度學習的實用層面(Practical aspects of Deep Learning)我們將學習如何有效運作神經網路(超引數調優、如何構建資料以及如何確保優化演算法快速執行)設定ML應用(Setting up your ML applic

DeepLearning.ai《深度學習》課程筆記目錄總集

本文釋出在知乎的專欄中,為了方便習慣使用CSDN的使用者,更改了下面文章的直鏈到CSDN中的筆記。 同時,也歡迎大家關注我的知乎:大樹先生,會不定期有新的乾貨更新。一起學習一起進步呀!^_^ DeepLearning.ai簡介 deepLearning.

【Coursera】 deeplearning.ai 05.序列模型 第一週 迴圈序列模型 課程筆記

迴圈序列模型 為什麼選擇序列模型 在語音識別、音樂生成、情感分類、DNA序列分析、機器翻譯、視訊識別、命名實體識別等任務中,共同特點是輸入X和/或輸出Y都是序列。 數學符號 例如,對於命名實體識別的問題: 對於輸入序列,用 x&l

【Coursera】 deeplearning.ai 04.卷積神經網路 第二週 深度卷積神經網路 課程筆記

深度卷積神經網路 2.1 為什麼要進行例項化 實際上,在計算機視覺任務中表現良好的神經網路框架,往往也適用於其他任務。 2.2 經典網路 LeNet-5 AlexNet VGG LeNet-5 主要針對灰度影象 隨著神經網路的加深

deeplearning.ai五項課程完整筆記了解一下?

來源:機器之心本文共3744字,建議閱讀8分鐘。通過本文為大家解讀如何構建自然語言、音訊和其他序

完結篇 | deeplearning.ai專項課程精煉筆記全部彙總

從去年8月份開始,AI界大IP吳恩達在coursera上開設了由5們課組成的深度學習專項課程,掀起了一股人工智慧深度學習熱潮。這裡附上deeplearning.ai的官網:關於該深度學習專項課程,本人非常推薦!它對於理解各種演算法背後的原理非常有幫助,同時提供了大量的應用場景

完結撒花!DeepLearning.ai《深度學習》課程筆記目錄總集

本文釋出在知乎的專欄中,為了方便習慣使用CSDN的使用者,更改了下面文章的直鏈到CSDN中的筆記。 同時,也歡迎大家關注我的知乎:大樹先生,會不定期有新的乾貨更新。一起學習一起進步呀!^_^ DeepLearning.ai簡介 deepLe

DeepLearning.ai筆記(5-1)-- 迴圈序列模型

吳恩達DeepLearning.ai筆記(5-1)– 迴圈序列模型 1.一些序列資料例子 2.數學符號 x<1>x<1>輸入序列X第一個單詞,TixTxi輸入序列X的單詞個數,X(i)<t>X(i)&l

DeepLearning.ai系列課後程式設計題實踐總結week3

# -*- coding: utf-8 -*- """ Created on Sun Sep 24 09:09:10 2017 @author: Jay """ import numpy as np import matplotlib.pyplot as p

心得丨Deeplearning.ai 全部課程學習心得分享

選自Medium作者:Ryan Shrott    機器之心編譯 本文作者,加拿大國家銀行首席分析師 Ryan Shrott 完成了迄今為止(2017 年 10 月 25 日)吳恩達在 Coursera 上釋出的所有深度學習課程,併為我們提供了課程解讀。 目前 Coursera 上可用的課程中,

DeepLearning.ai筆記(1-4)-- 深層神經網路

神經網路和深度學習—深層神經網路1.深度網路中的前向傳播2. 核對矩陣的維度DNN結構示意圖如圖所示:對於第L層神經網路,單個樣本其各個引數的矩陣維度為:W[l]:(n[l],n[l−1])b[l]:(n[l],1)dW[l]:(n[l],n[l−1])db[l]:(n[l]

deeplearning.ai筆記二】通俗講解神經網路上

神經網路(Neural Network)的構築理念是受到生物神經網路功能的運作啟發而產生的。人工神經網路通常是通過一個基於數學統計學型別的學習方法得以優化,所以人工神經網路也是數學統計學方法的一種實際應用。和其他機器學習方法一樣,神經網路已經被用於解決各種各樣的問題,例如機器

deepLearning.ai迴圈神經網路RNN學習筆記_看圖就懂了!!!(理論篇)

  前言 目錄:     RNN提出的背景         - 一個問題         - 為什

deepLearning.ai迴圈神經網路RNN學習筆記_沒有複雜數學公式,看圖就懂了!!!(理論篇)

  本篇文章被Google中國社群組織人轉發,評價: 條理清晰,寫的很詳細!  被阿里演算法工程師點在看!  所以很值得一看!   前言 目錄:     RNN提出的背景    &nbs

Deeplearning.ai 知識點梳理(course 5,week 3)

  本週主要講了多種sequence to sequence結構,包括conditional language model,beam searching,bleu,attention,speech recognition,以及trigger word detec