r语言 tunerf函数_R语言 | 一网打尽高质量统计分析与机器学习包
原標(biāo)題:R語言 | 一網(wǎng)打盡高質(zhì)量統(tǒng)計(jì)分析與機(jī)器學(xué)習(xí)包
146+72本期刊《SCI期刊分析+選刊網(wǎng)站》免費(fèi)領(lǐng)
解螺旋公眾號·陪伴你科研的第2232天
常用統(tǒng)計(jì)方法包+機(jī)器學(xué)習(xí)包(名稱、簡介)
本文簡要盤點(diǎn)一下關(guān)于統(tǒng)計(jì)分析與機(jī)器學(xué)習(xí)的R包,并通過簡要介紹包的特點(diǎn)來幫助讀者深入理解可視化包。
話不多說我們一起來看看吧!
1. survival
簡介:survival是目前用的最多的做生存分析的包,Surv:用于創(chuàng)建生存數(shù)據(jù)對象,survfit:創(chuàng)建KM生存曲線或是Cox調(diào)整生存曲線,survdiff:用于不同組的統(tǒng)計(jì)檢驗(yàn),coxph:構(gòu)建COX回歸模型,cox.zph:檢驗(yàn)PH假設(shè)是否成立,survreg:構(gòu)建參數(shù)模型,包括Km和cox分析。
缺點(diǎn):圖形不夠美觀。
2. glmnet
簡介:glmnet是做lasso分析的R包,包括二分類logistic回歸模型,多分類logistic回歸模型,Possion模型,Cox比例風(fēng)險(xiǎn)模型,svm模型,是目前用的最多的lasso分析的包,簡單易用,通過選擇1se lambda為最優(yōu)參數(shù),廣泛應(yīng)用在篩選基因的研究中。
缺點(diǎn):優(yōu)化下速度。
3. randomForests
簡介:randomForest 包提供了利用隨機(jī)森林算法解決分類和回歸問題的功能。使用起來比較簡單,其中randomForest函數(shù)用于構(gòu)建隨機(jī)森林模型,importance函數(shù)用于計(jì)算模型變量的重要性,MDSplot函數(shù)用于實(shí)現(xiàn)隨機(jī)森林的可視化,rfImpute函數(shù)可為存在缺失值的數(shù)據(jù)集進(jìn)行插補(bǔ)(隨機(jī)森林法),得到最優(yōu)的樣本擬合值,treesize函數(shù)用于計(jì)算隨機(jī)森林中每棵樹的節(jié)點(diǎn)個(gè)數(shù)。
缺點(diǎn):據(jù)我所知這是用R做隨機(jī)森林最常用(可能是唯一)的R包,比用python容易上手,硬要說缺點(diǎn)的話就是圖形美觀度,但可以后期AI調(diào)整。
4. rms
簡介:全稱是recession modeling strategy,包如其名,Harrell教授給我們提供了大量的好用便捷的函數(shù)進(jìn)行建模及模型的評價(jià)與檢驗(yàn)!最有名的是該包最先提供了畫列線圖函數(shù),這幾乎是現(xiàn)在模型可視化必備!
缺點(diǎn):有一些圖形函數(shù)參數(shù)不夠!
5. e1071
簡介:e1071是用于做支持向量機(jī)分析的R包,SVM旨在多維空間中找到一個(gè)超平面(hyperplane),該平面能夠?qū)⑷繉ο蠓殖勺顑?yōu)的兩類,其實(shí)也可以多類,但是效果不是很好。e1071名字比較特殊簡單,但是功能絕對強(qiáng)大,包括優(yōu)化的tune.svum,包括了多種核函數(shù),簡單方便。
缺點(diǎn):缺乏特征選擇的功能。
6. 回歸包 Logistic
簡介:當(dāng)通過一系列連續(xù)型或類別型預(yù)測變來預(yù)測二值型結(jié)果變量時(shí),Logistic回歸是一個(gè)非常有用的工具。Logistic 回歸是二分類任務(wù)的首選方法。它輸出一個(gè) 0 到 1 之間的離散二值結(jié)果。簡單來說,它的結(jié)果不是 1 就是 0。
缺點(diǎn):我們不能用 logistic 回歸來解決非線性問題,因?yàn)樗臎Q策面是線性的。
7. caret
簡介:caret包全稱是(Classificationand Regression Training),應(yīng)用之一就是數(shù)據(jù)預(yù)處理,比如我們常用的拆分訓(xùn)練集和驗(yàn)證集。caret包應(yīng)用之二:特征選擇,比如我們的svm-rfe這種特征選擇就是可以幫助我們在svm的基礎(chǔ)上進(jìn)行選擇最重要的特征,彌補(bǔ)e1071包的不足,caret包還可以參與建模與參數(shù)優(yōu)化和模型預(yù)測與檢驗(yàn),里面功能很強(qiáng)大。
缺點(diǎn):可能需要做點(diǎn)和內(nèi)部函數(shù)相關(guān)的可視化功能。
8. kmeans聚類
簡介:k(均值)聚類屬于扁平聚類算法,即進(jìn)行一層劃分得到k個(gè)簇,與層次聚類算法開始不需要決定簇?cái)?shù)不同,k均值聚類需要用戶事先確定好簇個(gè)數(shù),因?yàn)闃?gòu)建一顆聚類樹是非常耗時(shí)的事情,所以k均值聚類算法的效率要優(yōu)于層次聚類。可使用ggfortify包進(jìn)行聚類結(jié)果的可視化展示。
缺點(diǎn):應(yīng)該屬于無監(jiān)督學(xué)習(xí),分組效果略差。
9. nnet
簡介:如果你做過多分類的變量的相關(guān)模型的分析,那么你一定用過nnet包,它可以幫助你設(shè)置啞變量。另外nnet還是一個(gè)人工神經(jīng)網(wǎng)絡(luò)的算法包,該算法提供了傳統(tǒng)的前饋反向傳播神經(jīng)網(wǎng)絡(luò)算法的實(shí)現(xiàn)。一個(gè)nnet函數(shù)就可以實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的構(gòu)建,整個(gè)過程會(huì)一直重復(fù)直至擬合準(zhǔn)則值與衰減項(xiàng)收斂。
缺點(diǎn):這個(gè)函數(shù)的運(yùn)行速度可能還需要進(jìn)一步的優(yōu)化。
10. rpart
簡介:rpart是RecursivePartitioning and Regression Trees的簡稱,rpart可以用于決策樹的構(gòu)建,修剪,圖形展示,plotcp函數(shù)可視化或者printcp函數(shù)選取合適cp值。R語言中關(guān)于決策樹建模,最為常用的有兩個(gè)包,一個(gè)是rpart包,另一個(gè)是party包,rpart還更友好,結(jié)果簡單明了些。
缺點(diǎn):優(yōu)化速度,然后rpart包的內(nèi)置繪圖功能需要更加美觀。
11. mlr
簡介:mlr包就是類似python的sklearn庫。囊括蓋分類、回歸、生存分析、聚類等功能的可擴(kuò)展機(jī)器學(xué)習(xí)工作框架。提供了一個(gè)對于160多個(gè)基礎(chǔ)學(xué)習(xí)包的統(tǒng)一接口,包括了“元算法”和模型選擇技術(shù),并擴(kuò)展了基本學(xué)習(xí)算法的功能,比如超參數(shù)調(diào)參、特征選擇、集成結(jié)構(gòu)等。同時(shí)并行化計(jì)算也是其天然支持的一項(xiàng)技能。雖然Caret包和CMA包融入了數(shù)據(jù)預(yù)處理和變量選擇方法,但是MLR可以無縫同時(shí)用這些方法進(jìn)行調(diào)節(jié)。
缺點(diǎn):速度提升是一個(gè)需要努力的方向,可視化也需要增加。
12. gbm
簡介:gbm包是梯度提升回歸樹的實(shí)現(xiàn)。梯度提升回歸樹縮寫是GBRT,全稱是Gradient Boosting Regression Tree, 有時(shí)也叫做GBDT,是一個(gè)樹形算法,數(shù)據(jù)無需歸一化,其實(shí)用起來非常想glmet這個(gè)包,方法包括OOB,test,cv,一般選擇cv就行,可以方便的選擇選擇最適的回歸樹個(gè)數(shù)。
缺點(diǎn):可視化功能不是很好。
13. nlme
簡介:是R語言安裝時(shí)默認(rèn)的包,可以分析分層的線性混合模型和非線性模型。并且可以處理更復(fù)雜的線性和非線性模型,可以定義方差協(xié)方差結(jié)構(gòu),可以在廣義線性模型中定義幾種分布函數(shù)和連接函數(shù)。
缺點(diǎn):數(shù)據(jù)量大時(shí)速度很慢,不能處理多變量數(shù)據(jù)。
14. ASReml-R
簡介:這個(gè)R包是一個(gè)主要用來做遺傳分析的R包,包括多年份平衡與不平衡試驗(yàn)數(shù)據(jù)分析,重復(fù)測量數(shù)據(jù)分析,平衡與不平衡試驗(yàn)設(shè)計(jì)數(shù)據(jù)分析,遺傳參數(shù)評估等,替代了ASReml這個(gè)軟件,這個(gè)軟件本來原來也是替代SAS和SPSS的部分功能。
缺點(diǎn):收費(fèi)。
15. Mass
簡介:其實(shí)是為了介紹一種降維算法——LDA線性判別分析,LDA可以通過Mass包來建模。LDA和PCA都是線性降維技術(shù),通用的LDA與PCA相似,但是除了找到使數(shù)據(jù)方差最大的成分軸外,還對最大化多個(gè)類之間距離的軸感興趣。此外,PCA屬于“無監(jiān)督”算法,降維時(shí)不關(guān)注數(shù)據(jù)的分類,目標(biāo)是找到代表數(shù)據(jù)集最大化方差方向的一系列特征向量,也就是主成分,但是LDA屬于“有監(jiān)督”聚類,不僅關(guān)注類別關(guān)系,還可以通過線性判別式定義一系列表示最大化類別之間距離的正交軸。
缺點(diǎn):對各組數(shù)據(jù)分布模式有著嚴(yán)格要求,操作比較麻煩。
16. kernlab
簡介:這個(gè)R包是一個(gè)主要用來做SVM的R包,功能類似e1071,使用bsvm和libsvm庫中的優(yōu)化方法,得以實(shí)現(xiàn)svm算法。對于分類,有C-SVM分類算法和v-SVMz這2類分類算法,并且還包括C分類器的有界約束的版本。對于回歸,提供了2種回歸方法,ε-SVM、v-SVM回歸算法。對于多類分類,有一對一方法和原生多類分類方法。
缺點(diǎn):同樣可以考慮把svm的特征選擇加進(jìn)來。
17. mboost
簡介:mboost包提供基于提升(boosting)的機(jī)器學(xué)習(xí)算法和模型。可以用于用于廣義線性、加性和非參數(shù)模型的可擴(kuò)展的boosting框架。大概是3步完成,首先是最小乘方或者回歸樹作為基本學(xué)習(xí)器;
然后梯度下降算法(提升)用于優(yōu)化通用的風(fēng)險(xiǎn)函數(shù),最后對于潛在的高維數(shù)據(jù)擬合通用的線性、可加性和交互性模型。
缺點(diǎn):可視化不美觀。
18. xgboost
簡介:XGBoost 是Extreme Gradient Boosting 的縮寫,在競賽平臺Kaggle很流行。xgboost包使用efficient trees作為基學(xué)習(xí)器來實(shí)現(xiàn)tree-based boosting。XGBoost 算法是一種現(xiàn)在在數(shù)據(jù)科學(xué)競賽的獲勝方案很流行的算法,一般不管怎么樣,都先用這個(gè)方法來一次看看效果,一般都不錯(cuò)。XGBoost僅適用于數(shù)值型向量,我們可以利用熱編碼轉(zhuǎn)換。
缺點(diǎn):速度不夠快。
19. vegan
vegan 包是由芬蘭Oulu大學(xué)生物系Oksanen等幾位數(shù)量生態(tài)學(xué)者編寫的R包。Vegan包提供各種群落生態(tài)學(xué)分析工具,包括常用的PCA,DCA,RDA和CCA等方法,并且打包好了關(guān)于這些方法的計(jì)算和檢驗(yàn)的代碼,甚至還包括了大部分多元分析方法,操作簡便,代碼簡單。
缺點(diǎn): 圖片真的丑,速度也挺慢,可以出來結(jié)果后用ggplot2重新可視化結(jié)果。
20. CatBoost
簡介:CatBoost全稱是CategoricalBoosting,該算法類似于XGBoost,LightGBM的Gradient Boosting算法,這個(gè)算法的創(chuàng)新之處主要是,首先對于離散特征值的處理,采用了ordered TS(target statistic)的方法。第二是提供了兩種訓(xùn)練模式:Ordered和Plain。里面主要包括catboost.train、catboost.predict、calc_accuracy等函數(shù)。
缺點(diǎn):基本上不提供可視化結(jié)果的函數(shù)。
21. h2o包
簡介:通過連接外部服務(wù)器,支持R語言和GPU結(jié)合加速深度學(xué)習(xí)。現(xiàn)目前R語言應(yīng)用在深度學(xué)習(xí)的相關(guān)包數(shù)量不多,h2o支持多線程分析,加快深度學(xué)習(xí)的運(yùn)行速度。是人工神經(jīng)網(wǎng)絡(luò)ANN分析的利器。使用h2o.init連接到h2o平臺,然后就可以開始你的深度學(xué)習(xí)之旅了~
缺點(diǎn):對于卷積神經(jīng)網(wǎng)絡(luò)建模方法仍然不能很好的使用。
責(zé)任編輯:
總結(jié)
以上是生活随笔為你收集整理的r语言 tunerf函数_R语言 | 一网打尽高质量统计分析与机器学习包的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java ckfinder 图片重命名,
- 下一篇: Mybatis-Plus讲义