取引のためのONNXの学習 - ページ 6

 

ONNX ランタイムによる応用機械学習



ONNX ランタイムによる応用機械学習

Microsoft のプリンシパル Education Cloud Advocate である Jennifer Looper が、このビデオでアプリ構築、機械学習、データ サイエンスの収束について説明しています。彼女は Web 用のスマート アプリを構築することを推奨し、機械学習テクノロジをアプリに組み込むために、ml5.js、Magenta.js、PoseNet、Brain.js などのさまざまな JavaScript API を調べています。 Looper は、古典的な機械学習に対する scikit-learn の有用性を強調し、ニューラル ネットワークの重いソリューションを必要としない強力なツールとしてそれを推奨しています。また、機械学習と深層学習モデルを構築するための共通の演算子セットを定義することでトレーニングと推論を最適化する Onnx ランタイムについても説明し、教師あり機械学習を使用して基本的な分類タスクを実行するプロセスを説明するために、Kaggle からデータを取得します。次にスピーカーは、機械学習モデルを使用してレコメンデーション エンジンを構築する方法を実演し、機械学習についてさらに学習するために Microsoft のオンライン リソースにアクセスすることを提案します。彼女は、Onnx ランタイムは、カリキュラムの一部として初心者に適しているか、機械学習についてもっと学びたい人に適していると結論付けています。

  • 00:00:00 このセクションでは、Microsoft のプリンシパル Education Cloud Advocate である Jen Looper が、アプリ構築と機械学習およびデータ サイエンスの間の収束について説明します。彼女は、特にインテリジェンスが注入され、バックグラウンドで機械学習アルゴリズムを実行する新しいアプリに直面して、今日のモバイル アプリを作成する際の課題について説明します。 Looper は、インテリジェントなエクスペリエンスに対するこの新しい需要が、最初にインディー アプリ開発者が直面する課題に貢献したと主張しています。

  • 00:05:00 このセクションでは、講演者はスマート アプリの構築方法と、アーキテクチャ上の決定事項と技術スタックがこのプロセスを導くものについて説明します。オプションには、ネイティブ アプリのビルド、Web 用のビルド、またはデスクトップ用のビルドが含まれます。講演者は、スマートなアプリを構築するために Web に固執することを推奨し、Web 開発者と機械学習エンジニアの間のスキルセットの違いにもかかわらず、これらの分野を収束させる方法があることを説明します。講演者は、機械学習モデルの正確な配信と継続的な改善を保証する ML Ops チームだけでなく、DevOps、データ ソーシングとクリーニング、トレーニング、反復の使用を引用して、開発者と機械学習エンジニア間のコラボレーションを説明します。

  • 00:10:00 個人的な逸話として、講演者は、機械学習エンジニアリングと Web アプリの作成における隔たりを埋めることは、架け橋への恐怖を克服するよりも困難ではないことを説明しています。講演者は、TensorFlow.js、Brain.js、ONNX など、機械学習技術を Web アプリに組み込むためのさまざまなツールを紹介します。彼女は各ツールの利点を強調し、視聴者に TensorFlow ウェブサイトを探索して、それらが提供するクールなデモを発見するよう勧めています。彼女はまた、ONNX ランタイムと、ONNX ベースのモデルを Web アプリに導入するその機能にも焦点を当てています。全体として、講演者は、機械学習技術を使用してアプリを強化するために利用できるツールに関する知識をアプリ開発者に提供することを目的としています。

  • 00:15:00 ビデオのこのセクションでは、事前にトレーニングされたモデルで使用できるさまざまな Javascript API について講演者が説明し、ブラウザで人工知能を探索および作成します。これらの 1 つは、Tensorflow の上に構築され、画像認識と音声分析の例を提供する ml5.js です。言及されている別の API は、事前にトレーニングされたモデルを使用してブラウザーで音楽とアートを作成する Magenta.js です。スピーカーは、全身、顔、または手だけの単一または複数のポーズを推定するために使用できる PoseNet についても話します。最後に、講演者は、ブラウザおよび Node.js 上の Javascript でニューラル ネットワークを実行できるようにする Brain.js を紹介します。

  • 00:20:00 このセクションでは、講演者は機械学習モデルのトレーニングに JavaScript とブラウザを使用することの制限について説明し、この目的には優れた環境ではなく、既製のモデルを実行するのにより適していることを示唆しています。既存のものを再訓練します。彼らは、より堅牢で適切な機械学習モデルを得るには Python を使用することを推奨しており、プログラマーは危険にさらされる十分な Python を学習し、Jupyter Notebook を使用してモデルをトレーニングすることができます。また、画像やその他のメディアのトレーニングに loeb.ai などのサービスを使用することについても説明しています。

  • 00:25:00 このセクションでは、講演者は TensorFlow を機械学習に使用する代わりの方法である scikit-learn について説明します。講演者は、すべての機械学習の問題にニューラル ネットワークが必要なわけではないと説明し、ニューラル ネットワークを使用しないカリキュラムを GitHub で作成しました。また、scikit-learn を使用して、ONNX ランタイムを利用した料理レコメンデーション アプリケーションを作成した方法も示しています。これにより、ユーザーは材料を入力し、それらの材料で作ることができる料理の種類の提案を受け取ることができます。講演者は、古典的な機械学習に対する scikit-learn の有用性を強調し、ニューラル ネットワークの重いソリューションを必要としない強力なツールとして、scikit-learn を推奨しています。

  • 00:30:00 ビデオのこのセクションでは、スピーカーは、分類、回帰、クラスタリングなどの基本的な機械学習タスクの例とドキュメントを提供するオープンソースの機械学習フレームワークである scikit-learn を紹介します。彼らは、scikit-learn はデータ サイエンティストの間で人気のあるフレームワークであり、numpy、scipy、および matplotlib にバンドルされているため、誰でもアクセスできると説明しています。次にスピーカーは、機械学習と深層学習モデルを構築するための共通の演算子セットを定義することでトレーニングと推論を最適化する Open Neural Network Exchange (Onnx) の製品である Onnx ランタイムについて説明します。 Onnx ランタイムは、さまざまなフレームワーク、ツール、およびランタイムをサポートし、AI 開発者が好みのフレームワークを選択した推論エンジンで使用できるようにします。講演者は、Python を使用したデータのクリーニング、scikit-learn を使用したモデルのトレーニング、skl to Onnx ライブラリを使用した Onnx ランタイムで使用するためのモデルの変換を含む、典型的な機械学習ワークフローの概要を説明します。

  • 00:35:00 ビデオのこのセクションでは、講演者がさまざまな種類の料理に関するデータを Kaggle から入手し、データをきれいにしてバランスを取る方法を説明しています。データセットには、インド、タイ、韓国、日本、または中国に分類される 100 の潜在的な成分が含まれています。モデルを構築するには、結果を最適化するためのアルゴリズム、分類器、およびソルバーを選択する必要があると講演者は説明します。データ セットは小さく、約 700 のデータ ポイントしかありません。データにはラベルが付けられています。これは、教師あり学習を使用できることを意味します。講演者は、機械学習アプリケーションで使用するためにデータを整形してクリーニングする前に、データを理解することの重要性を強調しています。

  • 00:40:00 このセクションでは、プレゼンターは、教師あり機械学習を使用して基本的な分類タスクを実行し、マルチクラス分類アルゴリズムを選択するプロセスについて説明します。プレゼンターは、マルチクラス分類のチート シートを提示し、データ セットの性質とローカルでのトレーニングのためにニューラル ネットワークを除外します。残っている 2 つの多クラス分類アルゴリズムは、ロジスティック回帰とデシジョン フォレストです。プレゼンターは、ロジスティック回帰を選択し、マルチクラス分類を処理するために 1 つと残りを選択します。次にプレゼンターは、正しいソルバーを選択することの重要性を説明し、liblinear ソルバーを選択します。プレゼンターは lr fit を使用してモデルをトレーニングし、パクチー、タマネギ、エンドウ豆、ジャガイモ、トマト、および植物油を含むレシピを使用してその精度をテストし、71% の精度を報告しています。プレゼンターは、利用可能なデータとラベルの量に基づいて適切なアルゴリズムを選択するのに役立つ Scikit-learn アルゴリズム チート シートも提示します。

  • 00:45:00 このセクションでは、講演者は、機械学習モデルを構築する際に適切な分類アルゴリズムを選択することの重要性について説明します。彼らは、さまざまな分類器とソルバーを試して、どれが最高の精度をもたらすかを示しています。サポート ベクター分類子 (SVC) を選択した後、モデルを再構築し、その精度をテストしました。モデルの精度に満足したら、それを Onyx ファイルに変換し、Onyx ランタイムを使用して Web アプリケーションを構築しました。講演者は、一連のチェックボックスを備えた単純な Web アプリケーションを作成して、インポートされたモデルに成分データをフィードし、非同期関数を使用して推論を開始した方法を説明します。次に、Web アプリのデモを行い、モデルが何を示唆しているかを確認しました。

  • 00:50:00 ビデオのこのセクションでは、機械学習モデルを使用してレコメンデーション エンジンを構築する方法を示します。材料のリストを入力することで、モデルはどのような料理を作ることができるかを提案します。さらに、講演者は、クラスタリング、回帰、分類、強化学習、自然言語処理、時系列アプリケーションなど、さまざまなトピックに関する無料のコンテンツを提供する Microsoft のオンライン リソースを通じて、機械学習についてさらに学ぶよう視聴者に勧めます。講演者は、視聴者に質問をしたり、ウェブサイト mycommworld.com のコンテンツに参加したりすることを奨励しています。

  • 00:55:00 このセクションでは、Onnx ランタイムが初心者にとって優れたツールであるかどうかを質問します。答えはイエスです。講演者の 1 人は独学の Web 開発者であり、十分に努力すれば誰でも何でも学べると信じています。そのため、Onnx ランタイムは、カリキュラムの一部としての初心者や、機械学習についてさらに学びたい人に適しています。
