- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我开始熟悉 r
的 caret
包,但是,来自其他编程语言,它彻底让我感到困惑。
我现在想做的是一个相当简单的机器学习工作流程,它是:
k
来自 1
至 20
,训练k
训练集上的最近邻分类器 iris
已经加载。然后,第二部分通过调用完成
a <- createDataPartition(iris$Species, list=FALSE)
training <- iris[a,]
test <- iris[-a,]
library(caret)
knnFit <- train()
knnFit <- train(Species~., data=training, method="knn")
r
已经对参数
k
进行了一些优化.当然,我可以限制
k
的值。该方法应该尝试,类似
knnFit <- train(Species~., data=training, method="knn", tuneGrid=data.frame(k=1:20))
k
:
test
中获取引导样本. k
的性能-nn 方法使用给定的样本 k
, 训练模型 在我之前构建的同一列火车上 knnFit <- train(Species~., training_data=training, test_data=test, method="knn", tuneGrid=data.frame(k=1:20))
trainControl
做些什么参数,但我看到它可能的方法是:
"boot", "boot632", "cv", "repeatedcv", "LOOCV", "LGOCV", "none"
最佳答案
如果我正确理解了问题,这可以在使用 LGOCV(Leave-group-out-CV = 重复训练/测试拆分)并设置训练百分比 p = 0.8
的插入符号内完成。并将训练/测试的重复拆分为 number = 1
如果您真的只想要一个模型适合每个 k
这是在测试集上测试的。设置 number
> 1 将在 number
上反复评估模型性能不同的训练/测试分组。
data(iris)
library(caret)
set.seed(123)
mod <- train(Species ~ ., data = iris, method = "knn",
tuneGrid = expand.grid(k=1:20),
trControl = trainControl(method = "LGOCV", p = 0.8, number = 1,
savePredictions = T))
mod$pred
中。如果
savePredictions = T
.备注
rowIndex
:这些是已经被采样到测试集中的行。这些对于
k
的所有不同值都是相等的,所以每次都使用相同的训练/测试集。
> head(mod$pred)
pred obs rowIndex k Resample
1 setosa setosa 5 1 Resample1
2 setosa setosa 6 1 Resample1
3 setosa setosa 10 1 Resample1
4 setosa setosa 12 1 Resample1
5 setosa setosa 16 1 Resample1
6 setosa setosa 17 1 Resample1
> tail(mod$pred)
pred obs rowIndex k Resample
595 virginica virginica 130 20 Resample1
596 virginica virginica 131 20 Resample1
597 virginica virginica 135 20 Resample1
598 virginica virginica 137 20 Resample1
599 virginica virginica 145 20 Resample1
600 virginica virginica 148 20 Resample1
k
的不同值绘制验证曲线。来自
plot(mod)
.
关于r - 在 `r` 的 `caret` 包中训练测试拆分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35718350/
尝试使用 caret 包中的 preProcess 函数时出现以下错误。 predict 函数适用于 knn 和中值插补,但会给出装袋错误。我应该如何编辑对预测函数的调用。 可重现的例子: data
我正在尝试让两个 fontawesome 图标向上插入和向下插入以相互堆叠而不隐藏一个并显示另一个?任何建议将不胜感激。这是一个带有 Bootstrap 和 fontawesome 的 plucker
我目前正在使用列表来处理左侧菜单。一切正常,但现在我想对 font-awsome 执行操作,我正在尝试将 fa-caret-right 移动到 fa-caret-down。 fa-caret-righ
我试图了解 Caret 包中的 5 折交叉验证算法,但我无法找到如何为每一折获取训练集和测试集,而且我也无法从类似的建议问题中找到它。想象一下,如果我想通过随机森林方法进行交叉验证,我会执行以下操作:
在 R 包 caret 中,我们能否使用函数 createDataPartition()(或用于交叉验证的 createFolds())基于多个变量创建分层训练和测试集? 这是一个变量的示例: #2/
我对rfe库中的caret函数有疑问。在插入符号主页link上,他们给出了以下RFE算法: algorithm 对于此示例,我将rfe函数与3折交叉验证结合使用,并将train函数与linear-SV
我们可以通过利用foreach软件包,nnet和插入符号软件包来使用多核并行地训练神经网络模型吗? 我只看到randomforest并行执行。神经网络是否可能。 我对插入符号的火车功能特别感兴趣,该功
我希望使用带有不是默认选项之一的指标的插入符号包。对于下面的示例,我使用了 Metrics 包。我已经阅读了 StackOverflow 上的所有相关问题以及 caret 网站上的指南,但仍然收到错误
实际的并行插入符取决于 R、插入符和 doMC 软件包。如 Parallelizing Caret code 中所述 有人和我在类似的环境中工作吗? R 插入符并行化正常工作的最大 R 版本是什么?
我不知道如何使用R中的caret包提取训练误差(即在训练集上获得的误差)。例如,我有以下模型: data(iris); library(caret); model<-train(Species~.,
我最近在插入符号的 trainControl() Funktion 中发现了随机搜索选项。插入符如何生成参数以及是否有办法提供某种特定于用户的输入(例如从中采样参数的分布)?关于website我只找到
我的训练数据集 (train) 是一个具有 n 个特征 的数据框架,以及一个具有结果 y 的附加列。我建立了3个单独的模型,例如: m1 用于测试数据),并且在最后一步中,DATA_TO_PREDI
我正在尝试通过方法 useDelimiter("&|=|~ |^");. 除了被忽略的 ^ 之外,所有定界符都可以正常工作:这是为什么? 我在扫描仪文档中看不出原因。 最佳答案 你需要转义^,像这样:
我目前正在学习如何在 R 中实现逻辑回归 我已经获取了一个数据集并将其分成训练集和测试集,并希望实现前向选择、后向选择和最佳子集选择 使用交叉验证来选择最佳功能。我正在使用 caret 对训练数据集实
“插入符号”一词起源于文本插入点的何处?我试图用谷歌搜索它,但这很难找到(即使我的历史计算机引用书在这里似乎也无济于事)。 我相当确定我记得一些使用文字插入符号(即:^)作为文本插入标记的古老的 Wa
我正在使用 caret R中的库用于模型生成。我想生成一个 earth (又名 MARS)模型,我想指定 degree此模型生成的参数。根据documentation (第 11 页) earth方法
我想使用 AUC 作为性能度量,但 RFE 仅支持 RMSE、RSquared、Accuracy、Kappa。如何使用自定义指标,例如 auc? 最佳答案 您必须指定一个自定义 summaryFunc
代码: library(nnet) library(caret) #K-folds resampling method for fitting model ctrl <- trainControl(m
我试图通过将“knnImpute”传递给 Caret 的 train() 方法的 preProcess 参数来估算值。基于以下示例,这些值似乎没有被估算,保留为 NA,然后被忽略。我究竟做错了什么?
我正在训练基于来自 Kaggle 的心脏病数据的决策树模型。 . 由于我也在使用 10 倍 CV 构建其他模型,因此我尝试使用带有 rpart 方法的 caret 包来构建树。然而,情节结果很奇怪,因
我是一名优秀的程序员,十分优秀!