入力データ文字列の長さを短縮する

このチュートリアルでは、入力データ文字列の長さを短縮する必要が生じる可能性のある例を示します。 2 項ロジスティック回帰モデル、および 2 項ロジスティック回帰モデルを含む自動分類モデルの場合、文字列フィールドは最大 8 文字に制限されます。 文字列が8文字を超える場合、 Reclassify ノードを使用して再コード化できます。

この例では、フローのごく一部に焦点を当て、文字列が長すぎる場合に発生する可能性のあるエラーの種類を示し、文字列の詳細を許容可能な長さに変更するために再分類ノードを使用する方法を説明します。 例では二項 ロジスティック回帰 ノードを使用していますが、二項ロジスティック回帰モデルを生成するためにノード 自動分類器 を使用することもできます。

チュートリアルのプレビュー

< このチュートリアルの手順をプレビューするには、この動画をご覧ください。 動画に表示されているユーザーインターフェースには、若干の違いがある可能性があります。 この動画は、書面によるチュートリアルを補完するものです。 この動画は、このドキュメントに記載されているコンセプトとタスクを視覚的に学ぶ方法を提供します。

チュートリアルを試してみてください

このチュートリアルでは、以下のタスクを完了します:

サンプルモデラーのフローとデータセット

このチュートリアルでは、サンプルプロジェクト内の 「入力データ文字列の長さを短縮する」 フローを使用します。 使用されるデータファイルは. です drug_long_name.csv。 以下の図はサンプル・モデラーのフローを示しています。

図1: サンプルモデラーフロー
2 項ロジスティック回帰の文字列分類を示すサンプル・フロー
以下の画像はサンプルデータセットを示しています。
図2: サンプルデータセット
サンプルデータセット

タスク1: サンプルプロジェクトを開く

サンプルプロジェクトには、いくつかのデータセットとサンプルモデラーフローが含まれています。 サンプルプロジェクトをまだお持ちでない場合は、 チュートリアルのトピックを参照してサンプルプロジェクトを作成してください。 次に、サンプルプロジェクトを開くには以下の手順に従ってください:

  1. ナビゲーションメニュー から ナビゲーション・メニューwatsonxプロジェクト > すべてのプロジェクトを選択します。
  2. SPSS Modeler プロジェクトをクリックしてください。
  3. タブをクリック 資産 すると、データセットとモデラーフローが表示されます。

チェックポイントアイコン 進捗を確認してください

次の画像は資産のアセットタブを示しています。 これで、このチュートリアルに関連するサンプルモデラーフローを使用する準備が整いました。

サンプルプロジェクト

トップへ戻る

タスク2: データ資産とタイプノードを検証する

入力データ文字列の長さの削減には、いくつかのノードが含まれます。 以下の手順に従って、 と タイプ ノード データ資産 を検査してください:

  1. タブ 資産 から 入力データ文字列の長さの削減 モデラーフローを開き、キャンバスの読み込みを待ちます。
  2. ノード drug_long_name.csv をダブルクリックします。 このノードは、プロジェクト内のファイル drug_long_name.csv を指すノード データ資産 です。
  3. ファイル形式のプロパティを確認してください。
  4. オプション: データ全体を確認するには「プレビュー」をクリックしてください。
  5. ノード データ資産 の後に続くノード タイプ をダブルクリックしてください。 このノードは、フィールドのプロパティ(測定レベル(フィールドが含むデータの種類)など)およびモデリングにおける各フィールドのターゲットまたは入力としての役割を指定します。 測定の尺度は、フィールドのデータの種類を示すカテゴリーです。 ソースデータファイルは3つの異なる測定レベルを使用しています:
    • 連続フィールド(例:フィールド) Age は連続した数値を含みます。
    • 名目フィールド(例:フィールド Drug )は、2つ以上の異なる値を持つ。この場合、 drugA または drugBである。
    • フラグフィールド(例:` Sex flag`フィールド)は、固有の順序を持つ複数の異なる値を持つデータを記述します。この場合、 F`1`、`2`、`3`、`4`、`5`、`6`、`7`、`8`、`9`、`0` Mです。
    図3: ノードのプロパティを入力
    データ型ノード

    各フィールドについて、 Type ノードはモデリングにおける各フィールドの役割を示すために役割も指定します。 この役割は、顧客のコレステロール値が正常か高値かを示すフィールドを対象に設定されています Cholesterol_longターゲットとは、その値を予測したいフィールドのことです。

    他のフィールドの役割は入力に設定されています。 入力フィールドは、予測フィールドと呼ばれる場合があります。モデル作成アルゴリズムは、このフィールドの値を使用して対象フィールドの値を予測します。

  6. オプション: [プレビューデータ] をクリックすると、フィルタリングされたデータセットを確認できます。

チェックポイントアイコン 進捗を確認してください

次の画像はタイプノードを示しています。 ロジスティックノードを表示する準備が整いました。

データ型ノード

トップへ戻る

タスク3: 値の再分類

このタスクでは、モデルを実行した際にエラーが発生します。エラーを回避するために値を再分類するには、以下の手順に従ってください:

  1. パレットのセクション モデリング からノード ロジスティック をキャンバス上にドラッグし、既存の タイプ ノードの後に データ資産 配置されたノードに接続します。
  2. Cholesterol_long ノードをダブルクリックして、そのプロパティを表示します。
  3. 二項法(デフォルトの多項法ではなく)を選択してください。
    • 標的フィールドがフラグまたは二つの離散値を持つ名義変数の場合、 二項モデルが使用される。
    • 多項ロジスティックモデルは、対象フィールドが2つ以上の値を持つ名義変数である場合に使用されます。
  4. 保存をクリックしてください。
  5. Cholesterol_long ノードにカーソルを合わせ、 実行アイコンをクリックしてください 実行アイコン。 「Cholesterol_long」文字列値が長すぎることを警告するエラー・メッセージが表示されます。 この問題を修正するには、値を変換するために再分類ノードを使用できます。 ノードの再分類は、 カテゴリを折りたたんだり、分析のためにデータを再グループ化したりするのに便利です。
    図4: 通知
    エラー・メッセージ
  6. コレステロール(再分類) ノードをダブルクリックして、そのプロパティを表示します。 再分類フィールドが に設定され Cholesterol_long新しいフィールド名が であることに注意してください Cholesterol
  7. 「値を取得」 をクリックし、次に 「自動的に再分類 」セクションを展開します。 元の値の列に値 Cholesterol_long を追加する。
  8. 新しい値の列で、 高コレステロール値の元の値には「」と High 入力し、 正常コレステロール値の元の値には「」と入力してください Normal。 これらの設定は、エラーメッセージを回避するために値を短縮します。

チェックポイントアイコン 進捗を確認してください

次の画像は再分類ノードを示しています。 フィルタノードの確認準備が整いました。

ノードのプロパティを再分類する

トップへ戻る

タスク4: フィルタノードの確認

フィルター ノードを表示して確認するには、次の手順に従ってください:

  1. フィルタノードをダブルクリックして、そのプロパティを表示します。
  2. このノードがフィールド Cholesterol_long をフィルタリングしていることに注意してください。

チェックポイントアイコン 進捗を確認してください

次の画像はフィルター ノードを示しています。 これでターゲットを定義する準備が整いました。

フィルタノードのプロパティ

トップへ戻る

タスク5:対象を定義する

フィールドのプロパティは、Type ノードで指定できます。 Type ノードでターゲットを定義するには、次の手順に従ってください:

  1. フィルタノードの後のタイプノードをダブルクリックして、そのプロパティを表示します。
  2. [ 値を読み取る] をクリックしてデータソースから値を読み取り、フィールドの測定タイプを設定します。 ロールは、機械学習プロセスにおいてフィールドが入力 (予測変数フィールド)かターゲット (予測変数フィールド)かをモデリングノードに指示します。 「両方」「なし」 も利用可能な役割です。これに加え、 「パーティション」 は、レコードをトレーニング、テスト、検証用の別々のサンプルに分割するために使用されるフィールドを示します。 Split 値は、フィールドの可能な値ごとに個別のモデルが構築されることを指定します。
  3. コレステロールフィールドについては、役割をターゲットに設定してください。
  4. 保存をクリックしてください。

チェックポイントアイコン 進捗を確認してください

次の画像はタイプノードを示しています。 モデルを生成する準備が整いました。

ノードターゲットを入力

トップへ戻る

タスク6: モデルを生成する

モデルの出力を表形式で表示するには、次の手順に従ってください:

  1. コレステロール(ロジスティック) ノードにカーソルを合わせ、 実行アイコン 実行アイコンをクリックします。
  2. パレットの「 出力 」セクションからテーブルノードをキャンバスにドラッグし、モデルナゲットに接続します。
  3. コレステロールモデルに接続されているテーブルノードにカーソルを合わせ、 実行アイコン 実行アイコンをクリックします。
  4. 出力とモデル ペインで、名前が「 Table」 の出力結果をクリックすると、テーブル出力が表示されます。

チェックポイントアイコン 進捗を確認してください

以下の画像はモデルの出力結果を示しています。

モデル出力

トップへ戻る

サマリー

この例では、文字列が長すぎる場合に発生する可能性のあるエラーの種類を示し、 Reclassify ノードを使用して文字列の詳細を許容可能な長さに変更する方法を説明しました。 この例では二項 ロジスティック回帰 ノードを使用していますが、二項ロジスティック回帰モデルを生成する際にノード 自動分類器 を使用する場合にも同様に適用できます。

次のステップ

他の SPSS® Modeler チュートリアルを試す準備が整いました。