您的位置:首页 > 其它

机器学习(Machine Learning and Data Mining)CS 5751——final复习记录(3)

2020-01-31 23:07 806 查看

机器学习(Machine Learning and Data Mining)CS 5751——final复习记录 因为是整理来给自己看的,所以都是大纲……

  • 3.7
  • 4单元-Dynamic programming动态编程
  • 5单元-蒙特卡罗Monte Carlo学习
  • 6单元-时序差分TD Learning
  • Sarsa
  • Q-learning

  • 因为是整理来给自己看的,所以都是大纲……

    强化学习Reinforcement Learning

    是一种交互中学习的计算方法,探索理想化的学习情境并评估各种学习方法的有效性。侧重于从交互中进行目标导向的学习,而不是其他机器学习方法。

    1.1

    强化学习的两个最重要的区别特征。
    (1)试错法trial-and-error search
    (2)延迟奖励delayed reward
    强化学习的定义不是通过表征学习方法,而是通过表征学习问题。任何非常适合解决该问题的方法,我们都认为是强化学习方法。
    新挑战:探索exploration和开发exploitation之间的权衡

    1.3

    除了代理和环境之外,还可以识别强化学习系统的四个主要子元素:
    策略policy,奖励函数reward function,价值函数value function,以及可选的环境模型。

    • 策略:决定了代理在给定时间的behaving。它是从感知的环境状态到在这些状态下要采取的行动的映射。
      (1)策略可以是简单的函数或查找表
      (2)可能涉及广泛的计算,例如搜索过程。
      (3)一般而言,策略可能是随机的。
    • 奖励函数决定了强化学习的目标。是改变策略的基础,并且奖励函数也可以是随机的。
    • 价值函数:长期意义上的好处。
      (1)也有一些强化学习的问题不使用价值函数,比如:遗传算法,遗传编程,模拟退火。
      (2)它们直接在策略中间中搜索,称为进化论方法evolutionary methods,本书中使用术语“强化学习”时,将不包括进化方法。
    • **环境模型:**模仿环境行为的东西,模型可以预测结果的下一状态和下一个奖励。

    1.4

    使用强化学习和近似值函数来解决井字问题的方法。
    tic-tac-toe:

    (1)为该游戏所有可能的state建立一个表,然后为每个state评估(least estimate)获胜的可能性,这个就是value表。
    (2)于对手进行多次游戏。选择我们的行动时,往往在表中查找最大的value值,但是偶尔也会随机行动。这样的随机行为,被认为是探索行动exploratory moves。
    (3)在行动后,当前的state改变了,所以value也改变了。

    其中,a被称为步长参数step-size,它将影响学习速度。

    • 如果step-size随时间适当减小,则对于任何固定的对手,该方法收敛于在给定玩家最佳游戏的情况下从每个状态获胜的真实概率。
    • 如果step-size没有随着时间的推移一直变为零,那么这个玩家也可以很好地对抗慢慢改变他们的比赛方式的对手。

    2.1

    强化学习,最主要的就是能够evaluate当前即将采取的action,而不是直接被instructs获得正确的行动。
    An-armed bandit:类似于老虎机,所以用“单臂匪徒”来命名,区别在于它有n杠杆而不是一个杠杆,核心思想在于协调贪婪行为和探索行为。

    e-greedy算法: 每隔一段时间,随即选择一次。
    但是也存在一个缺点,探索时,它在所有行动中平等的选择,这意味着选择最差的行动和选择次佳的行动都是可能是。
    解决方法: softmax 动作选择规则

    T是温度参数,高温导致全部动作等概率,低温导致较大差异。
    (1)当T趋近于0时,softmax动作选择将等同于贪婪行动

    3.1

    强化学习的问题


    关于策略:π(s,a)是在当前state的情况下,选择某一个action的概率

    非连续性任务
    (1)当代理-环境有一个暂时的结束时,我们把这样的互交成为情景片段episodes。
    (2)每一个情景片段的结束,我们称为结束状态terminal state。
    (3)所有的nontermianl states,被称为S。
    (4)all states加上了nontermianl states,被称为S+。

    连续性任务continuing tasks
    (1)企图最大化的回报本身是无限的,所以需要引入一个discounting折扣的概念。
    (2)γ(gama)参数在(0,1)之间,让无限和具有有限值(the infinite sum has a finite value)。
    (3)代理人只关注相对接近的奖励,但,当γ趋近于1时,代理会显得更有的有远见farsighted。
    (4)折扣回报discounting return:

    3.4

    连续任务与不连续认为的统一:

    • 将episode的终止状态当做absorbing state

      也就是:+1,+1,+1,+0,+0,+0,+0…

    Markov Property

    马尔科夫的假设,用于解决序列化决策过程。
    参考资料
    什么是Markov:下一个状态的产生只和当前的状态有关。

    Markov decision processing马尔科夫决策过程
    存在一个状态转移矩阵:

    3.7

    价值函数:

    行动价值函数:

    q(s,a)和v(s)的相互转换:

    【考前做个例题】

    4单元-Dynamic programming动态编程

    一个问题的求解可以通过求解子问题而得到解决,就像递归一样。

    核心思想:
    (1)使用价值函数来寻找好的策略policies
    (2)需要完整perfect的环境
    两个重要成分:
    (1)策略评估
    (2)策略改进

    迭代策略评估iterative policy evaluation


    多次迭代最后得到收敛值。

    策略改进

    由于值函数已经收敛了,用贪婪算法得到的策略就是最优策略了。

    上面策略π在一开始就没有改变,只是通过不断地迭代计算v(s)的值,直到最后敛才。事实上,这样需要迭代很多次才会收敛,我们可不可以每迭代计算一次v(s)的值,就改进一下我们的策略,而不是得到v(s)收敛了才来改进策略呢?引用

    策略迭代Policy Iteration

    迭代一次,找一次策略,再迭代一次

    值迭代value iteration

    5单元-蒙特卡罗Monte Carlo学习

    在模型未知的情况下,解决MDP问题。
    只需要体验或者模拟经验,于DP类似,策略评估,策略改进,平均样本返回。
    专门用于episodic任务。

    未知:状态转移概率P未知。虽然不知道状态转移概率P,但是这个概率是真实存在的。我们可以直接去尝试,不断采样,然后会得到奖赏,通过奖赏来评估值函数。
    引用1
    引用2

    value=平均回报,通过采样来近似q(s, a)。

    两种方法:
    (1)first visit
    (2)every visit

    控制问题Monte Carlo Control

    在evaluation之后,improvement,获得新的策略。

    关于exploring start的两种情况

    (1)on-policy:在on-policy中我们通常不会直接采用greedy Policy 作为最优策略,需要维持一定的探索性
    选择greed的可能性:

    选择其他的可能性:

    (2)off-policy

    6单元-时序差分TD Learning

    Temporal-difference learning(TD)学习是蒙特卡罗思想和动态规划(DP)思想的结合。
    (1)直接从episode的经验学习
    (2)不需要MDP的P和R
    (3)用bootstrapping从未完成的episode学习
    (4)一次次的更新猜想

    蒙特卡罗每次更新都需要等到agent到达终点之后再更新;而对于TD learning来说,agent每走一步它都可以更新一次,不需要等到到达终点之后才进行更新。

    Sarsa

    Q-learning

    • 点赞
    • 收藏
    • 分享
    • 文章举报
    yinxx325 发布了8 篇原创文章 · 获赞 0 · 访问量 458 私信 关注
    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: