1. 程式人生 > >機器學習實戰——筆記(第一章)

機器學習實戰——筆記(第一章)

機器學習基礎

目錄
  • 機器學習的簡單概述
  • 機器學習的主要任務
  • 演算法選擇與開發步驟
  • Python語言的優勢
一、機器學習的簡單概述

機器學習應用領域十分廣泛,如人臉識別、推薦系統、手寫數字辨識及垃圾郵件過濾等。那何謂“機器學習”?

簡單的說“機器學習”就是將無序的資料轉換成有用的資訊。
如:垃圾郵件過濾,一篇郵件中的某個單詞不能代表該郵件的性質,但當某幾個特定單詞出現,再綜合其他因素即可判斷是否為垃圾郵件。(機器學習實戰P3)

其實更官方的定義:計算機程式從經驗E中學習解決某一任務T,進行某一效能度量P,通過P測定在T上的表現因經驗E而提高。

機器學習的迅速發展得益於海量資料,下面舉個書上的例子來說明機器學習過程:
場景描述:構建鳥類分類系統
任務:分類
特徵:體重、翼展、腳蹼及後背顏色。(假設這四個特徵就可識別一隻鳥)
訓練集:已收集的樣本,每個樣本都應包含以上四個特徵,並標明是何種鳥類。
測試集:同樣具備四個特徵,但未標明是何種鳥類。

二、機器學習的主要任務

機器學習包括兩大任務:分類和迴歸
分類:即找一個函式判斷輸入資料所屬的類別,可以是二類別問題(是/不是),也可以是多類別問題(在多個類別中判斷輸入資料具體屬於哪一個類別)。與迴歸問題(regression)相比,分類問題的輸出不再是連續值,而是離散值,用來指定其屬於哪個類別。分類問題在現實中應用非常廣泛,比如垃圾郵件識別,手寫數字識別,人臉識別,語音識別等。

迴歸:機器學習中的迴歸問題屬於有監督學習的範疇。迴歸問題的目標是給定D維輸入變數x,並且每一個輸入向量x都有對應的值y,要求對於新來的資料預測它對應的連續的目標值t

三、演算法選擇及開發步驟

如何選擇合適的演算法?
1.使用機器學習演算法的目的,想要完成何種任務
2.需要分析或收集的資料是什麼

開發步驟

  • 收集資料(爬蟲、裝置實測資料、公開資料等等)
  • 準備輸入資料(主要是整理資料格式問題)
  • 分析輸入資料(主要確保資料集 沒有垃圾資料)
  • 訓練演算法
  • 測試演算法
  • 使用演算法
四、Python語言的優勢

嗯、Python用起來確實蠻爽的…
推薦用Jupyter notebook、PyCharm也行啦,前者你可以像寫部落格那樣來擼程式碼。