纯文本人工智能之句子如何分词

汉语的词有个特点,就是向前靠,例如:“深圳的欢乐谷是个发展十分迅速的主题公园。”这里边有个词“欢乐谷”,程序如何判断呢?是“欢乐”、“谷”两个词还是“欢乐谷”一个词?按照汉语的特点,程序首先判断整句话是不是一个词,然后去掉句子的最后一个字再判断剩下的是不是一个词,直到只剩下“深圳”这两个字,判断“深圳”是词后,在句子中去掉“深圳”,在判断剩下的“的欢乐谷是个发展十分迅速的主题公园。”这部分,依次类推,最后可以 分出全部的词。结合程序的其它判断部分,完全可以正确分出词来。其它判断部分主要是结合句子中词的词性的特点来判断。如,如果数据库中有“欢乐”和“谷”这两个词,而没有“欢乐谷”这个词时,前边的判断会在这个句子中把它判断为两个词。这时需要结合词性来判断,一般“名词+的”的后边应该也是名词或名词短语,而“名词+名词”还是名词,所以,不管“欢乐”是名词还是形容词,在这个句子中都是不通的,这是智能会提示“欢乐谷”是不是专有名词?来等操作人员确认。
     假如在“深圳的欢乐谷是个发展十分迅速的主题公园。”这个句子中程序只认识深圳,那么,去掉深圳以后的“ 的欢乐谷是个发展十分迅速的主题公园。”在放到分词对话框中去,以空格把正确的词分开,程序就可以识别了,下次再遇到“的”、“欢乐谷”、“是”、“个”、“发展”、“十分”、“迅速”、“主题公园”这些词时也就可以自动识别了。
     当然这样识别有个缺点,例如,如果“主题公园”、“深圳”我们之前分过,其它的没有的话,在“的欢乐谷是个发展十分迅速的主题公园。”这个句子中,“主题公园”就无法正确识别出来,需要我们手工再分一次。

原文地址:https://www.cnblogs.com/carl2380/p/2307715.html