回答:
cs231nコースでは、私が覚えている限り、NumPyだけを使用して自分でニューラルネットワークを実装することにほとんどの時間を費やしています。それは間違いなく私にとって素晴らしい学習体験でした。
その後、最後の割り当てでは、より複雑なネットワークを構築するためにTensorFlow(例)またはPytorch(例)を確認する必要があります。これらのフレームワークは、CS231nのようなコースを作成するような人々-研究者や業界の専門家によって構築されました。
SciKit学ぶニューラルネットワークモジュールは、例えば、畳み込みネットワーク(CNNs)、回帰ネットワーク(のRNN)、または別の活性化機能などの他のよりエキゾチックなコンポーネントとして分類または回帰が、何も愛好家のいずれかのためのフィードフォワードネットワークからなります。
私はDjib2011に同意します。Kerasは開始するための優れた代替手段であり、TensorFlow、CNTK、またはTheanoのいずれかをバックエンドとして選択できるようにすることです。Kerasは、3つのモンスターフレームワークすべての優れた均一なラッパーなので、物事をすぐに立ち上げて実行してみましょう。KerasとPytorchの最近の有用な比較を以下に示します。
Kerasのようなツールに慣れると、SciKit Learnのシンプルな製品よりも使いやすくなります。
あなたがPyTorchについて質問しなかったのは知っていますが、CS231nの最初の作成者の1人であるAndrej Karpathyがそれが最良のフレームワークであると言っているので、私はそれを言及したいと思いました(ソース1、ソース2)。
tf.eager
API を使用した動的ネットワークをサポートするようになったことにも言及する必要があります。これはPyTorchに相当します。