並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 59件

新着順 人気順

onnxの検索結果1 - 40 件 / 59件

  • 音声認識AIのWhisperをUnreal Engineでリアルタイムに動かすためにやったこと

    「Unreal Engine (UE) Advent Calendar 2022 その3」23日目の記事です。 はじめに OpenAIの音声認識AI「Whisper」がすごいらしい。これをUnreal Engineでリアルタイムに動かせるようにしたら応用範囲が広がっておもしろいんじゃないかと思いました。 (「異議あり!」って実際に声に出させたいよね) (NLPアドベンチャーを音声入力で、みたいな夢も広がる) しかし、いざやってみたらいろいろな課題にぶつかりました。この記事は、それらをどう解決したかの記録です。 目次 目標設定:C++とONNX Runtimeで実装する Whisperの処理の全体感 課題と対応 課題1:マイク入力と前処理をC++で実装する 課題2:Whisperの機械学習モデルをONNXにエクスポートする 課題3:ONNXモデルをtransformer&FP16向けに最適化

      音声認識AIのWhisperをUnreal Engineでリアルタイムに動かすためにやったこと
    • マイクロソフト、WebAssemblyとWebGLで推論エンジンを実装した「ONNX Runtime Web」(ORT Web)をオープンソースで公開

      マイクロソフト、WebAssemblyとWebGLで推論エンジンを実装した「ONNX Runtime Web」(ORT Web)をオープンソースで公開 マイクロソフトは、WebAssemblyとWebGLで機械学習の推論エンジンを実装した「ONNX Runtime Web」(ORT Web)をオープンソースで公開しました。 INTRODUCING: #ONNXRuntime Web (ORT Web), a new feature in ONNX Runtime to enable JavaScript developers to run and deploy machine learning models in browsers https://t.co/Ey3tsNlkEe pic.twitter.com/9uGyK8Pra0 — onnxruntime (@onnxruntime)

        マイクロソフト、WebAssemblyとWebGLで推論エンジンを実装した「ONNX Runtime Web」(ORT Web)をオープンソースで公開
      • WebAssemblyとWebGPUを用い、Webブラウザ上でStable Diffusion Turbo全体を高速実行可能な推論エンジン「ONNX Runtime Web 1.17」マイクロソフトから登場

        WebAssemblyとWebGPUを用い、Webブラウザ上でStable Diffusion Turbo全体を高速実行可能な推論エンジン「ONNX Runtime Web 1.17」マイクロソフトから登場 ONNX Runtime WebがWebGPUに対応。Webブラウザ上でさらに高速な推論処理が可能になった。Stable Diffusion Turbo全体をWebブラウザ上で高速に実行可能で、RTX4090を用いた場合1秒以内で結果が出力される。 ONNX Runtime Webの基になっている「ONNX Runtime」はクロスプラットフォーム対応の推論エンジンです。TensorFlow、PyTorch、SciKit Learnなどをはじめとするさまざまな機械学習のモデルに対応し、これらで生成されたモデルによる推論処理をプラットフォームに依存せず実行するランタイムの役割を果たします

          WebAssemblyとWebGPUを用い、Webブラウザ上でStable Diffusion Turbo全体を高速実行可能な推論エンジン「ONNX Runtime Web 1.17」マイクロソフトから登場
        • ONNXモデルのチューニングテクニック (基礎編)

          基礎編 / 応用編1 / 応用編2 サイバーエージェント AI Lab の Conversational Agent Teamに所属している兵頭です。今回は私が半年ほど蓄積したONNXのチューニングテクニックを全てブログに残したいと思います。皆さんが既にご存知であろう基本的なことから、かなりトリッキーなチューニングまで幅広くご紹介したいと思います。長文になりますがご容赦願います。 このブログのメインターゲット層は「リサーチャーが実装したモデルを実環境へデプロイするタスクを有する方々」です。一部リサーチャーの方々の参考になる情報が混じっていることもあるかもしれませんが、あまり興味を引かない内容だとは思います。リサーチャーメインの組織に属しながらリサーチエンジニアの立ち位置で身を投じていますので、研究の観点の少し手前あるいは少しその先の部分を担っている立場からこのブログを記載しているものとご認

            ONNXモデルのチューニングテクニック (基礎編)
          • XboxでStable Diffusionを動作させる猛者が登場、ONNX利用でPythonへの依存をゼロにしてNVIDIAのCUDA・AMDのROCm・AppleのCoreML・QualcommのQNN・MicrosoftのDirectMLでも動いてWindows・Linux・macOS・Android・iOS・WebAssemblyなど全てOK、ほぼあらゆるアプリケーションへの統合が可能に

            Stable Diffusionは文字や画像を元に新たな画像を生成してくれるAIですが、実行環境としてPythonが必要とされてきました。そんな中、ONNXモデルおよびONNX Runtimeの活用とC++での実装でPythonへの依存をなくし、Xbox上で動作させることに成功した猛者が登場しました。 Stable Diffusion running on Xbox Series X and S for the first time - YouTube 左端の大きなアイコンが今回作成された「Unpaint」というアプリ。記事作成時点ではストアには存在せず、インストールするにはユーザーが自分でパッケージに署名する作業が必要になります。Xbox Series XおよびXbox Series Sのどちらでも動作可能とのこと。左の大きな画面にXbox Series Xの出力が表示されています。 起

              XboxでStable Diffusionを動作させる猛者が登場、ONNX利用でPythonへの依存をゼロにしてNVIDIAのCUDA・AMDのROCm・AppleのCoreML・QualcommのQNN・MicrosoftのDirectMLでも動いてWindows・Linux・macOS・Android・iOS・WebAssemblyなど全てOK、ほぼあらゆるアプリケーションへの統合が可能に
            • ONNXを使って推論速度を高速にしてみる - BASEプロダクトチームブログ

              この記事はBASE Advent Calendar 2019の15日目の記事です。 devblog.thebase.in DataStrategyの齋藤(@pigooosuke)が担当します。 ONNXの概要 Open Neural Network Exchange(ONNX)とは、機械学習モデルを表現するフォーマット形式のことです。ONNXを活用すると、PyTorch, Tensorflow, Scikit-learnなどの各種フレームワークで学習したモデルを別のフレームワークで読み込めるようになり、学習済みモデルの管理/運用が楽になります。今回の記事では、よく利用されているLightGBMモデルからONNXへの出力方法の確認と、ONNXの推論を行う実行エンジンであるONNX Runtime上での推論速度の改善がどれほどなのかを検証していきたいと思います。 https://onnx.ai

                ONNXを使って推論速度を高速にしてみる - BASEプロダクトチームブログ
              • PyTorchのモデルを別形式に変換する方法いろいろ(TorchScript, ONNX, TensorRT, CoreML, OpenVINO, Tensorflow, TFLite) - Qiita

                PyTorchのモデルを別形式に変換する方法いろいろ(TorchScript, ONNX, TensorRT, CoreML, OpenVINO, Tensorflow, TFLite)機械学習DeepLearningPyTorchONNXTensorRT はじめに 本記事ではtorchvisionのresnet50を題材にPyTorchのモデルを様々な形式に変換する方法を紹介します。たくさんの種類を紹介する都合上、それぞれの細かい詰まりどころなどには触れずに基本的な流れについて記載します。また、変換後のモデルが正常に動作するかなどの確認も行いません。紹介する変換は以下の7パターンです。まさに7変化ですね! TorchScript ONNX TensorRT CoreML OpenVINO Tensorflow TFLite 基本環境 Ubuntu 18.04.3 PyTorch1.6

                  PyTorchのモデルを別形式に変換する方法いろいろ(TorchScript, ONNX, TensorRT, CoreML, OpenVINO, Tensorflow, TFLite) - Qiita
                • PyTorch, ONNX, Caffe, OpenVINO (NCHW) のモデルをTensorflow / TensorflowLite (NHWC) へお手軽に変換する - Qiita

                  PyTorch, ONNX, Caffe, OpenVINO (NCHW) のモデルをTensorflow / TensorflowLite (NHWC) へお手軽に変換するDeepLearningCaffeTensorFlowPyTorchONNX 日本語 English 1. はじめに いつも左中間を狙うようなプチニッチなふざけた記事ばかりを量産しています。 この記事の手順を実施すると、 最終的に PyTorch製 高精度Semantic Segmentation の U^2-Net を TensorFlow Lite へ変換することができます。 下図のような感じです。 TensorFlow めちゃくちゃ扱いにくいです。 日々公開される最新のとても面白いモデルは軒並みPyTorch実装ですし、なんでTensorFlowで実装してくれないんだ!! と、常日頃思っています。 論文のベンチマ

                    PyTorch, ONNX, Caffe, OpenVINO (NCHW) のモデルをTensorflow / TensorflowLite (NHWC) へお手軽に変換する - Qiita
                  • GitHub - imgly/background-removal-js: Remove backgrounds from images directly in the browser environment with ease and no additional costs or privacy concerns. Explore an interactive demo.

                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                      GitHub - imgly/background-removal-js: Remove backgrounds from images directly in the browser environment with ease and no additional costs or privacy concerns. Explore an interactive demo.
                    • WhisperのモデルをONNXにする - TadaoYamaokaの開発日記

                      WhisperのモデルをONNXに変換する方法について記述する。 Whisperのモデル WhisperのモデルはPyTorchを使ってPythonで実装されている。 そのため、実行にはPyTorchをインストールしたPython環境が必要になる。 環境構築なしでスタンドアロンで利用できると用途が広がる。 また、アプリへの組み込みも行いやすくなる。 ONNXモデル ONNXは、ニューラルネットワークの標準ファイルフォーマットである。 モデルをONNXにすると、ONNX Runtimeなどの推論用のライブラリを使って推論できる。 推論用のライブラリは、組み込みで使うことを意図しているので、スタンドアロンのアプリに組み込むことができる。 ONNXへの変換 WhisperのモデルからONNXへの変換は、pytorch.onnxを使って行う。 ただし、Whisperは、デコーダのループ処理で、前の

                        WhisperのモデルをONNXにする - TadaoYamaokaの開発日記
                      • ONNX 2020 - OPTiM TECH BLOG

                        R&D チームの奥村(@izariuo440)です。相変わらず深層学習モデルの推論に取り組んでいます。深層学習モデルの推論器として二年前に ONNX Runtime を軽くレビューしましたが、当時と比較するとかなり進歩しており、ONNX Runtime だけでなく ONNX 自体や関連ソフトウェアも成熟が進んでいるので、備忘録として私がお世話になっているものをかいつまんで紹介します。 OPTiM TECH BLOG Advent Calendar 2020 12/18 の記事です。 ONNX や ONNX Runtime は二年前の記事で少し解説しています。必要に応じてご参照ください。 tech-blog.optim.co.jp ONNX チュートリアル ONNX Model Zoo オプティマイザ その他 ONNX 関連のソフトウェア ONNX Runtime onnx-tensorrt

                          ONNX 2020 - OPTiM TECH BLOG
                        • TechCrunch | Startup and Technology News

                          Zen Educate, an online marketplace that connects schools with teachers, has raised $37 million in a Series B round of funding. The raise comes amid a growing teacher shortage crisis…

                            TechCrunch | Startup and Technology News
                          • Onnx RuntimeをUnityで動かす - Asus4 onD

                            Onnx Runtimeをネイティブプラグインとして、Unity上で動かす実験とサンプルを公開しています。 github.com 開発の動機 4年前に、TensorFlow LiteをUnityで動かす実験を初めて、 はじめは全くの趣味で始めたものが、今では海外からいただく相談の半分以上が機械学習関連になっています。 四年前に始めた実験↓ asus4.hatenablog.com ところが、実際にシェアを見ると、研究関連ではPytorchのシェアが圧倒的。Unityの公式推論ライブラリBarracudaやTensorFlow Liteで動かすために一旦Onnxに変換するなどの事例なども増え始め、速度的にはTFLiteは非常に満足していますが、サクッとモデルを試してみたいという時に、変換するのが億劫になってきていました。公式ツールで変換しようにもOnnxやPytorchのNCHWからTFLi

                              Onnx RuntimeをUnityで動かす - Asus4 onD
                            • IBM、「Power10」プロセッサ搭載でx86より高速なサーバー

                                IBM、「Power10」プロセッサ搭載でx86より高速なサーバー
                              • 深層学習モデルの推論ランタイムを0から作った話

                                はじめに 深層学習モデルを動作させるためのソフトウェアは数多くあります。 PyTorch や TensorFlow などのフレームワークはそれ自身がモデルを実行する機能を持っていますし、ONNX Runtime のようにモデルを動作させることに特化したソフトウェアも存在します。 これらのソフトウェアは大抵、Python などから簡単に扱うことができます。 しかしながら、それらがどのように動作しているのか疑問に思うことはないでしょうか。 この記事では、0 から深層学習モデルの推論ランタイム(長いので以下「深層学習ランタイム」)を作った過程で学んだことを、とりとめもなく紹介していきます。ほとんど、自分用のメモのようになってしまうかもしれません。 作ったものは以下のリポジトリにあります。 (技術的にはかなり適当なことを書いてしまうかもしれません。) 深層学習ランタイムは何をするのか 深層学習ラン

                                  深層学習モデルの推論ランタイムを0から作った話
                                • GitHub - PINTO0309/PINTO_model_zoo: A repository for storing models that have been inter-converted between various frameworks. Supported frameworks are TensorFlow, PyTorch, ONNX, OpenVINO, TFJS, TFTRT, TensorFlowLite (Float32/16/INT8), EdgeTPU, CoreML.

                                  Made with contrib.rocks. A repository for storing models that have been inter-converted between various frameworks. Supported frameworks are TensorFlow, PyTorch, ONNX, OpenVINO, TFJS, TFTRT, TensorFlowLite (Float32/16/INT8), EdgeTPU, CoreML. TensorFlow Lite, OpenVINO, CoreML, TensorFlow.js, TF-TRT, MediaPipe, ONNX [.tflite, .h5, .pb, saved_model, tfjs, tftrt, mlmodel, .xml/.bin, .onnx] I have been

                                    GitHub - PINTO0309/PINTO_model_zoo: A repository for storing models that have been inter-converted between various frameworks. Supported frameworks are TensorFlow, PyTorch, ONNX, OpenVINO, TFJS, TFTRT, TensorFlowLite (Float32/16/INT8), EdgeTPU, CoreML.
                                  • TensorRTを使ってStableDiffusionを爆速にする(Windows編)

                                    こんにちは、Fくんです。 受験シーズンです... これのwindows版ですね どのくらい速くなるとかLinuxとかColabでの実行方法は前の記事を見ていただいて... Lsmith TensorRTをGUIで扱いやすくするものがだだっこぱんださんから出てます。 すぐwindows対応出ると思います ここから先はtensorrt repoのdemo-diffusion.pyを動かしたい人向けです Windowsで実行 CUDAをインストール まずはCUDAをインストールしてください。 僕の場合はCUDA 11.6を使います。 ↑ のリンクから、windows > 10 or 11 > exe(local) or exe(network) を選択してください。 cuDNNのインストール cuDNN 8.6をダウンロードします。 ↑ のリンクから、Download cuDNN v8.6.0

                                      TensorRTを使ってStableDiffusionを爆速にする(Windows編)
                                    • ONNXモデルのチューニングテクニック (応用編1)

                                      基礎編 / 応用編1 / 応用編2 サイバーエージェント AI Lab の Conversational Agent Team に所属している兵頭です。今回は私が半年ほど蓄積したONNXのチューニングテクニックを全てブログに残したいと思います。皆さんが既にご存知であろう基本的なことから、かなりトリッキーなチューニングまで幅広くご紹介したいと思います。長文になりますがご容赦願います。今回は応用編1です。 このブログのメインターゲット層は「リサーチャーが実装したモデルを実環境へデプロイするタスクを有する方々」です。一部リサーチャーの方々の参考になる情報が混じっていることもあるかもしれませんが、あまり興味を引かない内容だとは思います。リサーチャーメインの組織に属しながらリサーチエンジニアの立ち位置で身を投じていますので、研究の観点の少し手前あるいは少しその先の部分を担っている立場からこのブログを

                                        ONNXモデルのチューニングテクニック (応用編1)
                                      • ONNX Runtime | Home

                                        Accelerated Cross-Platform Machine Learning Production-grade AI engine to speed up training and inferencing in your existing technology stack. In a rush? Get started easily:

                                          ONNX Runtime | Home
                                        • ONNXファイルをテキスト形式に変換して直接編集する

                                          やりたいこと ONNX形式のファイルが手元にあって、ちょっとだけ直したい。できるだけ手軽に。 目的は、 Model Zoo等から入手したONNXファイルの、入出力の形式を変更したい(floatじゃなくてbyteにしたいとか) ONNXファイルA の出力がそのまま ONNXファイルB の入力になるので、2つをくっつけたい 等です。 方針 ONNXファイルを、バイナリ形式からテキスト形式に変換する 適当なテキストエディタで編集する テキスト形式からバイナリ形式に戻す バイナリ形式⇔テキスト形式の相互変換方法さえわかればできたも同然です。 準備 Protocol Buffer Compilerのダウンロード バイナリ形式⇔テキスト形式の変換にはProtocol Buffer Compilerを使います。というのも、そもそもONNXファイルはProtocol Bufferを使って定義された形式だか

                                            ONNXファイルをテキスト形式に変換して直接編集する
                                          • Stable Diffusion with C#

                                            Inference Stable Diffusion with C# and ONNX Runtime In this tutorial we will learn how to do inferencing for the popular Stable Diffusion deep learning model in C#. Stable Diffusion models take a text prompt and create an image that represents the text. See the example below: Contents Prerequisites Use Hugging Face to download the Stable Diffusion models Understanding the model in Python with Diff

                                              Stable Diffusion with C#
                                            • Python以外でもDeep Learningしたい! - Qiita

                                              はじめに この記事は、NTTテクノクロス Advent Calendar 2019 の23日目です。 こんにちは、NTTテクノクロスの広瀬と申します。業務では高精細VR配信エンジン1や機械学習による画像認識AIエンジンの研究開発に取り組んでいます。 今回はちょっと技術や開発から離れて、Deep Learningを組み込んだアプリ開発現場で、速度を求めたりGUIが欲しかったりとアプリ開発はPython以外で開発したい時はどうするの?といった疑問を解決する入口部分に触れていきたいと思います。 入門書を読み終わってアプリを作ろう!という方の、次の勉強ステージ選択の手助けになれれば幸いです。 我々はPythonに縛られている 世の中にはTensorFlowやPyTorch/ChainerといったDeep Learningを扱うフレームワークは数多く存在するのですが、開発にあたってはPythonを前

                                                Python以外でもDeep Learningしたい! - Qiita
                                              • Netron

                                                Visualizer for neural network, deep learning and machine learning models.

                                                • GitHub - daquexian/onnx-simplifier: Simplify your onnx model

                                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                    GitHub - daquexian/onnx-simplifier: Simplify your onnx model
                                                  • ONNXの最適化まとめ - ぱたへね

                                                    ONNXの最適化を一通り試してみたのでまとめ。 サポートしている最適化一覧の取得 サポートしている最適化は、get_available_passesで取得できます。 from onnx import optimizer all_passes = optimizer.get_available_passes() 大きく分けると、このように分類できます。 意味のないOpの削除 (eliminate_deadend等) 2つのOpのfusion (fuse_matmul_add_bias_into_gemm等) Convへのfusion (fuse_add_bias_into_conv等) その他 convへのfuseは全く動かず、バージョンアップ待ちです。 最適化の結果 Qiitaにそれぞれまとめました。 ONNXでeliminate_deadend 最適化 ONNXで eliminate_i

                                                      ONNXの最適化まとめ - ぱたへね
                                                    • ONNX Runtimeを使ってみる その3(DirectML) - TadaoYamaokaの開発日記

                                                      ONNX RuntimeでDirectMLを使ってdlshogiのモデルの推論を行い、処理時間を比較してみた。 DirectMLを使えばAMDのGPUでも推論が実行できるようになる。 DirectMLプロバイダの使用 NuGetからビルド済みバイナリが取得できる。 Microsoft.ML.OnnxRuntime.DirectMLをインストールする。 DirectMLプロバイダを使用するにはソースに以下の行を追加する。 #include <dml_provider_factory.h> session_options.DisableMemPattern(); session_options.SetExecutionMode(ORT_SEQUENTIAL); OrtSessionOptionsAppendExecutionProvider_DML(session_options, 0); D

                                                        ONNX Runtimeを使ってみる その3(DirectML) - TadaoYamaokaの開発日記
                                                      • (optional) Exporting a Model from PyTorch to ONNX and Running it using ONNX Runtime — PyTorch Tutorials 2.3.0+cu121 documentation

                                                        Learn Get Started Run PyTorch locally or get started quickly with one of the supported cloud platforms Tutorials Whats new in PyTorch tutorials Learn the Basics Familiarize yourself with PyTorch concepts and modules PyTorch Recipes Bite-size, ready-to-deploy PyTorch code examples Intro to PyTorch - YouTube Series Master PyTorch basics with our engaging YouTube tutorial series

                                                        • ONNX Runtimeでプロファイルを取ってみる - Qiita

                                                          Rasperry Pi 4のCPUでDeep Learningを高速化の続きです。 Deep Learningを高速化するためには、どの処理がどれくらいの時間を消費しているかを調査して、実際の処理時間を削減していく必要があります。そのため、まずはONNX Runtimeのプロファイル機能を使用してプロファイリングを行います。 プロファイル機能を有効にする方法はONNX公式チュートリアルに記載されています。 import onnxruntime options = onnxruntime.SessionOptions() options.enable_profiling = True # <- プロファイル機能有効化 session = onnxruntime.InferenceSession(path_to_model, options) [プロファイル対象] prof_file = se

                                                            ONNX Runtimeでプロファイルを取ってみる - Qiita
                                                          • GitHub - PINTO0309/onnx2tf: Self-Created Tools to convert ONNX files (NCHW) to TensorFlow/TFLite/Keras format (NHWC). The purpose of this tool is to solve the massive Transpose extrapolation problem in onnx-tensorflow (onnx-tf). I don't need a Star, but g

                                                            Self-Created Tools to convert ONNX files (NCHW) to TensorFlow/TFLite/Keras format (NHWC). The purpose of this tool is to solve the massive Transpose extrapolation problem in onnx-tensorflow (onnx-tf). I don't need a Star, but give me a pull request. Since I am adding challenging model optimizations and fixing bugs almost daily, I frequently embed potential bugs that would otherwise break through C

                                                              GitHub - PINTO0309/onnx2tf: Self-Created Tools to convert ONNX files (NCHW) to TensorFlow/TFLite/Keras format (NHWC). The purpose of this tool is to solve the massive Transpose extrapolation problem in onnx-tensorflow (onnx-tf). I don't need a Star, but g
                                                            • ONNX形式のモデルを扱う - Qiita

                                                              ○:サポート、△:一部サポート(Experimental)、×:未対応 ※1 外部プロジェクト(ONNX Organization)でサポート ※2 2018/4月頭に、Caffe2のソースコードはPyTorchプロジェクトで管理されることになり、実質PyTorchの一機能としてCaffe2が提供されるようになりました 各フレームワークのONNX Importer/Exporterサポート状況 PythonからONNX形式のモデルを扱う さて本題である、PythonからONNX形式のモデルを読み込む方法とONNX形式のモデルを作る方法を説明したいと思います。 環境構築 Anacondaのインストール ONNXは、Anacondaのインストールが必要です。 Anacondaの公式ホームページ からAnacondaをインストールします。 ONNXのインストール ONNXの公式ホームページ を参

                                                                ONNX形式のモデルを扱う - Qiita
                                                              • GitHub - pytorch/ort: Accelerate PyTorch models with ONNX Runtime

                                                                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                  GitHub - pytorch/ort: Accelerate PyTorch models with ONNX Runtime
                                                                • ONNX について

                                                                  はじめに ONNX is an open format built to represent machine learning models. ONNX defines a common set of operators - the building blocks of machine learning and deep learning models - and a common file format to enable AI developers to use models with a variety of frameworks, tools, runtimes, and compilers. onnx.ai より ONNX とは、機械学習モデルを表現するためのオープンなフォーマット(や周辺のエコシステム)を指します。 この記事では、あまり日本語の資料が見つからない部分、特に ON

                                                                    ONNX について
                                                                  • ONNX Runtimeを使ってみる - TadaoYamaokaの開発日記

                                                                    dlshogiはCUDAに対応したNvidiaのGPUが必須になっているが、AMDのGPUやCPUのみでも動かせるようにしたいと思っている。 Microsoftがオープンソースで公開しているONNX Runtimeを使うと、様々なデバイスでONNXモデルの推論を行うことができる。 TensorRT対応で、ONNXのモデルを読み込めるようになったので、ONNX Runtimeに対応すれば同じモデルを使いまわせる。 ONNX Runtimeは、PythonやC#など複数の言語のインターフェースが提供されている。 dlshogiに組み込むにはC++のインターフェースが必要だが、C++も提供されている。 推論に使うデバイスは、CPUやCUDA、TensorRT、DirectX、MKL-DNNなど複数のデバイスを切り替えられるようになっている。 DirectXに対応すれば、AMDのGPUでも高速に推

                                                                      ONNX Runtimeを使ってみる - TadaoYamaokaの開発日記
                                                                    • ONNX変換・確認ライブラリ、アプリケーションまとめ - Qiita

                                                                      1.4. 参考 ONNX versioning https://github.com/onnx/onnx/blob/master/docs/Versioning.md ONNX Version Converter https://github.com/onnx/onnx/blob/master/docs/VersionConverter.md ONNX Runtimeのバージョン互換に関するドキュメント https://github.com/microsoft/onnxruntime/blob/master/docs/Versioning.md ONNX バージョンと Windows ビルド https://docs.microsoft.com/ja-jp/windows/ai/windows-ml/onnx-versions いまさらONNXを調べた(v1.4.1) https://tk

                                                                        ONNX変換・確認ライブラリ、アプリケーションまとめ - Qiita
                                                                      • ONNXモデルのチューニングテクニック (応用編2)

                                                                        サイバーエージェント AI Lab の Human Computer Interaction Team に所属している兵頭です。今回は私が半年ほど蓄積したONNXのチューニングテクニックを全てブログに残したいと思います。皆さんが既にご存知であろう基本的なことから、かなりトリッキーなチューニングまで幅広くご紹介したいと思います。長文になりますがご容赦願います。今回は応用編2です。 8. 各種トリック PyTorchやTensorFlowを経由して生成されたONNXから他のフレームワークへモデルを転用する場合に有効な様々なトリック、ワークアラウンドをご紹介します。あまり真新しい知見ではありませんが、以下でご紹介するようなトリックが記事としてまとまっているものはあまり見かけませんのでご参考になれば幸いです。エンジニアよりもリサーチャーの方々に是非読んでいただきたい内容です。ほとんどの内容が地味で

                                                                          ONNXモデルのチューニングテクニック (応用編2)
                                                                        • Netron

                                                                          Visualizer for neural network, deep learning and machine learning models.

                                                                          • GitHub - onnx/onnxmltools: ONNXMLTools enables conversion of models to ONNX

                                                                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                              GitHub - onnx/onnxmltools: ONNXMLTools enables conversion of models to ONNX
                                                                            • GitHub - onnx/optimizer: Actively maintained ONNX Optimizer

                                                                              ONNX provides a C++ library for performing arbitrary optimizations on ONNX models, as well as a growing list of prepackaged optimization passes. The primary motivation is to share work between the many ONNX backend implementations. Not all possible optimizations can be directly implemented on ONNX graphs - some will need additional backend-specific information - but many can, and our aim is to pro

                                                                                GitHub - onnx/optimizer: Actively maintained ONNX Optimizer
                                                                              • ONNX Runtimeを使ってみる その2(性能測定) - TadaoYamaokaの開発日記

                                                                                先日、ONNX Runtimeを使って、MNISTの推論を試した。 今回は、dlshogiのResnet 10ブロック、192フィルタのモデルを使って、GPUで実行した場合の速度と、CPUで実行した場合の速度を比較した。 測定条件 GPUでのONNXの推論にはTensorRT(FP16)を使用する。 CPUの測定にはONNX Runtimeを使用し、デフォルトのCPUプロバイダと、MKL-MLを有効にしたCPUプロバイダ、DNNLプロバイダのそれぞれで測定した。 OSはWindows 10 64bit、GPUはGeForce 2080Ti、CPUはCore i7-6700K(4コア、8スレッド、4GHz)を使用した。 推論の対象は、floodgateの棋譜からサンプリングした1万局面、バッチサイズは128とした。 それぞれの条件で、3回測定し、その平均時間を求める。 GPUで実行した場合の

                                                                                • 機械学習モデルの最適化 - AI Yome Project

                                                                                  機械学習モデルの最適化¶ リアルタイム処理をする場合、機械学習モデルの実行速度を下げる必要が有ることもあります。 学習時とは異なり、推論時には、ネットワークの中に簡易化出来る箇所があり、 そういった箇所を省いたりすることで、処理速度やメモリ使用量を減らしたりします。 また、単純にビット数を落とすことも有効で単精度にしたり、1バイトの引数にしたりしても ある程度の精度は残せる場合があり、高速化するときは検討しても良いと思います。 基本的にはコンバーター、ランタイムごとに グラフの最適化アルゴリズムが異なる サポートしている演算や最適化が異なる ランタイムが異なる といったことが異なる。それぞれ大きな差はつかないと思うので、 個人で使う場合においては、ONNX Runtimeのような対応しているものが多いものを使うのが良さそうです。 製品作りになると少し要件が強まり、 モデルの最適化アルゴリズ