Facebook の 10,000 ワードの記事: すべての AI モデルが PyTorch フレームワークに移行

Facebook の 10,000 ワードの記事: すべての AI モデルが PyTorch フレームワークに移行

PyTorch は 2017 年のリリース以来、GitHub の人気リストで急速にトップに立ち、一時は Tensorflow を上回る傾向を示しました。

これは Torch をベースにし、下部が C++ で実装されたオープンソースの Python 機械学習ライブラリです。

最近、Facebook はすべての人工知能システムを PyTorch に移行すると発表しました。

Facebook の AI モデルは、同社のテクノロジーを利用する何十億もの人々のために、毎日数兆回の推論演算を実行しています。

この高まる需要に応えるために、Facebook は AI フレームワークを継続的に進化させる必要があります。

PyTorchの誕生

Python がコンピューター サイエンスにおいて主導的な地位を占めていること、またそのエコロジカルな整合性とインターフェイスの使いやすさを考慮すると、ほぼすべてのフレームワークが必然的に Python インターフェイスを提供することになります。

そこで2016年、FacebookのAI研究者グループはAI研究コミュニティと協力してこれらの課題に取り組み始めました。

何が利用可能で何が必要かをより深く理解するために、彼らは Theano や Torch などの機械学習 (ML) フレームワークや、Lua Torch、Chainer、HIPS Autograd などの高度な概念を試しました。

数か月の開発を経て、PyTorch が誕生しました。

PyTorch は、単に Lua Torch をカプセル化して Python インターフェースを提供するのではなく、Tensor より上のすべてのモジュールを再構築し、最先端の自動微分化システムを追加して、現在最も人気のある動的グラフ フレームワークになっています。

PyTorch の初期バージョンはオープンソース コミュニティ GitHub で大きな反響を呼び、すぐに人工知能研究者が選ぶディープラーニング ライブラリになりました。

PyTorch は、プログラマーが自分のアイデアを真に表現できる制約のない環境を提供します。

発売されるとすぐに幅広い注目を集め、研究分野で急速に人気を博しました。

PyTorch はリリース以来人気が高まっています。2017 年 10 月 18 日現在、PyTorch は他の 3 つのフレームワーク (Caffe、MXNet、Theano) を上回っており、その人気は今も上昇中です。

2018 年初頭、PyTorch 1.0 のリリースにより、PyTorch の研究機能と制作機能を 1 つのフレームワークに統合する作業が開始されました。

Facebook の PyTorch 搭載テクノロジー

上記の利点の多くは Facebook で検証されています。 Instagram のパーソナライゼーション機能から AR や VR の新しいアプリケーションまで、PyTorch は数多くのアプリケーションでテクノロジーとサービスを強化する役割を果たしています。同時に、ワークフローが合理化され、システムの改善に必要な時間が短縮されます。

Instagram パーソナライゼーション テクノロジー

Instagram パーソナライゼーション チームは、推奨エンジンを継続的に改善し、改良する役割を担っています。

海外のユーザーは、フィード、ストーリー、リールなどの複数のチャネルを通じて Instagram のプッシュ通知を受信して​​見つけることができます。ユーザーはこれらのチャネルを通じて、自分にとって関連性があり興味深いコンテンツを見つけることができます。この機能はすべて、その背後にある機械学習アルゴリズムのおかげです。

PyTorch を使用すると、Instagram チームは、より迅速に Instagram を、ユーザーが興味のあるものを探して家族や友人と共有できる最高の場所の 1 つにすることができます。

現在、Instagram ユーザーへの推奨事項を継続的に改善するには、最大 10 TB にもなるモデルをトレーニングする必要があります。

PyTorch が登場する前は、こうした大規模モデルのトレーニングとデバッグには数か月かかることもありましたが、今では PyTorch を使えば数週間、あるいは数日しかかかりません。

PyTorch に新しいトレーニング手法を実装すると、さまざまなチームの何百人ものエンジニアがこれらの手法をすぐに採用して実験できるようになります。また、チーム間での標準の作成が簡素化され、これらのモデルの展開と改善が容易になります。

チームはオーサリングとトレーニングのインフラストラクチャにも改良を加え、モデルを自動的にシャーディング(小さなチャンクに分割)して、単一のホストで大規模なモデルをトレーニングできるようにしました。

