202410

1009

plato代码理解

  • ./plato.servers.registry

  • 服务器的导入和实例化

  • ./plato.config.Config

  • 配置文件信息的读取和解析

1005

plato实验:FedAvg

1004

plato实验:FedMos

1003

plato实验

  • FedSCR

    Wu et al., “FedSCR: Structure-Based Communication Reduction for Federated Learning, ” IEEE Trans. Parallel Distributed Syst., 2021.

    • 配置文件
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # The total number of clients
    total_clients: 10

    # The number of clients selected in each round
    per_round: 2

    # The training and testing dataset
    datasource: MNIST

    # The maximum number of training rounds
    rounds: 3

    # The machine learning model
    model_name: lenet5
    • 输出样式
    round accuracy elapsed_time comm_time round_time comm_overhead
    1 0.137 94.84838 0.042602 7.704564 0.532417
  • Sub-FedAvg

    Vahidian et al., “Personalized Federated Learning by Structured and Unstructured Pruning under Data Heterogeneity, ” in Proc. 41st IEEE International Conference on Distributed Computing Systems Workshops (ICDCSW), 2021.

    • 配置文件:跟上面差不多规模
    • 输出样式:相同

202409

0929~1002

课程《计算机网络系统与工程》实验

0928

论文

没太看明白,再看一遍(+记录)

0927

论文

FIGRET DESIGN

  • 突发流量的处理:文章通过施加约束来处理突发流量

  • 如何计算求解出一个TE方案:end-to-end method+deep learning

  • 损失函数的设计

0925

论文

FIGRET的研究动机&主要见解

  • 处理突发流量的必要性
  • 不同源-目的对(简称SD对)下的流量特性不同
  • 不同TE方案下网络性能的表现

TE Model

凸优化

讨论复合函数的凸性

0924

计算机网络:应用层-3

FTP:概述、原理、命令与响应

Email

  • 组成部分
  • SMTP
  • 其他邮件访问协议

论文

  • 针对突发流量,采用两种策略对网络进行测试,观察不同策略下突发流量对网络性能的影响。
  • 实验证明,处理突发流量是有必要的,能够避免网络拥塞。
  • 不可忽视的是,处理突发流量会使得非突发场景下网络的性能达不到最佳,因为这种策略有时会让流量选择一条非最优路径。

0923

凸优化-4

保持函数的凸性

  • 非负加权和
  • 仿射映射
  • 多个函数的极大值函数

论文

名词/概念

研究背景

相关工作

本文工作

实验评估

0922

计算机网络:应用层-2

术语、HTTP概况、响应时间模型、cookies、web缓存

0918

Alibaba HPN: A Data Center Network for Large Language Model Training

概念辨析

  • ECMP、哈希极化、Clos……

研究背景与问题

本文贡献

计算机网络:应用层-1

网络应用的体系结构

  • 客户-服务器模式 (C/S: Client/Server)
  • 对等模式 (P2P: Peer-to-Peer)
  • 混合模式:客户-服务器和对等体系结构的组合

进程通信

  • 不同架构下的进程
  • 分布式进程需要解决的问题

0917

MCCS: A Service-based Approach to Collective Communication for Multi-Tenant Cloud

研究背景

聚焦问题

工作、贡献点

实现

凸优化-4

凸函数的定义

  • 原始定义
  • 一阶条件
  • 二阶条件

凸函数的扩展

重要凸函数的证明

0916

POSTS

  • 计算LLM需要多少GPU内存的公式和工具
  • 对偶问题

计算机网络

Internet结构和ISP

分组延时、丢失和吞吐量

协议层次和服务模型

0915

凸优化-3

保凸运算

  • 凸集的交集
  • 仿射函数
  • 凸集的和
  • 线性矩阵不等式
  • 透视函数
  • 线性分数函数

0914

Papers:TE-CCL

  • 研究背景
  • 相关工作
  • 本文工作

0913

论文

CacheGen: KV Cache Compression and Streaming for Fast Large Language Model Serving

  • 研究背景
  • 相关工作
  • 本文工作

计算机网络:接入网和物理媒体

接入网

  • 家庭网络
  • 企业接入
  • 无线接入

物理媒体

  • 导引型媒体和非导引型媒体
  • 同轴电缆和光缆
  • 无线链路

0912

论文

Crux:GPU-Efficient Communication Scheduling for Deep Learning Training

  • 实验方案
  • 测试平台
  • 仿真实验
  • 两个得到测试的网络拓扑结构
  • 性能指标
  • 消融实验
  • 研究结论与展望
  • 局限性

论文

