net.trialpc.sticktools
クラス Smooth

java.lang.Object
  上位を拡張 net.trialpc.sticktools.Smooth

public class Smooth
extends java.lang.Object

言語モデルのスムージングの種類を示します。

作成者:
tetsu

フィールドの概要
static Smooth DIRICHLET
          ディリクレ法(Dirichlet smoothing)により、スムージングを行います。
static Smooth LINEAR
          線形補間法(Jelinek-Mercer smoothing)により、スムージングを行います。
static Smooth NONE
          スムージングを行いません。
static Smooth WITTEN_BELL
          Witten-Bell法(Witten-Bell smoothing)により、スムージングを行います。
 
コンストラクタの概要
Smooth()
           
 
メソッドの概要
 boolean checkParameter(float param)
          getParameter メソッドに与えるためのパラメータが適切であるかどうかを返します。
 float getParameter(float param, long num, long kind)
          スムージング係数を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

NONE

public static final Smooth NONE
スムージングを行いません。


LINEAR

public static final Smooth LINEAR
線形補間法(Jelinek-Mercer smoothing)により、スムージングを行います。


DIRICHLET

public static final Smooth DIRICHLET
ディリクレ法(Dirichlet smoothing)により、スムージングを行います。


WITTEN_BELL

public static final Smooth WITTEN_BELL
Witten-Bell法(Witten-Bell smoothing)により、スムージングを行います。

コンストラクタの詳細

Smooth

public Smooth()
メソッドの詳細

getParameter

public float getParameter(float param,
                          long num,
                          long kind)

スムージング係数を返します。 スムージングによっては、利用されない引数もあります。 このメソッドで返される値は、0 以上 1 以下の範囲です。

ここで返される値は、主となるモデルに対して利用するように定義しています。 背景となるモデルに対しては、( 1 - getParameter(float, long, long) ) の値を利用するようにしてください。

パラメータ:
param - スムージングパラメータ
num - 言語モデルに含まれる語彙の延べ語数
kind - 言語モデルに含まれる語彙の異なり語数
戻り値:
スムージング手法に対応したパラメータ
例外:
java.lang.IllegalArgumentException - 引数が不適切な値である場合

checkParameter

public boolean checkParameter(float param)
getParameter メソッドに与えるためのパラメータが適切であるかどうかを返します。 スムージング手法によっては、スムージングパラメータを利用せずに係数を算出する場合がありますが、 その場合は常に true を返します。

パラメータ:
param - スムージングパラメータ
戻り値:
適切であるなら true、不適切であるなら false
関連項目:
getParameter(float, long, long)