1.10. カスタム前処理

1.10. カスタム前処理 #

機能制限について

カスタム前処理は環境によってはご利用いただけません。

1.10.1. 機能概要 #

データの前処理を任意の Python コードの実行により行います。

カスタム前処理カードに入力されたデータは pandas.DataFrame 形式のパラメータで参照できます。 この入力データを指定された関数内で処理し、pandas.DataFrame 形式で返却すると出力できます。

例えば、独自の補間処理やカラム間の演算といった処理に利用されることを想定しています。

実行コード内でカラムの追加や削除をした場合、教師あり/教師なしタスクによって挙動が異なります。

  • 教師あり学習タスクの場合

    • カラムの追加をした場合は、説明変数として追加されます。
    • 目的変数のカラムを削除はできません。
    • 目的変数が説明変数に含まれている場合。
      • 目的変数を参照した処理ができます。
    • 目的変数が説明変数に含まれていない場合。
      • 目的変数自体の値の変更は可能ですが、目的変数の値を利用して説明変数の値を変更は出来ません(推論アプリケーション Node-AI Berry で推論する際に目的変数は 0 として扱われます)。
  • 教師なし学習タスクの場合

    • カラムの追加をした場合は、説明変数と目的変数の両方に追加されます
    • カラムを削除すると、説明変数と目的変数の両方から削除されます

その他、カスタム前処理の影響範囲は以下となります。

  • 実行コードはレシピに反映されます
  • カスタム前処理が実行された履歴は実験管理には表示されません
  • 学習モデルダウンロード時の前処理パイプラインに実行コードが保存されます

1.10.2. 入力と出力 #

種別
データ
種別
データ

1.10.3. 操作方法 #

1.10.3.1. 結線 #

対象データを結線してください。

1.10.3.2. 実行コードの設定 #

初期状態では「コード」タブの左領域に def nodeai_main(df): の関数定義と return df の返り値定義がされています。 引数である df(pandas.DataFrame形式) を入力データとし、返却されたデータ(pandas.DataFrame形式)が前処理結果として利用されます。

入力データと return 文の間に実行コードを設定することで、独自の前処理を記述できます。

1.10.3.3. 実行 #

  • 設定した実行コードに従い前処理が行われます。
  • 処理が成功すると、メッセージが表示されます。
  • 実行コードに標準出力処理(print文など)があれば、「コード」タブ右領域に表示されます。
  • 実行コードに文法的なエラーがある場合も右領域に表示されます(一部のエラーはメッセージ領域に表示されます)。
  • 処理時間が 20 分を超えるとタイムアウトし、処理が強制終了されます。

1.10.3.4. 処理結果の確認 #

  • 必要に応じて、表形式、統計量、グラフ形式で結果を確認してください(統計 タブや グラフ タブから確認できます)。