摘要
本文討論使用LazyPredict來(lái)創(chuàng)建簡(jiǎn)單的ML模型。LazyPredict創(chuàng)建機(jī)器學(xué)習(xí)模型的特點(diǎn)是不需要大量的代碼,同時(shí)在不修改參數(shù)的情況下進(jìn)行多模型擬合,從而在眾多模型中選出性能最佳的一個(gè)。?
本文包括的內(nèi)容如下:?
- 簡(jiǎn)介?
- LazyPredict模塊的安裝?
- 在分類模型中實(shí)施LazyPredict?
- 在回歸模型中實(shí)施?
- 總結(jié)?
簡(jiǎn)介
LazyPredict號(hào)稱最先進(jìn)的Python軟件包,它的誕生正在徹底改變機(jī)器學(xué)習(xí)模型的開(kāi)發(fā)方式。通過(guò)使用LazyPredict,可以快速創(chuàng)建各種基本模型,幾乎不需要任何代碼,從而騰出時(shí)間來(lái)選擇最適合我們數(shù)據(jù)的模型。?
LazyPredict的主要優(yōu)點(diǎn)是可以使模型選擇更加容易,而不需要對(duì)模型進(jìn)行大量的參數(shù)調(diào)整。LazyPredict提供了一種快速有效的方法來(lái)尋找和適配數(shù)據(jù)的最佳模型。?
接下來(lái),讓我們通過(guò)這篇文章探索和學(xué)習(xí)更多關(guān)于LazyPredict的用法。?
LazyPredict模塊的安裝
LazyPredict庫(kù)的安裝是一項(xiàng)非常簡(jiǎn)單的任務(wù)。如同安裝任何其他Python庫(kù)一樣,只需一行代碼輕松搞定。?
在分類模型中實(shí)施LazyPredict
在這個(gè)例子中,我們將利用Sklearn包中的乳腺癌數(shù)據(jù)集。?
現(xiàn)在,讓我們來(lái)加載數(shù)據(jù)。?
為了選擇最佳分類器模型,現(xiàn)在讓我們部署"LazyClassifier "算法。這些特征和輸入?yún)?shù)適用于該類。
接著把該模型應(yīng)用于加載好的數(shù)據(jù)并進(jìn)行擬合。?
執(zhí)行上述代碼之后,得到下面結(jié)果:?
然后,我們可以進(jìn)行以下工作,來(lái)看看模型的細(xì)節(jié)。?
接下來(lái),設(shè)置模型的名稱來(lái)顯示詳細(xì)的步驟信息。?
在這里,我們可以看到SimpleImputer被用于整個(gè)數(shù)據(jù)集,然后是StandardScaler用于數(shù)字特征。在這個(gè)數(shù)據(jù)集中沒(méi)有分類或序數(shù)特征,但如果有,就會(huì)分別使用OneHotEncoder和OrdinalEncoder。LGBMClassifier模型在轉(zhuǎn)換和歸類后接收數(shù)據(jù)。?
LazyClassifier的內(nèi)部機(jī)器學(xué)習(xí)模型使用sci-kit-learn工具箱進(jìn)行評(píng)估和擬合。LazyClassifier函數(shù)在被調(diào)用時(shí),會(huì)在我們的數(shù)據(jù)上自動(dòng)建立和擬合各種模型,包括決策樹(shù)、隨機(jī)森林、支持向量機(jī)等。你提供的一組性能標(biāo)準(zhǔn),如準(zhǔn)確率、召回率或F1得分,被用來(lái)評(píng)估這些模型。訓(xùn)練集用于擬合,而測(cè)試集則用于評(píng)估。?
在對(duì)模型進(jìn)行評(píng)估和擬合后,LazyClassifier會(huì)提供一份評(píng)估結(jié)果總結(jié)(如上表),以及每個(gè)模型的頂級(jí)模型和性能指標(biāo)列表。由于不需要手動(dòng)調(diào)整或選擇模型,你可以快速簡(jiǎn)單地評(píng)估許多模型的性能,并選擇最適合數(shù)據(jù)的模型。
在回歸模型中實(shí)施LazyPredict
使用"LazyRegressor "函數(shù),可以再次為回歸模型完成同樣的工作。讓我們導(dǎo)入一個(gè)適合回歸任務(wù)的數(shù)據(jù)集(使用波士頓數(shù)據(jù)集)。
現(xiàn)在,讓我們使用LazyRegressor來(lái)擬合我們的數(shù)據(jù)。?
代碼執(zhí)行結(jié)果如下:?
以下是對(duì)最佳回歸模型的詳細(xì)描述:?
這里可以看到SimpleImputer被用于整個(gè)數(shù)據(jù)集,然后是StandardScaler用于數(shù)字特征。這個(gè)數(shù)據(jù)集中沒(méi)有分類或序數(shù)特征,但如果有的話,會(huì)分別使用OneHotEncoder和OrdinalEncoder。ExtraTreesRegressor模型接收了轉(zhuǎn)換和歸類后的數(shù)據(jù)。?
結(jié)論
LazyPredict庫(kù)對(duì)于任何從事機(jī)器學(xué)習(xí)行業(yè)的人來(lái)說(shuō)都是一種有用的資源。LazyPredict通過(guò)自動(dòng)創(chuàng)建和評(píng)估模型的過(guò)程來(lái)節(jié)省選擇模型的時(shí)間和精力,這大大提高了模型選擇過(guò)程的有效性。LazyPredict提供了一種快速而簡(jiǎn)單的方法來(lái)比較幾個(gè)模型的有效性,并確定哪個(gè)模型系列最適合我們的數(shù)據(jù)和問(wèn)題,因?yàn)樗軌蛲瑫r(shí)擬合和評(píng)估眾多模型。?
閱讀本文之后希望你現(xiàn)在對(duì)LazyPredict庫(kù)有了直觀的了解,這些概念將幫助你建立一些真正有價(jià)值的項(xiàng)目。?
譯者介紹
崔皓,51CTO社區(qū)編輯,資深架構(gòu)師,擁有18年的軟件開(kāi)發(fā)和架構(gòu)經(jīng)驗(yàn),10年分布式架構(gòu)經(jīng)驗(yàn)。
原文標(biāo)題:??LazyPredict: A Utilitarian Python Library to Shortlist the Best ML Models for a Given Use Case??,作者:Sanjay Kumar