Questions tagged «cross-validation»

在模型拟合期间反复保留数据的子集,以便量化保留的数据子集上的模型性能。

1
关于在训练/有效/测试集上减去平均值的问题
我正在进行数据预处理,然后在数据上构建一个Convonets。 我的问题是:假设我有100个图像的总数据集,我正在为100个图像中的每个图像计算平均值,然后从每个图像中减去它,然后将其拆分为训练集和验证集,我这样做给定测试集上进行处理的步骤,但根据此链接,看来这不是正确的方法:http : //cs231n.github.io/neural-networks-2/#datapre “ 常见的陷阱。进行预处理的重要一点是,任何预处理统计信息(例如数据均值)都必须仅在训练数据上计算,然后应用于验证/测试数据。例如,计算均值并从中减去整个数据集中的每幅图像然后将数据拆分为训练/验证/测试分割将是一个错误,相反,必须仅对训练数据计算平均值,然后从所有分割(训练/验证/测试)中均等地减去均值。 ” 我猜作者在说什么,不要计算平均值并在每个图像中减去它,而是计算整个图像集的平均值(即(image1 + ... + image100)/ 100),然后减去平均值每个图像。 我不太明白有人可以解释吗?并且还可能解释为什么我在做什么错了(如果确实错了)。


1
什么时候不使用交叉验证?
当我阅读该站点时,大多数答案都建议交叉验证应在机器学习算法中进行。但是,当我阅读《理解机器学习》一书时,我看到有一种练习,有时最好不要使用交叉验证。我真的很困惑 什么时候对整个数据进行训练算法比交叉验证更好?它是否发生在真实的数据集中? 让是k个假设类。假设你是给米 IID训练例子,你想学习类^ h = ∪ ķ 我= 1 ^ h 我。考虑两种替代方法:H1个,。。。,HķH1,...,HkH_1,...,H_k米mmH= ∪ķ我= 1H一世H=∪i=1kHiH=\cup^k_{i=1}H_i 使用ERM规则在m个示例中学习HHH米mm 划分米实例为训练集的大小的和验证组的大小α 米,对于一些α ∈ (0 ,1 )。然后,使用验证应用模型选择方法。也就是说,第一个训练每个类ħ 我在(1 - α )米使用相对于所述ERM规则训练样例ħ 我,并让ħ 1,... ,ħ ķ(1 - α )米(1−α)m(1−\alpha)mα 米αm\alpha mα ∈ (0 ,1 )α∈(0,1)\alpha\in(0,1)H一世HiH_i(1−α)m(1−α)m(1−\alpha)mHiHiH_ih^1,…,h^kh^1,…,h^k\hat{h}_1,\ldots,\hat{h}_k成为假设。其次,相对于应用该规则ERM到无限类{ ħ 1,... ,ħ ķ }对α 米验证的例子。h^1,…,h^kh^1,…,h^k\hat{h}_1,\ldots,\hat{h}_kαmαm\alpha m 描述第一种方法优于第二种方法的情况,反之亦然。 形象的态度。

1
时间序列预测的随机森林回归
我正在尝试利用RF回归对造纸厂的性能进行预测。 我每分钟都有输入数据(进纸木浆的速度和数量等)以及机器的性能(生产的纸张,机器消耗的功率)的数据,我希望做出10分钟的预测在性能变量上领先。 我有12个月的数据,因此将其分为11个月的培训时间和最后一个月的测试时间。 到目前为止,我已经创建了10个新功能,每个性能变量的滞后值在1-10分钟之内,并使用这些功能以及输入来进行预测。测试集的性能一直很好(系统是可以预测的),但是我担心我的方法中缺少某些东西。 例如,在本文中,作者陈述了他们测试随机森林模型的预测能力的方法: 通过迭代添加新一周的数据,基于更新后的数据训练新模型并预测下一周的爆发次数来进行模拟 这与利用时间序列中的“后来的”数据作为测试有何不同?我是否应该使用这种方法以及测试数据集来验证我的RF回归模型?此外,这种对森林随机回归的“自回归”方法是否对时间序列有效,如果我对未来10分钟的预测感兴趣,我是否甚至需要创建这么多滞后变量?

