1. 程式人生 > >MMdnn:模型在不同深度學習框架轉換

MMdnn:模型在不同深度學習框架轉換

MMdnn 是一套幫助使用者在不同深度學習框架之間進行互操作的工具。 例如。 模型轉換和視覺化。 在Caffe,Keras,MXNet,Tensorflow,CNTK,PyTorch Onnx和CoreML之間轉換模型。

用於轉換,視覺化和診斷深度神經網路模型的全面的跨框架解決方案。 MMdnn中的“MM”代表模型管理,“dnn”代表深度神經網路的縮寫。

基本上,它將許多由一個框架訓練的DNN模型轉換成其他模型。 主要功能包括:
        模型檔案轉換器在框架之間轉換DNN模型
        模型程式碼片段生成器為框架生成培訓或推理程式碼片段
        模型視覺化視覺化框架的DNN網路體系結構和引數
        型號相容性測試(正在進行)

這個專案是由微軟研究院(MSR)設計和開發的。 鼓勵研究人員和學生利用這個專案來分析DNN模型,歡迎任何新想法來擴充套件這個專案。

#安裝:

pip install mmdnn    #穩定版
pip install -U git+https://github.com/Microsoft/[email protected]    #測試版

#當前支援框架:


#框架轉換具體實現方法:(以 TensorFlow ResNet V2 152 轉換為 PyTorch 為例:

$ mmdownload -f tensorflow -n resnet_v2_152 -o ./
$ mmconvert -sf tensorflow -in imagenet_resnet_v2_152.ckpt.meta -iw imagenet_resnet_v2_152.ckpt --dstNode MMdnn_Output -df pytorch -om tf_resnet_to_pth.pth
#模型視覺化:

(注意:為了命令能夠之行,需提前安裝:Tensorflow、keras、requests)

    1.下載預訓練模型

$ mmdownload -f keras -n inception_v3
    2.把預訓練模型檔案轉換為intermediate representation
$ mmtoir -f keras -w imagenet_inception_v3.h5 -o keras_inception_v3

    3.開啟 MMdnn model visualizer 並選擇檔案 keras_inception_v3.json

相關推薦

MMdnn模型不同深度學習框架轉換

MMdnn 是一套幫助使用者在不同深度學習框架之間進行互操作的工具。 例如。 模型轉換和視覺化。 在Caffe,Keras,MXNet,Tensorflow,CNTK,PyTorch Onnx和CoreML之間轉換模型。用於轉換,視覺化和診斷深度神經網路模型的全面的跨框架解決

caffe 模型轉換不同深度學習框架互轉)

本人使用的是微軟的MMdnn工具,具體使用方法見其GitHub工程,這裡說明下在轉換過程中的問題: 1、由caffe轉mxnet時,在卷積層和FC層之間,mmconvert轉換工具會自動增加一個Flatten層,用於對接卷積層和FC層。這將導致轉換後的FC層與caffe定義

《TensorFlow實戰Google深度學習框架》——5.4 模型持久化(模型儲存、模型載入)

目錄 1、持久化程式碼實現 2、載入儲存的TensorFlow模型 3、載入部分變數 4、載入變數時重新命名 1、持久化程式碼實現 TensorFlow提供了一個非常簡單的API來儲存和還原一個神經網路模型。這個API就是tf.train.Saver類。一下程式碼給出了儲

從TensorFlow到PyTorch九大深度學習框架哪款最適合你?

方法 愛好 board ebo 部分 速度 智能 這也 解釋器 開源的深度學習神經網絡正步入成熟,而現在有許多框架具備為個性化方案提供先進的機器學習和人工智能的能力。那麽如何決定哪個開源框架最適合你呢?本文試圖通過對比深度學習各大框架的優缺點,從而為各位讀者提供一個參考。你

《TensorFlow實戰Google深度學習框架》--5.2.1 MNIST手寫識別問題(程式已改進)

目錄 MNIST資料集介紹: TensorFlow完整訓練MNIST資料集(程式已改進): 本篇部落格涉及很多本書第4章的知識:啟用函式、指數衰減的學習率設定、正則化、滑動平均等知識。如有疑問請參考本部落格關於第4章記錄介紹。 MNIST資料集介紹: MNIST資料集是N

《TensorFlow實戰Google深度學習框架》——6.3 卷積神經網路常用結構

1、卷積層 圖6-8顯示了卷積層神經網路結構中重要的部分:濾波器(filter)或者核心(kernel)。 過濾器可以將當前層神經網路上的一個子節點矩陣轉化為下一層神經網路上的一個單位節點矩陣 。 單位節點矩陣指的是一個長和寬都為1,但深度不限的節點矩陣 。 在一個卷積層巾,過濾器

《TensorFlow實戰Google深度學習框架》——6.2 卷積神經網路簡介(卷積神經網路的基本網路結構及其與全連線神經網路的差異)

下圖為全連線神經網路與卷積神經網路的結構對比圖: 由上圖來分析兩者的差異:                  全連線神經網路與卷積網路相同點   &nb

《TensorFlow實戰Google深度學習框架》——6.1 影象識別中經典資料集介紹

