該項目將不斷更新……
歡迎拉動請求!
注意:這不是所有框架的轉換器,而是不同轉換器的集合。因為Github是一個開源平台,我希望我們可以在這裡互相幫助,收集每個人的力量。
由於這些不同的框架,出現了針對不同框架的深度學習模型的出色轉換器。應該注意的是,我沒有測試所有轉換器,因此我不能保證每個轉換器可用。但是我也希望這個轉換器收集可以幫助您!
下面的表是GitHub中所有轉換器的概述(不僅包含提供的官方,還有更多用戶自由實現)。我只是做一些工作來收集這些轉換器。另外,希望每個人都可以支持這個項目,以幫助更多因各種框架而瘋狂的人。
| 轉換器 | mxnet | 咖啡餅 | caffe2 | CNTK | Theano/Lasagne | 氖 | Pytorch | 火炬 | 凱拉斯 | darknet | 張量 | 連鎖商 | Coreml/ios | 槳 | onnx |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| mxnet | - | mmdnn mxnet2caffe mxnet2caffe | mmdnn(通過onnx) | mmdnn | 沒有任何 | 沒有任何 | mmdnn gluon2pytorch | 沒有任何 | mmdnn | 沒有任何 | mmdnn | 沒有任何 | mxnet-to-coreml mmdnn | 沒有任何 | 沒有任何 |
| 咖啡餅 | mxnet/tools/caffe_converter resnet_caffe2mxnet mmdnn | - | caffetocaffe2 mmdnn(通過onnx) | CrosstalkCaffe/Caffeconverter mmdnn | caffe_theano_conversion caffe-model-convert caffe-to-theano | caffe2neon | mmdnn pytorch-caffe pytorch-resnet | googlenet-caffe2torch摩卡咖啡 | keras-caffe-converter caffe_weight_converter caffe2keras nn_tools keras keras caffe2keras deep_learning_model_model_converter mmdnn | pytorch-caffe-darknet-convert | mmdnn nn_tools caffe-tensorflow | 沒有任何 | Coremlzoo Apple/Coremltools mmdnn | X2PADDLE | caffe2onnx |
| caffe2 | 沒有任何 | 沒有任何 | - | onnx | 沒有任何 | 沒有任何 | onnx | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 |
| CNTK | mmdnn | mmdnn | ONNX MMDNN(通過ONNX) | - | 沒有任何 | 沒有任何 | Onnx mmdnn | 沒有任何 | mmdnn | 沒有任何 | mmdnn | 沒有任何 | mmdnn | 沒有任何 | 沒有任何 |
| Theano/Lasagne | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | - | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 |
| 氖 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | - | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 |
| Pytorch | mmdnn | brocolli pytorchtocaffe mmdnn pytorch2caffe pytorch-caffe-darknet-convert | ONNX-CAFFE2 MMDNN(通過ONNX) | Onnx mmdnn | 沒有任何 | 沒有任何 | - | 沒有任何 | mmdnn pytorch2keras nn-transfer | pytorch-caffe-darknet-convert | mmdnn pytorch2keras(keras)pytorch-tf | 沒有任何 | mmdnn onnx-coreml | 沒有任何 | 沒有任何 |
| 火炬 | 沒有任何 | fb-caffe-exts/torch2 caffe摩卡摩卡式th2caffe | TORCH2CAFFE2 | 沒有任何 | 沒有任何 | 沒有任何 | convert_torch_to_pytorch | - | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | TORCH2COREML TORCH2IOS | 沒有任何 | 沒有任何 |
| 凱拉斯 | mmdnn | keras-caffe-converter mmdnn nn_tools keras2caffe | mmdnn(通過onnx) | mmdnn | 沒有任何 | 沒有任何 | mmdnn nn-transfer | 沒有任何 | - | 沒有任何 | nn_tools轉換為tensorflow keras_to_tensorflow keras_to_tensorflow mmdnn | 沒有任何 | Apple/Coremltools模型轉換器keras_models mmdnn | 沒有任何 | 沒有任何 |
| darknet | 沒有任何 | pytorch-caffe-darknet-convert | 沒有任何 | mmdnn | 沒有任何 | 沒有任何 | pytorch-caffe-darknet-convert | 沒有任何 | mmdnn | - | dw2tf darkflow lego_yolo | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 |
| 張量 | mmdnn | mmdnn nn_tools | mmdnn(通過onnx) | 串擾mmdnn | 沒有任何 | 沒有任何 | pytorch-tf mmdnn | 沒有任何 | 型號轉換器nn_tools轉換為濃度mmdnn | 沒有任何 | - | 沒有任何 | tfcoreml mmdnn | X2PADDLE | 沒有任何 |
| 連鎖商 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | Chaineer2pytorch | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | - | 沒有任何 | 沒有任何 | 沒有任何 |
| Coreml/ios | mmdnn | mmdnn | mmdnn(通過onnx) | mmdnn | 沒有任何 | 沒有任何 | mmdnn | 沒有任何 | mmdnn | 沒有任何 | mmdnn | 沒有任何 | - | 沒有任何 | |
| 槳 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | - | 沒有任何 |
| onnx | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | Onnx2torch onnx2torch | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | 沒有任何 | X2PADDLE | - |
在各種神經網絡之間轉換的一般框架
ONNX是為了統一神經網絡轉換器的努力,以便為NN世界帶來一些理智。由Facebook和Microsoft發布。更多信息在這裡。
MMDNN是一組工具,可幫助用戶在不同的深度學習框架之間進行操作。例如模型轉換和可視化。在Caffeemit,CNTK,Coreml,Keras,Mxnet,Onnx,Pytorch和Tensorflow之間轉換模型。

