[关闭]
@buoge 2017-09-22T11:32:30.000000Z 字数 3762 阅读 1595

机器学习数学基础问题

计算机系统


代数入门

https://cn.udacity.com/course/intro-algebra-review--ma004

首发推荐:网易云课堂:顶尖中文大学计算机专业课程体系
https://study.163.com/curricula/cs.htm


昨天看完第一节课后,好些概念公式不懂,其实很恐慌,怀疑自己是不是来错了地方但是经过今天早上自己为自己解惑,又淡定了好多:

数学是必要的么
数学在机器学习中扮演了重要的角色,但是绝对不是全部,甚至50%都没有。我曾经的一位老师曾经说过一句特别经典的话:我们做的是machine learning,不是math learning。机器学习中的数学远远没有我们想象的复杂,想要在工程中应用他们本来就是一个合格的工程师应该掌握的技能。因为现在的社会太浮躁,钱来的太容易,所以大家就习惯了用重复的劳动来获得稳定的收入。工科的学生一定在本科阶段学习过三门数学基础课,微积分、线性代数和概率统计。机器学习的数学80%就是里面的知识,剩下的20%包括了一些研究生课程如矩阵微积分、数值计算和优化问题,然而其用到的也只是辅助计算的工具,学习的成本并不是很高

数学很重要,但不必恐慌

http://www.jianshu.com/p/7956f4509ffe

整体的思路,学习的策略

但我整体想说的是,对于大多数只学过微积分线性代数+基本统计的人不大会有时间和精力说把上面这些一门一门学了才开始学ML,大多数时候都是慢慢去补的。比如上面有人提到Andrew Ng的coursera课程上会有一些hangouts。这是一个很好的比较快速掌握急切所需的东西的方面。毕竟上面每一门课都需要花很多时间去学。但是,如果你能真的好好学了之后,再回过头来把ML再学一遍,你收获一定会多的多!
作者:刘熙昶
链接:https://www.zhihu.com/question/36324957/answer/68133666
来源:知乎

数学很重要,但不必恐慌

http://www.jianshu.com/p/7956f4509ffe
http://www.jiqizhixin.com/article/2354
过去的几个月中,有几人联系我,诉说他们对尝试进入数据科学的世界,以及用机器学习的技术去探索统计规律并构建无可挑剔的数据驱动型产品的热忱。然而,我发现一些人实际上缺乏必要的数学直觉和知识框架去得到有用的结果。这便是我决定写这篇博文的主要原因。最近涌现出了很多易于使用的机器学习和深度学习的软件包,例如 scikit-learn, Weka, Tensorflow 等等。机器学习理论是统计学、概率学、计算机科学以及算法的交叉领域,是通过从数据中的迭代学习去发现能够被用来构建智能应用的隐藏知识。尽管机器学习和深度学习有着无限可能,然而为了更好地掌握算法的内部工作机理和得到较好的结果,对大多数这些技术有一个透彻的数学理解是必要的。

逻辑回归和神经网络的代价函数的计算方法

mathmachinelearning.png

为什么要重视数学?

机器学习中的数学是重要的,有很多原因,下面我将强调其中的一些:

  1. 选择正确的算法,包括考虑到精度、训练时间、模型复杂度、参数的数量和特征数量。

  2. 选择参数的设置和验证策略。

  3. 通过理解偏差和方差之间的 tradeoff 来识别欠拟合与过拟合。

  4. 估计正确的置信区间和不确定度。

你需要什么水平的数学?

