PKU_compiler
ai 做了前八个LV,跑路了/(ㄒoㄒ)/~~ LV1 通常编译器不会直接从AST生成汇编代码而是生成中间表示(IR),以此实现更底层,方便前后端解耦 EBNF(扩展巴科斯范式) a:=b 推导式 flex描述EBNF中的终结符部分,bison 描述非终结部分 AST保留了程序的结构,只是为了好用就行 cpp面向对象要求:需要使用基类指针删除对象时,基类必须有虚析构函数 std::unique_ptr 不可复制,可移动(std::move),自动释放(so 传参形参为原始指针,.get()) std::make_unique() %token INT:终结符INT的语言类型为int koopa IR Program 全局变量列表: Value 1. Value 2. … 函数列表: Function 1. 基本块列表: BasicBlock 1. 指令列表: Value 1. Value 2. … BasicBlock 2. … Function 2. … IRfun @main(): i32 { // main 函数的定义,...
cs170&DPV
Arithmetic Algorithms divide and conquer strategy: breaking the problem into subproblem with the same type recurssively solve them glue together the solution multiplication (a+bi)(c+di)= (ac-bd)+(bc+ad)i in this way four multiplication (ac-bd)+((a+b)(c+d)-ac-bd)i just three ,when recurssively applied,can reduce its calculation T(n)=3T(n2)+O(n)T(n)=3T(\frac{n}{2})+O(n)T(n)=3T(2n)+O(n) we can understand it using the call tree it has the depth of log2nlog_2nlog2n,when apply trick,three leave...
linear algebra&3b1b
矩阵向量求导(刘建平博客) 1求导布局 分子布局(numerator layout)和分母(denominator)布局 分子求导的结果维度以分子为主,分母同理(两种布局的结果相差一个转置) e.g:标量对矩阵求导,按分母布局就是和矩阵形状相同,分子布局就是相反 列向量之间的求导(y:n*1,x:m*1) ∂y∂x\frac{\partial y}{\partial x}∂x∂y : 分子布局:雅可比矩阵为n*m(Jacobian)也写作 ∂y∂xT\frac{\partial y}{\partial x^T}∂xT∂y 分母布局:梯度矩阵,也写作 ∂yT∂x\frac{\partial y^T}{\partial x}∂x∂yT 2 定义法标量对向量求导: 3 微分法求导 矩阵微分及其性质(一般是分子布局) e.g: dexb=exb⊙d(xb)de^{xb}=e^{xb}\odot d(xb)dexb=exb⊙d(xb) 4 链式法则 向量对向量的链式:要求中间都必须是向量 标量对向量:x->y->z(z为标量) ∂z...
PCA
这份复习资料是基于 MIT 18.650 (Statistics for Applications) 第 9 章课件 Principal Component Analysis (PCA) 编写的。 这份资料旨在不仅仅列出公式,而是深入解释**“为什么要这样做”以及“背后的统计学/线性代数原理是什么”**,非常适合作为考前复习或深度学习的参考。 📘 复习参考资料:主成分分析 (PCA) 1. 核心动机与直觉 (Motivation & Intuition) 1.1 为什么需要 PCA? 高维灾难:当数据维度 ddd 很大(例如 d>3d > 3d>3)时,我们无法直观地绘制或理解数据云(Cloud of points)。 数据压缩:我们希望用更少的维度 (d′<dd' < dd′<d) 来描述数据,同时损失尽可能少的信息。 1.2 什么是“信息”? 在 PCA 中,有一个核心假设: 信息 (Information) ≈\approx≈ 方差 (Variance/Spread) 解释:如果数据在某个方向上分布非常广(...
statistics8
🧠 Problem Set 8 — 知识总结(精华版) 1️⃣ Heteroscedastic Regression(异方差线性回归) 🔹 模型 Y=Xβ+ε,ε∼N(0,Σ), Σ 已知且可逆.Y=X\beta+\varepsilon,\quad \varepsilon\sim N(0,\Sigma),\ \Sigma\text{ 已知且可逆}. Y=Xβ+ε,ε∼N(0,Σ), Σ 已知且可逆. 🔹 Generalized Least Squares (GLS) 考虑最小化 Q(β)=(Y−Xβ)′Σ−1(Y−Xβ).Q(\beta)=(Y-X\beta)' \Sigma^{-1}(Y-X\beta). Q(β)=(Y−Xβ)′Σ−1(Y−Xβ). 与极大似然等价(因为正态分布)。 🔹 GLS 显式解 β^=(X′Σ−1X)−1X′Σ−1Y.\boxed{\hat\beta = (X'\Sigma^{-1}X)^{-1}X'\Sigma^{-1}Y.} β^=(X′Σ−1X)−1X′Σ−1Y. 🔹 唯一性条件 X′Σ−1X 必须可...
statistics6
📘 MIT 18.650 PSet6 知识总结 主题:假设检验、Student 检验与独立性检验 🧩 一、假设检验(Hypothesis Testing)基础 1️⃣ 基本概念 假设(Hypothesis): 对总体参数的声明。例如: H0:λ=λ0vsH1:λ≠λ0H_0: \lambda = \lambda_0 \quad\text{vs}\quad H_1: \lambda \ne \lambda_0 H0:λ=λ0vsH1:λ=λ0 其中 (H_0) 是“原假设”,(H_1) 是“备择假设”。 检验统计量(Test Statistic): 由样本构造的函数,用于度量数据与 (H_0) 的偏离程度。 拒绝域(Critical Region): 使 (H_0) 被拒绝的统计量取值范围。 显著性水平(Significance level): (α=P(Reject H0∣H0 true)\alpha = P(\text{Reject }H_0 | H_0\text{ true})α=P(Reject H0∣H0 true)),即第一类错误概率...
statistics1
MIT 18.650 — Problem Set 1 知识点与注意事项归纳 本笔记涵盖:随机变量收敛(多种形式)、中心极限定理、Bernoulli/Binomial/Poisson 的性质、三种常见置信区间(保守 / Wilson / Wald)、样本量估计、以及常见陷阱与答题策略。 一、随机变量的几种收敛形式(及相互关系) 四种常见收敛类型 几乎处处收敛 (almost sure, a.s.) 记号:Xn→X(a.s.)X_n → X (a.s.)Xn→X(a.s.) 定义:P(limn→∞Xn=X)=1P( lim_{n→∞} X_n = X ) = 1P(limn→∞Xn=X)=1 依概率收敛 (in probability) 记号:Xn→X(P)X_n → X (P)Xn→X(P) 定义:对任意 ε>0,P(∣Xn−X∣>ε)→0P(|X_n - X| > ε) → 0P(∣Xn−X∣>ε)→0 L^p 收敛(以 L^2 为例) 记号:Xn→X(L2)X_n → X (L^2)Xn→X(L2) 定义:E[∣Xn−X∣2...
GLM
这份复习总结是基于 MIT Statistics for Applications 课程第 10 章课件编写的。为了方便复习,我将内容拆解为 核心概念、数学推导、关键分布与链接、计算算法 四个模块。 模块一:广义线性模型 (GLM) 架构 1. 线性模型 (LM) vs 广义线性模型 (GLM) LM 的局限性: 假设 Y∣XY|XY∣X 服从正态分布(但这不适用于计数数据、二值数据)。 假设均值 μ\muμ 与 XTβX^T\betaXTβ 线性相关(但这可能导致预测值超出合理范围,如概率 <0<0<0)。 假设方差恒定(Homoscedasticity),实际上方差常随均值变化。 GLM 的推广方向: 允许 YYY 服从指数族分布。 引入链接函数处理非线性关系。 2. GLM 的三个组成部分 随机成分 (Random Component): YYY 独立且服从指数族分布。 系统成分 (Systematic Component): 线性预测子 (Linear Predictor):η=XTβ\eta = X^T\betaη=XTβ。...
week5
lecture 9 Pretraining subword modeling 许多语言的单词是在不断变化的,对于某些语言的某些单词,其变体及其繁多。 solution: 组合时倾向于选择最小数量的子词 预训练:一开始对所有参数进行训练而不仅仅是embedding层 更强的表达:与word2vec相比,知道其在序列中的什么位置 what can we learn from reconstructing the input 情感、实际知识、文本的情景、数学背景 .etc step: 对预训练:经常需要搞一大堆标准进行评价是否整的很好 很多时候无标签的数据相对而言更容易获得,使得这么搞很有性价比 必须保证预训练数据的多样化,防止对下游任务产生影响 Model pretraining three ways encoder 选择的单词大部分时候是随机的 BERT ps:"+"代表元素级别的加法,理论上也可以进行向量拼接,但是惯例是网络的中间层的size一样大小,这样更简单(segment embedding是区分两句话用的,前一句全0,后一句...
week4
project lecture 8:transformer 自注意力 attention 可以将其视作对键-值存贮执行模糊查找 之前的cross attention:对x投入注意力来生成输出序列(y) self attention对y投入注意力来输出y 单纯自注意力的问题 没有对序列位置信息的编码 solution: 编码位置向量pip_ipi序列变化为xi∗=xi+pix^*_i=x_i+p_ixi∗=xi+pi 如何得到位置向量(传统方法): 神经方法: 为什么知道学习的是位置:因为其只随着位置索引的不同在改变(而你输入的词嵌入是会改变的) 没有传统的非线性处理 solution:在注意力处理中加入多层感知机 预测序列时没有未来的输入(使用受限) solution:对自注意力使用掩码 传统上用于decoder而不是encoder e.g机器翻译中,在原句子encode的过程中不使用,而在翻译进行到某一步的时候将之后的目标语句掩码 最小的自注意力块 transformer 多头注意力 实际上并没有添加额外的计算开销,只是单纯的分开 不同的块之间通...



