今年、大学院入試の取りまとめ役をやっていたのですが、私が所属してる専攻は教員が100人ぐらいいるんですけど、毎年1名のメイン担当がほぼすべての情報を把握し、ほぼすべての書類を作成するので、けっこう大変でした。夏の院試は170人ぐらい、冬の院試は30人ぐらいが受験していて、一斉に行われる筆記試験はともかく、1人1人違う時間、違う部屋で行う面接試験のスケジュール管理などは非常に神経をつかう仕事で、面接官をやる先生もすべて変わるので、誰に何を依頼するか間違えそうでハラハラします。大学院入試というのは案外複雑な制度で、受験資格や試験のカテゴリが何種類もあるので、「この人にはこの書類でよかったっけ?」というのがよく分からなくなりがちです。
で、受験生ごとの個別資料にせよ全員に関わる共通資料にせよ、「去年までの書類をベースに、日付や名前や番号だけを書き換える」という作業がとても多く、こういうものは自動化したいなと強く思いました。実際、毎年少しずつ電子化や自動化を進めていますし、「教員の本来の仕事は研究と教育なので、事務作業は事務部門に任せるべき」という理由で、事務部門への移管を進めているものもあります。
ところが、実際にやってみて気付いたのですが、「去年の書類の日付と人の名前だけを今年バージョンに書き換える」みたいな単純作業をひと通りやることで、初めて、入試制度の仕組みが頭に入るんです。「ここの日付はこっちでよかったっけ?」みたいな確認が、学習を強力に後押しする感じです。もちろん、募集要項や内規などを丹念に読めば、入試制度を理解することは理論上はできるはずなんですが、過去に入試担当をしていた先生たちに聞いてもそんなことができている人は皆無で、「入試の仕事が終わって担当から外れる頃に、初めて入試制度が理解できるんだよ」と口を揃えて言ってます。
これと似たようなことを、最近はデータ解析のためのプログラミングに関して感じています。ChatGPTやGeminiなどの生成AIが、完全に実用的なレベルになったわけですが、学生にその使用を推奨するかしないかは、けっこう悩みどころです。イチからコードを書く経験がないと、生成AIが出してくるコードの意味が分からなかったり、間違いに気づけなかったりするからです。だから基礎は自分で勉強したほうがいい気がするものの、それも生成AIにダブルチェックをさせたり、コードの意味や使い方や注意点を説明させることができてしまうので、あまり意味はないかも知れません。
思えば我々教員だって、PythonやR、ちょっと気合を入れてC++ぐらいは使うことがあったとしても、機械語はもちろんアセンブラのような低級言語*1を書いた経験がある人はほぼいないし、CPUやメモリの動作原理を詳細に把握してるわけでもないので、「中身をよく理解せずにツールを使っている」という意味では、生成AIにコードをかかせている学生と似たようなものだとも言えます。
結局、昨年度ぐらいから、学生には卒業論文や修士論文のためのデータ解析で、ガンガン生成AIを利用してコードを書かせています。Rの基本的な操作方法だけは教えてますが、生成AIをつかって実用的なコードを書きながら、生成AIとのやり取りを通じて勉強するほうが、圧倒的に効率的なので、そっちでいいと判断してます。
しかし、仮にそっちが効率的だとしても、なんというか、「人生経験」のような意味では物足りない気はします。私は、会社員だった2010年代の初頭にデータ解析やプログラミングの勉強をはじめたのですが、当時は勉強する手段と言えば、「教科書」と「その界隈のブログ」と「その界隈の勉強会」でした。私はその「界隈」に深入りはしませんでしたが、当時は「ビッグデータ」や「ディープラーニング」の時代の入口で、ビジネスマンで初めて勉強するという人が多かったので、詳しい人(たとえば大学院で統計学や機械学習をみっちり勉強した人)をみつけて教わったり、同レベルの人とお互いの意識を高め合ったりする機会がけっこうあって、あの頃の「熱い空気」はよかったなといい思い出になっています。しかもそれを匿名(ハンドルネーム)でやるっていう、あの文化が私はいまでも好きです。
その後、YouTubeの解説動画にもいいものが出てきたことでも、少し時代が変わったのかも知れません。ちなみに今の学生は、数学の勉強をするときも、YouTubeの動画をけっこう見るらしいです。偏差値トップクラスの理系学生でもそうなので、YouTubeは侮れないです。逆に言えば、YouTubeよりわかりやすく面白い授業ができている教員が、いかに少ないかということでもありますね(笑)
でもまぁやっぱりインパクトが大きいのは生成AIですよね。なんでも教えてくれるし、しかも回答は瞬時で、間違いがない*2。分からないところを何度も聞き直しても、嫌がらずに教えてくれます。昔は、技術面で気になることがあってGooglで検索すると、それを説明しているっぽいブログ記事とかが何個か見つかり、読み比べているうちにおぼろげながら分かってくる……という感じでした。読んでるうちにさらに疑問が出てきて筆者に質問をしてみるものの、すぐに返事があるとは限らない、というか結局返事がもらえない場合も多いし、その人自身もちょっと間違えてたりします。Stack Overflowなどの質問サイトも同じですね。
そういう「界隈」の「先人」を頼るモデルは、明らかに非効率なので、生成AIを使わずにそれをやれとは、なかなか学生には言えません。というか、そういう「界隈」自体がハッキリと存在しなくなっていくのかも知れないですね。「TokyoR*3でLT*4を披露したりするのカッコよくて憧れるなぁ〜」というような価値観は、今もあるんでしょうけど、生成AIが何でも教えてくれるとなると、界隈と関わりをもつ必要自体が薄れていきますね。
しかしこれはぜひ言っておきたいのですが、人から教わるしかなかった時代の美点の一つは、「自分もこのコミュニティに貢献したい」という利他的なモチベーションをもつことができたことです。このブログを書き始めた当初の目的も、「細かい技術的な問題を解決した記録をつけておくと、もしかしたら将来、誰かの検索に引っかかってその人の役に立つかもしれない」というのが大きかったです。*5
これは、今の学生たちにもぜひ経験してほしいですね。データ解析やプログラミングに関してそれをやる必要がなくなったなら、別の領域ででもいいし、もちろんブログなどという旧式のメディアを使うことにもこだわらなくていいので。自分より詳しい「人」に教えてもらって、「なるほど!」と納得しつつ敬意を抱く経験や、自分が苦労して理解したことを仲間にわかりやすく説明して尊敬されたいという願望は、持ったほうがいいと思います。これは「承認欲求」(私はこの言葉が嫌いです)というようなレベルの低い話ではなく、ふつうに人間としての美徳です(笑)。そのほうが勉強自体も捗るし。
また、さっき冒頭で、入試の書類の日付を更新する作業を通じて入試制度の全体像が頭に入るという話をしましたが、統計分析やプログラミングでも、自分で手を動かして間違えたりしないと、根本の仕組みが分からないという面はかなりあると思います。生成AIの教えてくれるコードは、いまのところは間違いもあるのですが、これが完璧になってしまうと、「なぜ動かないんだろう」と引っかかって疑問をもつ機会がなくなってしまいます。
「そんな無駄な時間はないほうがいい」という人がいるかも知れませんが、それは、目先の作業を片付ける上での効率性について言えば、そのとおりです。しかし、引っかかったタイミングでこそ、その仕事を成り立たせている「根本の原理」や「システムの全体像」への関心が開かれるんですよね。その機会を持たない人は、「なぜこんなことが可能になってるんだっけ?」「なぜこのやり方ではダメなんだっけ?」という疑問をもつこともなくなってしまいます。
たとえば、RやPythonの関数で、普段は何も考えずにデフォルトのまま使ってる引数がたくさんあります。計算の挙動がうまくいかないときに、ある引数の設定が問題だったことが発覚して、ドキュメントでその引数の役割を調べてるうちに、統計学の理論そのものへの理解が浅かったことに気づいて「なるほどそういうケースもあり得るよな」と納得したりする。入試事務でいうと、「この様式には〇〇の欄がないけど良いんだっけ?」という疑問を持ったとき、その場で〇〇の欄を追加したくなる衝動をグッとこらえて、内規をイチから読み直し、「こんなルールがあったとは!」とか「このルールはここで使うのか!と」発見したりする。そういうことを続けているうちに、ものごとの仕組みが自分の頭に、というか身体の芯に入ってくるような感じです。
「人間はものごとの本質的な仕組みや目的だけ理解していればよく、単純作業は機械に任せよう」というのは、本当にそれで本質が理解できるなら正しいと思います。しかし実際には、機械に頼ることで「本質に対する興味自体がなくなってしまう」場合がほとんどです。
工学部の一回生向けの情報処理の演習を担当したことがあり、LinuxやFortranやTexを教えるのですが(今年ぐらいから言語はPythonに変わるようですが)、学生に「機械語は数字の0と1から成るという話は聞いたことあると思うが、機械がどうやって数字の概念を理解してると思う?」みたいなクイズを出したりしていると、知識として知らないだけでなく、そもそもそういう疑問を持ったことすらない人が多くてちょっと驚きました。「え、君ら工学部の学生なんちゃうの?」と。
そのうち、「そもそも自分がやりたいことはなんだっけ?」と目的を問い直すことも、できなくなってしまうんじゃないでしょうか。先日、学生とデータ分析の打ち合わせをしていて、「このデータに対しては、こういう分析をやる必要がある。細かいやりかたはChatGPTに聞いといて」というアドバイスを繰り返していたら、「先生、次はChatGPTに何を聞けばいいですか」と質問されて衝撃を受けました。「いや、何をすべきかはお前が考えることやろ」と一瞬思ったのですが、その学生を馬鹿にするのではなく、優秀な人間でも容易にそうなってしまうのだという戒めにすべきだと思います。
ちなみに、今のところ生成AI(LLM)は、そもそも単純に頼っているだけの人だと、大した情報を引き出せなくて、活用しきれないのが現状だと思います。なので、人間をスポイルしてしまう効果も、まだそれほど大きくはないのかも知れません。
ものごとの本質や根本原理に関心をもつ人が生成AIと対話を続けていくと、どんどん理解が深まっていくのですが、「鋭い問い」を持てない人は浅いところで対話をやめてしまうので、「Googleで検索するよりちょっと楽」という程度にしか価値を引き出せない。そういう意味では、まだ今は「生成AIを使うにも苦労と工夫が必要な時代」であり、黎明期ならではのワクワク感があるので、我々がインターネットやデータ解析についてしたような経験を、生成AIについてすればいいだけかも知れません。これがもっと高度なエージェントになってくると、どうなるんでしょうね💦
生成AIの圧倒的な効率性を、利用しない手はないです。しかしそれによって失われるものも確実にある。効率性によって得るものと失うもののバランスというのは、テクノロジーにまつわる永遠のテーマみたいなもので、単純な正解はないのですが、なるべくそれを「言語化」しておいたほうがいいとは思います。
余談ですが、 いま、生成AIにレポートを書かせたりエロ画像を作らせたりしている学生たちは、思い通りの出力にならなくてそれなりに苦労をしていると思いますが、10年ぐらい経つとそれを後輩たちに「武勇伝」や「ノスタルジー」として語るようになるでしょうね(笑)。おそらく10年たつと、技術が進んで苦労がなくなるか、もしくは規制が強化されてグレーゾーン的な楽しみ方ができなくなって、「お前らにはわからんだろうが、あの頃は楽しかったんだぜ」と語る時代がきます。インターネットの歴史はそれの繰り返しです。
そういえば他学部の学生ですが、超人気企業のインターン選考でオンライン面接をChatGPTだけで乗り切って、最終的に内定までもらって就職するという奴がいます。けしからんと思う面もありますが、企業側も対策するようになってきてるので、「生成AIの黎明期に一瞬だけ可能だったチート技」として、かけがえのないエピソードであるとも思います。そう考えれば、今のうちに生成AIと思う存分戯れておくのが正解という気はします。
研究者にとって重要なところでは、海外の文書の翻訳とかも、今は割と自由にできてますが、「著作権の問題があるので訳せません」と言われるケースが増えてきてますよね。プロンプトの工夫で容易に回避できるのも、今のうちだけかも知れません。厳密にいえば違法行為が含まれるのでやるべきだとは言いませんが、ファイル共有や動画ダウンロードツールとかと同じで、「使えるうちに使いまくって保存したもん勝ち」な面はあると思います。個人的には、YouTubeがそうなってきたように、著作権者にお金が流れる仕組みをうまく作ってほしいのですが。
(参考:このブログのおすすめ記事一覧はコチラ)