混淆词对挖掘
一种简单的混淆词对挖掘的方法,可用于文本纠错的召回模块:
- 如果有语料可跳过这一步,在这里我们简单爬取一些app的名字,然后随机替换掉正确app名字中的一个字,替换为同音字,例如【王者荣耀】变换成【王者荣药】,再通过一些自己写的模板生成句子
- 利用smooth nlp提供的新词发现接口,无监督发现新词,原理是左右熵与点间互信息
- 利用trie树,将拼音序列输入trie树,以便搜索同音序列
python3 sent_generated.py
python3 main.py
结果:
('婚贝请柬', '婚贝请间')
('黑马矿友', '黑码矿友')
('真像生活', '真享生活')
('山东移动', '山动移动')
('识歌识曲', '师歌识曲')
===================增加相似音
- 对生母韵母进行编码
- 将词转化为编码,来建树和搜索
结果:
'土拉拉' - 'AnBaBa'
'黑马矿友' - 'CfBaAd_i'
('土拉拉', '杜拉拉')
('黑马矿友', '非马宽友')