您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[2024AI研发数字峰会AiDD北京站]:林玥煜-RWKV引领大模型架构变更的新型RNN - 发现报告

林玥煜-RWKV引领大模型架构变更的新型RNN

AI智能总结
查看更多
林玥煜-RWKV引领大模型架构变更的新型RNN

RWKV,引领大模型架构变更的新型RNN 林玥煜元始智能 演讲嘉宾 林玥煜 元始智能算法工程VP 原始智能算法工程VP,曾任大数医达科技有限公司算法总监,阿里巴巴数据事业部系统架构师,多年来深耕大数据、人工智能在工业界应用和开发管理。对大语言模型在严肃医疗场景的应用、开发拥有丰富的实战经验。 1.RWKV的历史2.RWKV的架构特点3.RWKV的基础模型4.RWKV的落地场景5.RWKV的未来发展方向6.RWKV的评测结果 目 录CONTENTS 新一代模型架构/超越TransformerRWKV 计算效率高 无限上下文 对芯片友好 全球开源开放 适合长文本处理、多轮对话等 推理速度、内存恒定 只做矩阵乘矢量,无KV Cache Apache 2.0协议 项目历史 RWKV要解决的问题Transformer 是死胡同 算力需求巨大,Scaling-law 失效 RWKV 开始于 2020 年初,正在研发 RWKV-7 RWKV 正引领大模型的架构迁移 我们是怎么做的? RNN和Transformer各⾃的局限性 ØRNN 在训练长序列时容易出现梯度消失问题。 ØRNN 在训练过程中无法在时间维度上进行并行化,限制了其可扩展性。ØTransformer 具有二次复杂度, 长序列任务中计算成本高和占用内存多。 时间和空间复杂度⽐较 我们是怎么做的? RNN最简单有效的基本形式 •ht = αt⊙ ht−1+ (1 − αt) ⊙ xt•RNN 一步一步执行,每次仅处理一个字或一个词•内存占用小,计算量小•对前一步结果的依赖,使得 RNN 无法并行化训练,极大限制了 RNN 的可扩展性 相比较,Transformer 一次处理一整句话,或一整段话,可以并行训练 我们是怎么做的? RWKV与QKV相对,贯穿整个RWKV系列 时间混合模块的演进 RWKV-6 time-mixing时间混合模块 RWKV的RNN视角 RWKV5/6写成递归形式: 虽然递归形式一样,但是RWKV-5中的w是data-independent 的 , 而 RWKV-6 中 的 w 是 data-dependent的wt 代码形式: # r, k, v parameter shape (B,H,1,D//H)# w parameter of shape (1,H,1,D//H) for Eagle (RWKV-5),#(B,H,1,D//H) for Finch (RWKV-6)# u parameter of shape (1,H,1,D//H)def rwkv_5_or_6_recurrent(r, k, v, w, u, wkv_state):kv = k.mT @ v # x.mT is equivalent to x.transpose(-2, -1)out = r @ (wkv_state + u.mT * kv)wkv_state = w.mT * wkv_state + kv # (B,H,D//H,D//H)return out, wkv_state 虚线代表RWKV-6中有,RWKV-5中没有 WKV模块的改进: RWKV-5:通过学习得到的通道衰减率来替代RetNet中的静态衰减率。RWKV-6:通过动态生成依赖于数据的token-shift量和衰减率。 RWKV架构相对应传统RNN的改造 1.把每⼀个Block拆成若⼲个部分,在训练/预测的时候,不互相依赖的模块可以相互并⾏计算。2.在需要状态传递的Time Mixer模块,通过CUDA/FLA扩展, 在Channel Wise+Head Wise并⾏处理。由于Channel和Head的数⽬很多,通常都超过了⼀个GPU所拥有的Tensorcore的数⽬,我们在Time Mixer模块也能充分利⽤GPU的并⾏计算能⼒。 RWKV的训练效率高,长上下文时更快 lTransformer Baseline: karpathy的nanoGPT,优化程度相当高的训练代码: l混合精度 + compile + flash_attn l当上下文长度较短时,RWKV训练速度略慢于GPT+ flash_attnl当上下文长度较长时(8k),RWKV训练速度比GPT+flash_attn 更快。 RWKV推理性能全球最佳 •RWKV 内存占⽤恒定,时间复杂度线性增加 VS •Transformer 内存占⽤越来越⼤,时间复杂度指数增加 RWKV 架构与模型 RWKV 的落地场景 370+ 9000+ 10000+ 11000+ Github上RWKV项目数量 国内社群开发者和用户人数 海外社群开发者人数 RWKV-LM在Github的星 RWKV ASR 语音识别模型 https://arxiv.org/pdf/2309.14758https://github.com/alibaba-damo-academy/FunASR Visual-RWKV 视觉语言模型 https://arxiv.org/pdf/2406.13362https://github.com/howard-hou/VisualRWKV Vision-RWKV 视觉感知模型 https://arxiv.org/pdf/2403.02308https://github.com/OpenGVLab/Vision-RWKV Diffusion-RWKV 扩散模型 https://arxiv.org/abs/2404.04478https://github.com/feizc/Diffusion-RWKV PointRWKV 3D点云学习框架 https://arxiv.org/pdf/2405.15214https://hithqd.github.io/projects/PointRWKV RWKV-CLIP 视觉语言表示学习 https://arxiv.org/pdf/2406.06973https://github.com/deepglint/RWKV-CLIP RWKV-SAM 分割一切模型 https://arxiv.org/pdf/2406.19369https://github.com/HarborYuan/ovsam RWKV-TS 时序预测 https://github.com/howard-hou/RWKV-TShttps://arxiv.org/pdf/2401.09093 SDiT 基于 RWKV 的类脑模型 https://arxiv.org/pdf/2402.11588 RWKV 生态 / 知名使用者 压缩软件ts_zip使用RWKV-4https://bellard.org/ts_zip/ts_zip-2024-03-02-win64.zip 实现了速度与压缩率之间的良好平衡。 Fabrice Bellard法国计算机科学家,传奇程序员 RWKV 生态 / 海外创业者 MidReal Recursal pygmalion MIT的创业团队 端侧模型的Agent 离线版AI小镇,120个Agent RWKV性能评测结果 英文效果仅次于最好的LLaMA-8B和Mistral-7B,多语言能力最佳 RWKV性能评测结果 语言建模能力就是压缩能力,用新数据衡量模型的泛化能力https://github.com /Jellyfish042/uncheatable_eval RWKV性能测试结果 RWKV性能测试 内存占用低 上下文长度 MQAR 优 RWKV-6 在 MQAR 测试中有显著优势 ctx4k 训练的 RWKV-6可良好适应到 ctx20k 以上 RWKV-6 内存占用比 Flash Attention 少 40% THANKS