- MATLAB機器學習
- (意)朱塞佩·恰布羅
- 1012字
- 2020-05-21 10:46:53
1.4 構建機器學習模型的流程
我們已經了解了挑選算法的標準和步驟,現在應該學習如何構建機器學習模型了。構建一個機器學習模型的流程可以分為以下幾步,讀者應該重視這一流程。
(1)收集數據。毫無疑問,一切都源自數據,問題在于如何獲取如此多的數據。實踐中,獲取這些數據可能需要經過冗長的步驟,例如有的數據是通過一系列實地測量得到的,有的是通過一對一的面談得到的。無論如何,在收集數據的過程中,一定要注意選取合適的形式保存記錄(如數據庫),以利于接下來的分析。

如果沒有特別需求,互聯網上現存的大量公開數據就夠用了,如加州大學爾灣分校機器學習數據集(UCI Machine Learning Repository)這一非常大的機器學習數據集,這使我們可以節省收集數據的精力和時間。
圖1.10展示了構建機器學習模型的步驟。

圖1.10 構建機器學習模型的流程
(2)準備數據。在收集數據后,我們需要對原始數據進行一些處理。例如,很可能為了使數據集對于模型可用,調整數據集的數據格式。模型可能要求數據格式為整型、字符型或其他特殊格式。接下來我們會專門介紹這些技巧,其中預處理數據一般要比收集數據簡單。
(3)觀察數據。至此,我們需要對數據集進行觀察,例如確保數據可用(大致準確、沒有大量的缺失值)。各種類型的圖表可以輔助觀察。我們能夠辨別樣本間所包含的模式、聯系以及是否存在一些奇異值。繪制出不同維度的圖表同樣有助于觀察數據。
(4)訓練(train)算法。現在,我們真正開始介紹如何構建機器學習模型。在這一步中,我們需要對模型進行定義和訓練
,以使模型能夠逐漸從訓練數據集中抽取信息。我們將在后面的章節具體闡述這些概念。需要指出的是,訓練階段僅存在于監督學習中,對于非監督學習而言,是不存在訓練階段的。因為在非監督學習的輸入數據中沒有標簽,所以無從訓練。
(5)驗證(validate)算法。在這一步驟中,我們使用上一步訓練得到的模型進行驗證,看模型是否真正有效。驗證目標是評估訓練得到的模型在多大程度上逼近了真實系統
。對于監督學習,有樣本標簽來幫助我們衡量結果。對于非監督學習,可能需要借助其他指標來衡量。無論屬于哪種情況,如果模型沒有達到預期效果,那么將返回步驟4,更改、重新訓練新模型,并執行步驟5。
(6)測試(test)算法。在這一步驟中,我們將模型應用到真實數據集上,以此評估整個算法流程的逼近效果。
(7)評估和改進模型:至此,我們驗證了模型確實有效,同時了解了模型的表現。現在需要更新我們對模型、問題的理解,并嘗試基于已有信息作進一步改進。