数学之美 读书心得与笔记

数学之美 读书心得与笔记

文章目录

读书心得

​由于数学总是留给人们严谨的、逻辑性强的、抽象而让人摸不到头脑的印象,《数学之美》这个名字起初也让我联想到厚厚的布满数学公式的科学读物,但是恰恰相反,作为一本科普读物,其易读也易懂,读者并不需要太多基础,也只涉及自然语言处理领域里的数学应用。

​在读完本书后,除了对自然语言处理领域的很多算法、模型的理解得到加强外,更多的是影响了我的思想,让我意识到数学的重要性并产生了好感,也启发了我今后学习和工作的思维方式,我想,如果不是我之前学过近两个学期的自然语言处理课程,可能会更为震撼。

​心得和笔记,其实是很有必要的,读过之后,很多感受是模糊的、书中的内容也只记得大概,心得和笔记更能加强印象,让读书的时间不必浪费,这一点,也是我开始动笔前才领悟到的,而我也大致读了两遍。关于本书的感受,我总结为几个关键字(可能并不全面):知识溯源语言和通信的联系数学之美工程经验思维或规律性(不能用“凑”的方法解决问题)、人文故事(精彩有趣)、自然语言处理(研究的领域)。下面我逐一说说我的感受。

知识溯源,不知道这个词用的准不准。自然语言处理,听起来多么的和语言学有关啊!而如果只是凭着直觉去研究着语法规则、分析着句法结构,可能永远也无法做到从规则到统计的方法转变。语言和信息之间的关系,通信模型能用在自然语言处理中,数学(概率)可以用来解决自然语言处理问题,作者用第一章就把这些关系联系到了一起,就好像是看了一个纪录片(追溯着语言和信息的发展历史),让我印象做深刻的一句话是“不同的文字系统在记录信息上的能力是等价的,那么如果数字作为信息的载体也是可行的,这就是现代通信的基础”,让我震撼。

语言和通信的联系,之前总是听说信息论、通信模型等等通信领域的知识和自然语言处理的关系密切,在本书中,我才得以了解。隐含的马尔科夫模型最初应用于通信领域,但是却可以作为机器翻译和语音识别的解码器;很多自然语言处理的问题都可以总结为通信模型;而信息熵更是可以用来计算拼音输入法的最小按键次数;互信息是TF-IDF的信息论依据,作为索搜关键词和文本特征向量的度量;搜索引擎反作弊等同于通信模型中的去噪声问题。可以看出,语言作为信息的载体,和通信之间的联系极为密切。

数学之美,美在何处呢,我认为数学美在它的无处不在、应用之广:自然语言处理中的数学模型太多了,哪个问题的解决不需要用到数学啊;数学还美在它的形式简单:统计语言模型用简单的概率公式解释一个句子的合理性、奇异值分解一次性解决文本主题分类和词的语义分类、密码学的非对称加密只是简单的乘除操作、行星运动轨迹用椭圆而不是大圆套小圆;数学更美在它的关联性强、融会贯通:条件随机场和逻辑回归的函数形式都和最大熵模型相似,训练过程也相似;维特比算法其实就是动态规划算法的一种;贝叶斯网络是马尔可夫链的扩展;而条件随机场是隐含马尔可夫模型的扩展。

工程经验,能让你发现聪明人做事遵循的原则。这里举几个例子:不同的应用应该有不同的分词器,关于分词粒度这一点,我是没有想过的,机器翻译的分词粒度大一点,而搜索引擎的分词粒度可以小一点。先替用户解决80%的问题,再慢慢解决后20%的问题,如果一开始追求大而全的解决方案,最后可能会放弃,这一点很戳中我,因为我就是一个规划很庞大的人,确实最终往往坚持不了而放弃,这样我意识到自己的问题;网络爬虫究竟是DFS还是BFS,这个问题我是猜不对的,因为它在工程上是很复杂,下载一个网站的调度程序原理基本上是BFS,但是为了避免和网站的服务器建立通信的过程消耗额外时间,往往要下载完一个网站再进入另一个网站,这个过程又有点像DFS;”电话语音识别系统Google-411和Nuance原有系统相比,识别率没有提高,没有竞争力,但是通过提供免费的服务从大量的用户中获取了海量的语音数据,为其真正的语音识别产品Google Voice做好了准备“。我很惊讶于它们商业上的决策,真的很聪明。

思维或规律性,在本书的后记部分,作者指出了一个思维上的问题:不去寻找正确的模型来解决问题,而是靠错误的模型来拼凑。就如同托勒密的地心说模型,依靠着大圆套小圆,虽然是错误的模型,但是还很准确。而不去寻找真正正确的椭圆形行星运动模型,这是不符合规律性的做法。对于这个观点,我很赞同,我也犯过这样的错误。在编写网络爬虫程序中,爬取URL的方式就是靠“凑”出来的,而不是真正意义上的图遍历算法。

人文故事,在本书中,人文故事的篇幅不占少数,作者隆重介绍了贾里尼克、阿米特 ⋅ \cdot 辛格、马库斯和维特比等人,而其他人物即便只是提及,也把个性和形象刻画了大致,让我得以一见众多伟大学者的个人魅力。贾里尼克的生活俭朴、心直口快、对待学生的关怀、以及对学习的热情,其精神很让我敬佩。而辛格的思想最让我受到启发,他所奉行的简单哲学,不是任何没有根据的简单,而是为了容易解释每一个步骤和方法背后的道理,不仅便于出了问题时查错,而且容易找到以后改进的目标。其实每一项改进都是有得有失的,负面影响会慢慢累积,所以如果不能清楚如何避免它的发生,就会给未来带来隐患。对此,我十分赞同!而马库斯建立LDC语料库确实是为世界上的所有自然语言处理研究者提供帮助,促进了自然语言处理的发展。至于维特比,亲自将研究成果应用到实际中,不仅提供关键性的发明,而且为了保障其效益在全社会得到最大化,解决了所有配套的技术,这真的很厉害(看到高通公司的时候,也很是震惊)。

自然语言处理,本书中涉及的自然语言处理问题,更多的是搜索引擎相关的技术,也提及了语音识别、拼音输入法、文法分析,可能和作者的个人经历有关。以数学为线索,带我们窥见了自然语言处理领域的一角。对于我这个刚刚踏入自然语言处理大门的初学者,有很好的帮助,同时也意识到了自然语言处理领域,通信知识和数学的重要性,也让我看到并学到了一些前辈闪光的思想,也在此感谢老师对本书的推荐,让我得以增长见识,有所收获。


读书笔记

第一章:文字和语言 vs 数字和信息
  • 语言、文字、数字,都是信息的载体,将其联系在一起是必然的
  • 香农 信息论:联系数学和信息
  • 通信模型:
    在这里插入图片描述
  • 文明进步,信息增多,语言产生;语言增多,语言需要抽象,提取共同要素,形成文字;文字的增多,对概念进行概括和归类,一个符号对应多种含义,带来歧义性,依靠上下文消除歧义,这是语言固有的特点
  • 翻译能够实现,是因为不同的文字系统在记录信息上的能力是等价的,那么如果数字作为信息的载体也是可行的,现代通信的基础
  • 罗塞塔石碑:信息的冗余是信息安全的保障,多语的对照语料是机器翻译的基础
  • 十进制:对数量进行编码
  • 象形文字 到 拼音文字,更加抽象的对信息编码的方式
  • 常用字短、生僻字长,符合信息论中的最短编码原理
  • 白话口语、文言文书写,信道宽,信息不必压缩;信道窄,信息需要压缩
  • 抄写《圣经》,校验码,字母对应一个数字,按行按列求和,对照有无抄写错误
  • 语法是语言的编码和解码规则,但语法有限,而语言无限,语法覆盖不到的例外当作语病处理?究竟从语法出发(即规则),还是从语言出发(即语料)
第二章 自然语言处理——从规则到统计
  • 字母、文字、数字是信息编码的不同单位
  • 任何一种语言都是一种信息的编码形式,而语法规则是编解码的算法
  • 图灵测试,达特茅斯会议
  • 基于规则的自然语言处理:句法分析、语义分析
  • 局限性:首先,覆盖真实语料所需要的文法规则数量巨大,语言学家来不及写,且加入新的规则可能产生矛盾。其次,自然语言的语法规则不同于计算机高级程序语言的文法,具有词义和上下文相关的特性,难用计算机解析。而程序语言是人为设计的、便于计算机解码的上下文无关文法。
  • 语义严重依赖上下文,甚至是常识
  • 上世纪70年代,基于统计方法的核心模型是通信系统加隐含马尔可夫模型,输入输出都是一维符号序列且保持原有的次序,对于句法分析这种语法成分对另一个语法成分的修饰关系不一定相邻的问题,以及次序会有很大变化的机器翻译问题都不能很好解决,加上没有足够的统计数据训练不出好的效果,所以争议持续了15年。
  • 基于统计的自然语言处理方法,在数学模型上和通信是相通的,语言和信息再次联系到一起。
