A. 《统计思维:程序员数学之概率统计程序员数学之概率统计》epub下载在线阅读,求百度网盘云资源
《统计思维(第2版)》([美] Allen B. Downey)电子书网盘下载免费在线阅读
资源链接:
链接:
书名:统计思维(第2版)
作者:[美] Allen B. Downey
译者:金迎
豆瓣评分:8.0
出版社:人民邮电出版社
出版年份:2015-9
页数:204
内容简介:
现实工作中,人们常常需要用数据说话。可是,数据自己不会说话,需要人对它进行分析和挖掘才能找到有价值的信息。概率统计是数据分析的通用语言,是大数据时代预测未来的根基。如果你有编程背景,就能以概率和统计学为工具,将数据转化为有用的信息和知识,让数据说话。本书介绍了如何借助计算而非数学方法,使用Python语言对数据进行统计分析。
通过书中有趣的案例,你可以学到探索性数据分析的整个过程,从数据收集和生成统计量,到发现模式和检验假设。你还将探索概率分布、概率法则、可视化技术,以及其他许多工具和概念。
这一版内容较第1版有很多改动,并且新增了回归、时间序列分析、生存分析和分析方法章节,以丰富你的知识。
作者简介:
Allen B. Downey
是富兰克林欧林工程学院计算机科学教授,曾执教于韦尔斯利学院、科尔比学院和加州大学伯克利分校。在加州大学伯克利分校获得计算机科学博士学位。Downey已出版十余本技术书,包括Think Python、Think Bayes、Think Complexity等。
B. 《程序员的数学2概率统计》pdf下载在线阅读,求百度网盘云资源
《程序员的数学2》(平冈和幸)电子书网盘下载免费在线阅读
资源链接:
链接: https://pan..com/s/1RKocmK4X2HXuKfoIg89jFQ
书名:程序员的数学2
作者:平冈和幸
译者:陈筱烟
豆瓣评分:8.4
出版社:人民邮电出版社
出版年份:2015-8-1
页数:405
内容简介:
本书沿袭《程序员的数学》平易近人的风格,用通俗的语言和具体的图表深入讲解程序员必须掌握的各类概率统计知识,例证丰富,讲解明晰,且提供了大量扩展内容,引导读者进一步深入学习。
本书涉及随机变量、贝叶斯公式、离散值和连续值的概率分布、协方差矩阵、多元正态分布、估计与检验理论、伪随机数以及概率论的各类应用,适合程序设计人员与数学爱好者阅读,也可作为高中或大学非数学专业学生的概率论入门读物。
作者简介:
作者简介:
平冈和幸
数理工程学博士,对机器学习兴趣浓厚。喜欢Ruby,热爱Scheme。最近被Common Lisp吸引,正在潜心研究。
堀玄
数理工程学博士,主要从事脑科学与信号处理领域的研究。喜欢Ruby、JavaScript、PostScript等语言。最近正在研究基于统计学理论的语言处理。
译者简介:
陈筱烟
毕业于复旦大学计算机科学与技术系。从大学时期开始接触Java、JavaScript程序开发,目前对Web应用及智能手机应用开发很感兴趣。译作有《JavaScript编程全解》《App,这样设计才好卖》《两周自制脚本语言》等。
C. 谁有《统计思维:程序员数学之概率统计》电子书百度网盘资源下载
统计思维:程序员数学之概率统计链接:
D. 《程序员的算法趣题》pdf下载在线阅读全文,求百度网盘云资源
《程序员的算法趣题》([ 日] 增井敏克)电子书网盘下载免费在线阅读
链接:
书名:程序员的算法趣题
作者:[ 日] 增井敏克
译者:绝云
豆瓣评分:7.6
出版社:人民邮电出版社
出版年份:2017-7
页数:312
内容简介:
本书是一本解谜式的趣味算法书,从实际应用出发,通过趣味谜题的解谜过程,引导读者在愉悦中提升思维能力、掌握算法精髓。此外,本书作者在谜题解答上,通过算法的关键原理讲解,从思维细节入手,发掘启发性算法新解,并辅以Ruby、JavaScript等不同语言编写的源代码示例,使读者在算法思维与编程实践的分合之间,切实提高编程能力。 本书适合已经学习过排序、搜索等知名算法,并想要学习更多有趣算法以提升编程技巧、拓展程序设计思路的程序员,以及对挑战算法问题感兴趣、爱好解谜的程序员阅读。
作者简介:
增井敏克
1979年生于奈良,毕业于大阪府立大学研究生院。增井IT工程师事务所代表、注册工程师(信息工程学方向)。从事旨在“将商务、数学和IT结合以正确、高效使用计算机”的技能提升指导、软件开发以及信息安全咨询等工作。掌握C/C++、C#、Java、PHP和Ruby等20多种编程语言。着作有《在家就能学会的安全基础》等。目前在面向IT工程师提供业务技能评估服务的平台CodeIQ上负责人气栏目“每周算法”的出题和评审工作。
绝云
毕业于清华软院。曾在日本创意公司KAYAC从事即时通信软件和手游的开发工作,现供职于蚂蚁金服,专攻数据可视化方向。译作有《图解简单算法》《自制编译器》等,曾参与《像外行一样思考,像专家一样实践(修订版)》的审校。
E. 《统计思维:程序员数学之概率统计程序员数学之概率统计》pdf下载在线阅读全文,求百度网盘云资源
《统计思维》(Allen B.Downey)电子书网盘下载免费在线阅读
链接:
书名:统计思维
作者:Allen B.Downey
译者:张建锋
豆瓣评分:6.7
出版社:人民邮电出版社
出版年份:2013-5
页数:160
内容简介:
代码跑出来的概率统计问题;
程序员的概率统计开心辞典;
开放数据集,全代码攻略。
现实工作中,人们常被要求用数据说话。可是,数据自己是不能说话的,只有对它进行可靠分析和深入挖掘才能找到有价值的信息。概率统计是数据分析的通用语言,是大数据时代预测未来的根基。
站在时代浪尖上的程序员只有具备统计思维才能掌握数据分析的必杀技。本书正是一本概率统计方面的入门图书,但视角极为独特,折射出大数据浪潮的别样风景。作者将基本的概率统计知识融入Python编程,告诉你如何借助编写程序,用计算而非数学的方式实现统计分析。一个趣味实例贯穿全书,生动地讲解了数据分析的全过程:从采集数据和生成统计量,到识别模式和检验假设。一册在手,让你轻松掌握分布、概率论、可视化以及其他工具和概念。
F. 《程序员的数学》pdf下载在线阅读,求百度网盘云资源
《程序员的数学(第2版)》([日]结城浩)电子书网盘下载免费在线阅读
链接:
书名:程序员的数学(第2版)
作者:[日]结城浩
译者:管杰
豆瓣评分:8.7
出版社:人民邮电出版社
出版年份:2020-4-1
页数:262
内容简介:
《程序员的数学 第2版》面向程序员介绍了编程中常用的数学知识,借以培养初级程序员的数学思维。读者无须精通编程,也无须精通数学,只要具备四则运算和乘方等基础知识,即可阅读本书。
《程序员的数学 第2版》讲解了二进制计数法、逻辑、余数、排列组合、递归、指数爆炸、不可解问题等许多与编程密切相关的数学方法,分析了哥尼斯堡七桥问题、高斯求和、汉诺塔、斐波那契数列等经典问题和算法。引导读者深入理解编程中的数学方法和思路。
《程序员的数学 第2版》新增一个附录来介绍机器学习的基础知识,内容涉及感知器、损失函数、梯度下降法和神经网络,旨在带领读者走进机器学习的世界。
作者简介:
结城浩(作者)
生于1963年,日本知名技术作家和程序员。在编程语言、设计模式、数学、加密技术等领域,编写了很多深受欢迎的入门书。代表作有《数学女孩》系列、《程序员的数学》《图解密码技术》等。
管杰(译者)
毕业于复旦大学日语系,现为对日软件工程师,具有多年日语技术文档编写经验。爱好日汉翻译和日本文化史,译有《明解C语言:入门篇》等。
卢晓南(译者)
本科就读于西安交通大学少年班、数学系。名古屋大学博士(信息科学)。现于山梨大学计算机系任助理教授。主要研究方向包括组合数学(离散数学)及其在信息科学、计算机科学、统计学中的应用。译着有《程序员的数学3:线性代数》。
G. 程序员的数学-读书笔记
计数法分为 按位计数法 和 罗马计数法
按位计数法常用的有2进制、8进制、10进制、16进制等几种。
理论上多少进制在数学上都可以存在,玛雅人用20进制,巴比伦人用10进制和60进制的混合计数法。玛雅人20进制可能是和手脚趾加起来的数量有关。巴比伦人采用60进制也可能是因为记录数字的黏土版比较难记录文字记号,为了在大数的书写上少占位便采用了60进制。
从这一点来看,环境对文明和文化的形成真的是有决定性的影响。假如巴比伦人掌握了造纸术或者在竹子上书写文字的话,60进制这种违反人类天性的计数方法一定不会出现。话说,汉莫拉比法典就是写在黑色的玄武岩上的。能够记录的文字也就屈指可数吧。
作者提到了其实人也是可以采用2进制计数法的,可是同样大小的数字用2进制书写起来位数太多,一来书写不方便,二来计算时易发生马虎出现错误。而10进制的数天生就是顺应人类人性的,即使是幼儿也可以通过数手指头的方式来计数。
相反对于计算机的物理构造来讲,0代表开关断开,1代表开关连接,这种二极管的物理限制正好决定了计算机较为适用2进制。不过如果你想做出一个10进制的计算机也不是没有可能的。
这一章比较有趣的是罗马计数法,我以前也没有接触过超过20的罗马数字,也不知道罗马数字各个数位上的数字相加之和为数字本身所代表的量。例如:
反观阿拉伯数字
由此引发作者在两个程序领域上的思考:
关键词:真值表、文氏图、逻辑表达式、卡诺图、三值逻辑、完整性、排他性
- 能够判断对错的陈述句叫做命题(proposition)
逻辑非 --不是A
逆命题
逆否命题
德摩根定律
卡诺图 (二灯游戏、三灯游戏引出)
未定义逻辑(undefined)
三值逻辑的德摩根定律
本章探讨的是通过余数来解决存在规律、周期性的问题。通过规律和周期性的重复,将大问题简化成容易解决的小问题。
首先作者通过解决星期几问题,引入了余数的思考概念。
上面的问题在 大问题通过余数规律简化为小问题 这个方法上表现的还不明显,于是引入了第三个问题:1234567^7654321的个位数是多少。
以上三个问题是小学奥赛便涉及到的问题,然而其思想在解决真实面对的复杂问题或具象的实际问题时却很好用。
将一个数字除以2,他的余数应该为0或者1二者之一。我们也可以叫 奇偶问题 。
书中有几个案例:
这样分析过来就很好解决七桥问题,确定每个点所连接的桥的点数,与上述结论做对比。
A点为3,B点为,C点为3,D点为3.
由此可以得出七桥问题不可能实现。这个问题的解决也是通过奇偶性来解决的。
作者举了高斯求和的故事来讲如何用数学归纳法来解决无穷数列的求和问题。
两个小例子便是从0开始到N的和,以及1开始的奇数和。
数学归纳法 是证明[ 有关整数的断言对于0以上的所有整数(0,1,2...)是否成立 ]所用的方法。
证明方法归结为两歩:
根据上述方法,假若某个假设成立,那么P(0)成立,因为P(0)成立,所以P(0+1)即P(1)也成立。反复如此,对于无穷数列遵守这个规律的证明,就像多米诺骨牌,推到第一个,后面的都会按照第一个的规则倒下去。
然而要避免整个证明出错,就要重视第二个步骤,也就是归纳。归纳在证明时一定要考虑 是否在所有定义条件下均成立 ,尤其要注意的是在P(0)的条件下是否实现。
课后对话很有意思:
计数是人类每天生活都要运用的方法。
计数的关键就在于 注意“遗漏”和“重复”
例如:
综上,在计数时要发现事物的规则。
要 认清计数对象的本质
要 认清计数对象的本质
要 认清计数对象的本质
重要的事情说三遍。
将计数对象进行 归纳总结 ,使其作为普通规则来掌握。这样一般不容易出错。
接下来,作者在 加法法则 里写到:
乘法法则 的概念比较有意思。
接下来,本章提到了置换、排列、组合3个概念。以下是几个小例子。
最后提到的 重复组合 里的思考问题比较有趣。
解答的思想是:
这是一种典型的将复杂问题简单化,并规律化的解答方法。
最后还是要强调下:
要 认清计数对象的本质
递归与归纳的区别
归纳(inctive) 是从个别性前提推出一般性结论。
本质上都是 将复杂问题简化 ,但方向不同。
个人理解是
递归是发现第n项和前一两项之间的关系,实证确定后,往回不断递推的一种个别性结论。
即这个结论不是在n为任何自然数时都成立的。需要注意n为0和1的两项。
通过递归解决问题的线路是: 找到递归结构——建立递推公式——找到解析式(只带n的式子) ,如果不能以解析式的方式描述递归结构,也可以用递推公式的方法描述。如下图所示的汉诺塔的递推公式:(它也可以描述成解析式的方式)
归纳所谓的个别性前提是指
斐波那契数列就是运用了递归的思想。通过研究和思考复杂问题,抓住事务本质,得到f(n)=f(n-1)+f(n-2)
所以当我们想要用递归的方法解决问题时,注意思考第n元素与前后元素的关系。由一个点推开,成一条贯穿始终的线。
利用帕斯卡三角形来研究Cnk=Cn-1(k-1) + Cn-1k的思考方式另辟蹊径。将两个加数假设成组合问题里含一个元素和不含那个元素的两个情况。从而证明了式子。利用的便是组合的数学分析法。(这句话组合的意思不是数学意义上的)。
所以以上将复杂问题简化的方法是递归解法之一,是为了在复杂问题中找到隐含的递归结构。其思路是:
通过思考一张1mm的纸,折多少次能够有地月距离那么厚,作者引出指数的概念。
这一章的内容比较简单,对于 指数爆炸 大家应该都不陌生。而 对数 估计也很熟悉。之前接触到的汉诺塔问题的解析式和斐波那契数列都属于指数的范畴。
然而在解决 测试所有设定选项的程序时,检查次数也是一个指数问题 。所以我们应该如何轻松的解决这类问题呢?
利用二分法查找
利用二分法,先询问最中间的人,如果在左边,就继续在左边的范围内重复此项方法,直到找到罪犯。这便被称为 2分法 。他和汉诺塔的解析式如出一辙,可以利用指数原理经过很少的步骤便可找到目标。
二分法本身也是 递归结构 ,经过n次询问,可以在2^n-1人中确定目标。每判断一次就可以查找近一半的对象。
二分法需要注意的是,所有元素一定要 按顺序排列 ,这点至关重要。
指数思想也被用于加密的实现中。因为每多加密一位,暴力破解就需要指数次的运算能力的提升。原则上有限时间里根本不可能破解。指数以其数字的巨大增长能力在加密领域有基本性的作用。
对于指数问题的解决方法,主要有4种,但均不太容易应付规模大的数字。
作为指数函数的逆函数,文章涉及了对数。同时也简单介绍了古代科学家用过的计算尺。
无穷可以分为 可数无穷 和 不可数无穷 。
所谓 可数无穷 是指 可以按照一定的规律或者表达方式来表达 。
即集合中所有元素都与正整数一一对应。如果每一个元素都可以与1.2.3....等数字对应,也就是说可以按规律表达出来就是可数无穷。
例如:
所以有不可数的集合吗?
此时运用到了 对角论证法 和 反证法(也叫归谬法)
假设我们要证明 所有整数数列的集合是不可数的 ,那么反证就是 假设所有整数数列的集合是可数的 ,此处是运用的反证法。
现在我们按下图的方式来列出所有整数数列,编号为k的整数列在表的k行。
如果按照图中第k行的第k个元素ak单独组出一组数列{a1,a2,a3......}的话,他也是应该包含在所有整数数列里的,然而并没有,他是游离在所有整数数列之外的。此处得出矛盾,说明命题错误,命题 所有整数数列的集合是不可数的 为真。此方法被称为 对角论证法
除此之外
-所有实数的集合是不可数的
-所有函数的集合也是不可数的
随后书中讨论到了不可解的问题
对于不可解的问题的定义是
事实上,不能写成程序的函数是存在的。
有些函数不能用文字表达,而且要写成程序的函数必须 严谨定义确切和文字表达 两个概念。
停机问题
不可解问题的一例。定义是
有限时间并不指时间长短,而是指无论耗时多长,只要能有终止的一刻就好。
事实上,程序本身并不能判断某一程序是否可以在有限时间内结束运行
所以停机问题也是 不可解问题 之一。
这一章是对之前8章的回顾和总结。
前几章作者分别对 0的意义、逻辑、余数、数学归纳、排列组合、递归、指数爆炸、不可解问题 进行了简单的介绍和探讨。其实所有的章节最后都是在引领读者产生如何解决问题的思考。
1.认清模式,进行抽象化
2.由不擅长催生出的智慧
3.幻想法则
本书比较适合作为第一本接触算法的书籍。目前开始在上 Khan的Algorithms ,9月份跟上 coursera的Algorithms Part I 的开课。
前方的路注定不好走,但是要慢慢尝试和坚持。
H. 求分享《程序员的数学思维修炼》全集电子版免费百度云资源
程序员的数学思维修炼(趣味解读)-等,周颖.mobi
链接:
I. 程序员必备的一些数学基础知识
作为一个标准的程序员,应该有一些基本的数学素养,尤其现在很多人在学习人工智能相关知识,想抓住一波人工智能的机会。很多程序员可能连这样一些基础的数学问题都回答不上来。
作为一个傲娇的程序员,应该要掌握这些数学基础知识,才更有可能码出一个伟大的产品。
向量 向量(vector)是由一组实数组成的有序数组,同时具有大小和方向。一个n维向量a是由n个有序实数组成,表示为 a = [a1, a2, · · · , an]
矩阵
线性映射 矩阵通常表示一个n维线性空间v到m维线性空间w的一个映射f: v -> w
注:为了书写方便, X.T ,表示向量X的转置。 这里: X(x1,x2,...,xn).T,y(y1,y2,...ym).T ,都是列向量。分别表示v,w两个线性空间中的两个向量。A(m,n)是一个 m*n 的矩阵,描述了从v到w的一个线性映射。
转置 将矩阵行列互换。
加法 如果A和B 都为m × n的矩阵,则A和B 的加也是m × n的矩阵,其每个元素是A和B相应元素相加。 [A + B]ij = aij + bij .
乘法 如A是k × m矩阵和B 是m × n矩阵,则乘积AB 是一个k × n的矩阵。
对角矩阵 对角矩阵是一个主对角线之外的元素皆为0的矩阵。对角线上的元素可以为0或其他值。一个n × n的对角矩阵A满足: [A]ij = 0 if i ̸= j ∀i, j ∈ {1, · · · , n}
特征值与特征矢量 如果一个标量λ和一个非零向量v满足 Av = λv, 则λ和v分别称为矩阵A的特征值和特征向量。
矩阵分解 一个矩阵通常可以用一些比较“简单”的矩阵来表示,称为矩阵分解。
奇异值分解 一个m×n的矩阵A的奇异值分解
其中U 和V 分别为m × m和n×n 的正交矩阵,Σ为m × n的对角矩阵,其对角 线上的元素称为奇异值(singular value)。
特征分解 一个n × n的方块矩阵A的特征分解(Eigendecomposition)定义为
其中Q为n × n的方块矩阵,其每一列都为A的特征向量,^为对角阵,其每一 个对角元素为A的特征值。 如果A为对称矩阵,则A可以被分解为
其中Q为正交阵。
导数 对于定义域和值域都是实数域的函数 f : R → R ,若f(x)在点x0 的某个邻域∆x内,极限
存在,则称函数f(x)在点x0 处可导, f'(x0) 称为其导数,或导函数。 若函数f(x)在其定义域包含的某区间内每一个点都可导,那么也可以说函数f(x)在这个区间内可导。连续函数不一定可导,可导函数一定连续。例如函数|x|为连续函数,但在点x = 0处不可导。
加法法则
y = f(x),z = g(x) 则
乘法法则
链式法则 求复合函数导数的一个法则,是在微积分中计算导数的一种常用方法。若 x ∈ R,y = g(x) ∈ R,z = f(y) ∈ R ,则
Logistic函数是一种常用的S形函数,是比利时数学家 Pierre François Verhulst在 1844-1845 年研究种群数量的增长模型时提出命名的,最初作为一种生 态学模型。 Logistic函数定义为:
当参数为 (k = 1, x0 = 0, L = 1) 时,logistic函数称为标准logistic函数,记 为 σ(x) 。
标准logistic函数在机器学习中使用得非常广泛,经常用来将一个实数空间的数映射到(0, 1)区间。标准 logistic 函数的导数为:
softmax函数是将多个标量映射为一个概率分布。对于 K 个标量 x1, · · · , xK , softmax 函数定义为
这样,我们可以将 K 个变量 x1, · · · , xK 转换为一个分布: z1, · · · , zK ,满足
当softmax 函数的输入为K 维向量x时,
其中,1K = [1, · · · , 1]K×1 是K 维的全1向量。其导数为
离散优化和连续优化 :根据输入变量x的值域是否为实数域,数学优化问题可以分为离散优化问题和连续优化问题。
无约束优化和约束优化 :在连续优化问题中,根据是否有变量的约束条件,可以将优化问题分为无约束优化问题和约束优化问题。 ### 优化算法
全局最优和局部最优
海赛矩阵
《运筹学里面有讲》,前面一篇文章计算梯度步长的时候也用到了: 梯度下降算法
梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)。
梯度下降法
梯度下降法(Gradient Descent Method),也叫最速下降法(Steepest Descend Method),经常用来求解无约束优化的极小值问题。
梯度下降法的过程如图所示。曲线是等高线(水平集),即函数f为不同常数的集合构成的曲线。红色的箭头指向该点梯度的反方向(梯度方向与通过该点的等高线垂直)。沿着梯度下降方向,将最终到达函数f 值的局部最优解。
梯度上升法
如果我们要求解一个最大值问题,就需要向梯度正方向迭代进行搜索,逐渐接近函数的局部极大值点,这个过程则被称为梯度上升法。
概率论主要研究大量随机现象中的数量规律,其应用十分广泛,几乎遍及各个领域。
离散随机变量
如果随机变量X 所可能取的值为有限可列举的,有n个有限取值 {x1, · · · , xn}, 则称X 为离散随机变量。要了解X 的统计规律,就必须知道它取每种可能值xi 的概率,即
称为离散型随机变量X 的概率分布或分布,并且满足
常见的离散随机概率分布有:
伯努利分布
二项分布
连续随机变量
与离散随机变量不同,一些随机变量X 的取值是不可列举的,由全部实数 或者由一部分区间组成,比如
则称X 为连续随机变量。
概率密度函数
连续随机变量X 的概率分布一般用概率密度函数 p(x) 来描述。 p(x) 为可积函数,并满足:
均匀分布 若a, b为有限数,[a, b]上的均匀分布的概率密度函数定义为
正态分布 又名高斯分布,是自然界最常见的一种分布,并且具有很多良好的性质,在很多领域都有非常重要的影响力,其概率密度函数为
其中, σ > 0,µ 和 σ 均为常数。若随机变量X 服从一个参数为 µ 和 σ 的概率分布,简记为
累积分布函数
对于一个随机变量X,其累积分布函数是随机变量X 的取值小于等于x的概率。
以连续随机变量X 为例,累积分布函数定义为:
其中p(x)为概率密度函数,标准正态分布的累计分布函数:
随机向量
随机向量是指一组随机变量构成的向量。如果 X1, X2, · · · , Xn 为n个随机变量, 那么称 [X1, X2, · · · , Xn] 为一个 n 维随机向量。一维随机向量称为随机变量。随机向量也分为离散随机向量和连续随机向量。 条件概率分布 对于离散随机向量 (X, Y) ,已知X = x的条件下,随机变量 Y = y 的条件概率为:
对于二维连续随机向量(X, Y ),已知X = x的条件下,随机变量Y = y 的条件概率密度函数为
期望 对于离散变量X,其概率分布为 p(x1), · · · , p(xn) ,X 的期望(expectation)或均值定义为
对于连续随机变量X,概率密度函数为p(x),其期望定义为
方差 随机变量X 的方差(variance)用来定义它的概率分布的离散程度,定义为
标准差 随机变量 X 的方差也称为它的二阶矩。X 的根方差或标准差。
协方差 两个连续随机变量X 和Y 的协方差(covariance)用来衡量两个随机变量的分布之间的总体变化性,定义为
协方差经常也用来衡量两个随机变量之间的线性相关性。如果两个随机变量的协方差为0,那么称这两个随机变量是线性不相关。两个随机变量之间没有线性相关性,并非表示它们之间独立的,可能存在某种非线性的函数关系。反之,如果X 与Y 是统计独立的,那么它们之间的协方差一定为0。
随机过程(stochastic process)是一组随机变量Xt 的集合,其中t属于一个索引(index)集合T 。索引集合T 可以定义在时间域或者空间域,但一般为时间域,以实数或正数表示。当t为实数时,随机过程为连续随机过程;当t为整数时,为离散随机过程。日常生活中的很多例子包括股票的波动、语音信号、身高的变化等都可以看作是随机过程。常见的和时间相关的随机过程模型包括贝努力过程、随机游走、马尔可夫过程等。
马尔可夫过程 指一个随机过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖于当前状态。
其中X0:t 表示变量集合X0, X1, · · · , Xt,x0:t 为在状态空间中的状态序列。
马尔可夫链 离散时间的马尔可夫过程也称为马尔可夫链(Markov chain)。如果一个马尔可夫链的条件概率
马尔可夫的使用可以看前面一篇写的有意思的文章: 女朋友的心思你能猜得到吗?——马尔可夫链告诉你 随机过程还有高斯过程,比较复杂,这里就不详细说明了。
信息论(information theory)是数学、物理、统计、计算机科学等多个学科的交叉领域。信息论是由 Claude Shannon最早提出的,主要研究信息的量化、存储和通信等方法。在机器学习相关领域,信息论也有着大量的应用。比如特征抽取、统计推断、自然语言处理等。
在信息论中,熵用来衡量一个随机事件的不确定性。假设对一个随机变量X(取值集合为C概率分布为 p(x), x ∈ C )进行编码,自信息I(x)是变量X = x时的信息量或编码长度,定义为 I(x) = − log(p(x)), 那么随机变量X 的平均编码长度,即熵定义为
其中当p(x) = 0时,我们定义0log0 = 0 熵是一个随机变量的平均编码长度,即自信息的数学期望。熵越高,则随机变量的信息越多;熵越低,则信息越少。如果变量X 当且仅当在x时 p(x) = 1 ,则熵为0。也就是说,对于一个确定的信息,其熵为0,信息量也为0。如果其概率分布为一个均匀分布,则熵最大。假设一个随机变量X 有三种可能值x1, x2, x3,不同概率分布对应的熵如下:
联合熵和条件熵 对于两个离散随机变量X 和Y ,假设X 取值集合为X;Y 取值集合为Y,其联合概率分布满足为 p(x, y) ,则X 和Y 的联合熵(Joint Entropy)为
X 和Y 的条件熵为
互信息 互信息(mutual information)是衡量已知一个变量时,另一个变量不确定性的减少程度。两个离散随机变量X 和Y 的互信息定义为
交叉熵和散度 交叉熵 对应分布为p(x)的随机变量,熵H(p)表示其最优编码长度。交叉熵是按照概率分布q 的最优编码对真实分布为p的信息进行编码的长度,定义为
在给定p的情况下,如果q 和p越接近,交叉熵越小;如果q 和p越远,交叉熵就越大。