Slide 1

Slide 1 text

MATLAB でスポーツ統計・予測: スクレイピング→モデル構築→ 可視化 小中英嗣(こなか・えいじ 名城大学理工学部情報工学科) MATLAB EXPO 2021

Slide 2

Slide 2 text

自己紹介&今日の内容  小中英嗣(こなか・えいじ)  名城大学理工学部情報工学科 准教授  専門:システム制御工学,スポーツ統計  Twitter @konakalab  最近の研究:スポーツ統計・予測モデル作成  ランキング,選手・チームの評価指標の開発と性能検証  今日の内容:MATLABで行っている作業  (まだまだ勉強中です.良いやり方があれば教えてください!) MATLAB EXPO 2021

Slide 3

Slide 3 text

スポーツ統計・予測の手順 データ取得(ス クレイピング) • Webから • 自動/半自動 予測モデル 構築 • (一般化)線形モデル • 各種数値処理 可視化 出力 • グラフ描画 • Web公開(SNS投稿) MATLAB EXPO 2021

Slide 4

Slide 4 text

Webからのデータ取得(スクレイピング) MATLAB EXPO 2021 Web HTML/xlsx csv/xlsx

Slide 5

Slide 5 text

Webからのデータ取得(スクレイピング) MATLAB EXPO 2021 Web HTML/xlsx csv/xlsx ⚫ webread (MATLAB) ⚫ Excelに手でコピペ ⚫ Selenium + python ⚫ HTMLを読んで頑張ってタグを外す(MATLAB) ⚫ (beautiful soup(python)はスマートですが融通が 利きづらい)

Slide 6

Slide 6 text

事例:J League Data Site  検索オプションがアドレスに入れら れる  例:https://data.j- league.or.jp/SFMS01/search?comp etition_years=2021&competition_ frame_ids=1&competition_ids=492 &tv_relay_station_name=  2021年J1リーグの試合結果  webreadで文字列として読み込む  strsplit, strfindを駆使して目当ての 情報を抽出する MATLAB EXPO 2021

Slide 7

Slide 7 text

予測モデル構築/各種数値処理  定番なモデルの場合  glmfit:一般化線形回帰モデルを使 う場合  glmvalで予測値が簡単に得られる  よく使うデータ型・処理  table  行列演算(最小二乗法など)  確率密度関数・分布関数  畳み込み  例:  given:これまでの試合結果(得失点)  最小二乗法:各チームの得点能力を 推定  一般化線形回帰:得点能力差と勝率 をつなげる.これからの試合結果を 予測する  畳み込み:各試合の予測確率から シーズン全体の予測確率を計算する MATLAB EXPO 2021

Slide 8

Slide 8 text

可視化・出力  MATLABの豊富な描画関数群  スクリプトで記述:安定・高速・大 量の出力  Twitter (@konakalab)で不定期に公 開  (MATLABで画像入りツイートする方 法を調査中…)  (文字列のみのツイートはできてま す)  以下,作図例 MATLAB EXPO 2021

Slide 9

Slide 9 text

作図例: MATLAB EXPO 2021

Slide 10

Slide 10 text

作図例: MATLAB EXPO 2021

Slide 11

Slide 11 text

まとめ:スポーツ統計・予測の手順 データ取得(ス クレイピング) • Webから • 自動/半自動 予測モデル 構築 • (一般化)線形モデル • 各種数値処理 可視化 出力 • グラフ描画 • Web公開(SNS投稿) MATLAB EXPO 2021 ⚫ Web読込:webread ⚫ 文字列処理:strsplit, strfind, … ⚫ glmfit, glmval ⚫ 各種数学の関数(線形代 数,確率統計) ⚫ 豊富なグラフ描画関数