条件随机场预测是基于linearCRF在线预测模型的算法组件,主要应用于处理序列标注问题。本文为您介绍条件随机场预测算法组件的参数配置和使用示例。
参数配置
Designer支持通过可视化方式配置组件参数。
参数 | 描述 |
请选择ID列 | 样本以N元组的形式存储,ID列为一条样本的唯一ID。 |
请选择特征列 | 要进行标注的单词,以及该单词对应的特征。 |
请选择目标列 | 选择目标列。 |
预测结果列列名 | 预测结果列的名称,默认值为prediction_result。 |
预测分数列列名 | 预测分数列的名称,默认值为prediction_score。 |
预测详细列列名 | 预测详细列的名称。如果不需要详细列,可以置空。 |
使用示例
在LinearCRF的在线预测阶段,必须使用Model IO形式的训练模型,训练数据表的格式如下所示。
sentence_id | word | f1 | f2 | label |
1 | Rockwell | NNP | POS | B-NP |
1 | International | NNP | NP | I-NP |
1 | Corp | NNP | PO | I-NP |
1 | 's | POS | NN | B-NP |
... | ... | ... | ... | ... |
输入格式中特征的名字word、f1和f2与训练数据表中特征的列名相同。在一个在线预测输入请求中,不同单词的特征使用空格分隔。LinearCRF在线预测模型的输入格式如下所示。
{
"inputs":[
{
"word":{
"dataType": 50,
"dataValue":"Rockwell International Corp 's ..."
},
"f1": {
"dataType": 50,
"dataValue":"NNP NNP NNP POS ..."
},
"f2": {
"dataType": 50,
"dataValue":"POS NP PO NN ..."
}
}]
}
输出格式会在outputValue中以JSON格式输出一个与输入请求中所有单词对应的prediction_result,prediction_score和prediction_detail。LinearCRF在线预测模型的输出格式如下所示。
{
"outputs": [
{
"outputLabel": "CRFProcessor_Result",
"outputValue": {
"dataType": 50,
"dataValue": {
"Rockwell NNP POS": {
"prediction_result":"B-NP",
"prediction_score":0.99,
"prediction_detail":{"B-ADJP":0.000145, "B-NP":0.99, ...}
},
"International NNP NP": ...
}
}
}
]
}
如果您的输入格式有错误,程序会给出提示信息,具体如下所示。
{
"outputs": [
{
"outputLabel": "CRFProcessor_Result",
"outputValue": {
"dataType":50,
"dataValue": "Failed: The input format is incorrect"
}
}
]
}