信息论

学习人工智能需要哪些必备的数学基础?

一世执手 提交于 2019-12-06 16:32:28
当下,人工智能成了新时代的必修课,其重要性已无需赘述,但作为一个跨学科产物,它包含的内容浩如烟海,各种复杂的模型和算法更是让人望而生畏。对于大多数的新手来说,如何入手人工智能其实都是一头雾水,比如到底需要哪些数学基础、是否要有工程经验、对于深度学习框架应该关注什么等等。 那么,学习人工智能该从哪里开始呢?人工智能的学习路径又是怎样的? 本文节选自王天一教授在极客时间 App 开设的“人工智能基础课”,已获授权。更多相关文章,请下载极客时间 App,订阅专栏获取。 数学基础知识蕴含着处理智能问题的基本思想与方法,也是理解复杂算法的必备要素。今天的种种人工智能技术归根到底都建立在数学模型之上,要了解人工智能,首先要掌握必备的数学基础知识,具体来说包括: 线性代数:如何将研究对象形式化? 概率论:如何描述统计规律? 数理统计:如何以小见大? 最优化理论: 如何找到最优解? 信息论:如何定量度量不确定性? 形式逻辑:如何实现抽象推理? 线性代数:如何将研究对象形式化? 事实上,线性代数不仅仅是人工智能的基础,更是现代数学和以现代数学作为主要分析方法的众多学科的基础。从量子力学到图像处理都离不开向量和矩阵的使用。而在向量和矩阵背后,线性代数的核心意义在于提供了⼀种看待世界的抽象视角: 万事万物都可以被抽象成某些特征的组合,并在由预置规则定义的框架之下以静态和动态的方式加以观察。

信息论小记

六月ゝ 毕业季﹏ 提交于 2019-12-05 16:40:40
知道一堆词汇里各个字出现的概率p i ,则对这些字的最优编码下各字的位长(也即每个字包含的信息)为: 香农公式 : ,知道各字的位长后,可依次给他们编码0、10、110... 这些字的平均编码长度为(也即信息量,或称信息熵): 信息熵 : 总结:信息是不确定性的度量,不确定性体现在概率分布上:概率分布越散,不确定性越大,从而信息量越大 来源: https://www.cnblogs.com/z-sm/p/11933813.html

图像中用到的信息论中的一些概念公式

江枫思渺然 提交于 2019-12-05 07:24:48
1 熵 1.1 香农熵(Shannon Entropy) 用来描述信息量的多少,随机变量不确定性的度量(metric),给定一个随机变量 \(X,p(x)=Pr\{X=x\},x\in\omega\) \[ H(X)= -\sum_{x\in\omega}{p(x)log_2p(x)} \] 1.2 联合熵(Joint Entropy) 衡量一对随机变量所包含的信息量,两个随机变量联合不确定性的度量,联合熵描述了随机变量的相关性,越小越相关 \((X,Y)\) 及联合分布 \(p(x,y)\) \[ H(X,Y) = -\sum_{x\in X}\sum_{y\in Y}{p(x,y)log_2p(x,y)} \] 1.3 条件熵(Conditional Entropy) 已知 \(Y\) 随机变量的前提下,随机变量 \(X\) 提供的信息量,依据 \(p(x|y)=p(x,y)/p(y)\) \[ \begin{aligned} H(X|Y) &= -\sum_{x\in X}\sum_{y\in Y}{p(x,y)log_2p(x|y)}\\ &=-\sum_{x\in X}\sum_{y\in Y}{p(x,y)log_2p[(x,y)/p(y)]}\\ &=H(X,Y)-H(Y) \end{aligned} \] 对于联合分布和边缘分布,把 \(X\) 或 \(Y\)

机器学习中的一些信息论的概念简介

匿名 (未验证) 提交于 2019-12-03 00:38:01
机器学习和深度学习中常用信息论中的一些概念。 这里只做目录简介,具体的内容参考原文: 信息量 联合熵 条件熵 相对熵 互信息 信息增益 Information Gain 信息增益率 Information Gain ratio 出自:远方的橄榄树 原文链接 https://blog.csdn.net/light_lj/article/details/52208838 文章来源: 机器学习中的一些信息论的概念简介

信息论、贝叶斯及机器学习

