joeykims commited on
Commit
1f55c18
ยท
verified ยท
1 Parent(s): b4ff520

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +8 -59
README.md CHANGED
@@ -13,8 +13,6 @@ base_model:
13
 
14
  #GemmaSprint
15
 
16
-
17
-
18
  * ๋ชจ๋ธ๊ด€๋ จ ๊ณผ์ •, ๊ฒฐ๊ณผ๋“ฑ
19
  https://joey-k.tistory.com/15
20
 
@@ -25,80 +23,58 @@ https://github.com/GOOGLE-MLB-2024-GJ/Beans
25
 
26
 
27
  gemma ์ฒซ๋ฒˆ์งธ ํŒŒ์ธํŠœ๋‹ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค.
28
-
29
  ์ปคํ”ผ์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ์ง€์‹๊ณผ ์ปคํ”ผ ์›๋‘๋ฅผ ์ถ”์ฒœํ•ด์ฃผ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
30
 
31
 
32
 
33
  * ๋ชจ๋ธ
34
-
35
  2b ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํŒŒ์ธํŠœ๋‹์„ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
36
 
37
- ์ฒ˜์Œ์—๋Š” ๊ธฐ๋ณธ๋ชจ๋ธ์ธ "google/gemma-2b-it"๋กœ ํŒŒ์ธํŠœ๋‹์„ ํ•˜๋‹ค๊ฐ€, ์ ฌ๋งˆ ํ•œ๊ตญ์–ด ๋ฒ„์ „์„ ๋งŒ๋“ค์–ด ๋†“์œผ์‹ ๊ฒŒ ์žˆ์–ด์„œ ๊ฑฐ๊ธฐ์„œ ๋” ํ™•์žฅ์„ ์‹œ๋„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
 
38
 
39
 
40
 
41
  -.gemma ํ•œ๊ตญ์–ด ๋ฒ„์ „
42
-
43
  https://huggingface.co/beomi/gemma-ko-2b
44
 
45
 
46
 
47
  *ํŠœ๋‹ํ›„ ๋Œ€ํ™”
48
-
49
- : ์–ด์ƒ‰ํ•œ ๋ถ€๋ถ„์ด ์•„์ง ๋งŽ์€ ๋Š๋‚Œ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์™€ ํŠœ๋‹ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์กฐ์ •ํ•ด์„œ ํ–ฅํ›„ ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋งŒ๋“ค์–ด ๋ณผ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
50
 
51
 
52
-
53
-
54
-
55
-
56
  * ๋ฐ์ดํ„ฐ
57
  ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜์Œ์— ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ•˜๋‹ค๊ฐ€ ์ธํ„ฐ๋„ท์— ๊ณต์œ ๋˜์–ด ์žˆ๋Š” ์ปคํ”ผ ์ „๋ฐ˜์ ์ธ ์ง€์‹์„ ํ•˜๋‚˜์”ฉ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
58
  ๊ทธํ›„์— gpt๋กœ ์ ์ ˆํžˆ finetunning ๋ชจ๋ธ์„ ์œ„ํ•œ ๊ตฌ์กฐ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฒŒ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋”ฐ๋กœ gpt api๋ฅผ ์“ฐ์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„์ด ์ œ๋ฒ•์†Œ์š” ๋˜์—ˆ์Šต๋‹ˆ๋‹ค๋งŒ, ๋‚˜๋ฆ„ ๊ดœ์ฐฎ์€ ํ€„๋ฆฌํ‹ฐ์˜ ๋ฐ์ดํ„ฐ๋ผ๊ณ  ์ƒ๊ฐํ•ด์„œ ์ด๋Ÿฐ ๋ฐฉ์‹์œผ๋กœ ์•ฝ 2์ฒœ๊ฐœ ๊ฐ€๋Ÿ‰์˜ ์ปคํ”ผ ์ „๋ฐ˜์ ์ธ ์ง€์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
