系列文章目录
JS的垃圾回收机制-----------------------------js的番外拓展 (一)
https://blog.csdn.net/weixin_44070254/article/details/116245572?spm=1001.2014.3001.5501
文章目录
前言
中文分词的技术是怎样实现的?例如有一段文字“吃亏不要紧,只要主义真”,双击“吃”字,会自动选中“吃亏”。我想问的就是系统怎么知道这两个字构成一个词?京东的分词还是非常牛的,支持汉语拼音分词、简拼分词、英语分词、数词分词,太厉害了。
比如我这样搜索:
当搜索一个名词时,下面的提示框会提示相关的不同名词。
但是当我输入拼音的时候,看清楚了:
它自己给拼音进行了解析,提示框也给出了相关的提示,是不是很神奇呢,太牛了吧。那这背后到底是怎么样的算法实现呢?
我忍不住去翻阅了相关资料和问了度娘,这篇博客带你们见识一下这个神奇的算法吧。
在中文自然语言处理中,词是最小的能够独立活动的有意义的语言成分。汉语是以字为基本书写单位,词语之间没有明显的区分标记,因此进行中文自然语言处理通常是先将汉语文本中的字符串切分成合理的词语序列,然后再在此基础上进行其它分析处理。中文分词是中文信息处理的一个基础环节,已被广泛应用于中文文本处理、信息提取、文本挖掘等应用中。分词涉及许多方面的问题,主要包括:
一、分词涉及的主要问题 ?
1. 核心词表问题
许多分词算法都需要有一个核心的(通用、与领域无关的)词表。凡在该词表中的词,分词时就应该切分出来。但对于哪些词应当收进核心词表,目前尚无一个标准;2.词的变形问题
汉语中的动词和形容词有些可以产生变形结构,如“打牌”、“开心”、“看见”、“相信”可能变形成“打打牌”、“开开心”、“看没看见”、“相不相信”等,它们可以被切出“打打/牌”,但“开开/心”就不合理;“看/没/看见”说得过去,“相/不/相信”就说不过去。又如大量的离合词如“打架”、“睡觉”等可以合理地变形为“打了一场架”、“睡了一大觉”。对这些变形结构的切分往往缺少可操作而又合理的规范;