1、CIFAR資料集 CIFAR是一個影響力很大的影象分類資料集,CIFAR資料集中的圖片為32*32的彩色圖片,由Alex  Krizhevsky教授、Vinod Nair博士和Geoffrey Hinton教授整理的。 CIFAR是影象詞典專案(Visual Dictionar

《TensorFlow實戰Google深度學習框架》——6.3 卷積神經網路常用結構(池化層)

池化層在兩個卷積層之間,可以有效的縮小矩陣的尺寸(也可以減小矩陣深度,但實踐中一般不會這樣使用),co。池從而減少最後全連線層中的引數。 池化層既可以加快計算速度也可以防止過度擬合問題的作用。 池化層也是通過一個類似過濾器結構完成的,計算方式有兩種: 最大池化層:採用最

tensorflow實戰google深度學習框架

第一章 1.  簡介 第二章 1.  安裝 安裝方法在我的部落格有,包括cpu版,gpu版。   第三章 TensorFlow入門 1.  計算圖 constant是TensorFlow的常量節點,通過constant方法建立,

Tensorflow實戰Google深度學習框架(高清版)PDF

Tensorflow:實戰Google深度學習框架(高清版)PDF百度網盤連結:https://pan.baidu.com/s/1GrKn451PECK0wupXcQDZ3g 提取碼:tw9k 複製這段內容後開啟百度網盤手機App,操作更方便哦哦內容簡介 · · · · · · TensorFlow是谷歌20

TensorFlow遊樂場及神經網路簡介,我以《Tensorflow實戰Google深度學習框架》為主,基礎最重要

轉載:https://blog.csdn.net/broadview2006/article/details/80128755 本文將通過TensorFlow遊樂場來快速介紹神經網路的主要功能。TensorFlow遊樂場(http://playground.tensorflow.org)是一個通

TensorFlow實戰Google深度學習框架(五)影象識別與卷積神經網路

第6章 影象識別與卷積神經網路 本章通過利用CNN實現影象識別的應用來說明如何使用TensorFlow實現卷積神經網路 6.1 影象識別問題簡介及經典資料集 1. Cifar Cifar-10:10種不同種類的60000張影象,畫素大小為3

《TensorFlow實戰Google深度學習框架(第二版)》筆記【1-6章】

第一章:深度學習簡介 在大部分情況下,在訓練資料達到一定數量之前,越多的訓練資料可以使邏輯迴歸演算法對未知郵件做出的判斷越精準。之所以說在大部分情況下,是因為邏輯迴歸演算法的效果除了依賴於訓練資料,也依賴於從資料中提取的特徵。假設從郵件中抽取的特徵只有郵件傳送

《TensorFlow實戰Google深度學習框架(第2版)》高清中文版PDF下載

《TensorFlow:實戰Google深度學習框架(第2版)》高清中文版PDF下載 領域旗艦重磅升級 新老谷歌專家聯袂 首度全面支援1.4.x程式碼 大量增補新版獨有核心功能 下載地址:https://pan.baidu.com/s/1uijUhufBV6nXNgz-VxZUGQ備用地址:https:/

TensorFlow實戰Google深度學習框架(七)迴圈神經網路

RNN網路確實可以解決和時間序列有關係的問題,但是,在實際的應用過程中,我們可以看到效能並不是很好。RNN記住了以前輸入的所有資訊,但是有時候並不需要記住以前時刻的所有資訊,增加了很多的系統記憶體負擔;有時候我們的確需要記住很長時間以前資訊,但是又容易出現梯度爆炸或者梯度消失的問題。針對於這個問題,人們開

《Tensorflow實戰Google深度學習框架》圖書推薦

《Tensorflow:實戰Google深度學習框架》為使用TensorFlow深度學習框架的入門參考書,旨在幫助讀者以最快、最有效的方式上手TensorFlow和深度學習。TensorFlow是谷歌2015年開源的主流深度學習框架,目前已在谷歌、優步(Uber)、京東、小米

基於Theano的深度學習框架keras及配合SVM訓練模型 (非常好的思路DL+DM)

1.介紹 Keras是基於Theano的一個深度學習框架,它的設計參考了Torch,用Python語言編寫,是一個高度模組化的神經網路庫,支援GPU和CPU。keras官方文件地址 地址 2.流程 先使用CNN進行訓練,利用Theano函式將CNN全連線層的值取出來,給SVM進行訓練 3.結果示例 因

深度學習框架哪家強TensorFlow?Caffe?MXNet?Keras?PyTorch?

能夠 平臺 false 對稱 寫到 python form 演示 有一個   深度學習框架哪家強:TensorFlow?Caffe?MXNet?Keras?PyTorch?對於這幾大框架在運行各項深度任務時的性能差異如何,各位讀者不免會有所好奇。    微軟數據科學家Ili

目前人工智慧最火的是-深度學習、機器學習、,採用深入淺出的方法,結合例項並配以大量程式碼練習,重點講解深度學習框架模型、科學演算法、訓練過 程技巧。

深度學習DeepLearning人工智慧核心技術開發與應用 2018年09月13日— 2018年09月16日 北京 物件:從事人工智慧、深度學習、計算機視覺、人臉識別、 影象處理、 行人檢測、自然語言處理 區塊鏈等醫學 遙感 電力 金融 經濟等高維度 資料領域相關的老師 研究生 工程師;