データ予測
予測とは
└データに基づき、ある値がどのような値となるかを想定すること
例題・売上を予測したい
必要なデータ
・予測したい売上実績 = 目的変数
・予測のヒントになりそうなもの = 説明変数
└天気情報、気温、来客数など、、、
代表的な2種類の予測問題
└回帰と分類
回帰問題・目的変数が数値
例題
商品の需要予測 = 回帰
Q.明日食品は、いくつ販売できる?
A.食品ロスの解決
分類問題
・目的変数がカテゴリ
Web広告のクリック予測 = 分類
Q.ユーザーはクリックする?
A.広告効果の向上
料理画像のラベリング = 分類
Q.この画像の料理は何?
A.自動タグ・情報整理
医薬情報テキストマイニング = その他
Q.症状の用語を統一したい
A.効率化・情報整理
汎用的な予測モデルを作る
└そのためにも、学習(Train)/評価(Test)データを分割
└過学習にも注意
やってはいけないこと
・いきなりモデルを作り始めた
└基礎分析を怠ってはいけない
・モデルを作るときに全てのデータを使用した
└その結果、モデルが過学習と呼ばれる状態になった
過学習(Overfitting)とは
・モデル作成に使ったデータだけに特化し過ぎたモデルを作ってしまうこと
※学習データに対して非常に精度が高いのに、評価データ(未知データ)に対して精度が出ない現象の
例題
Q.東京or神奈川出身か判定するモデルを作成
Aチーム
・東京の男性は全員メガネをしている
・神奈川の女性は全員メガネをしていない
結果
男性でメガネをしていれば東京
女性でメガネをしていなければ神奈川
と判別 = 精度100%のモデル作成ができる
Bチーム
・東京の男性でメガネをしていない男性が多くいた
・神奈川の女性でメガネをしている女性も多くいた
結果
全体の傾向を考えずにAチームだけのデータに引っ張られた結果、他チームでは予測できていないモデルになってしまった
作ったモデルの精度を検証するには?
・予測モデルのゴール
└未知のデータも予測できるような汎用性のあるモデルを作る
具体的には?
└データを分割して擬似的に未知のデータを作る
・片方でモデルを作り、残りの道のデータとする
・この未知のデータをうまく予測できることを目標とする
未知のデータを予測できる?
・データセット
└元になるデータ
①データセットを2つに分割
例
・学習データ
・評価データ
②学習データを使いモデルを作る(学習)
・モデル
③作ったモデルへ評価データを入力
結果
精度評価