# 2️⃣ Activation Function

<figure><img src="/files/fMtOcDgIZNhAm2A9lOEP" alt=""><figcaption></figcaption></figure>

#### 1. Activation Function là gì?

Activation Function (hàm kích hoạt) là hàm toán học:

* nhận đầu ra của một neuron (sau khi cộng trọng số và bias),
* quyết định **giá trị neuron đó sẽ truyền tiếp** cho tầng sau.

Nói đơn giản:

> Activation Function quyết định **neuron có “kích hoạt” hay không**,\
> và **kích hoạt mạnh hay yếu**.

***

#### 2. Vì sao Activation Function quan trọng?

Nếu **không có activation function**:

* mỗi neuron chỉ thực hiện phép cộng và nhân,
* toàn bộ mạng nơ-ron (dù nhiều tầng) vẫn chỉ là **một phép biến đổi tuyến tính**.

Hệ quả:

* mạng **không học được quan hệ phức tạp**,
* thêm nhiều tầng cũng **không tạo ra sức mạnh mới**.

👉 Activation Function tạo ra **tính phi tuyến (non-linearity)**,\
và **phi tuyến là điều bắt buộc** để Deep Learning hoạt động hiệu quả.

***

#### 3. Trực giác về tính phi tuyến

Thế giới thực:

* không tuyến tính,
* không đơn giản,
* có nhiều mối quan hệ phức tạp.

Ví dụ:

* nguy cơ bệnh không tăng đều theo từng chỉ số,
* ngôn ngữ có ngữ cảnh,
* hình ảnh có cấu trúc nhiều lớp.

Activation Function cho phép:

> mô hình “bẻ cong” không gian dữ liệu\
> để học các mối quan hệ đó.

***

#### 4. Một số Activation Function phổ biến

**4.1 Sigmoid**

* Giá trị đầu ra trong khoảng (0, 1)
* Thường dùng cho:
  * xác suất
  * bài toán nhị phân

Nhược điểm:

* dễ bị **vanishing gradient**
* không phù hợp cho mạng sâu

📌 Ngày nay, sigmoid **ít dùng ở hidden layer**.

***

**4.2 Tanh**

* Giá trị đầu ra trong khoảng (-1, 1)
* Cân bằng hơn sigmoid

Nhược điểm:

* vẫn gặp vanishing gradient
* không phải lựa chọn tối ưu cho mạng sâu

***

**4.3 ReLU (Rectified Linear Unit)**

* Công thức đơn giản:\
  nếu x > 0 → x,\
  nếu x ≤ 0 → 0

Ưu điểm:

* tính toán nhanh
* giảm vanishing gradient
* rất hiệu quả trong thực tế

📌 **ReLU là activation function phổ biến nhất hiện nay cho hidden layer.**

***

**4.4 Softmax**

* Chuyển đầu ra thành **phân phối xác suất**
* Tổng các giá trị = 1

Thường dùng ở:

* output layer
* bài toán phân loại nhiều lớp

***

#### 5. Activation Function và vị trí sử dụng

Một nguyên tắc thực tế:

* **Hidden layers**:\
  → ReLU (hoặc biến thể của ReLU)
* **Output layer**:\
  → phụ thuộc bài toán
  * Regression → không hoặc linear
  * Binary classification → Sigmoid
  * Multi-class classification → Softmax

📌 Không có activation “tốt nhất cho mọi trường hợp”.

***

#### 6. Vanishing Gradient – vấn đề lịch sử

Một lý do khiến Deep Learning từng “chững lại” là:

* gradient trở nên rất nhỏ
* các tầng đầu **không học được**

Activation như ReLU giúp:

* gradient không bị triệt tiêu quá nhanh
* mạng sâu học hiệu quả hơn

👉 Đây là một trong những lý do Deep Learning **bùng nổ trở lại**.

***

#### 7. Hiểu đúng về Activation Function

Cần tránh hiểu sai:

* Activation Function **không phải trí thông minh**
* Không quyết định mô hình “hiểu” dữ liệu

Activation chỉ:

> tạo điều kiện toán học\
> để mô hình học được quan hệ phức tạp

***

#### 8. Tóm tắt nhanh

Activation Function giúp:

* tạo tính phi tuyến
* tăng khả năng biểu diễn
* cho phép mạng sâu học hiệu quả

Nếu thiếu activation:

> Deep Learning **không còn là Deep Learning**.

<figure><img src="/files/rDAP7sv0rtOB9Dmdc0BQ" alt=""><figcaption></figcaption></figure>

#### 9. Sau page này, bạn cần nắm được gì?

Sau khi đọc xong page này, bạn nên:

* hiểu vai trò của activation function
* biết vì sao ReLU được dùng nhiều
* hiểu cách chọn activation cho từng tầng

👉 Ở page tiếp theo, chúng ta sẽ trả lời câu hỏi:\
**Mô hình biết mình đúng hay sai bằng cách nào?**\
→ **Loss Function**


---

# 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/neural-network-co-ban/activation-function.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.
