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

 

ONNX と DJL を使用した JVM での数十億の NLP 推論



ONNX と DJL を使用した JVM での数十億の NLP 推論

メディア インテリジェンス企業の CTO が、機械学習パイプラインの NLP トークン化に JVM と DJL、Hugging Face を使用して、さまざまなユース ケースのメディア ランドスケープをマイニングする方法について説明します。彼らの製品機能がそれに向けて推進されているため、機械学習とモデリング システムは、CPU では十分ではない規模に達しているため、すべてを実行し続けるために不可欠な要素になっています。 32 ビット浮動小数点モデルの使用から 16 ビットに切り替えた結果、有効性が 3% 向上しましたが、プロセス中に変換エラーやまれにメモリ リークが発生したため、いくつかの実装を置き換えることで解決しました。 GPU を利用した CI を追加し、さまざまな推論のレイテンシとトークン化のレイテンシを監視する高度な Prometheus ロジック スタックをセットアップすることで、堅牢性に投資しました。彼らの将来の計画には、GPU 効率の向上と、マルチ GPU セットアップを作成することによるシステムへのモデルの追加が含まれます。

  • 00:00:00 ビデオのこのセクションでは、メディア インテリジェンス企業の CTO である Viet が、彼の会社のインフラストラクチャが JVM に基づいている方法と、それを使用して製品の発売などのさまざまなユース ケースでメディア ランドスケープをマイニングする方法について説明しています。追跡と評判の追跡。同社のシステムは JVM によって強化されており、機械学習パイプラインでの NLP トークン化に DJL と Hugging Face を使用していると彼は説明しています。同社の機械学習およびモデリング システムは、もはや単なる便利なものではなく、製品の機能がそれに向けて推進されるにつれて、すべてを稼働させ続けるために不可欠な要素となっています。彼らは、CPU がもはや十分ではない規模に達したため、Cubernates を水平方向にスケーリングするためのシステムと見なしています。彼らのシステムは 1 日あたり数十億の推論を生成し、GPU アクセラレーションを行い、800 万のサイトを使用して Web クローラー システム全体を構築しています。

  • 00:05:00 このセクションでは、講演者が ONNX エコシステムを使用した経験について説明します。彼らは、32 ビット浮動小数点モデルの使用から 16 ビットへの切り替えについて話しており、これにより効果が 3% 向上しました。ただし、このプロセス中に変換エラーが発生したため、ONNX モデルから予期しない出力が発生しました。また、まれにメモリ リークが発生することもありましたが、いくつかの実装を置き換えることで解決しました。講演者は、GPU を利用した CI を追加し、さまざまな推論のレイテンシとトークン化のレイテンシを監視する高度な Prometheus ロジック スタックをセットアップすることで、堅牢性に投資したと説明しています。最後に、GPU の効率を改善し、マルチ GPU セットアップを作成してシステムにモデルを追加するなど、将来の計画について話し合います。
Billions of NLP Inferences on the JVM using ONNX and DJL
Billions of NLP Inferences on the JVM using ONNX and DJL
  • 2022.07.13
  • www.youtube.com
This session outlines the recently rolled out Hypefactors' MLOps infrastructure designed for billions NLP inferences a day. The workload serves media intelli...
 

ONNX と JVM


ONNX と JVM

Java 仮想マシン (JVM) での ONNX サポートは、事実上すべてのアプリケーションで ML モデルがより顕著になっているため、非常に重要です。 Java は、ライブ ソフトウェア アプリケーションの構築に使用される最大のプラットフォームの 1 つであるため、Java や C# などのプログラミング言語内でサポートを提供することが不可欠です。オラクルは、Java で ONNX ランタイム C API を提供することを目指しており、C API で Java API の薄いレイヤーを使用することにより、パフォーマンスへの影響を最小限に抑えて簡単に展開できるようにします。スピーカーは、Java から ONNX モデルを作成するためのオープンソース ライブラリについても説明し、ロジスティック回帰グラフの例を紹介し、ONNX メタデータ形式の標準化の欠如について説明しながら、Trippo での ONNX エクスポート スタッフへの貢献を呼びかけます。

  • 00:00:00 このセクションでは、Oracle Labs の機械学習研究グループの研究者である Adam Pocock が、Java 仮想マシン (JVM) で ONNX をサポートすることが重要である理由を説明しています。ほぼすべてのアプリケーションで ML モデルの重要性が高まっているため、Java や C# など、アプリケーションが記述されている言語内でサポートを提供することが重要です。 Pocock 氏によると、Java は世界中でライブ ソフトウェア アプリケーションを構築するための最大のプラットフォームの 1 つであり、何百万人もの Java 開発者がいます。その結果、オラクルの目標は、Java で ONNX ランタイム C API を提供することであり、パフォーマンスへの影響を最小限に抑えながら、ユーザーが展開しやすくすることです。 C API 上の Java API の薄いレイヤーを示す簡単なコード例が示されています。

  • 00:05:00 このセクションでは、スピーカーは、機械学習モデルのオーバーヘッドを最小限に抑えるために、Java オブジェクトとネイティブ オブジェクトのペアを使用する際の課題について説明します。彼らは、すべてが確実にクリーンアップされるようにセーフティネットが配置されていると説明していますが、通常のアレイの使用は推奨されていません.講演者は、Java から ONNX モデルを作成するためのオープンソース ライブラリも紹介します。これには、属性の検証とチェック、および Java 配列を簡単にエクスポートする機能が含まれます。彼らは、このライブラリを使用してロジスティック回帰グラフを作成する方法の例を提供し、演算子列挙を拡張し、来歴とメタデータを変換されたモデルに統合する計画について言及しています。

  • 00:10:00 このセクションでは、スピーカーは ONNX のメタデータ形式に関する標準化の欠如について説明します。 ONNX メタデータにトレーニング データやハイパーパラメータなどのデータを含める可能性はありますが、標準化されていません。講演者は、Intel がメタデータ形式を標準化するために行っている作業に関心を示しています。また、講演者は、Trippo での ONNX エクスポート関連への貢献を募り、このトピックに関する議論を奨励します。
ONNX and the JVM
ONNX and the JVM
  • 2022.07.13
  • www.youtube.com
Integrating machine learning into enterprises requires building and deploying ML models in the environment's enterprises build their software in. Frequently ...
 

DJL と ONNX ランタイムを使用して高性能モデル推論ソリューションを構築する



DJL と ONNX ランタイムを使用して高性能モデル推論ソリューションを構築する

Deep Java Library (DJL) は、Java 上に構築された機械学習ライブラリであり、ディープ ラーニング ライブラリを抽象化し、Apache MXNet、TensorFlow、PyTorch などの複数のバックエンドを提供します。このライブラリには、さまざまなタスク用に事前にトレーニングされたモデルのセットがあり、メモリ使用量を制御しながら最高のパフォーマンスを保証するための厳格なテストを受けており、サービスの準備が整っています。スピーカーは、両方のエンジンを一緒にロードするハイブリッド エンジンのコンセプトも紹介し、推論のためにエンジン間の移行をよりスムーズにします。さらなる開発には、ARM サーバーのサポート、Android デバイスでの ONNX ランタイムの実行、ハイブリッド エンジン ソリューションのエッジ デバイスへの導入が含まれます。

  • 00:00:00 このセクションでは、Deep Java Library (DJL) とその ONNX ランタイムとの統合について紹介します。これは、Amazon の内外での機械学習のユースケースで優れたパフォーマンスを発揮することが証明されています。 DJL は Java 上に構築された機械学習ライブラリであり、ディープ ラーニング ライブラリを抽象化し、Apache MXNet、TensorFlow、PyTorch などの複数のバックエンドを提供します。 DJL には、Hugging Face や Torch Hub の一般的なモデルを含む、画像分類、オブジェクト検出、感情分析、行動認識などのタスク用の事前トレーニング済みモデルのセットがあります。 DJL の利点は、すぐに使用できることと、メモリ使用量を制御しながら最高のパフォーマンスを保証するための厳格なテストを受けていることです。また、講演者は、ONNX ランタイムと DJL を活用したいくつかの成功した顧客のユース ケースを共有し、スレッドセーフをサポートしていない TensorFlow や PaddlePaddle などのさまざまなディープ ラーニング フレームワークから変換した場合でも、モデルの推論速度とマルチスレッド推論の大幅な改善を示しています。マルチスレッド。

  • 00:05:00 このセクションでは、スピーカーは、組み込み演算子がないために ONNX ランタイムのユーザーが直面する課題について説明します。これにより、Java で非次元配列の前処理と後処理を実行することが難しくなります。手術。彼らは、ハイブリッド エンジンと呼ばれる新しい概念を提案しています。これは、両方のエンジンを同時にロードし、推論のためのエンジン間の移行をよりスムーズにします。 Deep Java Library は、ユーザーがモデルのロード方法を定義できる基準クラスを提供し、トランスレーターは前処理と後処理を実行するための抽象化を提供します。また、Java のガベージ コレクション システムに代わるツリー状のアーキテクチャである ND Manager も紹介し、費用対効果の高いメモリ コレクションを提供します。講演者は、ARM サーバーのサポート、Android デバイスでの ONNX ランタイムの実行、ハイブリッド エンジン ソリューションのエッジ デバイスへの導入など、さらなる開発について言及しています。
Build your high-performance model inference solution with DJL and ONNX Runtime
Build your high-performance model inference solution with DJL and ONNX Runtime
  • 2022.07.13
  • www.youtube.com
In many companies, Java is the primary language for the teams to build up services. To have ONNX model onboard and integration, developers faced several tech...
 

[FlexFlow Bootcamp 2020] FlexFlow フロントエンドのサポート: TensorFlow Keras、PyTorch、ONNX など



[FlexFlow Bootcamp 2020] FlexFlow フロントエンドのサポート: TensorFlow Keras、PyTorch、ONNX など

ビデオのこのセクションでは、スピーカーは、TensorFlow Keras、PyTorch、および ONNX をサポートする FlexFlow Python API について説明します。モデルの作成とトレーニングのプロセスには、モデルへの演算子の追加、モデルのコンパイル、データ ローダーの作成、fit 関数またはカスタマイズされたトレーニング手順を使用したモデルの初期化/トレーニングが含まれます。講演者は、FlexFlow での Keras および PyTorch モデルのサポート、および ONNX 中間表現を介して既存のモデルをインポートする機能についても説明します。ただし、FlexFlow のビルドに使用されるライブラリと ONNX Python パッケージのビルドに使用されるライブラリとの間の一貫性を確保することが重要です。

  • 00:00:00 ビデオのこのセクションでは、プレゼンターが FlexFlow のフロントエンド サポート、特に Python API を紹介します。 FlexFlow ランタイムは、Legion ランタイムの上に構築されています。Legion ランタイムは、スタンフォード大学、NVIDIA、およびロス アラモスの研究者によって開発されたタスクベースのプログラム システムです。 Python API は cffi ライブラリを介して C++ API を呼び出し、Python API の薄いレイヤーは C++ API を使用するのと同じパフォーマンスを提供します。次に、プレゼンターは FlexFlow Python API を使用してモデルを作成する手順について説明します。これには、最初に構成ファイルを作成し、次に入力テンソルを NCHW 形式で作成することが含まれます。さらに、Keras と ONNX のサポートが導入されました。

  • 00:05:00 ビデオのこのセクションでは、TensorFlow Keras、PyTorch、および ONNX をサポートする FlexFlow Python API を使用してモデルを作成およびトレーニングするプロセスについて講演者が説明します。スピーカーは、モデルに演算子を追加する方法を説明することから始めます。たとえば、常に入力テンソルを取り、出力テンソルを返す畳み込み 2D 演算子などです。次のステップは、モデルをコンパイルすることです。これにより、テンソルが割り当てられ、並列化戦略とモデルの融合が最適化されます。次に、データ ローダーが作成され、モデルが初期化され、fit 関数またはカスタマイズされたトレーニング手順を使用してトレーニングされます。講演者はまた、Python API と C++ API の類似点を強調し、要求に応じて新しい演算子を実装する機能を備えた、FlexFlow でサポートされている演算子のリストを提示します。最後に、講演者は FlexFlow での Keras および PyTorch モデルのサポートについて説明し、ハンズオン演習で予定されているデモを行います。

  • 00:10:00 このセクションでは、スピーカーは、特に ONNX 中間表現を介して、既存のモデルを FlexFlow にインポートすることについて説明します。 ONNX パッケージを使用すると、モデルを PyTorch や TensorFlow などの他のディープ ラーニング フレームワークからエクスポートし、同じファイル名を使用して FlexFlow にインポートできます。ただし、FlexFlow のビルドに使用されるライブラリが、ONNX python パッケージのビルドに使用されるライブラリと同じであることを確認することが重要です。 ONNX のサポートはまだ進行中の作業であり、パッチは大歓迎です。
[FlexFlow Bootcamp 2020] FlexFlow Front-End Supports: TensorFlow Keras, PyTorch, ONNX, and more
[FlexFlow Bootcamp 2020] FlexFlow Front-End Supports: TensorFlow Keras, PyTorch, ONNX, and more
  • 2020.12.15
  • www.youtube.com
We are excited to announce the first FlexFlow bootcamp, 9:00-13:00 PDT December 11th 2020. The bootcamp is designed for people interested in using FlexFlow t...
 

.NET、PyTorch、ONNX ランタイムによる機械学習の学習



.NET、PyTorch、ONNX ランタイムによる機械学習の学習

.NET、PyTorch、および ONNX ランタイムを使用した機械学習の学習に関するこのビデオでは、スピーカーが ONNX ランタイムを紹介し、機械学習モデルをトレーニングするためのさまざまな手順について説明します。また、深層学習のために .NET で ONNX 形式を使用する方法を示し、正確なモデル予測のためのハイパーパラメーターと最適化方法を理解することの重要性について説明します。講演者は、ONNX ランタイムを使用してモデルをロードして予測を行う方法、およびセッションの実行時に try ブロックで潜在的なエラーを処理する方法も示します。さらに、不確実性ベクトルを使用して AI の予測における不確実性を示すことについても説明し、不正検出や推奨システムなど、AI が使用されているいくつかの業界について言及しています。

  • 00:00:00 ビデオ「.NET、PyTorch、および ONNX ランタイムを使用した機械学習の学習」のこのセクションでは、ホストが ONNX ランタイムと、それを .NET でディープ ラーニングに使用する方法を紹介します。彼らは、モデルがトレーニングされたら、次のステップはモデル ファイルをプロジェクトに取り込み、答えを得ることだと説明しています。数字を認識する例を使用し、畳み込みニューラル ネットワーク モデルを使用した Py Torch GitHub リポジトリを示しています。また、Python の IDE としての VS Code の有用性と、組み込みの機能を強調しています。

  • 00:05:00 このセクションでは、スピーカーは、テスト データを使用して機械学習モデルをトレーニングする方法について説明します。ノブを調整する最適な方法を見つけたら、モデルを保存して水を止めます。彼らは、0 から 9 までの数字の画像でトレーニングしたモデルの例を示しており、画像が 0 から 9 までしかないため、出力には 10 個の要素があることを説明しています。彼らはまた、予測された結果と実際の結果の差を測定する損失関数と、いくつの結果が正しいか間違っているかを測定する精度の重要性を強調しています。講演者は、適切なモデル形状、学習率、バッチ サイズ、エポックなどのハイパーパラメータを選択し、さまざまなデータ セットでテストすることが、機械学習アルゴリズムが高い精度を達成するために不可欠なステップであることを示唆しています。

  • 00:10:00 ビデオのこのセクションでは、スピーカーは「ニューラル ネットワークの PDF」と呼ばれる ONNX 形式の使用について説明します。これらは、ONNX ファイルの作成を示し、次に ONNX ランタイムを使用して .NET アプリケーション内で使用する方法を示します。推論ごとにファイルをリロードする必要がないように、推論セッション グローバル変数の使用について説明します。モデルの最適化方法とハイパーパラメーターを理解することの重要性も強調されています。最後に、モデル間のサイズの違いと、これが予測の難しさにどのように影響するかについて説明します。

  • 00:15:00 このセクションでは、スピーカーは ONNX ランタイムを使用してモデルをロードし、特にコンピューター ビジョンのコンテキストで予測を行う方法について説明します。彼らは、数値 3 を描画し、それを 28 x 28 ピクセルの画像に変換する例を使用して実演し、続いて単一の float 配列を作成し、255 を減算しながらすべての色の平均をとります。スピーカーは、t のテンソルの使用についても説明します。メモリへの効率的なインデックス作成と、適切な入力のために画像を正規化することの重要性のために、ONNX ランタイムによって使用されるデータ型です。また、名前付きの ONNX 値からテンソルを作成する方法と、セッションの実行時に try ブロックを使用して潜在的なエラーを処理する方法も示します。

  • 00:20:00 このセクションでは、スピーカーは機械学習を使用して数字を認識する際に PyTorch と .NET を使用するプロセスを実演しています。システムは数字を行列として識別し、最適化アルゴリズムを使用して特定の数字を識別するようにトレーニングされています。システムには「わからない」と言う機能はなく、代わりに、なじみのない入力が提示された場合に間違っている可能性がある場合でも、常にベスト エフォート型の回答を返します。最終的な出力は確率のベクトルであり、人間が判読できる形式に変換されます。

  • 00:25:00 このセクションでは、不確実性ベクトルを使用して、予測における AI の不確実性を示す方法について説明します。スピーカーは、この機能は、そのような不確かさのデータセットでトレーニングされた場合にのみ使用できることに注意しています。次にスピーカーは、機械学習におけるトレーニング段階と推論段階の違いと、それらが ML.NET でどのように分離されているかを明確にします。講演者は、ONNX 形式は .NET アプリケーションで使用でき、通常はニューラル ネットワーク モデルなどのより複雑なデータセットに使用されることにも言及しています。最後に、講演者は、AI は現在、不正検出や推奨システムなどのさまざまな業界で使用されていると述べています。
Learning Machine Learning with .NET, PyTorch and the ONNX Runtime
Learning Machine Learning with .NET, PyTorch and the ONNX Runtime
  • 2019.02.05
  • www.youtube.com
ONNX is a open format to represent deep learning models that is supported by various frameworks and tools. This format makes it easier to interoperate betwee...
 

ML.NET で ONNX モデルを読み書きする方法



ML.NET で ONNX モデルを読み書きする方法

ビデオは、異なるフレームワーク間での機械学習モデルの交換を可能にする Microsoft と Facebook によって作成されたオープン フォーマットである ONNX の紹介から始まります。プレゼンターは、オープンソースでクロスプラットフォームの機械学習ライブラリである ML.NET が ONNX モデルをどのようにサポートしているかを説明します。その後、ビデオは、ONNX ランタイム パッケージを使用して、ML.NET モデルを作成し、ONNX ファイルにエクスポートする方法を示します。 ONNX モデルが作成されたら、それを使用して ML.NET の新しいデータを予測する方法をビデオで説明します。全体として、このビデオは、機械学習アプリケーションのために ML.NET で ONNX モデルを使用する方法に関する包括的なガイドを提供します。

How to Read and Write an ONNX Model in ML.NET
How to Read and Write an ONNX Model in ML.NET
  • 2019.07.07
  • www.youtube.com
This video goes over ONNX and how to read and write an ONNX model using ML.NET.Code - https://github.com/jwood803/MLNetExamples/blob/master/MLNetExamples/Onn...
 

ONNX を使用して scikit-learn ML モデルを ML.NET と統合する - 実用的な ML.NET ユーザー グループ 2022 年 2 月 18 日



ONNX を使用して scikit-learn ML モデルを ML.NET と統合する - 実用的な ML.NET ユーザー グループ 2022 年 2 月 18 日

このビデオでは、講演者が ONNX を使用した Scikit-learn 機械学習モデルと .NET エコシステムの統合について説明しています。彼らは、クライアント システムの機械学習モデルを構築、展開、およびテストする方法の実践的な例として、デジタル マーケティング分野でのリード スコアリングを使用しています。プレゼンターは、リード スコアリング プロセスについて説明し、マーケティング チームとセールス チームの効率を最大化する自動化ツールを構築することの重要性を強調します。講演者は、クライアント システムに機械学習モデルを展開する際の課題について説明し、ソリューションとして ONNX を紹介します。これらは、ONNX を使用して Scikit-learn ML モデルを ML.NET と統合するために使用されるツール、パッケージ、および手法の概要を提供します。スピーカーは、Azure Functions を使用して .NET エコシステムと統合する前に、ロジスティック回帰モデルを構築してシリアル化し、ONNX 形式に変換して ONNX モデルを実行する方法を示します。全体として、このビデオは、ONNX を使用して Scikit-learn ML モデルを .NET エコシステムに統合しようとしている開発者向けの実用的なガイドとして役立ちます。

