AI 101
Deep Reinforcement Learning là gì?

Deep Reinforcement Learning là gì?
Cùng với học máy không giám sát và học máy giám sát, một hình thức tạo ra AI khác là học tăng cường. Bên cạnh học tăng cường thông thường, học tăng cường sâu có thể dẫn đến những kết quả ấn tượng, nhờ vào việc kết hợp những điểm mạnh của cả học sâu và học tăng cường. Hãy cùng xem xét cách học tăng cường sâu hoạt động.
Trước khi chúng ta đi sâu vào học tăng cường sâu, có thể là một ý tưởng tốt để làm mới lại cách học tăng cường thông thường hoạt động. Trong học tăng cường, các thuật toán định hướng mục tiêu được thiết kế thông qua một quá trình thử và sai, tối ưu hóa cho hành động dẫn đến kết quả tốt nhất / hành động mang lại nhiều “phần thưởng” nhất. Khi các thuật toán học tăng cường được đào tạo, chúng được đưa ra “phần thưởng” hoặc “hình phạt” ảnh hưởng đến hành động chúng sẽ thực hiện trong tương lai. Các thuật toán cố gắng tìm một tập hợp các hành động sẽ cung cấp cho hệ thống phần thưởng nhiều nhất, cân bằng giữa phần thưởng ngay lập tức và tương lai.
Các thuật toán học tăng cường rất mạnh vì chúng có thể được áp dụng cho hầu hết mọi nhiệm vụ, có thể học linh hoạt và động từ môi trường và khám phá các hành động có thể.
Tổng quan về Deep Reinforcement Learning

Ảnh: Megajuice qua Wikimedia Commons, CC 1.0 (https://commons.wikimedia.org/wiki/File:Reinforcement_learning_diagram.svg)
Khi nói đến học tăng cường sâu, môi trường thường được biểu diễn bằng hình ảnh. Một hình ảnh là một bản chụp của môi trường tại một thời điểm cụ thể. Trình tác nhân phải phân tích hình ảnh và trích xuất thông tin liên quan từ chúng, sử dụng thông tin để thông báo về hành động nào nên thực hiện. Học tăng cường sâu thường được thực hiện với một trong hai kỹ thuật khác nhau: học dựa trên giá trị và học dựa trên chính sách.
Các kỹ thuật học dựa trên giá trị sử dụng các thuật toán và kiến trúc như mạng nơ-ron tích chập và Mạng Deep-Q. Các thuật toán này hoạt động bằng cách chuyển đổi hình ảnh sang thang độ xám và cắt bỏ các phần không cần thiết của hình ảnh. Sau đó, hình ảnh trải qua các phép toán tích chập và gộp, trích xuất các phần quan trọng nhất của hình ảnh. Các phần quan trọng của hình ảnh sau đó được sử dụng để tính toán giá trị Q cho các hành động khác nhau mà trình tác nhân có thể thực hiện. Giá trị Q được sử dụng để xác định hành động tốt nhất cho trình tác nhân. Sau khi tính toán ban đầu giá trị Q, việc lan truyền ngược được thực hiện để xác định giá trị Q chính xác nhất.
Các phương pháp dựa trên chính sách được sử dụng khi số lượng hành động có thể mà trình tác nhân có thể thực hiện là cực kỳ cao, điều này thường xảy ra trong các kịch bản thế giới thực. Các tình huống như vậy yêu cầu một cách tiếp cận khác vì việc tính toán giá trị Q cho tất cả các hành động riêng lẻ không phải là thực tế. Các phương pháp dựa trên chính sách hoạt động mà không tính toán giá trị hàm cho các hành động riêng lẻ. Thay vào đó, chúng áp dụng chính sách bằng cách học chính sách trực tiếp, thường thông qua các kỹ thuật gọi là Gradient Chính sách.
Gradient Chính sách hoạt động bằng cách nhận một trạng thái và tính toán xác suất cho các hành động dựa trên kinh nghiệm trước đó của trình tác nhân. Hành động có khả năng nhất được chọn. Quá trình này được lặp lại cho đến khi kết thúc giai đoạn đánh giá và phần thưởng được trao cho trình tác nhân. Sau khi phần thưởng đã được xử lý, các tham số của mạng được cập nhật bằng cách lan truyền ngược.
Q-Learning là gì?
Vì Q-Learning là một phần lớn của quá trình học tăng cường sâu, hãy dành thời gian để hiểu cách hệ thống Q-Learning hoạt động.
Quyết định Markov

Một quyết định Markov. Ảnh: waldoalvarez qua Pixabay, Pixbay License (https://commons.wikimedia.org/wiki/File:Markov_Decision_Process.svg)
Để một tác nhân AI thực hiện một loạt các nhiệm vụ và đạt được mục tiêu, tác nhân phải có khả năng xử lý một chuỗi trạng thái và sự kiện. Tác nhân sẽ bắt đầu tại một trạng thái và phải thực hiện một loạt hành động để đạt được trạng thái cuối cùng, và có thể có một số lượng lớn trạng thái tồn tại giữa trạng thái bắt đầu và trạng thái cuối cùng. Lưu trữ thông tin về mọi trạng thái là không thực tế hoặc không thể, vì vậy hệ thống phải tìm cách bảo tồn chỉ thông tin trạng thái liên quan nhất. Điều này được thực hiện thông qua việc sử dụng một Quyết định Markov, bảo tồn chỉ thông tin về trạng thái hiện tại và trạng thái trước đó. Mỗi trạng thái tuân theo thuộc tính Markov, theo dõi cách tác nhân thay đổi từ trạng thái trước đó sang trạng thái hiện tại.
Deep Q-Learning
Khi mô hình có quyền truy cập vào thông tin về các trạng thái của môi trường học, giá trị Q có thể được tính toán. Giá trị Q là phần thưởng tổng thể được trao cho tác nhân tại cuối một chuỗi hành động.
Giá trị Q được tính toán với một loạt phần thưởng. Có một phần thưởng ngay lập tức, được tính toán tại trạng thái hiện tại và phụ thuộc vào hành động hiện tại. Giá trị Q cho trạng thái tiếp theo cũng được tính toán, cùng với giá trị Q cho trạng thái sau đó, và như vậy cho đến khi tất cả giá trị Q cho các trạng thái khác nhau đã được tính toán. Có một tham số Gamma được sử dụng để kiểm soát mức độ ảnh hưởng của phần thưởng trong tương lai đến hành động của tác nhân. Các chính sách thường được tính toán bằng cách khởi tạo giá trị Q một cách ngẫu nhiên và để mô hình hội tụ đến giá trị Q tối ưu trong quá trình đào tạo.
Deep Q-Networks
Một trong những vấn đề cơ bản liên quan đến sử dụng Q-Learning cho học tăng cường là lượng bộ nhớ cần thiết để lưu trữ dữ liệu tăng nhanh khi số lượng trạng thái tăng lên. Deep Q Networks giải quyết vấn đề này bằng cách kết hợp các mô hình mạng nơ-ron với giá trị Q, cho phép một tác nhân học từ kinh nghiệm và đưa ra những dự đoán hợp lý về hành động tốt nhất để thực hiện. Với Deep Q-Learning, các hàm giá trị Q được ước tính bằng mạng nơ-ron. Mạng nơ-ron lấy trạng thái làm dữ liệu đầu vào, và mạng đầu ra giá trị Q cho tất cả các hành động có thể mà tác nhân có thể thực hiện.
Deep Q-Learning được thực hiện bằng cách lưu trữ tất cả kinh nghiệm trong quá khứ trong bộ nhớ, tính toán đầu ra tối đa cho mạng Q, và sau đó sử dụng một hàm mất mát để tính toán sự khác biệt giữa giá trị hiện tại và giá trị lý thuyết cao nhất có thể.
Deep Reinforcement Learning so với Deep Learning
Một sự khác biệt quan trọng giữa học tăng cường sâu và học sâu thông thường là trong trường hợp của học tăng cường sâu, đầu vào luôn thay đổi, điều này không xảy ra trong học sâu thông thường. Làm thế nào mô hình học có thể tính đến đầu vào và đầu ra luôn thay đổi?
Về cơ bản, để tính đến sự khác biệt giữa giá trị dự đoán và giá trị mục tiêu, hai mạng nơ-ron có thể được sử dụng thay vì một. Một mạng ước tính giá trị mục tiêu, trong khi mạng khác chịu trách nhiệm dự đoán. Các tham số của mạng mục tiêu được cập nhật khi mô hình học, sau một số lần lặp đào tạo đã qua. Đầu ra của các mạng tương ứng sau đó được kết hợp để xác định sự khác biệt.
Học dựa trên Chính sách
Học dựa trên chính sách hoạt động khác với các phương pháp dựa trên giá trị Q. Trong khi các phương pháp dựa trên giá trị Q tạo ra một hàm giá trị dự đoán phần thưởng cho trạng thái và hành động, các phương pháp dựa trên chính sách xác định một chính sách sẽ ánh xạ trạng thái đến hành động. Nói cách khác, hàm chính sách chọn hành động được tối ưu hóa trực tiếp mà không quan tâm đến hàm giá trị.
Gradient Chính sách
Một chính sách cho học tăng cường sâu thuộc một trong hai loại: ngẫu nhiên hoặc xác định. Một chính sách xác định là một chính sách mà trạng thái được ánh xạ đến hành động, có nghĩa là khi chính sách được cung cấp thông tin về một trạng thái, một hành động được trả về. Trong khi đó, các chính sách ngẫu nhiên trả về một phân phối xác suất cho hành động thay vì một hành động rời rạc duy nhất.
Các chính sách xác định được sử dụng khi không có sự không chắc chắn về kết quả của các hành động có thể được thực hiện. Nói cách khác, khi môi trường bản thân là xác định. Ngược lại, đầu ra chính sách ngẫu nhiên phù hợp với môi trường mà kết quả của các hành động là không chắc chắn. Thông thường, các kịch bản học tăng cường liên quan đến một số độ không chắc chắn, vì vậy các chính sách ngẫu nhiên được sử dụng.
Các phương pháp Gradient Chính sách có một số lợi thế so với các phương pháp Q-Learning, cũng như một số nhược điểm. Về lợi thế, các phương pháp dựa trên chính sách hội tụ đến các tham số tối ưu nhanh hơn và đáng tin cậy hơn. Gradient Chính sách chỉ cần được theo dõi cho đến khi các tham số tốt nhất được xác định, trong khi với các phương pháp dựa trên giá trị, các thay đổi nhỏ trong giá trị hành động ước tính có thể dẫn đến các thay đổi lớn trong hành động và các tham số liên quan.
Gradient Chính sách hoạt động tốt hơn cho không gian hành động chiều cao. Khi có một số lượng cực kỳ lớn các hành động có thể, Deep Q-Learning trở nên không thực tế vì nó phải gán một điểm số cho mọi hành động có thể cho tất cả các bước thời gian, điều này có thể không thể về mặt tính toán. Tuy nhiên, với các phương pháp dựa trên chính sách, các tham số được điều chỉnh theo thời gian và số lượng tham số tốt nhất nhanh chóng giảm khi mô hình hội tụ.
Gradient Chính sách cũng có khả năng thực hiện các chính sách ngẫu nhiên, không giống như các chính sách dựa trên giá trị. Bởi vì các chính sách ngẫu nhiên tạo ra một phân phối xác suất, một sự trao đổi giữa khám phá và khai thác không cần phải được thực hiện.
Về nhược điểm, nhược điểm chính của Gradient Chính sách là chúng có thể bị kẹt trong khi tìm kiếm các tham số tối ưu, tập trung chỉ vào một tập hợp hẹp các giá trị tối ưu cục bộ thay vì các giá trị tối ưu toàn cầu.
Chức năng Điểm Chính sách
Các chính sách được sử dụng để tối ưu hóa hiệu suất của mô hình nhằm tối đa hóa một hàm điểm – J(θ). Nếu J(θ) là một thước đo về mức độ tốt của chính sách chúng tôi để đạt được mục tiêu mong muốn, chúng tôi có thể tìm các giá trị của “θ” mang lại cho chúng tôi chính sách tốt nhất. Đầu tiên, chúng tôi cần tính toán một phần thưởng chính sách dự kiến. Chúng tôi ước tính phần thưởng chính sách để chúng tôi có một mục tiêu, một cái gì đó để tối ưu hóa.
Chức năng Điểm Chính sách là cách chúng tôi tính toán phần thưởng chính sách dự kiến, và có các Chức năng Điểm Chính sách thường được sử dụng, chẳng hạn như: giá trị bắt đầu cho môi trường theo kỳ, giá trị trung bình cho môi trường liên tục, và phần thưởng trung bình trên mỗi bước thời gian.
Gradient Chính sách Lên

Gradient lên nhằm di chuyển các tham số cho đến khi chúng ở vị trí điểm cao nhất. Ảnh: Public Domain (https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)
Sau khi Chức năng Điểm Chính sách mong muốn được sử dụng và phần thưởng chính sách dự kiến được tính toán, chúng tôi có thể tìm một giá trị cho tham số “θ” tối đa hóa hàm điểm. Để tối đa hóa hàm điểm J(θ), một kỹ thuật gọi là “gradient lên” được sử dụng. Gradient lên tương tự như concept gradient xuống trong học sâu, nhưng chúng tôi đang tối ưu hóa cho sự tăng lớn nhất thay vì giảm. Điều này là vì điểm số của chúng tôi không phải là “lỗi”, như trong nhiều vấn đề học sâu. Điểm số của chúng tôi là một cái gì đó chúng tôi muốn tối đa hóa.
Một biểu thức gọi là Định lý Gradient Chính sách được sử dụng để ước tính gradient liên quan đến chính sách “θ“.
Tổng kết về Deep Reinforcement Learning
Tóm lại, học tăng cường sâu kết hợp các khía cạnh của học tăng cường và mạng nơ-ron sâu. Học tăng cường sâu được thực hiện với hai kỹ thuật khác nhau: Deep Q-Learning và Gradient Chính sách.
Các phương pháp Deep Q-Learning nhằm dự đoán phần thưởng sẽ theo sau các hành động được thực hiện trong một trạng thái nhất định, trong khi các phương pháp Gradient Chính sách nhằm tối ưu hóa không gian hành động, dự đoán các hành động chính mình. Các phương pháp dựa trên chính sách đối với học tăng cường sâu là xác định hoặc ngẫu nhiên. Các chính sách xác định ánh xạ trạng thái trực tiếp đến hành động, trong khi các chính sách ngẫu nhiên tạo ra phân phối xác suất cho hành động.












