文本分类PPT

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

特征词选择算法(六)基于信息论的方法
KLDivergence
基本思想:
交叉熵反映了文本类别的概率分布和在出现了某个特定词的条 件下文本类别的概率分布之间的距离, 特征词t 的交叉熵越大, 对 文本类别分布的影响也越大。熵的特征选择效果都要优于信息 增益(尚未验证)。
运算公式:
D(p//q)=sum(p(x)*log(p(x)/q(x)))。其中p(x)和q(x)为两个概 率分布 约定 0*log(0/q(x))=0;p(x)*log(p(x)/0)=infinity;
利用向量空间模型进行文本分类的主要思路基于邻近假 设 邻近假设:同一类文档在N维向量空间中会构成一个邻近 区域,而不同类的邻近区域之间是互不重叠的 该模型将每个文档看成是一个N维向量
应用:
KNN,LR,SVM
两种文档模型的对比
相同点:
从词的粒度上来讲,都没有考虑词语概率分布与其他词 语概率分布之间的相关性(即:都做了独立性假设) 生成文档模型的时候,都没有考虑到词在文档中出现的 位置等因素
特点:依赖于类别信息 具体方法有:信息增益(IG),卡方(Chi square),互信 息(point –wise MI),相对熵(KL Divergence)
无监督特征词选择算法:
特点:不依赖于类别信息 具体方法有:文档频率法(DF),单词贡献度(TC)
特征词选择算法(二)--无监督算法
DF:它指在整个数据集中有多少个文本包含这个单 词 单词贡献度:它认为一个单纯的重要性取决于它对整 个文本数据集相似性的贡献程度
文本分类以及预处理代码实现
预处理算法处理框架图
分类算法框架图
KNN算法
KNN文本分类算法又称为(k nearest neighhor)。它 是一种基于事例的学习方法,也称懒惰式学习方法。 它的大概思路是:对于某个待分类的样本点,在训练 集中找离它最近的k个样本点,并观察这k个样本点 所属类别。看这k个样本点中,那个类别出现的次数 多,则将这类别标签赋予该待分类的样本点。
基本思想:将单词和类别出现的情况看做是事件集合,
Eventst = {eventt , eventt } Eventsc = {eventc , eventc }
然后求上述两个事件集合的平均互信息
运算公式:
存在问题:
计算过程中考虑到了既不包含term t ,也不属于类别c的文档的 概率计算,可能会引进误差
百度文库
几种常见的判别式模型
Linear discriminant analysis Support vector machines Boosting Conditional random fields Logistic regression Neural Networks
分类器的划分与文档模型划分之间的关系 (个人经验)
可以这样考虑TP,FN,FP,TN的含义: TP(Truly Positve):是指那些分类为正例实际上也是正例的文章; FP(Falsely Postive):是指那些分类为正例但是实际上为负例的文章; FN(Falsely Negtive):是指那些分类为负例但是实际上为正例的文章; TN(Truly Negtive):是指那些分类为负例,实际上也为负例的文章。 查准率(precision)p=TP/(TP+FP)。它的含义是:测试集中被正确分类的正例数量除以 测试集中被分类为正例的数据数量。 查全率(recall) r=TP/(TP+FN)。 它的含义是:测试集中被正确分类的正例数量除以测试 集中实际正例数量。 F-score=2pr/(p+r)。 它是查准率和查全率的调和平均值。 F-score更接近于p,r两个数种较 小的那个
NAVIGATING TO TEXT CATEGORIZATION
文本分类初探 作者: 作者:领头驴
ROAD OF MAP
特征词选择算法基础知识 几种特征词选择算法效果验证 文本分类以及预处理代码实现 程序调用
文本分类基础知识
分类问题(CATEGORIZATION)的两种模式
广义分类问题的两种定义
重要数据结构定义
typedef map <string,vector<pair<int,int> > > DICTIONARY;//定义字典数据结构 typedef map<pair<string,string>,pair<int,int> > CONTINGENCY;//定义关联表数据结构 typedef map<int,vector<pair<int,double> > > DOCMATRIX;//文档向量矩阵 typedef vector<pair<int,string> > RESULTINFO;//最后的分类和聚类结果信息
存在问题:
如果文本类别数目较少,每类文本的数目又非常大时,KL值的 区分度可能会不明显(个人认为这种特征词选择方法效率同MI)
特征词选择算法(七)基于统计学的方法
Chi-square distribution
基本思想
卡方统计量 常常用于检测两个事件的独立性,在特征词选择中, 两个事件分别指词项的出现和类别的出现。
经常把分类问题(多分类问题)看成是二类问题(是否属于某个特定类别)。但针对某一 个具体类别来说,我们又可以这样考虑:即有多少篇文章属于该类?有多少篇文章不属于 该类?如果将属于该类的文章定义为“正例”,不属于该类别的文章定义为负例,那么就 有了 查准率,查全率,F-score等性能评估标准。分类器的混合矩阵:
Discriminative classifier (判别式模型)
Discriminative classifier model the posterior p(y|x) directly,or learn a direct map from inputs s to the class labels
DF、卡方、点对点互信息、信息增益法提 取特征词对比(一)
DF、卡方、点对点互信息、信息增益法提 取特征词对比(三)
一般结论: CHI,IG,和DF 的性能明显优于MI;CHI、 IG和DF的性能大体相当,都能够过滤掉80%以上的 特征项;DF具有算法简单、质量高的优点,可以用 来代替CHI和IG,但是同被广泛接受的信检索理论有 些矛盾。我们这里得出的结论,同文献(Yang et al .1997)使用普通英文文本评测的结果基本一致。 (摘自 李晓明 《搜索引擎—原理、技术、与系统》)
不同点:
可以理解为“权重”计算方式和表示方式不同 词袋模型的“权重”用概率表示,最后求出由词生成文 档的概率;VSM模型的“权重”,可以看做是tf,df的函 数映射
分类器的划分(一)
Generative classifier(产生式模型or 生成式模型)
Generative classifier learn a model of joint probability p(x,y),of the inputs x and the label y,and make their predictions by using Bayes rules to calculate p(y|x),and then picking the most likely label y
分类器的划分(二)
仁者见仁,智者见智
Vapnik: One should solve the [classification] problem directly, and never solve a more general problem as an intermediate step[such as modeling p(x|y)] Ng Andrew$ Jordan: discriminative classifier比 generative classifier classifier有更低的渐进错误率,但是 generative classifier能更快地收敛到最低错误;随着样 本数目的增多,discriminative classifer 的performance 会overtake generative classifier
监督学习(Supervised Learning) 非监督学习(Unsupervised Leaning)
区别:是否对于类别标签(class label)有先验知识
监督学习(狭义上的分类):事先知道类别标签 非监督学习(狭义上的聚类):事先不知道类别标签
本次汇报专题集中于:狭义上的分类(后面统称为文 本分类)
特征词选择算法(三)基于信息论的方法
事件的互信息
集合的平均互信息
特征词选择算法(四)基于信息论的方法
Point-wise mi
基本思想:
计算每个词t,与类别c之间的互信息
运算公式:
存在问题:倾向于选择稀疏词(先给出结论,稍后会有 实验结果展示)
特征词选择算法(五)基于信息论的方法
Information Gain(IG,信息增益熵,平均互信息)
VSM 模型:一般用在判别式分类模型中,如LR(对 数回归),SVM(支持向量机) 词袋子模型:一般用在生成式分类模型中,如朴素贝 叶斯词袋子模型也可以用在判别式模型中
模型的参数估计:EM算法(missing data likelihood)
特征词选择算法(一)
回顾文本分类的两种模式 有监督特征词选择算法:
编程思路
操纵数据库模块
int ConstructDictionary(DICTIONARY& mymap,FUNCSEG seg,string tablename);//从数据库 中读出文章,分词,过滤停用词建立词典 int GetArticleIdinEachClass(vector<string > labels,string tablename,map<string,vector<int> >&articleIdinEachClass );//获得训练集中每一类所包含的文章ID vector<string >GetClassification(string articleIds);//获得指定篇文章ID号集合分别对应的类别 string GetCategorizationInfoById(int articleId,string tablename);//获得指定ID号的文章ID信息 int Preprocess::GetManyVSM(int begin,int end,string tablename,DICTIONARY& mymap,D OCMATRIX& testingsetVSM,char*keywordsaddress)//为测试样本集合建立VSM模型
分类器的划分(三)
几种常见的产生式模型
Gaussian distribution Gaussian mixture model Multinomial distribution Hidden Markov model Naive Bayes AODE Latent Dirichlet allocation
返回
文档模型(一)
Bag of words or bowl(词袋模型或者碗模型) 思想:
词与词之间的概率分布条件独立 条件独立(在给定类别后每个词 条件独立 的概率分布与其他词无关) 单词生成的概率与它在文档中的位置无关 每篇文档看作是一“袋子”的词
应用举例:
朴素贝叶斯模型
文档模型(二)
Vector Space Model[VSM](文档向量模型) 思想:
DF、卡方、点对点互信息、信息增益法提 取特征词对比(四)
DF、卡方、点对点互信息、信息增益法提 取特征词对比(五)
我的实验结论:
评价一个特征词是否是好词,一个特征词集合是否选择的合理。 主要看所选择的词是否具有类别标识性。所谓类别标识性有以 下两点含有:1。Distinctive for categorization:也就是说, 如果该词出现则可以以一个很大的概率将文章归为某类。2。 该词在它所“标识”的类别中应该频繁出现。DF法选择的特征 词满足第二个条件多一点;而点互信息法选择的特征词只满足 第一个条件多一点;而IG法和卡方法在满足两个条件方面达到 了均衡。所以 IG和卡方法性能差不多,优于DF法,DF优于点 互信息法。(注:这是我个人的一点见地,如有偏颇的地方欢 迎指正) 由此我们可以得出这样的结论: IG法,卡方法,虽然有抑制高 频词噪声和低频词噪声的能力,但是归根结底,这两种方法是 基于频率的经典 经典统计推断,不能够有效抑制全部高频词噪声, 经典 如果要提高特征词集合抑制高频词噪声的能力,可能要求诸于 贝叶斯统计推断。 贝叶斯
评估分类器的效果(EFFECTIVENESS)(一)
效果(effectiveness):这个术语来统称那些分类结果质 量的评价指标,包括正确率、召回率和F1值。
性能(performance):这个术语主要指的 是分类或者 IR系统的计算 计算效率。 计算
评估分类器的效果(EFFECTIVENESS)(二)
运算公式
存在问题
同IG法
几种特征词选择算法效果验证
训练语料库测试语料库情况说明
共有文化、历史、读书、社会与法制、娱乐,军事等 六个类别(其中文化,历史,读书,军事来自凤凰新 闻,社会与法制来自腾讯和新浪,娱乐类新闻来自网 易)。训练语料库中每个类别1000篇文章,共有 6000篇文章,测试语料库中每个类别有100篇文章, 共有600篇文章。
相关文档
最新文档