この実用的な ML.NET ユーザー グループ セッションでは、プレゼンターが ONNX 形式を使用して、ドット ネット エコシステムに組み込むことができるリード スコアリング ONNX モデルを作成する方法を示します。この実装は ML.NET と並行して使用でき、ML.NET を使用して機械学習を実行しながら、ONNX ランタイムを使用して ONNX モデルを実行できます。プレゼンターは、ONNX モデルを構築するために使用される手法、ライブラリ、および段階的な手順を含む GitHub リポジトリを共有します。 ONNX 形式を使用すると、クロスプラットフォームのランタイム エンジンが可能になり、データ サイエンティストとアプリケーション開発者の間のギャップを埋めることができます。セッションの価値は、他のアルゴリズムで使用できる概念実証システムの実用的な実装にあります。

  • 00:00:00 このセクションでは、講演者は、Scikit-learn 機械学習モデルを .NET エコシステムに統合するトピックを紹介し、これを行う方法の実際的な例を示します。また、Open Neural Network Exchange Format (ONNX) と、それが .NET エコシステム内でのモデルの展開にどのように役立つかについても説明します。スピーカーは、リード スコアリング プロセスを自動化する補完的なツールを開発するためにビジネス ドメインの知識を使用して、デジタル マーケティング分野でのリード スコアリングのチームのプロジェクトを紹介します。リード スコアリング プロセスの概要を簡単に説明し、1 日の終わりに稼働しているシステムを構築することの重要性を強調しています。

  • 00:05:00 このセクションでは、スピーカーは、見込み顧客のコンバージョンのプロセスと、見込み顧客のスコアリングと生成プロセスを最適化するための機械学習の必要性について説明します。講演者は、デジタル マーケティング チームとセールス チームによって生成されるビッグ データの重要性と、データの所定の構造化フォーマットの必要性を強調します。機械学習を使用することで、教師付きアプローチを採用して履歴データを取得し、リード コンバージョン プロセスを改善できます。自動化されたツールは、最も重要な機能を特定し、マーケティング戦略を微調整してより多くのリードを生成するなど、データから洞察を提供することにより、マーケティング チームと営業チームの効率を最大化することを目的としています。プロトタイプには、さまざまなソースからデータを取得し、機械学習モデルを適用する前に、データ クリーニング、探索的データ分析、データ準備などの従来のデータ サイエンス手法を実装することが含まれます。

  • 00:10:00 ビデオのこのセクションでは、講演者は、データの洞察を生成し、機械学習モデルを構築するプロセスと、クライアントや企業が使用するこれらのモデルをデプロイする際の課題について説明します。彼らは、この展開の課題に対する解決策として、ONNX (Open Neural Network Exchange) を紹介しています。 ONNX は、モデルをグラフ形式で表すファイル形式であり、フレームワークに依存しないため、さまざまな機械学習ツールやフレームワーク間で共有できます。 ONNX ランタイムは、モデルをターゲット環境に統合するための一連の API であり、クロスプラットフォームで高性能です。スピーカーは、詳細について、ONNX Web サイトと GitHub へのリンクを提供します。

  • 00:15:00 このセクションでは、講演者は、Python などのデータ サイエンス ツールを使用して開発された機械学習モデルをクライアント システムに統合する際の課題について説明します。モデルの統一フォーマットとして ONNX を使用することを推奨し、.NET エコシステムでモデルをインポート、読み取り、ビルド、デプロイ、およびテストする方法を示しています。講演者は、データドリブン マーケティングのプロトタイプを構築するために使用できる、公開されているリード スコアリング データセットについても言及しています。彼らは、リード スコアリング シナリオの回帰と分類を含む、データ クリーニング、探索的データ分析、教師あり機械学習などの手法について説明します。目標は、マーケティング チームとセールス チームの効率を最大化し、最も潜在的なクライアントに焦点を当てることでパフォーマンスを向上させることです。

  • 00:20:00 ビデオのこのセクションでは、講演者が ONNX を使用して scikit-learn ML モデルを ML.NET と統合するために使用しているツールとパッケージの概要を説明します。彼らは、Python コンピューティングには Anaconda ディストリビューションを使用し、Python ベースの scikit-learn ライブラリを使用してモデルを構築するには Jupyter ノートブックを使用し、ONNX バージョン 1.9 と ONNX ランタイム バージョン 181 を使用する .NET バージョン 6 を使用していると述べています。講演者はデータ セットについて簡単に説明します。データラングリング、探索的データ分析、およびパフォーマンス評価指標のために使用している手法と実装した手法。彼らはまた、Lipliner アルゴリズムを使用した分類目的でロジスティック回帰を使用して、82% を超える精度でロジスティック モデルを構築したことにも言及しています。

  • 00:25:00 このセクションでは、リード スコアリングを予測するためのロジスティック回帰モデルを構築し、それを Python の pickle ライブラリを使用してシリアル化して pkl ファイルとして保存するプロセスについて説明します。その後、プレゼンターが pkl ファイルをロードしてモデルをテストすると、結果はテスト セットで 0.76 の精度を示します。次に、プレゼンターは、モデルを scikit-learn から ONNX 形式に変換する方法を示します。これは、モデルを Microsoft.NET エコシステムに展開するために必要です。このセクションは、ONNX を使用して scikit-learn 機械学習モデルを ML.NET と統合する方法に関する実用的なガイドとして役立ちます。

  • 00:30:00 このセクションでは、スピーカーは ONNX を使用して scikit-learn ML モデルを ML.NET と統合するプロセスについて説明します。彼らは、機械学習を実装する前に ML.NET の ONNX コンバーターでサポートされているアルゴリズムのリストを確認し、SK2ONNX でサポートされているコンバーターをインポートする方法を示すことを提案しています。次に、モデルを保存するパスと機能の数を定義し、入力の命名におけるスキーマの重要性を強調し、それらをフロー テンソル型に変換します。最後に、convert_sklearn 関数を使用して ONNX モデルを構築する方法を示し、モデルと前に定義した初期型を使用します。

  • 00:35:00 このセクションでは、スピーカーは、Python ベースの scikit-learn 機械学習モデルを ONNX 形式で保存する方法と、ONNX ランタイムの推論セッションを使用して ONNX モデルを実行する方法を示します。 ONNX モデルの入力名が識別されます。シグネチャの出力名は、このデモでは重要ではありません。さらに、predict_proba メソッドを使用して、変換される確率と変換されない確率を抽出し、リード スコアリング モデルの指標および特定のシナリオの重みとして使用します。

  • 00:40:00 このセクションでは、スピーカーは、scikit-learn ML モデル、具体的にはロジスティック回帰モデルを ONNX を使用して .NET エコシステムと統合するための空のソリューションを Visual Studio 2022 で作成することから始めます。次に、スピーカーはソリューションで Azure 関数を作成し、HTTP トリガーとして .NET 6 を使用して実装するためのボイラープレート コードを取得します。 Insomnia を使用して、JSON 形式の入力機能を備えた新しい要求を作成します。この要求は解析され、システムの統合に使用されます。スピーカーは、NuGet から Microsoft ML ONNX ランタイム パッケージをインストールし、入力機能セットを説明するクラスを作成します。次にスピーカーは、コード スニペットを使用して統合プロセスを高速化します。

  • 00:45:00 このセクションでは、スピーカーは、ML モデルへの入力として送信するために、JSON コンバーターを使用して API からリクエスト本文を取得して逆シリアル化する方法について説明します。これらは、LSLead Scoring Model パラメーター クラスのオブジェクトを作成し、逆シリアル化された要求本文からそれに値を割り当てます。また、入力テンソルを実装し、入力データをテンソルの TensorFlow オブジェクトに変換して、推論セッションに組み込むことができるようにすることの重要性についても説明しています。最後に、ONNX ランタイムを使用して推論セッションを作成し、セッション出力を取得して ML モデルを実行します。

  • 00:50:00 このセクションでは、プレゼンターは ONNX を使用して scikit-learn ML モデルを ML.NET と統合する方法を示そうとしますが、Visual Studio で技術的な問題に遭遇します。問題の修正を試みた後、プレゼンターはコード スニペットを表示して、統合に必要なパッケージと入力テンソルについて説明します。挫折にもかかわらず、プレゼンターは、視聴者が自分でアクセスして試すために、デモで使用されている関数と入力機能セットへのリンクを提供することができます.

  • 00:55:00 このセクションでは、プレゼンターが ONNX を使用して scikit-learn 機械学習モデルを ML.NET と統合する方法を示します。最初に、predict-probability 実装からの確率出力をアンラップし、変換されるかどうかの確率を表す long 値と float 値のディクショナリに変換する方法を示します。次に、これらの確率を使用して、変換されている場合と変換されていない場合のリード スコアを取得し、不眠症メッセージに表示します。最後に、Jupyter ノートブックを使用して、テスト セットのレコードがモデルに送信される方法を示し、対応する出力値を取得して、個人が変換される可能性が高いことを示します。

  • 01:00:00 このセクションでは、プレゼンターは、Open Neural Network Exchange (ONNX) 形式を使用して、別のフレームワークの一部として実装できるリード スコアリング ONNX モデルを作成する方法を示します。プレゼンターは、これが TensorFlow、Keras、および Dot Net ターゲティング フレームワークを使用して実行できることを示しています。プレゼンターは、結果として得られた ONNX モデルに基づいて、このファイル形式を Dot Net エコシステムに組み込み、その後、セッションを実行して結果を取得できる単純なソリューションを構築できたことも示しています。また、ONNX 形式を使用することでクロスプラットフォームのランタイム エンジンが可能になり、データ サイエンティストとアプリケーション開発者の間のギャップを埋める方法についても説明します。プレゼンターは、ドット ネット エコシステム内で ONNX モデルの統合を開始するために必要なノートブック ドキュメントとワークスペースを含むコード リポジトリを GitHub で共有します。

  • 01:05:00 このセクションでは、プレゼンターが GitHub リポジトリを共有します。これには、ONNX モデルを構築するために使用される手法、ライブラリ、および段階的な手順が含まれています。最も重要な部分は、ONNX および ONNX ランタイム パッケージの組み込みです。 .また、プレゼンターは、実装を ML.NET と並行して使用できることを強調し、ML.NET を使用して機械学習を実行しながら、ONNX ランタイムを使用して ONNX モデルを実行できるようにします。最後に、プレゼンターは、参加者の忍耐と時間に感謝し、セッションの価値は、他のアルゴリズムで使用できる概念実証システムの実用的な実装にあると述べています。
