Q Learning学习笔记
Q Learning学习笔记
这两天跟着莫烦大神的视频将强化学习(Reinforcement Learning)中的Q Learning学了一遍,颇有收获,便记录于此,希望大家不吝赐教,欢迎补充纠错。
文章目录
- Q Learning学习笔记
- 一、什么是强化学习?
- 二、强化学习方法分类
- 三、Q Learning算法
一、什么是强化学习?
强化学习是一类算法,是让计算机实现从一开始完全随机的进行操作,通过不断地尝试,从错误中学习,最后找到规律,学会了达到目的的方法。这就是一个完整的强化学习过程。让计算机在不断的尝试中更新自己的行为,从而一步步学习如何操作,使自己的行为得到高分。
它主要包含四个元素,Agent、环境状态、行动、奖励,强化学习的目标就是获得更多的累计奖励。
二、强化学习方法分类
Model-free 和 Model-based
如果不理解环境,环境给了什么就是什么,我们就把这种方法叫做 Model-free,这里的 Model 就是用模型来表示环境,理解环境就是学会了用一个模型来代表环境,所以这种就是 Model-based 方法。
基于概率和基于价值
基于概率是强化学习中最直接的一种,根据概率采取行动,所以每种动作都有可能被选中,只是概率不同。而基于价值的方法输出则是所有动作的价值,根据最高价值来选择动作。
回合更新和单步更新
假设强化学习就是在玩游戏,游戏回合有开始和结束。回合更新指的是游戏开始后,需要等待游戏结束再总结这一回合,再更新我们的行为准则。而单步更新则是在游戏进行中每一步都在更新,不用等待游戏的结束,这样边玩边学习。
在线学习和离线学习
所谓在线学习,就是指必须本人在场,并且一定是本人一边行动边一学习。而离线学习是你可以选择自己行动,也可以选择看着别人行动,通过看别人行动来学习别人的行为准则,离线学习 同样是从过往的经验中学习,但是这些过往的经历没必要是自己的经历,任何人的经历都能被学习。
在以上分类中,Q Learning的特征可以用下面的一张图来表述:
三、Q Learning算法
Q Learning只是强化学习众多方法中的一种,并且是很有名的一类算法,这里主要讲Q Learning,强化学习中其他方法比如Sarsa、Deep Q Network、Policy Gradient等就不在这里赘述了。想要通过生活中的例子入门的可以去看莫大神写的小孩写作业、看电视的场景,帮助我们更好地理解Q Learning.
Q Learning整体算法
不想看密密麻麻的英文的可以看下面我做的几张PPT截图:
上面图片的解释:这只是一次迭代过程,经过众多次迭代、一步步去学习,就会训练得到一个表现良好的Q表,这个Q表会指导我们在每个状态选择最佳动作。
Epsilon Greedy 是用在选择动作上的一种策略,比如 epsilon = 0.9 时, 就说明有 90% 的情况我会按照 Q 表的最优值选择行为,10% 的时间使用随机选行为。如果不根据这些策略去选取动作,只是简单地根据选择此状态下Q值最大的,那么其他动作就没有机会得到执行,它们的Q值也就无法更新,也就达不到训练优化的目的,就极有可能陷入局部最优。这样做的目的是让其有机会跳出局部最优。
PS:alpha是学习率,来决定这次的误差有多少要被学习的,alpha是一个小于1 的数。gamma 是对未来 reward 的衰减值。
暂时写到这里,等我想到什么再补充上去。
Q Learning学习笔记相关推荐
- 笔记 | 吴恩达Coursera Deep Learning学习笔记
向AI转型的程序员都关注了这个号☝☝☝ 作者:Lisa Song 微软总部云智能高级数据科学家,现居西雅图.具有多年机器学习和深度学习的应用经验,熟悉各种业务场景下机器学习和人工智能产品的需求分析.架 ...
- 【Machine Learning 学习笔记】Stochastic Dual Coordinate Ascent for SVM 代码实现
[Machine Learning 学习笔记]Stochastic Dual Coordinate Ascent for SVM 代码实现 通过本篇博客记录一下Stochastic Dual Coor ...
- 【Machine Learning 学习笔记】feature engineering中noisy feature的影响
[Machine Learning 学习笔记]feature engineering中noisy feature的影响 通过本篇博客记录一下添加噪声对Lasso和SVM的影响,采用的数据集为sklea ...
- 网上某位牛人的deep learning学习笔记汇总
目录(?)[-] 作者tornadomeet 出处httpwwwcnblogscomtornadomeet 欢迎转载或分享但请务必声明文章出处 Deep learning一基础知识_1 Deep le ...
- Machine Learning学习笔记(十)K-means聚类算法
K-Means介绍 K-means算法是聚类分析中使用最广泛的算法之一.它把n个对象根据他们的属性分为k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高:而不同聚类中的对象相似度较小.其聚类 ...
- 机器学习 Maching Learning - 学习笔记 - 概括篇
此篇是概括总结,之后会更新每个模型的笔记.梳理一下这段时间学习的内容. 1 定义 What is Machine Learning Arthur Samuel(亚瑟塞缪尔): the field of ...
- [增强学习][Reinforcement Learning]学习笔记与回顾-1
引言 增强学习这几篇博客在于学习增强学习中所获得知识的理解与回顾,如果想要深入学习增强学习,请参考后文所列出的资料和书籍.本文只用于复习与理解. Introduction to Reinforceme ...
- CV视觉论文Deep learning学习笔记(一)
论文介绍和监督学习(introduction of paper and supervision of learning) 1. 论文介绍和作者介绍 作者:论文作者是2018年图灵奖得主yoshua B ...
- POMO: Policy Optimization with Multiple Optima for Reinforcement Learning学习笔记
文章目录 摘要 零.一些基础 1.梯度近似 2.策略梯度定理 3.REINFORCE 4.REINFORCE with Baseline 5.REINFORCE Actor-Critic 6.多解旅行 ...
- [Python Machine Learning] 学习笔记之scikit-learn机器学习库
1. scikit-learn介绍 scikit-learn是Python的一个开源机器学习模块,它建立在NumPy,SciPy和matplotlib模块之上.值得一提的是,scikit-learn最 ...
最新文章
- 【网络安全】浅析跨域原理及如何实现跨域
- 不会连PPPoE协议都不会配吧?
- BASIC-13 数列排序
- trace java_使用java动态字节码技术简单实现arthas的trace功能。
- Window 2008 server DNS 无法解析ISA WPAD
- 域名解析与邮件服务器收发问题
- MySQL的jar包下载
- python 对 文件内容 搜索_python实现搜索文本文件内容脚本
- 手撸Mybatis源码-基础版
- 关于符号Symbol第一篇
- linux菜鸟入门之系统启动流程
- 计算机被填充背景花束纹理在那,为艺术字设置纹理填充的两种方法
- 现代服务业行业税收筹划,信息技术公司节税方案
- 【TensorFlow】基础教程
- ESP32学习(3):ESP32上运行ILI9341驱动LCD
- 第四届长安杯电子取证大赛个人总结
- matlab r2008a,Matlab+R2008a+安装教程
- 【浅析STM32之GPIO寄存器(CRL/CRH)配置 】
- 特征工程和数据预处理常用工具和方法
- Visio更改图形块的内边距
热门文章
- 现代电工技术实训考核装置
- MATLAB数字图像处理实验题目要求
- JS动态生成select下拉框的option并默认选中
- html5模板md风格,使用CSS3 制作一个material-design 风格登录界面实例
- python自动答题助手_头脑王者python答题助手
- php1108脱机使用,惠普p1108能扫描吗 打印机出现脱机解决方法【详解】
- eos utility中文版 v3.8.20 最新版
- 软件测试面试题目—接口测试面试题,梦寐以求的答案来了
- html页面网页打开乱码怎么解决方法,网页乱码怎么解决?
- Photoshop 2021神经滤镜Neural Filters离线安装包下载 WIN / MAC(适用于PS 2021版本22.3.X/22.4.X)