高専2年生を対象とした Python プログラミング入門– ニューラルネットワークを用いた大谷翔平選手の投球データ分析

前回に引き続き、高専2年生のホームルームクラスを対象に、Python プログラミングとデータ分析入門の授業を行いました。今回は、ニューラルネットワークを用いて、大谷翔平選手の投球データから球種を予測するモデル構築・学習に触れて貰いました。

授業では、以下の流れで学習を進めました。

  1. 回帰分析とニューラルネットワークの概要説明
  2. 過学習(オーバーフィッティング)の概念と判断方法の解説
  3. 大谷翔平選手の投球データを用いたニューラルネットワークモデルの構築と学習
  4. 学習済みモデルを用いた球種予測

学生たちは、まず回帰分析とニューラルネットワークの基本的な概念を学びました。次に、過学習の問題とその判断方法について理解を深めました。その後、pybaseball ライブラリを用いて大谷翔平選手の投球データを取得し、リリーススピードとリリーススピン率を特徴量として、ニューラルネットワークモデルを構築・学習に触れました。最後に、学習済みモデルを使って新しい投球データの球種予測を行いました。

学生たちは、プログラムを実行し、ニューラルネットワークモデルの学習過程と球種予測の結果を確認することができました。この経験を通して、機械学習の基本的な流れと、データ分析におけるニューラルネットワークの有用性を実感できたのではないでしょうか。

今後は、学生たちが自ら特徴量を選択したり、ハイパーパラメータを調整したりするなど、より主体的にプログラムに取り組むことができるよう、課題の設計を工夫していきたいと考えています。また、身近なデータを用いた分析事例を紹介することで、データ分析の面白さと可能性を伝えていきたいと思います。授業で使用したスライドの一部を以下に示します。