数学之美读书笔记(五)

Chapter.21拼音输入法的数学原理

双拼失败的原因:

1.增加编码的歧义性,使得候选项变多

2.比全拼的思考速度慢

3.容错性差,难以区分卷舌音和鼻音

五笔的没落:

1.需要背字根,上手时间较多

2.脱稿打字时,思维速度慢

拼音的优势:

1.不用学,谁都会

2.输入自然,思维连贯

3.编码有冗余,容错性好,平均击键次数小于3

1.输入法输入汉字的快慢取决于对于汉字编码的平均长度,就是击键次数乘以寻找这个键的时间

2.将汉字输入到计算机中,本质上是一个将我们认为约定的信息记录编码转化为计算机约定的编码(国际码或者UTF-8码)的信息转换过程。

3.对汉字的编码分为两个部分,对拼音的编码(按照汉语拼音标准让键盘上26个字母对应拼音),以及用于解决汉字一音多字问题的消除歧义编码

4.一个好的输入法不能要求用户一定得把每个字的音都读准,就如同一架普及型的照相机不应该要求使用者精通光圈和快门速度的设置。

5.语言和文字作为通信的编码手段,一个重要的目的是帮助思维和记忆。如果一个输入法中断了人的思维过程,就和人的自然行为不相符合。

6.香浓第一定律指出:对于一个信息,任何的编码长度都不小于他的信息熵。

7.每一个拼音可以对应多个汉字,把一个拼音串对应的汉字从左到右连起来,就是一张有向图,他被称为网络图或篱笆图(lattice)。拼音输入法就是要根据上下文在给定拼音条件下找到一个最优的(概率最大)句子。而在拼音串转为汉字的网络图中,两个节点(词)之间的距离就是其转移概率(从第一个音到第二个音)和生成概率(从音到词)的乘积。

8.数学的妙处在于他的每一个工具都有相当的普适性,在不同的应用中都能发挥巨大的作用。

9、个性化语言模型设计,利用通用模型以及用户自己的语料训练的模型,进行线性插值,获得更加适合的模型。相比利用最大熵模型获得的略差,但是模型比它简单,训练时间快,成本低。

10. 汉语全拼的平均长度为 2.98

 

Chapter.22自然语言处理的教父马库斯和他的优秀弟子们

1、建立了标准语料库组织,LDC语料库的重要性。

2、追求完美的柯林斯。

3、简单才美的布莱尔

 

Chapter.23布隆过滤器

 

1.在日常生活中,包括设计计算机软件时,经常要判断一个元素是否在集合中。最直接的办法就是将集合中全部的元素存在计算机中,遇到一个新元素时将它和集合中的元素直接比较即可。

2.布隆过滤器---实际上是一个很长的二进制向量和一系列随机应设函数,只需要哈希表的1/8到1/4的大小就能解决同样的集合存储问题

3.布隆过滤器有一定的误识别率,通常通过建立一个小的白名单用来存储那些可能误判的邮件地址来补救。

4.哈希表的存储效率一般只有 50%(需要了解数据结构哈希表)。

 

Chapter24.贝叶斯网络

 

1.符合马尔科夫假设(一个状态只与他直接相连的状态有关)的各种状态之间的关系网就是贝叶斯网络,网络每一个节点的计算都可以用贝叶斯公式进行,而网络的没一个弧度都有一个量化的置信度(权重)

2.使用BN必须先通过结构训练和参数训练确定网络的拓扑结构和各个状态之间的相关概率

3.exhaustivesearch--完备搜索,既考虑每一条路径才能得到全局最优解,但这样的计算复杂度是NP-hard(现有计算能力不能实现的)

4.greedyalgorithm---贪婪算法,在每一步时沿着箭头方向寻找有限步,但这种方法会导致陷入局部最优。

5.解决局部最优解的方法:

    5.1.蒙特卡罗法,用许多随机数在BN中试一试,看看是否显然局部最优

     5.2.利用信息论,计算节点之间两两的互信息,然后只保留互信息较大的节点直接连接,然后再对简化了的网络进行完备的搜索,找到全局最优的结构。

