Angel: 新しい分散型機械学習システム

Angel: 新しい分散型機械学習システム

Angel は、パラメータ サーバーの概念に基づいた分散型機械学習フレームワークであり、機械学習アルゴリズムを高次元モデル上で簡単に実行できます。 Angel はモデル共有という中核概念に焦点を当て、大規模な高次元モデルを複数のパラメータ サーバー ノードに合理的に分割し、効率的なモデル更新インターフェイス、操作機能、変数同期プロトコルを通じてさまざまな効率的な機械学習アルゴリズムを実装します。優れた設計のおかげで、Angel は独立して実行でき、さまざまな機械学習アルゴリズムを効率的に実行できるだけでなく、Spark や既存のディープラーニング フレームワークをサポートして高速化する PS サービスとしても機能します。業界からの膨大なデータに基づいて繰り返し実践と調整が行われており、幅広い適用性と安定性を備えています。モデルの次元が高くなるほど、その利点は明らかになります。

既存の機械学習システムは、さまざまな種類の機械学習タスク用に構築されています。データフローシステムの Hadoop と Spark は、一般的なデータ処理タスクや機械学習パイプラインの構築に適していますが、パラメータ共有メカニズムが欠如しており、単一ポイントのボトルネックによるパフォーマンスの問題があります。グラフコンピューティングシステムの GraphLab、GraphX、Tux2 は、機械学習の計算をグラフ構造に抽象化します。グラフ構造の特性を利用して高速化できますが、スパースグラフ構造のアルゴリズムにしか適していません。ディープラーニングシステムの TensorFlow、MXNet、Caffe2 は、パラメータサーバーまたは Allreduce 方式を使用して分散ニューラルネットワークをトレーニングします。これらのシステムの特長は、GPU を使用してニューラルネットワークの計算を高速化できることですが、スパースグラフ構造の最適化とサポートが不足しています。

Angel は、分散機械学習の共通性を設計において抽象化し、洗練させます。この記事は、分散機械学習の核心部分はパラメータ共有にあると考えています。効率的なパラメータ共有メカニズムを提供できれば、さまざまな機械学習タスクを拡張し、加速することができます。そのため、Angel は PS サービス機能を提供し、2 つの動作モードをサポートします。モードの 1 つは PS サービス モードと呼ばれ、このモードでは Angel はマスター サーバーとパラメーター サーバーのみを起動し、特定のコンピューティング タスクは他のコンピューティング プラットフォーム (Spark、TensorFlow など) によって完了します。このモードでは、Angel はパラメーター サーバーの機能を提供する役割のみを担います。別のモードでは、Angel はワーカーも起動し、モデルのトレーニングを完了する役割を Angel が担います。 Angel は PS サービス機能を提供し、さまざまな種類の機械学習タスクを処理し、より便利な機械学習開発エクスペリエンスを提供できるようにします。

さらに、Angel は、(1) さまざまなクラスター環境での高速化のための複数のパラメーター同期プロトコル、(2) アルゴリズム開発を容易にする使いやすく豊富なインターフェイス、(3) アルゴリズムのスケーラビリティを向上させるデータ並列処理およびモデル並列処理機能、(4) 複雑な環境でのタスクの動作を保証する効率的なフォールト トレラント メカニズムも提供します。実際のデータセットで比較した結果、複数の機械学習アルゴリズムにおける Angel のパフォーマンスは、XGBoost、Spark、Petuum、TensorFlow などの一般的な機械学習システムよりも優れています。現在、AngelはTencent Videoのクリック予測や広告推奨など実際のビジネスに応用されています。

Angel のオープンソース システムは、北京大学と Tencent の共同イノベーション ラボによって開発されました。業界における高い可用性と学術コミュニティにおけるイノベーションの両方を考慮しています。GitHub で完全にオープンソース化されており、ロジスティック回帰、SVM、KMeans、LDA、MF、GBDT などの複数の機械学習アルゴリズムを統合して最適化します。 Angel は現在 Java と Scala をベースに開発されており、将来的には Python やその他の言語インターフェースが追加され、さらに使いやすくなる予定です。将来的には、Angel の PS サービス機能がさらに活用され、グラフ コンピューティングやディープラーニング フレームワークがサポートされるようになります。

<<:  Ele.meにおける人工知能の応用

>>:  2か月でAIをゼロから学んだ方法とは?

ブログ    
ブログ    
ブログ    

推薦する

...

[文字列処理アルゴリズム] 入力文字列の各単語の順序を逆にするアルゴリズム設計とCコード実装

1. 要件の説明文字列を入力し、文字列内の単語を逆順に組み立てて出力するプログラムを作成します。たと...

...

...

...

人工知能はどれくらい怖いのでしょうか?アメリカはAI兵器を開発し、イランの科学者は死亡した

[[358758]]人工知能はかつてはSF映画にしか登場しない言葉でした。しかし、通信、ビッグデータ...

ディープラーニングタスクに最適な GPU を選択するにはどうすればよいでしょうか?

ディープラーニングは計算集約型の分野であり、GPU の選択によってディープラーニングの実験が根本的に...

2024 年に向けた 6 つの生成 AI 予測

アナリストの Mike Leone 氏は、オープンソースから規制の変化まで、生成 AI の今後を予測...

...

タオバオ:電子商取引環境における強化学習のいくつかのアプリケーションと研究に関する30,000語の詳細な分析

背景検索技術が発展するにつれ、検索シナリオにおける教師あり学習アルゴリズムの限界が徐々に認識されるよ...

将来の戦争において、AIは最も危険な兵器となるのでしょうか?

AI兵器は歴史の流れとともに進化し、今日では危険な一歩となっている。 [[406883]] AIは...

...

...