続きの記事はじめにTensorFlowを本格的に活用し始めて感じていることがいくつかあります。モジュールが異様に豊富で、どれを使えばいいか分からないプログラミングの仕方が独特などが挙げられます(他にもたくさんありますが)。これらを考慮して、TensorFlowを使う際の自分なりの心構えと、初学者が入門するためのチュートリアル的な記事を書こうと思いました。内容が多くなることが想定されるので、何回かに分けて書いていきます。TensorFlowの書き方、考え方を抑え今回は順伝播までを正確に記述できるようにしていきます。したがってほぼ初めて、あるいはサンプルコードしか触ってない人が、自分である程度ネットワークを構成できるようになるための初歩に相当します。数式を交えて書いていきますが、決して難しい内容ではありません(むしろ数式の方がシンプルで、それを如何にしてコードに落とすかの方が難しい)。計算グラフ計算グラフ言いますが、計算グラフを理解しなければならないのではなく、むしろ順伝播や逆伝播を理解する便利なツールとして計算グラフがあります。計算グラフで考えると、難しい数式を追わなくても誤差逆伝搬法が理解できるようになります。計算グラフは嬉しいと言っても、あくまでツールであって目的ではありません。計算グラフなんてもの勉強したことがないよ、という人は無理にこれを勉強する必要はありません。誤差逆伝搬法が数式ベースで分かるならそれで十分ですし、それが難しそうなら計算グラフで理解をしてみようかな、と考えればいいだけのことです。使う側にとっては、誤差逆伝搬法は要するに勾配法のために微分を効率よく計算するものなんだという程度の理解でもとりあえずは構わないでしょう。実践的なTensorFlowの理解TensorFlowはあらゆる処理をすべて計算グラフで表現します。計算はもちろん文字の出力なども計算グラフで実行します(fileの保存すら!)。TensorFlowの開発に参加したければ深い理解が必要ですが、そうでもなければ以下のように理解してしまうほうが良いでしょう。TensorFlowは「写像を定義し、写像をメモリに載せて、写像する」という処理の手順を持っています(実際のところ、ここで言う「写像」がまさしく計算グラフのことになってくるわけですが)。写像とは?難しく考える必要はありません。