また、パイプラインや階層型トレーニング(学習タスクを一連のサブ問題またはタスクに分割する)などのトレーニングパラダイムも採用し、品質を損なうことなくモデルがより多くのデータを使用できるようになりました。

人物セグメンテーションモデル

AR と VR は徐々に Facebook の重要な部分になりつつあります。

たとえば、コンテンツ クリエイターや一般ユーザーなど、友人と短いビデオを再生したり、撮影したビデオにコンピューターで生成されたカスタマイズされたグラフィックや背景を使用したりしている人がこれに該当します。

では、特殊なグラフィック ソフトウェアやビデオ制作機器を必要とせずに、モバイル デバイスでこれを実行できると想像してみてください。

これは AR の約束であり、PyTorch はトレーニング プロセスを大幅に高速化し、これらのモデルのサイズを縮小することでこれを可能にします。

たとえば、AR 体験に取り組んでいる研究者は、携帯電話のカメラのみを使用して、ビデオ内の人物の動きを追跡 (手や髪の毛の識別を含む) できる人物セグメンテーション モデルを作成しました。

ソフトウェアは、物理空間における人物の位置を捉えると、その人物の周囲に拡張現実のグラフィックを配置し、そのグラフィックが人物とどのように相互作用するかを示します。

△ 人物セグメンテーションにより、モバイルデバイス上で直接動画のARエフェクトを作成可能

これらのモデルが最初に開発されたときは、そのサイズと複雑さのために、特定の効果のためにモデルを展開するのに、バグを修正するためにモデルをデバッグする時間を除いて、最大 3 日かかることがありました。

次に、デバイス間の機能性の問題があります。一部のデバイスやオペレーティング システムではモデルが他のデバイスやオペレーティング システムほど高速に実行されない場合があり、ユーザー エクスペリエンスに一貫性がなくなることがあります。

現在では、PyTorch を使用して開発された同じモデルを、数秒ではなくとも数分で複数のデバイスやオペレーティング システムに展開できます。

モデルは、新しい最先端の PyTorch 拡張機能である Detectron2Go (D2Go) を使用してトレーニングされます。

D2Go は、開発者が機械学習モデルをトレーニング段階からモバイル デバイスへの展開段階まで移行できるようにする初めてのツールです。

今年 4 月に PyTorch へのモデル移行を完了して以来、推論時間は 14% 改善され、モデルの読み込み速度は 24% 向上し、チームは同じレイテンシで、より複雑で正確なモデルをモバイル デバイスに展開できるようになりました。

PyTorch がインターネット上の有害コンテンツとの戦いに加わる

Facebook AI の中心的な焦点は、ヘイトスピーチや誤報などの有害なコンテンツから人々を守るために最先端の機械学習技術を導入することです。

私たちの目標は、世界中のあらゆる言語とコミュニティにおけるあらゆる形式のコンテンツにおけるポリシー違反を迅速かつ正確に特定することです。

このタスクは、継続的にシステムを回避している敵に対して大規模に活動する場合、ますます困難になります。

これらの課題は複雑かつ微妙で、急速に変化しています。私たちは、AI が有害コンテンツを検出するより効果的なツールになる方法を引き続き模索していきます。そのために、Facebook AI のエンジニアは PyTorch を活用して、より強力な新しいモデルをより迅速に開発し、現在のモデルを改善しています。

Facebook のエンジニアは PyTorch を使用して Facebook AI Multimodal (FAIM) を開発しました。これは、開発者が特定の有害な問題 (誤報やヘイトスピーチなど) に合わせてカスタマイズされたマルチモーダル モデルを迅速に作成、最適化、展開できるようにする内部ライブラリおよび SDK であり、画像、テキスト、コメント、その他の要素を通じてコン​​テンツを包括的に識別できます。

FAIM モデルは、一連の異なるモデルに依存するのではなく、独自のコンテンツ タイプまたはパターンに焦点を当てており、あらゆる種類のコンテンツ (画像、ビデオなど) を分析できます。

1 つのモデルは、さまざまな形式の有害コンテンツを識別するようにトレーニングされたサービスである Whole Post Integrity Embeddings (WPIE) です。その結果、WPIE はコンテンツに対する理解を深め、さまざまな状況で有害なコンテンツを識別できるようになり、新しい形態の有害コンテンツが出現しても迅速に改善できるようになります。

