LLM 大语言模型实战 (一)-深度学习基础和 CUDA 原理及并行计算

深度学习基础

DIGTIME | Python:交叉熵-损失函数 (六十)
DIGTIME | Python:Logistic 逻辑回归 (六十一)
DIGTIME | Python:梯度下降 (六十二)
Python:梯度下降 Lab (六十三)

CUDA 原理及并行基础

分布式

  • 有多台自主计算机,在用户角度这些计算机似乎是单个系统;
  • 在分布式系统中,没有共享内存,计算机通过消息传递相互通信;

    SIMD

  • 多个处理器同时执行分配给它们的多个任务(同一指令多数据)
  • 内存可以共享或分布式

手写深度学习框架

在过去的几年里,深度学习已经成为成功解决视觉、自然语言处理、机器人等许多不同领域问题的重要技术。推动这一成功的一个重要因素是深度学习系统的开发,该系统可以有效地支持使用许多设备并可能使用分布式资源来学习和推理复杂模型的任务。如何构建和优化这些深度学习系统的研究现在是一个活跃的研究和商业化领域,但还没有涵盖该主题的课程。
本课程旨在填补这一空白。我们将涵盖深度学习系统的各个方面,包括:深度学习基础知识、用于表达机器学习模型的编程模型、自动微分、内存优化、调度、分布式学习、硬件加速、领域特定语言和模型服务。其中许多主题与数据库、系统和网络、体系结构和编程语言等现有研究方向相交叉。目标是全面了解深度学习系统的工作原理,讨论和执行可能的研究机会,并构建具有广泛吸引力的开源软件
我们每周有两节课。该课程将是讲座或实验室/讨论课程。每场讲座都会研究深度学习系统的一个特定方面。实验室/讨论会议将包含实现该特定方面的教程,并将包括现有系统的案例研究,例如 Tensorflow、Caffe、Mxnet、PyTorch 等。

Prerequisites

  • Proficiency in Python, familar in C/C++
  • We will mainly be using python for case study the existing systems, and C/C++ for some of the background hacking.
  • Basic knowledge of machine learning (e.g CSE 546)
  • Prior knowledge in system (operating system/database) is useful but not required.

相关文章:
陈天奇|手写深度学习框架
schedule
课程代码|dlsys-course/dlsys-course.github.io
陈天奇|TVM-深度学习全栈自动优化和软硬件协同设计

为者常成,行者常至