简单理解强化学习1:Q Learning算法

在建立AI系统的时候,如果是一个预测和分类的问题,而且碰巧我们手上有大量数据。

这样的任务笔记简单,我们可以通过tensorflow之类的框架很轻松的构建一个神经网络,用大量的数据来训练这个网络,只要有大量真实数据总能得到一个理想的结果。

但是这个世界却总有一些问题,是缺少标准答案的,比如看一场电影、听一首歌、读一本名著。还有一些因为种种限制,要么难以人工标注数据,要么人工类别标注的成本太高。

那么就必须找到一种方法让计算机自己和环境交互、尝试自己探索答案(非监督学习),而实现这种主动学习的方式有很多,强化学习(reinforcement learning)是其中非常重要的一类。

所谓强化应该是起源于心理学中行为主义学派的强化理论(reinforcement theory),强化理论认为:人们采取了某种行为或反应之后,若立即有可喜的结果出现,则此一结果就变成控制行为的增强物。这套学说经常被用于管理学领域,重点在于奖惩机制。我们将要谈及的强化学习算法,也都跟奖惩机制有关。

Q Learning

应该最早是由搞出了模糊集理论的波兰大神Zdzisław Pawlak提出的,其中Q 我其实也没弄明白,这到底是是query的意思,还是quick的意思,反正它的核心是一张叫做q_table的表

里面存储了计算机在程序运行过程中,在各个状态(state) 下,对各种操作(action)的评分

的二维表:

简单理解强化学习1:Q Learning算法

而训练的目就是通过奖惩机制(前面说了,这是所有强乎学习算法的要点)优化这张表,使得机器能在不同的状态下按表中的权重来选择操作,就越来越有可能获得奖励。

建立了数据结构之后,接下来我们还要思考两个比较有意思的问题:

1。奖惩机制如何设立

2。如何让奖励传递到对结果最有利的操作上

举个不大恰当的例子,公司某个项目盈利了,要给各个项目成员发奖金,但是项目内的每个成员都为项目做过很多操作,到底哪些操作是有用的,哪些是没用的,哪些操作有决定性影响,哪些操作其实起的是负面效果。我们要想一个机制,让奖励能最有效的传递到这些操作上,才能起到最好的奖惩作用。

再抽象一点,问题可以简化成:

我们该如何根据最终的结果,来评价中间操作过程中每一步的价值?

是不是好像蛮有难度的?不过Zdzisław Pawlak不愧是搞模糊集理论,他给出的答案也很模糊

基于经验!(还是再q_table上做文章)

q_table可以被看作经验,它不断的被迭代就好像经历过很多很多项目(成功的、失败的都有)的老板,即便再蠢他应该也能对项目组内各个成员做的每件事情的价值有自己的判断。

在真正有套路的老板(研究过Q Learning 算法)那里,剧情应该总是这样的:

  1. 在你申请要去做一项工作,但还没做的时候,他心理会默默估计一下这件事做成后的价值让你去放心大胆的做事、做错也没关系、天塌下来老板顶等你完成这项工作后、根据环境的反馈、计算你实际工作后产生的机制用实际价值 - 估算价值 得出误差值反思误差的愿意修正自己的价值评估模型下次你再来申请做某项工作的时候,用修正后的模型评估,然后重复1-5的过程

怎么样 ,有套路的老板多恐怖!

这套套路走下来经历过千万次的迭代后,老板对于你要做的事情的价值预测能力简直变态啊!他觉得没啥用的事情也就不会让你做了,他觉得有用的事情肯定让你优先做!这样整个企业的效率就变的灰常高了有木有!所以一个企业效率高不高关键在于老板的那个q_table优化的怎么样!

ok,关于老板的话题就此打住吧。不然好好一篇技术文章就成管理培训课了。。

回到我们的算法,你懂了老板的套路,下面的计算过程其实也就理解了,每次用你干活后产生的实际价值Q(s1,a2) 减去之前他预估的价值Q(s,a)得到误差,用这个误差更新q_table

简单理解强化学习1:Q Learning算法

图片来自

@莫烦

的博客或许老板的实际价值计算方式、你看起来仍然很迷惑。

简单理解强化学习1:Q Learning算法

你心里在想,丫的我活都干完了,产生了什么效果不是一目了然么,为啥老板他丫的计算公式还那么复杂!

如果你此刻内心真的有这种想法,那只能说,少年,你太天真了!

你以为老板只看你眼前做成的那点事么,只看你已经给他赚到的那点钱么? too yang too simple, 老板看的是更长远的未来好嘛,给你翻译一下老板的对你工作实际价值的计算公式吧(画重点了,敲黑板啊同学!)

现实的价值 = 实际价值(对环境的影响) + 接下来可能获得的价值

接下来可能获得的价值 = 下一步可能获得的最大实际价值 * 预见能力

即:

现实的价值 = 实际价值(对环境的影响) + 下一步可能获得的最大实际价值 * 预见能力

所以说,在老板心力现实的价值实际上依然是个估值!决定能考虑未来多少的是老板的预见力,也就是上面公式里的Gamma变量。 Gamma等于0时,老板(Q Learning算法)全无预见能力,只考虑最眼前的利益; Gamma等于1时,老板(Q Learning算法)老板的预见能力开到最大,这时老板心里满满的诗于远方(当然实际上想的更多的可能还是估值和上市。。。)


分享到:


相關文章: