R語言中的非線性分類方法,都在這裡了
更多騰訊海量技術文章,請關注騰訊雲+社區:
https://cloud.tencent.com/developer
本文作者:陳良莉
你可以在這篇文章中找到8種在R語言中實現的非線性方法,每一種方法都做好了為你複製粘貼及修改你問題的準備。
本文中的所有方法都使用了數據集包(http://stat.ethz.ch/R-manual/R-patched/library/datasets/html/00Index.html)中隨R提供的虹膜花數據集。這個數據集描述了虹膜花的測量結果,並且要求將每次的觀察結果分類到三種花中的一種。
Irise花兒
照片來自:dottieg2007,部分權利保留
混合判別分析
這個配方演示了虹膜數據集上的MDA方法。
R中的混合判別分析:
# load the package
library(mda)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
詳細了解mda軟體包中的mda函數(https://cran.r-project.org/web/packages/mda/index.html)。
二次判別分析
QDA尋求最大化類間距離的屬性之間的二次關係。
這個配方演示了虹膜數據集上的QDA方法。
R中的二次判別分析 :
# load the package
library(MASS)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
規範化判別分析
這個配方演示了虹膜數據集上的RDA方法。
R中的規範化判別分析 :
# load the package
library(klaR)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
神經網路
神經網路(NN)是接收輸入並將結果傳遞到傳遞的輸出的計算單元的圖形,這些單元被排序成層,以便將輸入矢量的特徵連接到輸出矢量的特徵。通過訓練(如反向傳播演算法),神經網路可以被設計和訓練來模擬數據中的基礎關係。
這個配方演示了虹膜數據集上的一個神經網路。
R中的神經網路:
# load the package
library(nnet)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
靈活的判別分析
這個配方演示了虹膜數據集上的FDA方法。
R中的柔性判別分析 :
# load the package
library(mda)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
詳細了解mda軟體包中的fda功能。(https://cran.r-project.org/web/packages/mda/index.html)
支持向量機
支持向量機(SVM)是一種在轉換問題空間中使用點的方法,可以最佳地將類分為兩組。對於多種類別的分類方法是以一對多的模式進行的,SVM(支持向量機)還支持通過建模功能與最小量的允許誤差的回歸。
這個配方演示了虹膜數據集上的SVM方法。
R中的支持向量機法:
# load the package
library(kernlab)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
詳細了解kernlab軟體包中的ksvm函數。(cran.r-project.org/web/packages/kernlab/index.html)
k-最近鄰
k-最近鄰(kNN)方法通過將相似案例定位到給定數據實例(使用相似性函數)並返回平均或大部分最相似的數據實例來做出預測。
這個配方演示了虹膜數據集上的kNN方法。
# load the package
library(caret)data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
詳細了解插入符包中的knn3函數。(https://cran.r-project.org/web/packages/caret/index.html)
樸素貝葉斯
樸素貝葉斯使用貝葉斯定理來模擬每個屬性與類變數的條件關係。
這個配方演示了基於虹膜數據集上的樸素貝葉斯。
R中的樸素貝葉斯:
# load the package
library(caret)
data(iris)
# fit model
fit
# summarize the fit
summary(fit)
# make predictions
predictions
# summarize accuracy
table(predictions, iris$Species)
詳細了解e1071軟體包中的naiveBayes功能。(cran.r-project.org/web/packages/e1071/index.html)
總結
在這篇文章中,您使用虹膜花數據集找到了R中的非線性分類的8種方法。
每種方法都是通用的,可供您複製,粘貼和修改您自己的問題。


※小姐姐如何利用TextCNN識別髒話
※蘋果新動態!將研發製作自產顯示屏
TAG:雲加社區 |