Integrating scikit-learn ML Models with ML.NET Using ONNX - Practical ML.NET User Group 02/18/2022
Integrating scikit-learn ML Models with ML.NET Using ONNX - Practical ML.NET User Group 02/18/2022
  • 2022.02.18
  • www.youtube.com
A look at the technical approach addressing the challenge of converting and deploying machine learning models from Python and Scikit-learn to the .NET ecosys...
 

ONNX と .NET を使用した機械学習モデル | .NET カンファレンス 2022



ONNX と .NET を使用した機械学習モデル | .NET カンファレンス 2022

.NET Conf 2022 の「ONNX と .NET を使用した機械学習モデル」ビデオでは、ディープ ラーニングと従来のプログラミングの違いなど、AI と機械学習の概念を視聴者に紹介しています。プレゼンターは、Azure Machine Learning、PyTorch、および ONNX の概要を説明し、Azure Machine Learning を使用してパイプラインを作成し、ONNX および .NET で機械学習モデルをトレーニングする方法を示します。また、機械学習モデルを .NET Maui アプリケーションに統合する方法についても説明し、モバイル デバイス用の ONNX モデルのサイズを縮小する手法についても説明します。このセクションの最後に、アクセシビリティについて話し合う次の講演者 Rory を紹介します。

  • 00:00:00 ビデオのこのセクションでは、Beatriz と Henk が AI と機械学習、および 2 つの違いについて紹介します。彼らは、機械学習は AI のサブセットであり、アルゴリズムで明示的にプログラムしなくてもデータから学習できると説明しています。代わりに、提供されたデータに基づいてモデルを生成し、それを使用して予測や決定を下すことができます。

  • 00:05:00 このセクションでは、スピーカーが機械学習のトレーニング フェーズと予測フェーズの違いについて説明します。予測フェーズは、モデルまたはアルゴリズムに入力が与えられ、回答または予測を生成し、従来のプログラミングでは解決が困難な複雑な問題を解決できる従来のプログラミングのように機能します。スピーカーは、脳に着想を得た人工ニューラル ネットワークに基づく機械学習のサブセットであるディープ ラーニングについても話します。講演者がビデオで紹介するデモでは、コンピュータ ビジョンを使用しています。これは、分類、オブジェクト検出、画像セグメンテーションなど、視覚的な世界を解釈して理解するようにコンピュータをトレーニングする人工知能の分野です。最後に、スピーカーは転移学習の概念について説明します。転移学習では、あるタスク用にトレーニングされたモデルが別のタスクの開始点として使用され、モデルのトレーニングにかかる時間が節約されます。

  • 00:10:00 このセクションでは、発表者が機械学習モデルに使用する 2 つのフレームワーク、PyTorch と ONNX の概要を説明します。 PyTorch は、プレゼンターがこのデモで好むオープンソースの深層学習フレームワークであり、ONNX は、AI 開発者がさまざまなフレームワークでモデルを使用できるようにする機械学習モデルを表すために構築されたオープン フォーマットです。彼らは、ONNX では PyTorch を使用してモデルを作成し、それを ONNX に保存して、.NET MAUI 内からそのモデルを読み取ることができると説明しています。また、実験、データストア、環境、モデル管理などの主要な要素と共に、共同機械学習ワークロードを可能にする一連のクラウド サービスを含む Azure Machine Learning も紹介します。彼らは、モデルを PyTorch でトレーニングし、モデル管理に登録して、他の人が選択したソフトウェアでチェックアウトして使用できるようにするため、モデル管理が彼らのストーリーの鍵であると説明しています。また、機械学習パイプラインの概要も提供します。これは、データ ソース、データセットを使用し、コンピューティング ターゲットで実行できるステップのワークフローです。

  • 00:15:00 このセクションでは、Azure Machine Learning Designer を使用してパイプラインを作成し、ONNX と .NET で機械学習モデルをトレーニングする方法について講演者が説明します。最初の手順は、Blob Storage に格納されているデータを確認することです。次に、デザイナーを使用して新しいパイプラインを作成します。これにより、コンポーネントをキャンバスにドラッグ アンド ドロップできます。彼らが選択したコンポーネントには、PyTorch モデル、ONNX コンバーター、モデル トレーナーが含まれます。コンポーネントが定義されると、スピーカーは BumbleBee と呼ばれる Azure Machine Learning コンピューティングでパイプラインを実行します。これらは、コンポーネント定義の機能とトレーニング ファイルのコードを示しています。

  • 00:20:00 このセクションでは、プレゼンターが ONNX と .NET を使用して機械学習モデルを作成し、それを .NET Maui アプリケーションに統合する方法を示します。このモデルは、Azure Machine Learning と Python および PyTorch を使用してトレーニングされ、ONNX 形式に変換されました。その後、モデルはモデル管理に登録され、.NET アプリケーションで使用されました。プレゼンターは、データ サイエンティストが選択した言語で作業し、開発者が自分の言語でアプリケーションを構築できるようにすることの重要性について説明します。プレゼンテーションで使用されているすべてのサンプル コードは、提供されたリンクと、機械学習と AI 開発者の役割についてさらに学習するためのその他のリソースにあります。

  • 00:25:00 ビデオのこのセクションでは、プレゼンターが ONNX モデルのファイル サイズと、モデルを小さくしてモバイルでの動作を改善するために使用される手法について説明します。彼らは、いくらかのパフォーマンスを犠牲にすることを意味するとしても、モデルのサイズを縮小することに特化した機械学習の巨大な領域があることを強調しています。また、モバイル アプリでさまざまな AI モデルを使用する Seeing AI というプロジェクトについても言及し、視聴者が自分で確認することを提案しています。最後に、プレゼンターは、アクセシビリティについて議論する次のスピーカーとして Rory を紹介します。
Machine learning models with ONNX and .NET | .NET Conf 2022
Machine learning models with ONNX and .NET | .NET Conf 2022
  • 2022.11.14
  • www.youtube.com
Most machine learning models are trained in Python using frameworks like PyTorch and TensorFlow. You might expect that an application that runs the trained m...
 

On .NET Live - ONNX、C# および Pokemon を使用した ML モデルの運用化!



On .NET Live - ONNX、C# および Pokemon を使用した ML モデルの運用化!

