主要内容

rakeKeywords

使用RAKE提取关键字

自从R2020b

    描述

    例子

    资源描述= rakeKeywords (文档)使用快速自动提取关键字和各自的得分关键字提取(RAKE)算法。函数支持英语、日语、德语,金宝app和韩国的文本。学习如何使用rakeKeywords为其他语言,明白了语言的注意事项

    例子

    资源描述= rakeKeywords (文档,名称=值)使用一个或多个名称参数指定附加选项。

    提示

    rakeKeywords函数,默认情况下,提取关键字使用停止词和标点符号。当使用默认值分隔符MergingDelimiters选择,不删除阻止文字或标点符号输入文本。

    例子

    全部折叠

    创建一个数组包含文本数据的标记化的文档。

    textData = [“MATLAB为科学家和工程师提供了工具。使用MATLAB的科学家和工程师”。“分析文本和图像。你可以导入文本和图像。”“分析文本和图像。MATLAB分析文本、图像和视频。”];文件= tokenizedDocument (textData);

    提取关键字使用rakeKeywords函数。

    台= rakeKeywords(文档)
    台=12×3表_____字DocumentNumber得分_________________________________________ * * *“MATLAB”“提供”“工具”1 8”MATLAB“”“”“1 2“科学家”“和““工程师”1 2“科学家”“”“1“工程师”“”“1“分析”“文本”“2 4“进口”“文本”“2 4“图像”“”“2 1“分析”“文本”“3 4“图像”“”“3 1“视频”“”“3 1”MATLAB“”“”“3 1

    如果关键字包含多个词,那么字符串数组对应的元素的关键字。如果关键字少字最长的关键字,然后剩下的字符串数组的条目是空字符串”“

    为了可读性,将多词关键字转换为一个字符串使用加入功能。

    如果大小(tbl.Keyword 2) > 1台。关键字= strip(join(tbl.Keyword));结束资源描述
    台=12×3表_____字DocumentNumber得分__________________________ * * *“MATLAB提供的工具“1 8“MATLAB”1“科学家和工程师“1 2“科学家”1“工程师”1“分析文本”4“导入文本”2 4“图像”2 1“分析文本”3 4“图像”3 1“视频”3 1“MATLAB”3 1

    创建一个数组包含文本数据的标记化的文档。

    textData = [“MATLAB为科学家和工程师提供了工具。使用MATLAB的科学家和工程师”。“分析文本和图像。你可以导入文本和图像。”“分析文本和图像。MATLAB分析文本、图像和视频。”];文件= tokenizedDocument (textData);

    提取前两名关键字使用rakeKeywords功能和设置MaxNumKeywords选项2

    台= rakeKeywords(文档、MaxNumKeywords = 2)
    台=6×3表_____字DocumentNumber得分__________________________________ * * *“MATLAB”“提供”“工具”1 8”MATLAB“”“”“1 2“分析”“文本”“2 4“进口”“文本”“2 4“分析”“文本”“3 4“图像”“”“3 1

    如果关键字包含多个词,那么字符串数组对应的元素的关键字。如果关键字少字最长的关键字,然后剩下的字符串数组的条目是空字符串”“

    为了可读性,将多词关键字转换为一个字符串使用加入功能。

    如果大小(tbl.Keyword 2) > 1台。关键字= strip(join(tbl.Keyword));结束资源描述
    台=6×3表_____字DocumentNumber得分_______________________ * * *“MATLAB提供工具”1 8“MATLAB”2“分析文本”4“导入文本”2“分析文本”3 4“图像”3 1

    输入参数

    全部折叠

    输入文件,指定为一个tokenizedDocument数组,字符串数组的话,或一个细胞的特征向量。如果文档不是一个tokenizedDocument数组,那么它必须是一个行向量代表一个文档,其中每个元素是一个词。指定多个文档,使用tokenizedDocument数组中。

    名称-值参数

    指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

    R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

    例子:rakeKeywords(文档、MaxNumKeywords = 20)返回最多20每个文档的关键字。

    最大数量的关键字返回每个文档,一个正整数或指定

    如果MaxNumKeywords,那么函数将返回所有确定关键词。

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

    选择忽略关键字情况下,指定为以下之一:

    • 0()——提取区分大小写的关键词。

    • 1(真正的)——提取关键字忽略的情况。使用这个选项,当你期望相同的关键词出现的变化字母大小写,想把他们当作相同的关键字,例如,“分析”,“分析”和“分析”。

    IgnoreKeywordCase1,最常见的函数返回关键字字母大小写的模式。当两个或两个以上的模式出现的频率,那么函数返回关键字的字母大小写模式出现的第一个输入。

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

    标记将文档关键字,指定一个字符串数组,特征向量,或单元阵列的特征向量。如果分隔符是一个特征向量,那么它必须代表一个分隔符。

    默认的分隔符是一个标点符号的列表。

    如果多个候选关键字出现在文档只有通过合并分隔符分隔,然后函数合并这些关键字和分隔符合并为一个关键字。

    为合并指定分隔符,可以使用MergingDelimiters选择。

    数据类型:字符|字符串|细胞

    分隔符也用于合并关键词,指定为一个字符串数组,特征向量,或单元阵列的特征向量。如果MergingDelimiters是一个特征向量,那么它必须代表一个分隔符。

    默认的合并列表分隔符是停止词的列表stopWords函数。

    如果多个候选关键字出现在文档只有通过合并分隔符分隔,然后函数合并这些关键字和分隔符合并为一个关键字。

    指定分隔符,不应该用于合并使用分隔符选择。

    数据类型:字符|字符串|细胞

    选择忽略分隔符的情况下,指定为以下之一:

    • 1(真正的)——忽略分隔符。

    • 0()- - -使用区分大小写的分隔符。使用这个选项,当你期望有关键字和分隔符只有通过不同情况下,例如分隔符”和“和”和“”的首字母缩写。

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

    输出参数

    全部折叠

    提取关键词和分数,作为表返回以下变量:

    • 关键字——指定为1,提取关键字maxNgramLength字符串数组,maxNgramLength在最长的字的字数。

    • DocumentNumber——文档包含相应的关键字的数量。

    • 分数-得分的关键字。

    如果多个候选关键字出现在文档只有通过合并分隔符分隔,然后函数合并这些关键字和分隔符合并为一个关键字。

    如果关键字包含多个词,那么th元素相应的字符串数组对应的关键字。如果关键字少字最长的关键字,然后剩下的字符串数组的条目是空字符串”“

    有关更多信息,请参见快速自动关键字提取

    更多关于

    全部折叠

    语言的注意事项

    rakeKeywords函数支持英语、日语金宝app、德语,和韩国的文本。

    rakeKeywords函数提取关键字使用delimiter-based识别候选关键字的方法。这个函数,默认情况下,使用的标点符号和停用词stopWords与语言的语言输入文档的细节作为分隔符。

    对于其他语言,指定一组适当的分隔符使用分隔符MergingDelimiters选项。

    提示

    • 你可以尝试不同的关键字提取算法与数据看看效果最好。由于耙关键词算法使用delimiter-based方法提取候选关键字,提取的关键词可以很长。或者,你可以尝试使用TextRank算法提取关键字开始与单个标记候选关键字然后合并他们在适当的时候。使用TextRank提取关键字,使用textrankKeywords函数。欲了解更多,请看使用TextRank从文本数据中提取关键字

    算法

    全部折叠

    快速自动关键字提取

    对于每个文件,rakeKeywords函数提取关键字基于独立使用以下步骤[1]:

    1. 确定候选关键词:

      • 提取序列指定的分隔符之间的令牌分隔符MergingDelimiters选项。函数将每个序列视为一个候选关键字。

    2. 计算分数的候选关键字:

      • 创建一个无向未加权图,节点对应的个人标记候选关键字。

      • 添加节点之间的边,令牌在候选关键词共现,包括自我共生,加权的候选关键字包含的数量同现。

      • 分数每个令牌使用的公式度(令牌)/频率(令牌),在那里度(令牌)是指定的令牌和边的数量吗频率(令牌)的次数,令牌出现在指定的文档。

      • 对于每一个候选字,分配一个分数由分数的总和所包含的令牌。

    3. 从候选人中提取关键词:

      • 如果有多个相同的实例对候选关键字由同一个合并的分隔符,然后合并候选关键字和分隔符为一个关键字,和对应的分数。

      • 返回顶部k关键字,k给出的MaxNumKeywords选择。

    语言细节

    tokenizedDocument对象包含令牌的详细信息包括语言细节。语言输入文档的细节决定的行为rakeKeywords。的tokenizedDocument函数,默认情况下,自动检测输入文本的语言。要手动指定语言细节,使用语言选择tokenizedDocument。查看标记的细节,使用tokenDetails函数。

    引用

    [1]玫瑰,斯图尔特,戴夫恩格尔,尼克•克莱默和温迪考利。“自动从个别文档中提取关键字。”文本挖掘:应用和理论1 (2010):1 - 20。

    版本历史

    介绍了R2020b