Applied Machine Learning with Onnx Runtime
Applied Machine Learning with Onnx Runtime
  • 2021.12.02
  • www.youtube.com
This conference talk was delivered via the One Million Arab Coders initiative. It gives an overview of what applied ML is, how we need to bridge the divide b...
 

これまでにない ONNX のパワーを Spark にもたらします



これまでにない ONNX のパワーを Spark にもたらします

このビデオでは、Huawei の Shivan Wang が、推論のために ONNX の能力を Spark にもたらす方法を説明しています。彼は、Spark に DL モデルを展開する際の課題と、Spark コミュニティがプロセスを簡素化するために Spip と呼ばれる提案をどのように開始したかについて説明します。講演者は、ファーウェイの AI プロセッサ、Ascent、および複数の Ascent プロセッサ モデルと Atlas ハードウェアを含む Ascent AI エコシステムについても説明します。彼は、モデル変換を必要とせずに、Ascent ハードウェアで ONNX モデルを直接使用するために、次のランタイムで新しい実行プロバイダーとして Con を追加することを提案しています。最後に彼は、ONNX のパワーを Spark にもたらす POC コードがほぼ完成していることに言及しており、興味のあるユーザーがメッセージを残して議論し、テスト目的でリソースを提供する可能性があることを歓迎しています。

  • 00:00:00 このセクションでは、Huawei の Shivan Wang が、推論のために Onyx のパワーを Spark にもたらす方法について説明します。彼は、明確に定義されたデータ フレーム推論インターフェイスは、データ エンジニアにとって非常に使いやすく、データを簡単に読み込んで機能エンジニアリングを完了することができると説明しています。ただし、AI フレームワークと内部のプレサンプルの間にはギャップがあり、Spark での DL モデルのデプロイは困難です。プロセスを簡素化するために、Spark コミュニティは Spip と呼ばれる提案に関する議論を開始しました。これは、Spark と AI のプロセスがスモール セルに影響を与えるためのシンプルな API を提供します。最後に、Spark executor で Onyx 推論を実行することにより、ユーザーは Onyx 推論プラットフォームを利用して、ビッグ データに対する Onyx の影響を簡単に完了することができます。

  • 00:05:00 このセクションでは、スピーカーは Ascent と呼ばれる Huawei の AI プロセッサと、複数の Ascent プロセッサ モデルと Atlas ハードウェアを含む Ascent AI エコシステムについて説明します。 Ascent エコシステムのソフトウェア レイヤーは Cam と呼ばれ、開発者が Ascent プラットフォームに基づくサービスの下で AI アプリケーションを迅速に構築するのに役立つ API を提供します。他のハードウェアで ONNX モデルを実行するには、ユーザーはまず Con が提供するモデル変換ツールを使用して、モデルを ONNX から Ascent に変換する必要があります。ただし、講演者は、次のランタイムで新しい実行プロバイダーとして Con を追加することをお勧めします。これにより、ユーザーはモデル変換を必要とせずに、Ascent ハードウェアで ONNX モデルを直接使用できるようになります。彼らは、今年末までにすべての ONNX オペレーター サポートを終了し、ONNX モデル Zoo のすべてのモデルが Ascent で適切に動作することを保証し、来年にはさらなる開発を行う予定です。

  • 00:10:00 このセクションでは、スピーカーは、ONNX の機能を Spark に導入するための POC コードがほぼ完成しており、追加操作などの基本的な操作を正しく実行できると述べています。また、関心のあるユーザーにメッセージを残して議論し、テスト目的でリソースを提供するように勧めます。このセクションは、視聴してくれた視聴者に感謝することで締めくくられます。
Bring the power of ONNX to Spark as it never happened before
Bring the power of ONNX to Spark as it never happened before
  • 2022.07.13
  • www.youtube.com
Both data processing platforms and deep learning frameworks are evolving in their own fields. Usually, Spark is used for offline data processing, and then va...
 

Builders Build #3 - ONNX を使用した Colab から本番環境へ



Builders Build #3 - ONNX を使用した Colab から本番環境へ

