我们采用的新闻文本主要是利用互联网,采用人工下载整理部分具有特色的相关新闻,即带有积极色彩和消极色的文章。
2。2 文本预处理技术
2。2。1 中文分词及典型算法
在英文新闻文本中,英文单词之间都有空格分开,即使是单独的词也可以独立表达一个意思。而中文是没有空格隔开的,除了标点符号以外,计算机是没有办法直接识别的,在词方面,中文比之英文复杂多了。计算机如何正确的识别词语是非常重要的。例如:有一条新闻消息是“I like eating banana”,汉语意思是:“我喜欢吃香蕉”,计算机在处理时,可以识别出“banana”是一个词,但是计算机识别不出“香”和“蕉”是一个词,因此只有对中文文本中的词切分在一起计算机才会识别出来,也就是中文分词。
中文分词(Chinese Word Segmentation)的意思就是说将一个汉字切分成词。中文分词的技术主要分为三类:基于字符串匹配的分词算法、基于统计的分词算法和基于知识理解的分词方法。这三类中文分词算法各有各的特点。
1。基于字符串匹配的分词算法,通过扫描字符串,分词过程中若子串和词相同,则匹配成功。这类分词算法的优点就是分词速度快、实现简单;但是也有缺点,就是不能处理好有歧义和未登录的词。
2。基于统计的分词算法是通过汉语组词的规律来实现分词的,不依靠词典。其优点是能够识别出有歧义和未登录的词,比第一类分词效果好。缺点是需要有大量的语料来统计,分词速度较慢、算法比较复杂。
3。基于知识理解的分词方法是通过计算机能够理解句子,在进行分词的时候识别出句法和语义。优点就是利用对句子的理解来解决歧义问题。缺点就是速度较慢、技术实现难度大。
2。2。2 常见的分词系统
中文分词是对文本进行分析基础,中文的词语之间没有像英语那样有空格分开,因此,准确又能快速的进行中文分词还是比较难的。下面简单的介绍几种常见的分词系统:
1。最受欢迎的分词系统-ICTCLAS
汉语词法分析系统ICTCLAS是由中国科学院计算技术研究所研制出来的,其主要功能包括中文分词、词性标示、新词识别、支持繁体中文等。目前此分词系统已经升级到了ICTCLAS3。0,包括共享版、商业版和行业版,支持Linux平台,但是不开源。其分词速度快,应用范围广。
2。简易中文分词系统-SCWS
SCWS采用的是自行采集的词频词典,能够适用于一些中小型的搜索引擎。开发的语言是纯C语言,支持Unix-Like OS平台,提供共享的函数库,可以植入不同的软件系统,分词的效率较高。
3。HTTPCWS论文网
HTTPCWS目前只支持Linux系统。其是使用“ICTCLAS 共享版中文分词算法的API”进行分词,得出分词结果。
4。PHP无组件分词系统-PhpanAlysis
PhpanAlysis分词系统是基于字符串匹配的分词方法,就是指在词典中找到某个字符串,识别出相对应的词,则匹配成功。此分词系统实现简单,适用于一些简单的应用。
5。盘古分词
它是基于。net平台的一个开源中文分词组件,是采用字典和统计结合的分词算法。其功能包括:中文人名识别、简繁混合分词,词频优先分词等。
6。MMSEG4J
它是基于Java的开源中文分词组件。词语的准确率比较高。
7。开源的轻量级中文分词工具包-IKAnalyzer
IKAnalyzer3。0是面向Java的公用分词组件。其采用了“正向迭代最细粒度切分算法”具有超高的处理能力。