close

image

Coursera 上的Machine Learning 專項課程是史丹佛大學的吳恩達教授最近最新開設,

是由他原本的Machine Learning 單項課程再擴充而成,

從課程內容來看,相較於原本的課程算是對機器學習所有領域的概論,新的課程將會更加偏重於深度學習相關的領域,

而且也把原本使用 MATLAB 或 Octave  且要自己電腦上完成的作業轉變成目前主流的 Python 和 Jupyer Notebook 線上完成。

 

第一堂課的主題是 Supervised Machine Learning: Regression and Classification,本文是關於第一週,

一開始吳恩達教授先針對機器學習做一個總體性的入門介紹,

機器學習如今已經深入我們生活的各個層面,

最典型的就是如今各種人臉辨識軟體,像是臉書能夠自動標記照片上的每張人臉,iphone也會自動幫每張照片辨識裡面的人物等,

image

還有串流媒體會根據你的觀看記錄、喜好名單等去推薦片單給你,

image

其它例子還包括語音辨識軟體、翻譯軟體和搜尋引擎等在近年來功能都大幅進步,這也跟機器學習有密切關聯,

至於在醫學和科技方面,機器學習也已經被用來幫助醫生辨識X光片、腫瘤等,工業界也用來輔助品管以提升良率,

image

總而言之,機器學習正在快速地進入生活中的每一個層面,這也是為何我們必需要學習這門知識,才不會落後於人類發展的腳步。

 

接下來進入正題,

所謂「機器學習」Machine Learning,指的是讓電腦擁有學習的能力,因此在我們把電腦給訓練好之後,

我們就不需要透過程式碼給予電腦明確的指示,電腦自己會透過模型來做決策,

image

機器學習基本上可以分成兩大類: 監督式學習 (supervised learning) 和非監督式學習 (unsupervised learning)​​​​​,

監督式學習基本上是最常見的情境,意思是輸入 (input, X)和輸出 (output, Y) 都會被非常明確地定義出來,

這種把每一個資料去做定義的動作,叫做標記 (labeling),

比方說,要訓練出一個能辨識垃圾信件的模型,就要把拿去訓練的信件都以1或0的方式來表示成是/否為垃圾信件,

其它種需要這類標記方式的情境還包括網上廣告是否被用戶點擊、生產出來的產品是否有缺陷等等,

其它 supervised learning 的情境還包括語言翻譯、語言辨識、自動駕駛等等,都是需要很明確的標記以訓練模型, 

模型自己會在訓練過程中,學習X與Y之間的關聯,

image

最典型的例子,就是「房價預測問題」,

image

要預測房價,會運用到「迴歸」 (Regression)的技巧,其實就是如上圖所示,找到一條線是最符合資料的趨勢,

這條線 (方程式) 有可能只是一條簡單的斜直線,也有可能是一條曲線,只要能找到一條最佳的方程式,就能用它來預測房價,

而剛剛講到的用1/0來表示是/否的二元情境,則叫做「分類」 (classification),

例如要判斷腫瘤是良性還是惡性,醫師要用0/1去標記出許多張照片中的腫瘤,再讓演算法自己去推論哪些因素會決定腫瘤的性質,

這個因素有可能是一元的 (如第一個例子是尺寸),但真實世界的例子通常是二元以上 (例如,尺寸和年紀),

未來只要把照片丟給模型,模型就會按照自己學到的準則去判斷。

image

image

結論來說,Regression 和 Classification 最大的差異就是前者會預測各種數值,但後者只能預測特定幾個情境。

image

 

講完了監督式學習,接下來就討論非監督式學習。

兩者最大的差異,顧名思義,就是訓練過程中監督式學習會被給予很明確的標記,讓演算法根據我們的標記去建立關係,

但是監督式學習則是讓演算法自己去挖掘資料之中的特性,最常用的情境就是把資料根據相似度去分成不同的群落,也就是clustering (群聚),

比方說,Google 的搜尋引擎會自己根據關鍵字,把有一樣內容的網頁推薦給使用者,

或是基因檢測時,根據類似的基因圖譜去做分群,我們可以發現具有某基因的人所擁有的共同特性,比方說…不愛吃香菜。

另外,非監督式學習也能夠幫忙我們找出不正常的資料,或是降維等。

image

image

 

以上是 Supervised Machine Learning 課程第一週的第一部分,

接下來吳恩達教授會開始介紹迴歸模型的細節,尤其是到底機器學習是用什麼手法來優化迴歸模型的。

 

 

 

 

arrow
arrow

    William.Echoes 發表在 痞客邦 留言(0) 人氣()