Uber Ludwig は、ローコード機械学習用のオープンソース フレームワークです。

Uber Ludwig は、ローコード機械学習用のオープンソース フレームワークです。

[[330500]]

【51CTO.com クイック翻訳】

ディープラーニング モデルのトレーニングとテストは、機械学習とデータ インフラストラクチャに関する深い理解を必要とする難しいプロセスです。機能モデリングからハイパーパラメータの最適化まで、ディープラーニング モデルのトレーニングとテストの方法は、現実世界のデータ サイエンス ソリューションが直面する最大のボトルネックの 1 つです。この部分を簡素化することで、ディープラーニング技術の導入が容易になります。ディープラーニング モデルのローコード トレーニングは新興分野ですが、すでに革新が起こっています。この問題に対する最も完全な解決策の 1 つは、Uber AI Labs から生まれました。 Ludwig は、コードを書かずに機械学習モデルをトレーニングおよびテストするためのフレームワークです。最近、Uber は Ludwig の 2 番目のバージョンをリリースしました。これには、機械学習開発者に主流のノーコード エクスペリエンスを提供するための機能の大幅な改善が含まれています。

Ludwig は、宣言型のコードフリー エクスペリエンスを使用して、機械学習モデルのトレーニングとテストのプロセスを簡素化することを目指しています。トレーニングは、ディープラーニング アプリケーションにおいて開発者の労力が最もかかる側面の 1 つです。通常、データ サイエンティストは、特定のトレーニング データセットでより高いパフォーマンスを実現するために、さまざまなディープラーニング モデルの実験に多くの時間を費やします。このプロセスにはトレーニングだけでなく、モデルの比較、評価、ワークロードの分散など、他のいくつかの側面も含まれます。ディープラーニング モデルのトレーニングは、非常に技術的な作業であるため、通常はデータ サイエンティストや機械学習の専門家に限定され、大量のコードが伴います。この問題はあらゆる機械学習ソリューションに共通していますが、通常多くのレイヤーと階層が関係するディープラーニング アーキテクチャでは特に深刻になります。 Ludwig は、変更とバージョン管理が容易な宣言型モデルを使用して、機械学習プログラムのトレーニングとテストの複雑さを隠します。

機能面では、Ludwig フレームワークは、特定のシナリオに対する機械学習モデルの選択、トレーニング、評価のプロセスを簡素化するために使用されます。 Ludwig は、さまざまな特定のニーズに合わせて最適化されたエンドツーエンドのモデルを作成するために組み合わせることができる一連のモデル アーキテクチャを提供します。概念的には、Ludwig はいくつかの原則に基づいて設計されています。

  • プログラミングは不要: Ludwig では、モデルをトレーニングするために機械学習の専門知識は必要ありません。
  • 汎用性: Ludwig はさまざまな機械学習シナリオで使用できます。
  • 柔軟性: Ludwig は、経験豊富な機械学習の専門家と経験の浅い開発者の両方が使用できるほど柔軟性があります。
  • スケーラビリティ: Ludwig はスケーラビリティを考慮して設計されています。新しいバージョンにはそれぞれ、コアモデルを変更せずに新しい機能が含まれます。
  • 解釈可能性: Ludwig には、データ サイエンティストが機械学習モデルのパフォーマンスを理解するのに役立つ視覚化要素が含まれています。

Ludwig を使用すると、データ サイエンティストは、トレーニング データを含む CSV ファイルとモデルの入力と出力を含む YAML ファイルを提供するだけで、ディープラーニング モデルをトレーニングできます。 Ludwig は、これら 2 つのデータ ポイントを使用して、マルチタスク学習ルーチンを実行し、すべての出力を同時に予測して結果を評価します。このシンプルな構造が、迅速なプロトタイピングを可能にする鍵となります。内部的には、Ludwig は継続的に評価され、最終的なアーキテクチャに統合できるディープラーニング モデルのコレクションを提供します。

Ludwig の背後にある主な革新は、特定のデータ タイプ用のエンコーダーとデコーダーの概念に基づいています。 Ludwig は、サポートされているデータ タイプごとに特定のエンコーダーとデコーダーを使用します。他のディープラーニング アーキテクチャと同様に、エンコーダーは生データをテンソルにマッピングし、デコーダーはテンソルを出力にマッピングします。 Ludwig のアーキテクチャには、コンバイナの概念も含まれています。コンバイナは、すべての入力エンコーダからのテンソルを結合して処理し、出力デコーダで使用するためにテンソルを返すコンポーネントです。

図1

データ サイエンティストは、トレーニングと予測という 2 つの主な機能に Ludwig を使用します。次のデータセットを使用してテキスト分類シナリオに取り組んでいるとします。

図2

Ludwig を使い始めることができます。次のコマンドを使用してインストールするだけです。

  1. pip インストール ルートヴィヒ 
  2. python -m spacy ダウンロード en

次のステップは、モデルの入力特性と出力特性を指定するモデル定義 YAML ファイルを構成することです。

  1. 入力機能:  
  2. -  
  3. 名前:テキスト 
  4. タイプ: テキスト 
  5. エンコーダー: parallel_cnn  
  6. レベル: wordoutput_features:  
  7. -  
  8. 名前: クラス 
  9. タイプ: カテゴリ

これら 2 つの入力 (トレーニング データと YAML 構成) を使用して、次のコマンドを使用してディープラーニング モデルをトレーニングできます。

  1. ルートヴィヒ実験 
  2. --data_csv ロイター-allcats.csv \    
  3. --model_definition_file モデル定義.yaml  

Ludwig は、トレーニングと予測中に使用できる視覚化要素のセットを提供します。たとえば、学習曲線の視覚化要素を使用すると、モデルのトレーニングとテストのパフォーマンスを把握できます。

図3

トレーニング後、次のコマンドを使用してモデルの予測を評価できます。

  1. ludwig predict --data_csv パス/to/data.csv --model_path /path/to/model  

他の視覚化要素を使用して、モデルのパフォーマンスを評価できます。

図4

ルートヴィヒの新着情報

Uber は最近、Ludwig の 2 番目のバージョンをリリースしました。このバージョンでは、モデルのトレーニングとテストのノーコード エクスペリエンスを向上させるように設計された一連の新機能がコア アーキテクチャに追加されています。 Ludwig の新機能の多くは、他の機械学習アーキテクチャまたはフレームワークとの統合に基づいています。主な機能は次のとおりです。

  • Comet.ml との統合: Comet.ml は、ハイパーパラメータの最適化と機械学習の実験のための市場で最も人気のあるプラットフォームの 1 つです。 Ludwig と Comet.ml の新しい統合により、データ サイエンティストのツールボックスに不可欠なハイパーパラメータ分析やリアルタイムのパフォーマンス評価などの機能が追加されます。
  • モデルの提供: モデルの提供は、機械学習プログラムのライフサイクルの重要な部分です。 Ludwig の新しいバージョンでは、シンプルな REST クエリを使用してトレーニング済みのモデルとクエリ予測を提供する API エンドポイントが提供されます。
  • オーディオ/音声機能: Ludwig 0.2 の最も重要な新機能の 1 つは、オーディオ機能のサポートです。これにより、データ サイエンティストは、非常に少ないコードでオーディオ分析モデルを構築できるようになります。
  • BERT エンコーダー: BERT は、ディープラーニングの歴史の中で最も人気のある言語モデルの 1 つです。 BERT は Transformer アーキテクチャに基づいており、質問への回答やテキスト生成など、多くの言語タスクを実行できます。 Ludwig は、テキスト分類シナリオのネイティブ ビルディング ブロックとして BERT をサポートするようになりました。
  • H3 関数: H3 は、位置を 64 ビットの整数にエンコードする非常に一般的な空間インデックスです。 Ludwig 0.2 は H3 を直接サポートし、空間データセットを使用した機械学習モデルの実装を可能にします。

Ludwig のその他の新機能には、視覚化 API の改善、新しい日付関数、テキスト トークン化における英語以外の言語のサポート強化、データ前処理機能の強化などがあります。特にデータ インジェクションは、次期 Ludwig バージョンの主要な焦点となるようです。

Ludwig はまだ比較的新しいフレームワークであり、多くの改善が必要です。ただし、ローコード モデルのサポートは、より幅広い開発者の間で機械学習の採用を促進するための重要な構成要素です。さらに、Ludwig は、市場で主流となっているいくつかの機械学習フレームワークの使用を抽象化し、簡素化します。

原題: Uber の Ludwig はローコード機械学習のためのオープンソースフレームワーク、著者: Jesus Rodriguez

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください]

<<:  AI + リアルタイム監視技術が公共サービスを改善する10の方法

>>:  ディープラーニングと群衆カウントの融合

ブログ    
ブログ    

推薦する

...

人工知能は伝染病との戦いに活用できるのか?

これまで、私たちは人工知能が医療業界にどのように貢献するかについて議論してきました。新型コロナウイル...

...

不動産の持続可能な開発を推進する4つのテクノロジートレンド

不動産業界は、エネルギー需要の 22% を占めていることから、変化する環境の中で持続可能性を確保する...

2018 年後半のディープラーニング プロジェクトをお見逃しなく!

[[252582]]ビッグデータダイジェスト制作翻訳者:fuma、Ni Ni、Jiang Baos...

AIを活用した臨床モニタリングシステムの台頭

[[355709]]現在、医療システムもさまざまな方法で人工知能の利点を取り入れています。人工知能(...

...

ミュンヘンモーターショーからのシグナル:自動車メーカーがOS開発に躍起になり、中国の力が増す

今年ドイツで開催された国際自動車・スマートモビリティ博覧会(IAA)では、Amazon、Qualco...

開発速度が20倍にアップしました! GPT Pilot スター プロジェクトが Github のホット リストに掲載され、AI をゼロから構築

新たなスタープロジェクトが誕生! AI 開発者コンパニオンである GPT Pilot を使用すると、...

AWS 上でディープラーニングホストを構築する (Windows 版)

この記事では、Amazon EC2 P2 インスタンスをレンタルして使用する方法について簡単に説明し...

...

...

Java プログラミング スキル - データ構造とアルゴリズム「バランス バイナリ ツリー」

[[390860]]バイナリソートツリーで起こりうる問題シーケンス {1,2,3,4,5,6} が...

顔認識技術の長所と短所

かつては、特に『スタートレック』や『2001年宇宙の旅』などのSF作品では未来の文明の進歩の象徴とみ...

AIを活用した未来における教育の再考

大学を卒業するデータ サイエンティストの数が依然として不足していますが、今後の AI 革命には、AI...