全部產品
Search
文件中心

Platform For AI:條件隨機場

更新時間:Jul 13, 2024

本文為您介紹Designer提供的條件隨機場演算法組件。

條件隨機場CRF(conditional random field)是給定一組輸入隨機變數條件下,另一組輸出隨機變數條件的機率分布模型,其特點是假設輸出隨機變數構成馬爾可夫隨機場。條件隨機場可用於不同的預測問題,主要應用於標註問題中,其中最典型的是線性鏈(linear chain)。詳情請參見wiki

組件配置

您可以使用以下任意一種方式,配置條件隨機場組件參數。

方式一:可視化方式

Designer工作流程頁面配置組件參數。

頁簽

參數

描述

欄位設定

請選擇ID列

樣本以N元組的形式儲存,ID列為一條樣本的唯一ID。

請選擇特徵列

要進行標註的單詞,以及該單詞所對應的特徵(如果有)。

請選擇目標列

選擇目標列。

參數設定

特徵產生模板

預設值為

[-2:0],[-1:0],[0:0],[1:0],[2:0],[-1:0]/[0:0],
[0:0]/[1:0],[-2:1],[-1:1],[0:1],[1:1],[2:1],
[-2:1]/[-1:1],[-1:1]/[0:1],[0:1]/[1:1],[1:1]/[2:1],
[-2:1]/[-1:1]/[0:1],[-1:1]/[0:1]/[1:1],
[0:1]/[1:1]/[2:1]

低頻詞過濾閾值

預設值為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

演算法特徵產生的模板。

  • 定義

    <template .=. <template_item,<template_item,...,<template_item
    <template_item .=. [row_offset:col_index]/[row_offset:col_index]/.../[row_offset:col_index]
    row_offset .=. integer
    col_index .=. integer>
  • 預設值

    [-2:0],[-1:0],[0:0],[1:0],[2:0],[-1:0]/[0:0],[0:0]/[1:0],[-2:1],[-1:1],[0:1],[1:1],[2:1],[-2:1]/[-1:1],[-1:1]/[0:1],[0:1]/[1:1],[1:1]/[2:1],[-2:1]/[-1:1]/[0:1],[-1:1]/[0:1]/[1:1],[0:1]/[1:1]/[2:1]

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列為可選列。