LLM Training - Data Preparation

Tip

AWS ν•΄ν‚Ή 배우기 및 μ—°μŠ΅ν•˜κΈ°:HackTricks Training AWS Red Team Expert (ARTE)
GCP ν•΄ν‚Ή 배우기 및 μ—°μŠ΅ν•˜κΈ°: HackTricks Training GCP Red Team Expert (GRTE) Azure ν•΄ν‚Ή 배우기 및 μ—°μŠ΅ν•˜κΈ°: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks μ§€μ›ν•˜κΈ°

이것은 맀우 μΆ”μ²œν•˜λŠ” μ±… https://www.manning.com/books/build-a-large-language-model-from-scratch μ—μ„œμ˜ λ‚΄ λ…ΈνŠΈμ™€ μΆ”κ°€ μ •λ³΄μž…λ‹ˆλ‹€.

Basic Information

이 포슀트λ₯Ό μ½λŠ” κ²ƒμœΌλ‘œ μ‹œμž‘ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ•Œμ•„μ•Ό ν•  κΈ°λ³Έ κ°œλ…μ— λŒ€ν•΄:

0. Basic LLM Concepts

1. Tokenization

Tip

이 초기 λ‹¨κ³„μ˜ λͺ©ν‘œλŠ” 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€: μž…λ ₯을 의미 μžˆλŠ” λ°©μ‹μœΌλ‘œ 토큰(아이디)으둜 λ‚˜λˆ„λŠ” κ²ƒμž…λ‹ˆλ‹€.

1. Tokenizing

2. Data Sampling

Tip

이 두 번째 λ‹¨κ³„μ˜ λͺ©ν‘œλŠ” 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€: μž…λ ₯ 데이터λ₯Ό μƒ˜ν”Œλ§ν•˜κ³  ν›ˆλ ¨ 단계에 맞게 μ€€λΉ„ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 일반적으둜 데이터셋을 νŠΉμ • 길이의 λ¬Έμž₯으둜 λ‚˜λˆ„κ³  μ˜ˆμƒ 응닡도 μƒμ„±ν•©λ‹ˆλ‹€.

2. Data Sampling

3. Token Embeddings

Tip

이 μ„Έ 번째 λ‹¨κ³„μ˜ λͺ©ν‘œλŠ” 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€: μ–΄νœ˜μ˜ 각 이전 토큰에 μ›ν•˜λŠ” μ°¨μ›μ˜ 벑터λ₯Ό ν• λ‹Ήν•˜μ—¬ λͺ¨λΈμ„ ν›ˆλ ¨ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ–΄νœ˜μ˜ 각 λ‹¨μ–΄λŠ” X μ°¨μ›μ˜ κ³΅κ°„μ—μ„œ ν•œ 점이 λ©λ‹ˆλ‹€.
각 λ‹¨μ–΄μ˜ 초기 μœ„μΉ˜λŠ” β€œλ¬΄μž‘μœ„λ‘œβ€ μ΄ˆκΈ°ν™”λ˜λ©°, 이 μœ„μΉ˜λŠ” ν›ˆλ ¨ κ°€λŠ₯ν•œ λ§€κ°œλ³€μˆ˜μž…λ‹ˆλ‹€(ν›ˆλ ¨ 쀑 κ°œμ„ λ©λ‹ˆλ‹€).

κ²Œλ‹€κ°€, 토큰 μž„λ² λ”© λ™μ•ˆ 또 λ‹€λ₯Έ μž„λ² λ”© λ ˆμ΄μ–΄κ°€ μƒμ„±λ©λ‹ˆλ‹€. μ΄λŠ” (이 경우) ν›ˆλ ¨ λ¬Έμž₯μ—μ„œ λ‹¨μ–΄μ˜ μ ˆλŒ€ μœ„μΉ˜λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ λ¬Έμž₯μ—μ„œ μ„œλ‘œ λ‹€λ₯Έ μœ„μΉ˜μ— μžˆλŠ” λ‹¨μ–΄λŠ” μ„œλ‘œ λ‹€λ₯Έ ν‘œν˜„(의미)을 κ°–κ²Œ λ©λ‹ˆλ‹€.

3. Token Embeddings

4. Attention Mechanisms

Tip

이 λ„€ 번째 λ‹¨κ³„μ˜ λͺ©ν‘œλŠ” 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€: 일뢀 주의 λ©”μ»€λ‹ˆμ¦˜μ„ μ μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ΄λŠ” μ–΄νœ˜μ˜ 단어와 ν˜„μž¬ LLM ν›ˆλ ¨μ— μ‚¬μš©λ˜λŠ” λ¬Έμž₯μ—μ„œμ˜ 이웃 κ°„μ˜ 관계λ₯Ό ν¬μ°©ν•˜λŠ” λ§Žμ€ 반볡 λ ˆμ΄μ–΄κ°€ 될 κ²ƒμž…λ‹ˆλ‹€.
이λ₯Ό μœ„ν•΄ λ§Žμ€ λ ˆμ΄μ–΄κ°€ μ‚¬μš©λ˜λ©°, λ§Žμ€ ν›ˆλ ¨ κ°€λŠ₯ν•œ λ§€κ°œλ³€μˆ˜κ°€ 이 정보λ₯Ό ν¬μ°©ν•˜κ²Œ λ©λ‹ˆλ‹€.

