<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 附錄 B、機器學習項目清單 > 譯者:[@qiwihui](https://github.com/qiwihui) 此清單可以指導你完成機器學習項目。主要有八個步驟: 1. 將問題框架化并且關注重點。 2. 獲取數據。 3. 探索數據以洞悉數據。 4. 準備數據以更好地將基礎數據模式暴露給機器學習算法。 5. 探索多種不同的模型并列出最好的那些。 6. 微調模型并將它們組合成一個很好的解決方案。 7. 展示你的解決方案。 8. 啟動,監督并維護你的系統。 顯然,你應該根據你的需求調整此清單。 ## 將問題框架化并且關注重點 1. 用業務術語定義目標。 2. 你的解決方案將如何使用? 3. 目前的解決方案/解決方法(如果有的話)是什么? 4. 你應該如何解決這個問題(監督/非監督,在線/離線等)? 5. 如何度量模型的表現? 6. 模型的表現是否和業務目標一致? 7. 達到業務目標所需的最低性能是多少? 8. 類似的問題如何解決?是否可以復用經驗或工具? 9. 人員是否專業? 10. 你如何動手解決問題? 11. 列出目前你(或者其他人)所做的假設。 12. 如果可能,驗證假設。 ## 獲取數據 注意:盡可能自動化,以便你輕松獲取新數據。 1. 列出你需要的數據和數據量。 2. 查找并記錄你可以獲取該數據的位置。 3. 檢查它將占用多少存儲空間。 4. 檢查法律義務并在必要時獲取授權。 5. 獲取訪問權限。 6. 創建工作目錄(擁有足夠的存儲空間)。 7. 獲取數據。 8. 將數據轉換為你可以輕松操作的格式(不更改數據本身)。 9. 確保刪除或保護敏感信息(比如,匿名)。 10. 檢查數據的大小和類型(時間序列,樣本,地理信息等)。 11. 抽樣出測試集,將它放在一邊,以后不需要關注它(沒有數據窺探!)。 ## 探索數據 注意:嘗試從領域專家那獲取有關這些步驟的見解。 1. 創建用于探索的數據副本(如有必要,將其取樣為可管理的大小)。 2. 創建一個 Jupyter 筆記本來記錄你的數據探索。 3. 研究每個屬性及其特征: - 名稱; - 類型(分類,整數/浮點數,有界/無界,文本,結構化數據等); - 缺失數據的百分比; - 噪聲點和它的類型(隨機點,異常點,舍入誤差等); - 對任務可能有用嗎? - 分布類型(高斯分布,均勻分布,對數分布等)。 4. 對于監督學習任務,確定目標屬性。 5. 可視化數據。 6. 研究屬性間的相關性。 7. 研究怎如何手動解決問題。 8. 確定你想要應用的有效的轉換。 9. 確定有用的額外數據。 10. 記錄你所學到的知識。 ## 準備數據 注意: - 處理數據副本(保持原始數據集完整)。 - 為你應用的所有數據轉換編寫函數,原因有五: - 你可以在下次獲得新數據集時輕松準備數據 - 你可以在未來的項目中應用這些轉換 - 用來清洗和準備測試數據集 - 一旦項目上線你可以用來清洗和準備新的數據集 - 為了便于將你的準備選擇視為超參數 1. 數據清洗: - 修正或移除異常值(可選)。 - 填補缺失值(比如用零,平均值,中位數等)或者刪除所在行(或者列)。 2. 特征提取(可選): - 丟棄不提供有用信息的屬性; 3. 適當的特征工程: - 連續特征離散化。 - 分解特征(比如分類,日期/時間等)。 - 對特征添加有益的轉換(比如 log(x),sqrt(x),x^2 等) - Aggregate features into promising new features. 將一些特征融合為有益的新特征 4. 特征縮放:標準化或者正規化特征。 ## 列出有用模型 注意: - 如果數據量巨大,你可能需要采樣出較小的訓練集,以便在合理的時間內訓練許多不同的模型(請注意,這會對諸如大型神經網絡或隨機森林等復雜模型進行處罰)。 - 再次嘗試盡可能自動化這些步驟。 1. 使用標準參數訓練許多快速、粗糙的模型(比如線性模型,樸素貝葉斯模型,支持向量機模型,隨機森林模型,神經網絡等)。 2. 衡量并比較他們的表現。 - 對于每個模型,使用 N 折交叉驗證法,并且計算基于 N 折交叉驗證的均值與方差。 3. 分析每種算法的最重要變量。 4. 分析模型產生的錯誤類型。 - 人們用什么數據來避免這些錯誤? 5. 進行一輪快速的特征提取和特征工程。 6. 對之前的五個步驟進行一兩次的快速迭代。 7. 列出前三到五名最有用的模型,由其是產生不同類型錯誤的模型。 ## 微調系統 注意: - 這一步你將會使用盡可能多的數據,特別是當你微調結束時。 - 像之前一樣盡可能自動化。 1. 使用交叉驗證方法調節超參數 - 要像調節超參數那樣對待數據轉換的過程,特別是當你不知如何下手的時候(比如,我應該是用零或中值替換缺失值嗎?或者直接丟棄它們?) - 除非要探索的超參數值非常少,否則最好使用隨機搜索而非網格搜索。如果訓練的時間很長,你應該使用貝葉斯優化方法(比如,使用在 [Jasper Snoek,Hugo Larochelle 和 Ryan Adams 的論文](https://arxiv.org/pdf/1206.2944.pdf)中描述的,用高斯處理先驗) 2. 嘗試集成方法,結合最佳模型通常比單獨運行它們更好。 3. 一旦你對最終的模型有自信,請在測試集上測量其性能以估計泛化誤差。 > 在測量泛化誤差后不要調整模型:你會開始過度擬合測試集的。 ## 展示你的解決方案 1. 將你做的工作整理成文檔。 2. 制作精美的演示。 - 確保你首先突出重點。 3. 解釋你的解決方案實現業務目標的原因。 4. 不要忘記展示在這過程中你注意到的有趣的點。 - 描述哪些有效,哪些無效。 -列出你的假設和系統的限制。 5. 確保通過精美的可視化或易于記憶的陳述來傳達你的主要發現(例如,“收入中位數是房價的第一預測因子”)。 ## 啟動 1. 準備好生產解決方案(插入生產數據輸入,編寫單元測試等)。 2. 編寫監控代碼以定期檢查系統的實時性能,并在信號丟失時觸發警報。 - 謹防模型退化:隨著數據的進入,模型往往會“腐爛”。 - 評估模型可能需要大量的人力(比如,通過眾包服務可以解決這個問題) - 同時監控輸入數據的質量(例如,一個有故障的傳感器發送隨機數據,或者另外一個團隊的輸出變得陳舊),這對于在線學習系統尤其重要。 3. 定期在新數據上重新訓練模型(盡可能自動化)。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看