<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 使用隨機森林:在121個數據集上測試179個分類器 > 原文: [https://machinelearningmastery.com/use-random-forest-testing-179-classifiers-121-datasets/](https://machinelearningmastery.com/use-random-forest-testing-179-classifiers-121-datasets/) 如果您不知道在問題上使用什么算法,請嘗試一些。 或者,您可以嘗試**隨機森林**和可能**高斯SVM** 。 在最近的一項研究中,這兩種算法在與超過100種數據集平均的近200種其他算法競爭時被證明是最有效的。 在這篇文章中,我們將回顧這項研究,并考慮在我們自己應用的機器學習問題上測試算法的一些含義。 [![Do We Need Hundreds of Classifiers](img/9d8c9a4e94f79734e175a188b54806c9.jpg)](https://3qeqpr26caki16dnhd19sv6by6v-wpengine.netdna-ssl.com/wp-content/uploads/2014/12/Do-We-Need-Hundreds-of-Classifiers.jpg) 我們需要數百個分類器 照片來自 [Thomas Leth-Olsen](http://www.flickr.com/photos/thomasletholsen/8064127235) ,保留一些權利 ## 我們需要數百種分類器嗎? 這篇論文的標題是“[我們需要數百個分類器來解決現實世界的分類問題嗎?](http://jmlr.csail.mit.edu/papers/v15/delgado14a.html) “并于2014年10月發表于[機器學習研究期刊](http://www.jmlr.org/)。 * [在此下載PDF](http://jmlr.csail.mit.edu/papers/volume15/delgado14a/delgado14a.pdf) 。 在本文中,作者評估了來自 [UCI機器學習庫](http://archive.ics.uci.edu/ml/)的121個標準數據集中17個家族的179個分類器。 作為一種品味,這里列出了所研究的算法系列和每個系列中的算法數量。 * 判別分析(DA):20個分類器 * 貝葉斯(BY)方法:6個分類器 * 神經網絡(NNET):21個分類器 * 支持向量機(SVM):10個分類器 * 決策樹(DT):14個分類器。 * 基于規則的方法(RL):12個分類器。 * 提升(BST):20個分類器 * 套袋(BAG):24種分類器 * 堆疊(STC):2個分類器。 * 隨機森林(RF):8個分類器。 * 其他合奏(OEN):11個分類。 * 廣義線性模型(GLM):5個分類器。 * 最近鄰方法(NN):5個分類器。 * 偏最小二乘和主成分回歸(PLSR):6 * Logistic和多項式回歸(LMR):3個分類器。 * 多元自適應回歸樣條(MARS):2個分類器 * 其他方法(OM):10個分類器。 這是一項龐大的研究。 在貢獻最終得分之前調整了一些算法,并且使用4倍交叉驗證來評估算法。 切入追逐他們發現隨機森林(特別是R中的平行隨機森林)和高斯支持向量機(特別是來自 [libSVM](http://www.csie.ntu.edu.tw/~cjlin/libsvm/) )的整體表現最佳。 從論文摘要: > 最有可能成為最佳分類器的是隨機森林(RF)版本,其中最好的(在R中實現并通過插入符訪問)在84.3%的數據集中達到最大準確度的94.1%,超過90%。 在[討論HackerNews關于論文](https://news.ycombinator.com/item?id=8719723)的討論中,來自Kaggle的 [Ben Hamner](https://www.linkedin.com/pub/ben-hamner/12/597/987) 對袋裝決策樹的深刻表現作出了一個確鑿的評論: > 這與我們運行數百個Kaggle比賽的經驗一致:對于大多數分類問題,合奏決策樹(隨機森林,梯度提升機器等)的一些變化表現最佳。 ## 獲取免費算法思維導圖 ![Machine Learning Algorithms Mind Map](img/2ce1275c2a1cac30a9f4eea6edd42d61.jpg) 方便的機器學習算法思維導圖的樣本。 我已經創建了一個由類型組織的60多種算法的方便思維導圖。 下載,打印并使用它。 ## 非常小心準備數據 某些算法僅適用于分類數據,而其他算法則需要數字數據。少數人可以處理你扔給他們的任何東西。 UCI機器中的數據集通常是標準化的,但不足以在其原始狀態下用于此類研究。 這已在“[關于為分類器準備數據的評論](http://www.win-vector.com/blog/2014/12/a-comment-on-preparing-data-for-classifiers/)”中指出。 在這篇評論中,作者指出,測試的相關數據集中的分類數據被系統地轉換為數值,但這可能會阻礙某些算法的測試。 高斯SVM可能表現良好,因為分類屬性轉換為數字和所執行數據集的標準化。 盡管如此,我贊揚作者在應對這一挑戰方面所具有的勇氣,而那些愿意接受后續研究的人可以解決這些問題。 作者還注意到 [OpenML項目](http://openml.org)看起來像是一項公民科學工作,可以承擔同樣的挑戰。 ## 為什么研究這樣? 根據[無免費午餐定理](http://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization)(NFLT)的論點,很容易在本研究中嗤之以鼻。在對所有問題進行平均時,所有算法的表現都是相同的。 我不喜歡這個論點。 NFLT要求您沒有先驗知識。你不知道你正在做什么問題或者你正在嘗試什么算法。這些條件不實用。 在論文中,作者列出了該項目的四個目標: * 為所選數據集集合選擇全局最佳分類器 * 根據其準確性對每個分類器和家庭進行排名 * 為每個分類器確定其達到最佳準確度的概率,以及其準確性與最佳準確度之間的差異 * 評估分類器行為改變數據集屬性(復雜性,模式數量,類數和輸入數) 該研究的作者承認,我們想要解決的實際問題是所有可能問題的一個子集,有效算法的數量不是無限的,而是可管理的。 本文是一個陳述,事實上我們可能對一套已知(但很小)問題的最常用(或實現)算法套件的能力有所說明。 (很像20世紀90年代中期的 [STATLOG項目](http://www.tandfonline.com/doi/abs/10.1080/08839519508945477#.VIi8ZVQW05E)) ## 在實踐中:選擇一個中間地帶 在開始之前,您無法知道哪種算法(或算法配置)在您的問題上表現良好甚至最佳。 你必須嘗試多種算法,并在那些證明能夠挑選問題結構的少數人身上加倍努力。 我稱之為[現場檢查](http://machinelearningmastery.com/why-you-should-be-spot-checking-algorithms-on-your-machine-learning-problems/ "Why you should be Spot-Checking Algorithms on your Machine Learning Problems"),強烈建議采用[數據驅動方法來應用機器學習](http://machinelearningmastery.com/a-data-driven-approach-to-machine-learning/ "A Data-Driven Approach to Machine Learning")。 在這項研究的背景下,現場檢查是一方面與您最喜歡的算法和另一方面測試所有已知算法之間的中間地帶。 1. **選擇你最喜歡的算法**。快速但限于你最喜歡的算法或庫。 2. **現貨檢查十幾個算法**。一種平衡的方法,允許更好的表現算法上升到頂部,讓您專注。 3. **測試所有已知/實現的算法**。耗時的詳盡方法有時會產生令人驚訝的結果。 您在此范圍內著陸取決于您擁有的時間和資源。請記住,問題的試驗算法只是[處理問題](http://machinelearningmastery.com/process-for-working-through-machine-learning-problems/ "Process for working through Machine Learning Problems")過程中的一步。 測試所有算法需要強大的測試工具。這不容小覷。 當我[過去嘗試過這個](http://machinelearningmastery.com/the-seductive-trap-of-black-box-machine-learning/ "The Seductive Trap of Black-Box Machine Learning")時,我發現大多數算法挑選出問題中的大部分結構。這是一個結果分布的結果,一個胖頭長尾,脂肪頭的差異往往非常小。 你想要有意義的是這個微小的差異。因此,您需要投入大量的前期時間來設計強大的測試工具(交叉驗證,大量折疊,可能是單獨的驗證數據集),而不會出現數據泄漏(交叉驗證折疊內的數據縮放/轉換等) 我現在認為應用問題是理所當然的。我甚至不關心哪些算法上升。我專注于數據準備和集合各種足夠好的模型的結果。 ## 下一步 在處理機器學習問題時,你在哪里? 你堅持使用最喜歡或最喜歡的算法嗎?您是否發現了檢查,或者您是否試圖詳盡無遺地測試您最喜歡的庫提供的所有內容?
                  <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>

                              哎呀哎呀视频在线观看