解决机器学习问题
已发表: 2017-11-01随着机器学习的迅猛发展,越来越多的数据科学家正专注于获得模拟现实世界实际应用的结果。 为此,他们依靠训练数据集来训练他们的模型并更好地“学习”。 完成此操作后,它会使用测试数据集传递未经训练的实际数据。 因此,机器学习训练数据集是使用训练数据集训练 MLP 的数据。
训练和测试数据集都将尝试与具有代表性的人口样本保持一致。 这确保了结果将普遍适用于该样本。 简而言之,这就是机器学习。

寻找免费选项?
如果您正在寻找一些有价值的免费数据库资源来构建您的训练数据集,那么以下选项对您来说可能是一个很好的起点:
- UCI-机器学习存储库
- Iris by UCI [它有 3 个类,每个类 50 个样本,总共 150 个数据点; 初学者的好资源]
- 卡格尔
- 开放数据集有助于让事物和机器人变得更聪明、更有用
- ML Bench by R
- 米亚斯
- 木兰
- PromptCloud 的 DataStock
构建机器学习训练数据集时要考虑哪些因素?
1.正确的数量
您需要评估并准备好有关数据量的这些基本问题的答案:
- 从数据库中获取的记录数
- 产生预期绩效结果所需的样本量
- 用于训练和测试的数据拆分或使用 k 折交叉验证等替代方法
2.拆分数据的方法
你需要数据来构建模型,你需要数据来测试模型。 应该有一种方法可以将数据集分成这两个部分。 您可以进行随机拆分或基于时间的拆分。 在后者中,一般的经验法则是旧数据用于训练,新数据用于测试。 一些数据集需要其他方法,例如分层抽样或整群抽样。 如果你真的不确定,做一个小试验来验证你的模型,然后全面推出它。
3.过去的历史
许多数据科学家过去已经解决了一些问题,并针对他们的特定建模需求提出了训练数据集。 处理应用机器学习问题不仅可以更容易地获得正确的数据集,而且可以确定预期的结果。
您可以查看存在与您当前问题类似的问题的研究,并获取数据以提高模型构建过程的效率。 如果您有幸在过去进行了大量类似的研究,您可以将它们平均用于您的建筑目的。

4. 领域专长
“Garbage In Garbage Out”理念对于机器学习的训练数据集极为有效。 机器学习算法将学习您提供的任何数据。 因此,如果作为输入提供的数据质量良好,那么开发的学习算法也将具有良好的质量。 通常,您提供的样本需要具备两个关键品质——独立性和相同分布。
您如何确定输入的内容是否质量好? 简单的。 让主题专家用训练有素的眼睛检查数据。 她/他将能够评估所使用的样本是否足够、样本是否均匀分布以及样本是否独立。
专家还可以帮助您以这样的方式设计数据,即在不损害覆盖范围和普遍适用性的基本原则的情况下获得更大的池。 她/他还可以帮助模拟您当前没有但希望用于训练机器学习程序的数据。
5.正确的数据转换
处理干净数据后,您可以根据机器学习训练目标对其进行转换。 领域专业知识和算法特性/功能可以帮助您确定要应用的正确类型的转换来增强训练数据集的能力。 特征工程的这一步骤有助于将数据转换为最适合特定类型分析的数据。 特征工程可以包括以下数据转换过程中的一个或多个。
一个。 缩放——通常,处理后的数据集将具有使用各种度量标准的属性,例如重量(千克或磅)、距离(公里或英里)或货币(美元或欧元)。 您将需要减少比例的变化以获得更好的结果。 这一步特征缩放将有助于更好地分析数据。
湾。 分解——在函数分解的帮助下,一个复杂的变量可以被分解成细粒度的组成部分。 这些单独的组成部分可能具有一些可以在整个机器学习构建过程中增强的固有属性或特征。 因此,分裂以达到这些特征很重要。 它有助于将“噪音”与我们真正感兴趣的元素或组件分开,以构建训练数据集。 贝叶斯网络方法试图沿其因果断层线拆分联合分布的方式是分解工作的典型示例。
C。 聚合——与分解完全相反的是聚合方法。 它将具有相似属性的多个变量组合成一个更大的实体。 对于某些机器学习数据集,这可能是构建数据集以解决特定问题的更明智的方式。 一个例子可以是如何跟踪汇总调查响应而不是查看单个响应,以通过机器学习解决特定问题。
识别开发中的算法类型
您可以选择线性或非线性算法。 了解您正在运行的算法类型,您将能够更好地评估构建训练数据集所需的数据类型和数量。 通常,非线性算法被认为更强大。 他们能够掌握并建立输入和输出特征之间非线性关系的连接。
就整体结构而言,这些非线性算法可能更灵活且非参数化(此类算法不仅可以计算出需要多少参数,还可以确定这些参数的值,以更好地解决特定的机器学习问题)。 由于它是非线性的,这意味着它可以显示出高度的方差,即算法的结果可能会根据用于训练它的数据而有所不同。
这也意味着非线性算法需要训练数据集中更多的数据量才能掌握被分析的不同实体之间的复杂联系和关系。 大多数知名企业都对这种算法感兴趣,这些算法随着越来越多的数据输入到他们的系统中而不断改进。
正确识别“如果”和“何时”需要大数据
当我们谈论构建训练数据集时,我们需要明智地评估是否需要大数据(非常大量的数据)。 如果是这样,那么我们应该在数据集创建的什么时候引入大数据。 除了成本密集之外,引入大数据还会显着影响构建数据集的上市时间。 但是,如果这是绝对不可避免的,那么您需要投入资源让大数据成为您训练数据集的一部分。
一个典型的例子是当您执行传统的预测建模时。 在这种情况下,您可能会达到收益递减点,其中收益与您输入的数据量不对应。 您可能需要更多的数据来克服这一障碍。 通过仔细评估您选择的模型和您手头的具体问题,您可以确定何时会到达这一点以及何时需要更大的数据量。
总结
构建训练数据集可以提高整个机器学习模型的质量。 借助这些因素,您可以确保构建高性能机器学习数据集,并从强大、有意义且准确的机器学习模型中获益,该模型已从如此出色的训练数据集中“学习”。
有兴趣分享任何其他可能影响机器学习训练数据集质量的主要因素吗? 请写在下面的评论中,让我们知道您的想法。
