トップページ > コラム

初めてのプログラミング言語の学び方


2019.07.21


イメージ写真

 大学の常勤の仕事(特任教授)を定年退職して早くも3か月半になる。非常勤講師の仕事は週2回であるので、時間はたっぷりある。その間、一番時間を費やしているのがプログラミング言語Pythonの勉強である。

 きっかけは、退職直前に買った本@「Raspberry Piではじめる機械学習」(講談社)と合わせて買ったRaspberry Pi3 Model B+(以降、ラズパイ)だった。ラズパイで機械学習を学ぶにはどうしてもPythonを知らなければならない。というわけで初めて見るプログラミング言語Pythonと向き合うことになった。

 とは言え、@での勉強の中心は、この本のサポートサイトからダウウンロードしたPythonのプログラムを動かして『機械学習』がどのような仕組みで実行されるのかを理解することだった。従って、プログラムのコードは殆ど見ていない。さらに、ラズパイにカメラを付けて動画を撮る、LEDライトを光らせる、といったことの問題解決の方に頭が行っており、それも殆どGoogleさんから教わったプログラムのコードをコピペしていた。

 きちんとPythonを学ばなければ、と思って買った本がA「Pythonではじめる機械学習」(オライリー・ジャパン)である。ここに示されているプログラムは実際に入力して動きを確かめようと、パソコンに開発環境を作ることにした。ただし、行き当たりばったりでインストールしたのはSpiderという環境とPython2.7だった。すぐにPython3にすべきだったと後悔したが、始めてしまったので突き進むしかない。Spiderは使い勝手もよく、私は、かなりのスピードで、Aに示されているプログラムをひとつひとつ入力しては実行してその機能を確認していった。最後まで来たのが6月の半ばだった。全く、リタイアした老人というのは暇なものだ。しかし、やっているのはやはりプログラムのコピーと問題解決(主としてPython2とPython3の違いに起因するもの)だけだった。これでは自分でプログラムを組むことなど覚束ない。

 次に買った本がB「Pythonで動かして学ぶ!深層学習の教科書」(翔泳社)である。良い機会だったので、別のパソコンにAnacondaでJupyter Notebookを使うという開発環境を作り、Python3をインストールしてプログラミングを学ぶことにした。Spiderも悪くはなかったが、Jupyter Notebookは学習環境としてはとても親切で使いやすい。Bは教科書なので演習問題を解きながら言語の文法を学ぶことができる。Aで書いていたのは実はこう言うことだったのか、@でオマジナイにしか見えなかったのはこう言う意味があったのか、と分かっていくのがとても楽しい。遂にこの本も終わりに近づいてきた。で、今は何をしているのか。@に戻って、今度はプログラムコードを読み、中身を変更しながら動かして理解を深めている。その後Aに移ればさらに理解は深まるだろう。

 かつては、プログラミング言語の基本を勉強し、だんだん難しいプログラムを組んで理解を深めていったものだが、現代は逆かもしれない。まずは動かし、徐々に理解を深めていく方がずっと効率的である。世の中には成熟したプログラムが沢山あるのだから。

 申し訳ないが、PythonやSpiderといった英字で書かれた単語について不明な場合はGoogleさんに聞いて欲しい。面倒であればオマジナイだと思ってよい。



コラム一覧へ