当你尝试着去理解一个像机器学习(ML)一样的交叉学科的时候,主要问题是理解这些技术所需要的数学知识的量以及必要的水平。这个问题的答案是多维的,也会因个人的水平和兴趣而不同。关于机器学习的数学公式和理论进步正在研究之中,而且一些研究者正在研究更加先进的技术。下面我会说明我所认为的要成为一个机器学习科学家/工程师所需要的最低的数学水平以及每个数学概念的重要性。

  1. 线性代数:我的一个同事 Skyler Speakman 最近说过,「线性代数是 21 世纪的数学」,我完全赞同他的说法。在机器学习领域,线性代数无处不在。主成分分析(PCA)、奇异值分解(SVD)、矩阵的特征分解、LU 分解、QR 分解、对称矩阵、正交化和正交归一化、矩阵运算、投影、特征值和特征向量、向量空间和范数(Norms),这些都是理解机器学习中所使用的优化方法所需要的。令人惊奇的是现在有很多关于线性代数的在线资源。我一直说,由于大量的资源在互联网是可以获取的,因而传统的教室正在消失。我最喜欢的线性代数课程是由 MIT Courseware 提供的(Gilbert Strang 教授的讲授的课程):http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/

  2. 概率论和统计学:机器学习和统计学并不是迥然不同的领域。事实上,最近就有人将机器学习定义为「在机器上做统计」。机器学习需要的一些概率和统计理论分别是:组合、概率规则和公理、贝叶斯定理、随机变量、方差和期望、条件和联合分布、标准分布(伯努利、二项式、多项式、均匀和高斯)、时刻生成函数(Moment Generating Functions)、最大似然估计(MLE)、先验和后验、最大后验估计(MAP)和抽样方法。

  3. 多元微积分:一些必要的主题包括微分和积分、偏微分、向量值函数、方向梯度、海森、雅可比、拉普拉斯、拉格朗日分布。

  4. 算法和复杂优化:这对理解我们的机器学习算法的计算效率和可扩展性以及利用我们的数据集中稀疏性很重要。需要的知识有数据结构(二叉树、散列、堆、栈等)、动态规划、随机和子线性算法、图论、梯度/随机下降和原始对偶方法。

  5. 其他:这包括以上四个主要领域没有涵盖的数学主题。它们是实数和复数分析(集合和序列、拓扑学、度量空间、单值连续函数、极限)、信息论(熵和信息增益)、函数空间和流形学习。

一些用于学习机器学习所需的数学主题的 MOOC 和材料是(链接经过压缩):

可汗学院的线性代数(http://suo.im/fgMNX)、概率与统计(http://suo.im/CqwY9)、多元微积分(http://suo.im/xh6Zn)和优化(http://suo.im/1o2Axs

布朗大学 Philip Klein 的「编程矩阵:计算机科学应用中的线性代数(Coding the Matrix: Linear Algebra through Computer Science Applications)」:http://codingthematrix.com

得克萨斯大学的 Robert van de Geijn 在 edX 上的 Linear Algebra – Foundations to Frontiers:http://suo.im/hKRnW

戴维森学院 Tim Chartier 的新课程 Applications of Linear Algebra;第一部分:http://suo.im/48Vary,第二部分:http://suo.im/3Xm3Lh

Joseph Blitzstein 的 Harvard Stat 110 lectures:http://suo.im/2vhVmb

Larry Wasserman 的书《All of statistics: A Concise Course in Statistical Inference》,下载:http://suo.im/v9u7k

斯坦福大学的 Boyd 和 Vandenberghe 的关于凸优化的课程:http://suo.im/2wdQnf

Udacity 的 Introduction to Statistics 课程:http://suo.im/1enl1c

吴恩达授课的 Coursera/斯坦福大学的机器学习课程:http://suo.im/1eCvp9

这篇博文的主要目的是给出一些善意的关于数学在机器学中的重要性的建议,一些一些必需的数学主题以及掌握这些主题的一些有用的资源。然而,一些机器学习的痴迷者是数学新手,可能会发现这篇博客令人伤心(认真地说,我不是故意的)。对于初学者而言,你并不需要很多的数学知识就能够开始机器学习的研究。基本的吸纳觉条件是这篇博文所描述的数据分析,你可以在掌握更多的技术和算法的过程中学习数学。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注