第三章 统计语言模型
  • 统计语言模型:满足自然语言这种上下文相关的特性
  • 不同于判断这个文字是否合乎文法、含义是否正确,贾里尼克用简单的方法:一个句子是否合理,看它的可能性(即概率)的大小。假定句子S由词序列 w 1 , w 2 , … … , w n w_1,w_2,\dots\dots,w_n w1,w2,,wn组成,则概率如下。
    P ( w 1 , w 2 , … … , w n )    =    P ( w 1 ) ⋅ P ( w 2 ∣ w 1 ) ⋅ P ( w 3 ∣ w 1 , w 2 ) … … P ( w n ∣ w 1 , w 2 , … … , w n − 1 ) P(w_1,w_2,\dots\dots,w_n)\;=\;P(w_1)\cdot P(w_2\vert w_1)\cdot P(w_3\vert w_1,w_2)\dots\dots P(w_n\vert w_1,w_2,\dots\dots,w_{n-1}) P(w1,w2,,wn)=P(w1)P(w2w1)P(w3w1,w2)P(wnw1,w2,,wn1)
  • 马尔可夫将模型改进,每个词出现的概率只与前面的一个词有关,这种假设成为马尔可夫假设。
    P ( w 1 , w 2 , … … , w n )    =    P ( w 1 ) ⋅ P ( w 2 ∣ w 1 ) ⋅ P ( w 3 ∣ w 2 ) … … P ( w n ∣ w n − 1 ) P(w_1,w_2,\dots\dots,w_n)\;=\;P(w_1)\cdot P(w_2\vert w_1)\cdot P(w_3\vert w_2)\dots\dots P(w_n\vert w_{n-1}) P(w1,w2,,wn)=P(w1)P(w2w1)P(w3w2)P(wnwn1)
  • 估计条件概率 P ( w i ∣ w i − 1 )    =    P ( w i − 1 , w i ) P ( w i − 1 ) P(w_i\vert w_{i-1})\;=\;\frac{P(w_{i-1},w_i)}{P(w_{i-1})} P(wiwi1)=P(wi1)P(wi1,wi),根据大数定律,只要统计量足够多,相对频率就等于概率。
    P ( w i − 1 , w i ) ≈ # ( w i − 1 , w i ) #          P ( w i − 1 ) ≈ # ( w i − 1 ) # P(w_{i-1},w_i)\approx\frac{\#(w_{i-1},w_i)}\#\;\;\;\;P(w_{i-1})\approx\frac{\#(w_{i-1})}\# P(wi1,wi)##(wi1,wi)P(wi1)##(wi1)
  • 假定文本中的每个词 w i w_i wi和前面N-1个词有关,称为N-1阶马尔可夫假设,对应N元模型。N的取值一般很小,因为N元模型的空间复杂度为 O ( ∣ V ∣ N ) O(\vert V\vert^N) O(VN),而时间复杂度为 O ( ∣ V ∣ N − 1 ) O(\vert V\vert^{N-1}) O(VN1),其中|V|是一种语言词典的词汇量,导致复杂度很大。且当模型从3元到4元,效果的提升就不显著了,而资源的耗费却增加的很快。
  • 此外即便是高阶的模型,也不能覆盖所有的语言现象,因为自然语言中,上下文的相关性跨度极大。
  • 统计语言模型的零概率问题:增加数据量、平滑处理
  • 古德-图灵估计:把一部分看得见的事件的概率分给未看见的事件,越是不可信的统计折扣越多
  • 假定语料库中出现 r r r次的词有 N r N_r Nr个,语料库大小为 N N N,以相对频度 r N r / N rN_r/N rNr/N作为这些词的概率估计,根据古德-图灵估计,当 r r r小于一定阈值时,统计可能不可靠,于是用 d r d_r dr代替 r r r,
    d r = ( r + 1 ) ⋅ N r + 1 / N r          ∑ r d r ⋅ N r = N d_r=(r+1)\cdot N_{r+1}/N_r\;\;\;\;\sum_rd_r\cdot N_r=N dr=(r+1)Nr+1/NrrdrNr=N
  • 卡茨退避法:看得见的事件中出现次数高于阈值的用相对频度,低于阈值的用折扣后的相对频度,看不见的事件用分配概率量。
    P ( w i , w i − 1 ) = { f ( w i ∣ w i − 1 )    i f    # ( w i − 1 , w i ) ≥ T f g t ( w i ∣ w i − 1 )    i f    0 < # ( w i − 1 , w i ) < T Q ( w i − 1 ) ⋅ f ( w i )    o t h e r w i s e P(w_i,w_{i-1})=\left\{\begin{array}{c}f(w_i\vert w_{i-1})\;if\;\#(w_{i-1},w_i)\geq T\\f_{gt}(w_i\vert w_{i-1})\;if\;0<\#(w_{i-1},w_i)<T\\Q(w_{i-1})\cdot f(w_i)\;otherwise\end{array}\right. P(wi,wi1)=f(wiwi1)if#(wi1,wi)Tfgt(wiwi1)if0<#(wi1,wi)<TQ(wi1)f(wi)otherwise
    Q ( w i − 1 )    =    1 − ∑ w i s e e n P ( w i ∣ w i − 1 ) ∑ w i u n s e e n f ( w i ) Q(w_{i-1})\;=\;\frac{1-{\displaystyle\sum_{w_iseen}}P(w_i\vert w_{i-1})}{{\displaystyle\sum_{w_iunseen}}f(w_i)} Q(wi1)=wiunseenf(wi)1wiseenP(wiwi1)
  • 删除差值法:高阶模型的零概率问题更严重一些,于是用低阶模型进行线性插值达到平滑的目的。
    P ( w i ∣ w i − 2 , w i − 1 )    =    λ ( w i − 2 , w i − 1 ) ⋅ f ( w i ∣ w i − 2 , w i − 1 ) + λ ( w i − 1 ) ⋅ f ( w i ∣ w i − 1 ) + λ f ( w i ) P(w_i\vert w_{i-2},w_{i-1})\;=\;\lambda(w_{i-2},w_{i-1})\cdot f(w_i\vert w_{i-2},w_{i-1})+\lambda(w_{i-1})\cdot f(w_i\vert w_{i-1})+\lambda f(w_i) P(wiwi2,wi1)=λ(wi2,wi1)f(wiwi2,wi1)+λ(wi1)f(wiwi1)+λf(wi)
  • 语料的选择:保证训练语料与模型应用的领域一致
第四章 分词
  • 查字典的分词方法:遇到复合词就找最长的词匹配,遇到不认识的分割成单字词
  • 基于查字典的最少词数的的分词理论:难以解决二义性的问题
  • 统计语言模型分词:分词后的句子出现的概率最大(维特比算法)
  • 应用不同,汉语分词的颗粒度大小应该不同,比如在机器翻译中的颗粒度应该大一些,而在语音识别中的颗粒度应该小一些。所以不同的应用应该有不同的分词系统。但是更好的做法是让一个分词器同时支持不同层次的词的切分,需要一个基本词表和一个复合词表,各自建立语言模型。
  • 很多亚洲语言都存在分词问题,但是英语也有类似问题,主要是手写体识别中
  • 分词问题属于已经解决了的问题,提升空间有限
  • 人工切分词的一致性很低,很难讲一个准确率97%的分词器比95%的好,只能说与人工分词结果的吻合度更高一些。
第五章 隐含马尔可夫模型
  • 语音识别、机器翻译等自然语言处理问题都可以等价于通信的解码问题。根据接收端的观测信号 O 1 , O 2 , O 3 … … O_1,O_2,O_3\dots\dots O1,O2,O3来推测信号源发送的信号 S 1 , S 2 , S 3 … … S_1,S_2,S_3\dots\dots S1,S2,S3
    P ( S 1 , S 2 , S 3 … … ∣ O 1 , O 2 , O 3 … …   )    =    P ( O 1 , O 2 , O 3 … … ∣ S 1 , S 2 , S 3 … …   ) ⋅ P ( S 1 , S 2 , S 3 … …   ) P ( O 1 , O 2 , O 3 … …   ) ≈ P ( O 1 , O 2 , O 3 … … ∣ S 1 , S 2 , S 3 … …   ) ⋅ P ( S 1 , S 2 , S 3 … …   ) P(S_1,S_2,S_3\dots\dots\vert O_1,O_2,O_3\dots\dots)\;=\;\frac{P(O_1,O_2,O_3\dots\dots\vert S_1,S_2,S_3\dots\dots)\cdot P(S_1,S_2,S_3\dots\dots)}{P(O_1,O_2,O_3\dots\dots)}\approx P(O_1,O_2,O_3\dots\dots\vert S_1,S_2,S_3\dots\dots)\cdot P(S_1,S_2,S_3\dots\dots) P(S1,S2,S3O1,O2,O3)=P(O1,O2,O3)P(O1,O2,O3S1,S2,S3)P(S1,S2,S3)P(O1,O2,O3S1,S2,S3)P(S1,S2,S3)
  • 马尔可夫链:状态序列中每个状态只与前一个状态有关,一个状态到另一个状态存在转移概率。隐含马尔可夫模型是马尔科夫链的扩展,任一时刻的状态都是不可见的,但是它会产生输出一个符号且只与该时刻的状态的有关,称为独立输出假设。
    P ( S 1 , S 2 , S 3 … … , O 1 , O 2 , O 3 … …   )    = ∏ t P ( S t ∣ S t − 1 ) ⋅ P ( O t ∣ S t ) P(S_1,S_2,S_3\dots\dots,O_1,O_2,O_3\dots\dots)\;=\prod_tP(S_t\vert S_{t-1})\cdot P(O_t\vert S_t) P(S1,S2,S3,O1,O2,O3)=tP(StSt1)P(OtSt)
  • 于是上面的通信解码问题可以用隐含马尔可夫模型解决
  • 隐含马尔可夫的三个基本问题:
    1、给定一个模型,如何计算某个特定的输出序列的概率(Forward-Backward算法)
    2、给定一个模型和某个特定的输出序列,如何找到最可能产生这个输出的状态序列(维特比)
    3、给定足够多的观测数据,如何估计隐含马尔可夫模型的参数
  • 鲍姆-韦尔奇算法:
    1、随机的初始化参数,使其满足归一化约束。执行下面的EM估计
    2、
    E-step:由模型参数估计不同时刻状态转移的期望次数,以及出现某一状态的期望次数
    M-step:用E-step得到的期望值,重新计算参数
    3、重复执行步骤2,直至参数收敛(局部最优)
  • 隐含马尔可夫模型最初用于通信,和所有机器学习的模型工具一样,需要一个训练算法(鲍姆-韦尔奇算法)和使用时的解码算法(维特比算法)。
第六章 信息的度量和作用
  • 信息熵:变量的不确定性越大,熵也越大
    H ( X ) = − ∑ x ∈ X P ( x ) log ⁡ ( P ( x ) ) H(X)=-\sum_{x\in X}P(x)\log\left(P(x)\right) H(X)=xXP(x)log(P(x))
  • 网页搜索中,消除检索结果的不确定性应该是引入新的信息,而不是在关键词上玩数学和公式的游戏,最糟糕的做法是引入人为的假设。
  • 条件熵: H ( X ∣ Y ) ≤ H ( X ) H(X\vert Y) \leq H(X) H(XY)H(X),引入信息Y后,关于X的不确定性下降了
    H ( X ∣ Y ) = − ∑ x ∈ X , y ∈ Y P ( x , y ) log ⁡ ( P ( x ∣ y ) ) H(X\vert Y)=-\sum_{x\in X,y\in Y}P(x,y)\log\left(P(x\vert y)\right) H(XY)=xX,yYP(x,y)log(P(xy))
  • 互信息:两个随机事件“相关性”的量化度量, I ( X ; Y ) = H ( X ) − H ( X ∣ Y ) I(X;Y)= H(X)-H(X\vert Y) I(X;Y)=H(X)H(XY)
    I ( X ; Y ) = ∑ x ∈ X , y ∈ Y P ( x , y ) log ⁡ P ( x , y ) P ( x ) P ( y ) I(X;Y)=\sum_{x\in X,y\in Y}P(x,y)\log\frac{P(x,y)}{P(x)P(y)} I(X;Y)=xX,yYP(x,y)logP(x)P(y)P(x,y)
  • 解决二义性的方法:对每个可能的词义找到大量文本中互信息最大的一些词,再看看当前上下文中出现最多的类别,从而确定词义。
  • 相对熵(交叉熵):衡量两个取值为正数的函数的相似性(相对熵是不对称的)
    K L ( f ( x ) ∣ ∣ g ( x ) ) = ∑ x ∈ X f ( x ) ⋅ log ⁡ f ( x ) g ( x ) KL(f(x)\vert\vert g(x))=\sum_{x\in X}f(x)\cdot\log\frac{f(x)}{g(x)} KL(f(x)g(x))=xXf(x)logg(x)f(x)
    1、对于两个完全相同的函数,它们的相对熵等于零
    2、相对熵越大,两个函数的差异越大;反之越小,两个函数差异越小
    3、对于概率分布或者概率密度函数,如果取值均大于零,相对熵可以度量两个随机分布的差异性
  • 詹森和香农提出一种新的相对熵的计算方法
    J S ( f ( x ) ∣ ∣ g ( x ) ) = 1 2 [ K L ( f ( x ) ∣ ∣ g ( x ) ) + K L ( g ( x ) ∣ ∣ f ( x ) ) ] JS(f(x)\vert\vert g(x))=\frac12\lbrack KL(f(x)\vert\vert g(x))+KL(g(x)\vert\vert f(x))\rbrack JS(f(x)g(x))=21[KL(f(x)g(x))+KL(g(x)f(x))]
  • 相对熵最早用在信号处理上,比较两个信号是否接近;在信息处理中,用来衡量两段信息的相似程度,如一篇文章是否抄袭另一篇。
第七章 贾里尼克和现代语言处理
  • 贾里尼克的前辈等人在将统计的方法应用于自然语言处理时,遇到了两个障碍:缺乏计算能力强大的计算机和大量可以用于统计的机读文本语料。
  • 贾里尼克和波尔、库克以及拉维夫的另一大贡献是BCJR算法,这是今天数字通信中应用最广的两个算法之一(另一个是维特比算法),这个算法发明了20年后,才得以广泛应用。
第八章 简单之美——布尔代数和搜索引擎
  • Google的搜索质量第一技术负责人阿米特 ⋅ \cdot 辛格至今依然经常分析那些不好的搜索结果,不能总指望着靠一个算法、一个模型就能毕其功于一役,这很不现实。
  • 搜索服务的三个基础:下载网页、建立索引、相关性排序
  • 布尔代数:用数学的方法解决逻辑问题。由于过于简单,在提出的80多年后,才得以应用
  • 索引:一张大表,表的每一行对应一个关键词,而每个关键词后面跟着一组数字,是包含该关键词的文档序号(用布尔值0或1表示)
  • 解决索引大的问题:通过分布式的方式存储到不同的服务器上;根据网页的重要性、质量和访问频率建立常用和不常用的不同级别的索引。
第九章 图论和网络爬虫
  • 网络爬虫:通过图论中的遍历算法,将互联网视作一张大图,每个网页当作一个节点,而超链接当作连接网页的弧。
  • 定理:如果一个图能够从一个顶点出发,每条边不重复地遍历一遍回到这个顶点,那么每个顶点的度必须为偶数。
  • 由于互联网规模庞大,商业的网络爬虫需要有成千上万个服务器,而在工程实现上要考虑的细节非常多,对网页遍历的次序不是简单的BFS或者DFS。下载一个网站的调度程序原理基本上是BFS,但是为了避免和网站的服务器建立通信的过程消耗额外时间,往往要下载完一个网站再进入另一个网站,这个过程又有点像DFS。
  • 为了避免重复下载网页,上千台同时维护一张统一的散列表的通信成了爬虫系统的瓶颈:
    1、首先明确每台下载服务器的分工,看到某个URL就知道交给哪台服务器去下载
    2、判断URL是否可以下载可以批处理,一次发送大批询问,从而减少通信的次数
第十章 Page Rank——Google的民主表决式网页排名技术
  • 对于一个特定查询,搜索结果的排名取决于:
    1、网页的质量信息(Quality)
    2、这个查询与每个网页的相关性信息(Relevance)
  • 计算网页自身质量的数学模型:PageRank
    B = ( b 1 , b 2 , … … , b N ) T 为 网 页 的 网 页 排 名 B=(b_1,b_2,\dots\dots,b_N)^T 为网页的网页排名 B=(b1,b2,,bN)T
    A = ∣ a 11 ⋯ a 1 n ⋯ a 1 M ⋯ ⋯ ⋯ ⋯ ⋯ a m 1 ⋯ a m n ⋯ a m M ⋯ ⋯ ⋯ ⋯ ⋯ a M 1 ⋯ a M n ⋯ a M M ∣ 为 网 页 的 之 间 的 链 接 数 目 , 其 中 a m n 代 表 第 n 个 网 页 指 向 第 m 个 网 页 的 链 接 数 A=\begin{vmatrix}a_{11}&\cdots&a_{1n}&\cdots&a_{1M}\\\cdots&\cdots&\cdots&\cdots&\cdots\\a_{m1}&\cdots&a_{mn}&\cdots&a_{mM}\\\cdots&\cdots&\cdots&\cdots&\cdots\\a_{M1}&\cdots&a_{Mn}&\cdots&a_{MM}\end{vmatrix}为网页的之间的链接数目,其中a_{mn}代表第n个网页指向第m个网页的链接数 A=a11am1aM1a1namnaMna1MamMaMMamnnm
    A是已知的,而B是未知的,通过迭代 B i = A ⋅ B i − 1 B_i=A\cdot B_{i-1} Bi=ABi1使得最终收敛,初始假定 B 0 = ( 1 N , 1 N , … … , 1 N ) T B_0=(\frac1N,\frac1N,\dots\dots,\frac1N)^T B0=(N1,N1,,N1)T。由于链接数目稀疏,要对零概率和小概率事件进行平滑处理,网页排名的迭代公式改为: B i = [ α N ⋅ I + ( 1 − α ) A ] ⋅ B i − 1 B_i=\lbrack\frac\alpha N\cdot I+(1-\alpha)A\rbrack\cdot B_{i-1} Bi=[NαI+(1α)A]Bi1,其中N是互联网网页数目, I I I是单位矩阵, a a a是一个较小的常数。
第十一章 如何确定网页和查询的相关性
  • 今天,由于商业搜索引擎有了大量的用户点击数据,因此,对搜索相关性贡献最大的是根据用户对常见搜索点击网页的结果得到的概率模型。
  • 如果用关键词出现次数的多少来衡量相关性的话,长篇幅的网页更有利,所以采用关键词的概率(词频 TF)
    如果用总词频的和来衡量相关性的话,一些“停用词”的词频很大,但是对确定主题几乎没有用处,所以要附加上权重(即逆文本频率 IDF, l o g ( D D w ) log(\frac D{D_w}) log(DwD))。
    T F 1 ⋅ I D F 1 + T F 2 ⋅ I D F 2 + … ⋯ + T F N ⋅ I D F N TF_1\cdot IDF_1+TF_2\cdot IDF_2+\dots\dots+TF_N\cdot IDF_N TF1IDF1+TF2IDF2++TFNIDFN
  • IDF的概念就是一个特定条件下关键词的概率分布的交叉熵
  • 每个词的信息量为 I ( w ) = − P ( w ) log ⁡ P ( w ) = − T F ( w ) N log ⁡ T F ( w ) N = T F ( w ) N log ⁡ N T F ( w ) I(w)=-P(w)\log P(w)=-\frac{TF(w)}N\log\frac{TF(w)}N=\frac{TF(w)}N\log\frac N{TF(w)} I(w)=P(w)logP(w)=NTF(w)logNTF(w)=NTF(w)logTF(w)N
    假设:
    1、每个文献大小基本相同,均为M个词, M = N D = ∑ w T F ( w ) D M=\frac ND=\frac{{\displaystyle\sum_w}TF(w)}D M=DN=DwTF(w)
    2、一个关键字在文献中的平均出现次数为 c ( w ) = T F ( w ) D ( w ) c(w)=\frac{TF(w)}{D(w)} c(w)=D(w)TF(w)
    于是可以得到
    T F ( w ) log ⁡ N T F ( w ) = T F ( w ) log ⁡ M D c ( w ) D ( w ) = T F ( w ) log ⁡ ( D D ( w ) M c ( w ) ) TF(w)\log\frac N{TF(w)}=TF(w)\log\frac{MD}{c(w)D(w)}=TF(w)\log(\frac D{D(w)}\frac M{c(w)}) TF(w)logTF(w)N=TF(w)logc(w)D(w)MD=TF(w)log(D(w)Dc(w)M)
    整理得到 T F − I D F ( w ) = I ( w ) − T F ( w ) log ⁡ M c ( w ) TF-IDF(w)=I(w)-TF(w)\log\frac M{c(w)} TFIDF(w)=I(w)TF(w)logc(w)M
    可以看到,一个词的信息量越大,TF-IDF值也越大;同时w命中的文献中w出现的平均次数越多,TF-IDF也越大。从信息论的角度证明了TF-IDF模型的理论依据。
第十二章 有限状态机和动态规划——地图与本地搜索的核心技术
  • 使用有限状态机识别地址,解决的两个问题:
    1、通过一些有效地址建立状态机
    2、给出地址字串的匹配算法(后续通过分析网页,找到网页中的地址部分,建立本地搜索的数据库)
  • 对于用户输入不标准或错误的地址,使用基于概率的有限状态机进行模糊匹配,其和离散的马尔可夫链基本是等效的
  • 动态规划:将大问题分解为一个个寻找局部最优的重复子问题
  • 加权有限状态传感器:语音识别解码器的原理
    每个状态由输入和输出符号定义,根据输入和输出的可能性不同,赋予了不同的权重
    WFST中的每一条路径就是一个候选的句子,其中概率最大的那条路径就是这个句子的识别结果
第十三章 Google AK-47 的设计者——阿米特 ⋅ \cdot 辛格博士
  • 好的算法:简单,有效,可靠性好而且容易操作
  • 先帮助用户解决80%的问题,再慢慢解决剩下的20%的问题,是工业界成功的秘诀之一,许多失败并不是因为人不优秀,而是做事情的方式不对,一开始追求大而全的解决方案,之后长时间不能完成,最后不了了之。
  • 坚持简单方案的原因:容易解释每一个步骤和方法背后的道理,不仅便于出了问题时查错,而且容易找到以后改进的目标。其实每一项改进都是有得有失的,负面影响会慢慢累积,所以如果不能清楚如何避免它的发生,就会给未来带来隐患。
第十四章 余弦定理和新闻的分类
  • 文本的特征向量:所有实词的TF-IDF值排列成向量,词汇表中的未出现的词的TF-IDF值置零
  • 两个向量的方向一致,说明相应的新闻用词的比例基本一致,通过求向量夹角余弦值来衡量相似度
    cos ⁡ A = < b , c > ∣ b ∣ ⋅ ∣ c ∣ \cos A=\frac{<b,c>}{\left|b\right|\cdot\left|c\right|} cosA=bc<b,c>
  • 新闻分类的两种情况:
    1、已知一些新闻类别的特征向量,对于待分类的新闻Y,只需要找到与之相似度最大的新闻类别即可
    2、如果事先没有新闻类别的特征向量,采用自底向上不断合并的办法:计算所有新闻之间两两的余弦相似度,把相似度大于一个阈值的新闻合并为一个小类;把每个小类中的所有新闻作为一个整体,计算小类的特征向量,再计算小类之间两两的余弦相似性,然后合并为大一点的小类,直至类别越来越少。
  • 大数据量时的余弦计算:1、向量长度计算一次就保存起来 2、只考虑非零元素 3、去掉无用的虚词(去噪声)
  • 标题或重要位置的词,应该进行额外的加权,以提高文本分类的准确性
  • 准确性很好,但是适用于百万数量级的文本分类,对于大到亿级的数量,处理时间较长
第十五章 矩阵运算和文本处理中的两个分类问题
  • 将文本按照主题归类和将词汇表中的字词按意思归类,这两个问题可以利用矩阵运算中的奇异值分解SVD一次性解决
  • 用矩阵来描述文本和词的关联性,如果有M个词,N篇文章
    A = ∣ a 11 ⋯ a 1 j ⋯ a 1 N ⋯ ⋯ ⋯ ⋯ ⋯ a i 1 ⋯ a i j ⋯ a i N ⋯ ⋯ ⋯ ⋯ ⋯ a M 1 ⋯ a M j ⋯ a M N ∣ A=\begin{vmatrix}a_{11}&\cdots&a_{1j}&\cdots&a_{1N}\\\cdots&\cdots&\cdots&\cdots&\cdots\\a_{i1}&\cdots&a_{ij}&\cdots&a_{iN}\\\cdots&\cdots&\cdots&\cdots&\cdots\\a_{M1}&\cdots&a_{Mj}&\cdots&a_{MN}\end{vmatrix} A=a11ai1aM1a1jaijaMja1NaiNaMN
    i i i行,第 j j j列的元素 a i j a_{ij} aij是加权词频(如TF-IDF),通过奇异值分解上述的矩阵为三个小矩阵
    在这里插入图片描述
    第一个矩阵 X X X是对词进行分类的一个结果,每一行代表一个词,每一列表示一个语义类
    第二个矩阵 B B B是词的类别和文章的类别之间的相关性
    第三个矩阵 Y Y Y是对文本的分类结果,它的每一列对应一篇文本,每一行对应一个主题
  • 奇异值分解过程:
    X X X是一个酉矩阵, Y Y Y则是一个酉矩阵的共轭矩阵。(与其共轭矩阵转置相乘等于单位阵的矩阵为酉矩阵),而 B B B是一个对角阵,即只有对角线是非零值,而其对角线上元素的很多值相对其他值非常小,或者干脆为零,故可以省略,因此可以变成很小的矩阵。
    1、首先,将矩阵A变换成一个双对角矩阵,计算量 O ( M N 2 ) O(MN^2) OMN2
    2、将双对角矩阵变成奇异值分解的三个矩阵,计算量忽略不计
  • 在实际应用中,通常先进行奇异值分解,得到粗分类结果,再利用计算向量余弦的方法,经过几次迭代,得到比较精确的结果。
第十六章 信息指纹及其应用
  • 网址字符串的信息指纹计算方法:
    1、首先,将这个字符串看成一个特殊的、很长的整数
    2、用伪随机数产生器算法PRNG,通过它将任意很长的整数转换为特定长度的伪随机数。
  • 集合相同的判定:计算两个集合的指纹,即求集合中元素的信息指纹的总和。
  • 集合基本相同的判定:电子邮件中随机挑选特定尾号的邮件地址作为集合元素;网页中挑选IDF值最大的几个词作为集合元素,计算它们的信息指纹即可。
  • YouTube的反盗版:提取关键帧,用一组信息指纹表示这些关键帧。
    有趣的是,虽然所有视频都可以插入广告(包括盗版视频),但是广告的收益全部提供给原创的视频。
  • 相似哈希(具有容错率):
    假设一个网页中有若干的词 t 1 , t 2 , … … , t k t_1,t_2,……,t_k t1,t2,,tk,它们的权重(如TF-IDF)分布为 w 1 , w 2 , … … , w k w_1,w_2,……,w_k w1,w2,,wk。先计算出这些词的信息指纹,为了方便说明假定只用8位二进制的信息指纹。
    1、扩展:将8位二进制的指纹扩展为8个实数,如果对应位为1就是 w w w,为0就是 − w -w w
    2、收缩:将所有词的扩展后的实数按照对应位置加在一起,求和后,如果对应位置为正数,就置为1,为负数,就置为0。
    这样就得到了这个网页的相似哈希指纹,如果两个网页的相似哈希相差越小,相似度就越高。
第十七章 密码学的数学原理
  • 凯撒密码:字母对应表。只要多截获一些情报,统计字母的频率就可以破解密码
  • 改进:常用词对应多个密码,无法从密码中统计出明码的规律
  • 加密看作函数的运算,解密看作反函数的运算,则明码是自变量、密码是函数值,好的加密函数不应该通过几个自变量和函数值就能推出函数本身
  • RSA算法:
    1、找两个很大的素数(质数) P P P Q Q Q N = P × Q N=P \times Q N=P×Q
    2、计算 N N N的欧拉函数 φ ( N ) = ( P − 1 ) ( Q − 1 ) \varphi(N)=(P-1)(Q-1) φ(N)=(P1)(Q1)
    3、找到一个和 φ ( N ) \varphi(N) φ(N)互素的整数 E E E,找到一个整数 D D D使得 E × D E\times D E×D除以 φ ( N ) \varphi(N) φ(N)余1,即 E × D    m o d    φ ( N ) = 1 E\times D\;mod\;\varphi(N)=1 E×Dmodφ(N)=1
    公钥为E,私钥为D,N是公开的,根据欧拉定理: X φ ( N ) = 1 ( m o d    N ) X^{\varphi(N)}=1(mod\;N) Xφ(N)=1(modN)
    于是对 X X X加密,得到密码 Y Y Y X E m o d    N = Y X^Emod\;N=Y XEmodN=Y
    解密过程: Y D m o d    N = X Y^Dmod\;N=X YDmodN=X
  • 公开密钥的好处:
    1、简单,就是乘除
    2、可靠,密文是统计独立而分布均匀的;且加密者自己也无法解密,无法泄露
    3、灵活,可以产生很多公钥和私钥的组合
第十八章 搜索引擎反作弊问题和搜索结果的权威性问题
  • 搜索引擎结果中的人为噪声:针对网页排名的作弊、用户和不严肃的编辑创作的大量不准确信息。无法百分百避免
  • 早期提升网页排名的作弊手段:
    1、重复关键字、掩盖关键字
    2、利用PageRank的原理,贩卖链接
  • 通信中解决噪声干扰的方法在搜索反作弊中依然适用:
    1、从信息源出发,加强通信(编码)自身的抗干能力(针对商业的搜索,采用一套“抗干扰”强的搜索算法)
    2、从传输来看,过滤掉噪声,还原信息 (作弊的方法不是随机的,而且是时间相关的)
    不应该根据作弊的具体特征头痛医头,脚痛医脚,则容易被作弊者牵着鼻子走
  • 计算网页权威性:
    1、对每个网页正文进行句法分析,找出涉及主题的短语以及信息源
    2、利用互信息,找到主题短语和信息源的相关性
    3、对主题短语进行聚合,可以采用矩阵运算的方法
    4、对一个网站中的网页进行聚合,按照子目录进行聚类,权威性的度量只能建立在子目录这一级
    最终得到针对不同主题,哪些信息源(网站子目录)具有权威性的关联矩阵
第十九章 数学模型的重要性
  • 托勒密用大圆套小圆的方法,精确地计算了所有行星运动的轨迹
  • 哥白尼的日心说的模型误差大很多
  • 开普勒继承了大量来自老师第谷的观测数据,用椭圆描述星体运动轨迹
  • 海王星吸引天王星偏离轨道
  • 结论:
    1、一个正确的数学模型应当在形式上是简单的(托勒密的模型显然太复杂)
    2、一个正确的模型一开始可能还不如一个精雕细琢过的错误模型来的准确,但是只要我们认定大方向是对的,就应该坚持下去
    3、大量准确的数据对研发很重要
    4、正确的模型也可能受噪声干扰,而显得不准确,这时不能用凑合的修正方法加以弥补,找到噪声的根源,也许能通往重大的的发现
第二十章 最大熵模型
  • 在信息处理中,我们常常知道各种各样但又不完全确定的信息,如何能把它们结合在一起,我们需要用一个统一的模型将这些信息综合起来,这就是最大熵模型
  • 最大熵原理指出:对一个随机事件的概率分布进行预测时,我们的预测应当满足全部已知的条件,而对未知的情况不做任何主观假设,概率分布最均匀,预测的风险最小。这时概率分布的信息熵最大,所以称为“最大熵模型”。
  • 假定搜索的排序需要考虑20种特征 { x 1 , x 2 , … … , x 20 } \left\{x_1,x_2,\dots\dots,x_{20}\right\} {x1,x2,,x20},待排序的网页是 d d d,那么即使这些特征相互独立,对应的最大熵模型也是很长的,最大熵公式以及归一化因子如下
    P ( d ∣ x 1 , x 2 , … … , x 20 ) = 1 Z ( x 1 , x 2 , … … , x 20 ) e λ 1 ( x 1 , d ) + λ 2 ( x 2 , d ) + … ⋯ + λ 20 ( x 20 , d ) P(d\vert x_1,x_2,\dots\dots,x_{20})=\frac1{Z(x_1,x_2,\dots\dots,x_{20})}e^{\lambda_1(x_1,d)+\lambda_2(x_2,d)+\dots\dots+\lambda_{20}(x_{20},d)} P(dx1,x2,,x20)=Z(x1,x2,,x20)1eλ1(x1,d)+λ2(x2,d)++λ20(x20,d)
    Z ( x 1 , x 2 , … … , x 20 ) = ∑ d e λ 1 ( x 1 , d ) + λ 2 ( x 2 , d ) + … ⋯ + λ 20 ( x 20 , d ) Z(x_1,x_2,\dots\dots,x_{20})=\sum_de^{\lambda_1(x_1,d)+\lambda_2(x_2,d)+\dots\dots+\lambda_{20}(x_{20},d)} Z(x1,x2,,x20)=deλ1(x1,d)+λ2(x2,d)++λ20(x20,d)
  • 通用迭代算法GIS:(典型的期望最大化算法)
    1、假定第零次迭代的初始模型为等概率的均匀分布
    2、用第N次迭代的模型来估计每种信息特征在训练数据中的分布,如果超过了实际的,就把相应的模型参数变小;否则,将他们变大
    3、重复步骤2,直至收敛
  • GIS仅用来了解最大熵模型,改进的迭代算法IIS才更实用
  • 最大熵模型,形式简答,实现复杂(计算量大)
第二十一章 拼音输入法的数学原理
  • 输入法输入汉字的快慢取决于汉字编码的平均长度,就是击键次数乘寻找这个键的时间,提高输入法的效率在于同时优化这两点
  • 键盘上用来对汉字编码的只有26个字母键(对应拼音)和10个数字键(解决一音多字问题,消除歧义)
  • 对汉字的编码分为两个部分:对拼音的编码和消除歧义性的编码,只有两个编码都缩短才能输入更快
  • 双拼输入法:每个声母和韵母只用一个键即可表示,看似节省了编码长度,实际上很多声母和韵母共享同一个字母键,增加了消除歧义性编码的长度,同时增加了每一次击键的时间,且容错性不好
  • 而直接对汉字进行编码的输入法(如:五笔输入法),用户难以背下输入方法中所有汉字的编码,从而忽略了找到每一个键的时间
  • 最终用户选择了拼音输入法,而且是全拼输入法,优点是:
    1、不需要专门学习
    2、找到每个键的时间短
    3、编码长,有信息冗余量,容错性好
  • 香农第一定理:对于一个信息,任何编码的长度都不小于它的信息熵
  • 利用上下文的最好方法是借助语言模型,解决一音多字的问题(拼音转文字)效果最好,利用动态规划(准确讲是维特比算法),求出概率最大的句子。(需要对概率连乘取对数同时取反,变成加法)
  • 训练用户个性化的语言模型:
    1、将训练语言模型的文本按照主题分成很多不同的类别,比如1000个, C 1 , C 2 , … … , C 1000 C_1,C_2,……,C_{1000} C1,C2,,C1000
    2、对于每个类别,找到它们的特征向量(TF-IDF) X 1 , X 2 , … … , X 1000 X_1,X_2,……,X_{1000} X1,X2,,X1000
    3、统计某个用户输入的文本,得到他输入的词的特征向量 Y Y Y
    4、计算余弦相似度
    5、选择前 K K K个和 Y Y Y距离最近的类对应的文本,作为用户的个性化语言模型的训练数据
    6、训练一个用户特定的语言模型 M 1 M_1 M1
  • 采用通用模型 M 0 M_0 M0和特定模型 M 1 M_1 M1的线性插值模型,信息熵更小,不确定性更少
第二十二章 自然语言处理的教父马库斯和他的优秀的弟子们
  • 自然语言处理从基于规则转到基于统计的研究方法上,贡献最大的两个人是贾里尼克和马库斯
  • 马库斯:宾夕法尼亚大学LDC语料库
  • 柯林斯:追求完美,世界上最好的语言文法分析器
  • 布莱尔:简单才美,基于变换的机器学习方法
第二十三章 布隆过滤器
  • 判断元素是否在集合中,散列表存储效率低,而布隆过滤器只需1/8到1/4的大小
  • 布隆过滤器其实是一个很长的二进制向量和一系列随机映射函数
    对于每个邮件地址,先用不同的随机数产生器产生多个信息指纹,再把这些信息指纹映射为实数,将长二进制向量的对应位置置为1,即可
  • 布隆过滤器不会漏掉黑名单里的任何一个可疑地址,但是可能会发生误识别,可以建立一个白名单,存储被误判的信息
  • 其数学原理在于两个完全随机的数字相冲突的概率很小,因此可以在很小的误判率下,用很少的空间存储大量信息
第二十四章 马尔可夫链的扩展——贝叶斯网络
  • 贝叶斯网络:拓扑结构比马尔可夫链灵活,不受链状结构的约束。马尔可夫链是贝叶斯网络的特例,而贝叶斯网络是其的推广
  • 使用贝叶斯网络需要先确定网络的拓扑结构,然后还要知道个个状态之间相关的概率,分别称为结构训练和参数训练
  • 贝叶斯网络结构优化:
    1、考虑每一条路径,是后验概率最大,计算复杂度为NP-Hard
    2、贪心算法,每一步沿着箭头的方向寻找有限步,可能陷入局部最优
    3、蒙特卡洛方法,用随机数试探,是否陷入局部最优,计算量大
    4、计算节点之间的互信息,只保留互信息较大的节点直接的连接
  • 贝叶斯网络参数训练:EM算法
第二十五章 条件随机场、文法分析及其他
  • 条件随机场是隐含马尔可夫模型的一种扩展,它保留了隐含马尔可夫模型的一些特性,每个状态的转移概率只取决于相邻的状态,并改让一个观察值和前后的状态都有关
  • 条件随机场的节点分为状态节点的集合 Y Y Y和观察变量节点的集合 X X X,整个条件随机场的量化模型就是这两个集合的联合概率分布:
    P ( X , Y ) = P ( x 1 , x 2 , … … , x n , y 1 , y 2 , … … , y n ) P(X,Y)=P(x_1,x_2,\dots\dots,x_n,y_1,y_2,\dots\dots,y_n) P(X,Y)=P(x1,x2,,xn,y1,y2,,yn)
    ​ 由于模型的变量特别多,不可能获得足够多的数据来用大数定理直接估计,只能通过一些边缘 概率分布来找出一个符合所有这些条件的并使熵最大的概率分布函数
    P ( x 1 , x 2 , … … , x n , y 1 , y 2 , … … , y n ) = e f 1 + f 2 + … ⋯ + f k Z P(x_1,x_2,\dots\dots,x_n,y_1,y_2,\dots\dots,y_n)=\frac{e^{f_1+f_2+\dots\dots+f_k}}Z P(x1,x2,,xn,y1,y2,,yn)=Zef1+f2++fk
第二十六章 维特比和维特比算法
  • 维特比算法:针对篱笆网络的有向图最短路径问题
  • CDMA:频带利用率最大,每个发送者有不同的密码,接收者通过密码过滤掉自己无法解码的信号
  • 维特比亲自将研究成果应用到实际中,不仅提供关键性的发明,而且为了保障其效益在全社会得到最大化,解决了所有配套的技术
第二十七章 期望最大化算法
  • 在一般性的问题中,首先,根据现有的模型,计算各个观测数据输入到模型中的计算结果,这个过程称为期望值计算过程Expectation;接下来,重新计算模型参数,以最大化目标函数,这个过程称为最大化的过程Maximization。
  • 当优化的目标函数是一个凸函数时,EM算法能保证获得全局最优解
第二十八章 逻辑回归和搜索广告
  • 搜索广告发展的三个阶段:
    1、广告主出价高低来排名的竞价排名广告
    2、预测哪个广告可能被点击,综合出价和点击率等因素决定广告的投放
    3、进一步的全局优化
  • 预测点击率的难出:
    1、新的广告没有被点击的历史数据
    2、对旧的广告而言,统计数据也严重不足或不具代表性
    3、广告的位置等因素影响点击率,存在噪声
  • 逻辑回归模型:
    f ( z ) = 1 1 + e − z f\left(z\right)=\frac1{1+e^{-z}} f(z)=1+ez1
    z = β 0 + β 1 x 1 + β 2 x 2 + … ⋯ + β k x k z=\beta_0+\beta_1x_1+\beta_2x_2+\dots\dots+\beta_kx_k z=β0+β1x1+β2x2++βkxk
  • 逻辑回归和最大熵函数在函数值和形态上具有共性,训练方法也是类似的
第二十九章 分治算法和Google云计算的基础
  • 分治算法中的归并排序
  • 将矩阵进行切分再计算,这就是MapReduce(Google云计算的重要工具)的根本原理。将大任务拆分成小的子任务,并完成子任务的计算,这个过程叫做Map;将中间结果合并为最终结果,这个过程叫做Reduce。
第三十章 Google大脑和人工神经网络
  • 人工神经网络和贝叶斯网络的共同点:
    1、都是有向图,遵从马尔可夫假设
    2、训练方法相似
    3、对于很多模式分类问题,效果相似
    4、计算量都特别大
  • 人工神经网络和贝叶斯网络的不同点:
    1、人工神经网络在结构上是完全标准化的,而贝叶斯网络更灵活
    2、神经元函数为单变量的非线性变换,而贝叶斯网络中,毫无限制
    3、贝叶斯网络更容易考虑上下文的相关性,而人工神经网络的输出相对孤立,很难处理序列,常常应用于估计一个概率模型的参数
  • 人工神经网路:可以在多维空间划出各种形状的模式分类边界,训练算法相对简单,容易并行化实现
第三十一章 大数据的威力——数据的重要性
  • 可以从大量数据中发现很多原本难以找到的规律性
  • Google内部,产品经理遵循的规则:在没有数据之前,不要给出任何结论
  • 统计首先要求数据量充足:
    切比雪夫不等式: P ( ∣ X − E ( X ) ∣ ≥ ε ) < δ 2 n ε 2 P(\vert X-E(X)\vert\geq\varepsilon)<\frac{\delta^2}{n\varepsilon^2} P(XE(X)ε)<nε2δ2
  • 统计还要求采样的数据具有代表性
  • 搜索用到的数据中最重要的两类:网页本身的数据和用户点击的数据
  • 电话语音识别系统Google-411和Nuance原有系统相比,识别率没有提高,没有竞争力,但是通过提供免费的服务从大量的用户中获取了海量的语音数据,为其真正的语音识别产品Google Voice做好了准备。
  • 大数据更重要的在于它的多维度和完备性,有了这两点才能将原本看似无关的事件联系起来,恢复出对事物的全方位完整的描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值