基于支持向量机的文本分类系统设计与实现

 2022-01-23 21:05:55

论文总字数:22683字

摘 要

在信息飞速增长的时代,人们每天都要接受很多的信息,这些信息对人们来讲有的是有用的,有的则不是。互联网发展至今,越来越多的人们开始在网页上浏览各种新闻信息。不同的人有不同的偏好,有人只关注国内的新闻,有人则关心国际风云的变幻,有的人则无所谓。如果能把新闻按类别分类好则替阅读新闻的人省去了许多麻烦。然而,由于网络上的新闻数量巨大,若是靠人工来完成则工作量太大,时效性也差,因而我们使用机器学习技术中的支持向量机(Support Vector Machine)来完成这项工作。

支持向量机是常用的解决文本分类问题的方法。本文利用爬虫技术从互联网上的新闻门户中爬取一定数量的国内新闻文本和国际新闻文本,利用NLPIR2015软件对文本进行分词,利用TFIDF算法和文档频率算法对分词后的文本进行特征提取,并结合去除停用词等其他处理方法,得到文本的特征向量,最终对支持向量机进行训练和测试,并且调整参数进行改进与分析。

关键词:支持向量机,文本分类,TFIDF算法,文档频率算法,停用词,特征向量

The Design and implementation of DOCUMENT CATEGORIZATION system based on support vector machine

Abstract

In the era of information explosion, people face a variety of information everyday. Some of which is a useful, while the other is useless. Along the development of the Internet, more and more people begin to read news on the Internet. Different people have different preferences: some people only pay attention to the domestic news, some people are concerning about the international situation changes, and some people have no preference. If different kinds of news are categorized, it’s more convenient for readers to read the news. However, the number of the news online is so much that if we only rely on manual work, then it will be a hard work and the timeliness is poor. Therefore, we consider using artificial intelligence technology to automatically classify these news online. We use support vector machine (Support Vector Machine) to complete the work.

Support vector machine (SVM) is firstly put forward by Cortes and Vapnik in 1995, in solving small sample, nonlinear and high dimensional pattern recognition problems it shows lots of unique advantages and it can also be applied to many other machine learning problems such as function fitting.

Support vector machine (SVM) is based on the theory of VC dimension theory in statistical learning and structural risk minimization principle. it seeks the best compromise in the model complexity (i.e. to the specified training samples, learning accuracy) and learning ability (i.e., no wrong recognition ability of arbitrary sample) according to the limited sample information in order to obtain the best generalization ability.

Because support vector machine focused on the VC dimension, when it solves problems, it doesn’t care the dimension of the sample (even if the sample has 10 thousand dimensions), which makes the support vector machine (SVM) very suitable to solve the problem of document categorization. This is the reason that we choose support vector machine to do document categorization.

KEYWORDS: support vector machine, document categorization, TFIDF algorithm, Document Frequency algorithm, stop words, feature vector

目录

基于支持向量机的文本分类系统的设计与实现 I

摘 要 I

Abstract II

第1章 绪论 5

1.1 研究背景与意义 5

1.2 相关研究 5

1.2.1 文本分类 5

1.2.2 支持向量机在文本分类当中的应用 10

1.2.3 TFIDF特征提取算法在文本分类当中的应用 11

1.2.4 文档频次算法在文本分类当中的应用 11

1.3 功能分析 12

1.3.1 功能划分: 12

1.3.2 功能描述: 12

1.4 本文的组织结构 13

第2章 相关技术 14

2.1 分词 14

2.2 特征提取 14

2.2.1 去除停用词 14

2.2.2 TFIDF算法 14

2.2.3 文档频次算法 15

2.3 支持向量机 16

第3章 系统设计与实现 19

3.1 爬虫 19

3.2 分词 20

3.3 特征提取 21

3.3.1 特征提取步骤 21

3.3.2 流程 21

3.3.3 函数与数据结构 22

3.4 支持向量机 24

3.4.1 模型设计与流程 24

3.4.2 函数与数据结构 26

第4章 实验结果分析 30

4.1 结果展示 30

4.2 结果分析 47

4.3 评价 48

致谢 49

参考文献 50

绪论

研究背景与意义

