标签:缩放 忽略 例子 png 注意 The 区分 正是 比较
词袋模型是一种表征文本数据的方法,可以从文本数据中提取出特征并用向量表示.词袋模型主要包括两件事
词袋模型不考虑单词在文本中出现的顺序,只考虑单词是否出现.
具体以"双城记"开头为例
It was the best of times,
it was the worst of times,
it was the age of wisdom,
it was the age of foolishness,
“it”
“was”
“the”
“best”
“of”
“times”
“worst”
“age”
“wisdom”
“foolishness”
[1, 1, 1, 1, 1, 1, 0, 0, 0, 0]
剩下三句的编码为
"it was the worst of times" = [1, 1, 1, 0, 1, 1, 1, 0, 0, 0]
"it was the age of wisdom" = [1, 1, 1, 0, 1, 0, 0, 1, 1, 0]
"it was the age of foolishness" = [1, 1, 1, 0, 1, 0, 0, 1, 0, 1]
假设我们有非常大的语料库,比如说几千本书,那么此时的构建的向量长度可能长达数万,而且对于每本书而言可能只包含词典中很少的词,这样对每本书构建的向量中就会含有大量的0.这样的向量成为稀疏向量或者说稀疏表示.因此我们要考虑如何减小词典的大小. 最简单的我们可以做一些文本清洗
一个N-gram是一个N字符的单词序列:一个2-gram(通常称为bigram)是一个两个单词的单词序列,例如“ please turn”,“ turn your”或“ our your work”, 3-gram(通常称为trigram)是由三个词组成的单词序列,例如““please turn your”, 或者 “turn your homework”.
例如我们给的例子中第一句的bigram就是
“it was”
“was the”
“the best”
“best of”
“of times”
由三个单词序列构成的词典称为3-gram,更一般的由n个单词序列构成的词典称为n-gram
构建完词典后,我们需要对出现在文档中的词进行打分,在刚刚给出的例子中我们使用的是bianry的方法,出现为1, 不出现为0. 此外我们还可以用单词在文档中出现的次数或者词频, TF-IDF对其打分.
词频,即一个单词或者词组在一篇文档中出现的频率. 如果某个单词或词组在文章中出现次数很多,但是它包含的信息并不多,这时候只用词频度量单词或词组就会产生偏差. 一种方法就是利用该单词或词组在所有文档中出现的次数来对词频进行缩放. 这就是TF-IDF.
TF:是对词在当前文档中频率, 其有多种取值形式,最简单的是直接使用单词出现的次数,也可以使用
IDF:是逆文档频率,是一个词语普遍重要性的度量,它的大小与一个词的常见程度成反比
N是语料库中所有文档的数目.分母部分是包含单词t的文档的数目. 一个单词越频繁的出现在不同文档中,逆文档频率就越低
最后
字词的重要性随着它在文件中出现的次数成正比增加 ,但同时会 随着它在语料库中出现的频率成反比下降 。如果某个词比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键词。
标签:缩放 忽略 例子 png 注意 The 区分 正是 比较
原文地址:https://www.cnblogs.com/laozhanghahaha/p/13198011.html