18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

隨機貼片與隨機子空間

lviY_AI_shequ ? 來源:未知 ? 作者:李倩 ? 2018-07-20 16:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨機貼片與隨機子空間

BaggingClassifier也支持采樣特征。它被兩個超參數(shù)max_features和bootstrap_features控制。他們的工作方式和max_samples和bootstrap一樣,但這是對于特征采樣而不是實例采樣。因此,每一個分類器都會被在隨機的輸入特征內(nèi)進行訓(xùn)練。

當(dāng)你在處理高維度輸入下(例如圖片)此方法尤其有效。對訓(xùn)練實例和特征的采樣被叫做隨機貼片。保留了所有的訓(xùn)練實例(例如bootstrap=False和max_samples=1.0),但是對特征采樣(bootstrap_features=True并且/或者max_features小于 1.0)叫做隨機子空間。

采樣特征導(dǎo)致更多的預(yù)測多樣性,用高偏差換低方差。

隨機森林

正如我們所討論的,隨機森林是決策樹的一種集成,通常是通過 bagging 方法(有時是 pasting 方法)進行訓(xùn)練,通常用max_samples設(shè)置為訓(xùn)練集的大小。與建立一個BaggingClassifier然后把它放入DecisionTreeClassifier相反,你可以使用更方便的也是對決策樹優(yōu)化夠的RandomForestClassifier(對于回歸是RandomForestRegressor)。接下來的代碼訓(xùn)練了帶有 500 個樹(每個被限制為 16 葉子結(jié)點)的決策森林,使用所有空閑的 CPU 核:

>>>from sklearn.ensemble import RandomForestClassifier>>>rnd_clf = RandomForestClassifier(n_estimators=500, max_leaf_nodes=16, n_jobs=-1) >>>rnd_clf.fit(X_train, y_train)>>>y_pred_rf = rnd_clf.predict(X_test)

除了一些例外,RandomForestClassifier使用DecisionTreeClassifier的所有超參數(shù)(決定數(shù)怎么生長),把BaggingClassifier的超參數(shù)加起來來控制集成本身。

隨機森林算法在樹生長時引入了額外的隨機;與在節(jié)點分裂時需要找到最好分裂特征相反(詳見第六章),它在一個隨機的特征集中找最好的特征。它導(dǎo)致了樹的差異性,并且再一次用高偏差換低方差,總的來說是一個更好的模型。以下是BaggingClassifier大致相當(dāng)于之前的randomforestclassifier:

>>>bag_clf = BaggingClassifier(DecisionTreeClassifier(splitter="random", max_leaf_nodes=16),n_estimators=500, max_samples=1.0, bootstrap=True, n_jobs=-1)

極端隨機樹

當(dāng)你在隨機森林上生長樹時,在每個結(jié)點分裂時只考慮隨機特征集上的特征(正如之前討論過的一樣)。相比于找到更好的特征我們可以通過使用對特征使用隨機閾值使樹更加隨機(像規(guī)則決策樹一樣)。

這種極端隨機的樹被簡稱為Extremely Randomized Trees(極端隨機樹),或者更簡單的稱為Extra-Tree。再一次用高偏差換低方差。它還使得Extra-Tree比規(guī)則的隨機森林更快地訓(xùn)練,因為在每個節(jié)點上找到每個特征的最佳閾值是生長樹最耗時的任務(wù)之一。

你可以使用 sklearn 的ExtraTreesClassifier來創(chuàng)建一個Extra-Tree分類器。他的 API 跟RandomForestClassifier是相同的,相似的,ExtraTreesRegressor跟RandomForestRegressor也是相同的 API。

我們很難去分辨ExtraTreesClassifier和RandomForestClassifier到底哪個更好。通常情況下是通過交叉驗證來比較它們(使用網(wǎng)格搜索調(diào)整超參數(shù))。

特征重要度

最后,如果你觀察一個單一決策樹,重要的特征會出現(xiàn)在更靠近根部的位置,而不重要的特征會經(jīng)常出現(xiàn)在靠近葉子的位置。因此我們可以通過計算一個特征在森林的全部樹中出現(xiàn)的平均深度來預(yù)測特征的重要性。sklearn 在訓(xùn)練后會自動計算每個特征的重要度。你可以通過feature_importances_變量來查看結(jié)果。例如如下代碼在 iris 數(shù)據(jù)集(第四章介紹)上訓(xùn)練了一個RandomForestClassifier模型,然后輸出了每個特征的重要性。看來,最重要的特征是花瓣長度(44%)和寬度(42%),而萼片長度和寬度相對比較是不重要的(分別為 11% 和 2%):