Crux:GPU-Efficient Communication Scheduling for Deep Learning Training

  • 实验方案
  • 测试平台
  • 仿真实验
  • 两个得到测试的网络拓扑结构
  • 性能指标
  • 消融实验
  • 研究结论与展望
  • 局限性

0911

论文

Crux:GPU-Efficient Communication Scheduling for Deep Learning Training

  • Crux方案设计

    • 基于GPU-Intensity的路径选择
    • 优先级赋值:综合考虑作业的GPU-Intensity和深度学习训练任务本身特性(如迭代时间、通信-计算重叠),赋予相应的优先级以提高GPU利用率
    • 优先级压缩
      • 由于现实情况的限制,不可能为每个任务都设置不同的优先级,因此需要将一些任务的优先级进行压缩(如将没有通信争用风险的作业设置为同一优先级)
  • 优先级压缩的数学理解

    • 用DAG描述每对需要压缩优先级的任务之间潜在的GPU损失情况

    • 在已有优先级的基础上,将所有任务划分为不同子集,相同子集内的任务优先级也相同

    • 优化目标:尽可能将存在通信争用风险的任务设置为不同优先级)

    • 该问题可以使用动态规划,多次采样得到近似解

0909

POST

凸优化-2

  • 单纯形相关问题讨论

  • 矩阵空间相关问题讨论

计算机网络

接入网

  • modem
  • DSL
  • 线缆网络

0908

计算机网络

网络核心

  • 数据怎样进行传输?
  • 电路交换
    • 频分、时分、波分
  • 分组交换
    • 数据报网络
    • 虚电路网络

凸优化:重要的凸集

  • n维空间及其子空间
  • 任意直线/线段、射线
  • 超平面与半空间
  • 球、椭球
  • 多面体、单纯形
  • 对称矩阵、对称半正定矩阵、对称正定矩阵

0907

凸优化-1

NOTE:

为求效率,方便起见,凸优化部分以手写笔记pdf的形式呈现。

  • 仿射集、仿射组合、仿射包
  • 凸集、凸组合、凸包
  • 锥、凸锥、凸锥组合、凸锥包

计算机网络:网络边缘

  • 网络结构

  • 应用进程之间的通讯模式

  • 基础设施提供服务的方式

0906

实验

  • 问题240905

  • 尝试:卸载miniforge3,安装anaconda3,在git bash中重新编辑~/.bashrc

  • 状态:已解决

  • 环境配置

  • 在LM虚拟环境下安装torch、transformers、accelerate对应版本

  • 问题240906

  • 目的:运行脚本mezo.sh

  • 情况

    • 1)模型加载失败

    • 2)cuda加载失败

    • 3)训练器初始化失败

  • 尝试

    • 重新设置参数model_name为已缓存的模型路径(模型为opt-13b)
    • 重设cuda内存计算方式
  • 状态:3)未解决,GPU空间不足

  • NotImplementedError: Cannot copy out of meta tensor; no data!

0905

实验

  • git clone large_models
  • 参数设置与环境配置
  • 问题240905
  • 目的:实验环境使用miniforge3搭建,根据提供的脚本,在git bash内运行脚本
  • 情况:git bash内无法激活实验环境
  • 尝试:检查~/.bashrc文件是否正确编辑;卸载重装miniforge3;卸载重装git
  • 状态:未解决

0904

Fine-Tuning Language Models with Just Forward Passes

  • ZO梯度估计器的数学公式
  • 经典ZO+SGD
  • MeZO的算法理解

0903

最优化理论与方法

  • 优化/数学规划问题的定义
  • 优化/数学规划问题的形式化
  • 优化问题实例

计算机网络:什么是Internet

  • 网络、计算机网络与互联网
  • 互联网的具体构成
  • 从服务角度看互联网

0822

202408

0822

PyTorch回顾与整理

torch.nn Tutorial

PyTorch:数据集/数据处理

PyTorch:优化器

PyTorch:损失函数

PyTorch:激活函数

PyTorch:其他函数

0821

Fine-Tuning Language Models with Just Forward Passes

问题

  1. 语言模型规模日益增长,反向传播需要大量存储空间
  2. Zeroth-order (ZO) 方法原则上可以仅使用两次前向传播来估计梯度,但对于大模型的优化不太好

工作:a memory-efficient zerothorder optimizer (MeZO)

  • 通过对经典的ZO-SGD进行调整来完成原地操作,由此以与前馈相同的存储空间来微调模型

实验

  • 在多种类型的模型(masked and autoregressive LMs)、不同规模(最大规模66B)和不同下游任务(分类、多项选择、生成)上进行了全面的实验。

