3.2.1N元文法模型基于统计的N-gram处理模型

226 Computer Engineering April 5, 2011 整个过程由三部分组成:接收用户输入信息;辅音切分和语音转换;将结果输出到应用程序。

3.1个用户输入信息

由于硬件设计的差异,中国联通的智能设备主要有两种输入方式:全按键式和全触屏式。也有包含这两种方法的模型。无论配置如何,都可以通过密钥风暴窃听器的方法获取用户输入信息。全触屏类型需要输入法本身实现一个软键界面,供用户点击输入。为了从应用程序获取用户输入,应用程序需要通过IMM(InputMethodManager)通知操作系统它的输入可以被IME(InputMethodEditor)程序捕获。在英文输入法中,用户的输入信息为拼音流,找到信息后即可进行转换工作。 IMM/IME的工作原理将在第5节介绍。3.2 辅音切分和语音转换

这部分主要由输入法软件的内部逻辑完成。主要功能是将拼音流转成汉字流。使用的模型有以下两种。

3.2.1N 元语法模型

基于统计的N-gram模型(N-gram)是一种常用的自然语言处理模型,它可以更好地表示句子中单词和句子之间的依赖关系。在这个模型中,假设句子中第 i 个词的概率 P(wi) 只取决于出现在它上面的 n-1 个词。概率估计公式为:

P(wi)=P(wi|win+1,win+2,L,wi1)=

P(win+1,win+2,L,wi)P(w=

C(win+1,win+2,L,wi)(1)

in+1,win+2,L,wi1)C(win+1,win+2,L,wi1)

其中,C(win+1,win+2,L,wi)是成语组合win+1,win+2,L,wi在语料库中出现的次数。

使用 Bigram 模型时,句子中第 i 个词的概率 P(wi) 只取决于出现在它上面的词,句子 S={w1w2Lwn} 的概率为:

P(S)=P(ww12Lwn)=P(w1)P(w2|w1)LP(wi|wi1)LP(wn|wn1)@ >(2)

借助语料库中获得的每个单词的unigram和单词之间的二进制词频ime输入法编程 可实现输入法注入,可以估计出这个单词形成短语的概率。

3.2.2 个最佳句子估计

通过Bigram模型,可以得到任意句子出现的概率S={w1w2Lwn},然后就是找到最合理的词和句。由于只需要得到最优的句子路径,因此使用维特比算法来估计最大可能的句子路径。估计公式为:

maxP(S)=max[P(w1)P(w2|w1)LP(wn|wn1)]=

∏maxP(wi|wi1≤≤in

1)

(3)

其中,maxP(wi|wi1)是在这些拼音分词下最大化P(wi|wi1)值的转换词。

3.3个结果输出

这部分功能必须使用IMM/IME之间的数据和消息传输机制来完成。当输入法软件将转换后的汉字结果提交给应用程序时,通过IME套接字获取应用程序中的IMM连接对象,由该对象发送数据,应用程序端的IMM对象将进行风暴和数据处理,并将数据交给应用程序。要处理的程序。

面临的4个问题及其解决方案

在联通设备上实现句子级输入法,主要有两个难点:(1)在联通设备有限的内存空间中,要保证字库和程序的运行。( 2)既要保证拼音分词和拼音转换的准确率,又要保证估计量在联通设备允许范围内[3]。

4.1 显存空间问题解决显存空间问题

由于外部I/O消耗大量时间,需要频繁访问的内容存储在显存中。输入法初始化时,整体读取字体文件

Enter,使用最简单的字段进行存储。之所以使用链表,是因为Java不支持结构体,对象需要消耗大量显存和求值时间。必要的存储空间开销被声明为静态类型。该类型的特点是类的所有对象引用共享该类型变量的存储空间,系统初始化时会先分配显存空间,但必须注意防止读写逻辑错误。 另一方面需要注意的是内存回收,虽然Java有自己的垃圾回收机制ime输入法编程 可实现输入法注入,但是当资源急需时,强制回收代码,防止联通平台显存不足的问题.

4.2 运行时问题的解决方法

避免所有重复估计,并使用回退机制仅估计更改。例如,当用户减少或删除拼音时,只重新估计最后一段的拼音,句子路径只重新估计改变的节点。优化拼音表和词库的存储格式,采用Trie树索引方式,减少查找时间。减少学习模块,进一步降低转化准确率。

5Android操作系统及其IMM/IME框架

5.1 平台介绍

Android 智能操作系统的第 1 版由 OpenHandsetAlliance 开发,该平台的功能由 Google Projects for Android 进一步构建。该平台主要有以下优点:(1)代码完全开源,增加了平台用户的开发成本;(2)基于Linux通用操作系统,具有良好的硬件兼容性;( 3)丰富(4)对第三方开发的强大支持。目前平台主要支持的开发语言为Java,推荐开发环境为Eclipse,并配备相应的虚拟设备软件.

5.2Android平台IME/IMM系统框架

IME/IMM框架是操作系统的重要组成部分,主要协调操作系统、应用程序和输入法软件之间的干扰和数据传递,并负责输入法之间的切换。 Android平台下的IMM/IME结构及编译输入法所需的基本模块如图2所示。输入法主程序必须实现InputMethod套接字,否则应用程序将难以通过InputMethodManager控制输入法类,它不会被转换。后续输入信息。

图2 Android平台IMM/IME结构

6 系统实现

6.1 系统结构

开发平台有:AndroidSdkWindows1.5r2; EclipseV3.4.2; J2SESDK1.6.0_14.

系统结构如下:系统采用统一建模语言(UML)设计,系统类图如图3所示。

Android系统将InputMethod属性赋予一个Service(服务)类型的程序,并且要求实现输入法的主类必须继承API类:Input

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 网站程序 3.2.1N元文法模型基于统计的N-gram处理模型 https://www.wkzy.net/game/8501.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务