>>> from sklearn.datasets import load_iris >>> iris = load_iris() >>> rnd_clf = RandomForestClassifier(n_estimators=500, n_jobs=-1) >>> rnd_clf.fit(iris["data"], iris["target"]) >>> for name, score in zip(iris["feature_names"], rnd_clf.feature_importances_): >>> print(name, score) sepal length (cm) 0.112492250999sepal width (cm) 0.0231192882825 petal length (cm) 0.441030464364 petal width (cm) 0.423357996355

相似的,如果你在 MNIST 數(shù)據(jù)及上訓(xùn)練隨機森林分類器(在第三章上介紹),然后畫出每個像素的重要性,你可以得到圖 7-6 的圖片。

隨機森林可以非常方便快速得了解哪些特征實際上是重要的,特別是你需要進行特征選擇的時候。

提升

提升(Boosting,最初稱為假設(shè)增強)指的是可以將幾個弱學(xué)習(xí)者組合成強學(xué)習(xí)者的集成方法。對于大多數(shù)的提升方法的思想就是按順序去訓(xùn)練分類器,每一個都要嘗試修正前面的分類?,F(xiàn)如今已經(jīng)有很多的提升方法了,但最著名的就是Adaboost(適應(yīng)性提升,是Adaptive Boosting的簡稱) 和Gradient Boosting(梯度提升)。讓我們先從Adaboost說起。

Adaboost

使一個新的分類器去修正之前分類結(jié)果的方法就是對之前分類結(jié)果不對的訓(xùn)練實例多加關(guān)注。這導(dǎo)致新的預(yù)測因子越來越多地聚焦于這種情況。這是Adaboost使用的技術(shù)。

舉個例子,去構(gòu)建一個 Adaboost 分類器,第一個基分類器(例如一個決策樹)被訓(xùn)練然后在訓(xùn)練集上做預(yù)測,在誤分類訓(xùn)練實例上的權(quán)重就增加了。第二個分類機使用更新過的權(quán)重然后再一次訓(xùn)練,權(quán)重更新,以此類推(詳見圖 7-7)

圖 7-8 顯示連續(xù)五次預(yù)測的 moons 數(shù)據(jù)集的決策邊界(在本例中,每一個分類器都是高度正則化帶有 RBF 核的 SVM)。第一個分類器誤分類了很多實例,所以它們的權(quán)重被提升了。第二個分類器因此對這些誤分類的實例分類效果更好,以此類推。右邊的圖代表了除了學(xué)習(xí)率減半外(誤分類實例權(quán)重每次迭代上升一半)相同的預(yù)測序列。你可以看出,序列學(xué)習(xí)技術(shù)與梯度下降很相似,除了調(diào)整單個預(yù)測因子的參數(shù)以最小化代價函數(shù)之外,AdaBoost 增加了集合的預(yù)測器,逐漸使其更好。

一旦所有的分類器都被訓(xùn)練后,除了分類器根據(jù)整個訓(xùn)練集上的準確率被賦予的權(quán)重外,集成預(yù)測就非常像Bagging和Pasting了。

序列學(xué)習(xí)技術(shù)的一個重要的缺點就是:它不能被并行化(只能按步驟),因為每個分類器只能在之前的分類器已經(jīng)被訓(xùn)練和評價后再進行訓(xùn)練。因此,它不像Bagging和Pasting一樣。

讓我們詳細看一下 Adaboost 算法。每一個實例的權(quán)重wi初始都被設(shè)為1/m第一個分類器被訓(xùn)練,然后他的權(quán)重誤差率r1在訓(xùn)練集上算出,詳見公式 7-1。

公式7-1:第j個分類器的權(quán)重誤差率

其中是第j個分類器對于第i實例的預(yù)測。

分類器的權(quán)重j 隨后用公式 7-2 計算出來。其中η是超參數(shù)學(xué)習(xí)率(默認為 1)。

