データがそろったところでようやく予測モデルの作成に移る。一般的な機械学習ツールでは複数の学習アルゴリズムを用意してあり、対象データの傾向やゴールの種類に応じてユーザーが学習アルゴリズムを選択する。作成したモデルを評価するためには、あらかじめデータの2割程度を検証用にとっておき、残りの8割を学習用として使う。
ThingWorx Analyticsではアルゴリズム選定を簡易にするために、数種類のアルゴリズムそれぞれで予測モデルを作成させて競わせて、それらの内ベストな成績を残したモデルを採用する、または上位数個のモデルを採用してアンサンブルモデルとする機能がサポートされている。
予測モデルを評価するためにはその指標が必要となる。連続値の予測の場合はRMSE(平均二乗誤差の平方根)を用いることが多い。RMSEでは0に近いほど誤差が少ない(図4)。
分類の場合は別の指標を使う。ここでは二項分類、1か0のどちらかに分類する場合を紹介する。二項分類ではROC(Receiver Operating Characteristic)という指標を用いる。二項分類において、単に予測と実際の結果が一致するだけでは、評価が十分ではない。例えば、機器の故障を予測する場合、いつも故障すると予測していれば実際に故障するときに必ず正解する。しかし、実際には故障しないときにも故障すると予測しているので、オオカミ少年となってしまい誰も予測を信じなくなる。
逆に、いつも故障しないと予測していて実際に故障してしまうと、予測は役に立たなくなる。これら2つの予測の出し方は極端としても、故障の予測的中率を上げつつ、オオカミ少年にならないようにするのが理想的な予測モデルである。そこで、横軸にオオカミ少年となる偽陽性率を、縦軸に正解を当てる真陽性率をとる「ROC(受信者動作特性曲線)曲線」を作成し、どのようなカーブの形を描くのかを観察する。
図5の右側のグラフは青い部分の面積が大きいほど優れた予測モデルである。なお青い部分の面積はAUC(Area Under Curve)と呼ばれ、0から1の値を取る。AUCが1に近いほど予測モデルは優れていることになる。
Copyright © ITmedia, Inc. All Rights Reserved.