2020-12-28 11:31:33 阅读(171)
不知道大家有没有听说过,数据科学现在特别疯狂,到处都是课程、博客、培训机构。每次看到这些东西,我发现很多都集中在几个特定的算法上。当然,理解逻辑回归和深度学习是很酷的,但一旦你开始真正使用实际数据来做一些事情,你会发现还有其他重要的事情,甚至更重要。我不会说这些课程不好。我在大学里教了很多年机器学习。这些课程总是专注于几种特定的算法。您学习了支持向量机,高斯混合模型,k-means聚类,等等,但是在做研究所论文的时候,你学会了如何正确使用数据吗?那么,“正确”到底是什么意思呢?不是用结果来评价吗?不是只要我预测准确率高就完成了吗?当然,这是对的,但关键是要确保你在特征数据方面取得了良好的表现。就像我在别处写的,当你看到训练数据的结果时,你很容易被愚弄,认为你的方法非常有效。因此,这里有几个主要的想法,你在书中很难找到。1、评估是关键数据分析/机器学习/数据科学(或你想叫什么)的主要目的是构建一个能在未来数据中表现良好的系统。由于监督学习和非监督学习的区别,很难理解这意味着什么。但在任何情况下,你都会收集一个基于这个数据集的数据集来设计你的方法。但最终,您需要将您的方法应用到未来的数据中,您希望该方法给出的结果与您使用原始数据集的结果相似。初学者经常犯错误,只看可用数据的表现,假设未来数据也可以work。不幸的是,这只是少数情况。现在,我们只讨论监督学习,任务是基于你的输入来预测一些输出,比如分类垃圾邮件。假如你只考虑训练数据,机器只要记住一切,就能得到完美的预测,这很容易。其实对人来说也比较常见。当你学习外语并记住单词时,你会在测试时打乱所有单词的顺序。否则,你的大脑只记住基于顺序的单词。机器有大量的存储能力,很容易记住大量的数据。这将导致过拟合,缺乏泛化。因此,正确的方法是划分你的数据集,模拟你已经有了未来的数据,在一部分训练,在另一部分预测。通常训练集比较大,这个过程会重复几次,得到几个结果,看看我们的方法是否稳定。这一过程称为交叉验证。图1。模拟未来数据。在分割了数据集之后,仍然会有问题,特别是数据是非静态的,也就是说,数据的潜在分布随时会发生变化,这在实际场景中经常发生,销售数据在1月和6月会有很大的不同。或者,数据点之间会有很大的相关性,这意味着如果你知道一个数据点,你也知道很多其他的数据点。例如,如果你使用股票的价格,你通常在相邻的两天内不会跳得很厉害,所以在随机分割训练集和测试集时,可能会导致训练数据集与测试数据集的高度相关。但当这些发生时,你会得到一个过于优化的数字,你的方法在未来的数据中不会工作得很好。在最糟糕的情况下,你终于说服人们试试你的东西,结果不工作,所以学习如何正确评估是关键!2、学习一种新的特征提取方法是非常令人兴奋的,但事实是,大多数复杂的方法实际上都是相似的,真正的区别在于原始数据是如何转化为特征来学习的。现在的学习方法很强,很容易处理成千上万的特征,成千上万的数据,但最终,这些方法都是愚蠢的。尤其是线性模型(如逻辑回归、线性支持向量机),基本上就像你的计算器。这些方法非常适合处理具有明确信息和使用足够数据的特征,但如果没有足够的信息或输入特征的线性组合,这些方法将无能为力。你可以大大减少数据量,你需要找到正确的特征,假设,如果你删除了所有的特征,就没有什么可学的了,对吧?这就是特征提取有多强大!这意味着两件事:首先,你应该确保你精通类似的方法之一,但你可以一直使用它。所以,你不需要逻辑回归和线性SVMS,你可以选择一个。这也包括了解哪些方法是相似的,这些模型的关键点在哪里。深度学习有点不同,但线性模型大致相同,但训练时间、方案稀疏等可能不同,但对于大多数案例,应该能够得到相同的预测。第二,你需要学习所有的特色工程。不幸的是,这是艺术,书基本上不会说,因为没有理论上的东西。归一化很有用。有时,特征需要对数。有时你可以排除一些自由,也就是说,一种去除数据可以改变的方式,这与预测任务无关,你可以显著减少训练中的数据量。有时很容易发现这些变化。比如你在做手写字符识别,很明显颜色没有鸟用,你已经有了前景和背景。我知道书中描述方法的时候经常会说得很厉害。只要你把数据扔进去,剩下的就给你做。从理论上讲,使用无限数据是可以的,但实际情况是数据和时间是有限的。显然,找到信息量的特征是本质。3、在大数据时代,选择模型需要最多的时间,而不是数据集的大小。没有必要过分强调这些事情。大多数数据集可以完全存储在系统内存中。你的方法不会花太多时间运行数据。但您将花费大量时间进行特征提取、交叉验证、比较不同的特征提取方案和参数。对于模型选择,您经历了许多参数组合,复制相同的数据,同时运行,并评估结果。这个问题是组合的探索。例如,您只有两个参数,训练模型只需1分钟,然后在保留的数据集中评估性能。如果你对每个参数有5个候选值,你可以做50%的折扣交叉验证,这意味着你需要跑125次才能找到哪组参数最好,你需要等1个小时,而不是1分钟。好消息是并行化,因为训练完全不相关,可以同时跑。有一个坏消息主要针对大数据的学生。因为所有这些都意味着对实现可扩展性的复杂需求很少,在大多数情况下,内存中并行运行非分布式算法也很有帮助。最后,大量的数据并不意味着需要这么多的数据,而是背后学习问题的复杂性。如果你能用一个简单的模型来完成它,你就不需要那么多的数据。在这种情况下,可以随机选择数据子集。正如我上面所说,有时,正确的特征表明它可以极大地帮助减少所需的数据数量。综上所述,知道如何正确评估是很有帮助的,可以降低未来无法使用数据的风险。提取正确的特征可能是最有效的。最后,并非所有时候都需要大数据,尽管分布式计算可以帮助我们减少训练时间。
以上就是关于正确的使用数据,“正确”到底是什么意思?的相关介绍,更多正确的使用数据,“正确”到底是什么意思?相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对正确的使用数据,“正确”到底是什么意思?有更深的了解和认识。
推荐阅读
最新文章
猜你喜欢以下内容:
一 客户顾问-张三 一