随笔分类 -  AI

摘要:0. 前言 最近本人在写硕士大论文,需要写一些GPU相关的内容作为引言,所以在此总结一下。 1. NVIDIA GPU线程管理 CUDA的线程模型如上图,在调用一个CUDA函数时,需要定义grid和block的形状: func<<<grid, block>>>(); 在程序里定义的grid和bloc 阅读全文
posted @ 2025-01-13 22:22 王冰冰 阅读(61) 评论(0) 推荐(0) 编辑
摘要:torch.mm 线代的矩阵乘法,要求输入都是矩阵 torch.matmul 注意:torch.mm和torch.matmul不等价 根据输入不同执行不同的操作: 输入都是二维矩阵,矩阵乘法,等同于torch.mm 输入都是一维向量,计算向量内积,等同于torch.dot 第一个参数是向量,第二个是 阅读全文
posted @ 2025-01-04 23:24 王冰冰 阅读(316) 评论(4) 推荐(0) 编辑
摘要:LLaMA系列用的FFN层现在是SwishGLU,这里Swish是个激活函数,GLU是个线性单元,二者合起来是SwishGLU。 FFN Transformer中原始的FFN长这样: FFN(x)=ReLU(xW1+b1)W2+b2两个线性层中间夹了个relu激活函数 写成模型 阅读全文
posted @ 2024-10-29 15:51 王冰冰 阅读(206) 评论(0) 推荐(0) 编辑
摘要:1. SGD 随机梯度下降(stochastic gradient descent,SGD) 输入数据为(x, y)组成的pair,模型参数是W,随机选择一批样本组成一个batch,输入模型计算loss:L=f(X,Y;W),并求出梯度,更新参数时: \(W=W-lr*\frac{ 阅读全文
posted @ 2024-09-29 15:31 王冰冰 阅读(686) 评论(2) 推荐(0) 编辑
摘要:博主在学习的过程中,一直看到负对数似然函数(NLLLoss,negative log likelihood loss),虽然知道怎么计算,但是一直不清楚为什么叫似然。今天通过学习对似然和机器学习模型训练有了全新的理解,故记录在此。 本文主要参考:似然(likelihood)和概率(probabili 阅读全文
posted @ 2024-09-03 14:50 王冰冰 阅读(325) 评论(0) 推荐(0) 编辑
摘要:背景 本人在安装deepspeed后遇到了这个报错,明眼人一看就是缺库,但是搜索到的解决方案(凌漪_, 2023)说是设置一个环境变量,实在是治标不治本,而且对本人来说连标都治不了。其他的博客尚未看到解决此问题的。 分析 这个so文件理论上应该在安装deepspeed的过程中就自动编译好了,但是现在 阅读全文
posted @ 2024-07-17 20:10 王冰冰 阅读(1072) 评论(2) 推荐(0) 编辑
摘要:最近阅读论文,再回顾一些基础的线性代数知识 1. 行列式 转置不改变行列式的值 |A|=|AT| 对某一行加上另外一行的K倍,不改变行列式的值 只要矩阵有一行为0,行列式就是0。因为行列式等于任意一行/列的元素和其代数余子式的乘积之和,元素本身是0,行列式就是0 \[|A|=a_{i0} 阅读全文
posted @ 2024-06-24 11:13 王冰冰 阅读(71) 评论(1) 推荐(0) 编辑
摘要:分布式训练使用方法见博主之前的博客,本文介绍一些注意事项。 分布式训练用torchrun进行,要注意: 所有进程必须固定随机种子,不然可能会导致训练时不同进程的样本不一致,尤其是涉及随机数时,比如train_test_split。 export LOGLEVEL=DEBUG可以修改torchrun的 阅读全文
posted @ 2024-06-18 16:25 王冰冰 阅读(162) 评论(2) 推荐(0) 编辑
摘要:由于pytorch的python语句执行和CUDA后端实际上是异步执行的,所以当CUDA runtime报错时,并不一定能正确地反映在python抛出的错误语句中,因此,可以添加一个环境变量来实现: CUDA_LAUNCH_BLOCKING=1 这里再补充一些关于cuda和pytorch异步执行的知 阅读全文
posted @ 2024-05-15 20:15 王冰冰 阅读(459) 评论(3) 推荐(0) 编辑
摘要:当前版本为本文的尝鲜版,稳定版尚未发布: 稳定版已发布 位置编码: https://zhuanlan.zhihu.com/p/454482273 transformer的sin位置编码本身已经包含了相对位置信息,本身就是一种包含相对信息的绝对位置编码。因为它符合一种形式: \[PE_{t+k}=f( 阅读全文
posted @ 2024-03-25 21:06 王冰冰 阅读(925) 评论(7) 推荐(1) 编辑
摘要:layer = layers.Conv1D(input_shape=(66, 5), filters=100, kernel_size=10, padding="same", activation="relu", strides=1) 上述例子为例,实际上和二维卷积是一样的,只不过卷积核的第二个维度 阅读全文
posted @ 2023-12-15 17:53 王冰冰 阅读(251) 评论(2) 推荐(0) 编辑
摘要:本文将系统性介绍GPTQ以及他爹,他爷爷,他太爷爷系列论文。GPTQ是目前极端流行的一个后训练量化算法。本文从他太爷爷开始讲起。 GPTQ使用的方法改进自OBC(Frantar, 2022),OBC来源于OBS(Hassibi, 1992),OBS来源于OBD(Lecun, 1990) 这是一种量化 阅读全文
posted @ 2023-07-13 16:06 王冰冰 阅读(2085) 评论(7) 推荐(0) 编辑
摘要:对于正定对称矩阵H,可以分解为H=XXT,其中X是下三角矩阵。这个分解方法就是cholesky分解,pytorch对应的函数是[torch.linalg.cholesky](https://pytorch.org/ 阅读全文
posted @ 2023-07-07 17:05 王冰冰 阅读(1107) 评论(0) 推荐(0) 编辑
摘要:# 矩阵乘法求导 pyotrch中只能是标量对矩阵求导,所以矩阵乘法结束后加个sum L=sum(WX) 其中,WX都是矩阵,那么 $$ \frac{\partial L}{\partial\bm{W}}_{\cdot i}=\sum\bm{X 阅读全文
posted @ 2023-06-14 20:26 王冰冰 阅读(207) 评论(0) 推荐(0) 编辑
摘要:根据个人理解,pytorch显存分3个概念:reserved memory、allocated memory、context memory。参考:https://discuss.pytorch.org/t/difference-between-allocated-and-reserved-memor 阅读全文
posted @ 2023-05-23 17:38 王冰冰 阅读(611) 评论(3) 推荐(1) 编辑
摘要:# 所有可用显卡 export CUDA_VISIBLE_DEVICES=1 # 转成了数组形式 all_cuda_devices=((echo CUDA_VISIBLE_DEVICES | sed 's/,/ /g')) # 你要跑的任务(我这里以GLUE的几个任务为例) if ((# > 阅读全文
posted @ 2022-12-01 21:38 王冰冰 阅读(89) 评论(0) 推荐(0) 编辑
摘要:0. 概念界定 关于分布式训练/多卡训练,我们首先明确一些概念: 并行(parallel) 多个卡训练,所有卡是一个进程或者是多个进程 分布式(Distributed) 多个卡训练,但是每张卡上都是一个单独的进程 但是,在下文中,为了表述的方便性,我们不严格区分“并行”和“分布式”两个概念,不论说并 阅读全文
posted @ 2022-11-29 11:39 王冰冰 阅读(4039) 评论(2) 推荐(0) 编辑
摘要:[] [a]可能表示的是不超过a的整数组成的集合 https://math.stackexchange.com/a/4139609 论文《Patient Knowledge Distillation for BERT Model Compression》的第3.1章也提到了一下这种写法 圆圈加号 e 阅读全文
posted @ 2022-09-22 10:51 王冰冰 阅读(111) 评论(0) 推荐(0) 编辑
摘要:混淆矩阵 预测 Positive 预测 Negtive 真实 Positive TP FN 真实 Negtive FP TN precision、recall和f1 precision=TP/(TP+FP) recall=TP/(TP+FN) 关于precision和recall的解 阅读全文
posted @ 2022-09-03 21:13 王冰冰 阅读(71) 评论(0) 推荐(0) 编辑
摘要:def softmax(x): x -= np.max(x, axis= 1, keepdims=True) f_x = np.exp(x) / np.sum(np.exp(x), axis=1, keepdims=True) return f_x 第一步:减去最大值。 因为在求exp时,可能因为指 阅读全文
posted @ 2022-07-31 18:51 王冰冰 阅读(1470) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起