在机器学习中,你永远无法绕开数学符号 。
通常只要有一个代数项或者一个方程符号你看不懂,你就完全看不懂整个过程 。这种情况非常令人沮丧,尤其是对于成长中的机器学习初学者来说 。
如果你能理解一些基本的数学符号和相关的提示,你将在理解关于机器学习方法的论文或书籍的描述上前进一大步 。
在本教程中,您将学习机器学习技术描述中遇到的基本数学符号 。
学完整个教程,你会知道:
算术符号,包括乘法、指数、平方根和对数 。
以及序列符号的集合,包括索引、求和以及集合关系 。
当你看不懂数学符号时可以使用的5种应急方法
我们开始学习吧!
机器学习中的基本数学符号
教程概述
本教程分为七个部分,即:
1.无法理解数学符号的挫败感
2.算术符号
3.希腊字母
4.序列符号
5.符号集合
6.其他符号
7.更多帮助资源
无法理解数学符号的挫败感
在阅读机器学习算法的时候,你会碰到一些数学符号 。例如,这些符号可用于:
描述一个算法 。
描述数据的预处理 。
描述结果
描述测试工具
描述含义
你可能会在论文、课本、博文等地方看到这些描述 。相关的代数术语往往会给出完整的定义,但你还是会看到很多奇怪的数学符号 。我吃过很多次苦 。太让人沮丧了!
在本教程中,您将复习一些基本的数学符号,以帮助您理解机器学习方法的描述 。
算术符号
本节我们将重温一些你不熟悉的基础算术中的符号,以及一些毕业后可能会忘记的概念 。
简单的算术
你熟悉算术的基本符号 。例如:
加法:1 ^ 1 = 2
减法:2–1 = 1
乘法:2 x 2 = 4
除法:2/2 = 1
大多数数学运算都有相应的逆运算,进行相反的运算过程;比如减法是加法的逆,除法是乘法的逆 。
代数学
我们往往希望用更抽象的方式来描述操作过程,以区别于具体的数据或操作 。因此,代数的应用随处可见:即用大写和/或小写字母来表示数学符号系统中的一个项目或一个概念 。用希腊字母代替英文字母也很常见 。数学的每个领域可能都会有一些保留的字母,这些字母都会代表一个具体的东西 。然而,代数中的术语应该总是在描述中定义 。如果作者没有,那是他的问题,不是你的错 。
乘法符号
乘法是一种常见的符号,有几种记数法 。一般用小“ⅹ”或星号“*”表示乘法运算:
c = a x b
c = a * b
有时你也会看到一个点是用来表示乘法的,比如:
c = a . b
这个公式实际上与下面的公式具有相同的含义:
c = a x b
或者,您可能会看到运算符被省略,并且之前定义的代数术语之间没有符号或空格,例如:
c = ab
意思还是一样的 。
和指数平方根 。
指数是一个数的幂 。该符号被写成正常大小的质数(基数)和上标数(指数),例如:
2^3
该表达式的评估结果是2的三次连续乘法,或2的立方:
2 x 2 x 2 = 8
求一个数的幂,默认是求它的平方 。
2^2 = 2 x 2 = 4
平方运算的效果可以用平方根反过来 。在数学中,平方根是在平方根的数字上加一个根号 。这里,为了简单起见,直接用“sqrt()”函数表示 。
sqrt(4) = 2
在我们知道指数的结果4和指数的数字2的情况下,我们想计算出指数的底数 。实际上,根运算可以是任意个数的指数的逆运算,只是根符号的默认个数是2,相当于根符号前面加了一个下标的2 。当然,我们可以试着写正方体的逆运算,也就是发卡行符号:
2^3 = 8
3 sqrt(8) = 2
对数e
当我们找到10的整数次方时,我们通常称之为数量级 。
10^2 = 10 x 10或100
另一种颠倒这种运算的方法是求运算结果(100)以10为底的对数;如果用符号来表达,就写log10() 。
log10(100) = 2
这里我们知道了指数的结果和基数,但是要求指数的个数 。这使得我们可以轻松地在数量级上进行扩展 。另外,由于计算机中使用的是二进制数学,所以求以2为底的对数也是一种常见的运算 。例如:
2^6 = 64
log2(64) = 6
另一种很常见的对数是以自然底数E为底数的,E是专有符号,它代表一个特殊的数或者叫欧拉数的常数 。欧拉数是无限非循环小数,可以追溯到无限精度 。
e = 2.71828...
求e的幂称为自然指数函数:
e^2 = 7.38905...
求自然对数的运算是这个运算的逆运算,记为ln():
(7.38905)...) = 2
忽略更多的数学细节,自然指数和自然对数在数学上是非常有用的,因为它们可以用来抽象地描述某个系统的连续增长,比如复利这样的指数增长系统 。
希腊字母
数学中用希腊字母来表示变量、常数、函数等概念 。比如统计学,我们用小写希腊字母mu代表平均值,小写希腊字母sigma代表标准差 。在线性回归中,我们用小写字母β表示系数,以此类推 。学习所有希腊字母的大小写和发音会有很大的帮助 。
希腊字母 。
维基百科词条“数学、科学和工程中的希腊字母”是一个非常有用的指南(https://en.wikipedia.org/wiki/Greek _ letters _ used _ in _ mathematics,_ science,_ and _ engineering),因为它列出了每个希腊字母在数学和科学不同领域的常见用法 。
顺序符号
机器学习中的符号经常被用来描述序列操作 。系列可以是一列数据或一个代数项 。
指数
阅读顺序符号的关键是按顺序理解索引符号 。一般来说,序列的起点和终点都会在符号中定义,比如从1到N,其中N是序列的长度 。一个序列中的项目由下标如I、J和K来索引,就像数组的符号一样 。比如a_i是序列a中的第I个元素,如果序列是二维的,那么就需要两个索引;例如:b_{i,j}是序列b的第I行第j列的元素 。
顺序操作
我们还可以对一系列数字进行数学运算 。有两种运算是经常用到的,所以有专门的速记运算符来表示:累加和累加乘法 。
序列累积
数列的累加用大写希腊符号sigma表示,而累加的内容用变量名表示 。同时,开始明显低于∑符号(例如,i=1)并结束明显高于∑符号(例如,N)的索引 。
适马i = 1,n a_i
这是序列a的第一个元素到第n个元素的累加 。
序列乘法
数列的累积乘法用大写希腊字母pi表示 。累加范围的描述类似于序列累加,起始索引写在符号下面,结束索引写在符号上面 。
Pi i = 1,n a_i
这是序列a的第一个元素到第n个元素的累积乘法 。
符号的集合
集合是一组不同元素的整体 。在定义机器学习中的一些代数术语时,我们可能会遇到符号集合 。
数字收藏
你最常见的集合是数字集合 。例如,一些代数项定义在整数集或实数集中 。这些常见的数字包括:
所以自然数的集合:n
所有整数的集合:Z
所有实数的集合:R
当然,还有很多其他的几组数字 。可以参考维基百科的“特别集”词条 。我们在定义代数项时,往往指的是实值或实数,而不是浮点数 。浮点数实际上是计算机运算中的离散数 。
集合关系
在定义代数项时,我们经常会看到集合关系符号,看起来像一个大写的“E” 。
1阿·埃·尔
这意味着定义A属于R集,或者说A属于实数集 。同样,集合运算符也有很多;两种常见的集合运算符包括:
Union包含两个集合的元素:A U B 。
交集意味着只包含同时出现在两个集合中的元素:a 。
更多信息请参考维基百科中的“集合”词条:https://en.wikipedia.org/wiki/Set _(数学) 。
其他符号
在这一节中,我将列出一些其他常见的符号 。常见的情况是,我们会先抽象地定义一个方法,然后用单独的符号重新定义一个具体的实现 。例如,如果我们正在估计一个变量X,我们可以在X上添加一些符号来表示这些估计值,例如:
X条(X上方有一个水平条)
X-prime(x在右上角有一个小撇号)
X-hat(X上方有一条虚线)
同一个符号在不同的上下文中可能有不同的含义,如数学的子领域或不同的对象 。例如,|x|是一个容易混淆的符号,可以指:
| x |:x |:x得绝对值.
|x|:向量x的长度.
|x|:集合x的势.
本教程只提到基本的数学符号 。数学中有许多子学科与机器学习更相关,需要更详细地复习 。包括:
线性代数
统计数字
概率论
结石
可能会有一些多元分析和信息论 。
寻求数学符号帮助的5个技巧
本节将列出一些技巧,当你在机器学习中被数学符号折磨时可以使用 。
考虑作者 。
你正在阅读的论文或书籍中总有一个作者 。这位作者可能犯了错误,忽视了你,或者让你困惑,因为他们不明白自己在写什么 。暂时逃离符号的限制,再思考作者的目的 。他们想说明什么?也许你甚至可以通过电子邮件、推特、脸书、LinkedIn等联系作者 。并请他帮你解释清楚 。不用担心,大多数学者都希望别人能理解并利用好自己的研究成果 。
在维基百科上查一下
维基百科有一个符号列表,可以帮助你缩小符号含义的可能范围 。我建议你从这两个条目开始:
数学符号表(https://en . Wikipedia . org/wiki/List _ of _ mathematic _ symbols)
《数学、科学和工程中的希腊字母》(https://en.wikipedia.org/wiki/Greek _ letters _ used _ in _ mathematics,_ science,_ and _ engineering)
用代码简单描述一下 。
数学运算只是对数据的功能性处理 。把你读到的任何东西写成带有变量、for循环等的伪代码 。展示出来 。在这个过程中,您可能打算使用脚本语言来处理随机数组甚至Excel电子表格的数据 。
当你阅读并理解文章中的技术改进时,你用它编写的核心代码会取得更好的效果 。最后经过不断的完善,你会写出一个可以自己玩的小原型!直到我看到一个学者只用几行MATLAB代码和随机数据写出了一篇非常复杂的论文的核心代码,我才相信这个方法有效 。这让我很惊讶,因为我一直认为,机器学习系统必须完整地编写,用真实的数据运行,所以学习任何文章的唯一方法就是找到原始代码和数据 。但我真的错了 。不过话说回来,那个学者真的是天才 。
我一直在用这种方式学习机器学习,但我是用Python写新学技能的核心代码 。
试试换条路 。
我在了解新技术的时候有一个常用的招数,就是把其他所有引用包含这项技术的论文都找出来,看看别人是如何解读和解释这项新技术的,往往可以打消我在阅读原描述时的误解 。然而,这种方法并不总是有效的,相反,它会更加混乱,并引入更多的误导方法和新的符号 。但总的来说,这个方法还是有效的 。
网上求大神指点 。
说实话,网上有很多论坛,人们都愿意给别人讲解数学 。你可以把屏幕上困扰你的符号图剪掉,把出处和链接写清楚,然后和你的困惑一起贴在问答网站上 。建议使用以下两个门户网站:
https://math.stackexchange.com/
https://stats.stackexchange.com/
你有哪些理解数学符号的小技巧?请在评论区留言 。
推荐阅读
如果你想了解更多,这部分会告诉你更多的相关资源 。
第0.1节 。阅读数学,向量微积分,线性代数和微分形式,2009:http://www.math.cornell.edu/~hubbard/readingmath.pdf
数学的语言和语法,Timothy Gowers:http://assets . press . Princeton . edu/chapters/Gowers/Gowers _ I _ 2 . pdf
理解数学,指南,彼得·阿尔菲尔德:https://math.stackexchange.com/
摘要
在本教程中,您了解了在阅读机器学习相关技术时可能会遇到的基本数学符号 。具体来说,您学到了:
算术符号,包括乘法、指数、平方根和对数 。
以及符号的集合,包括索引、累加和集合关系 。
【log2表示什么意思 log2等于多少】当你理解数学符号有困难时,可以帮助你的5个技巧 。
推荐阅读
- 属马的最佳婚配 90年多少岁
- 杭州江南生活的自由精神向往! 江南生活
- 花椒油要怎么做
- 自由泳鼻子进水怎么办
- 克里米亚面积有多大
- 羕字具体怎么读
- 人参果吃硬的还是软的
- 老婆嫌我没本事怎么办 没钱老婆要离婚怎么办
- 带着独龙族的歌声勇往直前 阿普萨萨