59
- { "instruction": "์ปคํ”ผ๊ฐ€ ์ฒด์ค‘ ๊ฐ์†Œ์— ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?", "response": "์ปคํ”ผ ์† ์นดํŽ˜์ธ์ด ์‹ ์ง„๋Œ€์‚ฌ๋ฅผ ์ด‰์ง„ํ•˜๊ณ , ์ง€๋ฐฉ ์—ฐ์†Œ๋ฅผ ์ด‰์ง„ํ•ด ์ฒด์ค‘ ๊ฐ์†Œ์— ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.", "category": "closed_qa" },
60
- { "instruction": "ํ•ญ์‚ฐํ™” ์„ฑ๋ถ„์ด ํ’๋ถ€ํ•œ ์ปคํ”ผ์˜ ๊ฑด๊ฐ• ํšจ๊ณผ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?", "response": "์ปคํ”ผ์— ํฌํ•จ๋œ ํ•ญ์‚ฐํ™” ์„ฑ๋ถ„์€ ์„ธํฌ ์†์ƒ์„ ๋ฐฉ์ง€ํ•˜๊ณ , ๋…ธํ™”๋ฅผ ์ง€์—ฐ์‹œํ‚ค๋ฉฐ, ์•” ์˜ˆ๋ฐฉ์—๋„ ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.", "category": "closed_qa" },
61
- { "instruction": "์ปคํ”ผ๊ฐ€ ๊ณ ํ˜ˆ์•• ํ™˜์ž์—๊ฒŒ ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?", "response": "์—ฐ๊ตฌ์— ๋”ฐ๋ฅด๋ฉด, ํ•˜๋ฃจ ํ•œ ์ž”์˜ ์ปคํ”ผ๊ฐ€ ๊ณ ํ˜ˆ์•• ํ™˜์ž์˜ ํ˜ˆ๊ด€ ํƒ„๋ ฅ์„ ๊ฐœ์„ ํ•˜์—ฌ ํ˜ˆ๊ด€ ๊ฒฝํ™”๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.", "category": "closed_qa" },
62
- { "instruction": "์ปคํ”ผ๊ฐ€ ๋‡Œ ๊ฑด๊ฐ•์— ๋ฏธ์น˜๋Š” ๊ธ์ •์ ์ธ ํšจ๊ณผ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?", "response": "์ปคํ”ผ ์† ์นดํŽ˜์ธ์€ ๋„ํŒŒ๋ฏผ๊ณผ ๊ฐ™์€ ์‹ ๊ฒฝ ์ „๋‹ฌ ๋ฌผ์งˆ์˜ ๋ถ„๋น„๋ฅผ ์ด‰์ง„ํ•ด ๋‡Œ ๊ฑด๊ฐ•์„ ์œ ์ง€ํ•˜๊ณ , ์ธ์ง€ ๊ธฐ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.", "category": "closed_qa" },
63
-
64
 
65
  context๋„ ์›๋ž˜๋Š” ์žˆ์—ˆ๋Š”๋ฐ ๊ทธ๋‹ค์ง€ ๋งŽ์ด ์“ฐ์ด์ง€ ์•Š๋Š” ๊ฒƒ๊ฐ™์•„์„œ Instruction๊ณผ response๋กœ ๊ตฌ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.
66
 
67
 
68
 
69
  * ์ž์›
70
-
71
  ์ฒ˜์Œ์— kaggle๊ณผ colab์—์„œ ์ง„ํ–‰์„ ํ•˜๋‹ค๊ฐ€ ๊ฐœ์ธ ๋งฅ๋ถํ”„๋กœ๊ฐ€ ๋” ๋น ๋ฅผ๊ฒƒ ๊ฐ™์•„์„œ ์˜ฎ๊ฒผ์Šต๋‹ˆ๋‹ค.
72
-
73
  ์ด๋ถ„์˜ ์ฝ”๋“œ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ˆ˜์ •์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
