🎯 Cheatsheet: Policy Gradient cho người mới: từ toán nền tảng đến đồ án REINFORCE

By Everwise Intern

Tấm thẻ tra cứu (lookup card) cho toàn khóa. Đọc từ trên xuống: toán trước, cài đặt sau.


1. Ký hiệu cốt lõi (notation)

Ký hiệu Nghĩa Ghi chú
$s_t$ trạng thái (state) tại bước $t$
$a_t$ hành động (action) tại bước $t$
$r_t$ phần thưởng (reward) tại bước $t$
$\tau$ quỹ đạo (trajectory) = $(s_0,a_0,r_0,s_1,\dots)$ một "episode"
$\pi_\theta(a\mid s)$ policy (chính sách), tham số hóa bởi $\theta$ mạng nơ-ron xuất xác suất
$J(\theta)$ mục tiêu (objective) = phần thưởng kỳ vọng cần tối đa hóa
$\gamma$ hệ số chiết khấu (discount factor), $0\le\gamma\le1$
$G_t$ return từ bước $t$: $\sum_{k=t}^{T}\gamma^{k-t}r_k$
$\alpha$ tốc độ học (learning rate)

2. Ôn toán nền (Module 1.1)

2.1 Kỳ vọng (expectation)

$$ \mathbb{E}_{x\sim p}[f(x)] = \sum_x p(x),f(x) $$

  • Với phân phối liên tục: thay tổng bằng tích phân.
  • Ước lượng Monte Carlo: lấy mẫu $x_1,\dots,x_N \sim p$ rồi tính trung bình $\frac{1}{N}\sum_i f(x_i)$. Đây chính là cách RL "đo" phần thưởng kỳ vọng: chạy nhiều episode rồi lấy trung bình.

2.2 Gradient (đạo hàm)

Quy tắc Công thức
Hằng số $\nabla_\theta c = 0$
Tổng $\nabla(f+g) = \nabla f + \nabla g$
Tích (product rule) $\nabla(fg) = f\nabla g + g\nabla f$
Thương (quotient) $\nabla(f/g) = \dfrac{g\nabla f - f\nabla g}{g^2}$
Hàm hợp (chain rule) $\nabla_\theta f(g(\theta)) = f'(g(\theta))\cdot\nabla_\theta g(\theta)$
Log $\nabla \ln x = \dfrac{1}{x}$
Hàm mũ $\nabla e^{x} = e^{x}$
  • Chiều của gradient: $\nabla_\theta J$ chỉ hướng tăng nhanh nhất của $J$. Muốn tối đa hóa: $\theta \leftarrow \theta + \alpha\nabla_\theta J$. Muốn tối thiểu hóa (loss): $\theta \leftarrow \theta - \alpha\nabla_\theta L$.

2.3 Quy tắc chuỗi cho log

$$ \nabla_\theta \ln f(\theta) = \frac{\nabla_\theta f(\theta)}{f(\theta)} $$

Đây là mảnh ghép sẽ dùng ngay ở mục 3.


3. Log-derivative trick (Module 1.2)

This cheatsheet is premium content. Sign in and purchase the course to view the full content. Sign in