Thuật tốn Q-learning

Một phần của tài liệu Ứng dụng kỹ thuật học máy trong công cụ tìm kiếm thông tin theo lĩnh vực chuyên sâu (Trang 29 - 32)

6. Cấu trúc của luận vă n

2.1.2. Thuật tốn Q-learning

Trong Q-learning (Watkins, 1989), hàm chính sách và hàm giá trịđược thể hiện bởi một bảng tra cứu hai chiều lưu giữ sự cập nhật giá trị của các cặp trạng thái-hành

động (state-actions, <s,a>).

Từ vấn đề đã nêu ở trên ta thấy rất khĩ để học hàm chính sách tối ưu π*:

A

S → một cách trực tiếp vì dữ liệu huấn luyện khơng cĩ dạng (s,a). Thay vào đĩ, thơng tin huấn luyện chỉ tồn tại ở dạng chuỗi các khoản thưởng r(si,ai ), i=0 ,1 ,2,...

Vậy hàm đánh giá nào mà agent cần học? Một giải pháp đĩ là thơng qua hàm V*, là hàm tích lũy các khoản thưởng sau khi áp dụng chính sách tối ưu π*. Từđĩ, ta cụ thể

hĩa π* như sau: *(s) argmax[r(s,a) V*( (s,a))] a δ γ π = + (2.3) trong đĩ:

r(s,a) là giá trị khen thưởng tức thời;

δ(s,a) là trạng thái phát sinh từ việc áp dụng hành động a tới trạng thái s.

Định nghĩa hàm đánh giá Q(s,a) cĩ giá trị là giá trị cực đại của tích lũy các khoản thưởng cĩ thểđạt được bắt đầu từ trạng thái s và áp dụng hành động đầu tiên là hành động a là: Q(s,a)r(s,a)V*(δ(s,a)) (2.4) Từđĩ, biểu thức của π* cĩ thểđược viết lại như sau: π*(s)=argmaxaQ(s,a) (2.5) Như vậy, việc học π* được cụ thể hĩa bằng việc học hàm Q. (14) Theo http://en.wikipedia.org/wiki/Reinforcement_learning

Vậy học hàm Q bằng cách nào? Vấn đề mấu chốt là tìm cách ước lượng các giá trị huấn luyện cho Q. Điều này cĩ thể được giải quyết thơng qua việc lặp đi lặp lại sự

xấp xỉ hĩa giá trịQ cho mỗi cặp trạng thái-hành động. Để thấy rõ vấn đề, trước tiên ta chỉ ra mối quan hệ giữa Q và V* như sau: V*=maxa'Q( )s,a' . Từđĩ ta viết lại Q( )s,a

như sau: Q( ) ( )s,a =R s,a.maxa'Q(δ( )s,a ,a').

Định nghĩa đệ quy trên là ý tưởng của phương pháp Q-Learning bằng cách lặp

đi lặp lại quá trình xấp xỉ giá trịQ.

Thuật tốn Q-learning:

Tư tưởng của thuật tốn này là lặp đi lặp lại quá trình xấp xỉ giá trịQ. Theo [25] thì giá trịQ cĩ thể tính và cập nhật theo (2.6): Q( ) ( )s,a =R s,a.maxa'Q(δ( )s,a ,a') (2.6) hoặc theo (2.7): Q( )s,aQ( )s,a +α(r.maxa'Q( ) ( )s',a'Q s,a ) (2.7) với: •Q(s,a) là hàm giá trị của cặp trạng thái-hành động (s,a) tại thời điểm t; •α là tỷ lệ học, được xác định theo (2.8): ) a , s ( visitsn n =1+ 1 α , (0<α ≤1) (2.8)

ở đây, visitsn(s,a) là tổng số cặp hành động - trạng thái tại thời điểm

được truy cập đến (được "thăm") bao gồm cả lần lặp thứ n;

•γ là hệ số suy giảm (tỷ lệ chiết khấu điểm thưởng) và (0≤γ <1);

r là giá trị phần thưởng nhận được của việc thực hiện hành động a trong trạng thái s. Hoặc cũng cĩ thể cập nhật giá trịQ theo (2.9): ( ) ( ) ( )⎥⎦⎤ ⎢⎣ ⎡ +

= R s,a .Max Q next_state,all_action a

, s

Q γ (2.9)

Để miêu tả giải thuật, gọi là ước lượng trong quá trình học hoặc giả thiết của

Q thực tế. Trong giải thuật này, ta xây dựng một bảng để lưu trữ dữ liệu, mỗi ơ trong bảng là giá trị cho mỗi cặp trạng thái-hành động. Với 2 bước:

Bước 1, tất cả các ơ được gán một giá trị ngẫu nhiên (cĩ thể là giá trị 0);

Bước 2, agent chọn ngẫu nhiên một trạng thái s và chọn một hành động a cũng ngẫu nhiên, thực thi hành động đĩ rồi nhận giá trị thưởng r =(s,a) và chuyển sang trạng thái mới 's(s,a). Rồi cập nhật giá trị tương ứng với sa

theo luật: (2.7) hoặc (2.8) hay (2.9). Bước 2, được lặp lại vơ hạn lần. Giải thuật Q

// s, 'slà các trạng thái hiện tại và các trạng thái tiếp theo // a,a'là các hành động hiện tại và các hành động tiếp theo // là giá trị trạng thái - hành động

// α là tỷ lệ học; γ là tỷ lệ chiết khấu (hệ số giảm giá) khen thưởng { Với mỗi cặp s,a khởi tạo một ơ Qˆ(s,a) tùy ý cĩ giá trị ban đầu bằng 0 Chọn trạng thái hiện tại s ban đầu tùy ý

Lặp vơ hạn {

9 Chọn ngẫu nhiên hành động a từ trạng thái s bằng việc sử dụng chính sách

đã nhận được từ ;

9 Thực thi hành động a, nhận khoản thưởng tức thì r; 9 Chọn trạng thái mới s’;

9 Cập nhật ơ Qˆ(s,a) theo luật: (2.7) hoặc (2.8) hoặc (2.9);

9 s's;

} }

Một lượt thi hành của thuật tốn kết thúc khi trạng thái s là một trạng thái cuối cùng (hoặc trạng thái hấp thụ). Đối với tất cả các trạng thái cuối cùng, giá trị Q(s,a)

sẽ khơng bao giờđược cập nhật và do đĩ vẫn giữ nguyên giá trị ban đầu của nĩ.

Sự hội tụ của thuật tốn trong cả mơi trường chắc chắn và mơi trường khơng chắc chắn đã được Watkins và Dayan chứng minh trong [25]. Mối quan hệ giữa tốc độ

hội tụ và tỷ lệ học của thuật tốn đã được Eyal Even-Dar và Yishay Mansour trình bày trong [8].

Một phần của tài liệu Ứng dụng kỹ thuật học máy trong công cụ tìm kiếm thông tin theo lĩnh vực chuyên sâu (Trang 29 - 32)

Tải bản đầy đủ (PDF)

(108 trang)