Checkpoint: nền tảng toán của Policy Gradient
Quiz
- Policy có 3 hành động với xác suất 0.5, 0.3, 0.2 và phần thưởng tương ứng 1, 2, 10. Kỳ vọng phần thưởng của policy này bằng bao nhiêu?
- 13 (tổng phần thưởng)
- 2.0 (chỉ lấy phần thưởng lớn nhất nhân xác suất nhỏ nhất)
- 3.1
- 4.33 (trung bình cộng của 1, 2, 10)
- Với J(θ) = -(θ - 3)², tốc độ học α = 0.1 và khởi đầu θ = 0, sau một bước gradient ascent thì θ bằng bao nhiêu?
- 0.6
- -0.6
- 6.0
- 0.3
- Vì sao trong biểu thức ∇θ J(θ) = Στ ∇θ P(τ|θ) · R(τ), gradient chỉ tác động lên P(τ|θ) mà không lên R(τ)?
- Vì R(τ) luôn bằng 0 trong mọi episode
- Vì ta cố tình bỏ qua R(τ) để công thức gọn hơn
- Vì R(τ) là hằng số theo θ: phần thưởng do môi trường trả về, không phụ thuộc tham số policy
- Vì R(τ) là hàm khả vi của θ nhưng đạo hàm của nó triệt tiêu
- Đẳng thức lõi của log-derivative trick được phát biểu đúng là:
- ∇θ log pθ(x) = pθ(x) · ∇θ pθ(x)
- ∇θ pθ(x) = ∇θ log pθ(x) / pθ(x)
- ∇θ pθ(x) = pθ(x) · ∇θ log pθ(x)
- ∇θ pθ(x) = log pθ(x) · ∇θ pθ(x)
- Sau khi áp dụng log-derivative trick và phân rã xác suất quỹ đạo, công thức gradient cuối cùng của policy gradient là gì?
- ∇θ J(θ) = E[ (Σt ∇θ log πθ(at|st)) · R(τ) ]
- ∇θ J(θ) = E[ Σt ∇θ P(st+1|st, at) · R(τ) ]
- ∇θ J(θ) = E[ ∇θ R(τ) ]
- ∇θ J(θ) = E[ Σt log πθ(at|st) + R(τ) ]
- Trong PyTorch, optimizer mặc định giảm loss. Bạn có logp (log xác suất hành động đã chọn) và R (phần thưởng). Dòng code nào đúng với mục tiêu gradient ascent?
- loss = -(logp * R).mean()
- loss = (logp * R).mean()
- loss = (logp / R).mean()
- loss = -R.mean() (không cần logp)
- Theo quy tắc chuỗi cho hàm log, ta có ∇θ log pθ(x) = ∇θ pθ(x) / pθ(x), với điều kiện ____ để phép log hợp lệ.
- Với policy softmax trên logits z, gradient của log xác suất theo z có dạng: vector one-hot của hành động a trừ đi ____.
- Trong công thức cập nhật θ ← θ + α ∇θ J(θ), đại lượng α được gọi là ____.
- Hãy tự chứng minh log-derivative trick trên giấy: từ ∇θ log pθ(x) = ∇θ pθ(x) / pθ(x), suy ra ∇θ pθ(x) = pθ(x) ∇θ log pθ(x), rồi giải thích bằng lời vì sao đẳng thức này giúp ước lượng gradient của J(θ) = E[f(x)] bằng lấy mẫu Monte Carlo.
Sign in to submit answers.