PyTorch是一个开源的Python机器学习库,基于Torch,底层由C++实现,应用于人工智能领域,如自然语言处理。 它最初由Facebook的人工智能研究团队开发,并且被用于Uber的概率编程软件Pyro。
PyTorch 是一个开源的 Python 机器学习库,基于 Torch,底层由 C++实现,应用于人工智能领域,如自然语言处理。 它最初由 Facebook 的人工智能研究团队开发,并且被用于 Uber 的概率编程软件 Pyro。
2017 年 1 月,由 Facebook 人工智能研究院(FAIR)基于 Torch 推出了 PyTorch。它是一个基于 Python 的可续计算包,提供两个高级功能:1、具有强大的 GPU 加速的张量计算(如 NumPy)。2、包含自动求导系统的的深度神经网络。
PyTorch 主要有两大特征:
类似于 NumPy 的张量计算,可使用 GPU 加速;基于带自动微分系统的深度神经网络。
PyTorch 包括 torch.nn、torch.optim 等子模块。
发展
PyTorch 的前身是 Torch,其底层和 Torch 框架一样,但是使用 Python 重新写了很多内容,不仅更加灵活,支持动态图,而且提供了 Python 接口。它是由 Torch7 团队开发,是一个以 Python 优先的深度学习框架,不仅能够实现强大的 GPU 加速,同时还支持动态神经网络,这是很多主流深度学习框架比如 Tensorflow 等都不支持的。
PyTorch 既可以看作加入了 GPU 支持的 numpy,同时也可以看成一个拥有自动求导功能的强大的深度神经网络。除了 Facebook 外,它已经被 Twitter、CMU 和 Salesforce 等机构采用。
优点
PyTorch 是相当简洁且高效快速的框架设计追求最少的封装设计符合人类思维,它让用户尽可能地专注于实现自己的想法与 google 的 Tensorflow 类似,FAIR 的支持足以确保 PyTorch 获得持续的开发更新PyTorch 作者亲自维护的论坛 供用户交流和求教问题入门简单
基础环境
一台 PC 设备、一张高性能 NVIDIA 显卡(可选)、Ubuntu 系统。