BERT文本向量化(MaxCompute)
BERT文本向量化(MaxCompute)是以原始文本作为输入,系统提取特征后输出一个向量序列。您还可以将CLS输出的向量经过Dense后的向量作为整个句子的句向量。本文为您介绍Designer提供的BERT文本向量化。
BERT文本向量化(MaxCompute)组件以原始文本作为输入,端到端输出经过BERT后的向量。注意在使用前必须开通MaxCompute资源组,并且使用GPU。
pool_output
:图中的C’,即对句子进行编码后的向量。first_token_output
:图中的C。all_hidden_outputs
:图中的[C, T, T, …, TN, TSEP]。
BERT文本向量化组件拥有以下特性:
命令简单,最短只需要4个PAI命令参数。
MaxCompute表端到端输出,输入原始数据,输出向量,仅需指定输出表名。
支持对输入表中字段添加到输出表中。
价格说明
本组件调用GPU计算资源,收费标准与基础NLP文本分析组件不同,计费详情请参见Designer(原PAI-Studio)计费说明中的深度学习组件部分。
组件配置
您可以使用以下任意一种方式,配置BERT文本向量化(MaxCompute)组件参数。
方式一:可视化方式
在Designer工作流页面配置组件参数。
页签 | 参数 | 描述 |
字段设置 | 第一文本列选择 | 选择第一列文本的输出字段。 |
第二列文本列选择 | 选择第二列文本的输出字段。 | |
附加列 | 选择附加列文本的输出字段。 | |
参数设置 | batchSize | 默认值为256。 |
sequenceLength | 默认值为128。 | |
输出向量选项 | 支持pool_output、first_token_output和all_hidden_outputs。 | |
模型选择 | 支持pai-bert-base-zh、pai-bert-small-zh和pai-bert-large-zh。 | |
执行调优 | 指定Worker数 | 支持输入1、2、3和4。 |
指定Worker的GPU卡数 | 支持输入1和2。 | |
指定Worker的CPU卡数 | 默认值为1。 |
方式二:PAI命令方式
使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本。
PAI -name ez_bert_feat_ext
-DinputTable=odps://{project}/tables/{表名}
-DoutputTable=odps://{project}/tables/{表名}
-DfirstSequence=col0
-DsecondSequence=''
-DappendCols=co1,col2,col0
-DoutputSchema=pool_output,first_token_output,all_hidden_outputs
-DsequenceLength=128
-DmodelName=pai-bert-base-zh
-DbatchSize=100
-DworkerCount=1
-DworkerCPU=1
-DworkerGPU=1
-Dbuckets=oss://atp-modelzoo/tmp/?role_arn=${role_arn}&host=oss-cn-hangzhou.aliyuncs.com
参数名称 | 是否必选 | 描述 | 默认值 |
inputTable | 是 | 输入待特征提取文本表格。STRING类型,格式为project.table。 | 无 |
outputTable | 是 | 输出特征表格。STRING类型,格式为 | 无 |
firstSequence | 是 | 第一个文本序列在输入格式中对应的列名。STRING类型。 | 无 |
secondSequence | 否 | 第二个文本序列在输入格式中对应的列名。STRING类型。 | 默认为空。 |
appendCols | 否 | 用户输入表中添加到输出的列。STRING类型。 | 默认为空。 |
outputSchema | 否 | 选择输出数据中需要哪几个特征。STRING类型。 | 'pool_output’ ,’pool_output,first_token_output,all_hidden_outputs'(支持选择多个特征) |
sequenceLength | 否 | 序列整体最大长度。INT类型。范围为1~512。 | 128 |
modelName | 否 | 预训练模型名。STRING类型。 | pai-bert-base-zh。 |
batchSize | 否 | 特征提取批大小。STRING类型。 | 256 |
workerCount | 否 | 指定Worker数。INT类型。 | 1个Worker |
workerGPU | 否 | 指定Worker的GPU卡数,标识是否使用GPU。INT类型。 | 1张卡 |
workerCPU | 否 | 指定Worker的CPU卡数,标识是否使用CPU。INT类型。 | 1张卡 |
buckets | 否 | 用于指定算法将要读取的OSS Bucket。 与其他MaxCompute的IO不同,使用OSS需要配置role_arn和host。
| 无 |