首页 > 代码库 > ML(3.2): NavieBayes R_kalR
ML(3.2): NavieBayes R_kalR
ML3.1 介绍e1071包实施朴素贝叶斯分类的函数,本例使用klaR包中的NaiveBayes函数,因为该函数较之前者增加了两个功能,一个是可以输入先验概率,另一个是在正态分布基础上增加了核平滑密度函数。为了避免过度拟合,在训练时还要将数据分割进行多重检验,所以我们还使用了caret包的一些函数进行配合。
caret::train
语法: train(form, data, ..., weights, subset, na.action = na.fail, contrasts = NULL)
- 安装程序包
install.packages("caret") install.packages("mlbench") install.package("klaR")
- 创建训练集和测试集
index <-sample(1:nrow(iris), 100) iris.train <-iris[index, ] iris.test <-iris[-index, ]
- 加载包 使用朴素贝叶斯建模
fitControl <- trainControl(method = "repeatedcv", number = 10, repeats = 3,returnResamp = "all") model1 <- train(Species~., data = http://www.mamicode.com/iris.train,method=‘nb‘,trControl = fitControl)
- 返回测试数据的混淆矩阵
> pred3 <- predict(model1, iris.test, type="raw") > table(pred3,iris.test$Species) pred3 setosa versicolor virginica setosa 10 0 0 versicolor 0 18 2 virginica 0 0 20
ML(3.2): NavieBayes R_kalR
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。