本文为您介绍PAI-Designer(原PAI-Studio)提供的条件随机场算法组件。
条件随机场CRF(conditional random field)是给定一组输入随机变量条件下,另一组输出随机变量条件的概率分布模型,其特点是假设输出随机变量构成马尔可夫随机场。条件随机场可用于不同的预测问题,主要应用于标注问题中,其中最典型的是线性链(linear chain)。详情请参见wiki。
组件配置
您可以使用以下任意一种方式,配置条件随机场组件参数。
方式一:可视化方式
在PAI-Designer(原PAI-Studio)工作流页面配置组件参数。
页签 | 参数 | 描述 |
---|---|---|
字段设置 | 请选择ID列 | 样本以N元组的形式存储,ID列为一条样本的唯一ID。 |
请选择特征列 | 要进行标注的单词,以及该单词所对应的特征(如果有)。 | |
请选择目标列 | 选择目标列。 | |
参数设置 | 特征生成模板 | 默认值为 。 |
低频词过滤阈值 | 默认值为1。 | |
L1正则项系数 | 默认值为1。 | |
L2正则项系数 | 默认值为0。 | |
最大迭代次数 | 默认值为100。 | |
收敛阈值 | 默认值为0.00001。 | |
执行调优 | 核心数 | 默认自动调整。 |
每个核心的内容 | 默认自动调整。 |
方式二:PAI命令方式
使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本。
PAI -name=linearcrf
-project=algo_public
-DinputTableName=crf_input_table
-DidColName=sentence_id
-DfeatureColNames=word,f1
-DlabelColName=label
-DoutputTableName=crf_model
-Dlifecycle=28
-DcoreNum=10
参数名称 | 是否必选 | 描述 | 默认值 |
---|---|---|---|
inputTableName | 是 | 输入特征数据表。 | 无 |
inputTablePartitions | 否 | 输入特征表选择的分区。 | 全表 |
featureColNames | 否 | 输入表选择的特征列。 | 默认选择全部,自动排除label列。 |
labelColName | 是 | 目标列。 | 无 |
idColName | 是 | 样本标号列。 | 无 |
outputTableName | 是 | 输出模型表。 | 无 |
outputTablePartitions | 否 | 输出模型表选择的分区。 | 全表 |
template | 否 | 算法特征生成的模板。 |
|
freq | 否 | 过滤特征的参数,算法只保留出现次数大于等于freq的特征。 | 1 |
iterations | 否 | 优化的最大迭代次数。 | 100 |
l1Weight | 否 | L1正则的参数权重。 | 1.0 |
l2Weight | 否 | L2正则的参数权重。 | 1.0 |
epsilon | 否 | 收敛误差。L-BFGS的终止条件,即两次迭代之间log-likelihood的差。 | 0.0001 |
lbfgsStep | 否 | lbfgs优化过程中的历史长度,仅对lbfgs有效。 | 10 |
threadNum | 否 | 模型训练时并行启动线程的数量。 | 3 |
lifecycle | 否 | 输出表的生命周期。 | 无 |
coreNum | 否 | 核心数。 | 自动计算 |
memSizePerCore | 否 | 内存数。 | 自动计算 |
示例
- 输入数据
sentence_id word f1 label 1 Rockwell NNP B-NP 1 International NNP I-NP 1 Corp NNP I-NP 1 ‘s POS B-NP … … … … 823 Ohio NNP B-NP 823 grew VBD B-VP 823 3.8 CD B-NP 823 % NN I-NP 823 . . O - 预测算法PAI命令
PAI -name=crf_predict -project=algo_public -DinputTableName=crf_test_input_table -DmodelTableName=crf_model -DidColName=sentence_id -DfeatureColNames=word,f1 -DlabelColName=label -DoutputTableName=crf_predict_result -DdetailColName=prediction_detail -Dlifecycle=28 -DcoreNum=10
参数名称 是否必选 描述 默认值 inputTableName 是 输入特征数据表 无 inputTablePartitions 否 输入特征表选择的分区 全表 featureColNames 否 输入表选择的特征列 默认选择全部,自动排除label列。 labelColName 否 目标列 无 IdColName 是 样本标号列 无 resultColName 否 输出表中result列名 prediction_result scoreColName 否 输出表中score列名 prediction_score detailColName 否 输出表中detail列名 无 outputTableName 是 输出预测结果表 无 outputTablePartitions 否 输出预测结果表选择的分区 全表 modelTableName 是 算法模型表 无 modelTablePartitions 否 算法模型表选择的分区 全表 lifecycle 否 输出表的生命周期 无 coreNum 否 核心数 自动计算 memSizePerCore 否 内存数 自动计算 - 输出数据
sentence_id word f1 label 1 Confidence NN B-NP 1 in IN B-PP 1 the DT B-NP 1 pound NN I-NP … … … … 77 have VBP B-VP 77 announced VBN I-VP 77 similar JJ B-NP 77 increases NNS I-NP 77 . . O 说明 label列为可选列。