Google原生输入法LatinIME词库扩容(Windows10环境)

去年在Linux(ubuntu)环境下针对LatinIME进行词库扩容处理,针对LatinIME的词库构建进行了一些列分析,大家可以查阅历史文章。词库扩容最近试了一下是可以的,具体流程大致如下(windows10环境):

1、安装MinGw以及gcc、g++、gdb等,下载地址:e795, 安装完成配置环境变量到path(..\mingw\bin)

2、进入到..\cpp\command目录进行make

windows下没有make命令的,需要到MinGw\bin目录下重命名mingw32-make.exe为make.exe,然后执行就行了。

3、make完成会看到当前目录下多了一个可执行文件:pinyinime_dictbuilder.exe

4、词库改动,这里以加入“堃”字为例,在rawdict_utf16_65105_freq.txt文件中加入:

然后在valid_utf16.txt文件中加入:

5、执行第3步中的可执行文件./pingyinime_dictbuilder.exe

输出如下:

此时到res/raw/目录下查看生成的新的词库dict_pinyin.dat,然后安装运行,测试就可以了。

 

*************************************************过程中遇到的问题**************************************************

1、make的时候报错:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: cannot find -lpthread

原因:没有安装lpthread相关包,打开mingw installationin manager选中如下包,安装即可:

2、上面第四步中,为什么还要在valid_utf16.txt文件中加入一次?

原因:这个txt中存放的都是词库中已知的汉字,“堃”字之前是不包含在其中的,如果不加入,词库树构建的时候是不会把这个字当成一个有效的汉字的,因此在输入“kun”的时候也就无法为你匹配到。

3、关于词频,怎么来的目前还不知道是不是有什么公式来计算,但是用法想必大家都能猜到,词频数字越大,在匹配结果中越是靠前,并且以此为基础加入到user_dict中,user_dict中会在此基础上进行加权,当然加权的前提就是用户选择了该词频对应的词语(lemma),因此在rawdict_utf16_65105_freq.txt文件中词频小的lemma,最终在user_dict中不一定就小,根据用户的使用习惯也就形成了个性化的词库,每次匹配次序都是先user_dict,然后再标准词库。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值