1
如何使用cv.glmnet(R中的LASSO回归)进行交叉验证?
我想知道如何使用R中的glmnet正确地训练和测试LASSO模型? 具体来说,我想知道如果缺少外部测试数据集该如何使用交叉验证(或其他类似方法)来测试我的LASSO模型,该怎么做。 让我分解一下情况: 我只有一个数据集来通知和训练我的glmnet模型。结果,我将不得不使用交叉验证来拆分数据,以生成一种测试模型的方法。 我已经在使用cv.glmnet,根据软件包的详细信息: 对glmnet进行k折交叉验证,生成图并返回lambda的值。 进行交叉验证cv.glmnet只是为了选择最佳的λ,还是作为更通用的交叉验证程序? 换句话说,我还需要执行另一个交叉验证步骤来“测试”我的模型吗? 我正在假设“是的”。 既然如此,我该如何交叉验证我的cv.glmnet模型? 我是否必须手动执行此caret功能,或者该功能对glmnet模型有用吗? 我是否使用交叉验证的两个同心“循环”?...我是否使用CV的“内循环” cv.glmnet来确定k倍交叉验证处理的“外部循环”的每k倍内的最佳lambda值? 如果我对已经进行交叉验证的cv.glmnet模型进行交叉验证,那么如何cv.glmnet在交叉验证的“外部循环”的每一折中将“最佳”模型(与“最佳” lambda值隔离)与每个模型隔离? 注:我定义“最好”的模式,与产生最小的1 SE内的MSE拉姆达关联的模型......这是$lambda.1se在cv.glmnet模型。 内容: 我正在尝试根据树木直径(“ D”),D ^ 2和种类(“ factor(SPEC)”)来预测树木年龄(“年龄”)。[结果方程式:Age ~ D + factor(SPEC) + D^2]。我有约5万行数据,但数据是纵向的(通过时间跟踪个体),由约65种组成。

3
为什么测试误差的CV估计会低估实际测试误差?
据我了解,测试错误的k倍交叉验证估计通常会低估实际测试错误。我很困惑为什么会这样。我明白了为什么训练误差通常低于测试误差的原因-因为您正在使用与估计误差相同的数据来训练模型!但这不是交叉验证的情况-在训练过程中,您特别忽略了测量误差的折线。 另外,说测试误差的交叉验证估计向下偏是否正确?

