Biểu diễn & Căn chỉnhgiáo trình tự học
Chương 1210 phút đọcHọc tăng cường và căn chỉnh

12Nhập môn học tăng cường#

Ở Chương 1, mô hình vừa tiền huấn luyện được hỏi thủ đô của Pháp và có thể viết tiếp thành một đề kiểm tra thay vì trả lời. Muốn sửa hành vi đó bằng tín hiệu "câu trả lời này tốt hay tệ", cần một cách học từ phần thưởng thay vì từ đáp án đúng. Đó là học tăng cường (reinforcement learning). Ta chỉ xét những khái niệm tối thiểu cần cho RLHF ở Chương 14, kèm một thí nghiệm nhỏ về khám phá cho kết quả khác với cách giải thích thường gặp.

12.1Khác biệt với học có giám sát#

Trong học có giám sát, mỗi mẫu đi kèm đáp án đúng; mô hình dự đoán, so với đáp án, rồi điều chỉnh. Trong học tăng cường, không có đáp án, chỉ có phần thưởng: một con số cho biết việc vừa làm tốt hay tệ tới mức nào. Ba khác biệt đi kèm, và cả ba đều làm bài toán khó hơn:

Học có giám sát Học tăng cường
Tín hiệu đáp án đúng cho mỗi mẫu một con số, không cho biết nên làm gì thay thế
Thời điểm ngay sau mỗi dự đoán có thể đến rất muộn sau hành động gây ra nó
Dữ liệu cho sẵn, cố định do chính chính sách đang học sinh ra

Dòng cuối có tác động lớn nhất. Trong học tăng cường, hành động của tác tử quyết định nó sẽ thấy dữ liệu gì tiếp theo. Một chính sách kém chỉ thu thập được dữ liệu kém, rồi học từ dữ liệu đó lại ra chính sách kém. Đây là một vòng phản hồi, cùng bản chất với vòng phản hồi trong các hệ thống gợi ý (Mục 12.2 của MLOps).

12.2Các khái niệm cơ bản#

Một bài toán học tăng cường gồm một tác tử tương tác với môi trường. Tại mỗi thời điểm, môi trường ở một trạng thái ss, tác tử chọn một hành động aa và nhận về một phần thưởng rr, là một con số. Quy tắc chọn hành động gọi là chính sách π(a∣s)\pi(a \mid s), và có thể ngẫu nhiên. Để đánh giá một lựa chọn, ta dùng hàm giá trị hành động Qπ(s,a)Q^\pi(s, a): tổng phần thưởng chiết khấu kỳ vọng nếu làm aa tại ss rồi tiếp tục theo π\pi. Hàm giá trị trạng thái Vπ(s)V^\pi(s) là kỳ vọng của Qπ(s,a)Q^\pi(s, a) theo a∼π(⋅∣s)a \sim \pi(\cdot \mid s).

Tổng phần thưởng chiết khấu từ thời điểm tt là Gt=rt+1+γrt+2+γ2rt+3+…G_t = r_{t+1} + \gamma r_{t+2} + \gamma^2 r_{t+3} + \dots, với hệ số chiết khấu γ∈[0,1)\gamma \in [0, 1): γ\gamma gần 1 nghĩa là coi trọng phần thưởng xa, gần 0 nghĩa là chỉ quan tâm phần thưởng trước mắt. Một hành động có thể cho phần thưởng tức thời thấp mà vẫn là lựa chọn đúng, vì nó dẫn tới phần thưởng lớn về sau; hàm giá trị tồn tại để nắm được điều đó.

Hàm giá trị tối ưu Q∗Q^* thoả phương trình Bellman

