機械学習デモシステム

サポートベクターマシンによる予測モデル構築体験

サポートベクターマシンは、ある変数から別の変数の状態を推定するために考案された人工知能の一つです。

ここでは、「試験得点の良し悪し」を予測するモデルの構築を体験してみます。


(1) 教師データの準備

まずは、知能が知識を獲得するためのデータを集めます。

...と言っても実際に集めるのは大変なので、以下のデータを用意してみました。

     
Y:試験得点X1:お家の勉強[時間]X2:授業への出席[回]X3:身長[m]
good9.391.56
good9.281.89
good9.671.78
good9.561.68
good8.491.87
good8.681.67
good8.371.56
good8.661.76
good7.471.87
good7.271.34
good7.961.78
good7.161.56
good6.391.49
good6.481.82
good6.261.79
good6.681.68
good5.961.5
good5.251.74
good5.341.51
good5.151.39
good4.491.59
good4.661.8
good4.871.65
good4.381.78
good3.271.46
good3.461.87
good3.951.77
good2.141.44
good2.491.89
good2.581.46
bad1.321.35
bad1.541.58
bad1.391.75
bad1.661.68
bad2.981.45
bad2.331.78
bad2.451.55
bad2.611.68
bad3.121.75
bad3.991.78
bad3.261.55
bad3.411.78
bad4.511.65
bad4.081.68
bad4.361.45
bad4.451.78
bad5.131.35
bad5.341.68
bad5.451.75
bad5.661.98
bad6.111.55
bad6.251.68
bad6.521.45
bad6.341.68
bad7.421.75
bad7.331.88
bad8.511.55
bad8.631.48
bad9.221.85
bad9.411.68

(2) パラメータ設定

次に、知能の構造や勉強方針を決定します。

どの変数を使いますか?: 予測のために注目してほしい部分を設定します。自分で有効だと思うものを選択してみてください。

「X1:お家での勉強」と「X2:授業への出席」

「X1:お家での勉強」と「X3:身長」

「X2:授業への出席」と「X3:身長」

どちらのモデルにしますか?: 一般に、複雑なモデルは難しい問題を解くことのできる知識形成が期待されますが、不適切な問題に対しても正しく回答しようとしてしまうので、安定しないという特徴があります。一方、単純なモデルは、複雑な問題を解くことができませんが、不適切な問題を解こうとしなくなるため、安定するという特徴があります。一長一短です。

複雑なモデル(RBFカーネル)

単純なモデル(線形カーネル)

教師データへの誤答をどの程度許容しますか?: 一般に、教師データの判別精度を高めることで、適切な知能が形成されます。一方、現実は特異的なデータが混ざることがほとんどです。教師データへの正答率を極端に高すぎると、特異的なデータを正しく回答しようとするあまり、適切な問題を解けなくなる場合もあります。

許す  中間くらい  許さない