人工智能:PyTorch深度学习框架

人工智能 机器学习
PyTorch是一个基于Torch的Python机器学习框架。它是由Facebook的人工智能研究小组在2016年开发的,解决了Torch因为使用Lua编程语言普及度不高的问题,故采用了集成非常广泛的Python编程语言来实现。

今天给大家讲解一下PyTorch深度学习框架的一些基础知识,希望对大家理解PyTorch有一定的帮助!

1、PyTorch

PyTorch是一个基于Torch的Python机器学习框架。它是由Facebook的人工智能研究小组在2016年开发的,解决了Torch因为使用Lua编程语言普及度不高的问题,故采用了集成非常广泛的Python编程语言来实现。

2、PyTorch常用的工具包

  • torch:类似于Numpy的通用数组库,可以在将张量类型转换为(torch.cuda.TensorFloat)并支持在GPU上进行计算。
  • torch.autograd:主要用于构建计算图形并自动获取渐变的包
  • torch.nn:具有共同层和成本函数的神经网络库
  • torch.optim:具有通用优化算法(如SGD,Adam等)的优化包
  • torch.utils:数据载入器。具有训练器和其他便利功能
  • torch.legacy(.nn/.optim) :处于向后兼容性考虑,从 Torch 移植来的 legacy 代码
  • torch.multiprocessing:python 多进程并发,实现进程之间 torch Tensors 的内存共享

3、PyTorch特点

  • 动态神经结构:PyTorch通过一种反向自动求导的技术,可以做到零延迟地任意改变神经网络的行为,避免因为构建神经网络完成后,如果需要调整神经网络结构,只能从头开始的麻烦,采用PyTorch大大节省了人力和时间成本。
  • Debug调试方便:PyTorch 的设计思路是线性、直观且易于使用的,当你执行一行代码时,一步步去执行,不涉及异步调试的繁琐,所以当代码出现Bug 的时候,可以通过很方便定位代码的位置,避免因为bug错误的指向或者异步和不透明的引擎造成查询问题的麻烦。
  • 代码简洁易懂:PyTorch的代码相对于Tensorflow更加简洁容易读懂,并且PyTorch本身源代码阅读起来也要友好很多这样更容易深入理解PyTorch。
  • 社区活跃度高:PyTorch 拥有一个非常活跃的社区和论坛(discuss.pytorch.org)。它的文档(pytorch.org)梳理的非常清晰,初学者入门很快;并且它与 PyTorch 版本保持同步,并提供一组完整教程。PyTorch 使用起来非常简单,所以学习成本也就比较低。

4、PyTorch不足之处

  • 可视化监控能力弱:缺少直接可用监控和可视化接口:
  • 不如TensorFlow应用广泛:PyTorch 不是端到端的机器学习开发工具;实际应用程序的开发需要将 PyTorch 代码转换为另一个框架,例如 Caffe2,转换后将应用程序部署到服务器、工作站和移动设备。
责任编辑:武晓燕 来源: IT技术分享社区
相关推荐

2022-11-13 08:11:03

TensorFlow人工智能开源

2021-03-30 13:45:00

人工智能

2021-04-16 09:53:45

人工智能机器学习深度学习

2021-04-07 10:48:45

人工智能深度学习

2021-04-07 10:52:35

人工智能深度学习

2021-02-26 10:02:13

人工智能深度学习机器学习

2021-02-22 10:59:43

人工智能机器学习深度学习

2017-03-18 16:28:40

人工智能机器学习深度学习

2017-05-02 13:45:14

2021-12-01 22:55:45

人工智能机器学习深度学习

2016-09-01 14:47:56

人工智能机器学习深度学习

2018-05-11 14:34:24

人工智能机器学习深度学习

2018-06-28 20:47:18

人工智能机器学习深度学习

2024-02-26 00:00:00

人工智能序列数据机器人

2021-07-27 13:30:25

人工智能机器学习深度学习

2024-03-14 08:00:00

人工智能生成式对抗网络网络钓鱼

2017-06-28 15:37:28

2019-10-25 15:58:10

人工智能机器学习技术

2017-09-01 16:05:09

人工智能深度学习机器学习

2019-03-25 09:59:58

人工智能深度学习技术
点赞
收藏

51CTO技术栈公众号