智能手机的定位和导航功能,其实只有三项关键技术:
- 利用卫星定位,这一点传统的导航仪都做得到
- 地址的识别
- 根据用户输入的起点和终点,在地图上规划最短路线或者最快路线
1 地址分析和有限状态机
我们在寄快递的时候通常会要求用户填写地址,但是用户填写的地址五花八门,但是快递总能成功地寄送到目的地,这是因为快递员能够进行识别。
但是如何使用机器进行识别呢,这并不是一件容易的事情,因为地址是上下文相关的。例如
这时就需要根据上下文判断语义的正确性。
因为地址的上下文相关性,所以这里应用了有限状态机。
有限状态机是一种特殊的有向图,下图就是一个简单的有限状态图的例子:
每一个有限状态机都有一个开始状态和一个终止状态,以及若干中间状态。每一条弧上带有从一个状态进入下一个状态的条件。如果一条地址能从状态机的初始状态到达结束状态,则这条地址有效,否则无效。
但是对于有限状态机来说,对于用户输入的地址不太标准或者有错别字时,有限状态机就会束手无策,因为它只能进行严格匹配。
为了解决这个问题,需要进行模糊匹配,因此后来提出了基于概率的有限状态机。
2 全球导航和动态规划
动态规划的思想在计算机中是比较常用的。基本思想就是自底向上进行构建,将一个大问题分解成很多个小问题,优先求解小问题的最优解,一步一步向上构造,就能得到全局的最优解。
例如我们想要计算从一个地方到另一个地方的最短距离,就可以利用动态规划的思想。我们可以在地图上画一条横线,找到从起点到这条横线上的点对的最短距离。之后再绘制更远的横线,一步一步,直到到达终点为止。
3 延伸阅读:有限状态传感器
下面给出有限状态机的严格数学模型:
其实整个流程又可以描述为:
在语音识别和自然语言理解领域,有一种特殊的有限状态机,称为加权的有限状态传感器(Weighted Finite State Transducer,简称WFST)。
有限状态传感器的特殊性在于,有限状态机中的每个状态由输入和输出符号定义。
状态4的定义就是“输入为is或者are,输出为better或worse”状态,只要在某一时刻前后的符号为is/are和better/worse的组合就能进入此状态。
在语音识别中,每个被识别的句子都可以用WFST来表示
概率最大的路径就是这个句子识别的结果。