强大的数学背景是 ML 的全部必要条件吗?

机器算法验证 机器学习 参考 数理统计
2022-01-31 17:35:55

我开始想提升自己的技能,我一直对机器学习着迷。然而,六年前,我决定攻读与计算机科学完全无关的学位,而不是追求这个。

我已经开发软件和应用程序大约 8 到 10 年了,所以我掌握得很好,但我似乎无法深入机器学习/概率/统计的数学方面。

我开始查看学习材料,在第一页上,它可能包含一些让我感到困惑的东西,并立即在我的学习中设置了障碍。

  • 强大的数学背景是 ML 的全部必要条件吗?在继续学习机器学习之前,我是否应该尝试填补我的数学空白?没有任何计算机科学背景的开发人员真的可以自学吗?

相关问题:

4个回答

斯坦福大学 (Ng)加州理工学院 (Abu-Mostafa)在 YouTube 上开设了机器学习课程。你看不到作业,但讲座不依赖于这些。我建议你先看那些,因为它们会帮助你找出你需要学习的数学。我相信 Andrew Ng 在 Coursera 上教授了一个非常相似的作业课程,Ng 帮助创建了该课程。

一个例外:如果我没记错的话,在斯坦福讲座的早期,Ng 做了一些涉及矩阵乘积迹导数的计算。这些是相当孤立的,所以如果您不遵循这些计算,请不要担心。我什至不知道什么课程会涵盖这些。

您确实希望熟悉概率、线性代数、线性规划和多变量微积分。但是,您需要的内容比许多关于这些科目的完整大学课程中包含的内容要少得多。

根据应用程序的类型,作为 ML 从业者,您不一定需要大量数学知识。

作为一名自学成才的程序员(约 15 岁)并且经常从大学辍学,没有太多数学(微积分 III)或统计学背景,我从机器学习/数据挖掘开始,有一些资源:

  • Berry 和 Linoff 的《掌握数据挖掘:客户关系管理的艺术与科学》一书

  • 同一作者的《数据挖掘技术》一书

  • R,特别是包party和nnet

我在一家支持营销和运营的非营利组织工作。尤其是一开始,我主要使用数据挖掘来处理直接邮件申诉。

后来我在 CSU 学习了线性代数、Andrew Ng 的机器学习、统计方法介绍 (STAT 301) 等。

对于您,我建议您从这两本书开始,Andrew Ng 的课程,并且根据您的应用程序,决策树(R 中的派对包)。

我认为这实际上是一个很好的问题,而且非常热门;不过,我不确定是否有答案。最近的一篇文章暗示数据科学很容易在线学习,从而引发了很多争议(请参阅此处)。然而,关于那篇文章中提到的大多数案例研究,值得注意的一点是它们来自精算或数学背景。

这是一个有趣的观点,因为它表明虽然 Coursera、Stanford 和 edX 等在线课程有助于教授所需的特定计算机科学技能,但可能需要一些数学背景才能理解你所应用的模型在做什么. 另一方面,同样有力的论据是,这些人一开始都具有分析思维,这既是他们从事定量学科工作的原因,也是他们轻松掌握机器学习并赢得比赛的原因。

我认为从根本上讲,这里存在一定程度的分析问题。虽然数学技能有时有助于理解您正在应用的算法的概率根源,但有一个相同的论点是,良好的软件工程技能可以通过允许您进行高级分析并将算法的各个部分组合在一起来增加同样多的东西去完成你的目标,即使你不完全理解他们为什么这样做一般来说,数据科学(以及通过关联进行的机器学习)正是因为这种广度而成为一个令人兴奋的领域——你可以是一个数据库专家并使用蛮力解决问题,或者是使用模拟的数学家,或者是利用精心设计的计算机科学家代码以最佳方式组合不同的算法和方法。

增加预测的所有方法都是好的,所以我想说学习一些数学可能是一个好主意,可以让你在该领域获得最大的成功机会。如果你想要一些好的起点,麻省理工学院有一门很棒的线性代数课程,有一些很好的计算应用程序,我觉得很容易理解。他们还有其他关于随机过程和多变量微积分的课程,这些课程也可能对建立您的知识感兴趣。

强大的数学背景是 ML 的全部必要条件吗?– 对 ML 概念化为统计的答案和一些推测 ;-)

大约在 1990 年,我希望计算机代数能有所帮助,我认为它是有帮助的,但它相当有限。但它确实有助于加快数学学习的速度(减少通过练习来培养操作技能或仅仅通过简单的练习就能勉强过关的需要)。我发现 Fred Szabo 的线性代数与 Mathematica 是一个很好的例子(但我已经学习了高级理论水平的线性代数课程。)

自 1988 年以来,我一直在工作(利用计算机密集型方法从统计学中“具体化”定理和原理——准确地说),以使答案没有或至少没有必要(对于统计学)。通过额外的数学技能和理解,人们总是能够更快、更普遍地理解。我想我已经开始接近了,但是人们需要一种可操作的概率生成模型和推理表示,它不仅对玩具问题有效且有用。

在继续学习机器学习之前,我是否应该尝试填补我的数学空白?

这是一项艰巨的努力——在 MHO 中,几乎所有了解统计学的人都是通过非常轻松地操纵标准尤其是不那么标准的概率生成模型的数学表示和推理的数学表征(数学统计博士学位的前 x%)来实现的。因此,不仅要掌握基础知识,还要真正熟悉数学。(顺便说一句,对我来说傅立叶理论是必不可少的。)

为什么这些表示很难(即使有很多数学)?

Gerd Gigerenzer 几乎已经确定,对于简单的疾病阳性/阴性给定测试阳性/阴性问题,使用 _natural 频率没有挑战”。来自链接问题的参考似乎很好地利用了http://www.autolab.org/tutorials/prob18.pdf

为什么这很难概括?

对于 k 次测试(重复和/或不同)– 2^k

对于采用 v 值的测试 – v^k

所以对于二进制未知 - 2 * v^k 样本路径概率

对于 p 多个二进制未知数 2^p * v^k

对于 p 多个有理未知数 Q^p * v^k

一个人很快转向具有可数和不可数无穷大的数学来解决这个问题,即使具有数学专业知识也会导致许多误解和看似悖论(例如 Borel 悖论?)

此外,还有线性到非线性的危险误解(例如,指定非信息性先验的隐藏危险Winbugs 和其他没有先验分布信息的 MCMC)以及相互作用和随机效应等。