$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[RetNet] Retentive Network: A Successor to Tran...
Search
frkake
March 05, 2024
Research
0
320
[RetNet] Retentive Network: A Successor to Transformer for Large Language Models
frkake
March 05, 2024
Tweet
Share
More Decks by frkake
See All by frkake
Removing Reflections from RAW Photos
frkake
0
220
[CorrMLP] Correlation-aware Coarse-to-fine MLPs for Deformable Medical Image Registration
frkake
0
1.4k
Neural Network Diffusion
frkake
0
260
3D Gaussian Splatting for Real-Time Radiance Field Rendering
frkake
0
870
Segment Anything + Alpha
frkake
0
290
Muse: Text-To-Image Generation via Masked Generative Transformers
frkake
0
130
Other Decks in Research
See All in Research
An Open and Reproducible Deep Research Agent for Long-Form Question Answering
ikuyamada
0
140
AlphaEarth Foundations: An embedding field model for accurate and efficient global mapping from sparse label data
satai
3
590
超高速データサイエンス
matsui_528
1
320
自動運転におけるデータ駆動型AIに対する安全性の考え方 / Safety Engineering for Data-Driven AI in Autonomous Driving Systems
ishikawafyu
0
110
ロボット学習における大規模検索技術の展開と応用
denkiwakame
1
180
データサイエンティストをめぐる環境の違い2025年版〈一般ビジネスパーソン調査の国際比較〉
datascientistsociety
PRO
0
330
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
LLM-jp-3 and beyond: Training Large Language Models
odashi
1
720
When Learned Data Structures Meet Computer Vision
matsui_528
1
1.6k
AIスパコン「さくらONE」のLLM学習ベンチマークによる性能評価 / SAKURAONE LLM Training Benchmarking
yuukit
2
910
SREのためのテレメトリー技術の探究 / Telemetry for SRE
yuukit
13
2.6k
SkySense V2: A Unified Foundation Model for Multi-modal Remote Sensing
satai
3
220
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
Building an army of robots
kneath
306
46k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
340
Paper Plane
katiecoart
PRO
0
44k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Documentation Writing (for coders)
carmenintech
77
5.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
510
The SEO identity crisis: Don't let AI make you average
varn
0
36
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Transcript
(RetNet) Retentive Network: A Successor to Transformer for Large Language
Models 2023/08/04 飯田啄巳
背景:RetNetの目指すところ Transformer 言語モデルのデファクトになってるけど、 👍高パフォーマンス 👎🏽O(N) Complexity 👎🏽Key-Valueストアでメモリ効率悪い 👎🏽シーケンス長いと、レイテンシも悪い Linearized Attention
アテンションスコアのexp(𝑞 ⋅ k)を𝜙 𝑞 ⋅ 𝜙(𝑘)で書き換え、自己回帰推論可能にした 👎🏽性能悪い Recurrent Network 👎🏽学習の並列性ない Others: Attentionを書き換える(S4など) 👎🏽性能悪い RetNet 並列表現 → 👍並列学習 リカレント表現(実装も楽) → 👍メモリと計算の両面でO(1)推論 チャンクごとのリカレント表現(chunkwise recurrent) → 👍長いシーケンスに対応
手法:Retentive Networks 全体の流れ 1. 入力 :𝑥 = 𝑥1 , …
𝑥 𝑥 のシーケンス 2. 各トークンの次元を𝑑𝑚𝑜𝑑𝑒𝑙 にする :𝑋0 = 𝑥1 , … , 𝑥 𝑥 ∈ ℝ 𝑥 ×𝑑𝑚𝑜𝑑𝑒𝑙 3. 自己回帰的に次の状態を推定 :𝑋𝑙 = 𝑅𝑒𝑡𝑁𝑒𝑡𝑙 𝑋𝑙−1 , 𝑙 ∈ 1, 𝐿 こんなイメージ? 𝑑𝑚𝑜𝑑𝑒𝑙 𝑑𝑚𝑜𝑑𝑒𝑙 𝑥1 𝑥2 𝑥3 𝑥 𝑥 MSR (Multi-Scale Retention) FFN (Feed-Forward Network) RetNet
手法:Retentionモジュールの仕組み 状態𝒔𝑛 を介して、𝒐𝑛 を出力 Aの対角化の式 を使うと xPosという相対位置埋め込みの表現形式 𝛾をスカラ化 共役転置 Transformerの式
(並列化可能) リカレントモデルの式 RNNとTransformerの式の関係性を考えてみる ハイブリッド表現(Chunkwise Recurrent Representation) 長いシーケンスの学習効率化 要素数Bのチャンクを作る チャンク内では並列化 チャンク外では再帰 𝑖番目のチャンク 三段階正規化(スケーリング) 未来情報使わないように 近傍の重み強めに
手法:Retentionモジュールの仕上げ(ゲート化・マルチスケール化) マルチヘッド化 マルチスケール化 ヘッドごとに異なる𝛾を使う ヘッドの数 ゲート化 swishを使う 正規化層とかもちゃんと書くと… GroupNormは各ヘッドの出力を正規化(SubLNという方法に基づくらしい) ヘッドごとに異なる𝛾を使うとヘッドごとに分布が変わってくるので、ヘッドごとに正規化
全体まとめ 𝑑𝑚𝑜𝑑𝑒𝑙 𝑑𝑚𝑜𝑑𝑒𝑙 𝑥1 𝑥2 𝑥3 𝑥 𝑥 MSR (Multi-Scale
Retention) FFN (Feed-Forward Network) RetNet さっきのMSR (Multi-Scale Retention)をTransformerブロックみたいに積んで完成! 学習時 parallel(シーケンス内並列化)or chunkwise recurrent(チャンク内並列化) parallel chunkwise recurrent 推論時 recurrentを使う → 自己回帰推論 = O(1)
実装的には 未来情報使わないように 近傍の重み強めに
実装的には 要素数Bのチャンクを作る チャンク内では並列化 チャンク外では再帰
実験:モデルサイズとその性能 パラメータ数 Transformer RetNet 𝑠𝑒𝑙𝑓 𝑎𝑡𝑡𝑒𝑛𝑡𝑖𝑜𝑛 𝑊𝑄 , 𝑊𝐾 ,
𝑊𝑉 , 𝑊𝑂 = 4𝑑2 𝐹𝐹𝑁 = 8𝑑2 𝑖𝑛𝑡𝑒𝑟𝑚𝑒𝑑𝑖𝑎𝑡𝑒 𝑑𝑖𝑚𝑒𝑛𝑠𝑖𝑜𝑛 = 4𝑑 𝑅𝑒𝑡𝑒𝑛𝑡𝑖𝑜𝑛 𝑚𝑜𝑑𝑢𝑙𝑒 𝑊𝑄 , 𝑊𝐾 ∈ ℝ𝑑×𝑑, 𝑊𝐺 , 𝑊𝑉 ∈ ℝ𝑑×2𝑑, 𝑊𝑂 ∈ ℝ2𝑑×𝑑 = 8𝑑2 混乱度、低いほうが良いらしい。 (確率分布を比較する指標)
実験:Zero-shot, Few-shotの性能 Transformerよりもいいです
実験:Transformerとのメモリ&スループットの比較 Kernel FusionとFlashAttentionは除外
実験:推論コスト GPUメモリ • TransformerはKVキャッシュで線形に増加 • RetNetは長いシーケンスでも同じ スループット • Transformerは長くなると低下 •
RetNetはずっと高いスループット レイテンシ • Transformerはバッチサイズ大 → レイテンシ遅 • RetNetはずっと速い
実験:周辺技術との関係性と性能比較 Query, Keyが Content-unaware attention free& 位置埋め込みを指数減衰に置換 →再帰 関係性 性能比較
Ablation Study (𝛾 = 1)
None
使い方や実際の実装 切り替えて使う感じ モデルのロード方法は書いてあるケド…運用方法は?