ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

fit

クラス: NaiveBayes

学習データの近似による、Naive Bayes 分類器オブジェクトの作成

構文

nb = NaiveBayes.fit(training, class)
nb = NaiveBayes.fit(..., 'param1',val1, 'param2',val2, ...)

説明

nb = NaiveBayes.fit(training, class) は、NaiveBayes 分類器オブジェクト nb を作成します。training は、学習データの ND 列の数値行列です。training の行は観測に対応し、列は特徴に対応します。class は、異なる K レベルを取得する、training の分類変数です。class の各要素は、training の対応する行が属するクラスを定義します。training および class の行数は同じでなければなりません。

nb = NaiveBayes.fit(..., 'param1',val1, 'param2',val2, ...) は、以下の 1 つ以上の名前と値のペアを指定します。

  • 'Distribution' – データのモデリングのために fit が使用する分布を指定する、文字列または 1 行 D 列の文字列のセル ベクトル。値が文字列である場合、fit は 1 つのタイプの分布を使用し、すべての特徴をモデリングします。また、fit は、異なるタイプの分布を使用し、複数の特徴をモデリングすることもできます。値がセル ベクトルである場合、j 番目の要素は、fitj 番目の特徴に対して使用する分布を指定します。次のタイプの分布が使用できます。

    'normal' (既定の設定)正規 (ガウス) 分布。
    'kernel'カーネル平滑化密度推定。
    'mvmn'離散データの場合、多変量多項分布。fit は、各特徴がクラス内の多項モデルに従うことを前提としています。特徴のパラメーターには、対応する特徴が取得できるすべての値の確率が含まれます。
    'mn'bag-of-tokens モデルなどのカウントベース データを分類するための多項分布。bag-of-tokens モデルでは、j 番目の特徴の値は、この観測の j 番目のトークンの発生回数であるため、非負の整数でなければなりません。'mn' が使用される場合、fit は、各観測を多項分布の複数の試行であると認識し、トークンの各発生は 1 つの試行として認識します。この多項モデルのカテゴリ (ビン) の数は、異なるトークンの数、すなわち training の列の数です。

  • 'Prior' – 次のいずれかで指定される、クラスの前の確率。

    'empirical' (既定の設定)fit は、training のクラスの相対的頻度から、前の確率を推定します。
    'uniform'すべてのクラスについて、前の確率は等しくなります。
    ベクトルクラス順番 class で前の確率を指定している長さ K の数値ベクトルです。
    構造体クラス レベルおよびその前の確率を含む構造体 SS には次の 2 つのフィールドがなければなりません。
    • S.prob: 前の確率の数値ベクトル。

    • S.class:prob の対応する要素のクラスを示す一意のクラス レベルを含む、class と同じタイプのベクトル。S.class は、class のすべての K レベルを含まなければなりません。class に現れないクラスも含めることができます。これは training がより大きな学習セットのサブセットである場合に役立つことがあります。fit は、class ではなく S.class に現れるどのクラスも無視します。

    前の確率の合計が 1 にならない場合、fit はこれらを正規化します。

  • 'KSWidth' – カーネル平滑化ウィンドウのバンド幅。既定の設定では、ガウス分布に最適な値を使用し、特徴およびクラスの各組み合せの既定の設定のバンド幅を自動的に選択するようになっています。値には、次のいずれかを指定できます。

    スカラーすべてのクラスのすべての特徴に対する幅。
    行ベクトル1 行 D 列のベクトル。j 番目の要素は、すべてのクラスの j 番目の特徴のバンド幅です。
    列ベクトルK 行 1 列のベクトル。i 番目の要素は、i 番目のクラスのすべての特徴に対するバンド幅を指定します。K は、クラス レベルの数を表します。
    行列KD 列の行列 MM(i,j) は、i 番目のクラスの j 番目の特徴のバンド幅を指定します。
    構造体クラス レベルおよびそのバンド幅を含む構造体 SS には次の 2 つのフィールドがなければなりません。
    • S.width – 行ベクトル、または D 列の行列として指定される、バンド幅の数値配列。

    • S.class – 幅の対応する行のクラスを示す一意のクラス レベルを含む、class と同じタイプのベクトル。

  • 'KSSupport' – 密度を適用できる領域。文字列、下記のような 2 要素ベクトル、またはこれらの値の 1 行 D 列のセル配列を使用できます。

    'unbounded' (既定の設定)密度は、実数直線全体に拡張できます。
    'positive'密度は正の値に制限されます。
    [L,U]密度のサポートのために、有限の下限 L および上限 U を指定する 2 要素ベクトル。

  • 'KSType' – 使用するカーネル平滑化のタイプ。文字列または 1 行 D 列の文字列からなるセル配列のいずれかになります。各文字列には、'normal' (既定値)、'box''triangle'、または 'epanechnikov' を使用できます。

操作のヒント

この情報は役に立ちましたか?