% CLASSIFY 判別分析
%
%   CLASS = CLASSIFY(SAMPLE,TRAINING,GROUP) は、SAMPLE のデータの各行を
%   TRAINING のグループの値に割り当てます。SAMPLE とTRAINING は、同数の
%   列をもつ行列である必要があります。GROUPは、TRAINING に対するグループ化
%   変数です。その値は、グループを定義し、各要素は、どのグループが TRAINING 
%   の行に属しているかを決定します。GROUP は、数値ベクトル、文字列配列、
%   文字列のセル配列のいずれかで設定できます。TRAINING とGROUP は、同数の
%   行です。CLASSIFY は、GROUP の NaN、あるいは、空の文字列を欠測値として
%   取り扱い、TRAINING の対応する行を無視します。CLASSは、SAMPLE の各行が、
%   どのグループに割り当てられるかを示し、GROUP と同じタイプをもちます。
%
%   CLASS = CLASSIFY(SAMPLE,TRAINING,GROUP,TYPE) は、'linear', 'quadratic',
%   'diagLinear', 'diagQuadratic', 'mahalanobis' のいずれかの判別関数の
%   タイプを指定することが可能です。線形識別は、共分散のプールされた推定を
%   各グループへの多変量正規密度にフィットします。2 次識別は、グループで
%   階層化された共分散の推定をもつ MVN 密度にフィットします。両方の手法とも、
%   グループへの観測を割り当てるために尤度比を使用します。'diagLinear' と
%   'diagQuadratic' は、対角の共分散行列の推定をもちますが、'linear' と 
%   'quadratic' と似ています。これらの対角要素の選択は、単純なベイズの
%   分類の例です。マハラノビスの識別は、階層化された共分散の推定をもつ
%   マハラノビス距離を使用します。TYPE のデフォルトは、'linear' です。
%
%   CLASS = CLASSIFY(SAMPLE,TRAINING,GROUP,TYPE,PRIOR) は、3 つの方法の
%   いずれかのグループに対して、あらかじめ確率を指定することが可能です。
%   PRIOR は、GROUP 内の固有の値の数と同じ長さの数値ベクトルになります。
%   GROUP が数値の場合、PRIOR の並びは、GROUP 内の並び替えられた値に、
%   あるいは、GROUP が文字列を含む場合、GROUP 内の値の 1 番目に発生する
%   並びに対応しなければなりません。PRIOR は、'prob'、数値ベクトル、どの
%   グループが 'prob' の要素に対応するかを示す固有の値を含む GROUP と
%   同じタイプの 'group' のフィールドをもつ 1×1 の構造体にもなります。
%   構造体として、PRIOR は、GROUP に現れないグループを含む可能性があります。
%   これは、TRAINING がより大きい訓練を設定したサブセットの場合に役立ちます。
%   最終的に、PRIOR は、TRAINING 内の頻度に関連するグループから推定する
%   必要のあるグループの前の確率を示す文字列の値 'empirical' になります。
%   PRIOR のデフォルトは、等しい確率、すなわち、一様分布の数値ベクトル
%   です。PRIOR は、誤差比の計算以外は、マハラノビス距離による識別のために
%   使用されません。
%
%   [CLASS,ERR] = CLASSIFY(...) は、訓練データに基づく誤判別の誤差の推定 
%   ERR を返します。CLASSIFY は、見かけのエラーの割合、すなわち、グループに
%   対する前の確率で重み付けされる誤判別された TRAINING の観測値の
%   パーセンテージを出力します。
%
%   [CLASS,ERR,POSTERIOR] = CLASSIFY(...) は、j 番目のトレーニンググループは
%   i 番目の標本の観測のソースである後領域の確率、すなわち Pr{group j | obs i} 
%   を含む行列 POSTERIOR を返します。POSTERIOR は、マハラノビスの識別に
%   対して計算されません。
%
%   [CLASS,ERR,POSTERIOR,LOGP] = CLASSIFY(...) は、すべてのグループ全体の
%   p(obs i | group j)*Pr{group j} の和である標本の観測 p(obs i) の条件の
%   ない予測子の確率密度の対数の推定を含むベクトル LOGP を返します。LOGP 
%   は、マハラノビスの識別に対して計算されません。
%
%   例:
%
%      % 訓練データ: 2つの正規分布の成分
%      training = [mvnrnd([ 1  1],   eye(2), 100); ...
%                  mvnrnd([-1 -1], 2*eye(2), 100)];
%      group = [repmat(1,100,1); repmat(2,100,1)];
%      % あるランダムな標本データ
%      sample = unifrnd(-5, 5, 100, 2);
%
%      % 既知の事前値、 group 1 の30% の確率、 group 2 の70% の確率を
%      % 使った分類
%      c = classify(sample, training, group, 'quad', [.3 .7]);


%   Copyright 1993-2007 The MathWorks, Inc. 
