##わからないこと
現在、機械学習の独学を目指しています(聞く相手が対面ではいません)。自分で何か論文のコードを実装しようと思った時に、例えばtf.reduce_sum()やtf.one_hot()など様々な関数が出てきます。論文の数式から疑似コード、疑似コードから実際のコードにするにはどのような学習法がよいでしょうか。今のところ、様々なサイト様のコードを写経していますが、「なぜ論文の数式がこのコードになるのか」という肝心な部分が理解できません。数式とコードを結びつける学習方法を教えてくださると幸いです。
自分では、「どのようなライブラリを使うとAI作成ができるか」などの解答は見つかりましたが、それよりも後の段階の「数式や疑似コードをTensorflowの関数を使ってコードにする」という部分の学習方法が見つけられませんでした。
たとえば、VQ-VAEの実装をしようと思った時に、エンコードしたものとコードブックの距離を取って一番近い部分を見つける数式の
(https://github.com/deepmind/sonnet/blob/master/sonnet/python/modules/nets/vqvae.py)より引用
python
1 distances = (tf.reduce_sum(flat_inputs**2, 1, keepdims=True) 2 - 2 * tf.matmul(flat_inputs, self._w) 3 + tf.reduce_sum(self._w ** 2, 0, keepdims=True)) 4 5##中略 6 7 def quantize(self, indices): 8 w = tf.transpose(self.vectors, [1, 0]) 9 return tf.nn.embedding_lookup(w, indices)
の部分では、tensorflow内の様々なモジュールを使っていますが、頭の中で公式とコードが結び付きません。
##質問の本題
どのような論文を写経すればいいのか、このようなテンソル自体の変形・演算はどのようにすればよいかなどのおすすめな特訓方法はなにかありますでしょうか(例えば「数式→Tensorflowの100本ノック」のようなものや実装の練習に適した論文のようなもの)。
いつも質問する側ばかりになって申し訳ありません。よろしくおねがいします。
##現時点の習熟度
Tensorflow 2.0の公式ホームページの画像関係のチュートリアルを終えた。解答を教えてもらいながら、自分でDCGANを実装してある程度形になるものができた(まともな画像は出来ていません)。既存のコードさえあればResnetやArcFaceなどのモデルを組むことはできるが、Tensorflowで書かれた既存のコードがないと何もできない。最終的な目標は論文に書かれている数式・疑似コードからJupyter notebookで簡単な実装を自力でできるようになることです。
あなたの回答
tips
プレビュー