词袋模型在文本向量化中的应用

        自然语言处理不像图像处理,每个像素点都是数值,也可以看做是天然的特征,可以直接代入公式参与各种运算,但是自然语言不行,都是文字,计算机理解不了,计算机只认0/1,不认啊喔额,所以给定一段文本,若对其进行各种处理,比如通过算法自动文本分类,通常需要先把文本表达成机器可以处理的数据类型,也就是将文本中的一个个词或字转变成数字,这样机器才能进行常规的加减乘除各种运算。

        词袋模型Bag of Words(BoW)最早出现在自然语言处理(NaturalLanguage Processing)和信息检索(Information Retrieval)领域。即把一段文本划分成一个个词,想象成将所有词放入一个袋子里,忽略其词序、语法、句法等要素,将其仅仅看作是若干个词汇的集合,文本中每个词的出现都是独立的,不依赖于其他词是否出现。


词袋模型用于构建特征向量

       例如:(1)小明喜欢看电影;(2)小明也喜欢踢足球。这两个句子,可以构建出一个词典,key为这个词的索引序号,value为上文出现过的词。

       { 1:“小明”, 2:“喜欢”,3:“电影”,4:“足球”,5:“看”,6:“踢”,7:“也” }

       那么,上面两个句子用词袋模型表示成向量就是:(1)[1, 1, 1, 0, 1, 0, 0],(2)[1, 1, 0, 1, 0, 1, 1]

       这样就可以使用各种算法进行数学运算了。不过可以看到词序信息已经丢失了。如果每段文本不加任何预处理的都这样映射,那么生成的向量势必将会非常庞大,因为向量长度等于字典长度。所以需要一些额外预处理,下面是一些常用文本预处理方法:

       1.分词与去除停用词。词袋模型的主要思想,是构建各类文本的词典,然后针对每一个文本,计算该文本每个词在词典中对应位置出现的次数。因此词袋模型首要的是分词,这方面有很多开源实现,比如jieba分词。在分词后的结果集中,一般会包含很多停用词,例如:“标点符号”,“的”,“得”等等,这些词汇可以看作无效词,会以噪音的形式影响后续运算,需要去除。一般可以构建停用词库,以配置文件的形式保存起来,分词后调用一下,将停用词过滤掉以得到更精炼的分词结果。

       2.文本特征选择及词典构建。对于长文本文档,在构建词典前有必要通过特征选择方法来选择一批特征词,然后使用这些特征词构建词典,否则构建的词典将会非常庞大,即不利于存储,也不利于后续词频统计运算等。常用的特征选择方法有基尼系数、互信息、信息增益、卡方检验等。通过比较,信息增益和卡方检验两种方法效果较好。以卡方检验为例,一般设置卡方阈值或者词个数阈值,即可在卡方检验运算结果中返回一系列特征词。将全部特征词合并到一起,就构建出了文本词典。

       3.特征词权重计算。词典构建完成后,接下来就可以利用词典将文档映射成向量。一般可以选择one-hot表示的向量及tf-idf表示的向量。所谓one-hot,就是向量中的一维对应于词典中的一项。如果以词频表示,则向量中该维的值即为词典中该单词在文档中出现的频率,那么特征词权重也就是词频。而tf-idf中,tf表示词频,即一个词在文本中出现的频率;idf表示逆文档频率,即一个词在所有文本中出现的频率倒数。因此,一个词在某文本中出现的越多,在其他文本中出现的越少,权重就越大,则这个词能很好地反映文本的内容。与one-hot相比,tf-idf更加准确。但是实际使用时还是因算法和使用场景而异,有时one-hot照样可以取得很好的效果。

       4.向量降维。虽然前面比如采用卡方检验抽取了特征词,降低了词典体积,但是实际生成的向量维度可能仍然非常高,并且数据也非常稀疏,比如词典包含5000个词,那么文档映射后生成的向量将有5000维。此外,一些文本的主题或者说中心思想,并不能很好地通过文本中的词来表示,能真正概括这篇文本内容的词可能没有直接出现在文本中。因此,可以使用LSA(Latent Semantic Analysis,隐性语义分析)模型来分析文本潜在的主题。LSA属于概率主题模型的一种,通过奇异值分解的方法计算出文本中各个主题的概率分布,假设指定100个主题,那么通过LSA模型,文本向量就可以降到100维。由于该模型可以指定要分析的主题数目,所以可以将原始高维向量降到指定维数,大大节省存储空间及计算时间。

       实际应用中上面有些步骤是可选的,至此文本向量化就基本完成了,一段文本映射为一个数学向量,就可以让机器认识并参与各种数学运算了。一个很常见的计算就是相似度计算,比如计算两段文本是否相似,那么首先将文本转成向量,然后通过余弦定理就可以算出来。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文本关键词抽取,是对文本信息进行高度凝练的一种有效手段,通过3-5个词语准确概括文本的主题,帮助读者快速理解文本信...
    atLee阅读 22,449评论 8 46
  • 常用概念: 自然语言处理(NLP) 数据挖掘 推荐算法 用户画像 知识图谱 信息检索 文本分类 常用技术: 词级别...
    御风之星阅读 13,103评论 1 25
  • 摘要:机器学习处理文字、语音、图片、视频等任务,很重要的一点就是从原始信息中提取出机器可以理解的特征。一篇文章通常...
    i败火阅读 9,018评论 1 15
  • (五) 信已送到,萧然回到瑶光。 “王上,信已送到。不过我若是他,必不会将信交于执明国主。为何王上……” 慕容黎冷...
    冠翎阅读 1,833评论 0 3
  • 文||胡思入梦菲 第一世 花叶生生不见 这是曼珠沙华的宿命 情深缘浅,缘浅情深 昔年他是扬州城里翩翩少年 文采飞扬...
    丁渔阅读 2,801评论 2 13