X2Paddle

深度学习模型转换工具
授权协议 Apache
开发语言 Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 国产
投 递 者 昝卓
操作系统 跨平台
开源组织 百度
适用人群 未知
 软件概览

X2Paddle支持将其余深度学习框架训练得到的模型,转换至PaddlePaddle模型。

## CPU版本安装命令
pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle

## GPU版本安装命令
pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu

环境依赖

python >= 3.5
paddlepaddle >= 1.5.0

以下依赖只需对应安装自己需要的即可
转换tensorflow模型 : tensorflow == 1.14.0
转换caffe模型 : caffe == 1.0.0
转换onnx模型 : onnx == 1.5.0 pytorch == 1.1.0

安装

安装方式一(推荐)

使用最新的代码版本,可使用如下方式进行安装

pip install git+https://github.com/PaddlePaddle/X2Paddle.git@develop

安装方式二

我们会定期更新pip源上的x2paddle版本

pip install x2paddle

安装方式三

git clone https://github.com/PaddlePaddle/X2Paddle.git
cd X2Paddle
git checkout develop
python setup.py install

使用方法

TensorFlow

x2paddle --framework=tensorflow --model=tf_model.pb --save_dir=pd_model

Caffe

x2paddle --framework=caffe --prototxt=deploy.proto --weight=deploy.caffemodel --save_dir=pd_model

ONNX

x2paddle --framework=onnx --model=onnx_model.onnx --save_dir=pd_model

参数选项

参数  
--framework 源模型类型 (tensorflow、caffe、onnx)
--prototxt 当framework为caffe时,该参数指定caffe模型的proto文件路径
--weight 当framework为caffe时,该参数指定caffe模型的参数文件路径
--save_dir 指定转换后的模型保存目录路径
--model 当framework为tensorflow/pmmx时,该参数指定tensorflow的pb模型文件或onnx模型路径
--caffe_proto [可选]由caffe.proto编译成caffe_pb2.py文件的存放路径,当存在自定义Layer时使用,默认为None

使用转换后的模型

转换后的模型包括model_with_codeinference_model两个目录。
model_with_code中保存了模型参数,和转换后的python模型代码
inference_model中保存了序列化的模型结构和参数,可直接使用paddle的接口进行加载,见load_inference_model

  • 一、简介 X2Paddle 是飞桨生态下的模型转换工具,致力于帮助其它深度学习框架用户快速迁移至飞桨框架。目前支持 推理模型的框架转换 与 PyTorch训练代码迁移,提供了详细的不同框架间 API 对比文档,降低开发者上手飞桨核心的学习成本。 二、特性 支持主流深度学习框架 目前已经支持 Caffe/TensorFlow/ONNX/PyTorch 四大框架的预测模型的转换,PyTorch 训练项

  • 本文档基于X2Paddle研发过程梳理了 PyTorch(v1.8.1)常用 API 与 PaddlePaddle 2.0.0 API 对应关系与差异分析。通过本文档,帮助开发者快速迁移 PyTorch 使用经验,完成模型的开发与调优。 X2Paddle 介绍 X2Paddle 致力于帮助其它主流深度学习框架开发者快速迁移至飞桨框架,目前提供三大功能 预测模型转换 支持 Caffe/TensorF

  • TensorFlow预测模型 模型 代码 SqueezeNet code MobileNet_V1 code MobileNet_V2 code ShuffleNet code mNASNet code EfficientNet code Inception_V3 code Inception_V4 code Inception_ResNet_V2 code VGG16 code ResNet_V

  • pip install tensorflow-gpu==1.12.0 -i https://pypi.tuna.tsinghua.edu.cn/simple pip install paddlepaddle-gpu==1.3.0.post97 -i https://pypi.tuna.tsinghua.edu.cn/simple # 上述安装过程可能会提示protobuf版本问题 # 升级pr

  • 具体参见:https://github.com/PaddlePaddle/X2Paddle/tree/master/tensorflow2fluid 步骤如下 0 配置环境(cpu)建议安装在 虚拟环境 如果存在错误,请卸载重装 pip install tensorflow==1.12.0 pip install paddlepaddle==1.3 pip install protobuf --u

 相关资料
  • 主要内容 课程列表 专项课程学习 辅助课程 论文专区 课程列表 课程 机构 参考书 Notes等其他资料 卷积神经网络视觉识别 Stanford 暂无 链接 神经网络 Tweet 暂无 链接 深度学习用于自然语言处理 Stanford 暂无 链接 自然语言处理 Speech and Language Processing 链接 专项课程学习 下述的课程都是公认的最好的在线学习资料,侧重点不同,但推

  • Google Cloud Platform 推出了一个 Learn TensorFlow and deep learning, without a Ph.D. 的教程,介绍了如何基于 Tensorflow 实现 CNN 和 RNN,链接在 这里。 Youtube Slide1 Slide2 Sample Code

  • 现在开始学深度学习。在这部分讲义中,我们要简单介绍神经网络,讨论一下向量化以及利用反向传播(backpropagation)来训练神经网络。 1 神经网络(Neural Networks) 我们将慢慢的从一个小问题开始一步一步的构建一个神经网络。回忆一下本课程最开始的时就见到的那个房价预测问题:给定房屋的面积,我们要预测其价格。 在之前的章节中,我们学到的方法是在数据图像中拟合一条直线。现在咱们不

  • 深度学习的总体来讲分三层,输入层,隐藏层和输出层。如下图: 但是中间的隐藏层可以是多层,所以叫深度神经网络,中间的隐藏层可以有多种形式,就构成了各种不同的神经网络模型。这部分主要介绍各种常见的神经网络层。在熟悉这些常见的层后,一个神经网络其实就是各种不同层的组合。后边介绍主要基于keras的文档进行组织介绍。

  • Python 是一种通用的高级编程语言,广泛用于数据科学和生成深度学习算法。这个简短的教程介绍了 Python 及其库,如 Numpy,Scipy,Pandas,Matplotlib,像 Theano,TensorFlow,Keras 这样的框架。

  • 你拿起这本书的时候,可能已经知道深度学习近年来在人工智能领域所取得的非凡进展。在图像识别和语音转录的任务上,五年前的模型还几乎无法使用,如今的模型的表现已经超越了人类。

  • 我试图解决序列完成的问题。假设我们有基本真值序列(1,2,4,7,6,8,10,12,18,20) 我们模型的输入是一个不完整的序列。i、 e(1,2,4,10,12,18,20)。从这个不完整序列中,我们想要预测原始序列(地面真值序列)。哪些深度学习模型可以用来解决这个问题? 这是编码器-解码器LSTM体系结构的问题吗? 注:我们有数千个完整的序列来训练和测试模型。 感谢您的帮助。

  • 主要内容:机器学习,深度学习,机器学习与深度学习的区别,机器学习和深度学习的应用人工智能是近几年来最流行的趋势之一。机器学习和深度学习构成了人工智能。下面显示的维恩图解释了机器学习和深度学习的关系 - 机器学习 机器学习是让计算机按照设计和编程的算法行事的科学艺术。许多研究人员认为机器学习是实现人类AI的最佳方式。机器学习包括以下类型的模式 - 监督学习模式 无监督学习模式 深度学习 深度学习是机器学习的一个子领域,其中有关算法的灵感来自大脑的结构和功能,称为人工神经网络。