<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          機器學習Tips:關(guān)于Scikit-Learn的 10 個小秘密

          共 2233字,需瀏覽 5分鐘

           ·

          2020-08-05 23:19

          ↑↑點擊上方藍字,回復資料,10個G的驚喜

          作者?|?Rebecca?Vickery
          原文?| 見『閱讀原文』
          編譯?|?NewBeeNLP

          寫在前面

          Scikit-learn是使用最廣泛的Python機器學習庫之一。它有標準化和簡單的接口,用于數(shù)據(jù)預處理和模型訓練、優(yōu)化以及評估。

          這個項目最初是由David Cournapeau 開發(fā)的Google Summer of Code 項目,并于2010年首次公開發(fā)布。自創(chuàng)建以來,該庫已經(jīng)發(fā)展成為一個豐富的生態(tài)系統(tǒng),用于開發(fā)機器學習模型。隨著時間的推移,該項目開發(fā)了許多方便的功能,以增強其易用性。在本文中,我將介紹你可能不知道的10個關(guān)于Scikit-learn最有用的特性。

          1. 內(nèi)置數(shù)據(jù)集

          Scikit-learn API內(nèi)置了各種toy和real-world數(shù)據(jù)集[1]。這些可以便捷地通過一行代碼訪問,如果你正在學習或只是想快速嘗試新功能,這會非常有用。

          你還可以使用make_regression()、make_blobs()make_classification()生成合成數(shù)據(jù)集。所有加載實用程序都提供了返回已拆分為X(特征)和y(目標)的數(shù)據(jù)選項,以便它們可以直接用于訓練模型。

          2. 獲取公開數(shù)據(jù)集

          如果你想直接通過Scikit-learn訪問更多的公共可用數(shù)據(jù)集,請了解,有一個方便的函數(shù)datasets.fetch_openml,可以讓您直接從openml.org網(wǎng)站[2]獲取數(shù)據(jù)。這個網(wǎng)站包含超過21000個不同的數(shù)據(jù)集,可以用于機器學習項目。

          3. 內(nèi)置分類器來訓練baseline

          在為項目開發(fā)機器學習模型時,首先創(chuàng)建一個baseline模型是非常有必要的。這個模型在本質(zhì)上應該是一個“dummy”模型,比如一個總是預測最頻繁出現(xiàn)的類的模型。這就提供了一個基準,用來對你的“智能”模型進行基準測試,這樣你就可以確保它的性能比隨機結(jié)果更好。

          Scikit learn包括用于分類任務的DummyClassifier() 和用于基于回歸問題的 DummyRegressor()

          4. 內(nèi)置繪圖api

          Scikit learn有一個內(nèi)置的繪圖API,允許你在不導入任何其他庫的情況下可視化模型性能。包括以下繪圖:部分相關(guān)圖、混淆矩陣、精確召回曲線和ROC曲線。

          5. 內(nèi)置特征選擇方法

          提高模型性能的一種技術(shù)是只使用最好的特征集或通過刪除冗余特征來訓練模型。這個過程稱為特征選擇。

          Scikit learn有許多函數(shù)來執(zhí)行特征選擇。一個示例為 SelectPercentile(),該方法根據(jù)所選的統(tǒng)計方法選擇性能最好的X百分位特征進行評分。

          6. 機器學習pipeline

          除了為機器學習提供廣泛的算法外,Scikit learn還具有一系列用于「預處理」「轉(zhuǎn)換數(shù)據(jù)」的功能。為了促進機器學習工作流程的再現(xiàn)性和簡單性,Scikit learn創(chuàng)建了管道(pipeline),允許將大量預處理步驟與模型訓練階段鏈接在一起。

          管道將工作流中的所有步驟存儲為單個實體,可以通過「fit」「predict」方法調(diào)用該實體。在管道對象上調(diào)用fit方法時,預處理步驟和模型訓練將自動執(zhí)行。

          7. ColumnTransformer

          在許多數(shù)據(jù)集中,你將擁有不同類型的特征,需要應用不同的預處理步驟。例如,可能有分類數(shù)據(jù)和連續(xù)數(shù)據(jù)的混合,你可能希望通過one-hot編碼將分類數(shù)據(jù)轉(zhuǎn)換為數(shù)字,并縮放數(shù)字變量。

          Scikit-learn管道有一個名為ColumnTransformer的函數(shù),它允許你通過索引或指定列名來輕松指定要對哪些列應用最適當?shù)念A處理。

          8. 管道的HTML形式

          管道通常會變得非常復雜,尤其是在處理真實世界的數(shù)據(jù)時。因此,scikit-learn提供了一種方法來輸出管道中步驟的HTML圖表[3],非常方便。

          9. 可視化 樹模型

          plot_tree() 函數(shù)允許你創(chuàng)建決策樹模型中的步驟圖。

          10. 豐富的第三方擴展

          許多第三方庫可以更好地擴展scikit-learn的特性。舉個栗子,category-encoders庫,它為分類特性提供了更大范圍的預處理方法,以及ELI5包以實現(xiàn)更大的模型可解釋性。這兩個包也可以直接在Scikit-learn管道中使用。

          本文參考資料

          [1]

          toy和real-world數(shù)據(jù)集: https://scikit-learn.org/stable/datasets/index.html

          [2]

          openml.org網(wǎng)站: https://www.openml.org/home

          [3]

          HTML圖表: https://scikit-learn.org/stable/modules/compose.html#visualizing-composite-estimators

          -?END?-

          加入機器學習、Python微信群

          請后臺回復【入群】

          推薦閱讀

          (點擊標題可跳轉(zhuǎn)閱讀)

          集成學習:一種先進的機器學習方法

          北大讀博手記:怎樣完成自己的博士生涯?

          周志華新作《機器學習理論導引》閱讀攻略

          2020年度最佳的23個的機器學習項目(附代碼)


          老鐵,三連支持一下,好嗎?↓↓↓

          瀏覽 57
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

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

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  黄 片 成 人 片 免费 | 黄片豆花视频 | 蜜臀久久精品久久久久消防站 | 91看片鸡巴大 | 撸色射撸色 |