1
防止帕累托平滑重要性抽样(PSIS-LOO)失败
我最近开始使用帕累托平滑重要性抽样留一法交叉验证(PSIS-LOO),这些论文对此进行了介绍: Vehtari,A.&Gelman,A.(2015年)。帕累托平滑重要性抽样。arXiv预印本(链接)。 Vehtari,A.,Gelman,A.,&Gabry,J.(2016年)。使用留一法交叉验证和WAIC的实用贝叶斯模型评估。arXiv预印本(链接) 这代表了一种非常好的样本外模型评估方法,因为它允许通过一次MCMC运行就可以执行LOO-CV,并且据称比现有的信息标准(例如WAIC)更好。 k^ik^i\hat{k}_ik^i≳0.7k^i≳0.7\hat{k}_i \gtrsim 0.7 不幸的是,我发现在将该方法应用于问题时,对于大多数感兴趣的模型,我发现的很大一部分。毫不奇怪,一些报告的LOO对数似然显然是毫无意义的(与其他数据集相比)。作为双重检查,我执行了传统的(且费时的)10倍交叉验证,发现确实在上述情况下,PSIS-LOO给出了非常错误的结果(从正面来看,结果与10所有的模型的CV。作为记录,我使用的是Aki Vehtari的PSIS-LOO 的MATLAB实现。k^i≫0.7k^i≫0.7\hat{k}_i \gg 0.7k^i≪0.7k^i≪0.7\hat{k}_i \ll 0.7 也许我很倒霉,因为我目前应用此方法的第一个问题对PSIS-LOO来说“困难”,但是我怀疑这种情况可能相对普遍。对于像我这样的案例,Vhttary,Gelman&Gabry的论文简单地说: 即使PSIS估计具有有限的方差,当,用户也应考虑针对有问题的直接从进行采样,请使用倍交叉验证,或使用更可靠的模型。k^>0.7k^>0.7\hat{k} > 0.7p(θs|y−i)p(θs|y−i)p(\theta^s |y_{−i})iiikkk 这些是显而易见的但不是真正理想的解决方案,因为它们都很费时或需要额外的摆弄(我很欣赏MCMC 和模型评估都是摆弄,但越少越好)。 我们是否可以预先应用任何常规方法来尝试防止 PSIS-LOO失败?我有一些初步的想法,但我想知道人们是否已经采用了经验方法。

1
有哪些方法可以调整图形内核SVM超参数?
我有一些数据存在于图。顶点属于两个类别之一Ÿ 我 ∈ { - 1 ,1 },我很感兴趣,训练的SVM两个类之间进行区分。这样做的一个适当的内核是扩散核,其中,是拉普拉斯的和是调谐参数。G=(V,E)G=(V,E)G=(V,E)yi∈{−1,1}yi∈{−1,1}y_i\in\{-1,1\}K=exp(−βL),K=exp⁡(−βL),K=\exp(-\beta L),LLLGGGββ\beta 调整SVM需要选择超参数,因此我必须调整按照惯例,我们对这个问题使用交叉验证,但是在这里似乎不合适,因为从删除顶点改变整个图,甚至可能增加连接的组件的数量!如果连接的组件的数量发生变化,则某些顶点将变得无法与其他顶点联系,并且我们将面临与开始时非常不同的数据集。也就是说,我们不仅会丢失已删除的顶点,而且还会丢失关于图形中与该顶点相邻的所有其他顶点信息。θ=(β,C).θ=(β,C).\theta=(\beta, C).iiiGGGiiijjj 交叉验证的基本概念是,我们想近似模型在被提供新数据时的性能。在标准问题中,省略某些测试数据不会更改其余训练数据的值。但是,对于图形数据,不清楚模型在CV设置中看到“新”数据的含义。省略顶点或边可能会完全更改数据。例如,设想的图表这是一个 -star曲线图,其中一个顶点有边缘顶点,和所有其他顶点具有1个边缘。省略中心顶点以构造训练数据S=(VS,ES)S=(VS,ES)S=(V_S,E_S)kkkkkkkkkS∗S∗S^*将完全断开图形,并且内核矩阵将是对角的!但是当然可以在提供的训练数据上训练模型。尚不清楚的是,然后测试所得模型的样本外性能意味着什么。是否可以重新计算的内核矩阵,并提供该矩阵以进行预测?S∗S∗S^*SSS 或者,是否可以从整体上计算的内核矩阵开始,并根据需要省略行和列以产生用于估计SVM的内核矩阵?这提出了自己的概念性问题,因为在S中包含中心节点意味着每个顶点都可以从其他每个顶点到达,并且内核矩阵密集。这种包含是否意味着跨折存在信息泄漏,并使交叉验证输出偏斜?一方面,由于省略的中央节点使图相连,因此仍然存在有关省略的中央节点的数据。另一方面,我们对标签y一无所知SSSSSS yÿy ,因此我们可以从以这种方式执行CV得到合理无偏的样本外估计中感到满意。 如何针对此类问题选择超参数?简历不完美但可以接受,还是我们需要专门的方法?在我的上下文中,是否甚至可以进行超参数调整?

1
使用随机森林进行建模是否需要交叉验证?
据我所见,人们对此的看法往往有所不同。最佳实践肯定会规定使用交叉验证(尤其是将RF与同一数据集上的其他算法进行比较时)。另一方面,原始消息来源指出,在模型训练期间计算出OOB误差这一事实足以说明测试集的性能。甚至特雷弗·哈斯提(Trevor Hastie)在最近的一次对话中都说“随机森林提供免费的交叉验证”。直观上,如果在一个数据集上训练并尝试改进基于RF的模型,这对我来说很有意义。 您对此有何看法?

2
如何为小样本数据选择训练,交叉验证和测试集大小?
假设我的样本量较小,例如N = 100,并且有两个类别。如何为机器学习选择训练,交叉验证和测试集的大小? 我会直觉地选择 训练集大小为50 交叉验证集大小为25,并且 测试大小为25。 但这可能或多或少都有意义。我应该如何真正确定这些价值?我可以尝试其他选择吗(尽管我认为它不是那么可取……过度学习的可能性增加了)? 如果我上两节课以上怎么办?

1
与k倍CV相比,延期验证是否更好地近似了“获取新数据”?
我一直在重新思考几个星期前我对一个问题的回答 保持交叉验证可生成单个测试集,该测试集可重复用于演示。我们大家似乎都同意,这在许多方面都是不利的特征,因为通过随机性,一个被保留的集合可能变得没有代表性。此外,您可能最终以过度拟合训练数据的方式过度拟合测试数据。 但是,在我看来,保留样本的静态性质比“ k倍CV”更好地近似为“获取更多数据”,并且避免了跨折平均的问题。但是,我无法为这种感觉提供任何统计依据。我的直觉有逻辑吗? 例如,对于即将到来的项目,我要想到的是首先使用保持验证来构建和测试模型,然后在验证步骤中多次重绘保持集以显示我对预测误差的估计(测试集上的数据)对测试集中的采样误差具有鲁棒性。这是个坏主意吗?之前曾问过这个问题,但从未得到答案。

2
就模型的交叉验证预测误差而言,LASSO优于正向选择/反向消除
我使用以下方法从原始完整模型中获得了三个简化模型 前向选择 向后淘汰 L1惩罚技术(LASSO) 对于使用前向选择/后向消除得到的模型,我使用获得的预测误差的横验证估计CVlm在包DAAG提供R。对于通过LASSO选择的模型,我使用cv.glm。 LASSO的预测误差小于其他方法的预测误差。因此,通过LASSO获得的模型在预测能力和可变性方面似乎更好。这是一种经常发生的普遍现象,还是特定于问题的?如果这是普遍现象,那么理论上的依据是什么?

3
应该仅对训练数据(或所有数据)执行特征选择吗?
应该仅对训练数据(或所有数据)执行特征选择吗?我经历了一些讨论和论文,例如Guyon(2003)以及Singhi and Liu(2006),但仍然不确定正确的答案。 我的实验设置如下: 数据集:50位健康对照者和50位疾病患者(cca 200功能可能与疾病预测相关)。 任务是根据可用功能诊断疾病。 我要做的是 取整个数据集并执行特征选择(FS)。我仅保留选定的功能以进行进一步处理 拆分以测试和训练,使用火车数据和所选功能进行火车分类。然后,将分类器应用于测试数据(再次仅使用所选功能)。使用留一法验证。 获得分类精度 平均:重复1)-3)N次。(100)。N=50N=50N=50 我同意在整个数据集上进行FS会带来一些偏差,但是我认为在平均过程中它被“平均”了(步骤4)。那是对的吗?(精度方差)&lt;2%&lt;2%<2\% 1 Guyon,I.(2003),“变量和特征选择简介”,《机器学习研究杂志》,第1卷。3,第1157-1182页 2 Singhi,SK和Liu,H.(2006)“用于分类学习的特征子集选择偏差”,进行ICML '06的第23届国际机器学习会议论文集,第849-856页