6.在确定BN的结构后,利用EM过程优化BN的参数(用条件概率度量的事件弧权重),以观察到的训练数据后验概率(条件X和结果Y之间的联合概率P(X,Y))最大化为衡量标准。,可用最大熵模型的训练方法训练。

7.结构训练和参数训练通常交替进行,直到模型收敛或误差达到设定阀值

 

Chapter25 条件随机场

隐含马尔可夫模型的扩展

应用:浅层句法分析,模式识别,机器学习等

隐含马尔可夫模型的观察序列里面,每一个观测值Xi都和它的状态Yi有关,如果把它前后的状态Yi-1,Yi+1也考虑进来,这个模型就是条件随机场

条件随机场的形式简单,但是实现复杂,它的训练也很麻烦,不过现在已经有开源软件可以用了

 

Chapter26维比特算法

它是一种动态规划算法,能够实时解决有向篱笆图的最短路径问题。

移动通信的基础

频分多址(FDMA):对频率进行切分,由于相邻频率会互相干扰,因些每个信道要有足够的带宽。由于带宽有限,要么限制通信人数,要么降低话音质量。

时分多址(TDMA):将同一频带按时间分成很多份,每个人的通信数据占这个频带传输时间的1/N

码分多址(CDMA):每个发送者有自己不同的密码,接收者接到不同信号时,过滤掉自己无法解码的信号,留下和自己密码对应的信号。

 

Chapter27EM聚类算法

无需指定聚类数量。上帝的算法。只需要有一些训练数据,定义一个最大化函数,剩下的事情就交给计算机了,经过若干次迭代,模型就训练好了。

需要指定一个距离函数,使得同类数据间的距离小,不同类数据间的距离大,这个函数最好是凸函数,否则会陷入局部最优解,而不是全局最优解。

 

Chapter28逻辑回归

利用一个函数将所有实数映射到(0,1) 

在研究一个问题时,经常会有很多因素对其造成影响,不妨把这些因素记为一个向量(x1,x2…xn),然后利用上面的公式把它们线性组合起来。

Z= a0 + a1x1 + a2x2 +…+anxn, 这样就实现了多因素的归一化,无论这些因素的值是多少,都可以把它们统一量化到(0,1)范围,然后进行分析。

注意到Z其实就是一个一级的神经网络,任意训练神经网络的方法都可以用来训练并确定系数组。

不过这种形式的逻辑回归函数和最大熵模型在函数值和形态上有共性,因此训练方法也是类似的,IIS方法也可直接用于训练逻辑回归函数的参数。

该模型还用于生物统计,比如预测生物数量发展趋势。大学数学建模所用的预测模型。

 

Chapter29云计算的基础

思想:分而治之

以矩阵乘法为例,计算C=A*B,当一台服务器存储不下矩阵A时,如何做矩阵乘法呢?

 

将A和B分别按行按列拆成M*N个小矩阵,然后将每个小矩阵分给一个服务器来计算,再把所有计算结果合并起来,矩阵乘法就完成了。

由于服务器之间是并行计算,所以计算时间是原来的1/(N*M).

这就是google的MapReduce的根本原理,将一个大任务拆分成效的子任务,并且完成子任务的计算,这个过程叫做Map,将中间结果合并成最终结果,这个过程叫做Reduce。总的来说其原理就是计算机算法中常用的“各个击破”法。

 

附录:计算复杂度

P问题:如果一个算法的计算量是N的多项式函数(PolynomialFunction),则认为这个算法是多项式函数复杂度的。如果一个问题存在一个多项式函数复杂度的算法,则该问题为P问题。

NP问题:如果计算量比N的多项式函数还高,虽然从理论上讲如果有无限的时间也是可以计算的(图灵机概念下的可计算),但是实际上是不可计算的。这时称它为非多项式(Non-deterministicpolynomial)问题。

NP-Complete问题:如果一个NP问题,虽然它找不到多项式函数复杂度的算法,但是对一个算法可以在多项式函数复杂度的时间里证实这个方法正确与否,那么这个问题成为NP-Complete问题。

NP-Hard问题:如果一个问题,它的计算复杂度至少是NP-Complete,那么它被称为NP-Hard问题。

NP-Hard问题包含NP-Complete问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值