標籤:

吳恩達機器學習第十一周課後感

目錄

一、主要內容

二、個人感受

三、實際應用

正文

一、主要內容

1.Application Example: Photo OCR

這個例子可以表現出機器學習的三個關鍵的節點:

  1. 在複雜系統中對機器學習進行應用
  2. 認識流水線概念
  3. 知道關於機器學習中的人工數據合成

《Photo OCR》

Problem Description and Pipeline

Photo OCR:讓計算機識別圖片中信息的系統。

  1. 識別出文字在圖片中的位置
  2. 分割文本形成字母
  3. 對字母進行分類

Sliding Windows

檢測圖像中的信息,在我們現在看來是非常常見的事情,即使是自拍都可以非常準確地找到我們的臉。課程中提供的方案是用幾種不同大小的框,在整張圖片中掃描。文字識別的時候,我們首先要在整張圖片中識別出字母,之後再將識別出的字母用矩形框在一起。在分割字母的時候,我們需要用監督學習,去學習字母與字母之間的縫隙,從而去分割字母。

Getting Lots of Data and Artificial Data

在數據缺乏的時候,有一種思想叫做人工數據合成。在圖像中識別文字的時候,用不同的字體寫出文字,然後截圖,通過這種方式生成數據。也可以通過扭曲原有的文字圖像,生成更多的數據。語音識別的時候,也可以通過人工合成的思想來獲得更多的數據:比如增加背景音效。

但是這種生成方式有一個重要的前提,那就是模型應當是低偏差,高方差。有個這個前提之後,在去生成人工數據才會有效果。因此,只有模型的準確率沒有明顯提高的前提下,人工生成數據才應該是需要被考慮的做法。

Ceiling Analysis: What Part of the Pipeline to Work on Next

上限分析的思想通過分析整個工作流程來提高整體效率。以文字識別為例,識別文字塊,分割字母,識別字母每個模塊都有自己的準確率,整個流程下來也有一個準確率。比較各個部分和整體之間的準確率,當我們發現與整體準確率相差大的模塊的時候,我們就知道,這就是我們需要重點關注的部分。如果準確率之間相差不大,經驗告訴我們將工作的重點放在這個模塊上會浪費時間。

二、個人感受

吳恩達說,他多年的經驗告訴他,不要相信自己多年的經驗。在分析機器學習問題的時候,將任務分解再逐一分析,會達到更好的效果。關於經驗主義的討論我就不多贅述了,不過分解任務,並逐一分析倒是一個非常好的習慣。在平時的日常生活當中,我們在處理一項繁雜事務的時候也應該通過這樣的思維去處理。模塊化的思想在工程界非常普遍,但是在我們的日常生活當中卻很少被使用。

在日常生活當中,如果可以將自己的各個任務分成模塊,每個任務中的小的任務分成小的模塊,在以時間為管道的形式來將各個模塊進行組合,那就太棒了。

最後一課吳恩達教授說他覺得教授這門課非常有趣,我覺得我在學這門課的時候也非常有趣。內容不多,而且簡單。這門課的設計真的非常用心,因此我覺得我的這個專欄其實還有更多的提升空間,比如課程內容其實都可以用代碼來寫一遍,所有的數學推導都可以寫一遍,吳恩達在課程中說沒有必要延伸的內容也可以那來講,如此之多的內容,我也會更加努力去完善這個專欄的。

三、實際應用

圖像識別領域是在深度學習演算法再次復甦之後獲益最多的領域,我們現在能看到非常火的成果也集中在圖像識別領域。通過建立一套數據管道,也可以為整個系統的自動化起到非常明顯的作用。

具體的落地場景,我們現在看到的有文字識別、人臉識別,基本上都是吳恩達提到的這些場景。當然,通過深度學習,現在的識別技術已經更牛了,有了場景識別和視頻內容識別。到了未來,我們也會想當然地認為圖像識別會和自然語言處理結合。或者說,可以將圖像識別為某個多維度的向量,然後將這個向量就可以翻譯成自然語言。


推薦閱讀:

機器學習入門之邏輯回歸分類
非負矩陣分解(NMF)及一個小實例
機器學習實戰 之 k-近鄰演算法實戰
集智:負基礎就能學會的機器學習(二) 無需任何編程基礎
AI研發乾貨 | 2018第五彈 | 03.25-04.01 | 增強學習、TensorFlow更新、YOLO V3…

TAG:機器學習 |