ディープラーニングの簡単な歴史: TF と PyTorch の独占、次の 10 年間の黄金時代

ディープラーニングの簡単な歴史: TF と PyTorch の独占、次の 10 年間の黄金時代

過去 10 年間で、機械学習 (特にディープラーニング) の分野では多数のアルゴリズムとアプリケーションが登場しました。これらのディープラーニング アルゴリズムとアプリケーションの出現の背後には、さまざまなディープラーニング ツールとフレームワークがあります。これらは機械学習革命の足場です。TensorFlow や PyTorch などのディープラーニング フレームワークが広く使用されるようになったことで、多くの ML 実践者が適切なドメイン固有のプログラミング言語と豊富なビルディング ブロックを使用して、より簡単にモデルを組み立てられるようになりました。

ディープラーニング フレームワークの進化を振り返ると、ディープラーニング フレームワークとディープラーニング アルゴリズムの間に密接な結合関係があることがはっきりとわかります。この相互依存の好循環により、ディープラーニングのフレームワークとツールが急速に発展しました。

Nationalmuseet 提供、CC BY-SA 3.0、https://commons.wikimedia.org/w/index.php?curid=90400464

石器時代(21世紀初頭)

ニューラル ネットワークの概念は、かなり以前から存在しています。 21 世紀初頭以前には、ニューラル ネットワークを記述および開発するためのツールがいくつかありました。これらのツールには、MATLAB、OpenNN、Torch などが含まれますが、これらはニューラル ネットワーク モデル開発用に特別にカスタマイズされていないか、ユーザー API が複雑で GPU サポートが不足しています。この間、ML 実践者は、これらの原始的なディープラーニング フレームワークを使用する際に、多大な労力を費やす必要がありました。

Nationalmuseet 提供、CC BY-SA 3.0、https://commons.wikimedia.org/w/index.php?curid=90400464

青銅器時代(~2012年)

2012年、トロント大学のアレックス・クリジェフスキーらは、後にAlexNet[1]と呼ばれるディープニューラルネットワークアーキテクチャを提案し、ImageNetデータセットでSOTA精度を達成し、2位の競合を大きく上回りました。この素晴らしい結果により、ディープ ニューラル ネットワークの人気が高まり、それ以来、さまざまなディープ ニューラル ネットワーク モデルが ImageNet データセットの精度において新たな記録を樹立し続けています。

この頃、Caffe、Chainer、Theano などの初期のディープラーニング フレームワークが登場しました。これらのフレームワークを使用すると、ユーザーは CNN、RNN、LSTM などの複雑なディープ ニューラル ネットワーク モデルを簡単に構築できます。さらに、これらのフレームワークはマルチ GPU トレーニングをサポートしているため、これらのモデルのトレーニング時間が大幅に短縮され、以前は単一の GPU のメモリに収まらなかった大規模なモデルのトレーニングが可能になります。これらのフレームワークのうち、Caffe と Theano は宣言型プログラミング スタイルを使用し、Chainer は命令型プログラミング スタイルを採用しています。これら 2 つの異なるプログラミング スタイルは、今後のディープラーニング フレームワークに対して 2 つの異なる開発パスも設定します。

北欧の家族 — 北欧の家族 (1910)、第 13 巻、芸術まで。Järnåldern。https://commons.wikimedia.org/w/index.php?curid=109777

鉄器時代(2015年~2016年)

AlexNet の成功はコンピューター ビジョンの分野で大きな注目を集め、ニューラル ネットワークへの期待を再燃させ、大手テクノロジー企業がディープラーニング フレームワークの開発に加わりました。その中で、Google は有名な TensorFlow フレームワークをオープンソース化しました。これは現在でも ML 分野で最も人気のあるディープラーニング フレームワークです。 Caffe の発明者は Facebook に加わり、Caffe2 をリリースしました。同時に、Facebook AI Research (FAIR) チームも、Torch フレームワークをベースにしながらも、より人気の高い Python API を使用する、別の人気フレームワークである PyTorch をリリースしました。 Microsoft Research は CNTK フレームワークを開発しました。 Amazon は、ワシントン大学、カーネギーメロン大学、その他の機関による共同学術プロジェクトである MXNet を採用しました。 TensorFlow と CNTK は Theano から宣言型プログラミング スタイルを借用していますが、PyTorch は Torch から直感的でユーザー フレンドリーな命令型プログラミング スタイルを継承しています。命令型プログラミング スタイルはより柔軟性があり (While ループの定義など)、理解しやすいのに対し、宣言型プログラミング スタイルでは通常、計算グラフに基づいてメモリとランタイムの最適化の余地が大きくなります。一方、“mix”-net として知られる MXNet は、シンボリック (宣言型) API のセットと命令型 API のセットの両方をサポートし、ハイブリッド化と呼ばれる手法によって命令型 API を使用して記述されたモデルのパフォーマンスを最適化し、両方のメリットを享受します。