4. Attention Mechanisms

5. LLM Architecture

Tip

이 λ‹€μ„― 번째 λ‹¨κ³„μ˜ λͺ©ν‘œλŠ” 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€: 전체 LLM의 μ•„ν‚€ν…μ²˜λ₯Ό κ°œλ°œν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. λͺ¨λ“  것을 ν†΅ν•©ν•˜κ³ , λͺ¨λ“  λ ˆμ΄μ–΄λ₯Ό μ μš©ν•˜λ©°, ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•˜κ±°λ‚˜ ν…μŠ€νŠΈλ₯Ό ID둜 λ³€ν™˜ν•˜κ³  κ·Έ λ°˜λŒ€λ‘œ λ³€ν™˜ν•˜λŠ” λͺ¨λ“  κΈ°λŠ₯을 μƒμ„±ν•©λ‹ˆλ‹€.

이 μ•„ν‚€ν…μ²˜λŠ” ν›ˆλ ¨ ν›„ ν…μŠ€νŠΈλ₯Ό μ˜ˆμΈ‘ν•˜λŠ” 데에도 μ‚¬μš©λ©λ‹ˆλ‹€.

5. LLM Architecture

6. Pre-training & Loading models

Tip

이 μ—¬μ„― 번째 λ‹¨κ³„μ˜ λͺ©ν‘œλŠ” 맀우 κ°„λ‹¨ν•©λ‹ˆλ‹€: λͺ¨λΈμ„ μ²˜μŒλΆ€ν„° ν›ˆλ ¨ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 이λ₯Ό μœ„ν•΄ 이전 LLM μ•„ν‚€ν…μ²˜λ₯Ό μ‚¬μš©ν•˜μ—¬ μ •μ˜λœ 손싀 ν•¨μˆ˜μ™€ μ΅œμ ν™”λ₯Ό μ‚¬μš©ν•˜μ—¬ 데이터 μ„ΈνŠΈλ₯Ό λ°˜λ³΅ν•˜λ©° λͺ¨λΈμ˜ λͺ¨λ“  λ§€κ°œλ³€μˆ˜λ₯Ό ν›ˆλ ¨ν•©λ‹ˆλ‹€.

6. Pre-training & Loading models

7.0. LoRA Improvements in fine-tuning

Tip

LoRA의 μ‚¬μš©μ€ 이미 ν›ˆλ ¨λœ λͺ¨λΈμ„ λ―Έμ„Έ μ‘°μ •ν•˜λŠ” 데 ν•„μš”ν•œ 계산을 많이 μ€„μž…λ‹ˆλ‹€.

7.0. LoRA Improvements in fine-tuning

7.1. Fine-Tuning for Classification

Tip

이 μ„Ήμ…˜μ˜ λͺ©ν‘œλŠ” 이미 사전 ν›ˆλ ¨λœ λͺ¨λΈμ„ λ―Έμ„Έ μ‘°μ •ν•˜λŠ” 방법을 λ³΄μ—¬μ£ΌλŠ” κ²ƒμž…λ‹ˆλ‹€. λ”°λΌμ„œ μƒˆλ‘œμš΄ ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•˜λŠ” λŒ€μ‹  LLM은 μ£Όμ–΄μ§„ ν…μŠ€νŠΈκ°€ 각 μ£Όμ–΄μ§„ μΉ΄ν…Œκ³ λ¦¬μ— λΆ„λ₯˜λ  ν™•λ₯ μ„ μ„ νƒν•©λ‹ˆλ‹€ (예: ν…μŠ€νŠΈκ°€ μŠ€νŒΈμΈμ§€ μ•„λ‹Œμ§€).

7.1. Fine-Tuning for Classification

7.2. Fine-Tuning to follow instructions

Tip

이 μ„Ήμ…˜μ˜ λͺ©ν‘œλŠ” ν…μŠ€νŠΈλ₯Ό μƒμ„±ν•˜λŠ” λŒ€μ‹  지침을 λ”°λ₯΄λ„둝 이미 사전 ν›ˆλ ¨λœ λͺ¨λΈμ„ λ―Έμ„Έ μ‘°μ •ν•˜λŠ” 방법을 λ³΄μ—¬μ£ΌλŠ” κ²ƒμž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ±—λ΄‡μœΌλ‘œμ„œ μž‘μ—…μ— μ‘λ‹΅ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

7.2. Fine-Tuning to follow instructions

Tip

AWS ν•΄ν‚Ή 배우기 및 μ—°μŠ΅ν•˜κΈ°:HackTricks Training AWS Red Team Expert (ARTE)
GCP ν•΄ν‚Ή 배우기 및 μ—°μŠ΅ν•˜κΈ°: HackTricks Training GCP Red Team Expert (GRTE) Azure ν•΄ν‚Ή 배우기 및 μ—°μŠ΅ν•˜κΈ°: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks μ§€μ›ν•˜κΈ°