互联网是上个世纪最伟大的发明之一。随着商业网络的发展和大量的商业公司进入了互联网,网上商业应用取得了巨大的发展,互联网为用户们提供了越来越多的服务,互联网迅速的普及和发展起来。随着时代的发展,越来越多的人们接触到了互联网,互联网因此惠及人们生活的方方面面。21世纪,人类进入信息爆炸的时代,新闻信息飞速增加。众多的新闻门户纷纷成立,吸引了大量的用户。渐渐地,人们开始习惯从互联网获取新闻信息。但不同的人有不同的偏好,有人只关注国内的新闻,有人则关心国际风云的变幻,有的人则无所谓。如果能把新闻按类别分类好则替读者省去许多麻烦。然而,由于网络上的新闻数量巨大,若是靠人工来完成则工作量太大,时效性也差,如果能用机器学习技术来自动进行新闻分类则可以省去很多人工成本,且迅捷及时。因而深入研究文本的智能分类的方法具有非常深远的意义。

相关研究

文本分类

文本分类就是根据预先定义的主题类别,按照一定的规则将文档集合中未知类别的文本自动确定一个类别,涉及数据挖掘、计算语义学、信息学、人工智能等多个学科,是自然语言处理的一个重要应用领域。目前,越来越多的统计分类方法、机器学习方法、数据挖掘技术和其它的新技术被应用到文本自动分类领域中,如:回归模型、最近邻分类器、规则学习算法、相关反馈技术、专家投票分类法、人工神经网络、支持向量机等。这些方法都能对一个预先分好类的文本集进行学习,获取每个类别的特征,自动生成分类规则,建立一个文本分类器。[1][1]

  • 文本分类步骤:

一个完整的文本分类过程主要包括以下几个步骤:[2][2]

  1. 预处理。根据采用的分类模型将文档集表示成易于计算机处理的形式。 [2]
  2. 项权重的计算。根据适宜的权重计算方法表示文档中各项的重要性。[2]
  3. 根据预处理的训练集学习建模,构建出分类器。[2]
  4. 利用测试集文档按一定的测试方法测试建立好的分类器的性能,并不断反馈、学习提高该分类器性能,直至达到预定的目标。[2]
  • 特征项必须具备以下特性:
  1. 特征项要能够确实标识文本内容。
  2. 特征项具有将目标文本与其他文本相区分的能力。
  3. 特征项的个数不能太多。
  4. 特征项分离要比较容易实现。

在中文文本中可以采用字、词或短语作为表示文本的特征项。相比较而言,词比字具有更强的表达能力,而词和短语相比,词的切分难度比短语的切分难度小得多。因此,目前大多数中文文本分类系统都采用词作为特征项,称作特征词。[3][3]这些特征词作为文档的中间表示形式,用来实现文档与文档、文档与用户目标之间的相似度计算。如果把所有的词都作为特征项,那么特征向量的维数将过于巨大,从而导致计算量太大,在这样的情况下,要完成文本分类几乎是不可能的。所以在不损伤文本核心信息的情况下尽量减少要处理的单词数,以此来降低向量空间维数,从而简化计算,提高文本处理的速度和效率。

  • 常用的特征提取方法有以下几种:
  1. 词频方法(Word Frequency):

词频指一个词在文档中出现的次数。通过词频进行特征选择就是将词频小于某一阈值的词删除,从而降低特征空间的维数。这个方法是基于这样一个假设,即出现频率小的词对过滤的影响也较小。但是在信息检索的研究中认为,有时频率小的词含有更多的信息。因此,在特征选择的过程中不宜简单地根据词频大幅度删词。[4][4]

  1. 互信息(Mutual Information):

互信息是计算语言学模型分析的常用方法,它度量两个对象之间的相互性。在过滤问题中用于度量特征对于主题的区分度。互信息的定义与交叉嫡近似。互信息本来是信息论中的一个概念,用于表示信息之间的关系, 是两个随机变量统计相关性的测度,使用互信息理论进行特征抽取是基于如下假设:在某个特定类别出现频率高,但在其他类别出现频率比较低的词条与该类的互信息比较大。通常用互信息作为特征词和类别之问的测度,如果特征词属于该类的话,它们的互信息量最大。由于该方法不需要对特征词和类别之问关系的性质作任何假设,因此非常适合于文本分类的特征和类别的配准工作。

特征项和类别的互信息体现了特征项与类别的相关程度,是一种广泛用于建立词关联统计模型的标准。互信息与期望交叉熵的不同在于没有考虑特征出现的频率,这样导致互信息评估函数不选择高频的有用词而有可能选择稀有词作为文本的最佳特征。因为对于每一主题来讲,特征t的互信息越大,说明它与该主题的共现概率越大,因此,以互信息作为提取特征的评价时应选互信息最大的若干个特征。

剩余内容已隐藏,请支付后下载全文,论文总字数:22683字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;