分類器準確率越高,它的權(quán)重就越高。如果它只是瞎猜,那么它的權(quán)重會趨近于 0。然而,如果它總是出錯(比瞎猜的幾率都低),它的權(quán)重會使負數(shù)。

公式 7-2:分類器權(quán)重

接下來實例的權(quán)重會按照公式 7-3 更新:誤分類的實例權(quán)重會被提升。

公式7-3 權(quán)重更新規(guī)則

對于i=1, 2, ..., m

隨后所有實例的權(quán)重都被歸一化(例如被整除)

最后,一個新的分類器通過更新過的權(quán)重訓(xùn)練,整個過程被重復(fù)(新的分類器權(quán)重被計算,實例的權(quán)重被更新,隨后另一個分類器被訓(xùn)練,以此類推)。當(dāng)規(guī)定的分類器數(shù)量達到或者最好的分類器被找到后算法就會停止。

為了進行預(yù)測,Adaboost 通過分類器權(quán)重j 簡單的計算了所有的分類器和權(quán)重。預(yù)測類別會是權(quán)重投票中主要的類別。(詳見公式 7-4)

公式7-4: Adaboost 分類器

其中N是分類器的數(shù)量。

sklearn 通常使用 Adaboost 的多分類版本SAMME(這就代表了分段加建模使用多類指數(shù)損失函數(shù))。如果只有兩類別,那么SAMME是與 Adaboost 相同的。如果分類器可以預(yù)測類別概率(例如如果它們有predict_proba()),如果 sklearn 可以使用SAMME叫做SAMME.R的變量(R 代表“REAL”),這種依賴于類別概率的通常比依賴于分類器的更好。

接下來的代碼訓(xùn)練了使用 sklearn 的AdaBoostClassifier基于 200 個決策樹樁 Adaboost 分類器(正如你說期待的,對于回歸也有AdaBoostRegressor)。一個決策樹樁是max_depth=1的決策樹-換句話說,是一個單一的決策節(jié)點加上兩個葉子結(jié)點。這就是AdaBoostClassifier的默認基分類器:

>>>from sklearn.ensemble import AdaBoostClassifier>>>ada_clf = AdaBoostClassifier(DecisionTreeClassifier(max_depth=1), n_estimators=200,algorithm="SAMME.R", learning_rate=0.5) >>>ada_clf.fit(X_train, y_train)

如果你的 Adaboost 集成過擬合了訓(xùn)練集,你可以嘗試減少基分類器的數(shù)量或者對基分類器使用更強的正則化。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 分類器
    +關(guān)注

    關(guān)注

    0

    文章

    153

    瀏覽量

    13619
  • 數(shù)據(jù)集
    +關(guān)注

    關(guān)注

    4

    文章

    1229

    瀏覽量

    25953
  • 決策樹
    +關(guān)注

    關(guān)注

    3

    文章

    96

    瀏覽量

    13974

