【深度学习】增强学习
文中的图片来自莫烦python视频。视频内容真心很赞,一天就可以看完,有兴趣的朋友可以点击下边的链接哦
https://space.bilibili.com/243821484/#/channel/detail?cid=26359
come on, babies! 让我们一起来聊一下增强学习吧~hhhh
增强学习,简单来讲,就是做对了给奖励,做错了给惩罚,超级简单粗暴。惩罚和奖励啥的本质上也可以用梯度下降来反传。
最大的感受是,找最优解的过程中,走一步告诉你对不对,再走一步告诉你对不对,或者走完了告诉你前边走了那一堆对不对。然后更新。这个算法有一个表,这个表会告诉你选择这个优化方向的好坏程度,预测的值是根据之前的经验来的,我们也会根据每一步或者最终结果的好坏来更新这张表。
我们来一起了解一下几个经典的增强学习的算法吧~
1. Q-learning:
一张q表记录选择路径的分数。
为了更明确图片中的公式具体是怎样计算的,我直接用数字来算一遍啦
q现实 = 0+0.9*2 = 1.8
q估计 = 1
新q = 1 + alpha * (1.8-1)
然后我们就可以把图中的s1,a2对应的 1 修改为 1 + alpha * 0.8 咯。然后继续计算。。。
注意Q-learning是选择后续路径中最大的那个来计算q现实,就是说,如果s2情况下,我选择走a1,那么我的q现实也是1.8哦。
2. 这里就可以引出sarsa算法,sarsa就是走哪条路就选哪个。
体现在更新过程中就是,Q-learning记吃不记打,总是选之后价值大的。sarsa就是每次选错了就惩罚,就不大敢走,即使这条路另一个支路可能是对的,但是走错的那条路如果被惩罚多了,那后边这条路就会很难走的。
当然,为了解决这种直接封锁道路的一锤子买卖,算法中加了10%的随机选路的过程,保证即使这条路不好,算法也是有可能往这个方向再试一试的。
3. Q-learning和神经网络结合起来就有了DQN(Deep Q Network)
和神经网络结合起来再想记录参数就不能用一张表来解决啦,我们就会使用两个网络来记录结果,一个是现实网络,一个是估计网络。两个网络异步更新。现实网络是更新慢的那个,可能是存储了几步之前的网络参数,用于打乱经历相关性。
(1)网络输入:状态(s)和动作(a);输出:value
(2)网络输入:状态(s);输出:动作(a)与对应的value
dqn有记忆库,记录之前的经历来学习,打乱经历的相关性。
4. policy gradient
输入是状态,输出是动作or动作的概率。基于神经网络,让某动作更容易被选中。最大化好动作的概率。最终的结果也不是一条确定的通路,而是通过概率来选的路径。一个回合结束之后才能更新。
5. actor critic
actor:policy gradient 作出动作
critic:q-learning 预判这个动作的value
两者结合就可以实现单步更新,更有效率。而不是policy gradient那样一个回合结束才知道每一步是好还是不好。
6. ddpg
两个actor,两个critic。相互之间会互通信息。
【深度学习】增强学习相关推荐
- 神经网络+深度学习+增强学习
神经网络+深度学习+增强学习 神经网络 像飞机的灵感来源于鸟类,雷达的灵感来源于蝙蝠,红外线的灵盖来源于蛇,而本文要讨论的神经网络灵感来源于我们自己,人类大脑的神经元结构.从神经元结构被提出,到时下火 ...
- 机器学习的五大分类,监督学习 无监督学习 半监督学习 迁移学习 增强学习
机器学习的五大分类,监督学习 无监督学习 半监督学习 迁移学习 增强学习@监督学习 无监督学习 半监督学习 监督学习 在监督学习中,给定一组数据,我们知道正确的输出结果应该是什么样子,并且知道在输入和 ...
- 深度学习:AI对抗学习比深度、增强学习能好多少
人工智能中,或许对抗学习是继深度学习.增强学习之后下一个热点,但是,它只对中等难度的任务具有实用性,依然不能解开"迁移学习"(实际中不可行)所追求的那种像人一样跨越多个领域,具备所 ...
- 【强化学习】强化学习/增强学习/再励学习介绍
Deepmind团队在17年12月5日发布的最新Alpha Zero中,非常重要的一种方法就是强化学习(reinforcement learning),又称再励学习.评价学习,是一种重要的机器学习方法 ...
- 区别:强化学习集成学习增强学习规则学习
1.强化学习 强化学习是智能体(Agent)以"试错"的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏,强化学习不同于连接主义学习中的监督学习,主 ...
- matlab学习增强学习,使用 MATLAB 和 Simulink 进行强化学习
请选择其一 Alabama Alaska 美属萨摩亚 APO/FPO AA APO/FPO AE APO/FPO AP Arizona Arkansas California Caroline Isl ...
- 专访微软邓力:语音识别与非监督深度学习、增强学习、词嵌入、类脑智能
在俞栋接受CSDN专访解读基于深度学习的语音识别技术及CNTK开源软件的同时,<解析深度学习-语音识别实践>一书的另一位作者.微软人工智能首席科学家邓力也接受CSDN专访,以另外的视角诠释 ...
- 关于增强学习你应该了解的五件事儿
摘要: 本文主要是讲解了机器学习中的增强学习方法的基本原理,常用算法及应用场景,最后给出了学习资源,对于初学者而言可以将其作为入门指南. 强化学习(Reinforcement Learning)是当前 ...
- 增强学习和OpeAI Gym的介绍:基础增强学习问题的演示
编者注:想要深入学习增强学习,请查看Marcos Campos在2017年9月17 - 20日于旧金山举行的O'Reilly人工智能会议上所做的"增强学习介绍"辅导课.你可以在Ju ...
- 零和博弈下的逆增强学习
这篇文章是个人用来水观点的,用不严谨的语言讨论两件事情,由于严格证明太长,数学都采用 hand-waving 方式的证明,大家意会思路便可,要讨论如下两件事情: 文本的生成对抗模型,下面简称文本 ...
最新文章
- Science:科学家亲眼看到细菌产生耐药性的全过程(视频)
- VSEARCH操作实战-免费使用无内存限制的USEARCH!
- NM-1A-OC3MM和NM-CIDS-K9模块的苦恼
- opencv(2)- 处理像素值
- 成功解决ValueError: DataFrame.dtypes for data must be int, float or bool.Did not expect the data types
- 对话 Dubbo 唤醒者北纬:3.0 将至,阿里核心电商业务也在用 Dubbo
- java设计模式:适配器设计模式
- 【位运算DFS/DLX】【HDU1426】【数独】
- Python2与Python3之间的区别?
- C ++或Java,高频交易哪个更快?
- mysql+e+文件+xls_TP5+PHPexcel导入xls,xlsx文件读取数据
- OpenCV辅助对象(help objects)(2)_Range
- 在Google上做搜索引擎优化 (SEO),最重要的是哪几点?
- c语言学生班级通讯录,C语言做学生通讯录
- 用计算机打课程表,怎么用电脑做课程表
- 计算机英语带字幕,计算机专业英语听力字幕.doc
- 域名被微信/QQ红了(被封锁、被屏蔽、被和谐)后最好的解决方法
- linux双系统安装
- 常见前端面试题及答案-转载
- Python | Flask 解决跨域问题