问题定义

输入两个 Tensor:\(input[Batch, Ci, Ih, Iw]\) (经典 NCHW 布局)、\(kernel[Co, Ci, Kh, Kw]\)(为适应 Coalesced Access 可重排为 \([Co, Kh, Kw, Ci]\)),其中前者为 FP32/FP16 类型,后者为 INT4/INT8 类型。输出卷积结果。

可以发现,对于 \(Iw = Ih = Ow = Oh = Kw = Kh = Dw = Dh = Sw = Sh = 1\)(输入、输出、卷积核尺寸、扩张率 Dilute、步长 Stride 均为 1x1),\(Pw = Ph = 0\)(不填充)的情况,卷积退化为标准卷积乘法 \([Batch, Ci] \times [Ci, Co]\),以下简记为 \(A[N, K] \times B[K, M]\)。(当然,即使不是如此,也可以通过 Im2Col 或 Implicit Conv 等方式将其转换成可直接使用加速库的矩阵乘法)。

对于 \(B\)(在 LLM 推理中通常为量化后权重矩阵),采用 Per-block 量化,即在 \(K\) 维度上,每 \(block\_size\) 个元素共享一套量化参数(\(scale\)\(zero\_point\)),\(M\) 维度不共享。因此可以理解为,将 \(B\) 的每列按 \(block\_size\) 划分为多个竖条,总块数为 \(K / block\_size \times M\)

阅读全文 »

强化学习的数学原理

RL 基本原理

一、基本概念

  • Agent:操作主体;
  • State:agent 所处状态(位置、速度等);State Space:状态集合;
  • Action:可采取的行动,依赖于 state: \(\mathcal{A}(s_i)\);State Transition:采取 action 后 state 的转变;
  • Policy:agent 在特定 state 采取的 action:概率表达为 \(\pi(a_i | s_1)\)
  • Reward:采取某个 action 后得到的奖励(可负); \(p(r=1 | s1, a1)\)
  • Trajectory:一条 state-action-reward 链;Return:一个 Trajectory 沿途所有 Reward 之和;Discount Rate:计算 Discounted Return 时,reward 随步数的衰减因子 \(\gamma\)
  • Episode:走到终止态 Terminal State 的一个 Trajectory;没有 terminal state 的任务称为 Continuing Tasks;通过将 target state 设为 absorbing state(吸收态,采取行动仍回到自身且 reward 为 0),或仍直接视为普通状态,我们可以统一 episodic 和 continuing tasks;
  • Markov Decision Process(MDP):
    • 具有 State(\(\mathcal{S}\))、Action(\(\mathcal{A}(s)\))和 Reward(\(\mathcal{R}(s, a)\));
    • 具有 state transition probability \(p(s’|s, a)\)、reward probability \(p(r|s, a)\)
    • 具有 Policy \(\pi(a|s)\)
    • 无记忆性:memoryless property:\(p(s_{t+1} | a_{t+1}, s_t, \cdots, a_1, s_0) = p(s_{t+1} | a_{t+1}, s_t)\)\(p(r_{t+1} | a_{t+1}, s_t, \cdots, a_1, s_0) = p(r_{t+1} | a_{t+1}, s_t)\)
阅读全文 »

本文知识截止至 2025.2.20

以下每节标题的标注表示该技术在这个时期趋于成熟。

Transformer 介绍(GPT-3 及之前)

Transformer 是这波 AI 热潮的起点,除了它的发明以外,大模型没有魔法。

Transformer 结构的 LLM,本质是一个可并行加速的有损压缩包:它将海量的知识、语法、运算模式、应答模式等等压缩到自己的权重中。

其本体是一个由线性、非线性变换组成的复杂函数,这个函数是一个文章续写器:输入是一段(编码后的)文本,输出是对这段文本的续写下一个词。与之前模型不同的是,每个预测词的生成都会考虑之前所有词(包括输入和已经生成的词),综合计算得到下一个预测词,且这个过程可以并行。

每次运行这个函数,会输出一个模型预测的概率最大的续写在输入之后的词(实际上是 token),然后将这个词接在输入之后形成新的输入再次运行函数,一直循环直到模型生成表示停止的 token;(以上为最基础的过程,现在已有 MTP 等优化技术)。

