本文为您介绍Designer提供的关键词抽取算法组件。
关键词抽取是自然语言处理中的重要技术之一,具体是指从文本中将与这篇文章意义相关性较强的一些词抽取出来。该算法基于TextRank,根据PageRank算法思想,利用局部词汇之间关系(共现窗口)构建网络,并计算单词的重要性,最终选取权重大的作为关键词。
常用流程如下:
原始语料
分词
使用词过滤
关键词抽取
组件配置
您可以使用以下任意一种方式,配置关键词抽取组件参数。
方式一:可视化方式
在Designer工作流页面配置组件参数。
页签 | 参数 | 描述 |
字段设置 | 标识文章id的列名 | 输入标识文章ID的列名。 |
标识文章内容分完词结果 | 输入标识文章内容分完词结果名称。 | |
参数设置 | 输出前多少个关键词 | 整数,默认值为5。 |
窗口大小 | 整数,默认值为2。 | |
阻尼系数 | 默认值为0.85。 | |
最大迭代数 | 默认值为100。 | |
收敛系数 | 默认值为0.000001。 | |
执行调优 | 核心数,默认自动分配 | 默认自动选择。 |
每个核心的内存,默认自动分配 | 默认自动选择。 |
方式二:PAI命令方式
使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本。
PAI -name KeywordsExtraction
-DinputTableName=maple_test_keywords_basic_input
-DdocIdCol=docid -DdocContent=word
-DoutputTableName=maple_test_keywords_basic_output
-DtopN=19;
参数名称 | 是否必选 | 描述 | 默认值 |
inputTableName | 是 | 输入表。 | 无 |
inputTablePartitions | 否 | 输入表中指定哪些分区参与训练,格式为“Partition_name=value”。如果是多级格式为“name1=value1/name2=value2”。如果指定多个分区,中间用半角逗号(,)分隔。 | 选择所有分区 |
outputTableName | 是 | 输出表名。 | 无 |
docIdCol | 是 | 标识文章ID的列名,仅可指定一列。 | 无 |
docContent | 是 | Word列,仅可指定一列。 | 无 |
topN | 否 | 输出前多少个关键词,当关键词个数小于全部词个数时,全部输出。 | 5 |
windowSize | 否 | TextRank算法的窗口大小。 | 2 |
dumpingFactor | 否 | TextRank算法的阻尼系数。 | 0.85 |
maxIter | 否 | TextRank算法的最大迭代次数。 | 100 |
epsilon | 否 | TextRank算法的收敛残差阈值。 | 0.000001 |
lifecycle | 否 | 指定输出表的生命周期。 | 无 |
coreNum | 否 | 节点个数。 | 自动计算 |
memSizePerCore | 否 | 单个节点内存大小,单位为MB。 | 自动计算 |
示例
数据生成
输入表需采用空格分词,并过滤掉停用词(如“的”、“地”、“得”、“了”、“个”)和所有标点符号。
docid:string
word:string
doc0
翼身融合 飞机 是 未来 航空 领域 发展 一个 新 方向 诸多 研究 机构 已经 开展 对翼身融合 飞机 研究 而 其 全自动 外形 优化 算法 已 成为 新 研究 热点 现有 成果 基础 之上 分析 比较 常用 建模 求解 平台 使用 方式 及 特点 设计 编写 翼身融合 飞机 外形 优化 几何 建模 网格 划分 流场 求解 外形 优化 模块 比 较 不同 算法 间 优劣 实现 翼身融合 飞机 概念设计 中 外形 优化 几何 建模 及 网格 生成 模块 实现 基于 超限 插值 网格 生成 算法 基于 样条 曲线 建模 方法 流场 求解 模块 包括 有限 差分 求解器 有限元 求解器和面元法 求解器 其中 有限 差分 求解器 主要 包括 基于 有限 差分法 势流 数学 建模 基于 笛卡尔 网格 变 步长 差分 格式 推导 笛卡尔 网格 生成 索引 算法 基于 笛卡尔 网格 诺 依曼 边界条件 表达 形式 推导 实现 基于 有限 差分 求解器 二维 翼型 气动 参数 计算 算例 有限元 求解器 主要 包括 基于 变分 原理 势流 有限元 理论 建模 二维 有限元 库塔 条件 表达式 推导 基于 最小 二乘 速度 求解 算法 设计 基于 Gmsh 二维 带尾迹 翼型 空间 网格 生成器 开发 实现 基于 有限元 求解器 二维 翼型 气动 参数 计算 算例 面元法 求解器 主要 包括 基于 面元法 势流 理论 建模 自动 尾迹 生成 算法 设计 基于 面元法 三维 翼身融合 体 流场 求解器 开发 基于 布拉 修斯 平板 解 阻力 估算 算法 设计 求解器 Fortran 语言 上 移 植 Python 和 Fortran 代码 混编 基于 OpenMP 和 CUDA 并行 加速 算法 设计 与 开发 实现 基于 面元法 求解器 三维 翼身融合 体 气动 参数 计算 算例 外形 优化 模块 实 现了 基于 自由 形状 变形 网格 变形 算法 遗传算法 差分 进化 算法 飞机 表面积 计算 算法 基于 矩 积分 飞 机 体积 计算 算法 开发 基于 VTK 数据 可视化 格式 工具
PAI命令
PAI -name KeywordsExtraction -DinputTableName=maple_test_keywords_basic_input -DdocIdCol=docid -DdocContent=word -DoutputTableName=maple_test_keywords_basic_output -DtopN=19;
输出说明
docid
keywords
weight
doc0
基于
0.041306752223538405
doc0
算法
0.03089845626854151
doc0
建模
0.021782865850562882
doc0
网格
0.020669749212693957
doc0
求解器
0.020245609506360847
doc0
飞机
0.019850761705313365
doc0
研究
0.014193732541852615
doc0
有限元
0.013831122054200538
doc0
求解
0.012924593244133104
doc0
模块
0.01280216562287212
doc0
推导
0.011907588923852495
doc0
外形
0.011505456605632607
doc0
差分
0.011477831662367547
doc0
势流
0.010969269350293957
doc0
设计
0.010830986516637251
doc0
实现
0.010747536556701583
doc0
二维
0.010695570768457084
doc0
开发
0.010527342662670088
doc0
新
0.010096978306668461