700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > pytorch实现手写数字识别_Paddle和Pytorch实现MNIST手写数字集识别对比

pytorch实现手写数字识别_Paddle和Pytorch实现MNIST手写数字集识别对比

时间:2021-03-03 14:55:43

相关推荐

pytorch实现手写数字识别_Paddle和Pytorch实现MNIST手写数字集识别对比

一、简介

1. Paddle

PaddlePaddle是百度自主研发的集深度学习核心框架、工具组件和服务平台为一体的技术领先、功能完备的开源深度学习平台,有全面的官方支持的工业级应用模型,涵盖自然语言处理、计算机视觉、推荐引擎等多个领域,并开放多个预训练中文模型。

PaddlePaddle同时支持稠密参数和稀疏参数场景的大规模深度学习并行训练,支持千亿规模参数、数百个节点的高效并行训练。PaddlePaddle拥有多端部署能力,支持服务器端、移动端等多种异构硬件设备的高速推理,预测性能有显著优势。目前PaddlePaddle已经实现了API的稳定和向后兼容,具有完善的中英双语使用文档。

PaddlePaddle是一个开源的深度学习平台,而在我们进行使用的时候主要使用的是其核心框架Paddle Fluid。Paddle Fluid提供覆盖深度学习开发、训练、预测及部署全流程的服务。

和其他我们常用的深度学习框架一样,Fluid同样使用Tensor结构来承载数据。

2. Pytorch

Pytorch是torch的python版本,是由Facebook开源的神经网络框架,专门针对 GPU 加速的深度神经网络(DNN)编程。Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。与Paddle Fluid的动态计算图相同,pytorch的计算图也是动态的,可以根据计算需要实时改变计算图。但由于Torch语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。作为经典机器学习库 Torch 的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。

二、任务简介

三、代码实现

1. Paddle

import

2. Pytorch

import

三、对比

1.结果

Paddle:

Pytorch:

两者都可以极快地达到较高的准确率

2.实现方式

两者都采取的是动态图

两者都有直接支持MNIST数据集的获取,但是Pytorch需要自己进行归一化、居中等处理,但是Paddle提供的数据是已经处理过后了的。

两者提供的读取数据的相关API基本类似,都可以直接做到随机读取数据等。

在模型训练过程中都支持自动求导,多有相同的损失函数接口,不同求导方式的接口等,搭建模型都十分方便。

总的来说,两者差距很小,学会了其中任意一种再去使用其他的都可以极快地上手。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。