国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

選擇和訓練模型(Machine Learning 研習之十一)

這篇具有很好參考價值的文章主要介紹了選擇和訓練模型(Machine Learning 研習之十一)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

當您看到本文標題時,不禁感嘆,總算是到了訓練模型這一節(jié)了。

是啊,在之前的文章中,我們對數據進行了探索,以及對一個訓練集和一個測試集進行了采樣,也編寫了一個預處理管道來自動清理,準備您的數據用于機器學習算法,然而現在,我們可以選擇并訓練模型了。

訓練集的訓練與評估

我們從一個最基本的線性回歸模型開始:

from sklearn.linear_model import LinearRegression
lin_reg = make_pipeline(preprocessing, LinearRegression())
lin_reg.fit(housing, housing_labels)

很好,至此,我們現在算是有了一個有效的線性回歸模型,可以在訓練集上試用它,查看前五個預測,并將它們與標簽進行比較::

選擇和訓練模型(Machine Learning 研習之十一),人工智能(AI),機器學習,人工智能,隨機森林,決策樹,Scikit-Learn,AI,訓練模型

第一個預測偏差很大(超過200,000美元!),而其他預測則更好,兩個預測偏差約25%,還有兩個預測
偏差不到10%。請記住,您選擇使用RMSE作為性能測度,因此您希望使用Scikit-Learnmean_squared_error()函數在整個訓練集上測量該回歸模型的RMSE,并將平方參數設置為False。

選擇和訓練模型(Machine Learning 研習之十一),人工智能(AI),機器學習,人工智能,隨機森林,決策樹,Scikit-Learn,AI,訓練模型

這總比沒有好,但顯然不是一個很好的分數,大多數地區(qū)的房屋價值中位數在120,000美元和26.5萬美元之間,所以一個典型的68628美元的預測誤差真的不是很令人滿意。這是一個模型擬合訓練數據不足的示例。當這種情況發(fā)生時,可能意味著這些特征沒有提供足夠的信息來做出好的預測,或者模型不夠強大。

正如我們在上一章中看到的,修復欠擬合的主要方法是選擇一個更強大的模型,為訓練算法提供更好的特征,或者減少對模型的約束。這個模型沒有正規(guī)化,這就排除了最后一個選項。您可以嘗試添加更多功能,但首先您要嘗試更復雜的模型,看看它是如何工作的。

您決定嘗試DecisionTreeRegressor,因為這是一個相當強大的模型,能夠在數據中找到復雜的非線性關系(后續(xù)篇章將更詳細地介紹決策樹):

from sklearn.tree import DecisionTreeRegressor
tree_reg = make_pipeline(preprocessing, DecisionTreeRegressor(random_state=42))
tree_reg.fit(housing, housing_labels)

現在模型已訓練完畢,您可以在訓練集中對其進行評估:

選擇和訓練模型(Machine Learning 研習之十一),人工智能(AI),機器學習,人工智能,隨機森林,決策樹,Scikit-Learn,AI,訓練模型

等等,難道這個模型真的很完美嗎?當然咯,更有可能的是模型嚴重地過度擬合了數據。您怎么能確定正如你前面看到的,在您準備好啟動一個您有信心的模型之前,您不想碰測試集,所以您需要使用一部分訓練集進行訓練,另一部分用于模型驗證。

使用交叉驗證進行更好的評估

評估決策樹模型的一種方法是使用train_test_split()函數將訓練集拆分為較小的訓練集和驗證集,然后針對較小的訓練集訓練您的模型,并針對驗證集對其進行評估。這是一點努力,但沒有太難,它會工作得相當不錯。

一個很好的替代方法是使用Scikit-Learnk_-fold交叉驗證特性。下面的代碼隨機地將訓練集分成10個不重疊的子集,稱為fold,然后訓練和評估決策樹模型10次,每次選擇不同的fold進行評估,并使用其他9個fold進行訓練。結果是一個包含10個評價分數的數組:

from sklearn.model_selection import cross_val_score
tree_rmses = -cross_val_score(tree_reg, housing, housing_labels,
scoring="neg_root_mean_squared_error", cv=10)

警告:

