# 5-fold

### 1. 5-fold là gì?

**5-fold** là cách gọi của **5-fold cross-validation** — một phương pháp đánh giá mô hình bằng cách chia dữ liệu thành **5 phần (folds)** và huấn luyện/kiểm tra nhiều lần.

Tên đầy đủ thường gọi là:

**K-fold cross-validation**

Khi K = 5 → gọi là **5-fold cross-validation**

***

### 2. Cách hoạt động của 5-fold

Giả sử có 1000 samples.

#### Bước 1: Chia thành 5 phần bằng nhau

Mỗi fold có 200 samples.

```
Fold 1 | Fold 2 | Fold 3 | Fold 4 | Fold 5
```

#### Bước 2: Huấn luyện 5 lần

| Lần | Training set | Test set |
| --- | ------------ | -------- |
| 1   | Fold 2–5     | Fold 1   |
| 2   | Fold 1,3,4,5 | Fold 2   |
| 3   | Fold 1,2,4,5 | Fold 3   |
| 4   | Fold 1,2,3,5 | Fold 4   |
| 5   | Fold 1–4     | Fold 5   |

#### Bước 3:

Lấy **trung bình kết quả của 5 lần**

Scorefinal=Score1+Score2+Score3+Score4+Score55Score\_{final} = \frac{Score\_1 + Score\_2 + Score\_3 + Score\_4 + Score\_5}{5}Scorefinal​=5Score1​+Score2​+Score3​+Score4​+Score5​​

***

### 3. Tại sao phải dùng 5-fold?

Nếu chỉ chia train/test 1 lần:

→ Kết quả phụ thuộc vào cách chia\
→ Có thể may mắn hoặc xui rủi

5-fold giúp:

✔ Giảm variance\
✔ Đánh giá ổn định hơn\
✔ Tận dụng toàn bộ dữ liệu

***

### 4. So sánh với các giá trị K khác

| K             | Đặc điểm                          |
| ------------- | --------------------------------- |
| 2-fold        | Thô                               |
| 5-fold        | Cân bằng giữa tốc độ & độ ổn định |
| 10-fold       | Ổn định hơn nhưng chậm hơn        |
| Leave-One-Out | Rất chậm                          |

Trong thực tế:

👉 5 hoặc 10 là phổ biến nhất\
👉 5-fold thường dùng trong research vì cân bằng tốt

***

### 5. 5-fold và SMOTE (quan trọng cho anh)

Nếu dataset mất cân bằng (như diabetes của anh):

Phải làm đúng thứ tự:

```
Trong mỗi fold:
    - Chia train/test
    - Áp dụng SMOTE chỉ trên TRAIN
    - Train model
    - Test trên fold test (không SMOTE)
```

⚠️ Không được SMOTE trước khi chia fold\
→ sẽ gây data leakage

***

### 6. 5-fold có biến thể gì?

#### 🔹 Stratified 5-fold

**Stratified K-Fold**

Giữ tỷ lệ lớp giống nhau trong mỗi fold.

Ví dụ:

* 90% không bệnh
* 10% bệnh

Mỗi fold vẫn 90/10.

👉 Với dataset diabetes của anh → nên dùng loại này.

***

### 7. Khi nào dùng 5-fold?

Phù hợp khi:

* Dataset nhỏ đến trung bình
* Cần đánh giá tin cậy (thesis, publication)
* So sánh nhiều model

***

### 8. Trong bối cảnh MSc của anh

Với pipeline:

* Logistic Regression
* SVM
* LightGBM
* XAI

Nên dùng:

```
Stratified 5-fold
+
SMOTE inside each fold
+
Report mean ± std
```

Ví dụ:

Accuracy: 0.812 ± 0.014\
F1-score: 0.734 ± 0.021

→ Kết quả có tính học thuật hơn.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://deeplearningcoban.gitbook.io/deeplearningcoban.com/tham-khao/glossary/09/5-fold.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