74
-
75
  https://devocean.sk.com/blog/techBoardDetail.do?ID=165703&boardType=techBlog
76
 
77
-
78
-
79
  ์—ฌ๊ธฐ์„œ ๋งฅ๋ถ์—์„œ ํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•˜๋‚˜ ์žˆ๋Š”๋ฐ ํŠธ๋žœ์Šคํฌ๋จธ๊ฐ€ 4.38.2๊ฐ€ ๋งฅ๋ถ์—์„œ ์•ˆ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.
80
-
81
  ๊ทธ๋ž˜์„œ 4.38.1๋กœ ๋‹ค์šดํ•ด์„œ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
82
  https://www.singleye.net/2024/04/%E5%9C%A8-apple-silicon-m3-max-%E4%B8%8A%E5%AF%B9-llama2-%E8%BF%9B%E8%A1%8C%E5%BE%AE%E8%B0%83/#4-qlora-4-bit-%E9%87%8F%E5%8C%96%E9%85%8D%E7%BD%AE-m3-%E8%B7%B3%E8%BF%87
83
 
84
 
85
-
86
  ๋งฅ๋ถํ”„๋กœ m3 ๊ธฐ์ค€์œผ๋กœ ํ•ด์„œ 2์ฒœ๊ฐœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•œ๋ฒˆํ• ๋•Œ 3์‹œ๊ฐ„ ์ •๋„ ์†Œ์š”๋๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
87
-
88
  gpu๋„ ๊ฐ™์ด ๋Œ๋ ค์„œ ๊ทธ๋Ÿฐ์ง€ ๊ทธ๋‚˜๋งˆ ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
89
 
90
-
91
-
92
- macbook gpu ์ž์› ์‚ฌ์šฉ์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
93
-
94
  https://velog.io/@es_seong/Mac
95
 
96
 
97
 
98
  * ํŒŒ์ธํŠœ๋‹
99
-
100
- ํŒŒ์ธํŠœ๋‹์€ ์•„๋ž˜์™€ ๊ฐ™์€ ์„ค์ •์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋งฅ์ด๋ผ์„œ ์–‘์žํ™”๊ฐ€ ์•ˆ๋˜์„œ cpu๋กœ ์ง„ํ–‰์„ ํ•˜๊ฒŒ ๋” ํ•˜์˜€๊ณ , ์•„๋ž˜์˜ ์„ค์ •๋“ค์„ ์ž ์‹œ ์‚ดํŽด๋ณด์ž๋ฉด
101
-
102
 
103
 
104
  # LoRA ์„ค์ •
