<kbd id="5sdj3"></kbd>
<th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>

    【機器學習】機器學習項目流程

    共 2213字,需瀏覽 5分鐘

     ·

    2021-12-14 09:06

    本文是中國大學慕課《機器學習》的“機器學習項目流程”章節(jié)的課后代碼。

    課程地址:

    https://www.icourse163.org/course/WZU-1464096179

    課程完整代碼:

    https://github.com/fengdu78/WZU-machine-learning-course

    代碼修改并注釋:黃海廣,[email protected]

    項目來源:

    這是一個機器學習的完整流程,附代碼非常全,幾乎適合任何監(jiān)督學習的分類問題,本文提供代碼和數(shù)據(jù)下載。

    作者:WillKoehrsen

    翻譯:DeqianBai(https://github.com/DeqianBai)

    這是2018年夏天,一位美國數(shù)據(jù)科學家在申請工作時的“作業(yè)”,完整的英文版作業(yè)在:

    https://github.com/WillKoehrsen/machine-learning-project-walkthrough/blob/master/hw_assignment.pdf

    項目目標:

    • 使用提供的建筑能源數(shù)據(jù)開發(fā)一個模型,該模型可以預測建筑物的能源之星得分
    • 然后解釋結果以找到最能預測得分的變量。

    項目介紹:

    這是一個受監(jiān)督的回歸機器學習任務:給定一組包含目標(在本例中為分數(shù))的數(shù)據(jù),我們希望訓練一個可以學習將特征(也稱為解釋變量)映射到目標的模型。

    • 受監(jiān)督問題:我們可以知道數(shù)據(jù)的特征和目標,我們的目標是訓練可以學習兩者之間映射關系的模型。
    • 回歸問題:Energy Star Score是一個連續(xù)變量。

    在訓練中,我們希望模型能夠學習特征和分數(shù)之間的關系,因此我們給出了特征和答案。然后,為了測試模型的學習效果,我們在一個從未見過答案的測試集上進行評估

    我們在拿到一個機器學習問題之后,要做的第一件事就是制作出我們的機器學習項目清單。下面給出了一個可供參考的機器學習項目清單,它應該適用于大多數(shù)機器學習項目,雖然確切的實現(xiàn)細節(jié)可能有所不同,但機器學習項目的一般結構保持相對穩(wěn)定:

    1. 數(shù)據(jù)清理和格式化

    2. 探索性數(shù)據(jù)分析

    3. 特征工程和特征選擇

    4. 基于性能指標比較幾種機器學習模型

    5. 對最佳模型執(zhí)行超參數(shù)調(diào)整

    6. 在測試集上評估最佳模型

    7. 解釋模型結果

    8. 得出結論

    提前設置機器學習管道結構讓我們看到每一步是如何流入另一步的。但是,機器學習管道是一個迭代過程,因此我們并不總是以線性方式遵循這些步驟。我們可能會根據(jù)管道下游的結果重新審視上一步。例如,

    • 雖然我們可以在構建任何模型之前執(zhí)行特征選擇,但我們可以使用建模結果返回并選擇一組不同的特征。
    • 或者,建模可能會出現(xiàn)意想不到的結果,這意味著我們希望從另一個角度探索我們的數(shù)據(jù)。
    • 一般來說,你必須完成一步才能繼續(xù)下一步,但不要覺得一旦你第一次完成一步,你就不能回頭做出改進!你可以在任何時候返回前面的步驟并作出相應的修改。

    代碼部分

    代碼部分較長,僅貼代碼的目錄,完整代碼在文末提供下載。

    1. 數(shù)據(jù)清理和格式化

    • 1.1 加載并檢查數(shù)據(jù)
    • 1.2 ?數(shù)據(jù)類型和缺失值
      • 1.2.1 將數(shù)據(jù)轉換為正確的類型
    • 1.3 處理缺失值

    2. 探索性數(shù)據(jù)分析

    • 2.1 單變量圖
    • 2.2 去除異常值
    • 2.3 尋找關系
    • 2.4 特征與目標之間的相關性
    • 2.5 雙變量圖(Two-Variable Plots)
      • 2.5.1 Pairs Plot

    3. 特征工程和特征選擇

    • 3.1 特征工程
    • 3.2 特征選擇(去除共線特征)
    • 3.3 劃分訓練集和測試集
    • 3.4 建立Baseline
    • 小結

    4. 基于性能指標比較幾種機器學習模型

    • 4.1 輸入缺失值
    • 4.2 特征縮放
    • 4.3 需要評估的模型

    5. 對最佳模型執(zhí)行超參數(shù)調(diào)整

    • 5.1 超參數(shù)
    • 5.2 使用隨機搜索和交叉驗證進行超參數(shù)調(diào)整

    6. 在測試集上評估最佳模型

    7. 解釋模型結果

    • 7.1 特征重要性
    • 7.2 使用特征重要性進行特征選擇
    • 7.3 本地可解釋的與模型無關的解釋
    • 7.4 檢查單個決策樹

    8. 得出結論

    • 8.1 得出結論
    • 記錄發(fā)現(xiàn)

    代碼截圖


    參考

    [1] https://github.com/WillKoehrsen/machine-learning-project-walkthrough

    [2]?https://github.com/DeqianBai/Your-first-machine-learning-Project---End-to-End-in-Python

    [3]??DeqianBai(https://github.com/DeqianBai)

    總結

    本文是一個完整的監(jiān)督學習的機器學習流程,包含:

    • 數(shù)據(jù)清理,探索性數(shù)據(jù)分析,特征工程和選擇等常見問題的解決辦法
    • 隨機搜索,網(wǎng)格搜索,交叉驗證等方法尋找最優(yōu)超參數(shù)
    • 可視化決策樹
    • 對完整的機器學習項目流程建立一個宏觀的了解

    代碼非常完整,可以在平時的機器學習項目中拿來用,只需要改少量代碼即可。

    往期精彩回顧




    站qq群955171419,加入微信群請掃碼:

    瀏覽 64
    點贊
    評論
    收藏
    分享

    手機掃一掃分享

    分享
    舉報
    評論
    圖片
    表情
    推薦
    點贊
    評論
    收藏
    分享

    手機掃一掃分享

    分享
    舉報

    <kbd id="5sdj3"></kbd>
    <th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>
    麻豆蜜桃av | 中国学生妹黄色一级片免费看 | 五月丁香六月婷婷久久 | 国产地址 | 亚洲日韩精品视频在线 |