人們對利用強化學習(RL)用于信息檢索(IR)應用(包括搜索、推薦和廣告)非常感興趣。僅僅在2020年,術語“強化學習”就在ACM SIGIR發表的60多篇不同的論文中被提到。據報道,谷歌和阿里巴巴等互聯網公司已經開始從他們基于RL的搜索和推薦引擎中獲得競爭優勢。這個全天教程為沒有或很少有RL經驗的IR研究者和實踐者提供了在實際操作設置中學習現代RL基礎知識的機會。此外,還將介紹和討論RL在IR系統中的一些代表性應用。通過參加本教程,學員將獲得現代RL概念和標準算法(如REINFORCE和DQN)的良好知識。這些知識將幫助他們更好地理解一些最新的涉及RL的IR出版物,以及他們使用RL技術和工具來解決自己實際的IR問題。
目錄內容:
Intro RL Basics Multi-armed Bandits Tabular Q-Learning Deep Q-Learning IR applications using DQN Policy Gradient (REINFORCE) IR applications using REINFORCE Actor-Critic IR applications using Actor-Critic Recent developments & outlook for research
強化學習(RL)使智能體能夠通過動態環境中的交互學習最佳決策。深度學習和強化學習的最新進展使得智能體在各個領域都取得了前所未有的成功,并在許多任務中取得了超人的表現。RL和深度學習影響了當今學術界和工業的幾乎所有領域,將它們應用于信息檢索(IR)的興趣越來越大。像谷歌和阿里巴巴這樣的公司已經開始使用基于強化學習的搜索和推薦引擎來個性化他們的服務,并在他們的生態系統中增強用戶體驗。
目前學習RL的在線資源要么專注于理論,犧牲了實踐,要么局限于實踐,缺乏足夠的直覺和理論背景。這個全天的教程是為信息檢索研究人員和實踐者精心定制的,以獲得最流行的RL方法的理論知識和實踐經驗,使用PyTorch和Python Jupyter 筆記本谷歌Colab。我們的目的是讓參加者具備RL的應用知識,幫助他們更好地了解有關RL的最新IR出版物,并使他們能夠使用RL解決自己的IR問題。
我們的教程不需要任何關于該主題的知識,并從基本概念和算法開始,如馬爾科夫決策過程,探索與利用,Q-學習,決策梯度和Actor-Critic算法。我們特別關注強化學習和深度學習的結合,使用深度Q-Network (DQN)等算法。最后,我們描述了如何利用這些技術來解決代表性的IR問題,如“學習排序”,并討論了最近的發展以及對未來研究的展望。
目錄內容: RL Basics and Tabular Q-Learning Deep Q-Network (DQN) 1/2 (presentation) Deep Q-Network (DQN) 2/2 (hands-on) IR Applications using DQN Policy Gradient (REINFORCE) IR Applications using REINFORCE Actor Critic Outlook
Model-Based Methods in Reinforcement Learning 本教程對基于模型的強化學習(MBRL)領域進行了廣泛的概述,特別強調了深度方法。MBRL方法利用環境模型來做決策——而不是將環境看作一個黑箱——并且提供了超越無模型RL的獨特機會和挑戰。我們將討論學習過渡和獎勵模式的方法,如何有效地使用這些模式來做出更好的決策,以及計劃和學習之間的關系。我們還強調了在典型的RL設置之外利用世界模型的方式,以及在設計未來的MBRL系統時,從人類認知中可以得到什么啟示。
Deep Reinforcement Learning via Policy Optimization
題目:Applied Reinforcement Learning with Python With OpenAI Gym, Tensorflow, and Keras
深入研究強化學習算法,并通過Python將它們應用到不同的用例中。這本書涵蓋了重要的主題,如策略梯度和Q學習,并利用框架,如Tensorflow, Keras,和OpenAI Gym。
Python中的應用增強學習向您介紹了強化學習(RL)算法背后的理論和用于實現它們的代碼。您將在指導下了解OpenAI Gym的特性,從使用標準庫到創建自己的環境,然后了解如何構建強化學習問題,以便研究、開發和部署基于rl的解決方案。
你將學習:
這本書是給誰看的: 數據科學家、機器學習工程師和軟件工程師熟悉機器學習和深度學習的概念。
地址:
//www.springerprofessional.de/en/applied-reinforcement-learning-with-python/17098944
目錄:
第1章 強化學習導論
在過去的一年里,深度學習技術的不斷擴散和發展給各個行業帶來了革命性的變化。毫無疑問,這個領域最令人興奮的部分之一是強化學習(RL)。這本身往往是許多通用人工智能應用程序的基礎,例如學習玩視頻游戲或下棋的軟件。強化學習的好處是,假設可以將問題建模為包含操作、環境和代理的框架,那么代理就可以熟悉大量的任務。假設,解決問題的范圍可以從簡單的游戲,更復雜的3d游戲,自動駕駛汽車教學如何挑選和減少乘客在各種不同的地方以及教一個機械手臂如何把握對象和地點在廚房柜臺上。
第二章 強化學習算法
讀者應該知道,我們將利用各種深度學習和強化學習的方法在這本書。然而,由于我們的重點將轉移到討論實現和這些算法如何在生產環境中工作,我們必須花一些時間來更詳細地介紹算法本身。因此,本章的重點將是引導讀者通過幾個強化學習算法的例子,通常應用和展示他們在使用Open AI gym 不同的問題。
第三章 強化學習算法:Q學習及其變體
隨著策略梯度和Actor-Critic模型的初步討論的結束,我們現在可以討論讀者可能會發現有用的替代深度學習算法。具體來說,我們將討論Q學習、深度Q學習以及深度確定性策略梯度。一旦我們了解了這些,我們就可以開始處理更抽象的問題,更具體的領域,這將教會用戶如何處理不同任務的強化學習。
第四章 通過強化學習做市場
除了在許多書中發現的強化學習中的一些標準問題之外,最好看看那些答案既不客觀也不完全解決的領域。在金融領域,尤其是強化學習領域,最好的例子之一就是做市。我們將討論學科本身,提出一些不基于機器學習的基線方法,然后測試幾種基于強化學習的方法。
第五章 自定義OpenAI強化學習環境
在我們的最后一章,我們將專注于Open AI Gym,但更重要的是嘗試理解我們如何創建我們自己的自定義環境,這樣我們可以處理更多的典型用例。本章的大部分內容將集中在我對開放人工智能的編程實踐的建議,以及我如何編寫這個軟件的建議。最后,在我們完成創建環境之后,我們將繼續集中精力解決問題。對于這個例子,我們將集中精力嘗試創建和解決一個新的視頻游戲。
The tutorial is written for those who would like an introduction to reinforcement learning (RL). The aim is to provide an intuitive presentation of the ideas rather than concentrate on the deeper mathematics underlying the topic. RL is generally used to solve the so-called Markov decision problem (MDP). In other words, the problem that you are attempting to solve with RL should be an MDP or its variant. The theory of RL relies on dynamic programming (DP) and artificial intelligence (AI). We will begin with a quick description of MDPs. We will discuss what we mean by “complex” and “large-scale” MDPs. Then we will explain why RL is needed to solve complex and large-scale MDPs. The semi-Markov decision problem (SMDP) will also be covered.
The tutorial is meant to serve as an introduction to these topics and is based mostly on the book: “Simulation-based optimization: Parametric Optimization techniques and reinforcement learning” [4]. The book discusses this topic in greater detail in the context of simulators. There are at least two other textbooks that I would recommend you to read: (i) Neuro-dynamic programming [2] (lots of details on convergence analysis) and (ii) Reinforcement Learning: An Introduction [11] (lots of details on underlying AI concepts). A more recent tutorial on this topic is [8]. This tutorial has 2 sections: ? Section 2 discusses MDPs and SMDPs. ? Section 3 discusses RL. By the end of this tutorial, you should be able to ? Identify problem structures that can be set up as MDPs / SMDPs. ? Use some RL algorithms.