本文為您介紹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