上图是一个一般的决策过程,里面包括代理和环境。
这个过程有两步,首先你的代理会观察环境的一些特质,有时是传感器感知到的,有些是输入的用户特征。
然后代理会选择一个行为,将这个行为反馈给环境。
之后代理不仅仅会收到在这个行为下的环境的反馈,同时还以某些方式,影响着环境改变着环境。
例如,你不仅收到了用户是否点击了你的横幅广告的反馈,还影响着你的用户基础。
图中这条线下面一般我们是没有办法控制的,环境,环境中的其他代理,其他变量。我们可能都控制不了。
这个就像一个黑盒子,我们没有办法知道它的内部原理。不知道他是如何观察的,如何给出反馈的。
而在这条线上面,agent 这里可以做任何事,可以用任何监督式学习方法。
强化学习除了可以推荐电影,书,新闻,在机器人领域更是有很多应用,可以教机器人踢足球,做煎饼等等等。
自动驾驶也是另一种 dynamic system,另一种机器人,你要训练他如何不撞东西,开得更有效率,用更少的能源,更有效的时间。
例如我们有一个双足机器人,我们要教它如何走,不摔跤。
这时可以这样定义它的强化学习:
observation :就是机器人能感知的东西,例如肢体的角度,摄像头的输入。
action: 就是你的机器人发送给运动子系统的任何信号,例如当机器人想要弯曲时会传送电压给各个关节上的电机。
feedback:这时你想要最大化的反馈可以定义为你的机器人在摔倒前所前进的距离。
虽然机器人和横幅广告是完全不同的领域,但是同样可以形式化为一个相同的决策过程。
还有就是你会发现强化学习中80%的论文都研究如何教 agent 玩游戏。
你要如何定义游戏 agent 的 observation,action,feedback 呢?
observation:一系列的游戏画面或者声音
action:控制杆按钮
feedback:游戏得分
强化学习在棋牌游戏中也有成功的应用:AlphaGo ,TG Gammon,Simel
另外,在用深度学习优化不可微损失函数时,也可以用强化学习。
听起来很理论,但是实际应用还很广,例如在翻译系统中,通常是要最小化交叉熵等损失函数。
而强化学习可以最大化你想要的一些其他指标,如 Blair。它可以让你有更大的自由可以决定优化什么目标。
Hello World !
This is 不会停的蜗牛 Alice !
🐌 要开始连载强化学习系列啦!
今天开始我们一起来每天 2 分钟,get 强化学习的一个小知识吧!