3.10ディープラーニングフレームワーク-ディープラーニング2番目のレッスン「ディープニューラルネットワークの改善」-スタンフォードウーエンダ教授

深層学習フレームワーク

PythonとNumPyを使用してディープラーニングアルゴリズムを実装する方法をほとんどゼロから学習しましたが、これらのディープラーニングアルゴリズムが実際に何をしているのか理解していただければ幸いです。しかし、たたみ込みニューラルネットワークやリカレントニューラルネットワークなどのより複雑なモデルを適用しない限り、または非常に大きなモデルを適用し始めると、少なくともほとんどの人にとって実用性が低下することがわかります自分でゼロから始めるのは非現実的です。

幸い、これらのモデルの実装に役立つ優れたディープラーニングソフトウェアフレームワークが数多くあります。類推して、あなたは行列の乗算を行う方法を知っていると思います、そして2つの行列をプログラムして乗算する方法も知っているはずですが、大きなアプリケーションを構築しているときは、おそらく独自の行列乗算関数を使いたくないが、数値線形代数ライブラリにアクセスするには、より効率的ですが、2つの行列の乗算の仕組みを理解していると便利です。深層学習は非常に成熟していると思います。いくつかの深層学習フレームワークを使用すると、より実用的で、作業がより効果的になります。フレームワークを見てみましょう。

ここに画像の説明を挿入
ニューラルネットワークの実装を容易にするディープラーニングフレームワークはたくさんありますが、主なものについて話しましょう。各フレームワークは、特定のユーザーまたは開発グループを対象としています。ここにあるすべてのフレームワークは、特定のタイプのアプリケーションにとって信頼できる選択肢だと思います。多くの人々が、これらのディープラーニングフレームワークと、これらのディープラーニングフレームワークがどれだけうまく開発されたかを比較する記事を書いています。 、そしてこれらのフレームワークは毎月常に進化し、改善されているため、これらのフレームワークの長所と短所についてのディスカッションを見たい場合は、オンラインでの検索に任せますが、多くのフレームワークは高速だと思います進歩はどんどん良くなっているので、私は強く推奨しませんが、フレームワークを選択するための基準をあなたと共有します。

重要な基準は、プログラミングの容易さです。これには、ニューラルネットワークの開発と反復の両方、および製品の構成が含まれます。数千または数億ものユーザーを実際に使用するには、何をしたいかによって異なります。

2番目の重要な基準は実行速度です。特に大規模なデータセットをトレーニングする場合、一部のフレームワークでは、ニューラルネットワークをより効率的に実行およびトレーニングできます。

他の人があまり言及しない標準がありますが、そのフレームワークが本当にオープンであるかどうかは非常に重要だと思います。フレームワークが本当にオープンである場合、それはオープンソースだけでなく優れた管理も必要です。残念ながら、ソフトウェア業界では、一部の企業はオープンソースソフトウェアの歴史を持っていますが、同社はソフトウェアの完全な管理を維持しています。数年が経過し、人々がソフトウェアを使い始めたとき、一部の企業はかつて開いていたリソースを徐々に閉鎖し始めました。または、関数を専用のクラウドサービスに転送します。したがって、このフレームワークが会社の管理下ではなく、長期間オープンソースであり続けることができると信じることができるかどうかに注意しますオープンソースの形でリリース。しかし、少なくとも短期的には、PythonJava、または** C ++ **のいずれを好むかに応じて、言語の好みに依存します。また、コンピュータービジョンか、自然言語処理か、ワイヤーかなど、開発しているアプリケーションにも依存します。広告など、ここで複数のフレームワークを選択するとよいと思います。

ここにプログラムフレームワークがあります。数値線形代数ライブラリよりも高度な抽象化を提供することにより、ここの各プログラムフレームワークは、深層機械学習アプリケーションを開発する際により効率的になります。

コースPPT

ここに画像の説明を挿入
ここに画像の説明を挿入

242のオリジナル記事を公開 Like9 訪問者10,000以上

おすすめ

転載: blog.csdn.net/weixin_36815313/article/details/105456683