【機械学習】データの前処理:データ操作について

2022.04.21 /

【機械学習】データの前処理:データ操作について

本記事では機械学習における、データ前処理について解説していきます。

機械学習で利用する大量のデータは、機械学習の前に前処理を行い、機械学習用にデータを変換する必要があります。

すべての機械学習における8割ほどが「データの前処理」に費やされると言われるほど、とても重要な作業になります。

本記事を通して、データの前処理について理解を深めてください。

機械学習とは

機械学習とは人間の学習能力をコンピューターで実現するための技術であり、AI(人工知能)の分野で活躍しています。

機械学習では大量のデータを学習させることでデータのパターンや法則・規則を見つけ出し、それらを元にデータの分類や将来の予測を行います。

機械学習について詳しく知りたい方は以下記事をご参照ください。

機械学習を用いたシステムの開発は以下の流れで進んでいきます。

  1. データの収集
  2. データの整形(前処理)
  3. データを学習(機械学習)
  4. 学習済みモデルが生成される
  5. 学習済みモデルを評価(精度評価)
  6. 学習済みモデルをシステムに組み込む
機械学習の流れ

本記事では上記流れの2番目にある「データの整形(前処理)」について解説していきます。

データの前処理の前段階で行う「データの収集」については以下記事をご参照ください。

機械学習:データの前処理

機械学習は学習データを収集したらすぐに学習を行うわけではありません。必ず「データの前処理」を行います。

データの前処理とは、集めたデータを機械学習で扱えるデータ形式に変換することです。具体的に「データの前処理」で実行することの例を以下に記します。

  • データの欠損や異常値の修正
  • 文字列や画像を数値変換
  • データへのラベル付け
  • 機械学習アルゴリズムに合ったデータフォーマットに変換

機械学習は大量のデータからパターンや法則を見つけ出す手法のため、データの質が非常に重要です。データが悪いと機械学習で生成したモデル(AI)も性能が悪いものとなります。

そのため事前にデータの欠損(空のデータ)や異常値(データ群から大きく外れたデータなど)を修正する必要があります。

また機械学習では数値を基本として学習を行っていきます。そのため画像や文字列はそのままでは学習に利用できないため、プログラムが学習できる数値に変換も必要です。

前処理でのデータ操作

データの前処理では収集したデータ群を機械学習で利用できる形に変換することです。

前処理ではエクセルのような表にデータをまとめます。このデータには主に次のようなデータ操作を行います。

データ操作 説明
結合 複数のデータを結合(まとめる)
ソート データの順番を変更
形式変換 計算可能な形式に変換(日付文字列を数値データにするなど)
グループ化 同じデータをまとめる
抽出 必要なデータを抜き出す
追加 新しい情報を追加
欠損地の対応 欠損地を補完または行列の削除
異常値の対応 データ群から大きく外れたデータを削除