SMOTE ノードの設定

SMOTE ノードの「設定」タブで、次の設定を定義します。

対象の設定

対象フィールド: 対象フィールドを選択します。すべての尺度タイプ (フラグ型、名義型、順序型、および離散型) がサポートされます。「データ区分」セクションで「データ区分データを使用」オプションを選択した場合、学習データのみがオーバーサンプリングされます。

オーバーサンプリング率

「自動」を選択してオーバーサンプリング率を自動的に選択するか、「比率 (マジョリティーに対するマイノリティーの比率) の設定」を選択してカスタムの比率の値を選択します。これは、マジョリティー クラスのサンプル数に対するマイノリティー クラスのサンプル数の比率です。 値は 0 より大きく 1 以下でなければなりません。

ランダム シード

ランダム シードの設定: 乱数発生ルーチンによって使用されるシードを生成するには、このオプションを選択し、「生成」をクリックします。

方法

アルゴリズムの種類: 使用する SMOTE アルゴリズムの種類を選択します。

サンプルのルール

K Neighbours: 合成サンプルを作成するために使用する最近傍の数を指定します。

M Neighbours: マイノリティー サンプルが危険な状況にあるかをどうか判断するために使用する最近傍の数を指定します。 これは、SMOTE アルゴリズムの種類「Borderline1」または「Borderline2」が選択された場合にのみ使用されます。

データ区分

データ区分データを使用。 学習データのオーバーサンプリングのみを行う場合は、このオプションを選択します。

SMOTE ノードは、imbalanced-learn© Python ライブラリーを必要とします。次の表に、SPSS® Modeler の SMOTE ノードのダイアログの設定と Python アルゴリズムとの間の関係を示します。
表 1. ノードのプロパティーと Python ライブラリーのパラメータのマッピング
SPSS Modeler の設定 スクリプト名 (プロパティー名) Python API パラメータ名
オーバーサンプリング率 (数値の入力コントロール) sample_ratio_value ratio
ランダム シード random_seed random_state
K_Neighbours k_neighbours k
M_Neighbours m_neighbours m
アルゴリズムの種類 algorithm_kind kind