本文为您介绍Designer提供的停用词过滤算法组件。
停用词过滤算法组件是文本分析中的一个预处理方法,用于过滤分词结果中的噪声(例如的、是或啊)。
停用词过滤算法组件的两个输入桩为输入表和停用词表。输入表为需要过滤停用词的表。停用词表的格式为一列,每行对应一个停用词。
Designer支持通过可视化或PAI命令方式,配置停用词过滤算法组件相关参数。
组件配置
您可以使用以下任意一种方式,配置停用词过滤组件参数。
方式一:可视化方式
在Designer工作流页面配置组件参数。
|
页签 |
参数 |
描述 |
|
字段设置 |
待过滤列 |
指定待过滤的列,多列以英文逗号(,)分隔。 |
|
执行调优 |
核心数 |
默认为系统自动分配。 |
|
内存数 |
默认为系统自动分配。 |
方式二:PAI命令方式
使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本。
PAI -name FilterNoise -project algo_public \
-DinputTableName=”test_input” -DnoiseTableName=”noise_input” \
-DoutputTableName=”test_output” \
-DselectedColNames=”words_seg1,words_seg2” \
-Dlifecycle=30
|
参数名称 |
是否必选 |
描述 |
默认值 |
|
inputTableName |
是 |
输入分词表的名称。 |
无 |
|
inputTablePartitions |
否 |
输入分词表的分区名称。 |
所有分区 |
|
noiseTableName |
是 |
停用词表的名称。 |
无 |
|
noiseTablePartitions |
否 |
停用词表的分区名称。 |
所有分区 |
|
outputTableName |
是 |
输出表的名称。 |
无 |
|
selectedColNames |
是 |
指定待过滤的列,多列以英文逗号(,)分隔。 |
无 |
|
lifecycle |
否 |
输出表的生命周期。取值范围为正整数。 |
无 |
|
coreNum |
否 |
计算的核心数。 |
系统自动分配 |
|
memSizePerCore |
否 |
每个核心的内存数。 |
系统自动分配 |
示例
-
输入数据
-
输入分词表temp_word_seg_input示例如下。输入数据表包含三列:
doc_idx(文档索引)、s_idx(段落索引)和seg(分词后的文本片段)。示例中包含两篇文档(doc_idx 分别为 1 和 2),文档 1 有 5 个文本片段,文档 2 有 3 个文本片段,seg 列存储对应的中文分段文本。 -
停用词表temp_word_noise_input示例如下。该表包含
noise_word列,列出停用词条目,包括:在、地、时、他、是、比如、而是、的、《、》、,、?、也等。
-
-
创建实验

-
选择待过滤列
选择seg字段为待过滤列。
-
运行结果该表包含三列:doc_idx(文档索引)、s_idx(句子索引)和seg(分词后的文本段)。每行对应一篇文档中的一个分句,seg 列为中文分词结果,词语之间以空格分隔。