この On.NET Live ビデオでは、ホストが ONNX を使用した機械学習モデルの運用化について話し合い、特別ゲストとして Cassie Kozyrkov を迎えます。 Kozyrkov はメンターシップの重要性を強調し、データ サイエンティストとソフトウェア エンジニアの間のギャップを埋める方法として ONNX を使用することについて説明しています。この会話では、自然言語処理を使用した機械学習モデルの作成やデータ変換の重要性から、目に見えないデータを使用したテストや Azure Functions を介したモデルのデプロイまで、さまざまなトピックがカバーされています。また、講演者は、Azure Machine Learning と、ONNX と機械学習モデルをより幅広く探求することに関心のあるユーザーが利用できるリソースについても説明します。

On.NET Live ビデオでは、ONNX、C#、および (お楽しみとして) Pokemon を使用した ML モデルの運用化について説明しています。最初のプレゼンターは、さまざまなフレームワーク間でモデルを保存およびロードできる機械学習形式である ONNX と、.NET を使用してモデルを運用化する方法について話します。 2 番目のプレゼンターは、ML.NET を使用して Pokemon 画像分類子を作成し、それを展開用に運用化する方法について説明します。全体として、このビデオでは、ONNX と C# を使用して機械学習モデルを操作する方法の優れた概要が説明されています。

  • 00:00:00 ビデオのこのセクションでは、ホストが特別ゲストの Cassie を紹介します。Cassie は、Onnx やポケモンと機械学習について話し合う予定です。会話には、.NET Conf や Start Dev Change などの今後のカンファレンスに関する発表も含まれます。これらは、人々が新しい開発スキルを学び、キャリア スイッチャーに力を与えるために Cassie とチームによって開催されました。この会議では、個人が自分の情熱を見つけてキャリアチェンジを追求するのを支援することを目的として、さまざまな技術分野が取り上げられました。

  • 00:05:00 このセクションでは、Cassie Kozyrkov が、メンターシップの重要性と、Start Dev Change のようなイニシアチブに参加する必要性について、特にパンデミックのために人々が苦しんでいるこの時期に話し合っています。次に、機械学習モデルを保存してさまざまな環境に展開するためのオープン フォーマットである ONNX について説明します。 Cassie 氏は、ONNX を使用すると、データ サイエンティストが行っていることとソフトウェア エンジニアが行っていることの間の橋渡しが容易になると説明しています。特に、部門間に断絶がある場合にそうです。 ONNX を使用すると、DevOps 側にモデルを渡すことができます。DevOps 側は、プロジェクトに最適な方法でモデルを展開し、C#、C++、Python などのさまざまなアプリケーションで使用できます。

  • 00:10:00 このセクションでは、スピーカーは、自然言語処理を使用してワインの説明からデータを取得し、それを使用してワインの品種、ポイント値、価格帯を予測する機械学習モデルを構築する方法について説明します。彼らは、ワインの魔術師からの膨大なデータ ライブラリを使用し、さまざまな機能を備えたモデルを構築することに言及しています。モデルは Python で作成され、Jupyter Notebook 内でトレーニングされます。講演者は、Pandas を使用してデータを操作する方法についても説明し、ワード クラウドを示してデータ セット内の最も一般的な単語を示します。

  • 00:15:00 このセクションでは、講演者は機械学習へのさまざまなアプローチと、特定のタスクに適したアプローチを選択する方法について説明します。彼らは、従来の機械学習とディープ ラーニングの違いを説明しており、ディープ ラーニングにはより多くのレイヤーとニューラル ネットワークが必要です。講演者は、古典的な機械学習ライブラリである scikit-learn から始め、さまざまなアルゴリズムを試して最適なものを確認することを推奨しています。また、テキスト データを処理する際のデータ変換とトークン化の重要性、およびモデルの精度とモデル サイズのバランスをとる方法についても説明します。

  • 00:20:00 このセクションでは、スピーカーは、データ クリーニングや特徴抽出など、実際にモデルをトレーニングする前に、機械学習に必要なデータ処理について説明します。彼らは目に見えないデータでテストすることの重要性を強調し、モデルを実際の生産データに適用すると結果が異なる可能性があるため、精度だけに頼らないように注意しています。講演者は、展開段階に進む前に、データ パイプラインを設定し、ロジスティック回帰モデルを使用して機械学習モデルを作成する方法も示します。

  • 00:25:00 このセクションでは、スピーカーは、使用されている自然言語処理モデルと、それに使用されている CountVectorizer アルゴリズムについて説明します。これは scikit-learn ライブラリの一部です。ビデオに示されているパイプラインには、CountVectorizer とロジスティック回帰モデルが含まれています。著者は、ONNX ランタイムを使用してモデルをエクスポートし、それを ONNX ファイルとして保存する方法を説明しています。彼らはさらに、ランタイムのより優れたパフォーマンスについて議論します。これは、デプロイ先のハードウェアを考慮に入れたものであり、速度が大幅に向上します。

  • 00:30:00 このセクションでは、プレゼンターがモデルの展開と推論プロセスについて説明します。彼らは、モデルをデプロイするには、特定の状況に適したアーキテクチャとプロジェクトを検討する必要があると述べています。これは、Azure 機械学習の使用からコンテナー リソースまたは Azure 関数などのサーバーレス サービスまでさまざまです。モデルとコードはクラウドにアップロードする必要があります。この特定のケースでは、モデルは BLOB ストレージに保存され、関数によって使用されます。また、プレゼンターは、データをキャッシュして推論プロセスを高速化することの重要性についても触れ、ディクショナリと推論セッションが関数内でモデルを実行するためにどのように機能するかを説明します。データ型を理解することは必要ですが、正常に実行するためにモデルがどのように作成されたかを理解する必要はありません。

  • 00:35:00 違います。このセクションでは、講演者は、ONNX を使用して機械学習モデルを運用化するプロセスと、データ サイエンティストの助けを借りずにこれを行う方法について説明します。入力形式を理解し、テンソルを作成することの重要性を強調し、モデルの結果を目的の形式にキャストするプロセスについても説明します。講演者は、モデル出力に到達するために必要なレイヤーを単純化する必要があること、およびより良い結果を得るためにデータをクリーンアップしてバケット化する方法について言及しています。また、モデルを再トレーニングするためのメトリクスとフィードバックを収集する可能性についても触れています。

  • 00:40:00 このセクションでは、スピーカーは、予測を行う際に機械学習モデルがどのように機能するかをテストして理解することの重要性について説明します。彼らは、単体テストを作成し、自動化されたテストを通常の開発プロセスに組み込むというアイデアを持ち出します。さらに、モデルの解釈可能性のために Azure Machine Learning で使用できるツールについても言及しています。これは、モデルの予測に関する潜在的な問題を特定するのに役立ちます。最後に、Visual Studio Code の拡張機能を使用して HTTP トリガー内にモデルをデプロイする方法について触れます。

  • 00:45:00 このセクションでは、スピーカーは、機械学習を使用して作成され、Azure にデプロイされた楽しいワイン テイスティング ゲームについて説明します。彼らは Web サイトへのリンクを共有し、Winemag のソムリエの説明を使用してモデルをトレーニングした方法と、Azure 関数を使用してモデルを Azure にデプロイした方法について話します。また、クラウド コンピューティング、GPU アクセラレーション、モデルのバージョン管理のためのツールなど、Azure 機械学習をエンタープライズ機械学習に最適なものにする、Azure 機械学習の幅広い用途についても説明します。それにもかかわらず、エンドポイントへのデプロイが不要な場合もあり、Azure 機械学習によってこの単純さが可能になります。

  • 00:50:00 このセクションでは、スピーカーは Azure Machine Learning のさまざまな機能について説明します。これは、モデルを作成してエンドポイント経由で使用するだけではありません。それらは、実験ワークベンチ、モデルのバージョン管理とコンピューティング、および機械学習モデルの作成と展開においてデータ サイエンティストと開発者の間のコラボレーションを可能にする DevOps プラグインを強調しています。彼らはまた、このツールの絶えず進化している性質についても言及しており、ユーザーがしばらくツールを見ていない場合は、再訪することを勧めています。講演者は、ONNX を C# で使用し、Azure Functions を介してデプロイする方法について詳しく知りたい人のために、GitHub リポジトリとブログ投稿へのリンクを提供します。

  • 00:55:00 このセクションでは、講演者が、ONNX と機械学習モデル全般の調査に関心のあるユーザーが利用できるさまざまなリソースについて説明します。 ONNX が提供するチュートリアルとサンプル ノートブックを確認し、Github でオープンソース コードを調べることをお勧めします。さらに、Custom Vision などのツールを使用して、大規模なコードを必要とせずにコンピューター ビジョン モデルを作成する方法についても簡単に説明しています。最後に、彼らは将来的にポケモン検出モデルを作成することについて冗談を言い、11 月に開催される .NET Conf をチェックして、機械学習に関する発表をさらに行うことを勧めています。
