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
1.1k
LoRAによるメモリ使用量削減の検証
機械学習モデルの学習の際のメモリ要件を下げることができる、Low-Rank Adaptation (LoRA)の評価を行いました。評価では、対話要約のデータセットであるSAMSumを使用しました。
RevComm_inc
June 02, 2023
Tweet
Share
More Decks by RevComm_inc
See All by RevComm_inc
Company Deck -English-
revcomm_inc
0
14
2024-02-07 ソフトウェアエンジニアリングの枠を超えて:テックブログ運営で見つけた自分の役割(DevRel/Tokyo #89 〜テックブログ運営〜)
revcomm_inc
0
17
エンジニア不足の中で どう技術的負債と向き合ったのか RevComm Research の場合 -
revcomm_inc
4
5.2k
Feature Flagについて本気出して考えて実践してみた
revcomm_inc
5
1.9k
快適なテスト体験を実現する、Djangoのテスト思想と工夫
revcomm_inc
0
860
Djangoの特徴とRevCommにおける選定理由
revcomm_inc
1
560
会社紹介資料/Company Deck
revcomm_inc
2
23k
エンジニア向け_会社説明資料/Company Deck for Engineers
revcomm_inc
2
20k
PythonにとってのよりよいDockerfileを考える
revcomm_inc
6
5.4k
Other Decks in Technology
See All in Technology
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
140
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
350
The AI Revolution Will Not Be Monopolized: Behind the scenes
inesmontani
PRO
1
140
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
1.4k
Grafana x PagerDuty Better Together
jacopen
1
210
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
2
270
MapLibreとAmazon Location Service
dayjournal
1
170
現代CSSフレームワークの内部実装とその仕組み
poteboy
8
3.7k
どうするコスト最適化のトレードオフ
tetsuyaooooo
1
670
【NW X Security JAWS#3】L3-4:AWS環境のIPv6移行に向けて知っておきたいこと
shotashiratori
1
590
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
250
AWS学習者向けにAzureの解説スライドを作成した話
handy
3
110
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
61
5k
Designing for humans not robots
tammielis
248
25k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
46k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Code Review Best Practice
trishagee
56
15k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
YesSQL, Process and Tooling at Scale
rocio
165
13k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Building an army of robots
kneath
300
41k
Fireside Chat
paigeccino
22
2.6k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
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!