不知道如何开始机器学习?这有份初学者指南!
雷锋网按:本文为雷锋字幕组编译的技术博客,原标题Math, Stats and NLP for Machine Learning: As Fast As Possible,作者为Souman Roy。
翻译 | 廖颖 龙珂宇 Noddleslee J叔 整理 | 凡江
机器学习: 引言
听过人们谈论过机器学习,但对它的概念却是一知半解?
想要从零开始机器学习,却被网络上的海量资源冲昏头脑?
不用担心,我们给你们提供了机器学习从0到1系列,这个系列可以让你从入门到精通。
现在就开始学习吧!
· · ·
这份指南是为了那些对机器学习感兴趣,但不知如何开始的朋友们准备的。我想大多厌倦在网上搜索大量资料的人都会有挫败感,也放弃了有人能指引他们如何入门的希望。
这个系列的目标,就是教会你们从初学者的角度,正确学习机器学习。
· · ·
为什么说数学是必须的?
机器学习建立在一些数学的基础课程上的, 比如微积分,线性代数,概率论,统计学和最优化 。这篇文章旨在帮助你们学习一些基本概念,并提供一个可在 Jupiter Notebook 上使用 python 程序设计语言的可操作方法。
第1步 : 线性代数
线性代数是在计算机里设计优化算法的一种方式 ——可以解决 线性系统约束 问题。
线性代数中你需要了解的概念:
#1 矩阵的秩;
#2 矩阵向量积;
#3 矩阵的列空间和零空间;
#4 特征值和特征向量;
#5 矩阵的奇异值分解;
这是一个了解线性代数概念的速查表:
来源: https://minireference.com/static/tutorials/linear_algebra_in_4_pages.pdf
第2步 :概率论和数理统计
这一数学分支是用来解决 随机分布量 问题的。
概率论与数理统计中你需要了解的概念:
概率论:
#1 计数方法和组合方法;
#2 贝叶斯理论;
#3 随机变量;
#4 期望;
#5 方差;
#6 条件分布和联合分布;
#7 矩量母函数;
#8 指数型分布族;
数理统计:
#1 最大似然估计;
#2 最大后验概率;
#3 先验概率和后验概率;
#4 抽查法;
#5 吉布斯现象;
#6 平均数,众数,中位数,方差;
这是一个了解概率论和数理统计概念的速查表 :
来源: https://static1.squarespace.com/static/54bf3241e4b0f0d81bf7ff36/t/55e9494fe4b011aed10e48e5/1441352015658/probability_cheatsheet.pdf
来源: http://web.mit.edu/~csvoss/Public/usabo/stats_handout.pdf
第3步 :多元微积分
经典微积分研究变量和变化率之间的关系。但在机器学习中,我们主要使用微分运算来求解函数的极值,使用积分运算来求解概率模型。
多元微积分中你需要掌握的概念
#1 向量值函数
#2 偏导函数
#3 梯度
#4 方向梯度
#5 黑塞算子
#6 雅各比算子
#7 拉普拉斯算子(低量算子)
#8 拉格朗日乘子
来源: http://tutorial.math.lamar.edu/getfile.aspx?file=B,41,N
第4步:信息论入门
信息论是应用数学的一个分支,它关注如何“度量“信息。
信息论中你需要掌握的概念:
#1 熵
#2 互信息
#3 信息增益
#4 KL散度(相对熵)
来源: http://tuvalu.santafe.edu/~simon/cheat_sheet_info.pdf
第5步:NLP(自然语言处理)
自然语言出来指的是利用软件自动地处理注入讲话和文本的技术。
做为对文本数据感兴趣的机器学习实践者,我们关心自然语言领域的工具和方法。
广义上,利用计算机处理的任何自然语言,均视为自然语言处理,或缩写为NLP。一个极端的理解比如说,可以简单地通过统计词频来比较不同作者的写作风格。另一个极端理解是,NLP应该包括理解完整的人类话语,至少某种程度给予有意义的回应。
— 第9页, 利用python进行自然语言处理 ,2009。
自然语言处理(NLP)指人类语言的一系列自动处理过程的集合名词。它既包含处理人类输出的文本,也包含输出人类可以看的文本。
— 第18页, 利用神经网络进行自然语言处理 , 2017。
语言学的目标是可以将我们周围所能大量观察到的对话、文章文本和其他媒介特征化并对其进行解释。这里既包括研究人类认知,产生和理解语言的能力,也包含理解语言表达方式和客观世界的关系,还包含理解不同语言的语言结构。
— 第3页, 统计自然语言处理 ,1999。
这些是必备的数学、统计自然语言处理知识。我的建议是如果你想深入探索机器学习,你至少需要掌握提到的一些概念。
· · ·
你过去可能想知道机器学习到底用到了哪些数学知识,这篇文章算是给你介绍了机器学习(AI)的起步阶段所需的一些数学概念。下章我会讨论如何把数学概念落实到用Python编程中去,为此,也会对Python这门编程语言及其生态系统作介绍,敬请期待吧!
· · ·
更多文章,关注雷锋网 (公众号:雷锋网) 雷锋网雷锋网
添加雷锋字幕组微信号(leiphonefansub)为好友
备注「我要加入」,To be an AI Volunteer !
。