機械学習[乃木・日向・櫻][クラス分類][KNN - k近傍]

「あれ、坂道って年齢とか出身地で、グループ間で特徴あるんじゃね?」
「特徴があるなら、メンバーの情報からグループ推定できるんじゃね?」
と思い、坂道グループについて機械学習(KNN - k近傍)を試してみました。

【やったこと】
坂道メンバーの情報から、所属グループを推測する。

【扱ったデータ】
乃木・日向・櫻のメンバー(80人)の年齢・身長・出身
(※)乃木の清宮さんはアメリカ出身なので扱いに困り、対象外としました。

表1 坂道メンバーの情報データフレーム

(※)メンバーの出身地であるBirthPlace(こんな英語ないかも)は、
北海道~沖縄まで1~47の数値を割り当てた。
(※)所属グループ(Group)も、1:乃木、2:日向、3:櫻 と割り当てた。

【結果】
(おそらく)特徴数が少なく、精度が出なかった。

下記の図のオレンジ色の線が、今回の機械学習手法によって推測した結果を示したものです。

図1 推測精度(横軸は気にしないで)

上記の結果から、k=5~8あたりでメンバーの所属グループを4~5割超で推測できるというになりました。

グループは3つなので、適当にやると0.33(=33%)です。
今回のKNNでは適当にやるよりも良い結果が得られました。

ただし、これは下記の設定で大きく変動します。
・学習用データと評価用データの分割割合(図1のときは7:3)

機械学習初学者なので見当違いかもしれませんが、上記の理由は取り扱った特徴がびみょいから、なのかもしれません。

特徴の相関図を見ると、やはりそうっぽいです。

特徴の相関図

繰り返しになりますが、今回は年齢(Age)・身長(Height)・出身地(BirthPlace)を使って、所属グループ(Group)を推定しています。

つまり、Age - Group、Height - Group、BirthPlace - Groupで相関があってほしいのです。
他の特徴量は正規化しています。

今回、うまく精度が出ませんでしたが、機械学習に触れられていい経験になりました。
実際に手を動かすと学ぶことが多いなぁと思いました。

この記事が気に入ったらサポートをしてみませんか?