Reinforcement Learning Notes-01
Reinforcement Learning Notes-01
接触NPV的项目已九月有余,但参与的时间非常有限:最开始的几个月读些论文,弄清NPV是个啥问题,同时尝试写Literature review。今年1-3月尝试用python复现一个启发式算法(拖了这么长是因为我是菜鸡 :upside_down_face: 且琐事太多 :weary:)。前不久刚考完IELTS,算是可以暂时闲下来几天。
恰逢今年deepseekR1的出现把Reinforcement Learning又推向了新的热度(笨人的想法)。同时,最近刚建了个人博客,有了记录的空间和想法(急需点废话来装点门面)。那么,不妨就从眼前的项目,记录学习时思考过的问题,Let’s start from scratch! :tada:
强化学习和深度学习的关系?
- 深度学习通过深度神经网络学习特征,深度学习主要可以分为
Supervised Learning,Unsupervised Learning(当然还有Semi-supervised Learning以及Self-supervised Learning) - 强化学习通过与环境交互来获得最大的累计奖励,关注序列决策问题,解决
Markov Decision Process问题 - 事实上,传统RL并不需要DL方法,但当面临高维状态时,会引入DL的神经网络来作为函数逼近器(e.g. 用神经网络近似RL中的价值函数)
神经网络基础
M-P神经元模型
简单理解为:神经元收到的总输入值与神经元阈值进行比较后,通过激活函数,进行输出.
- 激活函数的意义:将输入压缩为在一特定区间内的函数,将线性的问题转为非线性问题,方便进行下一个神经元的输入。由于将范围进行压缩,激活函数也被称为
squash function.
multi-layer feedforward neural networks
最基础的multi-layer feedforward 结构有三层:输入层,隐藏层以及输出层。其中,隐藏层和输出层会对数据进行变换。
error BackPropagation
对于网络的均方误差,沿其梯度的负方向进行调整,从而减小误差。
随之而来的问题就是可能出现局部最优的问题。
针对该问题,主要的解决方法有两种,分别是早停(在训练集误差降低但验证集误差升高之时停止训练)和正则化(修改误差目标函数,使网络输出的曲线更“光滑”)
参考文献:周志华. 机器学习. 清华大学出版社,北京