複数の前処理をまとめて他のデータに適用したい

欠損処理や正規化といった前処理をひとまとめにして、他のデータに同様の設定で適用する方法を説明します。「モデリングモジュール機能」を利用します。

概要

複数の前処理をまとめたい」では、複数の前処理アイコンの処理をモジュール機能で「モジュールアイコン」としてまとめる方法を説明しました。ここではモジュール機能のさらに一歩進んだ使い方として、モデリングモジュール機能の説明をおこないます。
このページを読む前に、「複数の前処理をまとめたい」をお読みください。

複数の前処理アイコンをモジュールアイコンとしてまとめたとします。 このとき、新しく入ってきたデータに、作成したモジュールアイコンの処理をおこなうことを考えます。

一つの方法は、以下の図のようにモジュールアイコンをコピー&ペーストして貼り付けて再利用する方法です。

モジュールアイコンのコピー&ペースト

ここでは、入力データ1に対して作成したモジュールを、新しく入ってきた入力データ2に対してコピー&ペーストしています。

モジュールのコピー&ペーストでも、既存のモジュールの処理を新しく入ってきた入力データ2に対して適用できています。 ですが、これだと、入力データ1に対するモジュール内の前処理の内容が変わったら、入力データ2に対するモジュールも、再度コピー&ペーストし直さなければいけません。

入力データが2つくらいならコピー&ペーストし直してもいいですが、これが1年間の月ごとのデータ12個に対してだったらどうでしょう?
モジュールのコピー&ペーストだと、実務上、対応しきれないことがわかります。

そこで、MSIPにはモデリングモジュール機能が存在します。 モデリングモジュール機能を使うと、以下の図のように、入力データ1に対して作成したモジュールの前処理の内容を、そのまま入力データ2に対しても実行することができます。

モデリングモジュール

MSIPのモデリングモジュール機能を用いると、「モジュールアイコン」を「モデリングモジュールアイコン」に変更することができます。 モデリングモジュールアイコンは、モデル適用アイコンを使うだけで、他のデータに一連の処理を実行することができます。

使い方

ここでは、「複数の前処理をまとめたい」で作成したモジュールを元に、モデリングモジュールを作成し、新しいデータに対してモデリングモジュールの処理を適用する流れを説明します。

  1. まず、以下の図のフローがモジュール化されているとします。

モジュール

  1. モジュールの「outputs」アイコンのメニューから「モデリングモジュール化」を選択します。

モデリングモジュール化

  1. モジュールがモデリングモジュールになると、背景色が紫色になります。

モデリングモジュール

  1. モデリングモジュールの前処理を適用したいデータを配置します。

新データを配置

ただし、データの形式はモデリングモジュールを作成するときに用いていたデータと同形式であり、途中の前処理でエラーにならないようなデータである必要があります。

  1. モデリングモジュールのoutputsのメニューから「ノードを追加」を選び、モデル適用アイコンを配置します。そこに新しく配置したデータを接続します。

モデル適用

  1. モデル適用のメニューから「インプット設定」を選び、「Input Matching Controller」の画面を開きます。「model」にはモデリングモジュールの「module_model」が選択され、「table」にはモデリングモジュールの前処理を適用したいデータが選択されているように設定します。

インプット設定

  1. モデル適用アイコンをダブルクリックしてパラメータ設定画面を表示し、「実行」を押します。

モデリングモジュール実行

  1. 実行が完了すると、入力データに対して前処理が実行された結果が出力されます。

分析への応用

実際にモデリングモジュールを利用している分析サンプルが、

「共有ワークスペース」 >> 「サンプル」 >> 「Alkano」 >> 「プロジェクト」 >> 「ディープラーニングテキスト」

シナリオ「ディープラーニングテキスト」のワークフローにあります。

このサンプルシナリオを元に、モデリングモジュールの効用を見てみます。

「ディープラーニングテキスト」の分析では、モデリングモジュールを使用しないと、以下の図のようにデータ分割した学習用データと、予測用データとの両方に同じ前処理を施す必要があります。

モデリングモジュールを利用するメリット

ですが、ここでモデリングモジュールを利用して前処理をまとめて適用することで、フローを簡略化することができます。

モデリングモジュールを利用するメリット

データの前処理の仕方によって、分析結果の精度が変わることはよくあります。

前処理の試行錯誤のたびに、学習用と予測用の両方のアイコン設定を変えるのは大変ですし、設定の変え忘れの危険もあります。 モデリングモジュールを利用することで、そのような煩雑な処理が不要になります。

OnePoint

モデリングモジュールの解除

モデリングモジュールは、以下の手順で解除できます。

  1. 「モデリングモジュール」のメニューから[モデリングモジュール解除] をクリックします。

  2. 「モデリングモジュール」が通常の「モジュール」に戻りますので、「モジュール」を解除したい場合は、「複数の前処理をまとめたい」に記載している方法で解除してください。

モデリングモジュール内での分析アイコンの扱い

モジュール内に分析アイコンがあった場合、モジュールをコピーしただけだと予測データに対しても分析アイコンが学習を実行してしまうことになります。

一方、モデリングモジュールにした場合、モデリングモジュール内の分析アイコンは学習データに対してのみ学習を実行します。 予測データにモデリングモジュールをモデル適用する際には、モデリングモジュール内の分析アイコンは学習データで学習されたモデルによる予測を実行します。

モデリングモジュールの動作の詳細については、MSIPマニュアルの「3.15. モデリングモジュール機能」をご参照ください。

関連項目