Scikit-Learn的交叉驗證功能期望的是效用函數(越大越好)而不是成本函數(越低越好),所以評分函數實際上是RMSE的反面。它是一個負值,所以您需要切換輸出的符號來獲得RMSE分
數。

讓我們來看看結果吧:

選擇和訓練模型(Machine Learning 研習之十一),人工智能(AI),機器學習,人工智能,隨機森林,決策樹,Scikit-Learn,AI,訓練模型

現在決策樹看起來不像以前那么好了。事實上,它的表現幾乎和線性回歸模型一樣差!請注意,交叉驗證不僅允許您獲得模型性能的估計值,還允許您測量該估計值的精確度(即其標準差)。決策樹的均方根誤差約為66,868,標準差約為2,061。如果只使用一個驗證集,則不會有此信息。但是交叉驗證是以多次訓練模型為代價的,所以它并不總是可行的。

如果您為線性回歸模型計算相同的度量,您將發(fā)現平均RMSE為69,858,標準差為4,182。因此,決策樹模型的性能似乎比線性模型稍微好一點,但由于嚴重的過擬合,差異很小。我們知道存在過擬合
問題,因為訓練誤差很低(實際上為零),而驗證誤差很高。

現在讓我們嘗試最后一個模型:隨機森林調節(jié)器,隨機森林的工作原理是在特征的隨機子集上訓練許多決策樹,然后平均出它們的預測值。這樣的模型組成的許多其他模型被稱為合奏:他們能夠提高性能基礎模型(在本例中為決策樹)。代碼與前面的代碼大同小異:

from sklearn.ensemble import RandomForestRegressor
forest_reg = make_pipeline(preprocessing,
RandomForestRegressor(random_state=42))
forest_rmses = -cross_val_score(forest_reg, housing, housing_labels,
scoring="neg_root_mean_squared_error", cv=10)

選擇和訓練模型(Machine Learning 研習之十一),人工智能(AI),機器學習,人工智能,隨機森林,決策樹,Scikit-Learn,AI,訓練模型

隨機森林真的看起來非常有前途的任務!但是,如果您訓練一個RandomForest并測量訓練集上的RMSE,您將發(fā)現大約17,474:這要低得多,這意味著仍然存在大量的過度擬合。可能的解決方案是
簡化模型,約束它(即,規(guī)則化它),或得到更多的訓練數據。但是,在深入研究隨機森林之前,您應該嘗試來自各種類別機器學習算法的許多其他模型(例如,具有不同內核的多個支持向量機,可能還有一個神經網絡),而無需花費太多時間調整超參數。目標是列出幾個(兩到五個)有前途的模型。文章來源地址http://www.zghlxwxcb.cn/news/detail-799445.html

