前処理とは

表形式データ(CSVファイル)を投入して学習を行うとき、[学習に使用する列][予測する列]に数値以外のデータは使用できません。
数値以外のデータを数値に置き換えて、AIモデルが使えるようにする工程を[前処理]といいます。
※ この[前処理]は、文章を解析して数値化する[自然言語処理]とは異なります。

前処理は学習時だけでなく、推論用データセットも同じ構造で作成していれば推論時にも行います。
学習時に行った前処理は設定として保存ができ、推論時には保存した前処理を呼び出して適用することができます。

■MatrixFlow上で行える前処理

自動で行う方法と、手動で行う方法があります。

<自動前処理>
システムがデータセットを解析し、適切な前処理を自動で適用します。適用する前処理の手法は、手動で行う手法と同様です。
適用した処理は、前処理画面に1つずつ表示されるので、どのような処理が適用されたのか目視で確認することができます。
詳しくは、列の詳細と前処理の実行 をご覧ください。

<手動で行う前処理>
大きく分けて3通りの方法があります。

1.数値に変換する
2.欠損値を変換する
3.列を削除する

数値に変換する

文字列のままでは使用できないため、数値に変換します。
変換できるのは、値をルールに従って数値に置き換えができる文字列です。

MatrixFlowの前処理で数値変換できる手法は、次の3通りです。

・One-Hotエンコーディング
・ダミーコーディング
・ラベルエンコーディング

それぞれの手法について、詳しくは 数値に変換する をご覧ください。

欠損値を変換する

欠損値とは、値があるはずのところに、何らかの理由によって入力されなかったり取得できなかった、欠落した値のことです。ここで注意したいのは、空白文字は全角半角とも欠損値ではない点です。

欠損値を含むデータセットは、統計処理ができなかったり、結果に偏りが生じたり、データがムダになるなど様々なデメリットがあるため、データを補完する処理を行います。

MatrixFlowの前処理で補完できる手法は、次の2通りです。

・欠損値を含む行を削除する
・欠損値を(数値で)埋める

それぞれの手法について、詳しくは 欠損値を変換するをご覧ください。

列を削除する

欠損値を含むデータセットへの対策で最も簡単な方法の1つです。データを補完するのではなく、列を削除します。

詳しくは 列を削除する をご覧ください。