おわりに
ここまでDeZeroを作る旅にお付き合いいただき、ありがとうございました。本書によって、ディープラーニングのフレームワークについて、そしてディープラーニング自体について新たな学びがあれば幸いです。もしそうであったとしたら、著者として、これ以上の喜びはありません。最後に、ここでは本書の制作過程について簡単に述べさせてもらい、本書を締めたいと思います。
本書の制作をスタートしたのは、2018年の10月頃でした。結果として、本書の制作には、およそ1年半を要しました。制作を開始する時点では、その半分ぐらいの時間で書けると予測していたのですが、毎回、自分の予測が当てにならないことを思い知らされます。周囲の方にはご迷惑をかけたかもしれません。この場をお借りして、お詫び申し上げます。
さて、本書のテーマは、ディープラーニングの「ミニ・フレームワーク」を自作することです。そのようなテーマにした理由(つまりは本書を書こうと思った理由)は主に3つあります。1つ目は、現代のディープラーニングのフレームワークが過渡期をすぎ、コミュニティの中で最大公約数のような共通の機能が定着した段階にあったからです。本書を書くタイミングとしては、ちょうど良い時期だと感じられました。
本書を書こうと思った2つ目の理由は、フレームワークの中身を実装レベルで理解するための本や文献がなかったことです。僕自身について言えば、ChainerやPyTorchなどのコード(フレームワークの中身のコード)から多くのことを学びました。それらの技術を正しく――そして、おもしろく――伝えることができれば、それは価値あることだと考えました。
3つ目の理由は、Chainerのコードが美しかったことにあります。Chainerは見通し良く設計されており、Define-by-Runという、時代を先駆けるアイデアを見事に実装していました。僕は、そのアイデアとコードに魅了されました。それが本書を書く大きな原動力になりました。ただし、Chainerの中身は(初心者にとっては)巨大で、複雑です。そこで、Chainerをベースとして、モダンな機能を持たせながら、できるかぎり単純化したフレームワークを作ることを目標にしました。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access