2015年にHe KaimingらはResNet[2]を提案し、再び画像分類の限界を打ち破り、ImageNetの精度において新たな記録を樹立しました。業界と学界は、ディープラーニングが次なる大きな技術トレンドとなり、これまで不可能と考えられていたさまざまな分野の課題を解決するだろうという点で合意に達しています。この期間中、すべてのディープラーニング フレームワークは、マルチ GPU トレーニングと分散トレーニングを最適化し、よりユーザーにとって直感的な API を提供し、コンピューター ビジョンや自然言語処理などの特定のタスク専用のモデル ズーとツールキットを派生させました。また、Francois Chollet 氏がほぼ独力で Keras フレームワークを開発したことも注目に値します。Keras フレームワークは、TensorFlow や MXNet などの既存のフレームワークの上に、ニューラル ネットワークとビルディング ブロックのより直感的な高レベルの抽象化を提供します。本日より、この抽象化は TensorFlow における事実上のモデルレベル API になります。

[[384629]]

sv.wikipedia のユーザー Lamré より https://commons.wikimedia.org/w/index.php?curid=801434

ローマ時代(2019年~2020年)

人類の歴史の発展と同様に、ディープラーニング フレームワークは、激しい競争を経て、最終的に 2 つの「帝国」、つまり TensorFlow と PyTorch の複占を形成しました。この 2 つの「帝国」は、ディープラーニング フレームワークの研究開発と製造における使用事例の 95% 以上を占めています。 2019 年に Chainer チームは開発作業を PyTorch に移行しました。同様に、Microsoft は CNTK フレームワークの積極的な開発を停止し、一部のチーム メンバーは Windows 上の PyTorch と ONNX ランタイムのサポートに切り替えました。 Keras は TensorFlow に組み込まれ、TensorFlow 2.0 バージョンでは高レベル API の 1 つになりました。ディープラーニングフレームワークの分野では、MXNet は依然として 3 位にランクされています。

この期間中、ディープラーニング フレームワークの分野では 2 つの傾向がありました。 1つ目は大規模モデルのトレーニングです。 BERT[3]とその近縁種であるGPT-3[4]の登場により、大規模モデルをトレーニングする能力はディープラーニングフレームワークの望ましい機能となりました。これには、数百、あるいは数千のデバイスにわたって大規模かつ効率的にトレーニングできるディープラーニング フレームワークが必要です。 2番目のトレンドは使いやすさです。この時期のディープラーニング フレームワークはすべて、柔軟なセマンティクスと簡単なデバッグを備えた命令型プログラミング スタイルを採用していました。同時に、これらのフレームワークは、JIT (Just-in-Time) コンパイラ テクノロジを通じて高パフォーマンスを実現するためのユーザー レベルのデコレータまたは API も提供します。

[[384630]]

Tharunbr77 による — 自身の作品、CC BY-SA 4.0、https://commons.wikimedia.org/w/index.php?curid=86866550

産業時代(2021年以降)

ディープラーニングは、自動運転、パーソナライズされた推奨、自然言語理解、ヘルスケアなど、幅広い分野で大きな成功を収め、これまでにない数のユーザー、開発者、投資家の波をもたらしました。これは、今後 10 年間のディープラーニング ツールとフレームワークの開発にとっても絶好の時期です。ディープラーニング フレームワークは当初から大きな進歩を遂げてきましたが、ディープラーニングにおけるその地位は、インターネット アプリケーションにおけるプログラミング言語 JAVA/C++ に比べるとはるかに成熟していません。探索し、実行すべき刺激的な機会や仕事がまだたくさんあります。

今後、次世代のディープラーニング フレームワークで主流になると予想される技術トレンドがいくつかあります。

