问题标签 [overfitting-underfitting]

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.

0 投票
1 回答
95 浏览

python - CatBoost:我们是否过度拟合?

我们的团队目前正在使用 CatBoost 开发信用评分模型,我们目前的流程是...

  1. 按时间顺序对数据进行排序以进行超时采样,并将其拆分为训练集、有效集和测试集
  2. 执行特征工程
  3. 在train上执行特征选择和超参数调整(主要是学习率),使用valid作为提前停止的评估集
  4. 对 train 和 valid 的组合执行超参数调整,使用 test 作为提前停止的评估集
  5. 使用标准指标(RMSE、ROC AUC 等)评估第 4 步的结果

但是,我担心我们可能会过度拟合第 4 步中的测试集。

在第 4 步中,我们是否应该只在训练上重新拟合模型并在不进行调整的情况下有效(即,使用第 3 步中选择的特征和超参数)?

由于我们的超时采样方案,执行第 4 步的动机是根据更新的数据训练模型。

0 投票
1 回答
72 浏览

python - 改进 EfficientNet 的结果

晕那里,我还在python中挣扎。现在我将使用 EfficientNet 模型来检测棕榈油的成熟度。我正在使用 5852 张训练图片,分为 4 个班级(每班 1463 张)和 132 张测试图片(每班 33 张)。用 200 epoch 测试后,结果还差得远。我有什么解决方案可以改善结果吗?这是我的模型准确性和模型损失的结果。

模型精度 模型损失

这是我的代码

https://colab.research.google.com/drive/18AtIP7aOycHPDR84PuQ7iS8aYUdclZIe?usp=sharing

你的帮助对我来说意义重大。

0 投票
0 回答
46 浏览

tensorflow - 如何在 CNN 和 LSTM 架构中添加 dropout 来处理过拟​​合问题,TensorFlow

我的网络架构是 7 层 CNN 和 2 层 BiLSTM 的组合,当我训练我的模型时,它显示过拟合,解决这个问题的解决方案之一是架构中的 Dropout。我们如何在这个网络架构中添加 dropout。

训练模型的准确率和损失图为: 在此处输入图像描述

0 投票
0 回答
47 浏览

python - 当我在第一个 epoch 获得 99.97% 的验证召回率时,这意味着什么?

我正在训练一个二值图像分类模型。这是一个相对较大且不平衡的数据集 (4.5:1)。在训练期间,除了验证召回矩阵从 99.97% 开始并在第二个 epoch 下降之外,所有矩阵在第一个 epoch 似乎都还可以。我试图在网上查找原因;结果表明,当验证准确性最初很高时,过度拟合或没有模型学习。但是,就我而言,这是验证召回。我的验证召回在第一个时期开始过高然后下降的原因可能是什么?

0 投票
0 回答
23 浏览

r - 测试集和训练集过于相似的问题

在我给出的数据集中,自变量以 50 的间隔给出,如下所示。

在此处输入图像描述

因此,当我对线性回归的数据集执行训练测试拆分时,我获得了非常相似的训练集和测试集,如下所示:

在此处输入图像描述

我相信这具有相当于在测试集上进行训练的效果,这会产生误导性的结果。是不是说,测试集可能会获得很高的预测精度,但是我的模型将无法检测到过度拟合,因为过度拟合通常是通过训练集和测试集之间的较大差异来检测的?

此外,在我的建模中,相似的训练集和测试集会带来什么样的限制?

0 投票
1 回答
130 浏览

python - Python - Facebook Prophet - 模型欠拟合

我正在运行一个预言机模型来预测呼入电话量。我花了很多时间清理数据、运行对数刻度和超参数调整——这产生了“好的”MAPE(平均百分比误差)。

在这一点上我的问题是模型一直欠拟合。尤其是在本月的前 12 天 - 在本月的前 6 天更是如此。由于运营原因,这些天的通话量总是要高得多。随着交易量进入下个月的开始,它们也开始在月底附近开始建造。

实际是蓝点,预测是灰线。这只是一个月,但它代表了所有其他月份的每月季节性:

这

为简单起见,我将仅包含模型详细信息,并将所有数据清理过程排除在外。如果有帮助,我可以提供更多信息,但到目前为止我得到的反馈是,额外的细节只会让事情变得混乱。真正唯一重要的是,对构建模型的数据运行 boxcox 转换后的结果,以及对来自模型的数据进行反向 boxcox 后的结果:

总的来说,我想全面改善欠拟合的情况——尤其是在月初和月底。我尝试增加 changepoint_range 以放松模型,但结果并不明显。我也尝试增加“每月”季节性的prior_scale,但没有比上面的截图更好的结果。

我有点不知所措。有没有可以与 FaceBook Prophet 模型一起使用的建模技术来解决这个问题?有没有办法添加一个回归量,将特定的季节性分配给前 12 天和最后 7 天?我做了一些研究,不确定你是否可以和/或如何工作。

任何帮助将不胜感激。

作为更新,我尝试提升 change_point 范围和更改点先验比例,但没有任何影响。打算尝试减少训练数据量(目前使用 4 年)。

0 投票
0 回答
53 浏览

regression - 如何知道测试和训练 RMSE 之间的差异是否显着,说它的过度拟合/欠拟合

我试图根据测试和训练错误的 RMSE 值来确定模型是否过拟合/欠拟合。

在训练数据上,RMSE 为 0.283

在测试数据上,RMSE 为 0.758

由于 RMSE(test) > RMSE(train),我想得出模型过度拟合的结论,但这种差异是否足以得出结论?

这是一个随机森林回归模型,Y(因变量)值在范围内(2-7)

0 投票
1 回答
50 浏览

python - 如何优化预训练的 tensorflow CNN 模型以减少过拟合并提高假人脸检测的整体准确度

以上是我的 python 代码,其中我试图将层添加到预训练的 VGG19 模型中。我有一个真实面孔和虚假面孔的数据集,这是一个分类问题。我已经对所有图像的像素值(0 到 1 之间)进行了标准化,我使用 80% 作为训练数据,20% 作为验证数据。我目前在验证上的准确度为 95-96%,但在我的测试集上,我的准确度只有 91-92% 左右。我是 DL 新手,仍在学习如何预处理人脸图像和构建有效模型。如果您在我的 VGG19 实现中发现任何异常,请告诉我。我也使用了图像增强,但它并没有被证明是有用的。请让我知道如何使这个问题变得更好,因为我是 SO 新手。另外,数据集是机密的,所以我不能分享。对不起!

0 投票
0 回答
26 浏览

machine-learning - 在确定决策树回归中的最小叶大小时是否有最佳实践?

我正在构建一个决策树回归器。我的样本量约为 23K,我正在考虑叶子中的最小观察数应该是多少,以避免过度拟合。我正在研究 SAS Miner,它会自动构建默认值为 5 的树。但我不确定这是一个很好的阈值。我正在考虑是否将最小叶子大小设置为 50 或 100。我构建了不同的树并比较了它们,但它们并没有给我令人满意的结果。我想知道是否有最佳实践或常用的比率。

0 投票
1 回答
50 浏览

machine-learning - 是否有考虑偏差和方差的损失函数?

我试图更多地了解偏差和方差。

我想知道是否存在考虑偏差和方差的损失函数。
据我所知,高偏差会导致欠拟合,而高方差会导致过拟合。 在此处输入图像描述

来自这里的图像

如果我们可以考虑损失中的偏差和方差,它可能是这样的,bias(x) + variance(x) + some_other_loss(x). 我好奇的观点分为两部分。

  1. 是否有考虑偏差和方差的损失函数?
  2. 如果我们通常使用的损失已经考虑了偏差和方差,我如何在分数中分别衡量偏差和方差?

我认为这种问题可能是一个基本的数学问题。如果您对此有任何提示,我将不胜感激。

感谢您阅读我的奇怪问题。


写完问题后,我意识到正则化是减少方差的方法之一。那么,3)这是衡量分数偏差的方法吗?

再次感谢你。


2022 年 1 月 16 日更新

我搜索了一下并回答了自己。如有理解错误,欢迎下方评论。

      1. Bais 由训练期间的损失值表示,因此我们不需要额外的偏差损失函数。

但是对于方差,没有办法打分,因为如果我们想测量它,我们应该得到训练损失和看不见的数据损失。但是一旦我们使用看不见的数据作为训练损失,看不见的数据就是看得见的数据。因此,就模型而言,这将不再是看不见的数据。据我所知,没有办法测量训练损失的方差。

我希望其他人可以得到帮助,如果你有,请评论你的想法。