条件付き確率場
以下はCRFを実行するためのソフトウェアの例である。
Conrad CRF based gene predictor (Java)
MALLET (Java)
Kevin Murphy's MATLAB CRF code (Matlab)
Sunita Sarawagi's CRF package (Java)
HCRF library (including CRF and LDCRF) (C++, Matlab)
CRFSuite Fast CRF implementation (C)
CRF++ (C++):和製
JProGraM (Java)
Stanford Named Entity Recognizer (NER) (Java)
BANNER (Java)
Monte Python
CRFsは整数 o {\displaystyle o} に指定された手前の変数 Y i − o , . . . , Y i − 1 {\displaystyle Y_{i-o},...,Y_{i-1}} に依存する Y i {\displaystyle Y_{i}} を考えることでより高次のモデルに拡張される。訓練と推定は実際には o {\displaystyle o} の小さい値に対してのみ行われる。これは計算コストが o {\displaystyle o} に従って指数的に増加するためである。
別のCRFsの一般化として、セミマルコフ条件付き確率場 (semi-CRF) があり、これはラベル列 Y {\displaystyle Y} の可変長セグメンテーションをモデル化したものである。これは Y i {\displaystyle Y_{i}} の計算コストの大きい長値域依存性をモデル化することで高次CRFsに相当する能力を提供する。