条件随机场预测是基于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"
       }
    }
    ]
}该文章对您有帮助吗?