匿名 (未验证) 提交于 2019-12-03 00:34:01
信息论及贝叶斯 引言 1956年,让机器来做聪明的事情的科学被称为“人工智能”。直到1997年,人类才创造出来能下象棋的电脑并打败了世界冠军。通过这样的一个例子及数字计算机的发展历史表明,感知其实是一个很难解决的问题。但是,我们的脑却能够很简单的解决这个问题,这是否意味着,数字计算机不是人脑的一个好隐喻?或者,我们需要为计算机的运行找新的运算方式? 同时信息论的发展使得我们看到物理事件和电脉冲是如何转化为精神事件和讯息的。但是,在其最初表达中存在一个根本的问题。一条信息中的信息量,或者更通俗的说,任何刺激中的信息量完全由那个刺激源来决定,这种界定信息的方法看上去很完美,实际上会产生自相矛盾的结果。 比如在图像的处理中,图片是由像素点组成的,以此形成不同的颜色。比如看这样一张图片,它是一张简单的以白色为背景的黑色正方形的图片,这张图片中的哪些要素含有最多的信息?当我们的眼睛扫过一个颜色不变的区域的时候, 因为没有任何的改变,就不会产生任何的惊奇感。而当我们眼睛扫到边缘的时候,颜色突然变化,我们就会感到“惊奇”。因此,根据信息论,图片的边缘所含的信息量是最大的,这和我们的直觉也确实是相符的,假如我们用轮廓来代替这个 物体,换句话说,只留下有信息的边缘,我们仍然能够认出这个物体。 但是,这种表述实际上是自相矛盾的,按照这种界定,当我们用眼睛扫一幅图片的时候,我们预测不到接下来会发生什么

信息论——the Convexity

烂漫一生 提交于 2019-11-30 12:49:18
这篇博客来介绍熵,互信息,鉴别信息的凸性,与优化有着重要的关系。 凸集(Convex Set) 凸集:在欧氏空间中,凸集是对于集合内的每一对点,连接该对点的直线段上的每个点也在该集合内的集合。 凸集有:实数,概率矢量集合等。整数,有理数等不是凸集。 想要研究凸函数,首先凸函数一定要定义在凸集上。而概率矢量集合为凸集,是一个好消息。 凸函数有个坑。就是中国教材总是叫凸函数和凹函数,但是实际上中国的凸函数,是有最大值的函数,而非国外的convex function(最小值)。另外一种比较好的叫法是上凸和下凸,这个就容易区分了,上凸函数有最大值,下凸函数有最小值。 严格的数学定义: 定义在凸集D上的函数$f(x)$如果满足$f(lambda alpha + (1-lambda)beta) leq lambda f(alpha) + (1-lambda) f(beta)$,则为下凸函数。 定义在凸集D上的函数f(x)如果满足$f(lambda alpha + (1-lambda)beta) geq lambda f(alpha) + (1-lambda) f(beta)$,则为上凸函数。 Jenson不等式 如果f是下凸函数,且X是离散随机变量,则$Ef(X)geq f(EX)$,并且如果f是严格下凸函数,则上式中等号说明X为常数,及X与EX以概率1相等。(其中E为平均取值)。

信息熵

这一生的挚爱 提交于 2019-11-29 22:19:44
信息论 信息论的目的是对一个信号包含的信息的多少进行量化。1948年香农发表论文 A Mathematical Theory of Communication ,其中采用了概率论的方法来研究通信中的问题,并对信息进行了定量描述,第一次提出信息熵的概念 信息量 信息量是对信息的量化。出发点是一个不太可能发生的消息比一个很可能会发生的消息提供了更多的信息。比如“明天早上太阳会升起”是一个确定会发生的事情, 它提供的信息很少,相当于一句废话;而“明天早上会发生日食”这句话则不太可能发生,但它包含了很多的信息量。所以信息量与发生的概率一定是一个递减的关系(概率大则信息量少,概率小则信息量大)。如此定义信息量: \[ I(x) = -log_2{p} \] 不一定以2为底,有的人以10为底,或以 e 为底 信息熵 信源含有的信息量是信源发出的所有可能消息的平均不确定性,即包含的信息量的平均统计值。信息论创始人香农把信源包含的信息量称为信息熵(Entropy)。假设信息D包含m种可能的事件,则信息熵为: \[ H(D) = - \sum_{i=1}^m{p_i log_2{p_i}} \] 信息熵的单位为 bit 来源: https://www.cnblogs.com/minding/p/11537564.html

信息论_熵

