メインコンテンツへスキップ
見出し画像

【競馬AI開発#4】馬の過去成績データをスクレイピングで取得

    はじめに

    この【競馬AI開発】シリーズでは、競馬予想AIを作ることを通して、機械学習・データサイエンスの勉強になるコンテンツの発信や、筆者が行った実験の共有などを行っていきます。

    今回の記事は、以下の動画に補足を加えてまとめたものになります。

    今回やること

    今回はnetkeiba.comから「馬の過去成績データ」をスクレイピングにより集めて、一つのテーブルとして繋げていきます。

    画像
    過去成績ページ(「シュバルツガイスト」の例)
    https://db.netkeiba.com/horse/2020103575/
    画像
    2023年に出走する全ての馬の成績をまとめた「馬の過去成績テーブル」

    この「馬の過去成績テーブル」は、「予測したいレースに出走する馬が、過去にどんな成績を出してきたか」という情報が記録されており、その主にその成績をもとに予測を行うことになるので、精度を出す上で肝となるデータとなります。

    イメージとしては、以下のように予測対象レースの各馬に対して「馬の過去成績を集計したもの」を結合していくことで、特徴量(機械学習モデルのインプット列)にします。

    画像

    動画中の実行環境

    ・OS: Mac OS 14.2.1
    ・言語: Python 3.11.4
    ・エディタ: VSCode 1.87.0

    VSCodeやPythonのインストール方法については様々な記事で紹介されているので、適宜参照して設定してください。

    また、以下のライブラリを使用しています。

    beautifulsoup4==4.12.3
    pandas==2.2.1
    selenium==4.18.1
    tqdm==4.66.1
    webdriver_manager==4.0.1

    筆者のプロフィール

    東京大学大学院卒業後、データサイエンティストとしてWEBマーケティング調査会社でWEB上の消費者行動ログ分析などを経験。
    現在は、大手IT系事業会社で、転職サイトのレコメンドシステムの開発を行っています。

    ※本記事を購入しても良いですが、以下の定期マガジンを購読すると、 #1〜 #4の記事が980円でまとめて読めます。

    動画中のソースコード

     
     
    競馬予想AIを作ることを通して、機械学習・データサイエンスの勉強になるコンテンツの発信や、筆者が行った実験の共有などを行っていきます。

    あなたへのおすすめ