这个函数中的参数(如线性变换的系数)是可训练的,训练过程是将文字资料的一部分输入给函数,然后将函数生成的续写与文字资料原本的后续做比对,根据差异调整函数参数。

阅读全文 »

导论

  • 哲学不是科学;
    • 黑格尔终结了西方两千年对于”使哲学成为一门科学“的努力;
    • 二十世纪之后的哲学不再致力于成立一门科学,因此几乎都在批判黑格尔;
    • 哲学是一切科学之母,在古希腊,能被明确地求解的体系会被剥离哲学,自成一门学科;
  • philosophia = philos(爱)+ sophia(智慧);
  • 哲学是关注最终关怀问题的学科。哲学研究生死,而意识到自己的死(有限性)是人的基本特质之一。终死之人求永生,求永生者终归死;
  • 哲学 = 哲学史 = 问题史;
  • 语言非常重要,决定了思考方式;
阅读全文 »

课程官网

Morris 2020 授课录播

中文翻译

Paper 1: MapReduce

原文笔记

提出背景:本世纪初,根据存储技术发展趋势,存储能力的增速已经快于全互联网内容的增速,谷歌预判出将来一家巨型公司的数据库将有能力存储下整个互联网。基于此,谷歌提出对于海量数据的分布式处理框架。

本文发表于 2004 年,提出了严格的网络设备间吞吐量限制,并据此将架构设计为在存储设备上直接做计算(Map 等操作)。事实上谷歌已抛弃这种老式 MapReduce 方法(MapReduce 之死),且现在吞吐量已往往不再是瓶颈,存算分离架构已逐渐成为主流。

阅读全文 »

括号中排名对应:U.S. News世界排名,QS世界排名,THE世界排名,U.S. News美国排名,CSRankings全选(均为2023年)

阅读全文 »

护照

  • 护照最好在户籍地公安局办理,在其它地区公安局会寄送到户籍地审核,所需资料也按户籍地标准要求;
  • 护照办理流程:带身份证,自助机器生成表格,拍照,填表格,在人工柜台办理,拿回执,数日后凭回执取护照;仅凭身份证也可取护照,可以选择寄送;
  • 在美国,护照充当最权威的身份证的作用,但可以使用驾照等证明文件作为大多数时间的身份证明;
阅读全文 »

Spring Framework

  • IoC(Inversion of Control):程序中不主动 new 对象,而是由外部(Spring 的容器)提供对象,实现充分解耦;这一创建权的转移称为控制反转,这些被管理的对象称为 Bean;
  • DI(Dependency Injection):在容器中建立各个 Bean 之间的依赖关系的过程,称为依赖注入;
  • Maven Dependency 中导入 spring-context 坐标后:
阅读全文 »

部分基础编程术语中英对照表

中文 English 中文 English 中文 English
逗号 comma 句号 period 波浪号 tilde
冒号 colon 分号 semicolon 省略号 ellipsis
问号 question mark 感叹号 exclamation mark 引号 quotation marks
小括号 parentheses 中括号 square brackets 大括号 curly braces
星号 asterisk 与号(&) ampersand 井号 number sign / hash / pound
下划线 underline 百分号 percent sign 连字符 hyphen
斜杠 slash 反斜杠 backslash ` back-tick
取模 modulus 余数 remainder 加数 addend
被除数 dividend 除数 divisor 乘数 multiplier
被减数 minuend 减数 subtracter 操作数 operand
语法 syntax 语义 semantics 变量 variable
标识符 identifier 初始化 initialize 语句 statement
赋值 assignment 表达式 expression 优先级 precedence
形参 parameter 实参 argument 栈帧 stack frame
作用域 scope 局部 local 全局 global
转义 escape 短路 short circuit 嵌套 nest
语法糖 syntactic sugar 通配 glob 描述符 descriptor
终端 terminal 缓冲 buffer 内存 memory
编译 compile 单例 singleton 运算符 operator
一元 unary 二元 binary 三元 ternary
可变(数量) variadic 精度 precision 上下文 context
类型转换(人为) cast 类型转换(编译器) type promotion / conversion 递归 recursion
并发 concurrent 并行 / 并联 parallel 串行 / 串联 serial
演绎 deduction 归纳 induction 约简 reduction
分隔符 delimiter 字典序 lexicographic order 字面量 literal