1. 程式人生 > >《機器學習實戰》 第一章 機器學習基礎

《機器學習實戰》 第一章 機器學習基礎

訓練集:用於訓練機器學習演算法的資料樣本集合 目標變數:機器學習的預測結果(在分類演算法中通常為標稱型,在迴歸演算法中通常是連續型) 為了測試機器學習演算法的效果,通常使用兩套獨立的樣本集:訓練資料和測試資料。使用訓練資料作為演算法的輸入,訓練完成後輸入測試樣本,比較測試樣本的預測的目標變數值和實際樣本類別的差別來得到演算法的實際精確度。 主要任務 分類問題:將例項資料劃分到合適的分類中 迴歸:用於測試數值型資料(資料擬合曲線) 聚類:將資料集合分成由類似的物件組成的多個類的過程 密度估計:尋找描述資料統計指的過程 監督學習(分類、迴歸)/無監督學習(聚類、密度估計) 是否知道預測什麼,即目標值的分類資訊 如何選擇合適的演算法 需要考慮兩個問題:使用機器學習的目的,想要演算法完成那種任務;需要分析或收集的資料是什麼 目的:如果想要預測目標變數的值→監督學習演算法;不想預測目標變數的值→無監督學習演算法 目標變數型別:離散型→分類演算法,連續型→迴歸演算法;沒有其他要求→聚類演算法,還需要估計資料與每個分組的相似程度→密度估計演算法 開發機器學習應用程式的步驟
  • 收集資料:製作網路爬蟲從網站上抽取資料、從RSS反饋或者API中得到資訊,裝置傳送過來的實測資料。
  • 準備輸入資料:必須確保資料格式符合要求
  • 分析輸入資料:資料是否存在明顯的差異值、是否為空值。提煉資料、降維
  • 訓練演算法:將格式化資料輸入到演算法
  • 測試演算法:為了評估演算法,必須測試演算法的工作效果。對於監督學習,必須已知用於評估演算法的目標變數值;對於無監督學習,必須用其他的評測手段來檢驗演算法的成功率。如果不滿意演算法的輸出結果,回到第四步改正並加以檢測。
  • 使用演算法:將機器學習轉換為應用程式,執行實際任務,檢驗是否可以在實際環境中正常工作
Python語言的優勢 (1)Python的語法清晰:可執行虛擬碼,附帶了很多高階資料型別,如列表、元組、字典、集合、佇列等 (2)易於操作純文字檔案:非常易於處理非數值型資料。使得從HTML中提取的資料非常簡單直觀 (3)使用廣泛,存在大量的開發文件