【おにきす】
ONNX(オニキス) とは?
💡 AIモデルの「共通ファイル形式」
📌 このページのポイント
- Open Neural Network Exchangeの略
- PyTorch、TensorFlow、scikit-learnなど主要フレームワーク間の相互運用を実現
- ONNX Runtimeで高速な推論実行が可能
- エッジデバイスへのデプロイにも活用
なんで必要なの?
AIフレームワークはPyTorch、TensorFlow、JAXなど多数あって、それぞれ独自のモデル形式を持っている。研究者がPyTorchで作ったモデルを本番環境のTensorFlow Servingで動かしたいとき、ONNXを仲介フォーマットとして使えば変換できるんだよ
ONNX Runtimeって何?
どうやって変換するの?
PyTorchならtorch.onnx.export()、TensorFlowならtf2onnxライブラリで変換できるよ。Hugging FaceのモデルもoptimumライブラリでワンコマンドでONNX変換可能。ただし一部の複雑なオペレーションは変換時にエラーになることがあるから、変換後の精度検証は忘れずにね
実務での活用場面は?
📖 おまけ:英語の意味
「Open Neural Network Exchange」 = オープンニューラルネットワーク交換
💬 MicrosoftとFacebookが中心に開発。AIモデルの「PDF」のような存在だよ