機械学習について。
目次
AI・ディープラーニングの全体像
- 人工知能
- 機械学習
- ディープラーニングの基本・応用
- ディープラーニングの研究
- AIプロジェクト
- AI社会実装に伴う法律・倫理
特徴量の設計(特徴量エンジニアリング)
概要
- 「特徴量」→予測の手がかりとなる特徴を数値化したもの(変数)
※例:エクセルの1つの列が1つの特徴量に対応する - 「特徴量エンジニアリング」→機械学習モデルの学習・予測の精度を高めるために、データを加工し、特徴量を作成すること
- 生のデータのままでは必ずしも理想的な特徴量が得られるとは限らない
→予測に影響を及ぼす因子を過不足なく含むデータを作り出す必要がある - ①予測変数として使用する要素を選ぶ
②データに前処理を施して学習・予測に効果的な形に加工する - データの読込み→データの理解→モデルの選択→特徴量エンジニアリング→モデルの学習→精度評価→効果検証→改善or実装
データの前処理
前処理例
- 文字列データを数値データに変換
※例:初回を1にする、1人を0にして2人以上を1にするなど - 欠損値の処理
- データの集計・分割・結合・その他の形状の変換処理
- データを「正規化(0~1の間へ変換)」・「標準化(平均が0、標準偏差が1となるよう変換)」
カテゴリカルデータ
- 「カテゴリカルデータ」→カテゴリデータ、定性的データ、質的変数
- カテゴリを区別するために用いられる数値データ
(例:男を1、女を0など) - カテゴリカルデータは「ダミー数値(ダミー変数)」であり、数値の大きさ(量)に意味を持たない
(=等しいか、等しくないか、という意味であり、四則演算しても意味を持たない)
データを数値化するための手法
One-Hotエンコーディング | ・1つの列項目だけを1にし、それ以外を0にする ・列がどんどん横展開していくため、まばら(スパース)になりやすい ・列が増えすぎると特徴量として扱いにくく、モデルが過学習しやすくなる |
---|---|
ラベルエンコーディング | ・1つのカテゴリが、1つの数値に対応するよう、数字を置き換える(マッピング) ・余分な列は増えない |
欠損処理
- 「欠損値」→データの一部が空白(歯抜け)になっている状態
- 欠損値の多いデータは、機械学習モデルの学習に使っても、よい精度が期待できない
→欠損値は、適切な方法で処理すべき - ①欠損値のあるデータは捨てる
②代替値で補填する
リストワイズ法 | 欠損値のあるデータを、そのまま削除する方法 ※欠損箇所に鍵がある場合、データ全体の傾向を変えてしまうリスクあり |
---|---|
統計量で補完 | 欠損がある列のうち、欠損がないデータのみを用いて、平均値・中央値・最頻値などの統計量を算出し、欠損部分を埋める方法 |
回帰補完 | 欠損列を非欠損列の間に「相関」が強い場合、「回帰」を利用して、欠損値を埋める方法 (非欠損データを利用し、「補充値を推測するモデル」を作る) ※明らかな歯抜け(明示的欠損値)、誤っているかもしれない値(暗示的欠損値) ※例: ①年齢が欠損の場合、歯抜けでない値が正解ラベルとなり、他の列が特徴量になる ②学習済みモデルを用いて、歯抜け部分の値を推測し、補填する ③補填後のデータと非欠損のデータを統合し、予測モデルの学習に使う |