【PyTorch】(一)简介

1. PyTorch是什么?

  • PyTorch是一个深度学习框架,由Facebook于2016年开源发布。
  • PyTorch是基于Torch框架的Python接口,旨在提供易用的强大工具来进行神经网络的构建和训练。
  • PyTorch使用动态计算图,使得开发人员可以以类似于NumPy的方式编写代码,同时利用GPU加速进行高效的数值计算。
  • PyTorch在学术界和工业界都得到了广泛的应用,是当前最受欢迎和流行的深度学习框架之一。

2. PyTorch的特点

  • 动态图:PyTorch使用动态图来定义计算图,这使得PyTorch非常灵活,能够实现许多复杂的计算图。同时,使用动态图可以提高开发效率,因为开发者不需要很多额外的代码来定义计算图。

  • 自动求导:PyTorch自带的自动求导机制可以计算任意可微函数的梯度,这使得开发者不必亲自编写反向传播算法。

  • 易于学习:由于PyTorch的语法与Python非常相似,因此学习曲线相对较短。

  • 库丰富:PyTorch社区非常活跃,有很多优秀的库可以支持我们完成各种任务。

  • 前沿技术支持:PyTorch是深度学习领域的前沿技术之一,能够支持最新的深度学习算法,如GAN、强化学习等。

3. PyTorch的架构

3.1. PyTorch组件

组件 描述
torch 类似NumPy的张量库,拥有强大GPU支持
torch.autograd 基于磁带的自动微分库,支持torch中所有可微分的张量操作
torch.jit

编译堆栈(TorchScript),

用于从PyTorch代码创建可序列化和可优化的模型

torch.nn 与自动梯度深度集成的神经网络库,追求最大限度的灵活性
torch.multiprocessing

Python多进程处理,但在进程之间以神奇的方式共享torch张量内存。

适用于数据加载和Hogwild训练

torch.utils 数据加载器和其他易用的实用函数

3.2. 机器学习角度划分

测试

你可能感兴趣的:(深度学习)