2 クラスのベイズ ポイント マシン
重要
Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日までに、Azure Machine Learning に切り替えすることをお勧めします。
2021 年 12 月 1 日以降、新しい Machine Learning Studio (クラシック) リソースは作成できません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) リソースを引き続き使用できます。
- ML Studio (クラシック) から Azure Machine Learning への機械学習プロジェクトの移動に関する情報を参照してください。
- Azure Machine Learning についての詳細を参照してください。
ML Studio (クラシック) のドキュメントは廃止予定であり、今後更新されない可能性があります。
ベイズ ポイント マシン二項分類モデルを作成します
カテゴリ: Machine Learning/ モデルの初期化 / 分類
注意
適用対象: Machine Learning Studio (クラシック) のみ
類似のドラッグ アンド ドロップ モジュールは Azure Machine Learning デザイナーで使用できます。
モジュールの概要
この記事では、Machine Learning Studio (クラシック) の Two-Class Bayes Point Machine モジュールを使用して、トレーニングされていない二項分類モデルを作成する方法について説明します。
このモジュールのアルゴリズムでは、"ベイズ ポイント マシン" と呼ばれる線形分類にベイズ アプローチを使用します。 このアルゴリズムは、"平均" 分類子であるベイズ ポイントを 1 つ選択することで、線形分類子の理論上最適なベイズ平均 (一般化パフォーマンスの観点から) を効率的に近似します。 ベイズ ポイント マシンはベイズ式分類法モデルであるため、トレーニング データがオーバーフィットしない傾向があります。
詳細については、Microsoft Machine Learning ブログの Chris Chris の投稿を参照してください。
Two-Class Bayes Point Machine を構成する方法
Machine Learning Studio (クラシック) で、2 クラス ベイズ ポイント マシン モジュールを実験に追加します。 モジュールは、[モデルの初期化] Machine Learning分類] の下に表示されます。
[ トレーニングイテレーションの数] に数値を入力して、メッセージパッシング アルゴリズムがトレーニング データを反復処理する頻度を指定します。 一般的に、イテレーションの数は 5 ~ 100 の範囲の値で設定します。
トレーニングのイテレーションの数が多くなれば、予測はそれだけ正確になりますが、トレーニング速度が低下します。
ほとんどのデータセットでは、30 回というトレーニングのイテレーションの既定の設定は、アルゴリズムが正確に予測するために十分な数です。 イテレーションが少なくても正確に予測できる場合もあります。 相関性の高い特徴を持つデータセットの場合、トレーニングのイテレーションによるメリットが大きい場合があります。
トレーニングと予測の各 インスタンスに定数特徴またはバイアスを追加する場合は、オプション [バイアスを含める] を選択します。
データに定数の特徴がまだ含まれていない場合、バイアスを追加する必要があります。
[カテゴリ特徴の不明 な値を許可する] オプションを選択して、不明な値のグループを作成します。
このオプションをオフにした場合、モデルに与えることができる値は、トレーニング データに含まれているものに限定されます。
このオプションを選択し、不明な値を許可すると、モデルは既知の値の精度が低くなる可能性がありますが、新しい (不明) 値に対する予測が向上する可能性があります。
モデルのトレーニング モジュールの インスタンスと トレーニング データを追加します。
Connect 2 クラス ベイズ ポイント マシン モジュールのトレーニング データと出力をモデルのトレーニング モジュールに追加し、ラベル列を選択します。
実験を実行します。
結果
トレーニングが完了したら、モデルのトレーニング モジュールの出力を右 クリック して結果を表示します。
モデルのパラメーターの概要を、トレーニングから学習した特徴の重みと共に表示するには、[視覚化] を選択 します。
後で使用するためにモデルを保存するには、 MOdel のトレーニングの出力を右クリックし、[ トレーニング済みモデルとして保存 ] を選択します。
予測を行う場合は、トレーニング済みのモデルをモデルのスコア付けモジュール への入力として使用 します。
トレーニングされていないモデルは、ラベル付 きデータ セット に対するクロス検証のためにモデルのクロス検証にも渡されます。
例
機械学習で Two-Class Bayes Point Machine がどのように使用されるのかについては、次のサンプル実験を参照 Azure AI Gallery。
- バイナリ分類子の比較: このサンプルでは、複数の 2 クラス分類子の使用を示します。
テクニカル ノート
このセクションでは、実装の詳細と、このアルゴリズムについてよく寄せられる質問について説明します。
元の研究と基になる理論の詳細については、この論文 (PDF) を参照してください。ベイズ ポイント マシン、By Herbert、Graepe、および Campbell
ただし、この実装では、いくつかの点で元のアルゴリズムが向上します。
期待値伝播メッセージ受け渡しアルゴリズムを使用します。 詳細については、ベイジアン推定 の概算に関するアルゴリズムファミリに関するページを参照してください。
パラメーター スイープは必要ありません。
このメソッドでは、データを正規化する必要があります。
以上の改善により、ベイズ ポイント マシンの分類モデルがより強固になり、より使いやすくなります。パラメーターの調整という時間のかかる手順を回避できます。
モジュールのパラメーター
名前 | Range | Type | Default | 説明 |
---|---|---|---|---|
トレーニングの反復数 | >=1 | Integer | 30 | トレーニング時に使用するイテレーションの数を指定します |
バイアスを含む | Any | Boolean | True | 各インスタンスに定数の特徴またはバイアスを追加する必要があるかどうかを示します |
カテゴリの特徴で不明な値を許可する | Any | Boolean | True | True の場合、各カテゴリ列の追加レベルを作成します。 トレーニング データセットでは使用できないテスト データセットのレベルはすべて、この追加レベルにマップされます。 |
出力
名前 | 型 | 説明 |
---|---|---|
未トレーニング モデル | ILearner インターフェイス | 未トレーニング二項分類モデル |