轉換為MXNET模型。
一些深度學習模型從各種格式轉換為Coremls格式。當前可用的型號:
涵蓋的關鍵主題包括以下內容:
這是一種將深層網絡從CAFFE模型轉換為MXNET模型的工具。權重直接從CAFFE網絡斑點複製。
轉換為CAFFE模型。
這是Keras和Caffe之間的轉換器。它僅使用KERAS模型來生成caffemodel和frototxt文件,但是如果有的話,也可以將其傳遞給原始文件。
支持1.9.0或更高的Pytorch
將Pytorch模型轉換為caffemodel。
將MXNET模型轉換為CAFFE模型。
將MXNET模型轉換為CAFFE模型。
將Torch模型轉換為CAFFE模型。
該工具使用CAFFE 1.0,Keras 2.1.2和Tensorflow測試1.4.0
工作轉換示例:
問題層:
一些方便的公用事業庫和Caffe深度學習框架的工具,該框架有一個用於將預訓練的火炬模型轉換為等效caffe模型的庫。 **
在Pytorch,Caffe和Darknet模型之間轉換。 Caffe Darknet模型可以通過Pytorch直接加載。
將火炬模型轉換為其他框架,例如caffe,mxnet ...
特定層的火炬 - nn到咖啡因轉換器。
Caffe Tensorflow Keras中模型的神經網絡轉換器
為Pytorch和Caffe提供神經網絡框架的工具。
NN_Tools根據MIT許可發布(有關詳細信息,請參閱許可證文件)。
特徵:
要求
轉換為CAFFE2模型。
這是一個官方的轉換器,它不僅為IPYTHON筆記本電腦提供了腳本:如下:
將pytorch轉換為caffe2(使部署在移動設備上特別容易)
轉換為CNTK模型。
該工具將幫助您將經過訓練的型號從Caffe轉換為CNTK。
轉換訓練有素的模型:給出模型腳本及其權重文件,導出到CNTK模型。
Crosstalk來自CNTK貢獻。
轉換為Theano/Lasagne型號。
這是斯坦福大學CS231N項目的一部分,由Ankit Kumar撰寫,數學專業,2015年班級
這是一個存儲庫,可讓您將預貼的咖啡館型號轉換為烤寬麵條的型號,這是Theano周圍的薄包裝紙。您也可以將Caffe模型的體系結構轉換為千層面的架構。您不需要安裝CAFFE即可使用此模塊。
目前,支持以下CAFFE層:
* Convolution
* LRN
* Pooling
* Inner Product
* Relu
* Softmax
將型號從Caffe轉換為Theano格式。
將CAFFE模型轉換為Theano模型。目前,這在Alexnet上起作用,但應適用於僅包括受到影響的層的任何CAFFE模型。
轉換為霓虹燈模型。
將CAFFE模型轉換為霓虹燈序列化格式的工具。
該回購包含將Caffe模型轉換為與霓虹燈深度學習庫兼容的工具。主腳本“ decaffeinate.py”作為輸入caffe模型定義文件和相應的模型權重文件,並返回霓虹燈序列化模型文件。該輸出文件可用於實例化霓虹燈模型對象,該對象將在霓虹燈中生成一個模型,該模型應複製CAFFE模型的行為。
轉換為Pytorch模型。
將mxnet / gluon圖轉換為pytorch源 +權重。
將接受Caffe的Resnet轉換為Pytorch型號。
將火炬T7模型轉換為Pytorch模型和源。
chainer2pytorch實現了從鎖鏈模塊到pytorch模塊的轉換,設置了每個模塊的參數,以便可以在模塊的基礎上通過模型移植。
直接將咖啡因的原始版本和權重直接在pytorch中,而沒有明確將模型從咖啡館轉換為pytorch。
在Keras和Pytorch模型之間進行轉換。
轉換為火炬模型。
將BVLC_GOOGLENET.CAFFEMODEL轉換為Torch NN型號。
是否想從火炬中的BVLC模型動物園中使用預先訓練的Googlenet?您不想將Caffe用作火炬內部的額外依賴性嗎?使用這兩個腳本在火炬中構建網絡定義,並從Caffe模型中復制學習的權重。
將Torch模型轉換為CAFFE模型。
將CAFFE模型轉換為火炬nn.Sequinential模型。
轉換為KERAS模型。
它是Keras和Caffe之間的雙向轉換器。它使用caffe_weight_converter從.caffemodel中獲得權重,並生成等效的keras模型。它還輸出用於生成該KERAS模型的Python源代碼。
該項目用作此列表上一個項目的一部分:Alexpasqua/keras-caffe-converter,它更完整,記錄和易於使用。我建議使用那個。
這是一個Caffe-to-keras重量轉換器,即它將.caffemodel權重文件轉換為KERAS-2兼容HDF5權重文件。它還可以導出。將作為數量陣列的.caffemodel權重以進一步處理。
該轉換器僅轉換模型的權重(不是模型定義),這具有很大的優勢,即它不會像其他轉換器那樣遇到未知層類型時破壞它也嘗試轉換模型定義。當然,缺點是您必須自己編寫模型定義。
存儲庫還為某些流行模型提供了轉換的權重。
注意:該轉換器已從Caffe的MarcBolaños叉中的代碼進行了調整。有關代碼出處,請參見ACK。
這旨在用作Caffe模型到Keras模型的轉換模塊。
請注意,該模塊不經常維護。因此,在Keras或Caffe的新版本中引入的一些層或參數定義可能與轉換器不兼容。歡迎拉請求!
Caffe Tensorflow Keras中模型的神經網絡轉換器
Keras的叉子具有多種新功能。 caffe2keras轉換器,多模式層等。 https://github.com/marcbs/keras
Keras的叉子提供以下貢獻:
CAFFE到KERAS轉換模塊特定於多模式數據的新層聯繫:[email protected]
github頁面:https://github.com/marcbs
Marcbs/Keras與:Python 2.7和Theano兼容。
將Caffe模型轉換為Keras模型的簡單工具。
在Keras和Pytorch模型之間進行轉換。
將Pytorch型號轉換為Keras。
轉換為DarkNet模型。
在Pytorch,Caffe和Darknet模型之間轉換。 Caffe Darknet模型可以通過Pytorch直接加載。
轉換為TensorFlow模型。
Crosstalk來自CNTK。
用於將KERAS型號轉換為其他ML框架(Coreml,TensorFlow)的工具。
Caffe Tensorflow Keras中模型的神經網絡轉換器
將CAFFE型號轉換為TensorFlow。
將各種訓練有素的型號轉換為冷凍Tensorflow協議緩衝區文件,以與C ++ Tensorflow API一起使用。 C ++代碼用於使用冷凍型號。
將darknet轉換為張量。負載訓練有素的重量,使用張量流進行重新訓練/微調,將常數圖形導出到移動設備。
tensorflow代碼要使用darknet的權重在新數據集上重新再潤再培訓YOLO
該存儲庫包含在新的綜合樂高數據集中使用YOLO進行轉移學習的實驗,粗糙和無證件!
將KERAS型號轉換為張量FROZEN圖,以用於手機,等等。
將訓練有素的KERAS模型轉換為推理TensorFlow模型的常規代碼。
將預告片的pytorch模型轉換為張量
將pytorch型號轉換為張量(通過keras)
這是一個簡單的對流器,它將darknet權重文件(.gueights)轉換為TensorFlow權重文件(.ckpt)。
沒有讀書。
轉換為連鎖型模型。
轉換為Coreml模型。
將使用第三方機器學習工具創建的訓練有素的模型轉換為核心ML模型格式。
如果使用支持的第三方機器學習工具創建和培訓模型,則可以使用Core ML工具將其轉換為核心ML模型格式。表1列出了受支持的模型和第三方工具。
| 型號類型 | 支持的模型 | 支持的工具 |
|---|---|---|
| 神經網絡 | 進料,卷積,經常性 | Caffe V1 Keras 1.2.2+ |
| 樹的合奏 | 隨機森林,增強的樹木,決策樹 | Scikit-Learn 0.18 XGBoost 0.6 |
| 支持向量機 | 標量回歸,多類分類 | Scikit-Learn 0.18 libsvm 3.22 |
| 廣義線性模型 | 線性回歸,邏輯回歸 | Scikit-Learn 0.18 |
| 功能工程 | 稀疏的矢量化,密集的矢量化,分類處理 | Scikit-Learn 0.18 |
| 管道模型 | 依次封閉的模型 | Scikit-Learn 0.18 |
將MXNET型號轉換為Apple Coreml格式。該工具有助於將MXNET模型轉換為Apple Coreml格式,然後可以在Apple設備上運行。
該工具有助於將Torch7型號轉換為Apple Coreml格式,然後可以在Apple設備上運行。
TORCH7庫 - 將NN型號轉換為iOS格式。
小型lib到iOS的序列化TORCH7網絡。支持的層包括完全連接,匯總和卷積層。該庫存儲每層necesarry的權重和偏見(如果有),以推斷iOS設備。
帶有基於Python的轉換器的Keras模型可在iOS平台中提供嵌入。
用於將KERAS型號轉換為其他ML框架(Coreml,TensorFlow)的工具。
Google與Apple合作,為Coreml Converter公告創建了TensorFlow。
通過採用TensorFlow模型並將其轉換為Core ML模型格式(.MLMODEL)的工具提供了對Core ML的支持。
轉換為槳模型。
X2PADDLE是一種用於將訓練有素的模型轉換為其他深度學習框架划槳的工具包。
更詳細的模型:X2PADDLE/X2PADDLE_MODEL_ZOO.MD開發·PaddlePaddle/X2PADDLE