Q∗(s,a)=E[r+γmax⁡a′Q∗(s′,a′)],Q^*(s, a) = \mathbb{E}\Big[r + \gamma\max_{a'}Q^*(s', a')\Big],

trong đó kỳ vọng lấy theo phần thưởng rr và trạng thái kế tiếp s′s' sau khi làm aa tại ss. Giá trị của một hành động bằng phần thưởng nhận ngay cộng giá trị chiết khấu của hành động tốt nhất ở trạng thái kế tiếp.

Q-learning (Watkins và Dayan, 1992) biến phương trình này thành quy tắc cập nhật sau mỗi bước chuyển (s,a,r,s′)(s, a, r, s'):

Q(s,a)←Q(s,a)+α[r+γmax⁡a′Q(s′,a′)⏟mục tieˆu−Q(s,a)].Q(s, a) \leftarrow Q(s, a) + \alpha\Big[\underbrace{r + \gamma\max_{a'}Q(s', a')}_{\text{mục tiêu}} - Q(s, a)\Big].

Đại lượng trong ngoặc là sai số thời gian (temporal difference error): chênh lệch giữa ước lượng mới dựa trên quan sát vừa có và ước lượng hiện tại. Q-learning là thuật toán ngoài chính sách (off-policy): nó học giá trị của chính sách tham lam theo QQ, bất kể dữ liệu được thu thập bằng chính sách nào, miễn là mọi cặp trạng thái–hành động được thử đủ nhiều.

12.3Khám phá và khai thác#

Nếu luôn chọn hành động có QQ cao nhất theo ước lượng hiện tại (khai thác), tác tử không bao giờ thử những hành động khác, và không bao giờ biết có lựa chọn tốt hơn. Nếu luôn chọn ngẫu nhiên (khám phá), nó biết nhiều nhưng không tận dụng được. Cách cân bằng thông dụng nhất là ε\varepsilon-tham lam: với xác suất ε\varepsilon chọn hành động ngẫu nhiên, còn lại chọn hành động có QQ cao nhất. Thí nghiệm ở Mục 12.4 cho thấy đây không phải cơ chế khám phá duy nhất.

12.4Thí nghiệm khám phá trên lưới 7 × 7#

Môi trường là lưới 7×77 \times 7: tác tử xuất phát ở góc dưới bên trái, đích ở góc trên bên phải (phần thưởng +10+10), bốn ô bẫy (phần thưởng −10-10), mỗi lượt kết thúc khi tới đích, rơi vào bẫy hoặc sau 80 bước. Q-learning chạy 6 000 lượt với α=0,2\alpha = 0{,}2, γ=0,97\gamma = 0{,}97. Ba cấu hình chỉ khác nhau ở phần thưởng của mỗi bước đi thường và giá trị khởi tạo Q0Q_0. Sau khi học, chính sách tham lam theo QQ (không còn khám phá) được chạy để đo tỉ lệ tới đích.

Hình 12
Hình 12. Trái: chính sách học được ở cấu hình 1. Phải: tỉ lệ tới đích theo ε\varepsilon ở ba cấu hình.
Cấu hình ε=0\varepsilon = 0 0,050{,}05 0,10{,}1 0,30{,}3 1,01{,}0
1. Phạt −0,1-0{,}1 mỗi bước, Q0=0Q_0 = 0 100% 100% 100% 100% 100%
2. Không phạt, Q0=0Q_0 = 0 0% 100% 100% 100% 100%
3. Phạt −0,1-0{,}1 mỗi bước, Q0=−20Q_0 = -20 0% 0% 0% 0% 100%

Cấu hình 1 thành công ngay cả với ε=0\varepsilon = 0, tức không hề chọn ngẫu nhiên. Lời giải thích "cần ε>0\varepsilon > 0 để khám phá" không giải thích được kết quả này.

Lời giải thích nằm ở giá trị khởi tạo. Trong cấu hình 1, mọi phần thưởng của bước đi thường đều âm, trong khi QQ khởi tạo bằng 0. Mỗi lần thử một hành động, QQ của nó bị kéo xuống dưới 0, còn các hành động chưa thử vẫn ở 0. Một bước cập nhật cho thấy con số cụ thể: với α=0,2\alpha = 0{,}2, γ=0,97\gamma = 0{,}97, một hành động được thử lần đầu ở trạng thái mà mọi QQ còn bằng 0 có Q←0+0,2 (−0,1+0,97⋅0−0)=−0,02Q \leftarrow 0 + 0{,}2\,(-0{,}1 + 0{,}97 \cdot 0 - 0) = -0{,}02, thấp hơn 0 của ba hành động chưa thử. Chính sách tham lam vì vậy luôn ưu tiên hành động chưa thử, tức tự khám phá mà không cần yếu tố ngẫu nhiên. Cơ chế này gọi là khởi tạo lạc quan (optimistic initialization; Sutton và Barto, 2018): giá trị khởi tạo cao hơn giá trị thật làm mọi lựa chọn chưa thử trông hấp dẫn.

Cấu hình 2 mất tính lạc quan đó. Không phạt bước đi thì mọi QQ bằng 0 cho tới khi tác tử tình cờ tới đích hoặc rơi vào bẫy. Với ε=0\varepsilon = 0, hàm argmax luôn trả về cùng một hành động khi các giá trị bằng nhau, nên tác tử đi mãi một hướng và không bao giờ tới đích. Chỉ cần ε=0,05\varepsilon = 0{,}05 là đủ để tìm ra đích.

Cấu hình 3 khởi tạo bi quan: Q0=−20Q_0 = -20, thấp hơn mọi giá trị thật. Hành động đầu tiên được thử có QQ tăng lên gần giá trị thật, trong khi các hành động khác vẫn ở −20-20, nên chính sách tham lam bám lấy hành động đã thử và gần như không khám phá. Cùng bước cập nhật như trên giờ cho Q←−20+0,2 (−0,1+0,97⋅(−20)+20)=−19,9Q \leftarrow -20 + 0{,}2\,(-0{,}1 + 0{,}97 \cdot (-20) + 20) = -19{,}9, cao hơn −20-20 của mọi hành động chưa thử. Với ngân sách 6 000 lượt, ngay cả ε=0,3\varepsilon = 0{,}3 cũng không đủ. Chỉ với ε=1\varepsilon = 1, tức hành động hoàn toàn ngẫu nhiên, Q-learning mới học được chính sách tối ưu; điều này khả thi vì Q-learning là thuật toán ngoài chính sách.

Như vậy ε\varepsilon không phải nguồn khám phá duy nhất. Cách khởi tạo hàm giá trị cũng là một cơ chế khám phá, và trong cấu hình 1 nó thay thế hoàn toàn ε\varepsilon. Ngược lại, khởi tạo bi quan có thể làm ε\varepsilon nhỏ trở nên vô tác dụng.

12.5Tóm tắt#

Học tăng cường học từ phần thưởng, một con số không cho biết nên làm gì thay thế, có thể đến muộn, và phụ thuộc vào dữ liệu do chính chính sách đang học thu thập. Hàm giá trị QQ nắm được phần thưởng về sau của một hành động; nó thoả phương trình Bellman, và Q-learning biến phương trình đó thành quy tắc cập nhật theo sai số thời gian. Thí nghiệm trên lưới 7×77 \times 7 cho thấy khởi tạo lạc quan đủ để tác tử tới đích 100% với ε=0\varepsilon = 0, còn khởi tạo bi quan làm cả ε=0,3\varepsilon = 0{,}3 cũng thất bại.

Q-learning cần một bảng giá trị cho mọi cặp trạng thái–hành động. Với mô hình ngôn ngữ, trạng thái là toàn bộ văn bản đã sinh và hành động là chọn một trong hàng chục nghìn token, nên cách làm này không khả thi. Chương 13 chuyển sang tối ưu trực tiếp chính sách, mà với mô hình ngôn ngữ thì chính sách chính là mô hình đã có.


Tự kiểm tra

3 câu. Chọn đáp án để xem ngay lời giải thích.

  1. 1Khác biệt có hệ quả lớn nhất giữa học tăng cường và học có giám sát là gì?

  2. 2Thí nghiệm ở Mục 12.4 cho thấy điều gì mà câu "cần ε>0\varepsilon > 0 để khám phá" bỏ sót?

  3. 3Khởi tạo bi quan Q0=−20Q_0 = -20 gây ra điều gì trong thí nghiệm?

Đã trả lời 0/3