2016 - 2024

感恩一路有你

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

浏览量:2227 时间:2021-03-16 13:33:48 作者:admin

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

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

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

这里有几点需要注意:

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

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

人工智能这么火,数据挖掘和机器学习有什么区别?

工作之后,我知道的第一个概念是数据挖掘,而不是机器学习。因此,我认为数据挖掘的概念比较广泛,属于工程应用范畴。五年前,我们公司谈论数据挖掘并举办了这样的比赛。掌握了数据挖掘的应用软件和标准流程,如SAS、Clementine等数据挖掘平台。这些平台大多基于图形化操作,应用门槛较低。直到最近两年,我们才开始谈论机器学习、深度学习和人工智能。根据我的工作经验,数据挖掘是一个流行的概念。所有的业务部门都知道这个概念,而机器学习属于专业化。现在业务部门仍然不知道什么是机器学习。事实上,很难严格区分两者的关系。如果你看看最权威的数据挖掘和机器学习教材,你会发现其中大部分都是重复的。因为他们是两个名字,他们的重点应该是不同的。我的理解是,数据挖掘的后端与机器学习的前端重复,机器学习的后端与深度学习的前端重复。数据挖掘的前端是数据的收集、清理和处理,与大数据相关,涉及到数据仓库,而机器学习并不关心这些。也就是说,要为机器学习提前准备好数据的原材料。机器学习更加关注学习问题,努力学习知识,像人类一样理解世界。它们最大的区别在于:数据挖掘关注数据中的规则和知识,而不关心数据为什么产生这些规则和知识,也就是说,你只看到表象,却不知道本质原因。相反,机器学习更关注学习数据的生成机制,即数据是从什么概率模型生成的。有时机器学习也被称为统计学习,这就是原因。当数据生成机制出现时,数据中的规则将被自然地知道。正是因为机器学习注重数据生成机制的学习,产生了大量的研究内容,发展了核机器、极大似然估计、最大熵模型、最大后验估计、期望最大化算法、高斯过程、概率图模型等,变分推理和其他工具。数据挖掘教科书通常没有这些高级内容。

传统的机器学习一般对数据生成机制做一些先验假设,比如假设数据是高斯分布生成的,然后学习高斯分布的参数。此外,如果没有这样的假设,应该怎么做?一般采用非参数密度估计技术,如核估计、近年来流行的与深度学习相结合的方法,如生成对抗网络、变分自编码等。

什么是训练数据集 训练数据集和测试数据集 图像分类数据集的制作

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