自分の勉強の仕方が非効率だと気づけた出来事があったので、メモしていく。
いま東大松尾研の機械学習の講座を受けているんだけど、毎週の予習で大体5-10時間くらいかけていたのが、1時間くらいに短縮できるようになった。しかも理解度はあまり変わらないというか、むしろ良くなった。
時間あたりの学習率という観点で見ると、5倍~10倍くらいになっている。その方法を言語化しておき、今後も忘れないようにメモしておく。
【元々やっていた勉強方法】
教材を上から順に、丁寧にインプットし、コードを動かす
コードの処理を一つ一つ理解し、再現したり手を加えて試す
分からないワードがあったらChatGPTやGoogleで都度調べる
【新しく取り入れた勉強方法】
全体を通しての処理の流れの理解を優先し、教材のコードをサクサク動かす
意味の分からないコードがあっても一旦無視して、次の処理に進む
分からないワードはまとめておいて、後で調べる
特に変えたのは、完全な理解ができない部分があっても、一旦は無視して次に進むという部分。つまり、初学の時点では細かい理解を捨てた。そして、ひたすら全体の処理の流れを掴むことを目的にした。
このやり方は、「Fくん」という強い技術者の方が相互FFにいるんだけど、彼のやり方をマネした。
元々の予習の所要時間は「わたしは5-10時間」で、「Fくんさんが1時間」とかだった。同じ教材で5倍以上の生産性の差がつくのは、前提知識の差を考慮しても流石におかしいと思い、根本的にやり方が変ということに気づいた。
わたしは自分の知識レベルに自信がなかったから、「とにかくしっかり理解せねば!」という思いに取り憑かれて、枝葉末節の部分までインプットしようとしすぎていたようだった。
そのやり方は間違っていて、むしろ前提知識がないからこそ、全体の流れを高速で掴むことを優先すべきだった。細かいコードの書き方は都度調べればいいので忘れたっていいし、インプットしてもどうせ忘れてしまう。
あと何より良かったのは、このやり方だと「インプット→実践」までのサイクルが短くなることだった。飽き性なわたしにとっては、勉強がより楽しくなる方法にもなった。
思えば、別分野の勉強ではこの速習の方法をやっていたはずだった。でも、機械学習のような未知の分野の勉強だと自信がないからか、「ゆっくり理解しよう」という方向でいつの間にか勉強していた。
わたしのなかで結構な気づきだったので、忘れないようにメモしておく。