top of page
  • 執筆者の写真靖宏 河畑

TensorflowとPyTorch

最近はPyTrochをよく使っています。10年くらい前はTensorflowばかり使っていたのに...


いま改めてTensorflowとPyTorchの違いについて考えてみました。


個人的に両者の最も大きな違いは、モデルに対するデータの渡し方と誤差逆伝播の書き方。

まずはデータの渡し方。


誤差逆伝播ですが、Tensorflowでは誤差逆伝播については、ほぼ意識する必要はありませんでした。PyTorchではエポックを回す関数の中で、予測値の計算→誤差計算→勾配計算→パラメータ修正を明示的に描く必要があります。


このようにしてみると、PyTorchのほうが面倒そうですが、fastaiをつかうと、データローダの定義やモデル定義が本の数行で書けてしまうし、誤差逆伝播からパラメータ修正の部分も書く必要がなくなっています。


fastaiは簡単にPyTorchを使うことができてとても便利なのですが、深層学習が完全にブラックボックス化してしまって、自分が書いたコードのどこで何が行われているのかがさっぱりわからなくなります。特に機械学習を始めたばかりの方にとっては、自分の学習のためにはTensorflowなりPyTorchなりを一通り学んだうえで、fastaiを使うことをお勧めします。

閲覧数:5回0件のコメント

Comments


bottom of page