On .NET Live - Operationalizing ML models with ONNX, C# .... and Pokemon!
On .NET Live - Operationalizing ML models with ONNX, C# .... and Pokemon!
  • 2020.10.29
  • www.youtube.com
ONNX defines a common set of operators and a common file format to enable AI developers to use models with a variety of frameworks, tools, runtimes, and comp...
 

機械学習コミュニティ スタンドアップ - PyTorch ONNX によるディープ ラーニング



Machine Learning コミュニティ スタンドアップ - PyTorch と ONNX によるディープ ラーニング

「Machine Learning Community Standup - Deep Learning with PyTorch & ONNX」ビデオでは、機械学習、PyTorch、および ONNX に関連するさまざまなトピックを取り上げています。 1 つのセクションでは、オーバーフィッティングと、ドロップアウトとクロス検証を使用してニューラル ネットワークでそれを防ぐ方法について説明します。主催者は、さまざまなコミュニティ ベースの機械学習プロジェクトと、機械学習で .NET を使用することに関する今後のイベントについても取り上げます。ビデオでは、コンピューター ビジョンや自然言語処理に使用される一般的な機械学習ライブラリである PyTorch も紹介されており、トーチ ビジョンやトランスフォームなどのさまざまな組み込みモジュールが組み込まれています。講演者は、機械学習モデルを表すための ONNX 形式と、推論とトレーニングを複数の言語で実行するためのそのランタイムについて説明します。このチュートリアルでは、PyTorch のモデル ズーで事前に構築されたモデルを使用する方法についても説明し、Jupyter Notebook と Anaconda を使用して Python パッケージと環境をデバッグおよび管理する方法についても説明します。さらに、このチュートリアルでは、ONNX を使用した PyTorch モデルのトレーニングとエクスポートの詳細について説明します。これは、モデルのパフォーマンスを向上させるために ONNX ランタイムで使用できます。

