ONNX : Open Neural Network Exchange (翻訳)
翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 09/08/2017
* 本ページは、github の onnx/onnx の README – Open Neural Network Exchange を翻訳した上で
適宜、補足説明したものです:
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。
ONNX – Open Neural Network Exchange は Facebook 社と Microsoft 社のコラボレーションとして提唱されました。
以下は facebook researchのニュースリリースです :
- Facebook and Microsoft introduce new open ecosystem for interchangeable AI frameworks (research.fb.com)
https://research.fb.com/facebook-and-microsoft-introduce-new-open-ecosystem-for-interchangeable-ai-frameworks/
一般的な記事としては以下が詳しいです :
Open Neural Network Exchange (ONNX) は、AI 開発者が彼らのプロジェクトの進化に伴い正当なツールを選択する権利を与えるオープン・エコシステムに向けての最初のステップです。ONNX は AI モデルのためのオープンソース・フォーマットを提供します。それは組み込み演算子と標準的なデータ型の定義に加えて、拡張可能な計算グラフモデルを定義します。最初に推論 (評価) のために必要な特性に焦点を当てました。
Caffe2, PyTorch, と Cognitive Toolkit は ONNX をサポートするでしょう。異なるフレームワーク間の相互運用性を可能にして研究から製造へのパスを流れさせることは AI コミュニティにおける革新スピードを早めるでしょう。私たちは初期のステージでそしてコミュニティにはフィードバックの提出と ONNX を更に進化させる手伝いを求めます。
フォルダ構造
- onnx/: 主要フォルダ、その下に総てのコードが存在します
- onnx.proto: 総ての構造を含む protobuf (v2.6.1)
- checker.py: シリアライズされた ONNX proto が正当であるかを確認するユティリティ
- defs/: ONNX 演算子を定義するサブフォルダ。
- test/: テストファイル
インストール
バイナリ
ONNX のバイナリ・ビルドは Conda から利用可能です :
conda install -c ezyang onnx
ソース
pip でソースからでも ONNX をインストールできます :pip install onnx
インストール後、動作するかを検証するために以下を行なってください :
python -c 'import onnx'
テスティング
ONNX はテスト・ドライバとして pytest を使用します。テストを実行するためには、最初に pytest をインストールする必要があります :
pip install pytest-cov
pytest をインストールしたら、テストを実行するために以下を行ないます :
pytest
開発
開発の間は ONNX を開発モードでインストールすると便利です :
git clone --recursive https://github.com/onnx/onnx.git pip install -e onnx/
そして、変更をそれに行なった後
- Python ファイル、貴方のインストールにおいて変更は直ちに有効で、再度インストールする必要はありません。
- C++ ファイル、native extension ビルドを開始するために再度インストールを行なう必要があります。
ライセンス
(訳注: 原文 を参照してください。)
以上