Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LoRAによるメモリ使用量削減の検証
Search
RevComm_inc
June 02, 2023
Technology
1
2k
LoRAによるメモリ使用量削減の検証
機械学習モデルの学習の際のメモリ要件を下げることができる、Low-Rank Adaptation (LoRA)の評価を行いました。評価では、対話要約のデータセットであるSAMSumを使用しました。
RevComm_inc
June 02, 2023
Tweet
Share
More Decks by RevComm_inc
See All by RevComm_inc
“駆け出しPlatformチーム"の立ち上がりとこれから
revcomm_inc
0
91
Company Deck -English-
revcomm_inc
1
98
2024-02-07 ソフトウェアエンジニアリングの枠を超えて:テックブログ運営で見つけた自分の役割(DevRel/Tokyo #89 〜テックブログ運営〜)
revcomm_inc
0
71
エンジニア不足の中で どう技術的負債と向き合ったのか RevComm Research の場合 -
revcomm_inc
5
9.1k
Feature Flagについて本気出して考えて実践してみた
revcomm_inc
7
5.8k
快適なテスト体験を実現する、Djangoのテスト思想と工夫
revcomm_inc
0
1.7k
Djangoの特徴とRevCommにおける選定理由
revcomm_inc
1
950
会社紹介資料/Company Deck
revcomm_inc
3
59k
エンジニア向け_会社説明資料/Company Deck for Engineers
revcomm_inc
2
44k
Other Decks in Technology
See All in Technology
AIのための オンボーディングドキュメントを整備する - hirotea
hirotea
9
2.2k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
17k
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
9
4.9k
シンプルな設定ファイルで実現する AWS IAM Identity Center のユーザー管理と開発チームへの委譲 / Delegating AWS IAM Identity Center User Management with a Simple DSL
yamaguchitk333
3
510
iOS/Androidで無限循環Carousel表現を考えてみる
fumiyasac0921
0
120
Swiftは最高だよの話
yuukiw00w
2
270
RDRA3.0を知ろう
kanzaki
2
400
プラットフォームとしての Datadog / Datadog as Platforms
aoto
PRO
1
310
GigaViewerにおけるMackerel APM導入の裏側
7474
0
400
会社員しながら本を書いてきた知見の共有
sat
PRO
3
670
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
740
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
7
860
Featured
See All Featured
Producing Creativity
orderedlist
PRO
345
40k
The Pragmatic Product Professional
lauravandoore
34
6.7k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
What's in a price? How to price your products and services
michaelherold
245
12k
Optimizing for Happiness
mojombo
378
70k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
A Modern Web Designer's Workflow
chriscoyier
693
190k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Transcript
Copyright © RevComm Inc. LoRAによるメモリ使用量削減の検証 Akihiro Katsuta Works Applications Co.,Ltd
Masaki Ono RevComm Inc.
Copyright © RevComm Inc. LoRA: Low-Rank Adaptation of Large Language
Models Edward Hu, Yelong Shen, Phillip Wallis, Zeyuan Allen-Zhu, Yuanzhi Li, Shean Wang, Lu Wang ,Weizhu Chen https://arxiv.org/abs/2106.09685 LoRAとは • 再学習するベースモデルのパラメータを固定し、fine-tuning用に学習可能な階数分解行列(rank decomposition matrices)をモデルに挿入 • モデルのパラメータを更新する従来のfine-tuningと比較して ◦ 更新するパラメータ数を削減し、GPU要件を下げられる ◦ 差分のみ保存すればよく、ストレージ要件も下げられる ◦ かつ、同等の精度を出せる 2
Copyright © RevComm Inc. その他のメモリ削減 • Mixed Precision (FP16) ◦
学習は32ビット浮動小数点演算(FP32)を使っているが、代替可能な部分を16ビットの低精度 dtypeに変更することでメモリや計算時間を削減 ◦ しかし、若干の性能低下がネック • Model Quantization (INT8) ◦ ディープラーニングの最適化手法の一つで浮動小数点を8ビットの整数に変換 ◦ 性能を維持しつつメモリの削減が可能 peftを使った導入もさほど難しくない 3
Copyright © RevComm Inc. 計算資源の選定基準 今回の実験で使う環境 • AWS G5.xlarge ◦
RAM: 16GB ◦ GPU: NVIDIA A10G(24GB) 流行りのChatGPTと比べてG5.xlargeで実験を完結できている分にはコスパが良さそう • ChatGPT: 520K [token/$(USD)]、 • G5.xlarge 日本語T5 model (1GB): 5000K [token/$(USD)] 4
Copyright © RevComm Inc. • 学習・評価データセット:SAMSum Corpus ◦ 対話の抽象型要約データセット •
学習モデル:flan-t5 ◦ base (約 1GB, 250M param) ◦ large (約 3 GB, 780M param) ◦ xl (約 11.5 GB, 3B param) • 学習時間やメモリ使用量を測るため、ハイパラは以下で固定 ◦ epoch: 3 ◦ train batch: 8 ◦ = (train step: 5526) 実験設定 5
Copyright © RevComm Inc. • flan-t5-baseのFine-TuningとLoRAを比較して、精度はほとんど変わらずGPUメモリ が約2割まで減らせている • LoRAとfp16やint8を組み合わせるとよりメモリ効率が上がる •
LoRAを使うことで24GBのGPUでもxlサイズのモデルまで学習できる メモリ使用量削減の検証 言語モデル ROUGE-1(↑) ROUGE-2(↑) 学習時間 GPU Memory CPU Memory flan-t5-base-FT 51.3911 26.7651 40.27 min 14830 MB 4873 MB flan-t5-base-LoRA 51.6928 27.0978 49.11 min 3298 MB 4781 MB flan-t5-large-LoRA 53.8242 28.7078 139.36 min 6175 MB 3036 MB flan-t5-xl-LoRA 54.3119 30.1148 350.24 min 15491 MB 5943 MB flan-t5-xl-LoRA-fp16 53.8726 29.7212 224.69 min 10861 MB 8142 MB flan-t5-xl-LoRA-int8 54.6110 30.3880 331.53 min 9251 MB 8296 MB 6
Copyright © RevComm Inc. LoRAのr(次元)を4,8,16でそれぞれ15epoch程学習をさせ、その傾向を比較 • rが小さい方がこのタスクでは過学習が抑えられるためか良さそう 付録: LoRAのハイパラ r=4
r=16 r=8 r=8 r=4 r=16 r=4 r=8 r=16 7
Copyright © RevComm Inc. • GPUメモリ使用量の削減としてLoRAなどの検証を行った • LoRA + int8などを組み合わせることでよりGPUメモリ要件を下げられる
• 所感として導入も楽でこれだけ削減できるのでかなり使い勝手は良いように思う まとめ 8
Copyright © RevComm Inc. Thank you!