TASK2

作者: 酸菜鱼_02a6 | 来源:发表于2020-10-23 23:56 被阅读0次
  • 马尔可夫性质(Markov Property): 如果某一个过程未来的转移跟过去是独立的,即只取决于现在,那么其满足马尔可夫性质。换句话说,一个状态的下一个状态只取决于它当前状态,而跟它当前状态之前的状态都没有关系。
  • 马尔可夫链(Markov Chain):概率论和数理统计中具有马尔可夫性质(Markov property)且存在于离散的指数集(index set)和状态空间(state space)内的随机过程(stochastic process)。
  • 状态转移矩阵(State Transition Matrix):状态转移矩阵类似于一个 conditional probability,当我们知道当前我们在 s_t 这个状态过后,到达下面所有状态的一个概念,它每一行其实描述了是从一个节点到达所有其它节点的概率。
  • 马尔可夫奖励过程(Markov Reward Process, MRP): 即马尔可夫链再加上了一个奖励函数。在 MRP之中,转移矩阵跟它的这个状态都是跟马尔可夫链一样的,多了一个奖励函数(reward function)。奖励函数是一个期望,它说当你到达某一个状态的时候,可以获得多大的奖励。
  • horizon: 定义了同一个 episode 或者是整个一个轨迹的长度,它是由有限个步数决定的。
  • return: 把奖励进行折扣(discounted),然后获得的对应的收益。
  • Bellman Equation(贝尔曼等式): 定义了当前状态与未来状态的迭代关系,表示当前状态的值函数可以通过下个状态的值函数来计算。Bellman Equation 因其提出者、动态规划创始人 Richard Bellman 而得名 ,同时也被叫作“动态规划方程”。V(s)=R(S)+ \gamma \sum_{s' \in S}P(s'|s)V(s') ,特别地,矩阵形式:V=R+\gamma PV
  • Monte Carlo Algorithm(蒙特卡罗方法): 可用来计算价值函数的值。通俗的讲,我们当得到一个MRP过后,我们可以从某一个状态开始,然后让它让把这个小船放进去,让它随波逐流,这样就会产生一个轨迹。产生了一个轨迹过后,就会得到一个奖励,那么就直接把它的 Discounted 的奖励 g 直接算出来。算出来过后就可以把它积累起来,当积累到一定的轨迹数量过后,然后直接除以这个轨迹,然后就会得到它的这个价值。
  • Iterative Algorithm(动态规划方法): 可用来计算价值函数的值。通过一直迭代对应的Bellman Equation,最后使其收敛。当这个最后更新的状态跟你上一个状态变化并不大的时候,这个更新就可以停止。
  • Q函数 (action-value function):其定义的是某一个状态某一个行为,对应的它有可能得到的 return 的一个期望( over policy function)。
  • MDP中的prediction(即policy evaluation问题):给定一个 MDP 以及一个 policy \pi ,去计算它的 value function,即每个状态它的价值函数是多少。其可以通过动态规划方法(Iterative Algorithm)解决。
  • MDP中的control问题: 寻找一个最佳的一个策略,它的 input 就是MDP,输出是通过去寻找它的最佳策略,然后同时输出它的最佳价值函数(optimal value function)以及它的这个最佳策略(optimal policy)。其可以通过动态规划方法(Iterative Algorithm)解决。
  • 最佳价值函数(Optimal Value Function):我们去搜索一种 policy \pi ,然后我们会得到每个状态它的状态值最大的一个情况,v^* 就是到达每一个状态,它的值的极大化情况。在这种极大化情况上面,我们得到的策略就可以说它是最佳策略(optimal policy)。optimal policy 使得每个状态,它的状态函数都取得最大值。所以当我们说某一个 MDP 的环境被解了过后,就是说我们可以得到一个 optimal value function,然后我们就说它被解了。

学习链接:https://www.cnblogs.com/pinard/p/9426283.html

构成强化学习MDP的四元组?

答:状态、动作、状态转移概率和奖励,分别对应(S,A,P,R),后面有可能会加上个衰减因子构成五元组。

Q-learning和Sarsa的区别?

答:Sarsa算法是Q-learning算法的改进。

  1. 首先,Q-learning 是 off-policy 的时序差分学习方法,Sarsa 是 on-policy 的时序差分学习方法。

  2. 其次,Sarsa 在更新 Q 表格的时候,它用到的 A' 。我要获取下一个 Q 值的时候,A' 是下一个 step 一定会执行的 action 。这个 action 有可能是 \varepsilon-greddy 方法 sample 出来的值,也有可能是 max Q 对应的 action,也有可能是随机动作。但是就是它实实在在执行了的那个动作。

  3. 但是 Q-learning 在更新 Q 表格的时候,它用到这个的 Q 值 Q(S',a') 对应的那个 action ,它不一定是下一个 step 会执行的实际的 action,因为你下一个实际会执行的那个 action 可能会探索。Q-learning 默认的 action 不是通过 behavior policy 来选取的,它是默认 A' 为最优策略选的动作,所以 Q-learning 在学习的时候,不需要传入 A',即 a_{t+1} 的值。

  4. 更新公式的对比(区别只在target计算这一部分):

    • Sarsa的公式: R_{t+1}+\gamma Q(S_{t+1}, A_{t+1})
    • Q-learning的公式:R_{t+1}+\gamma \underset{a}{\max} Q\left(S_{t+1}, a\right)

    Sarsa 实际上都是用自己的策略产生了 S,A,R,S',A' 这一条轨迹。然后拿着 Q(S_{t+1},A_{t+1}) 去更新原本的 Q 值 Q(S_t,A_t)。 但是 Q-learning 并不需要知道,我实际上选择哪一个 action ,它默认下一个动作就是 Q 最大的那个动作。

相关文章

  • ExecutorService对象的shutdown()和shu

    在submit(task2)后shutdown() 运行结果: 在submit(task2)后shutdownNo...

  • IELTS --WRITING(20180421)

    TASK2: In the modern world ,it is possible to shop, work ...

  • python处理被试行为数据

    ######################################### # task2 求出每个被试在...

  • 2018年3月3日雅思大作文范文~

    Task2 of IELTS on March 3.2018 题目: In many countries, pri...

  • 贷款违约预测-Task2 数据分析

    Task2 数据分析 此部分为零基础入门金融风控的 Task2 数据分析部分,带你来了解数据,熟悉数据,为后续的特...

  • task2

    1. JavaScript 定义了几种数据类型? 哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别是什么?...

  • task2

    给出分区大小。命令:df -h(print sizes in powers of 1024 (e.g., 1023...

  • TASK2

    马尔可夫性质(Markov Property): 如果某一个过程未来的转移跟过去是独立的,即只取决于现在,那么其满...

  • TASK2

    任务要求: 基本文本处理技能:中英文字符串处理(删除不相关的字符、去停用词);分词(结巴分词);词、字符频率统计。...

  • task2

    文本预处理 建立字典 记一个文本预处理需要用到的字典,学习一下python 语言模型 n元语法和马尔可夫假设 马尔...

网友评论

      本文标题:TASK2

      本文链接:https://www.haomeiwen.com/subject/hiabmktx.html