血红的双手。 提交于 2019-11-29 19:35:18
信息论主要是对信号所含信息的多少进行量化,其基本思想是一个不太可能发生的事情要比一个可能发生的事情提供更多的信息。 度量信息的集中常用指标有信息熵、条件熵、互信息、交叉熵。 信息熵 信息熵(entropy)简称熵,是对随机变量不确定性的度量。定义为: H(x)=∑p i *log 2 (p i ) 用以下代码来实现对0-1分布变量概率与其信息熵的关系: import matplotlib.pyplot as plt # %matplotlib inline 只有Jupyter需要加这一行,其余常用editor都无需此行代码 p = np.arange(0, 1.05, 0.05) HX = [] for i in p: if i == 0 or i == 1: HX.append(0) else: HX.append(-i * np.log2(i) - (1 - i) * np.log2(1 - i)) plt.plot(p, HX, label='entropy') plt.xlabel('P') plt.ylabel('H(x)') plt.show() 其中p是一个一维数组,其值范围为[0,1.05),步长为0.05,HX是一个列表,用于记录一维数组每个数据的熵值。 得到结果如下: 可见,当概率为0或1时,H(x)= 0 ;当 p = 0.5 时,随机变量的不确定性最大

对博弈活动中蕴含的信息论原理的讨论,以及从熵角度看不同词素抽象方式在WEBSHELL文本检测中的效果区别

早过忘川 提交于 2019-11-27 15:14:31
1. 从赛马说起 0x1:赛马问题场景介绍 假设在一场赛马中有m匹马参赛,令第i匹参赛马获胜的概率为p i ,如果第i匹马获胜,那么机会收益为o i 比1,即在第i匹马上每投资一美元,如果赢了,会得到o i 美元的收益,如果输了,那么回报为0。 有两种流行的马票: a兑1(a-for-1):开赛前购买的马票,马民赛马前用一美元购买一张机会收益为a美元的马票,一旦马票对应的马在比赛中赢了,那么他持有的那只马票在赛后兑换a美元,否则,他的马票分文不值。 b兑1(b-to-1):赛后交割的马票,机会收益为b:1,一旦马票对应的马输了,则该马民赛后必须交纳一美元本金,但是如果赢了,赛后可以领取b美元。 当b = a-1时,”a兑1“和”b赊1"两种马票的机会收益等价。例如,掷硬币的公平机会收益倍数是2兑1或者1赊1。 假设某马民将全部资金分散购买所有参赛的马匹的马票,b i 表示其下注在第i匹马的资金占总资金的比例,那么b i >=0, 。如果第i匹马获胜,那么该马民获得的回报是下注在i匹马的资金的o i 倍,而下注在其他马匹上的资金全部输掉。于是,赛马结束时,如果第i匹马获胜,那么该马民最终所得的资产为原始财富乘以因子b i o i ,而且这样发生的概率为p i 。 从这里可以看到,如果马民采取但是“showhand策略”,即每次都将所有资金全部投资出去

关于数据压缩、信源编码、赫夫曼码的一些研究,以及由此引出对决策树模型的信息论本质的思考

最后都变了- 提交于 2019-11-27 05:54:33
1. 关于数据压缩 0x1:什么是数据压缩?为什么要进行数据压缩? 从信息论的角度来看数据压缩,本质上就是通过寻找一种编码方案,在不损失或者尽量少损失原始信源信号的前提下,将原始信源信号映射到另一个D元码字空间上。 在机器学习中,我们经常讨论到的”模型训练“,其本质上就是在寻找一个”信源映射函数“,例如线性回归的回归参数,就是一种信源映射函数,可以将输入空间X,一一映射到Y空间,所以,得到了一组模型参数,本质上就是得到了一个信源映射函数,此后,就可以由模型参数代替原始的样本数据。 回到信息论数据压缩的话题,信息论数据压缩讨论和定义的是:在信源映射函数中,应该将哪些码字分配给哪些信源,怎么分配是最优的,即节省传输开销的。 本文通过讨论信息压缩的基本临界值(即最短码字长度),从另一个方面来看熵的定义和合理性。通过对数据源中最频繁出现的结果分配较短的描述,而对不经常出现的结果分配较长的描述,可达到压缩数据的目的。 0x2:关于压缩编码的几个例子 1. 信源编码的定义 数据压缩的的本质是找到一种高效的压缩编码方案,这小节我们先定义一下信源编码的一些形式化定义与记号,然后一起来看几个关于压缩编码的例子。 关于随机变量X的信源编码C是从X的取值空间X到D * 的一个映射,其中D * 表示D元字母表D上有限长度的字符串所构成的集合,用C(x)表示x的码字并用 l(x) 表示C(x)的长度。