素人がNeural Networks and Deep Learningの講座に挑戦するも尾羽打ち枯らした話

ようやくこのブログでも、AIについて触れることが出来ました。自分がプログラミングの学習をスタートしようとしたのは、昨今のAIブームによるものが大きく、当初の自分の計画ではゼロベースからAIエンジニアを目指すという無謀極まりないものでしたが、紆余曲折を経て、現在はAIについてはこれと言った勉強をしている訳ではなく、あくまでアンテナを張るだけに留まっています。

 

さて、本記事では、Deep Learning Specializationのプロジェクトの最初の講座であるNeural Networks and Deep Learningについて、一応の修了を終えた身として振り返りをしたいと思います。(正直、何の実感もありませんが…)

 

www.coursera.org

 

前置きとして、自分はブログタイトルにもあるように、この領域に関しては一切のアカデミックバックグラウンドを持ち合わせておらず、全くの素人であり、あくまで本記事は、素人目線による経験談にしか過ぎないことをご了承下さい。加えて、講座の具体的な内容については、既にQiitaの方でまとめられている方がいるので、興味のある方はこちらを参考にすることを推奨します。

 

qiita.com

 

この講座の魅力としては、講座の提供元が本場のdeeplearning.aiであることと、現代の人工知能界隈の最大の牽引者であるとも言えるAndrew Ng*1先生が講師を務められていることにあります。Ng先生については、Courseraで非常に高い評価を得ている以下の機械学習の講座が有名で、こちらの講座をきっかけとして名前を知った人も多いのではないでしょうか。

 

ja.coursera.org

 

自分は深層学習を学ぶにあたって必要となる機械学習の知識に関しては、以下のUdacityの講座を履修することでカバーしたのですが、既に内容がうろ覚えになってしまっていることから、いずれ本領域への学習再開の目処が立った際には、まずは改めて上記講座からスタートを切りたいと考えています。

 

www.udacity.com

 

閑話休題。講座では2層NNとL層NNの構築を行い、猫の画像識別モデルを作成することが最終的な目標となっています。上記NNの実装に必要な各数理モデルの理論の説明→numpyを用いた実装、という流れを何度も繰り返しながら、ジュピターノートブック上で段階的な構築を少しずつ行っていく感じです。自分は、数2Bの知識も怪しいレベルでしたので、微積やベクトル・行列を復習する必要がありましたが、そうした受講者に対しての補足回も含まれているという超絶親切っぷり設計です。しどろもどろになりながらも、一応の実装を終えることができ、猫の画像識別は成功しましたが、間違いなくこれまで受講した講座の中で、一番ハードな内容でした。

 

講座のねらいとしては、初めにニューラルネットワークディープラーニングの理論を受講者にしっかりと理解させることで、後々の講座で扱うことになる、TensorFlowに代表されるような主流AIフレームワーク群を極力ブラックボックスとして運用させないようにすることにあると思います。理論をもとにスクラッチができるということの意義については、語るまでもないでしょう。*2

 

また、講座ではそれぞれのセクション末にコラムとして、業界の著名人に対してNg先生がインタビューを行うパートがあります。そこでは「これから人工知能を学びたいと思っている人はどのようなキャリアを歩めばよいか」といった、我々が最も気になるであろう点についてクリティカルに触れられており、これを視聴するだけでも、何となくAIに興味を持たれている方にとっては、一見の価値があるのではないかと思います。

 

残念ながら先日の記事で言及したWebスクレイピングのような技術と違い、ここで得た知識を活用して実生活で実践的に何かを行う、という段階には未だ至れていません。AIを国内で学ぶならAidemyが有名ですが、先日このようなツイートが流れてきたように、学習後の次のステージをどう設定するか、ということが独学者のネックとなっているのは万国共通ということでしょう。

 

 

しかしながら、この経験がAIを最終到達地点として定めていた自分自身の学習計画を見直すきっかけとなったことと、これからのAI時代に対しての最低限の備え付けとしての役割ぐらいは果たしてくれたのではないかと考えています。

*1:アンドリュー・ウンと読むそうです。

*2:講座ではある程度の手順が示されているため、厳密にはスクラッチないかもしれません。せいぜい講座を見直しながら再実装するのが自分は関の山です。