1
比较泛化性能的分布
假设我有两种针对分类问题的学习方法和,并且通过诸如反复交叉验证或自举之类的方法来估计它们的泛化性能。从这个过程中,我得到了在这些重复中每种方法的得分和的分布(例如,每个模型的ROC AUC值的分布)。AAABBB PAPAP_APBPBP_B 从这些分布来看,可能是 但(即的预期泛化性能高于,但是此估计存在更多不确定性)。μA≥μBμA≥μB\mu_A \ge \mu_BσA≥σBσA≥σB\sigma_A \ge \sigma_BAAABBB 我认为这称为回归中的偏差方差困境。 我可以使用哪些数学方法来比较和并最终就使用哪种模型做出明智的决定?PAPAP_APBPBP_B 注意:为简单起见,我在这里指的是两种方法和,但我对可用于比较〜1000个学习方法的分数分布(例如来自网格搜索)的方法感兴趣,并最终使关于使用哪种模型的最终决定。AAABBB

1
如何在ARIMA模型的观察值48中加入创新的离群值?
我正在处理数据集。使用一些模型识别技术后,我得出了一个ARIMA(0,2,1)模型。 我使用R detectIO包TSA中的函数在对原始数据集进行第48次观察时检测到创新的离群值(IO)。 如何将这个离群值合并到模型中,以便将其用于预测?我不想使用ARIMAX模型,因为我可能无法根据R中的模型做出任何预测。还有其他方法可以做到吗? 以下是我的价值观: VALUE &lt;- scan() 4.6 4.5 4.4 4.5 4.4 4.6 4.7 4.6 4.7 4.7 4.7 5.0 5.0 4.9 5.1 5.0 5.4 5.6 5.8 6.1 6.1 6.5 6.8 7.3 7.8 8.3 8.7 9.0 9.4 9.5 9.5 9.6 9.8 10.0 9.9 9.9 9.8 9.8 9.9 9.9 9.6 9.4 …
10 r  time-series  arima  outliers  hypergeometric  fishers-exact  r  time-series  intraclass-correlation  r  logistic  glmm  clogit  mixed-model  spss  repeated-measures  ancova  machine-learning  python  scikit-learn  distributions  data-transformation  stochastic-processes  web  standard-deviation  r  machine-learning  spatial  similarities  spatio-temporal  binomial  sparse  poisson-process  r  regression  nonparametric  r  regression  logistic  simulation  power-analysis  r  svm  random-forest  anova  repeated-measures  manova  regression  statistical-significance  cross-validation  group-differences  model-comparison  r  spatial  model-evaluation  parallel-computing  generalized-least-squares  r  stata  fitting  mixture  hypothesis-testing  categorical-data  hypothesis-testing  anova  statistical-significance  repeated-measures  likert  wilcoxon-mann-whitney  boxplot  statistical-significance  confidence-interval  forecasting  prediction-interval  regression  categorical-data  stata  least-squares  experiment-design  skewness  reliability  cronbachs-alpha  r  regression  splines  maximum-likelihood  modeling  likelihood-ratio  profile-likelihood  nested-models 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.