吳恩達老師機器學習筆記(八:大規模機器學習 和 OCR介紹)

在這裏插入圖片描述
在線學習的例子:
1
2
在線學習機制: 大公司會獲取連續 的大量數據,沒有必要來保存一個固定的數據集,可以使用一個在線學習算法來連續的學習,從這些用戶不斷產生的數據中來學習,

在線學習算法不需使用固定的數據集,而是獲取一個用戶樣本,從那個樣本中學習,然後丟棄那個樣本,繼續處理下一個,如果你的應用有一個連續的數據流,

在線學習的優點:如果有一個變化的用戶羣,又或者嘗試預測的事情在緩慢變化,例如用戶的品味在緩慢變化,在線學習可以慢慢調試所學習到的參數
在這裏插入圖片描述
因爲網絡傳輸‘網絡延遲等原因,使用Map-reduce 會有 低於 4倍的計算效率
在這裏插入圖片描述
在同一臺計算機或者服務器上,使用Map-reduce ,無需考慮網絡傳輸問題,會有 4倍的計算效率
在這裏插入圖片描述

OCR介紹

OCR流水線
步驟如下:

  1. 文本檢測
  2. 字符分割
  3. 字符分類(識別)

文本檢測:滑動窗口

例如建立一個行人檢測系統,比如我們把比例的標準的定義爲 82 * 36

2

滑動窗口,步長設置爲 4 或 8 像素。每個滑動窗口取到的圖片都使用 分類器 對 圖塊進行分類。

然後使用更大尺寸的滑動窗口來遍歷圖片,同時使用 分類器 對 圖塊進行分類。

同理:文本檢測,首先訓練一個文本檢測,使用包含正樣本(包含文字)和負樣本的訓練集,完成訓練之後,用於圖片中的滑動窗口的文本檢測。
在這裏插入圖片描述
亮白色表示分類器認爲該處有較大概率是有文字的,灰色意味着分類器認爲它可能找到了文本,但是概率不高,我們想做的是在白色區域繪製矩形,然後擴充白色區域到右邊圖狀態,

構造右側圖像的方法:
對於左圖的每個像素,判斷其一定範圍內是否存在白色的像素,如果某個像素周圍5到10個像素的範圍內存在其他的白色像素,那麼就在右圖中把整個範圍內的像素都變成白色,這樣的效果是把左側每個白色區塊都擴大和增長一些,效果如下。通過觀察,我們丟棄那些太高太窄的矩形,我們在那些長寬比例正常的文字區域周圍畫上矩形,然後我們把這些矩形區域剪切出來,進行文本識別。
這就是使用了滑動窗口的文本檢測系統。
4
文本分割,使用監督學習的方法來進行訓練,滑動塊不斷向右移動,每移動一次,就進行一次分割檢測,

** 字符識別** 就是 圖片的 字符識別了。

人工數據的方法:

字符 圖片:旋轉,扭曲

語音:加不同程度的背景噪音,人工添加失真

在花功夫 擴充數據集之前, 最好 確保 你的 分類器 偏差 較低,這樣的話 更多的訓練數據 纔會有較好的改進效果,標準的做法是 繪製一個學習曲線來確保,你有一個 低偏差,高方差的分類器,

如果 你的分類器 偏差 太高 ,可以嘗試 持續增加分類器的 特徵數量,或者增加 網絡 隱藏單元的數量,直到 偏差 降低, 然後 再 來 通過 擴充 數據集 來進行 提升。

兩個 問題 : 遇到一個機器學習問題, 一個是 用學習曲線 做一個合理檢驗,看更多的數據是否真的有用。 另一個 是 靜下心來問自己, 需要多少 資源 才能夠 獲取 到 10 倍 當前的數據量,那樣 也許 可以有效 提高 機器學習算法。

系統性能上限分析:
6

如圖所示: 通過改進 文本檢測 ,系統性能提升了 17%, 通過改進 字符分割,系統性能提升了 1%,通過提升字符識別,系統性能提升10% , 因此 花費更大精力 來 改進 文本檢測 和 字符識別,顯然對 系統性能的提升 更有 意 義和 效果。
7

在這裏插入圖片描述
人臉識別的一個簡單案例,如圖,通過提升不同的檢測部分,人臉識別系統的性能提升程度是不同的,因此,一個多個環節的系統開發,在做系統性能提升時,通過上限分析的方法,來判斷對系統性能有明顯提升的地方,來花費更多精力來做出改進,往往是更有意義的。

整個機器學習課程的知識點概括:

在這裏插入圖片描述

心得總結:

首先非常感謝吳老師的認真授課,精緻的PPT材料以及柔和的語調,都能夠帶給我身心的舒適。

對於我個人而言,通過這門課程,瞭解到更多機器學習中的一些技巧和不同領域的知識,雖然很多公式相關的部門,不是自己也能夠做到手寫公式哈,但是這門課程顯然是一門非常精緻和簡潔的課程,加油!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章