すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:ナイーブベイズ

最終更新日:Jul 22, 2024

ナイーブベイズは、ベイズの定理に基づく確率的分類アルゴリズムです。 このアルゴリズムは、入力データにおける全ての特徴が互いに独立していると仮定する。 Machine Learning DesignerのNaive Bayesコンポーネントを使用して、さまざまな分類問題を効果的に処理できます。 このトピックでは、Naive Bayesコンポーネントを設定する方法について説明します。

使用上の注意

Naive Bayesコンポーネントには、MaxComputeコンピューティングリソースが必要です。

コンポーネントの設定

次のいずれかの方法を使用して、Naive Bayesコンポーネントを設定できます。

方法1: Platform for AI (PAI) コンソールを使用する

PAIコンソールでNaive Bayesコンポーネントを設定するには、次の手順を実行します。PAIコンソールにログインし、[Visualized Modeling (Designer)] ページに移動して、パイプラインを開きます。 パイプラインページで、Naive Bayesコンポーネントをキャンバスにドラッグし、右側のペインでパラメーターを設定します。 下表に、各パラメーターを説明します。

タブ

パラメーター

説明

フィールド設定

フィーチャー列

フィーチャー列。 デフォルト値: Label columnパラメーターで指定された列を除く、入力テーブルのすべての列。 DOUBLE、STRING、BIGINTタイプの列がサポートされています。

除外列

トレーニングのために除外される列。 このパラメーターと [機能列] パラメーターを同時に設定することはできません。

強制変換列

強制データ型変換が必要な列。 このパラメーターを空のままにすると、次の変換ルールが適用されます。

  • STRING、BOOLEAN、またはDATETIME型の列を離散型の列に変換します。

  • DOUBLE型またはBIGINT型の列を連続型の列に変換します。

説明

BIGINT型の列をCATEGORICAL型の列に変換する場合は、このパラメーターを設定する必要があります。

ラベル列

ラベル列。 ラベル列をフィーチャ列として使用することはできません。 label列は、DOUBLE、STRING、またはBIGINTタイプである必要があります。

入力スパース形式データ

入力データがスパースかどうかを指定します。 スパースデータは、キーと値のペア形式です。

K:V入力がスパースの場合のセパレータ

キーと値のペアを区切るために使用される区切り文字。 デフォルトでは、コンマ (,) が使用されます。

入力がスパースの場合のキーと値のセパレータ

キーと値のペアでキーと値を区切るために使用される区切り文字。 デフォルトでは、コロン (:) が使用されます。

PMMLを生成するかどうか

PMML (Predictive Model Markup Language) モデルを生成するかどうかを指定します。 パイプラインのストレージパスを設定しておらず、このパラメーターのチェックボックスを選択した場合は、[今すぐ作成] をクリックしてパイプラインのストレージパスを設定します。

チューニング

コア数

デフォルトでは、システムはこのパラメータを自動的に設定します。

コアのメモリサイズ (MB)

デフォルトでは、システムはこのパラメータを自動的に設定します。

方法2: PAIコマンドを使用する

PAIコマンドを使用してNaive Bayesコンポーネントを設定するには、SQLスクリプトコンポーネントでコマンドを実行します。 詳細については、「SQLスクリプト」をご参照ください。

PAI -name NaiveBayes -project algo_public
    -DinputTablePartitions="pt=20150501"
    -DmodelName="xlab_m_NaiveBayes_23772"
    -DlabelColName="poutcome"
    -DfeatureColNames="age,previous,cons_conf_idx,euribor3m"
    -DinputTableName="bank_data_partition";

パラメーター

必須

説明

デフォルト値

inputTableName

入力テーブルの名前。

デフォルト値なし

inputTablePartitions

不可

トレーニング用に入力テーブルから選択されたパーティション。

すべてのパーティション

modelName

出力モデルの名前。

デフォルト値なし

labelColName

ラベル列の名前。

デフォルト値なし

featureColNames

不可

トレーニング用に入力テーブルから選択されたフィーチャ列の名前。

ラベル列を除くすべての列

excludedColNames

不可

トレーニングのために除外される列の名前。 このパラメーターとfeatureColNamesパラメーターを同時に設定することはできません。

デフォルト値なし

forceCategorical

不可

強制データ型変換が必要な列。 このパラメーターを空のままにすると、次の変換ルールが適用されます。

  • STRING、BOOLEAN、またはDATETIME型の列を離散型の列に変換します。

  • DOUBLE型またはBIGINT型の列を連続型の列に変換します。

説明

BIGINT型の列をCATEGORICAL型の列に変換する場合は、このパラメーターを設定する必要があります。

INTは連続型です。

coreNum

不可

コンピューティングに使用されるCPUコアの数。

システムによって自動的に設定される

memSizePerCore

不可

各CPUコアのメモリサイズ。 有効な値: 1 ~ 65536 単位:MB。

システムによって自動的に設定される