このビデオは、ONNX を使用して Colab から本番環境にプロジェクトをデプロイするプロセスを示しています。プレゼンターは、シグナルの前処理、デプロイ用のコードの変更、AWS Lambda でのハンドラーの作成、ウェブサイトでの音声入力の受け入れ、関数の S3 へのアップロード、ONNX の依存関係のデプロイなど、さまざまな側面をカバーしています。いくつかの問題に遭遇したにもかかわらず、講演者は AWS を使用してモデルを正常にデプロイし、今後のステップのためにブラウザロード base64 ファイルオブジェクトまたはサウンドファイル読み取りビットを使用できることを提案しました。

さらに、このビデオでは、SimCLR モデルを使用してオーディオの対照学習を行い、モデルに曲をフィードしてカタログを作成し、PyTorch でトレーニングしてゼロ損失と k=1 でのリコールを達成する方法を紹介しています。プレゼンターは、本番環境で PyTorch を使用する際の課題について説明し、ソリューションとして ONNX を提案します。このビデオでは、PyTorch モデルを ONNX 形式でエクスポートおよびロードし、推論を実行する方法を示します。また、Torch Audio および Numpy ライブラリを使用してオーディオ ファイルを処理する方法を示し、デプロイ用に PyTorch モデルをセットアップする際の問題をトラブルシューティングします。このビデオでは、モデルを Colab ノートブックでの開発から本番環境に移行する方法についての洞察を提供します。

  • 00:00:00 このセクションでは、SimCLR モデルを使用した視覚的表現の対照的な学習のための単純なフレームワークについて説明します。これには、画像に適用された一連の異なる変換から 2 つのランダムな変換をサンプリングし、2 つの異なる画像 (xこれらはエンコーダ (resnet 50) に渡され、射影関数 (MLP) に渡された 2 つのベクトル (hi と hj) が与えられ、2 つの射影 (zi と zj) が返されます。目標は、対比損失を使用して f と g を学習し、モデルの 2 つの投影の出力が非常に近くなるように、2 つの投影のコサイン類似性を最大化することです。スピーカーは、このフレームワークをオーディオに適用します。入力は画像ではなく、スペクトログラムに変換された信号であり、ローパス フィルターを使用して、さまざまな変換の 1 つとして再生速度を変更します。

  • 00:05:00 このセクションでは、プレゼンターは、モデルに使用された NT_Xent 損失の実装について説明します。これは、正のペアと負のペアの合計を含むクロスエントロピー損失です。彼らはまた、トレーニング データと同じテスト データを使用し、k での再現率をメトリックとして使用することによって、評価中に少しごまかすことについても話します。最後に、彼らは、lightning という Web サイトで損失関数の実装を見つけ、ダミー データでテストしたところ問題なく動作したと述べています。

  • 00:10:00 このセクションでは、スピーカーは、各曲を表す一連のベクトルを取得するためにモデルに入力して曲のカタログを作成し、対応するタイトル、オーディオ信号、およびインデックス表現。次に、特徴とカタログ インデックスの内積をとって類似性を計算し、ベクトルを正規化し、k でのリコールを計算して、最適な一致を決定しました。彼らは PyTorch で通常のトレーニング ループを使用し、LARS オプティマイザーを追加しました。これにより、モデルがゼロ損失に収束し、k が 1 に等しいリコールを達成するのに役立ちました。つまり、一貫して正しい曲を予測しました。次に、スピーカーは本番環境で PyTorch を使用する際の課題について説明し、ONNX を使用したソリューションを提示します。これは、他のフレームワークとのシームレスな統合とさまざまなデバイスへの展開を可能にする形式です。

  • 00:15:00 このセクションでは、講演者は ONNX の使用について説明します。ONNX は、クラウドでホストするために PyTorch や TensorFlow などの他のフレームワークからモデルをインポートできるようにする軽量の推論フレームワークです。スピーカーは、ONNX を利用して音声データの推論を実行し、音声からスペクトログラムを取得し、スペクトログラムでモデルを実行し、予測を含む JSON オブジェクトを返す Python ハンドラー関数を構築する予定です。講演者は、ONNX を使用するには、モデルを .onnx ファイル拡張子として保存する必要があることを指摘し、モデルを PyTorch から ONNX にエクスポートするプロセスを説明します。

  • 00:20:00 このセクションでは、スピーカーは torch.one および x.export 関数を使用して PyTorch から ONNX 形式にモデルをエクスポートする方法を説明します。ダミー入力により、ONNX 形式は入力ファイルの予想される形状を理解できるようになり、出力名と入力名は辞書または JSON オブジェクトを使用して指定されます。スピーカーは、simclr という名前のモデルを現在のタイムスタンプでエクスポートする例を提供し、export params を使用してトレーニング パラメータの重みをモデル ファイル内に保存し、ラムダ関数を追加してモデルのタイムスタンプを取得する方法を示します。

  • 00:25:00 ビデオ作成者が ONNX を使用してモデルを読み込んで推論を実行する方法を探る新しいセクションを開始します。推論セッションの作成と、モデル パスからのモデルの読み込みについて説明します。作成者はモデルを API に組み込むことを計画していますが、ハンドラーで音声を取得する方法がわかりません。彼らは base 64 のものを使用することを検討し、それをテストするために新しいファイルを作成します。次に、モデルをロードせずに推論を実行する方法の議論に移り、代わりにそれに集中することにしました。

  • 00:30:00 このセクションでは、スピーカーは、numpy 配列を使用する代わりにトーチ オーディオを使用するようにコードを変更する方法について説明します。話者はトーチ オーディオを使用できることを発見し、先に進むためにそれをインストールします。次に、入力名と出力名の変更について話し合い、出力を「射影」と呼んで、ライブラリに対してコサイン類似度を計算します。ライブラリは、タイトルの配列、波形の配列、話者がコサイン類似度の計算で使用する予定の投影の配列を持つ JSON オブジェクトとして設定されます。

  • 00:35:00 このセクションでは、スピーカーがコードを書き、プロセスを声に出して説明しています。彼らは、音楽ライブラリ内の曲のリストを並べ替えるスクリプトを作成し、その過程で、行列の乗算、類似性、並べ替えアルゴリズムなどのさまざまな手法について説明します。スピーカーは JSON ライブラリも読み込み、スクリプトで利用します。このビデオは、ONNX フレームワークを使用したコラボレーションから本番までのソフトウェア構築に関するシリーズの一部です。

  • 00:40:00 このセクションでは、プレゼンターが ONNX を使用してカタログを生成し、JSON 形式で保存する方法を示します。カタログは配列から作成され、プレゼンターは `dump()` 関数を使用して JSON ファイルとしてカタログをダンプする前に形状をチェックします。その後のエラーは、`catalog` を `library` のコピーに変更することで解決されます。次に、プレゼンターは `tolist()` メソッドを使用して配列をリストに変換し、JSON ファイルをダウンロードします。最後に、プレゼンターは `load()` 関数を使用して保存された JSON ファイルをロードする方法を示します。

  • 00:45:00 このセクションでは、スピーカーは Python で Torch Audio と Numpy ライブラリを使用してファイル パスからオーディオ ファイルを処理するアプローチについて説明します。彼らは、Torch Audio をダウンロードし、その「信号の前処理」メソッドを使用して、オーディオ ファイルの再サンプリングと前処理を行うと説明しています。次に、Numpy の mean 関数を使用して、次元を維持しながら処理された信号の平均を計算し、np.pad を使用して信号をパディングします。全体として、講演者は処理方法を明確かつ簡潔に説明しています。

  • 00:50:00 ビデオのこのセクションでは、スピーカーは関数を使用して波形のスペクトログラムを取得しようとしています。ただし、関数がターゲット サンプル レートを認識せず、エラー メッセージが表示されるという問題があるようです。スピーカーはテスト クリップを使用してトラブルシューティングを試み、スペクトログラムの形状を出力すると、予期しない出力が返されます。入力の問題なのかモデルの問題なのか、正確に何が問題を引き起こしているのかは不明です。

  • 00:55:00 このセクションでは、スピーカーはデプロイ用に PyTorch モデルをセットアップしようとしたときに表示されたエラー メッセージのいくつかを評価し、Torch パッケージのサイズと互換性のない依存関係に関する問題を特定します。彼らは、Torch Audio でロードされたファイルが 1GB を超えるメモリを必要とすることを指定しているため、大きなファイル入力でモデルを実行する際に問題が発生する可能性があることに注意しています。これを解決するには、代わりに librosa でファイルをロードし、周波数などの仕様を変換してファイルをロードするときに Torch Audio を置き換えることを提案しています。全体として、このセクションでは、モデルを Colab ノートブックでの開発から本番環境へのデプロイに移行するときに発生する可能性のある問題のいくつかを強調することに焦点を当てています。

  • 01:00:00 このセクションでは、スピーカーは Torch と Torch オーディオをインストールしてプロジェクトの構築を続けますが、このプロジェクトのサイズはまだ 500 メガバイト未満の小さいサイズです。 Librosa と resample を使用して、信号が元のサンプリング レートとターゲット サンプリング レートで返されるようにします。スクリプトの実行中にいくつかのエラーが発生し、結果がおかしくないことを確認するために異なるチャネルを混在させる必要があることに気付きました。彼らはトラブルシューティングを続けて、プロジェクトが期待どおりに機能することを確認します。

  • 01:05:00 このセクションでは、スピーカーは信号の前処理とさまざまなチャンネルの読み込みを行っています。信号にチャネルが 1 つしかないという問題が発生し、それを複数回展開する必要があります。スピーカーは numpy とスクイーズ エクスパンド ディムを使用して問題を解決し、最終的に変更をコミットします。

  • 01:10:00 このセクションでは、スピーカーはコードを変更して、SpeakFluent REST API のデプロイを許可します。これは、リクエストを処理してから推論を実行する機能です。ハンドラーを変更して、オーディオ ファイルとファイル名を持つ要求を取得し、ファイルをローカルに保存します。 Torch を使用せずに ONNX ランタイムを使用して推論を実行し、最適な一致を返します。

  • 01:15:00 このセクションでは、スピーカーはアプリケーションのソース python ハンドラについて説明します。これは現在、曲のタイトルとそれに対応する最適なタイトルの配列を返します。講演者は、S3 バケットの URI と最適一致の一致率を返すことを含む、ハンドラーへの将来の追加についても言及しています。スピーカーは休憩を取り、AWS Lambda 関数にアップロードしてデプロイできる実際のハンドラーの作成に戻ります。

  • 01:25:00 ビデオのこのセクションでは、プレゼンターが、スクリプトとイベントを使用して AWS Lambda でハンドラーを作成する方法を説明しています。 Lambda ハンドラーは、リクエストではなくイベントを受け取るように設計されており、イベントからフォームの音声部分を受け取ります。プレゼンターは、プロセスにはフロントエンドでフォームを作成し、音声入力から ID を取得することが含まれていると説明しています。

  • 01:30:00 ビデオのこのセクションでは、開発者が Javascript を使用して Web サイトで音声入力を受け入れ、ファイルをサーバーにアップロードして処理するプロセスについて説明しています。開発者は、ウェブサイトに録画ボタンを追加し、Javascript を使用してファイルを作成し、サーバーに自動的にアップロードすると説明しています。次に、アップロードされたファイルで推論を呼び出し、JSON.dumps を使用して本文と共に 200 ステータス コードを返すことについて説明します。開発者は、効率を高めるために、ファイルの代わりにオーディオの base64 エンコーディングを使用することも検討しています。彼らは、AWS で Lambda ランタイムを使用して Python で ONNX 推論を実行するプロセスを調べます。

  • 01:35:00 このセクションでは、スピーカーは S3 に関数をアップロードし、Diva という名前のプロジェクト用にゼロから新しい関数を作成するプロセスについて説明します。話者はそのプロセスに苛立ちを表明しますが、Python 3.9 を使用して新しい関数を作成し、ARM の違いについて議論し、ファイルを関数に直接アップロードすることも検討しています。

  • 01:40:00 このセクションでは、スピーカーが Cloud Functions ダッシュボードを探索し、zip ファイルをアップロードする方法、イベント形式を JSON に変更する方法、および新しいイベントを作成する方法を示します。また、メモリおよび環境変数の追加構成の必要性についても説明しています。その後、スピーカーは base64 オーディオで録音を追加しようとしますが、利用可能なオプションで問題が発生します。

  • 01:45:00 このセクションでは、スピーカーは大きな JSON ファイルをコピーして貼り付け、AWS Lambda デプロイ パッケージとして保存しているようです。彼らは別の方法を使用したいと述べていますが、最終的にはそれを削除し、代わりに Lambda ハンドラーを使用することにしました。ただし、いくつかのものをインストールし、パッケージを AWS にアップロードする方法を見つけようとする必要があります。また、エクスポート機能についても説明します。

  • 01:50:00 このセクションでは、スピーカーは、オープンソースのモデル管理プロジェクトである ONNX に必要な依存関係をコンパイルして展開する手順について説明します。彼らは、互換性の問題を回避するために Lambda と同様の環境でコンパイルすることが重要であると説明し、ONNX ランタイム フォルダーを見つけて展開パッケージにコピーすることを提案しています。このプロセスは「面倒」と見なされる可能性がありますが、スピーカーは、コードが適切に機能することを確認する必要があると説明しています。次に、必要な依存関係 (librosa、scipy、numpy など) をリストし、最大 200 メガバイトになる展開パッケージのサイズについて説明します。

  • 01:55:00 このセクションでは、スピーカーが AWS でモデルをデプロイするために必要な手順について説明します。軽量の Lambda ハンドラーを作成し、AWS limitout を使用してデプロイする方法を見つけ、50 メガバイトを超えるため S3 に保存するかどうかを決定する必要があります。次のステップは、ファイルの代わりに base64 オーディオ オブジェクトを取得するように処理関数を更新することです。話者は、ブラウザ ロード base64 ファイル オブジェクトまたはサウンド ファイル読み取りバイトを使用してこれを実現することを検討します。彼らは、それができると思うと述べて締めくくります。
Builders Build #3 - From Colab to Production with ONNX
Builders Build #3 - From Colab to Production with ONNX
  • 2022.03.21
  • www.youtube.com
Last week, we built a Shazam clone using Self-supervised learning (SimCLR).Let's get the model out of Colab and run inference in production with ONNX!I have ...
 

Optimum、OpenVINO™、ONNX ランタイム、および Azure の力を組み合わせる



Optimum、OpenVINO™、ONNX ランタイム、および Azure の力を組み合わせる

このビデオでは、Optimum、OpenVINO、ONNX ランタイム、および Azure の組み合わせを紹介して、開発者のワークフローを簡素化し、モデルの精度と速度を向上させています。講演者は、ヘルパー関数、ONNX ランタイム、および OpenVINO 実行プロバイダーを使用してディープ ラーニング モデルを最適化する方法を実演します。また、Neural Network Compression Framework の量子化を使用してハグ顔モデルを最適化する方法を示し、Azure ML、Optimum、ONNX ランタイム、および OpenVINO を使用したトレーニングと推論のプロセスを示します。このデモンストレーションでは、精度の低下を最小限に抑えながらモデルのパフォーマンスを向上させるこれらのツールの威力を強調しています。

  • 00:00:00 ビデオのこのセクションでは、Cassie が Intel の担当者に OpenVINO ツールキットと Onyx ランタイムについて話しています。 OpenVINO ツールキットは、Intel ハードウェア用に特別に設計された高度な最適化手法を使用して、ディープ ラーニング モデルのパフォーマンスを向上させます。 Onyx ランタイム ライブラリとインスタント セッション コード行への簡単な変更により、開発者は Intel の OpenVINO 実行プロバイダーを使用して Onyx モデルの推論を高速化できます。ビデオに示されているデモは、Intel CPU で人気のある深層学習モデルである YOLO V7 の加速されたパフォーマンスを示しています。

  • 00:05:00 ビデオのこのセクションでは、スピーカーは、前処理の実行、特定のラベルへのカラー値の割り当て、および画像の読み取りと再処理のためにデモで使用されるさまざまなヘルパー関数について説明します。このデモでは、ONNX ランタイムを使用して推論セッションを作成し、推論タスクを実行し、OpenVINO 実行プロバイダーを使用して Intel CPU でディープ ラーニング モデルを高速化します。このプロセスは、ONNX および OpenVINO ライブラリのインストール、ONNX ランタイム ライブラリのインポート、および OpenVINO プロバイダーの設定を含むコード行に簡単な変更を加えることで簡素化されます。また、講演者は、ONNX モデルがメモリ内グラフ表現に変換され、バックエンド クエリのために Graph Practitioner に入る方法のアーキテクチャの概要についても簡単に説明します。

  • 00:10:00 このセクションでは、スピーカーは、ニューラル ネットワーク圧縮フレームワークで量子化を使用してハグ顔モデルを最適化する方法について説明します。 Optimum Intel と OV Config を使用してトレーニング中に量子化を有効にする方法を示すコード例について説明します。また、データの準備、モデルのトレーニング、推論、展開、自動化を統合して、開発者と顧客が複雑なアクティビティをより効率的に実行できるようにする AI ワークフローも紹介します。スピーカーは、Azure ML を使用してこれらのワークフローをサポートし、パフォーマンスを向上させる方法を示します。

  • 00:15:00 ビデオのこのセクションでは、講演者が Azure ML、Optimum、ONNX ランタイム、および OpenVINO を使用したトレーニングと推論のプロセスについて説明します。まず、トレーニング パイプラインに使用されるファイルとスクリプト、およびジョブを Azure ML に送信する方法について説明します。次に、推論スクリプトと、それが ONNX ランタイムと OpenVINO 実行プロバイダーをどのように利用するかについて説明します。スピーカーは、モデルの量子化とトレーニングの F1 スコア結果の詳細を提供し、このプロセス中に精度がわずかに低下しただけであることを示しています。全体として、このセクションでは、これらのテクノロジを使用したトレーニングと推論のプロセスの詳細な概要を提供します。

  • 00:20:00 このセクションでは、スピーカーは、fp32 の元のモデルと、Netron によって視覚化された int 8 に最適化されたモデルを示すことによって、量子化プロセスがどのように機能するかを示します。また、Azure ML と OpenVINO を活用して、トレーニングと推論のプロセスで精度とパフォーマンスを向上させる方法についても説明します。彼らは、ONNX ランタイムを使用してパフォーマンスをさらに最適化および改善することに言及し、視聴者にコードとブログ投稿をチェックして詳細を確認するよう勧めています。全体として、このデモンストレーションは、複数のツールを組み合わせて開発者のワークフローを簡素化し、モデルの精度と速度を向上させる力を示しています。
Combining the power of Optimum, OpenVINO™, ONNX Runtime, and Azure
Combining the power of Optimum, OpenVINO™, ONNX Runtime, and Azure
  • 2023.01.27
  • www.youtube.com
Devang Aggarwal, and Akhila Vidiyala from Intel join Cassie Breviu to talk about Intel OpenVINO + ONNX Runtime. We'll look at how you can optimize large BERT...
 

ONNX モデルのより高速な推論 |開発者向けエッジ イノベーション シリーズ |インテル ソフトウェア



ONNX モデルのより高速な推論 |開発者向けエッジ イノベーション シリーズ |インテル ソフトウェア

このビデオでは、ONNX ランタイム用の OpenVINO 実行プロバイダーについて説明します。これはクロスプラットフォームの機械学習モデル アクセラレータであり、さまざまな Intel コンピューティング デバイスにディープ ラーニング モデルを展開できます。 Intel ハードウェア用に最適化された OpenVINO ツールキットを使用し、コード内でプロバイダーを OpenVINO 実行プロバイダーとして設定することで、開発者は高度な最適化手法を使用して ONNX モデルの推論を高速化できます。ビデオは、説明したツールを利用するために必要な変更の単純さを強調しています。

Faster Inference of ONNX Models | Edge Innovation Series for Developers | Intel Software
Faster Inference of ONNX Models | Edge Innovation Series for Developers | Intel Software
  • 2022.11.30
  • www.youtube.com
Join Ragesh in his interview with Devang Aggarwal, a product manager at Intel with Intel’s OpenVINO™ AI framework engineering team doing work around deep lea...
 

クラウドからクライアントへの ONNX ランタイムによるモデル推論の高速化と軽量化



クラウドからクライアントへの ONNX ランタイムによるモデル推論の高速化と軽量化

このビデオでは、Microsoft Cloud および AI グループの Emma が、Open Neural Network Exchange (ONNX) と、さまざまなハードウェアで ONNX モデルを推論するための高性能エンジンである ONNX ランタイムについて説明します。 Emma は、ONNX ランタイム INT8 量子化が提供できる大幅なパフォーマンスの向上とモデル サイズの縮小、および精度の重要性について説明します。彼女は、ONNX ランタイム INT8 量子化のエンド ツー エンドのワークフローを示し、PyTorch 量子化を使用したベースライン モデルの結果を提示します。さらに、Emma は、クラウドからクライアントへのモデル推論を最適化する ONNX ランタイムの機能と、デフォルトで Android と iOS プラットフォームの両方で 300 キロバイト未満のサイズを達成する方法について説明します。

  • 00:00:00 このセクションでは、Microsoft Cloud および AI グループの AI フレームワーク チームのシニア プログラム マネージャーである Emma が、AI ソフトウェア スタックにおける ONNX および ONNX ランタイムの役割について説明します。 Open Neural Network Exchange の略である ONNX は、従来の機械学習モデルとディープ ラーニング ニューラル ネットワークの両方を表す標準形式です。 ONNX ランタイムは、さまざまなハードウェアで ONNX モデルを推論するための高性能エンジンです。 ONNX コンバーターと ONNX ランタイムは、ONNX コンバーター ツールを使用して任意のフレームワークからオンにできる ONNX モデルを運用化するためのワークフローの主要部分です。 PyTorch、TensorFlow、Caffe など、ONNX をサポートする一般的なフレームワークは多数あります。

  • 00:05:00 このセクションでは、ONNX ランタイムの利点と機能について説明します。 ONNX ランタイムは、ONNX モデル用の高性能推論エンジンであり、さまざまな言語用の API と、CPU、GPU、および VPU 用のハードウェア アクセラレーションを提供します。 ONNX ランタイムもオープンで拡張可能であるため、機械学習推論の最適化と高速化が容易になります。すでに複数の社内外のプラットフォームに統合されており、多くの主力製品に採用されています。 ONNX ランタイムの最新かつ最もエキサイティングな機能の 1 つは、CPU の INT8 量子化です。これは、浮動小数点数を下位ビットで近似し、モデル サイズのメモリを削減し、パフォーマンスを向上させます。さまざまなモデルとハードウェアでのベンチマーク結果は、ONNX ランタイムを使用した大幅な高速化を示しています。

  • 00:10:00 このセクションでは、講演者は ONNX ランタイム INT8 量子化の大幅なパフォーマンス向上について説明します。これにより、推論パフォーマンスが大きなマシンで最大 3 倍、小さなマシンで約 60% 加速し、モデルを削減できます。サイズは約4倍。また、講演者は精度の重要性を強調し、一般的な NLP タスクで ONNX ランタイム量子化モデルが FP32 モデルと同様の精度を維持する方法の例を提供します。次にスピーカーは、モデルを ONNX 形式に変換し、量子化ツールを使用して INT8 モデルを取得し、ONNX ランタイムで推論を実行することを含む、ONNX ランタイム INT8 量子化のエンドツーエンドのワークフローを示します。最後に、スピーカーは PyTorch 量子化を使用したベースライン モデルの結果を提示し、Hugging Face のトークン化と評価関数を使用してパフォーマンスを評価します。

  • 00:15:00 このセクションでは、スピーカーは、モデルのパフォーマンスとサイズを最適化するための ONNX ランタイム量子化のプロセスについて説明します。このプロセスには、量子化の前に最適化ステップが含まれます。これは、トランスフォーマー モデルにのみ必要です。最適化が完了すると、ONNX ランタイムの量子化 API を使用してモデルを 8 ビット形式に量子化できるため、モデル サイズが大幅に小さくなります。パフォーマンスと精度の結果は、ONNX ランタイムの量子化が F1 スコアに関して PyTorch の量子化より優れていることを示しています。 ONNX ランタイムのもう 1 つの優れた機能は、スマートフォンやエッジ デバイスでのオンデバイス推論のランタイム サイズを最小限に抑える機能です。

  • 00:20:00 このセクションでは、クラウドからクライアントへのモデル推論を最適化する ONNX ランタイムの機能について説明します。 ONNX ランタイム モバイルでは、2 つの主要な手法が有効になっています。それは、ONNX ランタイム フォーマットと呼ばれる新しい最適化されたフォーマットの導入と、ランタイムのサイズを縮小するために事前定義されたモデルでのみ必要な演算子を使用した ONNX ランタイムの構築です。これにより、未使用の演算子が取り除かれ、ランタイムのサイズが大幅に削減され、独自のデバイスの推論が可能になり、メモリ要件が満たされます。コアの ONNX ランタイム モバイル パッケージは、デフォルトで、Android プラットフォームと iOS プラットフォームの両方で 300 キロバイト未満のサイズを実現できます。 ONNX ランタイムは、その GitHub リポジトリで利用可能なチュートリアルと例を含むオープン ソース プロジェクトです。
Faster and Lighter Model Inference with ONNX Runtime from Cloud to Client
Faster and Lighter Model Inference with ONNX Runtime from Cloud to Client
  • 2020.10.16
  • www.youtube.com
ONNX Runtime is a high-performance inferencing and training engine for machine learning models. This show focuses on ONNX Runtime for model inference. ONNX R...
 

ONNX 変換と量子化による高速 T5 変換モデル CPU 推論



ONNX 変換と量子化による高速 T5 変換モデル CPU 推論

T5 Transformer モデルを ONNX に変換し、量子化を実装することで、モデル サイズを 3 倍に縮小し、推論速度を最大 5 倍にすることができます。これは、T5 などの質問生成モデルを 1 秒未満のレイテンシーで CPU にデプロイする場合に特に役立ちます。さらに、Gradio アプリは、モデルに視覚的に魅力的なインターフェイスを提供します。 Huggingface の T5 変換モデルが利用され、ONNX と量子化には FastT5 ライブラリが使用されます。これらの最適化を実装すると、これらのシステムの実稼働展開の大幅なコスト削減につながる可能性があります。

  • 00:00 紹介と議題

  • 01:07 ハグフェイスからトランスフォーマーのライブラリをインストール

  • 02:18 ダウンロード ハグ顔モデル

  • 02:40 質問の生成サンプル

  • 04:00 GUI での Gradio アプリのデプロイ

  • 08:11 T5 Pytorch を ONNX に変換 & FastT5 で量子化

  • 17:22 モデルをドライブに保存

  • 18:30 新しいモデルで Gradio アプリを実行

  • 21:55 今後のエピソード&まとめ
Fast T5 transformer model CPU inference with ONNX conversion and quantization
Fast T5 transformer model CPU inference with ONNX conversion and quantization
  • 2021.04.26
  • www.youtube.com
Question Generation using NLP course link: https://bit.ly/2PunWiWThe Colab notebook shown in the video is available in the course.With the conversion of T5 t...
 

Azure AI と ONNX ランタイム



Azure AI と ONNX ランタイム

このテキストは、機械学習とその展開のさまざまな側面をカバーしています。データ サイエンスの進化、フレームワークの互換性の課題、モデル デプロイのための Azure AI と ONNX ランタイムの使用、ML 環境の作成、ONNX ランタイムの制限について説明します。スピーカーは、ONNX の標準化と複数のフレームワークのサポートを強調し、さまざまなハードウェアの最適化を容易にします。このビデオでは、ハードウェア設定のベンチマークがないこと、および ONNX の制限を克服するために複数のツールを使用する必要があることについても言及しています。

  • 00:00:00 トランスクリプトのこのセクションでは、スピーカーはデータ サイエンスの進化と、データ サイエンスが実験室での作業の科学から相互接続の世界にどのように変化したかについて説明します。講演者は、IoT システムでの作業経験と、IoT システムが手作業で作成されたものからクラウド サービスを使用するように進化した方法を共有します。また、スピーカーは、クラウド サービスの使用が許可されていない環境で作業できることの重要性と、そのような状況での専門会社の必要性を強調しています。最後に、スピーカーは、フレームワークまたはクラウド プロバイダーを変更しなければならないという課題に対処し、顧客がフレームワークを変更する代わりにプロバイダーを頻繁に切り替える理由を説明します。

  • 00:05:00 このセクションでは、異なる AI フレームワーク間の互換性の問題と、それがビジネスに与える影響について話します。銀行の例を挙げて、ある企業が 1 つの AI フレームワークでシステムを構築した場合、別のフレームワークを使用したいという新しい顧客が来た場合、その企業はシステムをゼロから完全に再構築する必要があり、コストがかかると説明しています。時間もお金も。次に、Onex ランタイムについて説明します。これにより、企業は完全な再構築を必要とせずに、既存のフレームワークとモデルを互換性のある形式に変換できます。講演者は、これらの変換されたモデルを分析および最適化するために利用できるツールについても言及しています。

  • 00:10:00 このセクションでは、Azure AI と ONNX ランタイムを使用して、さまざまなプラットフォームに機械学習モデルを簡単にデプロイする方法について講演者が説明します。プラットフォームと言語に適したオプションを選択することで、企業はソフトウェアを使用してニューラル ネットワークの 0 と 1 のシーケンスをロードし、選択したプラットフォームと言語を利用してシステムをエクスポートし、簡単に展開できます。このセッションでは、Onex を使用して開発プロセス全体でトレーニングを最適化する方法についても説明します。これにより、より迅速かつ正確な結果が得られます。講演者は、Intel serrandello の GPU と CPU 向けの自動最適化システムも紹介します。これにより、モデル開発がさらに合理化されます。

  • 00:15:00 このセクションでは、ML 環境の作成と、がく片と花弁の長さと幅に基づく植物種の分類器の開発について話します。講演者は、ML 環境を作成するには、以前はサーバーのクラスターを購入してすべてを手動で構成する必要がありましたが、今では独自の ML 環境を作成し、ハードウェアを必要とせずに独自のスタジオを立ち上げることができると述べています。彼らの ML 環境には、通常の仮想マシンと、TensorFlow モデルを保存するために使用される ONNX が含まれています。次にスピーカーは、与えられたパラメーターに基づいて植物種を分類する単純なニューラル ネットワークの作成を実演します。

  • 00:20:00 このセクションでは、スピーカーは、保存された ONNX モデルをロードして予測を実行する方法を示します。彼女は Tensorflow フレームワークをインポートし、ONNX モデルをロードして、一意の入力名を入力値に割り当てます。次に、リンク フィールドを作成してランダムな入力値を生成し、ONNX 式を実行します。最後に、彼女は呼び出しを実行し、予測から得られた出力値のカテゴリを取得します。前に作成した ONNX モデルは、ドキュメントを必要としない単一のファイルであるため、開発者は簡単に使用できます。

  • 00:25:00 このセクションでは、講演者は、Azure AI と ONNX ランタイムによって機械学習モデルをさまざまなアプリケーションに簡単に統合する方法について説明します。 Azure AI を使用すると、顧客は好みの言語でモデルを作成するだけで済み、Azure AI を使用してモデルを読み込み、モデルを呼び出すために必要な入力データを作成できます。その後、ONNX ランタイムを使用して、基盤となるプラットフォームに関係なく、Xamarin、Android、Mac などのさまざまなアプリケーションにモデルを統合できます。これにより、さまざまなデバイスやプラットフォームで機械学習モデルを簡単に統合できます。また、スピーカーは、ONNX ランタイムがモバイル デバイス用を含むさまざまなプロセッサに最適化されていることにも注目しています。

  • 00:30:00 このセクションでは、スピーカーは、ONNX がすべての主要なフレームワークをサポートし、多くの企業によってサポートされているため、機械学習モデルのデファクト スタンダードになっていると説明しています。この標準化により、過去のように手動で最適化する必要がなくなり、さまざまなハードウェアの最適化が容易になります。さらに、ONNX はニューラル ネットワークに限定されず、他のアルゴリズムにも使用できます。また、スピーカーは、ONNX が異なるプラットフォーム間で同じ数学関数と演算をサポートしていることにも注目しており、サポートされている opset が一致する限り、異なるハードウェアとプラットフォーム間でシームレスな展開が可能です。

  • 00:35:00 このセクションでは、スピーカーはパフォーマンスに関する ONNX ランタイムの制限について説明します。 ONNX は一般的なユース ケースに適した優れたツールですが、ハードウェアを最大限に活用することはできません。これは、pytorch などの ONNX 以外の他のツールがより有益な場合があります。ただし、モデルのエクスポートに重点が置かれている場合、ONNX は他のツールを完全に置き換えることができます。さらに、講演者は、ONNX はマルチマシン レンダリングのようなマシン間の通信を処理しないと説明しています。講演者は、これらの制限を克服するために、ONNX と一緒に他のツールを使用することを提案しています。

  • 00:40:00 このセクションでは、講演者はハードウェアの好みに関するベンチマークがないことについて説明し、ほとんどのベンチマークはハードウェア メーカーの Web サイトで見つけることができることを強調します。彼らはまた、多くの企業が今ではハードウェア向けに書いているのではなく、その逆であることにも注目しています。次にスピーカーは、Core ml、ONNX ランタイム、RT など、アクセラレーションに最も一般的に使用されるプラットフォームについて言及します。彼らは、トレーニング段階がどのように加速されるかについて言及しており、それが完了すると、クライアントへの販売が容易になります.講演者は、今後数年間に予定されている変更はほとんどなく、xeon および同様のプログラムが引き続き重要であると示唆しています。
Azure AI and ONNX Runtime
Azure AI and ONNX Runtime
  • 2023.03.09
  • www.youtube.com
Language: ItalianoAbstract:We will see how to create an AI model with Azure, turn it into ONNX, and use it in our .NET services natively with ONNX Runtime. A...
 

ONNX を使用して、機械学習をどこにでもデプロイします。 Azure ml.net 関数で実行される Python SKLearn モデル



ONNX を使用して、機械学習をどこにでもデプロイします。 Azure ml.net 関数で実行される Python SKLearn モデル

このビデオでは、ONNX ランタイムが、さまざまな言語やフレームワークで構築された機械学習モデルの展開を簡素化および標準化する方法を紹介しています。 Python scikit-learn モデルを ONNX モデルにパッケージ化し、それを Azure ML .NET 関数にデプロイするプロセスを示します。このビデオでは、HTTP POST 要求を介して Azure 関数を簡単にトリガーできるため、任意のアプリケーションや Web サイトから簡単に呼び出すことができ、機械学習モデルの構築に使用された言語に関係なく、ONNX モデルに変換して、 ML.NET を介して展開され、一貫して実行されます。

  • 00:00:00 このセクションのビデオでは、ONNX ランタイムと、それがさまざまな言語やフレームワークで構築された機械学習モデルの展開プロセスを簡素化する方法を紹介しています。 ONNX ランタイムを使用すると、別の環境に簡単に展開できる方法でモデルをカプセル化できます。ピクルス化のプロセスを置き換え、Python、R、.NET、Java、およびその他の言語で動作する標準ランタイムを提供します。このビデオでは、Python で単純なモデルを構築し、それを ONNX モデルにパッケージ化し、ML .NET 関数で実行するエンド ツー エンドの例を示しています。この例で使用されているコードは、Advancing LLS YouTube チャンネルの公開 GitHub で入手できます。

  • 00:05:00 このセクションでは、スピーカーは、Azure 関数で ONNX を使用して機械学習モデルをデプロイする方法を示します。デモはまず、scikit-learn を使用して、サンフランシスコの住宅価格データを使用して線形回帰モデルをトレーニングする基本的な Python モデルを示します。モデルは、数値とカテゴリ値で構成されるトレーニング セットを使用してトレーニングされます。モデルがトレーニングされると、ピクルアウトされて永続化され、コンテナーにデプロイされます。最後に、スピーカーはトレーニング セットで predict を呼び出してモデルをテストし、いくつかの値を取得します。このプロセスは、ONNX を使用してどこにでも機械学習モデルをデプロイして実行するために使用できます。

  • 00:10:00 ビデオのこのセクションでは、プレゼンターがモデルを ONNX で実行するようにセットアップし、Python を使用する必要がないようにします。モデルのトレーニングに使用される機能の数が指定され、ONNX モデルが初期化されて、何を期待するかがわかります。初期入力は特徴入力と呼ばれ、スコアリングに必要です。モデルにスコアを付けるために、セッションが作成され、コード行がトレーニング データに基づいて予測を行います。その後、予測が印刷されます。

  • 00:15:00 このセクションでは、講演者が ONNX で Python モデルを実行する方法と、使用するパッケージに関係なく Python でモデルを一貫して実行する方法について説明します。スピーカーは、Python モデルを ONNX に変換し、JSON オブジェクトを含む HTTP POST を使用して Azure 関数で実行する方法を示します。この関数は、年、居住地域、販売条件などの重要なデータを引き出し、それをモデルに渡します。モデルは ONNX を使用してデータをスコアリングし、結果を返します。講演者は、Azure 関数が REST API を備えた標準の HTTP トリガーであり、任意のアプリケーションまたは Web サイトから簡単に呼び出すことができると説明しています。

  • 00:20:00 このセクションでは、スピーカーは input と呼ばれる変数を作成し、それを使用して入力テンソルを形成し、セッションの実行が許容されるようにするための手順について説明します。セッションが開始されてキックスタートされ、パス上で新しいセッションが実行され、指定された入力でスコアリングされます。次に、スコア結果が取り出されて結果オブジェクトとしてパッケージ化され、関数に戻されます。スピーカーは、Postman でデプロイされたモデルをテストする方法を示します。生の JSON オブジェクト モデル パラメーター (築年数や居住地域など) を渡してスコアを取得します。 ONNX と ML.NET を介して機械学習モデルを展開する利点は、ONNX モデルに変換できる限り、どの言語でモデルを構築しても問題なく、展開して一貫して実行できることです。
Deploy Machine Learning anywhere with ONNX. Python SKLearn Model running in an Azure ml.net Function
Deploy Machine Learning anywhere with ONNX. Python SKLearn Model running in an Azure ml.net Function
  • 2020.07.21
  • www.youtube.com
Deploying Machine Learning Models is hard. ONNX tries to make this process easier. You can build a model in almost any framework you're comfortable with and ...
 

機械学習モデル (TensorFlow/Caffe2/ONNX) のデプロイ - 迅速かつ簡単



機械学習モデル (TensorFlow/Caffe2/ONNX) のデプロイ - 迅速かつ簡単

このビデオでは、転送学習を使用して画像を分類する方法と、Python と TensorFlow を使用して画像分類モデルをエンドユーザー アプリケーションに統合する方法を示します。プレゼンターは、自動車取引アプリケーションの例を使用して、必要な視点から写真がアップロードされず、ラベルを手動でチェックする必要があり、退屈で非効率につながる場合に直面する課題を説明します。彼は、転移学習技術を使用して写真の視点を認識するように既存のニューラル ネットワークをトレーニングすることで、これらの課題を克服する方法を説明しています。次に、GraphPipe オープンソース プロジェクトを使用して、モデルをテストし、Oracle クラウドにデプロイする方法を示します。最後に、発表者は機械学習モデルを実験段階から生産段階に移行することの重要性を強調しています。

  • 00:00:00 このセクションでは、Jeroen Kloosterman が、画像分類に機械学習を使用する方法と、画像分類モデルをエンドユーザー アプリケーションに統合する方法について説明します。彼は、必要な視点から写真がアップロードされず、ラベルを手動でチェックする必要があり、退屈で非効率につながる自動車取引アプリケーションが直面する課題を強調しています。これらの課題を克服するために、Jeroen は転送学習手法を使用して既存のニューラル ネットワークをトレーニングし、Python と Tensorflow を使用して写真の視点を認識します。 Jeroen Kloosterman は、ニューラル ネットワークの最後の層だけをたどってさまざまな視点を認識することで、ネットワークをトレーニングして写真を自動的に分類することに成功しました。

  • 00:05:00 このセクションでは、Jeroen が、前のセクションでトレーニングしたモデルをテストし、GraphPipe オープンソース プロジェクトを使用して Oracle クラウドにデプロイする方法を示します。まず、再トレーニング Python スクリプトが呼び出され、TensorFlow を使用してモデルが再トレーニングされます。 Oracle クラウドで環境をセットアップした後、プレゼンターは Python を使用してサンプル クライアントを作成し、画像分類子を呼び出します。モデルによって返された分類は、フロントエンドで使用され、自動車販売アプリのエンドユーザーにメッセージを表示できます。最後に、発表者は機械学習モデルを実験段階から生産段階に移行することの重要性を強調しています。
Deploy Machine Learning Models (TensorFlow/Caffe2/ONNX) - Fast and Easy
Deploy Machine Learning Models (TensorFlow/Caffe2/ONNX) - Fast and Easy
  • 2018.11.06
  • www.youtube.com
In this video you learn how to Build and Deploy an Image Classifier with TensorFlow and GraphPipe. You can use the same technique to deploy models of other f...
理由: