Loading... ## 1.N-Gram 模型原理 N-Gram 机器学习主要是通过划分句子成分来进行语言分析。而划分句子的能力,就依赖于N-Gram最经典的模型: P(AB)=P(A)*P(B) 即将句子切片,A, B为一个个单独的汉字(词语),然后计算出每个字符与前后的字符的组合概率,然后通过概率的大小,来推断出自然语言规律。 ## 2.弊端 如果需要自己训练模型,那所需要的数据对象非常庞大,才可以训练出一个符合人类语言的模型,也耗时耗力。同时,训练得到的模型同样非常庞大,所以如果需要投入使用,服务器的要求并不底。 ## 3.优势 代码水平不高,无脑训练即可 ## 4.运用 将模型训练好后,通过切片,如运用python,则可以将语句切片成列表,然后对每一个元素及其前后元素运用训练好的模型进行概率计算。假如有一句话`Tom is a cat`,则通过切片,可以得到有序列表`["Tom","is","a","cat"]`,通过使用N-Gram模型计算,则可以得到 "Tom" 和 "is" 的概率为一个数值,以此类推,则可以通过这些数值的大小,判断出这句话是否通顺。 同时,为了优化名称以及专有名词的出现造成的模型不具有普遍性,我们可以通过判断词语的词性,通过词性进行进一步的判断。 或者,你可以给出几个词,组成无序列表 `["cat","Tom","a","is"]`,然后计算两两间的概率,从而按照大小可以得出一个完整的句子。 ## 5.前景 目前,各大在线翻译网站都使用的是类似这种N-Gram技术,将用户需要翻译的句子进行拆分,然后在数据库中进行检索每个词的翻译,再将每一个词通过N-Gram技术再重新组成一句通顺的话。 同样,N-Gram也被大量用于机器聊天领域,可以使一句繁琐冗杂的话变得精简,使机器可以在已知数据中检索到结果。搜索引擎也是同样的处理方式。 ## 6.总结 N-Gram的确是一个非常有用的需要处理办法,但是还是太过局限,所以还需要找到新的自然语言处方法。 Last modification:October 14, 2022 © Allow specification reprint Support Appreciate the author AliPayWeChat Like 请作者喝杯咖啡吧