主要内容

tfidf

术语频率-反文档频率(tf-idf)矩阵

描述

例子

= tfidf (返回一个术语频率逆文档频率(tf idf)矩阵,该矩阵基于单词袋或n字袋模型

例子

= tfidf (文档返回中文档的tf idf矩阵文档使用从以下公式计算的逆文档频率(IDF)系数

例子

= tfidf (___名称、值使用一个或多个名称-值对参数指定其他选项。

例子

全部崩溃

从词汇袋模型创建术语频率-反文档频率(tf-idf)矩阵。

加载示例数据。该文件十四行诗预处理.txt包含了经过预处理的莎士比亚十四行诗。该文件每行包含一首十四行诗,单词之间用空格分隔。将文本从十四行诗预处理.txt,将文本以换行符分割为文档,然后标记文档。

文件名=“十四行诗预处理.txt”;str = extractFileText(文件名);textData =分裂(str,换行符);文件= tokenizedDocument (textData);

使用创建一个单词包模型bagOfWords

袋= bagOfWords(文档)
有属性的单词:计数:[154x3092 double]词汇:[“最公平的”“生物”“欲望”…]NumWords:3092 NumDocuments:154

创建tf idf矩阵。查看前10行和前10列。

M=tfidf(袋);满(M(1:10,1:10))
ans=10×103.6507 4.3438 2.7344 3.6507 4.3438 2.2644 3.2452 3.8918 2.4720 2.5520 0 0 0 0 0 4.5287 0 0 0 0 0 0 0 0 0 0 0 0 0 2.5520 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 2.5520 0 0 2.7344 0 0 0 0 0 0 0

从词汇袋模型和新文档数组中创建术语频率-反文档频率(tf-idf)矩阵。

加载示例数据。该文件十四行诗预处理.txt包含了经过预处理的莎士比亚十四行诗。该文件每行包含一首十四行诗,单词之间用空格分隔。将文本从十四行诗预处理.txt,将文本以换行符分割为文档,然后标记文档。

文件名=“十四行诗预处理.txt”;str = extractFileText(文件名);textData =分裂(str,换行符);文件= tokenizedDocument (textData);

从文档中创建一个单词包模型。

袋= bagOfWords(文档)
有属性的单词:计数:[154x3092 double]词汇:[“最公平的”“生物”“欲望”…]NumWords:3092 NumDocuments:154

使用根据计算的逆文档频率(idf)因子为新文档数组创建tf idf矩阵

newDocuments=标记化文档([“名字有什么意义?一朵玫瑰,无论叫什么名字,都会散发出同样的芳香。”“如果音乐是爱的食物,那就继续演奏吧。”]);newDocuments M = tfidf(包)
M = (1,7) 3.2452 (1,36) 1.2303 (2,197) 3.4275 (2,313) 3.6507 (2,387) 0.6061 (1,1205) 4.7958 (1,1835) 3.6507 (2,1917) 5.0370

加载示例数据。该文件十四行诗预处理.txt包含了经过预处理的莎士比亚十四行诗。该文件每行包含一首十四行诗,单词之间用空格分隔。将文本从十四行诗预处理.txt,将文本以换行符分割为文档,然后标记文档。

文件名=“十四行诗预处理.txt”;str = extractFileText(文件名);textData =分裂(str,换行符);文件= tokenizedDocument (textData);

使用创建一个单词包模型bagOfWords

袋= bagOfWords(文档)
有属性的单词:计数:[154x3092 double]词汇:[“最公平的”“生物”“欲望”…]NumWords:3092 NumDocuments:154

创建tf idf矩阵。查看前10行和前10列。

M=tfidf(袋);满(M(1:10,1:10))
ans=10×103.6507 4.3438 2.7344 3.6507 4.3438 2.2644 3.2452 3.8918 2.4720 2.5520 0 0 0 0 0 4.5287 0 0 0 0 0 0 0 0 0 0 0 0 0 2.5520 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 2.5520 0 0 2.7344 0 0 0 0 0 0 0

通过指定TF和IDF权重公式,可以更改TF和IDF因子对TF IDF矩阵的贡献。

要忽略一个单词在文档中出现的次数,请使用“TFWeight”.创建tf idf矩阵并设置“TFWeight”“二元”.查看前10行和列。

M = tfidf(包“TFWeight”“二元”);完整的(M (1:10, 1:10))
ans=10×103.6507 4.3438 2.7344 3.6507 4.3438 2.2644 3.2452 1.9459 2.4720 2.5520 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 0 0 0 0 2.5520 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.2644 0 0 0 2.5520 0 0 2.7344 0 0 0 0 0 0 0

输入参数

全部崩溃

输入bag-of-words或bag-of-n-grams模型,指定为bagOfWords物体或物体bagOfNgrams对象

输入文档,指定为标记化文档数组、字的字符串数组或字符向量的单元格数组。如果文档不是一个标记化文档数组,则它必须是表示单个文档的行向量,其中每个元素都是一个单词标记化文档数组中。

名称-值参数

指定可选的逗号分隔的对名称、值论据。的名字参数名和价值是对应的值。的名字必须出现在引号内。您可以按任意顺序指定多个名称和值对参数,如下所示:名称1,值1,…,名称,值

例子:“归一化”,真的指定规范化频率计数。

方法设置项频率(TF)因子,指定为逗号分隔对组成“TFWeight”以及以下其中之一:

  • “生的”–将TF系数设置为未更改的术语计数。

  • “二元”—设置TF因子为1和0的矩阵,其中1表示某个术语是否在文档中。

  • “日志”—设置TF因子为1+日志(行李计数)

例子:“TFWeight”、“二进制”

数据类型:烧焦

方法计算反文档频率因子,指定为逗号分隔对组成“体重”以及以下其中之一:

  • “textrank”—使用TextRank IDF加权[1].对于每个术语,将IDF系数设置为

    • 对数((N-NT+0.5)/(NT+0.5))如果该术语出现在半数以上的文件中,则N是输入数据中的文档数,并且新界是包含每个术语的输入数据中的文档数量。

    • IDF修正*avgIDF如果该术语出现在一半文件或f中,其中avgIDF是所有令牌的平均IDF。

  • “经典bm25”—每一项的IDF因子设置为对数((N-NT+0.5)/(NT+0.5))

  • “正常”—每一项的IDF因子设置为日志(N /元)

  • “一元”—每项IDF因子均为1。

  • “顺利”—每一项的IDF因子设置为日志(1 + N /元)

  • “马克斯”—每一项的IDF因子设置为日志(1+最大值(NT)/NT)

  • “概率的”—每一项的IDF因子设置为日志((N-NT)/NT)

在哪里N是输入数据中的文档数,并且新界是包含每个术语的输入数据中的文档数量。

例子:“IDFWeight”、“顺利”

数据类型:烧焦

反向文档频率校正系数,指定为逗号分隔对,由“IDFCorrection”和一个非负标量。

此选项仅适用于以下情况:“体重”“textrank”

数据类型:|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

用于规范化术语计数的选项,指定为逗号分隔对,由“正常化”符合事实的.如果符合事实的,然后该函数将欧氏范数中的每个项计数向量规格化。

例子:“归一化”,真的

数据类型:逻辑

输出文档在频率计数矩阵中的方向,指定为逗号分隔对,由“DocumentsIn”以及以下其中之一:

  • “行”-返回一个频率计数矩阵,其中包含文档对应的行。

  • “列”–返回频率计数的转置矩阵,其中列对应于文档。

数据类型:烧焦

强制将输出作为单元格数组返回的指示符,指定为由逗号分隔的对组成“强制输出”符合事实的

数据类型:逻辑

输出参数

全部崩溃

输出项频率逆文档频率矩阵,指定为稀疏矩阵或稀疏矩阵的单元阵列。

如果是非标量数组还是“强制输出”符合事实的,然后该函数将输出作为稀疏矩阵的单元格数组返回。单元格数组中的每个元素都是由对应的元素计算得到的tf-idf矩阵

工具书类

[1] Barrios, Federico, Federico López, Luis Argerich, Rosa Wachenchauzer。自动文摘中TextRank相似函数的变化。arXiv预印本arXiv: 1602.03606(2016).

介绍了R2017b