问题标签 [cross-validation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cross-validation - 模型比较的交叉验证
我有一个相对大的数据:
超过 370,000 个观测值,250 个级别的分类因变量,10 个自变量,包括数值变量和分类变量。
我想为模型比较执行10倍交叉验证(包括'rpart'中的分类树模型,'e1071'包中的svm,'kknn'包中的kknn,'adabag'包中的boosting和bagging)
看了这些模型的手册后,我尝试编写模型执行的代码,但我真的不知道如何执行 10 倍 CV。
实际上我已经尝试过了,但我是 R 的新手。我真的需要 10 倍 CV 的代码或功能的帮助。
这是我的代码:
有人告诉我包'cvTools'或'caret'可以执行k-folds CV,但我仍然无法使用这些包或功能成功执行。
python - sklearn LassoCV 如何进行交叉验证?
我想知道 sklearn.LassoCV 如何执行交叉验证。特别是我想知道样本是如何在折叠中细分的。它是随机的还是确定的过程?
例如,假设我有 100 个样本,我使用 10 折交叉验证并考虑 F 将每个样本发送到其折页的函数。
F(1:10)=1, F(11:20)=2,... 还是随机过程(例如 F(1)=8, F(2)=7...)
如果问题不清楚,请告诉我。
谢谢 :)
好的,这是解决方案:
r - 使用 CVtools 在 R 中对 glm 模型进行交叉验证
所以不久前我遇到了类似的问题,有人建议我减少我的数据集,我已经做了很多。起初我有 1664 个变量,现在只有 153 个。我试图在一个称为保留时间的因变量与 153 个描述符之间绘制一个一般线性模型。我有 160 个针对描述符的保留时间示例,因此它是一个 160 x 153 的数据集。然后我想对模型执行五折交叉验证,看看它有多准确,然后绘制预测保留时间到实验保留时间图。我正在使用 CVtools 来执行此操作。
但是,我收到消息:-
它继续。我在某处读到这可能是由于数据是共线的。因此,如果是这种情况,我决定执行 PCA,结果发现在我将组件绘制在一起后,它们都指向不同的方向,这表明它们不是共线的。
谁能理解发生了什么以及我哪里出错了?我已经复制并粘贴了我正在使用的数据库的一小部分。所以我试图为所有 160 个案例绘制 RT(秒)与 76_TI2、114_DECC 和所有其他 151 个描述符并对其执行交叉验证。
r - 特征选择 + 交叉验证,但如何在 R 中制作 ROC 曲线
我被下一个问题困住了。我将我的数据分成 10 份。每次,我使用 1 折作为测试集,另外 9 折作为训练集(我这样做十次)。在每个训练集上,我进行特征选择(使用 chi.squared 过滤方法),然后使用我的训练集和所选特征制作 SVM 模型。
所以最后,我变成了 10 个不同的模型(因为特征选择)。但是现在我想从这个过滤器方法中制作 R 中的 ROC 曲线。我怎样才能做到这一点?
丝绸
matlab - 在 LIBSVM matlab 中执行附加验证
我正在研究 MATLAB LIBSVM 一段时间来进行预测。我有一个数据集,其中 75% 用于训练,15% 用于寻找最佳参数,其余用于测试。代码如下。
我的问题是这是否正确。我正在创建具有不同 c 和 g 值的模型矩阵。我使用 -v 选项,这是这里的关键。从预测模型中,我使用验证数据集进行预测,并在那里计算均方误差。使用这个 MSE,我选择了最好的 c 和 g。由于我使用 -v 返回交叉验证的输出,所以我遵循的过程是否正确?
r - 在 R 的逐步回归中结合交叉验证
我有一个包含 162 个观察值和 151 个不同变量的数据集,我想对其进行逐步回归,但也对其进行 10 折交叉验证。我之前使用过 DAAG 包,以便使用多元线性回归执行 10 倍交叉验证,并且能够使用它的公式之一:-
我想知道该软件包是否支持相同的东西但逐步回归?我浏览了它的pdf,但找不到任何东西。
我知道我可以使用 MASS 包执行逐步回归
但看不到如何将 10 倍 CV 纳入方程式。
谢谢
r - 在 R 中查看随机森林的预测值与实际值
所以我有一个 162 x 151 的数据集:-
我想使用 10 折交叉验证在其上构建一个随机森林模型,然后查看每个折叠的预测值和实际值。我正在使用 randomForest 包。我做了:-
但是我无法找到一种方法来简单地查看从每个折叠中获得的所有预测值以及与之对应的实际值。我该怎么做呢?
谢谢
r - 在 DAAG 包中的交叉验证线性回归中查看哪些值
我对包含 151 个变量和 161 个观察值的数据集执行了以下操作:-
并得到以下结果:-
我想要做的是将预测结果与实际实验结果进行比较,因此我可以绘制两者的图表以显示它们的相似程度。我假设我会通过使用 Predicted 行中的值作为我的预测结果而不是 cvpred 来做到这一点是正确的?
我只问这个问题,因为当我在 caret 包中执行相同的操作时,预测值和观察值彼此之间的差异更大:-
图书馆(插入符号)ctrl <- trainControl(方法=“cv”,savePred=T,classProb=T)mod <-train(RT..seconds.~.,数据=学员,方法=“lm”,trControl=ctrl) mod$pred
该模型不应该如此不准确,因为我最初从 1664 个变量开始,通过使用随机森林减少了它,因此只使用了变量重要性大于 1 的变量,这大大减少了我的数据集从 162 * 1664 到 162 * 151。
如果有人可以向我解释一下,我将不胜感激,谢谢
r - 如何在 R 中的插入符号序列中查看模型中的奇点
我有一个 161 x 151 的数据库,我在我的数据集上应用了以下内容:-
我得到回报
我知道这意味着我的很多变量是共线性的,因此不是自变量。所以我希望能够查看我的数据的系数矩阵,所以我做了:-
但是您可以想象的结果太大了,无法将其全部放入我的 R 屏幕中。有没有一种查看模型矩阵的方法,这样我就可以看到哪些变量彼此共线,此外,如果我的变量是共线的,从这里开始我可以做些什么来更好地改进模型?我该如何克服呢?
谢谢
r - 如何在 R 中查看更多数据
这可能是一个愚蠢的问题,但我对我的数据执行了 SVM,模型的最佳拟合出现在 C = 0.5 时,因为它给出了最佳 RMSE 值。这是伟大的。我通过执行以下操作对其进行了 10 次交叉验证,十次:-
我希望能够查看我所有预测值和观察值的值,就像你在执行函数时得到的那样:-
但它会打印出所有不同的 C 值(其中三个)的所有折叠和重复,这并不完全适合 R 的屏幕。
有没有办法我可以修改该函数,使其仅在 C 等于 0.5 时打印出 10 次重复中每个折叠的预测结果?
所以是这样的: -
但仅适用于 .C 为 0.5 时,因为目前它正在打印 .C 也是 0.25 和 1 时
谢谢