原文標題:【翻譯】Sklearn 與 TensorFlow 機器學(xué)習(xí)實用指南 —— 第7章 集成學(xué)習(xí)和隨機森林 (中)

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于while的隨機數(shù)的隨機曲線

    我想創(chuàng)建一個基于while的隨機數(shù)的隨機曲線——
    發(fā)表于 05-05 19:37

    隨機系列及編碼.ppt

    隨機系列及編碼11.1 偽隨機序列的概念 11.2 正交碼與偽隨機碼 11.3 偽隨機序列的產(chǎn)生 11.4 m序列 11.5 M序列 11.6 Gold序列 11.7 正交沃爾什函數(shù)
    發(fā)表于 10-22 13:24 ?0次下載

    CDMA偽隨機

    隨機碼又稱偽隨機序列,它是具有類似于隨機序列基本特性的確定序列。通常廣泛應(yīng)用二進制序列,因此我們僅限于研究二進制序列。二進制獨立隨機序列在概率論中一般稱為
    發(fā)表于 06-18 13:55 ?5次下載

    應(yīng)用隨機過程

    應(yīng)用隨機過程是現(xiàn)代應(yīng)用隨機過程教材,內(nèi)容從入門知識到學(xué)術(shù)前沿,包括預(yù)備知識、隨機過程的基本類型、Poisson過程、更新過程、Markov鏈、鞅、Brown運動、隨機積分、
    發(fā)表于 03-19 08:47 ?0次下載

    隨機閃光的氖燈電路

    隨機閃光的氖燈電路
    發(fā)表于 01-17 23:18 ?943次閱讀
    <b class='flag-5'>隨機</b>閃光的氖燈電路

    隨機閃光的氖燈

    隨機閃光的氖燈
    發(fā)表于 04-21 11:30 ?1144次閱讀
    <b class='flag-5'>隨機</b>閃光的氖燈

    隨機硬盤容量

    隨機硬盤容量              隨機硬盤容量是指服務(wù)器出廠時標準配
    發(fā)表于 12-17 11:39 ?785次閱讀

    基于網(wǎng)絡(luò)表示學(xué)習(xí)與隨機游走的鏈路預(yù)測算法

    ,通過基于深度學(xué)習(xí)的網(wǎng)絡(luò)表示學(xué)習(xí)算法-DeepWalk學(xué)習(xí)網(wǎng)絡(luò)節(jié)點的潛在結(jié)構(gòu)特征,將網(wǎng)絡(luò)中的各節(jié)點表征到低維向量空間;然后,在重啟隨機游走( RWR)和局部隨機游走(LRW)算法的隨機
    發(fā)表于 11-29 10:24 ?0次下載
    基于網(wǎng)絡(luò)表示學(xué)習(xí)與<b class='flag-5'>隨機</b>游走的鏈路預(yù)測算法

    Python隨機數(shù)模塊的隨機函數(shù)使用

    隨機數(shù)在日常的應(yīng)用開發(fā)中,使用的比較多,比如抽獎游戲,如果你不依靠隨機數(shù),就會變的由規(guī)律,容易被人發(fā)現(xiàn)規(guī)律。比如我們的斗地主游戲,它的發(fā)牌程序也會隨機給每個人發(fā)牌,還有一些加密使用的也很廣泛,下面給大家分享下python中的
    的頭像 發(fā)表于 01-18 17:55 ?2834次閱讀
    Python<b class='flag-5'>隨機</b>數(shù)模塊的<b class='flag-5'>隨機</b>函數(shù)使用

    隨機顏色之與Alexa的隨機玩家游戲

    電子發(fā)燒友網(wǎng)站提供《開隨機顏色之與Alexa的隨機玩家游戲.zip》資料免費下載
    發(fā)表于 12-20 09:23 ?0次下載
    開<b class='flag-5'>隨機</b>顏色之與Alexa的<b class='flag-5'>隨機</b>玩家游戲

    簡述SystemVerilog的隨機約束方法

    上一篇文章介紹了SystemVerilog的各種隨機化方法,本文將在其基礎(chǔ)上引入SystemVerilog的隨機約束方法(constraints)。通過使用隨機約束,我們可以將隨機限制
    的頭像 發(fā)表于 01-21 17:03 ?2994次閱讀

    隨機數(shù)和真隨機數(shù)的區(qū)別是什么呢?

    隨機驗證中的隨機其實都是基于偽隨機發(fā)生器的,即每次都使用一個唯一的種子生成相應(yīng)的激勵。
    的頭像 發(fā)表于 04-17 10:12 ?6129次閱讀

    SystemVerilog的隨機約束方法

    上一篇文章《暗藏玄機的SV隨機化》介紹了SystemVerilog的各種隨機化方法,本文將在其基礎(chǔ)上引入SystemVerilog的隨機約束方法(constraints)。通過使用隨機
    的頭像 發(fā)表于 09-24 12:15 ?3182次閱讀

    什么是隨機森林?隨機森林的工作原理

    隨機森林使用名為“bagging”的技術(shù),通過數(shù)據(jù)集和特征的隨機自助抽樣樣本并行構(gòu)建完整的決策樹。雖然決策樹基于一組固定的特征,而且經(jīng)常過擬合,但隨機性對森林的成功至關(guān)重要。
    發(fā)表于 03-18 14:27 ?5564次閱讀
    什么是<b class='flag-5'>隨機</b>森林?<b class='flag-5'>隨機</b>森林的工作原理

    隨機數(shù)和偽隨機數(shù)的區(qū)別

    隨機數(shù)在當(dāng)前程序運行環(huán)境中是一種常用參數(shù),目前主要分為兩種,偽隨機數(shù)和真隨機數(shù),本期我們就來講一下二者的區(qū)別。
    的頭像 發(fā)表于 08-27 17:46 ?1329次閱讀