一、信息检索基础
信息检索基础之文本特征提取
- 文本挖掘的任务:从海量文档中发现隐含知识和模式
- 文本挖掘的特殊性:挖掘的对象海量异构分布的文档,文档内容是人类所使用的自然语言,缺乏计算机可以理解的语义
- 文本挖掘的问题:在计算机中如何合理的表示文本,使之既要包含足够的信息以反应文本的特征,又不至于过于复杂使算法无法处理
- 文本的表示:将从文本中抽取出的特征词进行量化来表示文本信息,从一个无结构的原始文本转化为结构化的计算机可以识别处理的信息来代替文本。目前通常采用向量空间模型来描述文本向量。(分词算法和词频统计算法)->维度特别大,因此必须在保证原文含义的基础上对文本做进一步的净化,找出对文本特征类别最具有代表性的文本特征->通过特征选择进行降维。
- 特征项:用于表示文本的基本单位称为文本的特征或者特征项,
特征项的特性:特征项确实能够标识文本内容,特征项具有将目标文本与其他文本相区分的能力,特征项的个数不能过多,特征项的分离要比较容易实现。
特征抽取:在不损伤文本核心信息的情况下尽量减少要处理的单词数,以此来降低向量空间的维数。通常根据某个特征评估函数计算各个特征的评分值,然后按照特征值对这些特征进行排序,选取若干个评分值最高的作为特征词,这就是特征抽取。 - 特征选取的方式
1.用映射或变换的方法把原始特征变换较少的新特征
2.从原始特征中挑选出一些具有代表性的特征
3.根据专家的知识挑选最有影响力的特征
4.用数学的方法进行选取,找出最具分类信息的特征。第四种方法是一种比较精确的方法,人为因素的干扰比较少,适合文本自动分类挖掘系统的应用 - 评测数据集:一般人工构造。它的构成为较大规模的文档集合,查询集和每个 查询对应的相关文档列表
- 评价指标:衡量检索结果与标准答案之间的一致性
Web检索
Web是指采用自动或者半自动的方式遵循一定的策略> 在web上搜集和发现信息。实现web搜索的技术统称> 为web搜索技术,主要包括制定搜索策略,对网页链> 接进行分析,评价web信息资源的质量分析信息资源> 的内容以及计算信息资源与搜索查询的相关程度
Web检索=文档检索+针对web搜索的新技术
- Web页面爬取策略:以广度优先为主,深度优先为辅
- Web页面排序
- 基于相关度的排序(计算查询与页面内容的相似程度)
- 基于重要性的排序(基于链接分析计算)
- 综合排序(结合相关度和重要性的排序,页面排序值=页面内容相关度与页面内容重要性的和或者乘积)
- web链接分析:web页面之间的超链关系非常重要,一条从页面A指向页面B的链接表明A与B相关
- 搜索引擎优化:提高网站或者网页在搜索引擎中的可见度(排名)的过程
- SEO的目标:网站网页显示在搜索引擎的置顶位置,网站网页的访问流量增加,提高产品的品牌声誉,更好的针对目标人群,减少市场活动的开销
- SEO操作:
- 站外SEO,网站外部链接优化,网站的链接建设,网站的外部数据分析。
- 站内SEO,网站结构的设计,网站代码优化和内部链接优化,网站内容的优化,网站用户体验优化
二、文本分类
文本分类过程
文本分类是一个映射的过程,它将未标明类别的文本映射到已有的类别中,该映射可以是一一对应也可以是一对多的映射,因为通常一篇文本可以同多个类别相关联。
用数学公式表示为:
F:A->B A=(D1,D2..) B=(C1,C2…)
A 为所有待分类的文本,B为给定分类体系下所有类别的集合。A可以为无限集,B只能为有限集。
文本分类的映射规则是通常所说的分类方法f,它是文本分类系统的关键,它是系统根据训练集的样本信息总结出来的分类规律,来建立判别公式和判别规则,遇到新文本后根据总结出来的文本分类的映射规则确定该文本相关的类别。
文本分类一般包括文本的预处理、文本的表示、特征提取、分类器的选择与训练、分类结果的评价与反馈。
- 文本预处理:从文本中提取关键词来表示文本的处理过程。
一般情况下计算机处理的文本不仅包括表达内容的文字,还包括一些功能性的标签,如控制外观及显示样式的网页标签,这些标签对文本内容和属性的判断是没有实际意义的,属于文本分类的噪音,在分类操作之前就予以删除。
中文文本在预处理阶段与英文文本有很大不同,中文文本预处理的过程:
- 处理文本标记
文本根据来源不同,一般带有与内容无关的信息,如控制显示外观、标点符号、图像声音动画。它们有一个共同特点是不包含文本内容,这些属于噪音,应该去掉。
完成这一步骤后再进行查找标题,篇章切分为段落,段落切分为句子等相关的处理,将文本处理为同意的格式,便于分类的进行。 - 中文分词
用字作为特征项将导致特征向量庞大,分类器学习时容易造成特征空间的维灾难,词组虽然携带足都的信息量但是词组在文本中出现的几率不多,用词组作为特征项会导致特征向量稀少损失很多重要的信息。因此为了提取中文词条,需要对中文文本进行分词处理,目的是将连续的字序列按照一定的规范重新组合成词序列。
分词技术归纳为三类:
- 基于词典匹配的分词算法(按照一定的策略将待分析的字符串与词典中的词条进行匹配,若找到某个字符串则匹配成功,即识别出一个词。这种方法简单高效,但是它完全依赖词典,没有歧义判别能力,并且由于汉子中语言现象复杂,词典不完备规则不一致等问题使得这种方法难以适应大规模文本的分词处理)
- 基于统计的分词算法(把字与字相邻共现的频率作为成词的可信度评价标准。可以对语料库中相邻共现的各个字的组合的频率进行统计,互现信息体现了汉子之间结合关系的紧密程度,当紧密程度高于某一个阈值时,便可认为此字组可能构成了一个词。这种方法是通过调查真是语料库取得的,具有较好的实用性。局限性---可能会且分出一些共现频率高但是并不是词的组合)
- 基于理解的分词算法(也称为基于知识的分词算法。需要进行句法语义分析,因此它需要用大量的语言知识和信息来指导分类算法,使其可以通过上下文内容所提供的信息对词进行界定。难点---汉语语言知识的多义性和复杂性,难以组织成机器可以直接理解的形式。
- 过滤文本的停用词
过滤各个类别中均有的词汇以及语气助词副词介词连接词等一些虚词。
去停用词的方法是构建停用词表依次对分词得到的文本关键词集中的词与停用词表进行匹配。
- 文本表示:将非结构化的文本文档表示为机器易于处理的形式的过程。通常包括文本预处理和文本模型等步骤。
文本表示模型: - 布尔模型
布尔模型是基于特征项的严格匹配模型。过程:建立一个二值变量的集合,这些变量对应于文本的特征项。文本用这些特征项变量来表示,如果出现相应的特征项,则特征变量用true表示,如果没有则用false。
优点:速度快,形式清楚简单,易于表达一定程度的结构化信息。
缺点:匹配策略基于二元判定标准,缺乏对文本相关性的排序。很难将用户的信息需求转换为布尔表达式。 - 向量空间模型
优点:特征项权重的算法提高了检索的性能
部分匹配的策略使得过滤得到的结果文本集合更接近用户的查询需求。
可根据文本与查询串的相似度计算结果对文本进行排序
采用了向量空间模型的基于统计对文本分类的方法是一种经验主义方法,它的优势在于它的全部知识是通过对大规模语料库分析得到的,可以取得很好的一致性和高覆盖率,对语言的处理提供了比较客观的数据依靠和可靠的质量保证。它的缺点在于:它是一种非定型的定量推理方法,定量是基于概率的,它必然会掩盖小概率事件的发生。
基于VSM的小概率模型:由于小概率事件在模拟中很难出现,所以最终出现的训练样本数量严重不平衡。
要消除数量带来的不平衡,基于VSM小概率模型采取的解决方案是对模型进行反复训练,直到该模型的置信度达到一定的阈值便不再训练。该模型的缺点是缺乏足够多的小概率事件样本进行训练
- 统计语言模型
如果把文本看成词的序列,那么这些词出现与否及其出现的次序可以看成是一种语言结合模式。这些结合模式信息可以被用来进行文本分类。
统计语言模型中,常用于文本分类任务的是N元语言模型(N-gram)。该模型不考虑组成文本的语义单位是字、词、还是数组,而是将整个文本看做是由不同的字符组成的字符串。如果用d表示文本,它由顺序排列的n个词组成,即
d=t1t2...tm则根据条件概率的乘积公式
Pc(d)=Pc(t1t2t3…tm)=Pc(t1)Pc(t2|t1)P(t3|t1t2)…Pc(tn|t1t2..tn-1)
N元语言模型就是N-1阶Markov链。N取值越大计算出来的概率准确度越高,但是这种准确性的提高是以计算量的级数上升为代价的。一般来说N元模型就是假设当前词的出现频率只与它前面的N-1词有关。
公式中的这些参数可以转换为特定次序在语料库C类训练文本集中出现的频率来代替。
使用统计语言模型对新文本的分类过程:将待分类的新文本预处理成连续的汉字串集合。对每个连续的汉字串在进行分词、停用词和非实词过滤后得到的一个词串T,分别计算其属于各个类别C的概率。新文本属于类别C的概率为文本中每个词属于类别C的概率之和,拥有最大概率的那个类别被判为文本所属的类别。
N元模型的缺点:数据噪声大,特征生成复杂,计算量大,模型参数存储空间需求较大,训练过程相对复杂缓慢。
- 特征处理
特征处理是对初始特征集中的初始特征进行特征提取,将弱关联去掉,抽取强关联词构成用于学习的特征集,并通过特征权重函数给这些特征赋予不同的权重来表示特征对文本的重要程度。
- 特征提取
必要性:由于构成文本的词汇数量是相当大的,表示文本的向量空间的维数也相当大,导致文本分类的最大问题是特征空间的高维性和文本表示向量的稀疏性。为了解决这个问题一般要进行降维操作同时解决了过度拟合的问题,使分类器更具有普遍性,达到提高程序效率和分类精度的目的。常见方法有:
- 频率统计
文本分类中常用到的频率统计包括词频和文档频率
词频(Term Frequency):统计一定长度的语言词料中每个词出现的次数分析统计结果秒回词汇规律。
文档频率(Document Frequency):在训练语料中出现该次的文档数,DF低于某个阈值的词条认为是低频词不含有类别信息,移除来降低特征空间的维数。 - 信息增益
某特征在文本中出现前后的信息熵之差。根据训练数据计算出各个特征词的信息增益,并按照信息增益从大到小排序,删除信息增益很小的特征词。在文本特征抽取中,对于词条t和类别C,IG考察C中出现和不出现t的文档频数来衡量词条t对于C的信息增益。
- 特征词的权重
词是组成文本的基本元素,在所有的词中抽取出能表示文本特征的词组成文本的特征项,并按照某一方法赋予特征项相应的权重。特征项的权重综合反映了该特征项对表示文本内容的贡献度和文本内容之间的区分能力。特征项集合的特征是完全性和区分行,因此特征项权重的计算满足以下两个原则:一是正比于特征项在文本中出现的频率,二是反比于文本集中出现该特征项的文档频率。- 布尔权重法:出现为1否则为0
- 词频权重法:用词在文本中出现的频数作为权重
- TF-IDF权重法:在词频权重法的基础上引入了对文档频率的考虑,文档频率越大的词权重越低。
W=tf*log(N/df)
TFC权重法:在TF-IDF的基础上用文本长度做正规化。
- 文本分类方法
文本分类的核心是如何根据语料库构建一个分类函数或分类模型,并利用此分类模型将位置类别的文本映射到制定的类别空间。 - 文本分类效果评价
对文本分类结果主要从三个方面进行评价:有效性、计算复杂度和描述的简介度。有效性衡量的是一个分类器正确分类的能力;计算复杂度包括时间复杂度和空间 复杂度,即通常所说的分类速度和占用硬件资源大小;描述的简洁度即算法的描 述越简单越好。在这三个方面中,有效性最为重要。评价有效性主要有三个指标:查全率,查准率和F测量 - 查全率(Recall)R衡量的是所有实际属于类N的文本被分类器分到该类别中 的比率;查准率(Precision)P衡量的是所有被分类器分为类别C的文本中正确文本的比率
- F-测量
查全率和查准率是两个互相矛盾的衡量指标。一般情况下查全率会随着查准率的升高而降低。将他们综合考虑的方法是F-测量。可以通过调整参数来用不同的权重综合查全率和查准率。
三、文本分类的应用
Twitter是一种社交网络应用,它允许用户就宽泛的主题写微博。用户的推文有140字的字数限制,这给推文的分类带来了困难。这种分类尤为重要,给用户推荐喜欢的分类使用户不至于迷失在海量信息中
现有的短文本分类集合了其他信息源如wiki传送的信息,自动文本分类在短文本的上下文被扩充的情况下效果比较好。
在此基础上,我们可以采集更多的信息。例如日常对话,信息共享和新闻。作者的信息在分类中会起到关键的作用,一个作者通常在一个特定的推文模式下进行写作,同一个作者的大部分文章都倾向于有限的几个分类。
推文的分类需要信息源知识,我们选择将作者的信息作为最主要的特征。团体推文撰写者一般用一种简介明确的形式发表正式的内容,例如新闻。个人推者频繁使用俗语、缩写和表情来表达自己。另外,我们根据时间地点参与者等信息来界定一件事。时间和地点信息可能决定了这件事在文本中是否存在,因此我们可以提取日期信息和地点短语作为某时间的一个特征。
关于一些特殊词汇的捕捉:
- 语气词
- 武断词:通过武断词汇表查找
- 强调:大写字母和重复字母(veeeery)等
*商业信息:关键词deal、货币、百分比等。
......