2016 - 2024

感恩一路有你

什么是训练数据集 对数据集训练时,只对训练集进行训练还是都训练?

浏览量:1468 时间:2021-03-14 08:29:54 作者:admin

对数据集训练时,只对训练集进行训练还是都训练?

如果你想测试你自己的数据集,你需要把它分成训练集、验证集和测试集。

我们训练机器学习模型使用现有数据预测未知数据。我们通常把模型对未知数据的预测能力称为泛化能力。为了评价模型的泛化能力,通常将数据分为训练集和测试集。训练集用来训练模型,测试集用来评价模型的泛化能力。

这里有几点需要注意:

通常80%的数据集用作训练集,20%用作测试集;

通常我们需要在开始构建模型之前划分数据集,以防止数据窥探错误,也就是说,我们应该避免过多地了解测试集的样本特征,并且防止我们选择对测试集数据有帮助的模型,这将导致过度的结果,一般来说,我们在建立模型时需要对数据进行处理,包括一些数据清洗、数据特征缩放(标准化或规范化)。此时,我们只需要对训练集执行这些操作,然后将从训练集获得的参数应用到测试集,也就是说在工作流中,您不能使用在测试数据集上计算的任何结果。例如,我们得到的属性中可能缺少值,因为在这些操作之前,我们已经将数据集划分为训练集和测试集。通常的做法是通过计算属性值的中值来填充缺少的值。请注意,属性值的中值是由训练集中的数据计算的。当我们得到一个模型时,如果你想在模型的测试误差要被测试到近似泛化误差的时候,测试集中可能会有一些缺失的值。此时,由训练集计算的中值填充相应属性的缺失值。

用同一数据集训练神经网络,每次训练结果不一样,有时正确率很高,有时很低,为什么?

其实这个问题的实质是,如果我们用机器学习算法对数据集上的数据模型进行一次训练,保存模型,然后用同样的算法和同样的数据集以及数据排序对其进行再次训练,那么第一个模型和第二个模型是一样的吗?

这可能是因为神经网络用增益或权重的随机值初始化,然后每个模拟在训练阶段有不同的起点。如果您希望始终保持相同的初始权重,可以尝试为初始权重修复种子以消除问题。

如果我们深入研究这个问题,我们可以根据ml算法的“确定性”来对其进行分类。当从同一个数据集进行训练时:

一个是总是生成相同的模型,并且记录以相同的顺序呈现;

另一个是总是生成不同的模型,并且记录顺序不同。

在实践中,大多数是“不确定的”。模型变化的原因可能是机器学习算法本身存在随机游走、不同权值的随机初始化、不同分量的概率分布抽样来分配优化函数。

虽然模型的“不确定性”可能会对单个训练结果造成干扰,但我们也可以用“不确定性”来确认模型的稳定性,如决策树、支持向量机(SVM)、神经网络等,最终可以通过多次迭代来确认模型的稳定性。

如何寻找自己茅塞顿开的悟性?

如何找到自己的悟性。在我看来。要善于思考,善于反思,善于总结。从平时的处事能力,接受和理解事物的能力。一个精明的人,必须是能在最短的时间内抓住机遇,不会被事物的表象所迷惑,能和一个无所不知、无所不知的人站在当下、展望未来的人。精明就是要有四种能力:敏感、洞察力、逆向思维和远见。有见识的。就是要让我们认真体验人生,虚心做事,诚实做事,不断开拓进取,实现人生理想和抱负。世界上最成功的人必须是有最高理解力的人。

什么是训练数据集 yolo训练自己的数据集 maserati

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。