
我回复中的原意是用机器学习的方法无法满足百分之百的匹配要求,所以不用考虑。
至于有什么方法,关联规则分析大概可以实现,思路是建立标准词和变异词之间关联规则,然后用变异词预测标准词。
但是,还是回到老问题,任何模型都是有误差的,而基于这些模型所做的任何预测也是有误差的,这是统计原理的问题。
而且这种方法还是有上面所说的另外一个问题,就是对于每一个标准词,你都要尽可能多地给出变异词,这个步骤仍然需要人工介入。
你可能没理解我提到的另外一个方案,就是不要管这个标准词可能变成什么,只要界定标准词库。
处理实际的样本时,比如有人可能输入“安庆第五中学”,利用中文解词包jiebaR,可以把这个变异词分解成“安庆”、“第五”、“中学”,这个过程就相当于你人工建立变异词库,只不过你建立的是“安庆第五中学”,而jiebaR建立的是变异词的结构分解。然后,你设计一个算法,反正就几万家医院,数据不是很大,不赶时间的话就用循环一条条地匹配,每一次匹配过程可以这样,分别看分解的词匹配到标准库里的哪些词,通常三个词匹配的子集的交集,大概率是可以匹配到最终的标准词的。
另外,你的数据里可能也有医院地址之类的,可以再结合地址的判断,以提高匹配的准确率。
对于正名和别名相差比较大的数据,比如第三军医大学第三附属医院,更多人叫大坪医院,处理起来就麻烦了,所以更需要结合地址、邮编、电话等多个变量进行综合判断。