このビデオでは、機械学習と深層学習に関連するさまざまなトピックについても説明しています。講演者は、Xamarin での画像処理に SkiaSharp を使用することと、サイズによるオンデバイス モデルの制限について話しますが、オンデバイス モデルを持つことの利点に注意してください。また、Andrew Ng Coursera クラスや、ツールやライブラリを使用して機械学習モデルを作成するための高度な情報を提供する応用機械学習クラスなど、機械学習の理論を学習するためのさまざまなリソースも提案しています。機械学習を学ぶ上で目標を持ち、学習を仕事に取り入れることの重要性についても言及されています。最後に、講演者は聴衆が興味を持ちそうな今後のコンテンツを示唆します。

  • 00:00:00 このセクションでは、ホストがゲストの Cassie Breviu を紹介します。Cassie Breviu は Microsoft の ONNX ランタイム チームのシニア プログラム マネージャーで、PyTorch と ONNX について話し合う予定です。彼らは、PyTorch のようなライブラリで .NET を使用することに関する前回のストリームのトピックを簡単に要約します。メイン トピックを掘り下げる前に、ホストはドロップアウトから始まる機械学習の概念について話す新しいセグメントを紹介します。ドロップアウトは、トレーニング中にノードの一部をランダムにドロップアウトすることによって達成される、ニューラル ネットワークのオーバーフィッティングを防止する方法です。

  • 00:05:00 ビデオのこのセクションでは、ホストがオーバーフィッティングと、ドロップアウトと交差検証の使用が機械学習モデルの問題の解決にどのように役立つかについて説明します。彼らは、トレーニング セットで 100% の精度を得ることは必ずしも良いことではなく、実際のデータではパフォーマンスが低下する可能性があると述べています。彼らは、テストのために勉強し、その背後にある概念を理解せずに答えを暗記することに例えます.その後、主催者はコミュニティ リンクに移動し、AutoML とモデル ビルダーを使用したサーバーレス機械学習ソリューション、感情分析アプリケーションの構築、Azure を使用した画像分類モデルのトレーニングなど、コミュニティ内のいくつかのプロジェクトとプレゼンテーションについて言及します。これらのプロジェクトは、ユーザーが AI ソリューションをより効率的に構築および展開できるようにすることを目的としています。

  • 00:10:00 このセクションでは、スピーカーは、Azure を使用して画像分類モデルをトレーニングする方法に関するチュートリアルと、YOLO v5 モデルでの ONNX ランタイムとオブジェクト検出の使用のデモンストレーションについて説明します。また、Let's Learn .NET Focus on Machine Learning イベントなど、機械学習と .NET に関するいくつかの今後のイベントについても言及しています。このイベントでは、参加者は今月後半に公開される学習モジュールを体験します。次に、Jupiter ノートブックに似たノートブックの使用を可能にする Visual Studio の新機能と、これによりユーザーがローコード UI からコーディング、機械学習、およびより深い学習へのリバース エンジニアリングを行う方法について説明します。最後に、ノートブックがユーザー ガイドとサンプルの標準形式になり、ユーザーがノートブック ファイルをダウンロードしてコード セルを実行し、Wiki ページやその他のマークダウン ファイルを読む代わりに API の使用方法を学習できるようになることへの期待を表明しています。

  • 00:15:00 このセクションでは、講演者が Microsoft Learn と ML.NET に加えられたさまざまな更新と改善について説明します。彼らは、Web UI からアクセスできるインタラクティブなノートブック サポートについて言及しており、Python ローカル環境の構成方法を知らない人でも簡単に利用できるようになっています。また、ユーザーがカスタム ニューラル ネットワークを作成し、それらを ONNX ランタイムと密接に統合して、ディープ ラーニング モデルを使用するエクスペリエンスを向上させることができる Torch Sharp ライブラリも強調しています。さらに、ML.NET 内の倫理的で責任ある AI に焦点が当てられており、とりわけ、名前認識、動的データ入力、および出力と時系列予測が計画されています。全体として、講演者はユーザーからのフィードバックの重要性を強調し、改善のための提案を提供するよう奨励しています。

  • 00:20:00 ビデオのこのセクションでは、講演者は機械学習モデルを構築する際に開発フローを変更できる方法について、特に使用されるさまざまなツールとライブラリに関して説明します。彼らは従来のプログラミングを機械学習と比較し、機械学習ではデータをアルゴリズムに入力してモデルを生成し、それを推論に使用すると説明しています。次にスピーカーは、オープンソースの機械学習ライブラリである PyTorch と、ニューラル ネットワーク機能やデータ ユーティリティなどのさまざまなコンポーネントを紹介します。また、TensorFlow や scikit-learn などの他のライブラリや、Jupyter ノートブックや VS Code などのツールにも触れています。

  • 00:25:00 このセクションでは、講演者は PyTorch の概要を説明します。PyTorch は、コンピューター ビジョンや自然言語処理で一般的に使用される人気の機械学習ライブラリです。ライブラリには、コンピューター ビジョン用のトーチ ビジョン、オーディオ データ用のトーチ オーディオ、自然言語処理用のトーチ テキストなど、いくつかのモジュールが含まれています。データは機械学習のバックボーンであるため、モジュールはデータセット、データローダー、モデルによるトレーニング用のデータを準備するための変換などの前処理機能も提供します。講演者は、PyTorch のインタラクティブなチュートリアルを使用して、ライブラリとその機能について詳しく学習することをお勧めします。また、機械学習モデルを表現するために構築されたオープン フォーマットである ONNX と、複数言語での推論とトレーニングを可能にするクロスプラットフォーム展開ツールである ONNX ランタイムも紹介しています。

  • 00:30:00 このセクションでは、講演者が Blazor での ONNX モデルの使用について説明しますが、Cassie はまだ試していないことを認めています。また、PyTorch、Scikit-learn、TensorFlow などのライブラリを使用してモデルを ONNX 形式に変換する方法についても説明しています。 ONNX モデルの使用は簡単です。ONNX ランタイム ライブラリをインポートし、推論セッションを作成し、入力データを渡して結果を取得するだけです。 Python は他の言語と比較してこの点で強力であると考えられているため、さまざまな言語でのデータ操作には困難が伴います。講演者は、モデル ズーについても言及しています。モデル ズーには、役立つサンプル コードを使用して推論に使用できる事前構築済みのモデルがあります。

  • 00:35:00 このセクションでは、講演者は、畳み込みニューラル ネットワーク (CNN) の一種である高速 rcnn を使用したオブジェクト セグメンテーションに焦点を当てて、PyTorch のモデル ズーで事前に構築されたモデルを使用する方法について説明します。講演者は、テンソルの操作と NumPy を使用したそれらの操作についても簡単に触れ、PyTorch がテンソルを効率的に操作する方法を学習するためのインタラクティブなノートブックを提供していることに注目しました。さらに、スピーカーは、PyTorch のデータ セットは、オープン ソース リポジトリからダウンロードする「torchvision.datasets」を使用して取得されることに注意します。

  • 00:40:00 ビデオのこのセクションでは、スピーカーは PyTorch のオープンソースの性質について説明し、コードと使用されているさまざまな Blob ストレージの場所にアクセスできるようにします。それらは、PyTorch のドキュメントがアクセス可能なすべての利用可能なデータセットをどのようにリストしているかを強調しています。データセットは、さまざまなオープンソース データセットの単なるラッパーです。講演者は、オープンソース データセットを使用することの法的影響と、ソースからプルしてもよいものとホストしてはならないものを強調します。このビデオでは、データ セットとデータ ローダー、検証用のテスト データ、カスタム データ セットの作成についても説明します。最後に、変換と、データを操作してデータをテンソルに変換し、アルゴリズムを介して処理する際の重要性について簡単に触れます。

  • 00:45:00 このセクションでは、講演者が Python のパッケージと環境を管理するために使用するツールについて話します。彼は、お気に入りのツールである Anaconda を強調し、さまざまな機械学習ライブラリ用に事前構成されたさまざまなパッケージをすばやくアクティブにして使用できるように、Windows ターミナルに追加しました。彼はさらに、VS Code で Jupyter Notebook を使用する方法を紹介します。これにより、より多くのツール、Intellisense、およびクラウド コンピューターを使用してより大きな GPU を必要とするモデルを実行する機能が提供されます。最後に、.NET 環境を好む人は、Anaconda を実行しているため、Jupiter Notebook エクスペリエンスを直接インストールできると指摘しています。

  • 00:50:00 このセクションでは、講演者は Azure Machine Learning Studio での PyTorch を使用した Jupyter Notebook エクスペリエンスについて説明します。ユーザーは必要なパッケージをインストールし、好きなツールを使用できます。講演者は、Azure Machine Learning Studio と PyTorch の Web サイトで入手できる PyTorch のクイック スタート ガイドについて簡単に説明し、その後、議論を ONNX に移します。スピーカーは、深く掘り下げずに、モデルのトレーニングに必要なモデル アーキテクチャ、損失関数、およびオプティマイザーの概要を簡単に説明します。スピーカーはまた、Copilot とそのユーザーへのコメントを書き込む機能について簡単に説明します。

  • 00:55:00 このセクションでは、スピーカーは ONNX を使用して PyTorch 深層学習モデルをトレーニングおよびエクスポートする方法を説明します。モデルをトレーニングするには、ユーザーはエポック数と検証データを設定し、オーバーフィッティングを避けるためにテスト データとは異なることを確認する必要があります。スピーカーは、各バッチをループする際に、各エポックでのモデルの損失のグラフを表示します。トレーニングが完了すると、テンソルをデバイスに送信する関数を使用してモデルを ONNX 形式でエクスポートできます。エクスポートされたモデルを使用して、ONNX ランタイムを使用して推論を実行し、入力テンソルと最適化されたグラフの最適化により、パフォーマンスを向上させることができます。スピーカーは、ONNX ランタイムの Xamarin サポートがまもなくリリースされることも示しています。

  • 01:00:00 このセクションでは、スピーカーは、Xamarin での画像処理に SkiaSharp を使用すること、および ONNX ランタイムを使用してデータを処理する方法について説明します。彼らは、サイズが原因でオンデバイス モデルを使用することの制限について言及していますが、オンデバイス モデルを使用する利点についても言及しています。講演者は、Xamarin のアーキテクチャと、Xamarin が足場を作成する方法についても簡単に触れています。ディスカッションは、C# 開発者と AI の世界との間でより多くのコラボレーションが必要であること、および機械学習または深層学習に関する質問がある場合は、Twitter で Cassidy Williams に連絡する方法、または ONNX ランタイムの Twitter ハンドルで回答を得る方法についての言及で終わります。

  • 01:05:00 このセクションでは、発表者が機械学習の理論の学習に関心のある人向けのリソースについて説明します。彼らは、深層学習モデルの舞台裏の仕組みを掘り下げる、Andrew Ng が教えているようなコーセラ クラスを受講することを提案しています。彼らは、機械学習にアプローチする方法には、応用法と理論法という 2 つの方法があることを警告しています。その他のリソースには、機械学習モデルを作成するためのツールとライブラリの使用に関する高レベルの情報を提供する coursera の応用機械学習クラスと、より詳細で数学の一部をカバーする PyTorch 学習パスが含まれます。さらに、プレゼンターは、今後数週間で行われる ML.Net のハッカソンについても言及しています。

  • 01:10:00 このセクションでは、スピーカーは、機械学習と深層学習について学習する際に目標を持つことの重要性について説明します。オンラインで利用できる無料のリソースはたくさんありますが、どこから始めればよいかを決めるのは難しい場合があります。スピーカーは、コンピューター ビジョン モデルのトレーニングなどの目標を設定し、その目標に沿ったリソースを見つけることを提案します。ハッカソンやプロジェクト スプリントを使用して新しいことを試すなど、学習を仕事に組み込むことも役立ちます。話者はまた、難しい部分を押し進め、目標が達成されるまでやめないことが重要であると述べています.最後に、講演者は聴衆が興味を持ちそうな今後のコンテンツを示唆します。
Machine Learning Community Standup - Deep Learning with PyTorch & ONNX
Machine Learning Community Standup - Deep Learning with PyTorch & ONNX
  • 2021.10.13
  • www.youtube.com
Join us to learn how to get started building deep learning models with PyTorch & ONNX. Community Links: https://www.theurlist.com/mlnet-standup-2021-10-13Fea...
理由: