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の方法

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

ブログ    
ブログ    
ブログ    

推薦する

...

高校時代の位相除算と位相減算のアルゴリズムについて

[[356850]]プログラミングの本質はアルゴリズムから来ており、アルゴリズムの本質は数学から来て...

中国の新世代人工知能の新たなハイライトは何ですか?

[[255971]] 「インターネット+」から「AI+」まで、人工知能技術は経済と社会の発展に大き...

AIの活用を拡大するには? 人工知能には「1%の問題」がある

人工知能(AI)については多くの報道や解説がなされてきました。奇跡を起こすことができると言う人もいれ...

Google 検索に AI による要約、定義、コーディングの改善が追加

Google 検索に AI による要約、定義、コーディングの改善が追加Google は、約 3 か月...

日本のメディアは、監視と保護に加えて感染症の予防にも役立つ鳥類識別AIの中国での推進に注目している。

日本のメディアZDNETは6月29日、中国が全国規模で鳥類識別AIの普及を推進しているとの記事を掲載...

この敵対的アルゴリズムは顔認識アルゴリズムを失敗させ、WeChatやWeiboの写真圧縮にも抵抗できる。

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

...

...

AI は鉱業をどのように改善できるのでしょうか?

[[279594]]データとマイニングという言葉を組み合わせると、IT とテクノロジーが連携して企...

コアアルゴリズムの欠如により、人工知能の開発は「ボトルネック」のジレンマに直面している。

[[264142]] 「中国で人工知能の基本アルゴリズムの研究に携わっている数学者は何人いるのか?...

...

...