day08||深度学习(李沐动手学深度学习)

学习进度:【37/73】

计算性能

提升CPU利用率

提升GPU利用率

CPU/GPU 带宽

CPU/GPU 高性能计算编程

总结

深度学习硬件(TPU和其他)

手机内部的芯片

DSP:数字信号处理

TPU,全称为Tensor Processing Unit(张量处理单元),是一种专门用于机器学习的高性能芯片。它由Google设计,旨在优化和加速深度学习任务,如神经网络的训练和推理过程。TPU的设计围绕脉动阵列(Systolic Array)的概念,利用128x128的乘法累加单元(MXU)阵列,通过高效的矩阵运算来提升计算速度。这种设计使得TPU在执行机器学习相关任务时,相比传统的CPU和GPU,能够提供更高的性能和能效比。

TPU的主要特点包括:

  1. 脉动阵列架构:TPU内部的脉动阵列允许数据以波浪的形式在芯片上流动,从而高效地执行矩阵乘法操作,这是深度学习中的关键计算。
  2. 高效的矩阵运算:TPU优化了矩阵乘法的计算精度,采用了8位表示浮点数,以提高推断速度。
  3. 异构计算模型:TPU支持异构计算,由主机端发送指令,设备端接收指令并执行操作。
  4. 内存分类:TPU区分系统内存(Global Memory)和本地内存(Local Memory),其中系统内存通常为DDR内存,而本地内存为NPU内部存储数据的内存。

TPU在Google云平台中以Pods的形式存在,每个Pod包含多个TPU芯片,提供大规模的并行计算能力。这种设计使得TPU非常适合处理大规模的机器学习模型,尤其是在需要快速响应的实时应用中。

此外,TPU的设计还考虑了存储带宽、内存访问速度和数据传输效率等因素,以确保在执行深度学习模型时能够达到最佳性能。Google的TPU已经发展到第三代,每一代都在性能和功能上有所提升,以满足不断增长的机器学习需求。

可编程阵列(FPGA)

AI ASIC

Systolic Array

总结

       · 灵活性、易用性:Intel(CPU) > GPU > DSP > FPGA > ASIC
  · 性能功耗:Intel(CPU) < GPU < DSP < FPGA < ASIC

单机多卡并行
  • 单机多卡并行

  • 数据并行 vs 模型并行

  • 数据并行

总结

分布式训练

本质上来说和之前讲的单机多卡并行没有区别。二者之间的区别是分布式计算是通过网络把数据从一台机器搬到另一台机器

GPU机器架构

总的来说,gpu到gpu的通讯是很快的,gpu到cpu慢一点。机器到机器更慢。因而总体性能的关键就是尽量在本地做通讯而少在机器之间做通讯

同步 SGD

性能

性能的权衡

实践时的建议

总结

batchsize达到一定程度,每个batch内的样本的多样性不会比之前有多大增长,对梯度的贡献也不会比之前的batch大多少,但是大的batchsize会带来更多的训练时间,就造成了训练有效性下降。

计算机视觉

图像增广

chapter_computer-vision/image-augmentation.ipynb

数据增广

数据增强

使用增强数据训练

总结

某一种数据增强的方法有用,很多时候是因为测试集中某些图片和原始图片通过这种数据增强的方式处理之后的效果类似

  • 很多时候应该从结果向前推,通过对现场部署的情况或者测试集可能发生的变化进行分析,由此来反推所需要进行的数据增强
  • 在实践中,通常结合多种图像增广方法

微调

chapter_computer-vision/fine-tuning.ipynb

神经网络的网络架构

微调中的权重初始化

训练时的微调

重用分类器权重

固定一些层

总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值