主要内容

mmrScores

使用最大边际相关(MMR)算法进行文档评分

描述

例子

分数= mmrScores (文档查询分数文档根据他们的相关性查询使用MMR算法避免冗余。的分数分数(i, j)的MMR评分是多少文档(我)相对于查询(j)

分数= mmrScores (查询按单词包或n-grams包模型对文档进行编码相对于查询.的分数分数(i, j)的MMR评分是多少th文档相对于查询(j)

分数= mmrScores (___λ还指定相关性和冗余之间的权衡。

例子

全部折叠

创建一个输入文档数组。

str = ["敏捷的棕色狐狸跳过了懒惰的狗"“敏捷的狐狸跳过了懒惰的狗。”狗坐在那里什么也不做“其他动物坐在那里看着”];文件= tokenizedDocument (str)
9个记号:敏捷的棕色狐狸跳过懒惰的狗8个记号:敏捷的狐狸跳过懒惰的狗7个记号:狗坐在那里什么也不做6个记号:其他动物坐在那里看着

创建一个查询文档数组。

str = [一只棕色的狐狸跳过了那条懒狗。“另一只狐狸跳过了狗。”];查询= tokenizedDocument (str)
查询= 2x1 tokenizedDocument: 8个token:一只棕色的狐狸跳过了懒狗。6个token:另一只狐狸跳过了狗

计算MMR评分使用mmrScores函数。输出是一个稀疏矩阵。

成绩= mmrScores(文档、查询);

在热图中可视化MMR评分。

图的热图(分数);包含(“查询文档”) ylabel (“输入文件”)标题(“MMR分数”

图中包含一个类型为heatmap的对象。类型热图的标题为MMR评分。

分数越高,与查询文档的相关性越强。

创建一个输入文档数组。

str = ["敏捷的棕色狐狸跳过了懒惰的狗""敏捷的棕色狐狸跳过了懒惰的狗"“敏捷的狐狸跳过了懒惰的狗。”狗坐在那里什么也不做“其他动物坐在那里看着”“其他动物坐在那里看着”];文件= tokenizedDocument (str);

从输入文档创建一个单词袋模型。

袋= bagOfWords(文档)
计数:[6x17 double]词汇:["the" "quick" "brown" "fox"…NumWords: 17 NumDocuments: 6

创建一个查询文档数组。

str = [一只棕色的狐狸跳过了那条懒狗。“另一只狐狸跳过了狗。”];查询= tokenizedDocument (str)
查询= 2x1 tokenizedDocument: 8个token:一只棕色的狐狸跳过了懒狗。6个token:另一只狐狸跳过了狗

计算MMR分数。输出是一个稀疏矩阵。

成绩= mmrScores(袋、查询);

在热图中可视化MMR评分。

图的热图(分数);包含(“查询文档”) ylabel (“输入文件”)标题(“MMR分数”

图中包含一个类型为heatmap的对象。类型热图的标题为MMR评分。

现在再次计算分数,并将lambda值设置为0.01。当lambda值接近0时,冗余文档的得分较低,而多样化(但与查询相关性较低)文档的得分较高。

λ= 0.01;成绩= mmrScores(袋、查询、λ);

在热图中可视化MMR评分。

图的热图(分数);包含(“查询文档”) ylabel (“输入文件”)标题(MMR评分,lambda = "+λ)

图中包含一个类型为heatmap的对象。类型热图的标题为MMR Scores, λ = 0.01。

最后,再次计算分数,并将lambda值设置为1。当lambda值为1时,与查询相关的文档获得更高的分数,尽管其他文档获得较高的分数。

λ= 1;成绩= mmrScores(袋、查询、λ);

在热图中可视化MMR评分。

图的热图(分数);包含(“查询文档”) ylabel (“输入文件”)标题(MMR评分,lambda = "+λ)

图中包含一个类型为heatmap的对象。类型热图的图表标题为MMR Scores, λ = 1。

输入参数

全部折叠

输入文档,指定为tokenizedDocument数组,字的字符串数组,或字符向量的单元格数组。如果文档不是一个tokenizedDocument数组,那么它必须是表示单个文档的行向量,其中每个元素都是一个单词。要指定多个文档,请使用tokenizedDocument数组中。

输入单词袋或n克袋模型,指定为bagOfWords对象或一个bagOfNgrams对象。如果是一个bagOfNgrams对象,则函数将每个n-gram视为单个单词。

查询文档的集合,指定为以下之一:

  • 一个tokenizedDocument数组

  • 1 -N表示单个文档的字符串数组,其中每个元素都是一个单词

  • 1 -N表示单个文档的字符向量的单元格数组,其中每个元素是一个单词

为了计算术语频率和反向文档频率统计,该函数进行编码查询使用单词袋模型。它使用的模型取决于调用它的语法。如果您的语法指定了输入参数文档,则使用bagOfWords(文档).如果你的语法指定了,则该函数进行编码查询使用然后使用得到的tf-idf矩阵。

在相关性和冗余之间进行权衡,指定为非负标量。

λ值接近0时,冗余文档的得分较低,而多样化(但与查询相关性较低)文档的得分较高。如果λ为1,则与查询相关的文档获得更高的分数,尽管其他文档获得较高的分数。

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

输出参数

全部折叠

MMR评分,返回为N1——- - - - - -N2矩阵,分数(i, j)的MMR评分是多少文档(我)相对于j查询文档,和N1而且N2分别是输入文档和查询文档的数量。

如果一个文档既与查询相关,又与其他文档具有最小的相似度,那么它的MMR得分就高。

参考文献

[1] Carbonell, Jaime G.和Jade Goldstein。“使用MMR,基于多样性的重排序来重新排序文档和生成摘要。”在市立,第98卷,第335-336页。1998.

版本历史

介绍了R2020a

Baidu
map