整句输入方案准确率的定量评价
整句输入方案一直以来难以正确评估其准确率,通常都是基于个人主观体验,在不同的输入方案之间比较的时候往往难以服众。本 文提出了一种定量评价整句输入方案准确率和码长的方法,并以比较无格式和有格式二三整句为例阐述了具体的实验过程。
语料的标准化处理
选取一定规模的语料,切分成仅由汉字构成的短句。为使程序简便起见,可以只考虑 0x4E00 ~ 0x9FFF 内的汉字。
平台的标准化处理
各个方案只提供单字码表,一字一码(不考虑多音字),然后用 Rime 简化字八股文生成词库和词频。采用 librime console 作为模拟输入法,输入时采用 script_translator 动态组句,并装配 2-gram 语言模型。
对语料处理得到的每个短句,预先在单字码表中查询用户应该输入的编码。如果缺字,则此短句作废。如果编码查询成功,则向 librime console 发送编码,返回组句结果。计算组句结果和原始短句的 Levenshtein 距离。记各个短句为 ,查询得到的编码为 ,方案返回的组句结果为 ,则该方案的准确率得分为
而码长为
方案的标准化处理
有的时候我们不在意具体的输入方案,而是在意实现整句输入的抽象结构和技术。例如,无格式二三整句和有格式二三整句哪个准确率更高?此时,可以用随机编码的方式排除方案设计的影响。
不妨设总字母表 U 大小为 26,无格式编码包括二码 UU 和三码 UUU,而有格式编码(二码顶)划分为大键盘 A = 18、小键盘 B = 8,包括二码 AU 和三码 AUB。
首先用均匀采样的方法得到每个字无格式编码的三码(全码),然后按字频从高到低安排二简,这样就得到了无格式编码。为了尽量减小测量的随机误差,我们让无格式编码和有格式编码尽量耦合,因此与其对应的有格式编码可以用以下方法得到:取无格式编码的全码,对第一码在 A 中重新采样,第三码在 B 中重新采样,然后按字频从高到低安排二简,这样就得到了有格式编码(二码顶)。
使用这种随机编码的方法,对无格式二三整句和有格式二三整句各实验 次,对准确率和码长计算平均值和标准差,即可得出两者有显著差异或者无显著差异的结论。