SVMを用いた競馬予想アルゴリズムの開発メモ

はじめに

  • サポートベクターマシン(英: support-vector machine, SVM)は、1963年にウラジミール・ヴァプニクによって発案された教師あり学習を用いるパターン認識モデルの一つである。
    当初は線形判別だけだったが、非線形な分類や回帰へ適用できる。

ちょい理論

  • SVMはロス関数としてヒンジロス(hinge loss)を採用している。

    • モデル式を
      $$
      {f(x) = w^{\mathrm{T}}x}+b
      $$
      とする。このとき、損失関数は

  • $$
    Loss_{hinge} = max(0,1-y(f(x)))
    $$で定義される。

モデル

  • ラベルの不均衡にへの対処として、ダウンサンプリングを実施。(n≒33000)

  • 言語はPython。

  • 視覚化するために、説明変量(特徴量)は2つとする。

    • オッズと人気順を特徴量とし、3着以内にゴールした馬かどうかを目的変量とし、モデル評価と非線形判別結果の視覚化を行う

ACC

  • accuracy = 0.6747189304162868

  • precision = 0.6321664129883308

  • recall = 0.46806912096168296

  • f1 score = 0.5378804230520182

結果(視覚化結果)

ここから先は

80字 / 1画像

¥ 300

この記事が気に入ったらチップで応援してみませんか?