成果和结论

  • MeZO的表现要明显优于 in-context learning和linear probing
  • MeZO 通过跨多个任务的反向传播实现了与微调相当的性能,在实验中,内存减少了高达 12 倍,GPU 小时减少了高达 2 倍
  • MeZO兼容全参数和参数高效的调优技术,例如LoRA和前缀调优
  • MeZO 可以有效地优化不可微分的目标(例如,最大化准确性或 F1)。充分的预训练和任务提示使得MeZO能够微调huge models

0820

大模型下载

  • meta-llama-3.1-8B
  • meta-llama-3.1-70B

0703

202407

0703

Principles of Large-Scale hhMachine Learning [Lecture 4(2)]

Learning with Gradient Descent

  1. 梯度下降原理中关于泰勒展开的细节
  2. 凸函数的定义与相关性质
  • 实例:线性回归

0617

202406

0617

Principles of Large-Scale hhMachine Learning [Lecture 4(1)]

Learning with Gradient Descent

  1. 回顾:经验风险最小化与梯度下降
  2. 牛顿迭代法
  3. 梯度下降原理

高数回顾:泰勒定理

线性代数回顾

  • 计算非线性函数的 Hessian 矩阵
  • 特征值的求法
  • 谱范数
  • 二次型

0616

Principles of Large-Scale hhMachine Learning [Lecture 3(2)]

Exponential Concentration Inequalities and ERM

  1. 使用霍夫丁不等式进行样本量估计
  • 单模型场景
  • 多模型场景
  1. 与切比雪夫不等式的对比:霍夫丁不等式界限要严格得多,可以更好地适应多模型场景下的样本量估计。
  2. 经验风险最小化(ERM)
  • 梯度下降(所有样本参与)
  • 随机梯度下降(随机样本参与)

PyTorch

CIFAR10 Tutorial

  1. 训练一个图片分类器的步骤
  • 加载并规范化数据集
  • 定义神经网络
  • 定义损失函数
  • 训练和测试
  1. 数据集加载与处理
  • transforms.Compose
  • torchvision.datasets.*
  • torch.utils.data.DataLoader
  1. 在GPU上进行训练

0614

Principles of Large-Scale hhMachine Learning [Lecture 3(1)]

Exponential Concentration Inequalities and ERM

  1. 在利用子采样近似计算经验风险(010-1损失)时,使用切比雪夫不等式来估算需要的样本量。
  2. 多模型场景下,切比雪夫不等式估算样本量的过程与局限性。
  • 切比雪夫不等式给出的概率界限通过事件方差来计算,界限减小速度是多项式的,不够快。
  • 使用切比雪夫不等式估算样本量时,多模型场景下需要非常多的样本来进行经验风险的近似计算。

概率论回顾

  1. 子采样的数学期望、方差推导
  2. 010-1损失函数与随机变量的方差
  3. Boole 不等式

0612

PyTorch

Neural Networks Tutorial

  1. 神经网络搭建:卷积层、线性层
  2. 前向传播
  • 输入张量经过各层处理后形状上发生的变化
  • 池化层、激活函数的使用
  1. 网络参数:卷积层权重的形状及其含义
  2. 损失计算
  • 输出张量与目标张量的形状必须匹配
  • 均方误差MSELoss
  1. 反向传播
  1. 梯度更新:随机梯度下降SGD

0611

PyTorch

torch.nn使用(函数原型、参数含义、原理、实例)

  1. torch.nn.Linear
  2. torch.nn.Conv2d
  3. torch.nn.MaxPool2d

卷积神经网络

  1. 多层感知机在图像处理上的局限性
  2. 人类视觉原理
  3. 卷积神经网络基本原理

0610

PyTorch

  1. Tensor Tutorial
  • 初始化
  • 属性:shape、dtype、device等
  • 操作:转置、索引、切分等
  1. Autograd Tutorial
  • 神经网络简介:前馈与反馈、误差与梯度计算
  • autograd在神经网络中的使用:backward()
  • autograd原理、计算图、取消autograd的方式

0608

Principles of Large-Scale Machine Learning [Lecture1、2]

Estimating the empirical risk with samples

  • Empirical Risk介绍

  • 计算加速措施:并行化、小批量梯度下降、硬件加速、近似计算

  • 近似计算Empirical Risk的原理

    • 子采样

      引入随机变量 Z,代表随机采样一个样本的损失值。多次独立地抽取 Z 的样本,这些样本的平均值将近似于经验风险 R~emp~。

    • 大数定律

      根据统计学原理,一组独立随机变量的平均值往往聚集在该随机变量的期望值周围。

    • 中心极限定理

      随着我们采样更多的 Z,样本平均值会越来越接近真实的期望值。

    • 集中不等式

      随机变量 Z 集中在某个取值附近的概率:马尔可夫不等式、切比雪夫不等式、霍夫丁不等式