Cross validation matlab – crossval 函数

我不明白 MATLAB 中 “crossval” 函数的第一个参数是什么,我知道它是用于执行回归的函数,但我不理解 “some criterion testval” 的意图。我需要在 K-最近邻回归器上使用它,但示例并没有让我完全明白。

vals = crossval(fun,X)

每次调用时,fun 应该使用 XTRAIN 来拟合模型,然后返回使用该拟合模型在 XTEST 上计算出的某个标准 testval。

我正在阅读的参考资料在这里:Matlab 参考


回答:

这应该类似于优化函数,您的拟合函数 fun 返回的值应该表明它对数据的拟合程度。正如文档所述,fun 接受两个参数,一个训练数据集 XTRAIN 和一个测试数据集 XTEST

如果您的数据 X 包含一列已知结果 X(:,1) 和其他列的特征 X(:, 2:end),并且使用 XTRAIN 训练数据,那么您的返回值可以简单地是拟合模型的平方和误差:

testval = sum( (model(XTEST(:, 2:end)) - XTEST(:, 1)).^2 );

其中 model(XTEST(:, 2:end)) 是您在测试数据集 XTEST 的特征上拟合模型的结果,而 XTEST(:, 1) 是这些特征集的已知结果。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注