55

Tôi biết những kiến ​​thức cơ bản về mạng nơron và làm cách nào để đào tạo chúng bằng thuật toán backpropagation, nhưng tôi đang tìm một thuật toán hơn tôi có thể sử dụng để đào tạo ANN trực tuyến.Đào tạo mạng nơ-ron với sự tăng cường học tập

Ví dụ: sự cố cart pole swing up là sự cố tôi muốn giải quyết bằng ANN. Trong trường hợp đó, tôi không biết phải làm gì để kiểm soát con lắc, tôi chỉ biết tôi ở vị trí lý tưởng đến mức nào. Tôi cần phải có ANN học dựa trên phần thưởng và hình phạt. Do đó, học tập được giám sát không phải là một lựa chọn.

Tình huống khác giống như snake game, nơi phản hồi bị trì hoãn và giới hạn đối với mục tiêu và mục tiêu chống thay vì phần thưởng.

Tôi có thể nghĩ ra một số thuật toán cho tình huống đầu tiên, như thuật toán leo núi hoặc thuật toán di truyền, nhưng tôi đoán cả hai sẽ chậm. Chúng cũng có thể được áp dụng trong kịch bản thứ hai, nhưng cực kỳ chậm và không có lợi cho việc học trực tuyến.

Câu hỏi của tôi rất đơn giản: Có một thuật toán đơn giản để đào tạo mạng nơron nhân tạo với việc học tăng cường không? Tôi chủ yếu quan tâm đến các tình huống phần thưởng theo thời gian thực, nhưng nếu một thuật toán cho các tình huống dựa trên mục tiêu có sẵn, thậm chí tốt hơn.

+1

Câu hỏi hay và tôi đang nghĩ gần như chính xác điều tương tự, trong trường hợp của tôi mạng thần kinh đang tái diễn. Một điểm mấu chốt là bạn đang nói về 2 thuật toán học tập khác nhau. Bạn không thể áp dụng 2 thuật toán học tập khác nhau cho cùng một vấn đề mà không gây xung đột, trừ khi bạn có cách để giải quyết chúng. –

Trả lời

24

Có một số tài liệu nghiên cứu về chủ đề này:

Và một số mã:

Đó chỉ là một số kết quả tìm kiếm hàng đầu trên Google về chủ đề này. Hai giấy tờ đầu tiên trông giống như chúng khá tốt, mặc dù tôi chưa đọc chúng một cách cá nhân. Tôi nghĩ bạn sẽ tìm thấy nhiều thông tin hơn về các mạng thần kinh với việc học tăng cường nếu bạn thực hiện tìm kiếm nhanh trên Google Scholar.

+0

Liên kết thứ ba đề cập đến nội dung nào đó về Q-learning. Điều đó có thể áp dụng cho vấn đề về giỏ hàng không? –

+0

Nó dường như được áp dụng vì nó cho phép bạn so sánh các tiện ích mong đợi của các hành động có sẵn mà không cần phải có một mô hình của môi trường. Vì vậy, nếu bạn đang làm một vấn đề cực kỳ thực tế với phần cứng, thì nó sẽ hữu ích. Để biết thêm chi tiết về Q-learning, hãy xem: http://www.applied-mathematics.net/qlearning/qlearning.html – Kiril

+2

Q-learning có liên quan đến một tập các hành động hữu hạn không? Vấn đề cực kỳ lý tưởng của giỏ hàng sẽ có một bộ hành động liên tục. Đó có phải là vấn đề không? –

7

Nếu đầu ra dẫn đến phần thưởng r được truyền lại vào mạng r lần, bạn sẽ tăng cường mạng tương ứng với phần thưởng. Điều này không áp dụng trực tiếp cho phần thưởng âm, nhưng tôi có thể nghĩ đến hai giải pháp sẽ tạo ra các hiệu ứng khác nhau:

1) Nếu bạn có bộ phần thưởng trong phạm vi rmin-rmax, hãy đổi lại thành 0-(rmax-rmin) để chúng tất cả đều không tiêu cực. Phần thưởng càng lớn thì cốt thép càng mạnh.

2) Đối với phần thưởng âm -r, truyền lại một đầu ra ngẫu nhiên r lần, miễn là nó khác với phần thưởng dẫn đến phần thưởng âm. Điều này sẽ không chỉ củng cố các đầu ra mong muốn, mà còn khuếch tán hoặc tránh các đầu ra xấu.

+0

Thú vị. Tôi tự hỏi làm thế nào điều này áp dụng cho phần thưởng bị trì hoãn. Tôi đoán nó sẽ làm việc để xác định bất cứ điều gì mà không phải là một mục tiêu như một phần thưởng tiêu cực nhỏ. –

+0

@Kendall Frey: Đối với mạng nơron có thể xử lý sự chậm trễ tốt hơn các mạng nơron bình thường, hãy xem [Bộ nhớ ngắn hạn] (https://en.wikipedia.org/wiki/Long_short_term_memory) ([Youtube video] (http://www.youtube.com/watch?v=izGl1YSH_JA)), hoặc xem [bộ nhớ thời gian phân cấp] (https://en.wikipedia.org/wiki/Hierarchical_temporal_memory) ([Youtube video] (http://www.youtube .com/watch? v = 48r-IeYOvG4)). – HelloGoodbye

+3

Tại sao bạn nên rescale phần thưởng như thế? Họ có cần rescaling ở tất cả? Bằng cách đó, một phần thưởng 'rmin' trở thành' 0' sau khi thay đổi tỷ lệ, vì vậy những gì được cho là một phần thưởng sẽ không có tác dụng tăng cường trên mạng. – HelloGoodbye

Các vấn đề liên quan