到了這里,關于選擇和訓練模型(Machine Learning 研習之十一)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Azure云工作站上做Machine Learning模型開發(fā) - 全流程演示

    Azure云工作站上做Machine Learning模型開發(fā) - 全流程演示

    關注TechLead,分享AI全維度知識。作者擁有10+年互聯網服務架構、AI產品研發(fā)經驗、團隊管理經驗,同濟本復旦碩,復旦機器人智能實驗室成員,阿里云認證的資深架構師,項目管理專業(yè)人士,上億營收AI產品研發(fā)負責人。 了解如何在 Azure 機器學習云工作站上使用筆記本開發(fā)訓

    2024年02月08日
    瀏覽(27)
  • Azure Machine Learning - 使用自己的數據與 Azure OpenAI 模型對話

    Azure Machine Learning - 使用自己的數據與 Azure OpenAI 模型對話

    在本文中,可以將自己的數據與 Azure OpenAI 模型配合使用。 對數據使用 Azure OpenAI 模型可以提供功能強大的對話 AI 平臺,從而實現更快、更準確的通信。 關注TechLead,分享AI全維度知識。作者擁有10+年互聯網服務架構、AI產品研發(fā)經驗、團隊管理經驗,同濟本復旦碩,復旦機器

    2024年02月04日
    瀏覽(21)
  • [Machine learning][Part4] 多維矩陣下的梯度下降線性預測模型的實現

    [Machine learning][Part4] 多維矩陣下的梯度下降線性預測模型的實現

    目錄 模型初始化信息: 模型實現: 多變量損失函數: 多變量梯度下降實現: 多變量梯度實現: 多變量梯度下降實現: 之前部分實現的梯度下降線性預測模型中的training example只有一個特征屬性:房屋面積,這顯然是不符合實際情況的,這里增加特征屬性的數量再實現一次

    2024年02月06日
    瀏覽(19)
  • (3)【Python數據分析進階】Machine-Learning模型與算法應用-線性回歸與邏輯回歸

    (3)【Python數據分析進階】Machine-Learning模型與算法應用-線性回歸與邏輯回歸

    目錄 一、Linear Regression線性回歸應用 一元一次線性回歸公式及解析 應用案例(一)——自定義數據(Custom data) 1、下載安裝sklearn庫 2、導入庫函數 3、加載數據集 4、創(chuàng)建線性回歸對象 5、模型訓練 6、預測結果 7、繪制模型圖像 8、應用模型進行預測 9、評估指標 應用案例(

    2024年01月24日
    瀏覽(28)
  • 【論文筆記】基于預訓練模型的持續(xù)學習(Continual Learning)(增量學習,Incremental Learning)

    【論文筆記】基于預訓練模型的持續(xù)學習(Continual Learning)(增量學習,Incremental Learning)

    論文鏈接: Continual Learning with Pre-Trained Models: A Survey 代碼鏈接: Github: LAMDA-PILOT 持續(xù)學習 (Continual Learning, CL)旨在使模型在學習新知識的同時能夠保留原來的知識信息了,然而現實任務中,模型并不能很好地保留原始信息,這也就是常說的 災害性遺忘 (Catastrophic forgetting)

    2024年04月26日
    瀏覽(23)
  • 高效微調大型預訓練模型的Prompt Learning方法

    高效微調大型預訓練模型的Prompt Learning方法

    近年來,自然語言處理(NLP)領域的預訓練模型日益增多,應用場景也變得多樣。從NER(命名實體識別)到生成任務,如何高效地使用這些模型并進行微調成為了研究和實踐的重要課題。本文將深入探討一種稱為Prompt Learning的方法,通過選擇模型、構建模板、定義verbalizer等步

    2024年02月02日
    瀏覽(23)
  • 【Machine Learning】Supervised Learning

    本筆記基于清華大學《機器學習》的課程講義監(jiān)督學習相關部分,基本為筆者在考試前一兩天所作的Cheat Sheet。內容較多,并不詳細,主要作為復習和記憶的資料。 f ( x ) = s i g n ( w ? x + b ) f(x)=sign(w^top x+b) f ( x ) = s i g n ( w ? x + b ) convergence output probability instead of labels. Loss

    2024年01月20日
    瀏覽(24)
  • 在OK3588板卡上部署模型實現人工智能OCR應用(十一)

    在OK3588板卡上部署模型實現人工智能OCR應用(十一)

    我們依舊采用FastDeploy來部署應用深度學習模型到OK3588板卡上 進入主機Ubuntu的虛擬環(huán)境 conda activate ok3588 安裝rknn-toolkit2(該工具不能在OK3588板卡上完成模型轉換) git clone https://github.com/rockchip-linux/rknn-toolkit2 cd rknn-toolkit2 注意這里需要1.4的版本 git checkout v1.4.0 -f cd packages pip in

    2024年02月05日
    瀏覽(17)
  • 機器學習(Machine Learning)

    機器學習(Machine Learning)

    bili 吳恩達 機器學習 這是一門讓計算機在沒有明確編程的情況下學習的科學。 亞瑟·塞繆爾(1959):賦予計算機學習能力而不被明確編程的研究領域。 機器學習作為人工智能的一個子領域。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已

    2024年02月09日
    瀏覽(20)
  • [machine Learning]強化學習

    [machine Learning]強化學習

    強化學習和前面提到的幾種預測模型都不一樣,reinforcement learning更多時候使用在控制一些東西上,在算法的本質上很接近我們曾經學過的DFS求最短路徑. 強化學習經常用在一些游戲ai的訓練,以及一些比如火星登陸器,月球登陸器等等工程領域,強化學習的內容很簡單,本質就是獲取

    2024年02月09日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包