加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长资讯 > 动态 > 正文

那些你不可不知的机器学习“民间智慧”

发布时间:2018-05-01 07:30:04 所属栏目:动态 来源:李佳惠
导读:【资讯】机器学习算法可以通过从例子中推广来弄清楚如何执行重要的任务。在手动编程的情况下,这通常是可行且成本有效。随着更多的数据变得可用,可以解决更多雄心勃勃的问题。因此,机器学习被广泛应用于计算机等领域。然而,开发成功的机器学习应用程序

  高维的一般问题是,我们来自三维世界的直觉通常不适用于高维空间。在高维度中,多元高斯分布的大部分质量并不接近平均值,而是在其周围越来越远的“壳”中;而高维度橙色的大部分是在皮肤中,而不是纸浆。如果恒定数量的例子在高维超立方体中均匀分布,那么超越某个维度,大多数例子更接近于超立方体的一个面,而不是最近邻。如果我们通过将它写入超立方体来近似超球面,那么在高维度下,超立方体的几乎所有体积都在超球面之外。这对于机器学习来说是个坏消息,一种类型的形状常常被另一种形状所逼近。

  建立二维或三维分类器很容易,我们可以通过视觉检查找出不同类别的例子之间的合理边界。但是在高维度上很难理解正在发生的事情。这反过来又使设计一个好的分类器变得困难。天真地说,人们可能会认为收集更多的功能从来不会受到伤害,因为在最坏的情况下,他们不会提供有关类的新信息。但事实上,维度的诅咒可能超过了他们的利益。

  6 - 理论上的保证不是他们所看到的那样

  机器学习论文充满了理论上的保证。最常见的类型是确保良好泛化所需的示例数量的界限。你应该怎样做到这些保证?首先,它们是可能的。归纳传统上与演绎相对照:在推论中你可以保证结论是正确的;在归纳中,所有投注都是关闭的。或者这是许多世纪的传统智慧。近几十年来的一个主要发展是认识到,事实上,我们可以对归纳的结果有所保证,特别是如果我们愿意为概率保证提供解决的话。

  我们必须小心这是什么意思。例如,如果你的学习者返回了一个与某个特定训练集一致的假设,那么这个假设就没有这么说。现在说的是,给定一个足够大的训练集,很有可能你的学习者要么返回一个推广的假设,要么找不到一致的假设。约束也没有说如何选择一个好的假设空间。它只告诉我们,如果假设空间包含真实的分类器,那么学习者输出一个不好的分类器的概率随着训练集的大小而减少。如果我们缩小假设空间,边界就会改善,但是包含真实分类器的机会也会缩小。

  那些你不可不知的机器学习“民间智慧”!

  另一种常见的理论保证类型是渐近的:给定无限的数据,保证学习者输出正确的分类器。这是令人放心的,但是由于其渐近的保证,选择一个学习者而不是另一个学习者会是一件轻率的事情。在实践中,我们很少处于渐近状态(也被称为“asymptopia”)。而且,由于上面讨论的偏差 - 方差权衡,如果学习者A比给定无限数据的学习者B好,则B往往比给定的有限数据好。

  理论保证在机器学习中的主要作用不是作为实际决策的标准,而是作为算法设计的理解和推动力量的来源。在这方面,他们相当有用。事实上,理论与实践的密切相互作用是机器学习多年来取得如此巨大进步的主要原因之一。但要注意:学习是一个复杂的现象,只是因为学习者有一个理论上的正当理由,而且在实际工作中并不意味着前者是后者的原因。

  7 - 特色工程是关键

  在一天结束的时候,会有一些机器学习项目成功,有些失败。是什么造成了差异?最容易的因素是使用的功能。如果你有许多独立的功能,每一个都和类相关联,学习很容易。另一方面,如果这个类是一个非常复杂的功能,你可能无法学习它。通常情况下,原始数据不是可以学习的形式,但是可以从中构建特征。这通常是机器学习项目中的大部分工作所在。它往往也是最有趣的部分之一,直觉,创造力和“黑色艺术”与技术性东西一样重要。

  初学者常常惊讶于机器学习项目中实际上机器学习的时间太少。但是,如果考虑收集数据、整合、清理和预处理以及在功能设计中可以进行多少尝试和错误,这是非常有意义的。另外,机器学习不是建立数据集和运行学习者的一次性过程,而是运行学习者、分析结果、修改数据和/或学习者并重复的迭代过程。学习通常是最快速的部分,但那是因为我们已经掌握了很好的技巧!特征工程更加困难,因为它是特定领域的,而学习者可以在很大程度上是通用的。但是,两者之间没有尖明确的边界,这也是最有用的学习者是促进知识整合的另一个原因。  那些你不可不知的机器学习“民间智慧”!

  8 - 更多数据能击败更聪明的算法

  在大多数计算机科学中,这两种主要的有限资源是时间和记忆。在机器学习中,还有第三个:训练数据。哪一个瓶颈已经从十年变为十年了,在八十年代,这往往是数据,在今天往往是时间。大量的数据是可用的,但没有足够的时间来处理它,所以它没有被使用。这导致了一个矛盾:即使原则上有更多的数据意味着可以学习更复杂的分类器,但实际上更简单的分类器被使用,因为复杂的分类器需要很长的时间学习。部分答案是想出快速学习复杂分类器的方法,而且在这方面的确有了显显著的进展。

  使用更聪明的算法的部分原因是有一个比你所期望的更小的回报,第一个近似,他们是一样的,当你认为表述与规则集和神经网络不同时,这是令人惊讶的。但事实上,命题规则很容易被编码为神经网络,其他表征之间也存在类似的关系。所有学习者本质上都是通过将附近的例子分组到同一个类来工作的,关键的区别在于“附近”的含义。在非均匀分布的数据下,学习者可以产生广泛不同的边界,同时在重要的区域(即具有大量训练示例的那些区域)中也做出相同的预测,大多数文本示例可能会出现)。这也有助于解释为什么强大的学习可能是不稳定的,但仍然准确。

  通常,首先尝试最简单的学习者(例如,逻辑回归之前的朴素贝叶斯,支持向量机之前的k-最近邻居)是值得的。更复杂的学习者是诱人的,但他们通常也更难使用,因为他们有更多的旋钮,你需要转向获得好的结果,因为他们的内部是更不透明的)。

  那些你不可不知的机器学习“民间智慧”!

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读