コンパイラベースの演算子の最適化。現在、多くのオペレータ カーネルは手動で実装されているか、特定のハードウェア プラットフォームを対象とする BLAS、CuDNN、OneDNN などのサードパーティ ライブラリを通じて実装されています。これにより、モデルが異なるハードウェア プラットフォームでトレーニングまたはデプロイされる場合、大きなオーバーヘッドが発生する可能性があります。さらに、新しいディープラーニング アルゴリズムの成長率は、これらのライブラリの反復率よりもはるかに速い傾向があるため、これらのライブラリは新しい演算子をサポートできないことがよくあります。 Apache TVM、MLIR、Facebook Glow などのディープラーニング コンパイラは、あらゆるハードウェア バックエンドで計算を最適化して効率的に実行することを提案しています。これらは、ディープラーニング フレームワークのバックエンド全体として機能することができます。
統一された API 標準。多くのディープラーニング フレームワークは、類似しているもののわずかに異なるユーザー API を共有しています。これにより、あるフレームワークから別のフレームワークに切り替えるユーザーにとって、困難と不必要な学習曲線が生じます。ほとんどの機械学習実践者やデータ サイエンティストは NumPy ライブラリに精通していますが、NumPy API が新しいディープラーニング フレームワークのテナー操作 API の標準になるのは当然のことです。 NumPy と完全に互換性のある API を備えたフレームワーク JAX の採用が急速に増加しています。
第一級市民としてのデータ処理。マルチノードまたはマルチデバイスのトレーニングは、ディープ ニューラル ネットワークのトレーニングの標準になりつつあります。 OneFlow などの最近開発されたディープラーニング フレームワークは、最初からこの観点を念頭に置いて設計されており、データ通信をモデル トレーニングの全体的な計算グラフの一部として考慮しています。これにより、パフォーマンスの最適化の機会が広がり、以前のディープラーニング フレームワークのように複数のトレーニング戦略 (単一デバイスと分散トレーニング) を維持する必要がないため、パフォーマンスが向上するだけでなく、よりシンプルなユーザー インターフェイスも提供できます。

要約する

私たちは人工知能革命の幕開けを迎えています。人工知能の分野における新たな研究と応用が、かつてない速さで登場しています。 8年前のAlexNetネットワークには6000万のパラメータが含まれていましたが、最新のGPT-3ネットワークには1750億のパラメータが含まれています。ネットワークサイズは8年で3,000倍に増加しました。一方、人間の脳には約 100 兆個のパラメータ (つまりシナプス) が含まれています。これは、ニューラル ネットワークが人間の知能レベルに到達するには、たとえそれが可能だとしても、まだ長い道のりがあることを示唆しています。

この許容できないネットワーク サイズは、モデルのトレーニングと推論のハードウェアとソフトウェアの計算効率に大きな課題をもたらします。将来のディープラーニング フレームワークは、アルゴリズム、高性能コンピューティング、ハードウェア アクセラレータ、分散システムの学際的な成果となる可能性があります。

<<:  人工知能のルーツを解読する

>>:  次世代のインターネット技術 - ディープラーニング

ブログ    
ブログ    
ブログ    

推薦する

「AI」があなたにビデオ通話を開始しました。あなたはそれを受け入れるべきでしょうか?

毎年恒例のスーパーボウル決勝戦の前に、Amazon は「Alexa の新しい形」というもう一つの大ヒ...

2021 年の人工知能データ収集および注釈業界の 4 つの主要トレンド予測

人工知能データ収集およびラベリングのリーディングカンパニーであるYunce Dataは最近、「202...

自動化戦略の6つの重要な要素

[[440295]] IT 自動化は多くの場合、自然に発生します。たとえば、システム管理者は、日常業...

AIカメラとLiDARがスマート道路にとって重要な理由

今年 1 月の Consumer Electronics Show は、今後数年間に自動車市場に参入...

AIによるパスワードの盗難を防ぐ方法

翻訳者 | 陳俊レビュー | Chonglou現在、人工知能 (AI) アプリケーションの人気と急速...

相関ルール推奨アルゴリズムの原理と実装

相関ルールは、データ間の潜在的な関連性を発見するために使用されます。最も一般的なアプリケーションは、...

...

仕事の未来に向けたスマートデバイスの準備

パンデミック以前は、スマートデバイスは接続できなかった可能性があります。しかし、従業員が自宅からログ...

AIが教育技術分野にもたらす変化 パーソナライズされた学習が従来の教育方法を超える

最近のコロナ時代では、教育は大きなビジネスへと変貌しました。初等、中等、高等教育機関における学習は目...

ちょうど今、ビートルズはAIがプロデュースした「最後の」新曲をリリースした。

音楽に詳しい友人なら、ビートルズを知らない人はいないでしょう。ビートルズは、歴史上最も偉大で最も影響...

...

2019年のAI業界の再編:疑似AI企業は淘汰される

起業プロジェクトの数、資金調達額、資金調達のスピードなど、AIは近年間違いなく注目の産業です。しかし...

復旦大学の邱希鵬さんへの10の質問:大手モデルはAndroidの時代に入り、国産モデルがLIamaに取って代わることを望みます

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

AI分析で遠隔ビデオ監視をより利用しやすくする方法

[[400505]] AI(人工知能)がさらに発展するにつれて、新たな用途やメリットが生まれる可能性...