@@ -136,57 +112,30 @@ trainer = SFTTrainer(
136
 
137
  ์•„๋ž˜์˜ ์„ค์ •๋“ค์„ ์ž ์‹œ ์‚ดํŽด๋ณด์ž๋ฉด
138
 
139
-
140
-
141
  r=6
142
-
143
  : r์€ ๋žญํฌ(rank)๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, LoRA์—์„œ ํ•™์Šตํ•˜๋Š” ์ €์ฐจ์› ํ–‰๋ ฌ์˜ ์ฐจ์›์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ชจ๋ธ ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ํšจ์œจ์  ํ‘œํ˜„์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋ฉฐ, ์ž‘์€ r ๊ฐ’์€ ์ ๏ฟฝ๏ฟฝ๏ฟฝ ํ•™์Šต ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ r ๊ฐ’์ด ๋†’์„์ˆ˜๋ก ๋” ๋งŽ์€ ํ•™์Šต ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜์–ด ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.
144
 
145
-
146
-
147
  lora_alpha=8
148
-
149
  : lora_alpha๋Š” LoRA์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ•™์Šต๋ฅ ์„ ์กฐ์ •ํ•˜๋Š” ์Šค์ผ€์ผ๋ง ํŒฉํ„ฐ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ €์ฐจ์› ํ–‰๋ ฌ์—์„œ ๋‚˜์˜จ ์ถœ๋ ฅ์„ ์กฐ์ •ํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋ฉฐ, ํ•™์Šต๋ฅ ์˜ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •์ง“๋Š” ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋” ํฐ ๊ฐ’์€ ํ•™์Šต ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋„ˆ๋ฌด ํฌ๋ฉด ๊ณผ์ ํ•ฉ ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.
150
 
151
-
152
-
153
  lora_dropout=0.05
154
-
155
  : lora_dropout์€ ๋“œ๋กญ์•„์›ƒ ๋น„์œจ์„ ์„ค์ •ํ•˜๋ฉฐ, ๋ชจ๋ธ ํ•™์Šต ์‹œ ๊ณผ์ ํ•ฉ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ถ€ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ฌด์ž‘์œ„๋กœ ์ œ๊ฑฐํ•˜๋Š” ๋น„์œจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” 5%์˜ ๋“œ๋กญ์•„์›ƒ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
156
 
157
-
158
-
159
  target_modules=["q_proj", "o_proj", "k_proj", "v_proj", "gate_proj", "up_proj", "down_proj"]
160
-
161
  : target_modules๋Š” LoRA๊ฐ€ ์ ์šฉ๋˜๋Š” ๋ชจ๋“ˆ๋“ค์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” q_proj, k_proj, v_proj ๋“ฑ ์ฃผ๋กœ Transformer ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ฟผ๋ฆฌ, ํ‚ค, ๋ฐธ๋ฅ˜ ํ”„๋กœ์ ์…˜ ๋ชจ๋“ˆ์— LoRA๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์€ ์ฃผ๋กœ ์–ดํ…์…˜ ๋งค์ปค๋‹ˆ์ฆ˜์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ์ด ๋ชจ๋“ˆ๋“ค๋งŒ ํ•™์Šตํ•จ์œผ๋กœ์จ ํ•™์Šต ํšจ์œจ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.
162
 
163
-
164
-
165
  task_type="CAUSAL_LM"
166
-
167
  : task_type์€ ์ˆ˜ํ–‰ํ•˜๋ ค๋Š” ์ž‘์—…์˜ ์œ ํ˜•์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” **Causal Language Modeling(CAUSAL_LM)**์„ ์˜๋ฏธํ•˜๋ฉฐ, ๋ชจ๋ธ์ด ๋ฌธ๋งฅ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์Œ ๋‹จ์–ด๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•™์Šต๋ฉ๋‹ˆ๋‹ค.
168
 
169
-
170
 
171
-
172
 
173
  * ์„ฑ๋Šฅ
174
-
175
  perflexity ์ธก์ •๊ฒฐ๊ณผ 874
176
 
177
 
178
-
179
-
180
-
181
-
182
  * ์ฐธ๊ณ ํ•œ ๋‚ด์šฉ๋“ค
183
-
184
  -.์บ๊ธ€์—์„œ TPU๋กœ ํŒŒ์ธํŠœ๋‹
185
-
186
  https://www.kaggle.com/code/alirezaebrahimi/gemma-2-tpu-fine-tuning
187
 
188
-
189
-
190
  -.์ปคํ”ผ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค(์›๋‘์˜ ๋ง›์„ ์ ์ˆ˜๋กœ ๋‚˜ํƒ€๋ƒ„, ๋ฐ์ดํ„ฐ๋Š” ์ด๊ฒƒ์œผ๋กœ ํ•˜์ง€ ์•Š์Œ.)
191
-
192
  https://github.com/ddthang86/Coffee-data-analysis/blob/main/Arabica/df_arabica_clean.csv
 
13
 
14
  #GemmaSprint
15
 
 
 
16
  * ๋ชจ๋ธ๊ด€๋ จ ๊ณผ์ •, ๊ฒฐ๊ณผ๋“ฑ
17
  https://joey-k.tistory.com/15
18
 
 
23
 
24
 
25
  gemma ์ฒซ๋ฒˆ์งธ ํŒŒ์ธํŠœ๋‹ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค.
 
26
  ์ปคํ”ผ์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ์ง€์‹๊ณผ ์ปคํ”ผ ์›๋‘๋ฅผ ์ถ”์ฒœํ•ด์ฃผ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
27
 
28
 
29
 
30
  * ๋ชจ๋ธ
 
31
  2b ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํŒŒ์ธํŠœ๋‹์„ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
32
 
33
+ ์—…๋กœ๋“œํ•œ ๋ชจ๋ธ์€ ๊ธฐ๋ณธ๋ชจ๋ธ์ธ "google/gemma-2b-it"๋กœ ํŒŒ์ธํŠœ๋‹์„ ํ•˜์˜€๊ณ ,
34
+ ์ ฌ๋งˆ ํ•œ๊ตญ์–ด ๋ฒ„์ „์„ ๋งŒ๋“ค์–ด ๋†“์œผ์‹ ๊ฒŒ ์žˆ์–ด์„œ ๊ฑฐ๊ธฐ์„œ ๋” ํ™•์žฅ์„ ์‹œ๋„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
35
 
36
 
37
 
38
  -.gemma ํ•œ๊ตญ์–ด ๋ฒ„์ „
 
39
  https://huggingface.co/beomi/gemma-ko-2b
40
 
41
 
42
 
43
  *ํŠœ๋‹ํ›„ ๋Œ€ํ™”
44
+ : ์•„์ง ์–ด์ƒ‰ํ•œ ๋ถ€๋ถ„์ด ์•„์ง ๋งŽ์€ ๋Š๋‚Œ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์™€ ํŠœ๋‹ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์กฐ์ •ํ•ด์„œ ํ–ฅํ›„ ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋งŒ๋“ค์–ด ๋ณผ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
45
+ ![image/png](https://cdn-uploads.huggingface.co/production/uploads/66d2836c9000766c36d827b9/SGB2diMkcGIaGbiENvaci.png)
46
 
47
 
 
 
 
 
48
  * ๋ฐ์ดํ„ฐ
49
  ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜์Œ์— ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ•˜๋‹ค๊ฐ€ ์ธํ„ฐ๋„ท์— ๊ณต์œ ๋˜์–ด ์žˆ๋Š” ์ปคํ”ผ ์ „๋ฐ˜์ ์ธ ์ง€์‹์„ ํ•˜๋‚˜์”ฉ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
50
  ๊ทธํ›„์— gpt๋กœ ์ ์ ˆํžˆ finetunning ๋ชจ๋ธ์„ ์œ„ํ•œ ๊ตฌ์กฐ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฒŒ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋”ฐ๋กœ gpt api๋ฅผ ์“ฐ์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„์ด ์ œ๋ฒ•์†Œ์š” ๋˜์—ˆ์Šต๋‹ˆ๋‹ค๋งŒ, ๋‚˜๋ฆ„ ๊ดœ์ฐฎ์€ ํ€„๋ฆฌํ‹ฐ์˜ ๋ฐ์ดํ„ฐ๋ผ๊ณ  ์ƒ๊ฐํ•ด์„œ ์ด๋Ÿฐ ๋ฐฉ์‹์œผ๋กœ ์•ฝ 2์ฒœ๊ฐœ ๊ฐ€๋Ÿ‰์˜ ์ปคํ”ผ ์ „๋ฐ˜์ ์ธ ์ง€์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
51
+
52
+ ![image/png](https://cdn-uploads.huggingface.co/production/uploads/66d2836c9000766c36d827b9/jpF2-Pn2TvWKsYh1GSSEc.png)
 
 
 
53
 
54
  context๋„ ์›๋ž˜๋Š” ์žˆ์—ˆ๋Š”๋ฐ ๊ทธ๋‹ค์ง€ ๋งŽ์ด ์“ฐ์ด์ง€ ์•Š๋Š” ๊ฒƒ๊ฐ™์•„์„œ Instruction๊ณผ response๋กœ ๊ตฌ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.
55
 
56
 
57
 
58
  * ์ž์›
 
59
  ์ฒ˜์Œ์— kaggle๊ณผ colab์—์„œ ์ง„ํ–‰์„ ํ•˜๋‹ค๊ฐ€ ๊ฐœ์ธ ๋งฅ๋ถํ”„๋กœ๊ฐ€ ๋” ๋น ๋ฅผ๊ฒƒ ๊ฐ™์•„์„œ ์˜ฎ๊ฒผ์Šต๋‹ˆ๋‹ค.
 
60
  ์ด๋ถ„์˜ ์ฝ”๋“œ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ˆ˜์ •์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
 
61
  https://devocean.sk.com/blog/techBoardDetail.do?ID=165703&boardType=techBlog
62
 
 
 
63
  ์—ฌ๊ธฐ์„œ ๋งฅ๋ถ์—์„œ ํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•˜๋‚˜ ์žˆ๋Š”๋ฐ ํŠธ๋žœ์Šคํฌ๋จธ๊ฐ€ 4.38.2๊ฐ€ ๋งฅ๋ถ์—์„œ ์•ˆ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.
 
64
  ๊ทธ๋ž˜์„œ 4.38.1๋กœ ๋‹ค์šดํ•ด์„œ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
65
  https://www.singleye.net/2024/04/%E5%9C%A8-apple-silicon-m3-max-%E4%B8%8A%E5%AF%B9-llama2-%E8%BF%9B%E8%A1%8C%E5%BE%AE%E8%B0%83/#4-qlora-4-bit-%E9%87%8F%E5%8C%96%E9%85%8D%E7%BD%AE-m3-%E8%B7%B3%E8%BF%87
66
 
67
 
 
68
  ๋งฅ๋ถํ”„๋กœ m3 ๊ธฐ์ค€์œผ๋กœ ํ•ด์„œ 2์ฒœ๊ฐœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•œ๋ฒˆํ• ๋•Œ 3์‹œ๊ฐ„ ์ •๋„ ์†Œ์š”๋๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
 
69
  gpu๋„ ๊ฐ™์ด ๋Œ๋ ค์„œ ๊ทธ๋Ÿฐ์ง€ ๊ทธ๋‚˜๋งˆ ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
70
 
71
+ macbook gpu ์ž์› ์‚ฌ์šฉ์€ ์•„๋ž˜์˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
 
 
 
72
  https://velog.io/@es_seong/Mac
73
 
74
 
75
 
76
  * ํŒŒ์ธํŠœ๋‹
77
+ ํŒŒ์ธํŠœ๋‹์€ ์•„๋ž˜์™€ ๊ฐ™์€ ์„ค์ •์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋งฅ์ด๋ผ์„œ ์–‘์žํ™”๊ฐ€ ์•ˆ๋˜์„œ cpu๋กœ ์ง„ํ–‰์„ ํ•˜๊ฒŒ ๋” ํ•˜์˜€๊ณ ,
 
 
78
 
79
 
80
  # LoRA ์„ค์ •
 
112
 
113
  ์•„๋ž˜์˜ ์„ค์ •๋“ค์„ ์ž ์‹œ ์‚ดํŽด๋ณด์ž๋ฉด
114
 
 
 
115
  r=6
 
116
  : r์€ ๋žญํฌ(rank)๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, LoRA์—์„œ ํ•™์Šตํ•˜๋Š” ์ €์ฐจ์› ํ–‰๋ ฌ์˜ ์ฐจ์›์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ชจ๋ธ ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ํšจ์œจ์  ํ‘œํ˜„์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋ฉฐ, ์ž‘์€ r ๊ฐ’์€ ์ ๏ฟฝ๏ฟฝ๏ฟฝ ํ•™์Šต ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ r ๊ฐ’์ด ๋†’์„์ˆ˜๋ก ๋” ๋งŽ์€ ํ•™์Šต ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜์–ด ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.
117
 
 
 
118
  lora_alpha=8
 
119
  : lora_alpha๋Š” LoRA์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ•™์Šต๋ฅ ์„ ์กฐ์ •ํ•˜๋Š” ์Šค์ผ€์ผ๋ง ํŒฉํ„ฐ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ €์ฐจ์› ํ–‰๋ ฌ์—์„œ ๋‚˜์˜จ ์ถœ๋ ฅ์„ ์กฐ์ •ํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋ฉฐ, ํ•™์Šต๋ฅ ์˜ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •์ง“๋Š” ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋” ํฐ ๊ฐ’์€ ํ•™์Šต ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋„ˆ๋ฌด ํฌ๋ฉด ๊ณผ์ ํ•ฉ ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.
120
 
 
 
121
  lora_dropout=0.05
 
122
  : lora_dropout์€ ๋“œ๋กญ์•„์›ƒ ๋น„์œจ์„ ์„ค์ •ํ•˜๋ฉฐ, ๋ชจ๋ธ ํ•™์Šต ์‹œ ๊ณผ์ ํ•ฉ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ถ€ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ฌด์ž‘์œ„๋กœ ์ œ๊ฑฐํ•˜๋Š” ๋น„์œจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” 5%์˜ ๋“œ๋กญ์•„์›ƒ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
123
 
 
 
124
  target_modules=["q_proj", "o_proj", "k_proj", "v_proj", "gate_proj", "up_proj", "down_proj"]
 
125
  : target_modules๋Š” LoRA๊ฐ€ ์ ์šฉ๋˜๋Š” ๋ชจ๋“ˆ๋“ค์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” q_proj, k_proj, v_proj ๋“ฑ ์ฃผ๋กœ Transformer ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ฟผ๋ฆฌ, ํ‚ค, ๋ฐธ๋ฅ˜ ํ”„๋กœ์ ์…˜ ๋ชจ๋“ˆ์— LoRA๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ์€ ์ฃผ๋กœ ์–ดํ…์…˜ ๋งค์ปค๋‹ˆ์ฆ˜์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ์ด ๋ชจ๋“ˆ๋“ค๋งŒ ํ•™์Šตํ•จ์œผ๋กœ์จ ํ•™์Šต ํšจ์œจ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.
126
 
 
 
127
  task_type="CAUSAL_LM"
 
128
  : task_type์€ ์ˆ˜ํ–‰ํ•˜๋ ค๋Š” ์ž‘์—…์˜ ์œ ํ˜•์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” **Causal Language Modeling(CAUSAL_LM)**์„ ์˜๋ฏธํ•˜๋ฉฐ, ๋ชจ๋ธ์ด ๋ฌธ๋งฅ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์Œ ๋‹จ์–ด๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•™์Šต๋ฉ๋‹ˆ๋‹ค.
129
 
 
130
 
 
131
 
132
  * ์„ฑ๋Šฅ
 
133
  perflexity ์ธก์ •๊ฒฐ๊ณผ 874
134
 
135
 
 
 
 
 
136
  * ์ฐธ๊ณ ํ•œ ๋‚ด์šฉ๋“ค
 
137
  -.์บ๊ธ€์—์„œ TPU๋กœ ํŒŒ์ธํŠœ๋‹
 
138
  https://www.kaggle.com/code/alirezaebrahimi/gemma-2-tpu-fine-tuning
139
 
 
 
140
  -.์ปคํ”ผ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค(์›๋‘์˜ ๋ง›์„ ์ ์ˆ˜๋กœ ๋‚˜ํƒ€๋ƒ„, ๋ฐ์ดํ„ฐ๋Š” ์ด๊ฒƒ์œผ๋กœ ํ•˜์ง€ ์•Š์Œ.)
 
141
  https://github.com/ddthang86/Coffee-data-analysis/blob/main/Arabica/df_arabica_clean.csv