これにより、コンテンツの分析がより高速かつ効率的で包括的になります。たとえば、一見無害な文章や画像でも、組み合わせるとまったく異なる文脈になることがあります。

現在、ユーザー向けマルチモーダル製品のモデルの 85% 以上が PyTorch と FAIM を使用しています。WPIE などの FAIM で作成されたモデルは、視覚的概念とテキスト概念の深い相互作用を理解しているため、有害なコンテンツをより正確かつ徹底的に検出できます。

FAIM のような AI ツールは問題のあるコンテンツに対処する唯一の方法ではありませんが、大規模な課題に対処する方法をより適切に理解するのに役立ちます。

テキスト読み上げ

音声アシスタントや類似のテクノロジーが普及するにつれ、当社のエンジニアは、使いやすさとユーザビリティの両面で、音声によるやりとりを人間の会話と同じくらい自然なものにするために取り組んでいます。

これらのシステムが人間のように動作し、音声を発するほど、私たちとシステムとのやり取りはよりシームレスになります。

現在、Facebook のエンジニアリング チームは PyTorch を使用して、Facebook の「名前の発音を教えてください」機能、Portal での音声インタラクション、テキスト読み上げ (TTS) 機能など、いくつかの音声アプリケーションのモデルを作成しています。

[[404251]]

Facebook の TTS チームは最近、特殊なハードウェアを使用せずに、CPU サーバー上で最先端のオーディオ品質を備えたシステムを構築し、導入しました。

新しい TTS システムは非常に柔軟性が高く、VR 音声機能や読み上げ補助機能など、よりリアルで自然な音声を実現する Facebook 製品全体の新しい音声アプリケーションの作成に役立ちます。

PyTorch は TTS チームの開発パイプライン全体を簡素化し、新しいモデルの開発、実験、トレーニングを容易にします。

モデルのトレーニングに関しては、PyTorch には便利で柔軟性があり、使いやすいインターフェース、Python コーディング、高度に最適化された演算子カーネルの包括的なスイート、効率的なマルチ GPU プリミティブが備わっており、モデルのデバッグが容易になり、大規模なトレーニングも高速化されます。

モデルの推論とデプロイメントに関しては、PyTorch には、計算グラフをデプロイメント環境にとって最も効率的な形式に変換できる強力な TorchScript ベースのモデル最適化パイプラインがあります。

PyTorch の軽量で高性能なモバイル ランタイムは、計算量とメモリ使用量が少ない高性能なモデル推論サービスをチームに提供します。

将来的には、PyTorch のおかげもあって、音声システムはより多くの言語を理解できるようになるだけでなく、声の高さや音量、さらには背景の雑音の量など、状況に応じた手がかりに応じて応答できるようになるでしょう。

光学文字認識

ご存知のとおり、インターネットは写真が集まる場所です。

△写真商社ゲッティイメージズの公式サイトのスクリーンショット

個人の写真やビジネス写真、地図やメニューなどの情報を含む画像、あるいは単なる面白いミームなど、画像内に表示されるテキストを理解することがますます重要になります。

写真検索、視覚障害者向けのスクリーンリーダー、有害コンテンツの識別と削除はすべて、画像や動画からテキストを分析できる機械学習システムに依存しています。

こうしたシステムの 1 つは、Facebook AI が開発した光学文字認識 (OCR) システムです。

OCR は、完全性から検索まで、さまざまなユースケースで、画像やビデオから複数の言語のテキストを見つけて抽出できます。 OCR フレームワークを PyTorch に切り替えることで、チームはシステムをより堅牢で使いやすくすることができました。

OCR には主に 2 つのモデルがあります。1 つはテキスト検出用、もう 1 つはテキスト認識用です。

テキスト検出モデルは、PyTorch に基づくオブジェクト検出モデルのライブラリである Detectron 2 を使用してトレーニングされます。デプロイしてデバッグします。

これらのモデルをトレーニングするために必要なデータの量とモデル自体のサイズを考えると、レイテンシーは開発者にとって懸念事項となることがよくあります。

しかし、PyTorch への移行ははるかにスムーズになり、モデルのアーキテクチャを迅速に実験して反復し、モデルをより効率的にデバッグおよびデプロイできるようになります。

チームは現在、トレーニングから展開まで完全に PyTorch に基づいた統合設計でテキスト検出とテキスト認識を処理できる新しいエンドツーエンド モデルを開発しています。

AI モデルを PyTorch に移行する利点は何ですか?

PyTorch 移行の目標は、エンジニアと開発者にとってよりスムーズなエンドツーエンドの開発エクスペリエンスを実現することです。

平均して、毎日 4,000 を超えるモデルが PyTorch 上で実行されます。

Facebook の開発者は、モデルが PyTorch に完全に移行されるまでに、重要なオフラインおよびオンライン テスト、トレーニング (多くの場合再トレーニング)、推論、公開など、複数の段階を経ます。

Caffe2 と PyTorch のパフォーマンスと正確性の違いを確認するための複数のテストも実施されましたが、エンジニアがこれを完了するには数週間かかる可能性があります。

Facebook のすべての AI ワークロードをサポートする基盤プラットフォームとして PyTorch を使用することで、エンジニアは数週間ではなく数分で新しい AI モデルを展開し、より強力で効率的なシステムを構築し、新しいエクスペリエンスを強化するなど、さまざまなことが可能になります。

一般的に使用される人工知能フレームワークとして PyTorch を使用する利点:

1. AIモデルの構築、プログラミング、テスト、デバッグが容易になる

2. 研究環境と生産環境がより密接に連携する

3. デバイスへの展開が高速化

現在、Caltech などの機関や AI 研究を推進する OpenAI などの企業を含む 1,800 を超える組織が PyTorch コミュニティに貢献しています。

フォーラムには 40,000 人を超えるアクティブ ユーザーがおり、GitHub には PyTorch を使用したダウンストリーム プロジェクトが 70,000 件以上あります。

学術界では、2019年6月から2020年6月までだけで、ArXivにおけるPyTorchの引用数が前年同期比で127%増加しました。

Google Scholar によると、PyTorch 論文のオリジナル版は 4,400 回以上引用されています。

[[404254]]

<<:  従来の AGV と比較した利点は何ですか? AMRロボット業界の状況は変化する

>>:  ロボットは拡大し続ける分野で反復的な労働に取って代わり、人間と機械の協働の時代が到来した。

ブログ    
ブログ    

推薦する

2020 年のデータサイエンスのトレンド

企業が自社が所有するビッグデータを高速かつ効率的、コスト効率よく革新的な方法で活用することをますます...

...

音声認識:市場の見通しは有望だが、コア技術にはまだブレークスルーが必要

人工知能製品が私たちの生活の中でますます普及するにつれて、テクノロジーの発展は社会の関心の焦点となっ...

未来を受け入れる: AIと教育テクノロジーによる教育の変革

新しいテクノロジー、特に人工知能 (AI) の急速な台頭により、教育と指導は大きな変化の瀬戸際にあり...

人工知能が再び警告を発する!研究者は懸念している:将来、研究者が全てを支配することになる

人間と超人工知能の関係の発展は、長年にわたり話題となっている。少し前に、「人工知能研究ジャーナル」で...

AutoML 2.0: データ サイエンティストは時代遅れか?

AutoML はここ数年で急速に成長しました。そして、景気後退が避けられない状況となった今、人工知...

Google DeepMind の最新研究: 敵対的攻撃は人間に対しても有効であり、人間も AI も花瓶を猫と間違える!

人間のニューラルネットワーク(脳)と人工ニューラルネットワーク(ANN)の関係は何ですか?ある先生が...

図解機械学習: ニューラルネットワークと TensorFlow によるテキスト分類

開発者はよく、機械学習を始めたいなら、まずアルゴリズムを学ぶべきだと言います。しかし、それは私の経験...

Yirendai - Yiren Hive Fintech AI 実践: Hive Robot

1. 金融テクノロジー金融テクノロジー: これは業界ではフィンテックと呼ばれています。 Wikip...

AIは人間の仕事を奪うが、これらの業界ではより多くの仕事も生み出すだろう

イーロン・マスク、ビル・ゲイツらは、人工知能(以下、AI)が「世界の終末」をもたらすだろうと国民に繰...

EllieMae が脅威ハンティングに AI を活用する方法

より積極的な基盤を構築するために、一部の組織では、攻撃が発生する前にデータを精査して高度な持続的脅威...

従来の不正検出ソリューションは機能していません。中小企業はどのようにして不正を防止できるでしょうか?

[51CTO.com からのオリジナル記事] モバイル インターネットの発展の初期から現在に至るま...