教育
横浜国立大学では、学部・学科を問わず、プログラミングを学ぶことのできる授業の充実を図っている。しかし、「何がわからないのかがわからない」という初学者が多いのも事実だ。古川知志雄先生の授業では、初学者にとってのつまずきやフラストレーションを緩和し、すでにスキルがある学生も理解を深めていける「アンサンブル・プログラミング」を取り入れている。
あらゆる分野でデータ分析の需要が高まっているが、それは経済学も例外ではない。古川知志雄先生は、「学問も技術や社会に応じて変化するもので、近年の研究の8割から9割が実証研究や統計分析になっている」印象を受けるという。
実際、先生が2年前に世界最大規模のアメリカ経済学会の年次大会に参加されたとき、各日50もののパラレル(同時)セッションが3日間開催されたが、純粋に理論のみのセッションは数えられるほどのみで、ほとんどが応用の政策効果に関する分析や統計手法、何らかの形で実証研究をむすびつけるものだった。もちろん、学会によって理論がより主要なものも多くあるけれど、実証研究の広がりに、他の先生もショックを受けていた。
もちろん経済学を学ぶ上ではきちんと理論を勉強し、理解することは不可欠だ。それでも、過去30~40年ほどをかけて、実証研究がより大きな流れとなっている。
表計算ソフトとしてより身近なものとしてExcelがある。カーソルを当てて図やグラフを作ったり、ある程度、表や図を変形させたりできるが、なぜ新しいプログラミング言語を学んで、自分でコードを書き、解析する技術が重要なのだろうか。古川先生は次のように話す。
「コードを書いて分析することが役立つ理由は、主に2つあります。まず、データの結合など、Excelの操作では難しいこともできるので、分析のできる範囲が広がります。そして、コードを保存・公開することで、データをどのように整形し、変数がどのようにつくられているかを明確に記録し、第三者にとっても検証しやすくなります。」
通常、統計学の授業というと、記述統計の基礎から始まり、確率論、回帰分析、そしてその後に重回帰分析や機械学習などについて学ぶことから始まる。そうして知識を学んだうえで、一人ひとりが自分のPCに向き合って黙々とコードを書き、エラーメッセージと苦闘するのが一般的だ。
これに対して古川先生は、プログラミングの授業にアンサンブル形式を取り入れた。従来の一人で課題を進めていく「ソロ形式」に対して、「アンサンブル形式」ではひとつの課題にグループで取り組むもの。大学の授業に取り入れた例は身近になく、ユニークな試みといえる。
対象は2年生以上で、課題もマクロ経済やビジネスのデータに加え、プロ野球の投手と打者の過去の成績データなど、学生の関心を持ちやすいものに工夫をした。学生たちのアイデアでいろいろなデータを変数に取り入れることができ、取り組みやすい内容となっている。
メンバー全員がPCを共有し、意見を出し合いながらプログラミングを行っていく。キーボード担当がコーディングを進めるのではなく、あくまでメンバーの提案を聞いて打ち込む「書記」の役割。10分ごとに配置はローテーションされるので、得意な人に任せきりにはならない仕組みだ。
受講生のアンケートによれば、履修学生の70~75%がアンサンブル形式でプログラミングの実践を経験することが、ソロ形式より効果的だと答えている。
プログラミング初学者の場合、「ここはどう書くのかな」と詰まってしまう「挫折ポイント」がある。スチューデントアシスタントを務める五十嵐大和さんは「最初の方でつまずいてしまうと、その後に進めずに終わってしまいます。その点、アンサンブル形式だと、授業中に課題100のうち10しか分からなかった学生も、50~60くらいまでみんなと一緒に進めることができます」と話す。
授業に参加した林原七音さんは「みんなと喋っていると、自分と同じぐらいわからない人もいるんだとわかるし、学生同士だからこそ気軽に相談できます」という。「もちろん全部自分でできればそれが一番いいと思います。でも、そうではない人の方が多いし、ちょっとした成功体験を積み重ねることが次の学ぶ意欲につながると感じました」
スキルレベルが異なる学生が1つのチームになることで、得意な学生が苦手な学生に教え、苦手な学生も質問しやすい。それによって経験者は理解を深められる。また、話し合いを通じて自分の発想にフィールドバックを得られるのもうれしい点だ。
アンサンブル・プログラミングのメリットやデメリットやソロ・プログラミングとの比較などをみても、学生は好印象を示している。
例えば今、社会ではヤングケアラーの問題がある。これは子どもと直接関わる先生たちの気づきから始まり、それを受けた内閣府の調査により実態が把握されたことで、政策課題として認識された。個別の認識を社会全体の共通認識とし、問題として把握するためにはデータの適切な分析が重要だ。そこでプログラミングやデータサイエンスの知見が生きてくる。
「プログラミングはあくまでもツールでしかありません。たとえば、ガザ地区の空爆において「何百人が犠牲になりました」と数字のみが注目されがちだけれど、その背後に一人ひとりの物語があるという“We are not numbers.”というガザ攻撃の被害者の運動がありました。だから、定量化が政策作りの論理的な基盤として重要だという視点を持ちながらも、物事の深刻さや意味づけをするのにデータしか見ない人間になってほしくはありません。まずは広く社会経済のことを知ってもらいたいと思います。その問題を見る目があってこそ、データサイエンスやプログラミングの力が本当に生きてきます。」
2024年度インタビュー