例:

  1. トレーニングデータとテストデータを準備します。

    1. MaxComputeクライアントを使用して、train_dataおよびtest_dataという名前のテーブルを作成します。 train_dataテーブルはトレーニングデータの保存に使用され、test_dataテーブルはテストデータの保存に使用されます。 テーブルで、列名とタイプをid bigint, y bigint, f0 double, f1 double, f2 double, f3 double, f4 double, f5 double, f6 double, f7 doubleに設定します。 MaxComputeクライアントのインストール方法と設定方法については、「MaxComputeクライアント (odpscmd) 」をご参照ください。 テーブルの作成方法については、「テーブルの作成」をご参照ください。

    2. 次のトレーニングデータをtrain_dataテーブルに、テストデータをtest_dataテーブルにインポートします。 データをインポートする方法については、「データをテーブルにインポートする」をご参照ください。

      • トレーニングデータ

        id

        y

        f0

        f1

        f2

        f3

        f4

        f5

        f6

        f7

        1

        -1

        -0.294118

        0.487437

        0.180328

        -0.292929

        -1

        0.00149028

        -0.53117

        -0.0333333

        2

        + 1

        -0.882353

        -0.145729

        0.0819672

        -0.414141

        -1

        -0.207153

        -0.766866

        -0.666667

        3

        -1

        -0.0588235

        0.839196

        0.0491803

        -1

        -1

        -0.305514

        -0.492741

        -0.633333

        4

        + 1

        -0.882353

        -0.105528

        0.0819672

        -0.535354

        -0.777778

        -0.162444

        -0.923997

        -1

        5

        -1

        -1

        0.376884

        -0.344262

        -0.292929

        -0.602837

        0.28465

        0.887276

        -0.6

        6

        + 1

        -0.411765

        0.165829

        0.213115

        -1

        -1

        -0.23696

        -0.894962

        -0.7

        7

        -1

        -0.647059

        -0.21608

        -0.180328

        -0.353535

        -0.791962

        -0.0760059

        -0.854825

        -0.833333

        8

        + 1

        0.176471

        0.155779

        -1

        -1

        -1

        0.052161

        -0.952178

        -0.733333

        9

        -1

        -0.764706

        0.979899

        0.147541

        -0.0909091

        0.283688

        -0.0909091

        -0.931682

        0.0666667

        10

        -1

        -0.0588235

        0.256281

        0.57377

        -1

        -1

        -1

        -0.868488

        0.1

      • テストデータ

        id

        y

        f0

        f1

        f2

        f3

        f4

        f5

        f6

        f7

        1

        + 1

        -0.882353

        0.0854271

        0.442623

        -0.616162

        -1

        -0.19225

        -0.725021

        -0.9

        2

        + 1

        -0.294118

        -0.0351759

        -1

        -1

        -1

        -0.293592

        -0.904355

        -0.766667

        3

        + 1

        -0.882353

        0.246231

        0.213115

        -0.272727

        -1

        -0.171386

        -0.981213

        -0.7

        4

        -1

        -0.176471

        0.507538

        0.278689

        -0.414141

        -0.702128

        0.0491804

        -0.475662

        0.1

        5

        -1

        -0.529412

        0.839196

        -1

        -1

        -1

        -0.153502

        -0.885568

        -0.5

        6

        + 1

        -0.882353

        0.246231

        -0.0163934

        -0.353535

        -1

        0.0670641

        -0.627669

        -1

        7

        -1

        -0.882353

        0.819095

        0.278689

        -0.151515

        -0.307329

        0.19225

        0.00768574

        -0.966667

        8

        + 1

        -0.882353

        -0.0753769

        0.0163934

        -0.494949

        -0.903073

        -0.418778

        -0.654996

        -0.866667

        9

        + 1

        -1

        0.527638

        0.344262

        -0.212121

        -0.356974

        0.23696

        -0.836038

        -0.8

        10

        + 1

        -0.882353

        0.115578

        0.0163934

        -0.737374

        -0.56974

        -0.28465

        -0.948762

        -0.933333

  2. 次の図に示すようにパイプラインを作成し、パイプラインを実行します。 パイプラインの作成方法については、「アルゴリズムモデリング」をご参照ください。image

    1. パイプラインページの左側のウィンドウで、2つのRead Tableコンポーネント、1つのNaive Bayesコンポーネント、1つのPredictionコンポーネント、および1つのMulticlass Classification Evaluationコンポーネントを検索してキャンバスにドラッグします。

    2. 前の図に基づいて、コンポーネントをパイプラインに接続します。

    3. コンポーネントパラメーターを設定します。

      • キャンバス上の [Read Table-1] コンポーネントをクリックします。 右側のウィンドウの [テーブルの選択] タブで、[テーブル名] パラメーターをtrain_dataに設定します。

      • キャンバス上の [Read Table-2] コンポーネントをクリックします。 右側のウィンドウの [テーブルの選択] タブで、[テーブル名] パラメーターをtest_dataに設定します。

      • キャンバス上のナイーブBayes-1コンポーネントをクリックし、右側のウィンドウでパラメーターを設定します。 次の表に、設定する必要があるパラメーターを示します。 他のパラメーターのデフォルト値を保持します。

        タブ

        パラメーター

        説明

        フィールド設定

        フィーチャー列

        トレーニングテーブルからf0f1f2f3f4f5f6f7列を選択します。

        ラベル列

        トレーニングテーブルからy列を選択します。

      • キャンバスで [予測-1] コンポーネントをクリックします。 右側のウィンドウの [フィールドの設定] タブで、[予約列] パラメーターをidおよびyに設定します。 他のパラメーターのデフォルト値を保持します。

      • キャンバス上の [マルチクラス分類評価-1] コンポーネントをクリックします。 右側のペインの [フィールド設定] タブで、[元の分類結果列] パラメーターをyに設定します。 他のパラメーターのデフォルト値を保持します。

    4. ボタンをクリックしてimageパイプラインを実行します。

  3. パイプラインの実行が完了したら、[予測-1] コンポーネントを右クリックし、[データの表示] > [予測結果の出力] を選択して予測結果を表示します。 image

関連ドキュメント