logo资料库

再励学习面试真题.docx

第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
资料共9页,剩余部分请下载后查看
首先说一下本人是如何与再励学习结缘的:周志华教授《机器学习》有一章专门讲强化学习,16年秋天看书时没
再励学习面试真题 前言 本人于 17 年 4 月对再励学习产生了兴趣,8 月将其定为自己未 来学习的核心。在 10 月~12 月的求职中,一直将增强学习作为自己 简历的要点。这两个月的面试中,被问到了大量强化学习问题。就像 郭老师《深入浅出强化学习:原理入门》是第一本 reinforcement learning 中文教材一样,我也想以此文填补再励学习面经的空白。 首先说一下本人是如何与再励学习结缘的:周志华教授《机器学 习》有一章专门讲强化学习,16 年秋天看书时没看明白也没在意。 然而 16 年 12 月李航老师(《统计学习方法》作者)在滴滴学院回答 提问时说,他觉得强化学习这种方法很好。这是其第一次引起我的重 视。17 年 3 月在与一个北大学弟聊天时,他说他在看强化学习。硕 士二年级下学期结束实习后比较闲,想学些新东西,于是从“五一” 开始断断续续看 Silver 的录像。《程序员》杂志时不时也有强化学 习文章。17 年夏天看了《不一样的技术创新:阿里巴巴 2016“双十 一”背后的技术》和《科技之巅 2:<麻省理工科技评论>2017 年 10 大全球突破性技术深度剖析》这两本书,决定就把宝押在强化学习上! 1 绪论 1.1 这是一篇什么文章? 本文按郭老师教材的章节顺序,尽量回忆起再励学习的面试真 题。这些问题主要来自于快手、猎户星空、京东商城、景驰科技、四
维图新、禾多科技、滴滴出行、魔门塔科技、新浪微博等公司的校招 面试,在此对所有这些带给我启发的面试官表示感谢。因为都是口头 提问,面试真题不可能像事先精心设计好的书面试卷一样严谨、逻辑 性强。有些题很容易搜到答案;有些题则是正在研究的开放性设计方 案;有的问题更是还没有比较好的解决办法。本文中,常考知识点都 用红色标记。 对于系统学过强化学习的朋友(特别是看郭老师教材的),本文 可以检验学习效果。对再励学习求职者和面试官,则是非常好的题库。 以后再编纂增强学习书,欢迎引用本文内容。同时,本文收录的开放 性设计题亦可作为 reinforcement learning 研究者的参考方向。 因为本文是想填补再励学习面经的空白,为了保持特色和针对 性,其他机器学习、深度学习、算法设计、数据结构、数学、C++、 操作系统原理、Linux 使用、分布式计算等已经被充分总结过的问题 就不再赘述了。 1.2 强化学习可以解决什么问题 1.2.1 我面试过的公司里: 1)推荐系统 阿里巴巴、京东商城商业提升事业部等大电商和部分新媒体公司 都在把再励学习用在推荐系统、计算广告和搜索引擎中。 2)游戏 AI
因为本人平时不玩游戏,了解很少,有公司尝试做德州扑克。 3)机器人控制 有做机械臂控制的。 跟书上写的不一样——自动驾驶公司几乎都不用再励学习!自动 驾驶公司的研发重点多在车道线识别等计算机视觉感知问题上,决策 方面主流用的还是基于规则的有限状态机。 1.2.2 北京学术界: 境内计算机学科研究再励学习的很少(我只看过 PKU、ISCAS、 ICT CAS、THU 计算机系,可能有遗漏),用上的也多将其作为对话 系统、自动驾驶、序列预测的工具。 CASIA 所将其作为核心课题:模式识别和复杂系统两大国重都有 组在研究星际争霸;自动驾驶在复杂实验室有研究;空天中心搞机器 人避障。 1.3 强化学习如何解决问题 1)举出强化学习与有监督学习的异同点。有监督学习靠样本标 签训练模型,强化学习靠的是什么? 2)强化学习解决的是什么样的问题? 我答:“序列决策问题。”
面试官又问:“多臂老虎机只是一步,没有序列呀?” 第一篇 强化学习基础 2 马尔科夫决策过程 2.1 MDP 理论 1)强化学习的损失函数(loss function)是什么? 2)POMDP 是什么?马尔科夫决策过程是什么?里面的“马尔科 夫”体现了什么性质?马尔科夫过程是什么?(因为是口头交互式提 问,确实是先难后易。) 3)写出贝尔曼方程。 4)最优值函数和最优策略为什么等价? 5)如果不满足马尔科夫性怎么办?当前时刻的状态和它之前很 多很多个状态都有关。 recurrent state。 3 基于模型的动态规划方法 求解马尔科夫决策过程都有哪些方法?有模型用什么方法?动 态规划是怎么回事? 第二篇 基于值函数的强化学习方法 4 基于蒙特卡洛的强化学习方法 简述蒙特卡罗估计值函数的算法。
5 基于时间差分的强化学习方法 1)简述时间差分算法。 2)蒙特卡洛和时间差分的对比:MC 和 TD 分别是无偏估计吗, 为什么?MC、TD 谁的方差大,为什么? 3)简述 Q-Learning,写出其 Q(s,a)更新公式。它是 on-policy 还是 off-policy,为什么? 4)写出用第 n 步的值函数更新当前值函数的公式(1-step, 2-step,n-step 的意思)。当 n 的取值变大时,期望和方差分别变 大、变小? 5)TD(λ)方法:当λ=0 时实际上与哪种方法等价,λ=1 呢? 6 基于值函数逼近的强化学习方法 6.1 基于值函数逼近的理论讲解 写出蒙特卡洛、TD 和 TD(λ)这三种方法更新值函数的公式。 6.2 DQN 及其变种 6.2.1 DQN 方法 这是本人这么多次面试中被问到次数最多的再励学习问题。 1)详述 DQN。DQN 的两个关键 trick 分别是什么? 2)不打破数据相关性,神经网络的训练效果为什么就不好? 3)画出 DQN 玩 Flappy Bird 的流程图。在这个游戏中,状态是
什么,状态是怎么转移的?奖赏函数如何设计,有没有奖赏延迟问 题? 6.2.2 Double DQN 1)DQN 都有哪些变种?引入状态奖励的是哪种? 2)简述 double DQN。 第三篇 基于直接策略搜索的强化学习方法 7 基于策略梯度的强化学习方法 7.1 理论讲解 策略梯度方法中基线 b 如何确定? 8 基于置信域策略优化的强化学习方法 8.1 理论基础 为什么 TRPO 能保证新策略的回报函数单调不减? 9 基于确定性策略搜索的强化学习方法 9.1 理论基础 1)画出 DDPG 框架。 2)actor-critic 框架中的 critic 起了什么作用? 3)DDPG 是 on-policy 还是 off-policy,为什么? 4)简述 A3C 算法。
5)A3C 是 on-policy 还是 off-policy,为什么? 第五篇 强化学习的商业落地 15 推荐系统 1)强化学习如何用在推荐系统中? 我主要复述《不一样的技术创新:阿里巴巴 2016“双十一”背 后的技术》第七章。阿里后来新写了《强化学习在电商环境下的若干 应用与研究》。新发现京东写的《Deep Reinforcement Learning for List-wise Recommendations》。 2)推荐场景中奖赏函数如何设计? 3)场景中状态是什么,当前状态怎么转移到下一状态? 4)研究课题:绝大部分强化学习用的都是智能体与环境交互得 来的数据。但是智能体在一开始表现很差,线上训练试错成本过高, 如何用强化学习前的静态历史数据训练模型呢? 16 自动驾驶和机器人决策 1)自动驾驶和机器人的场景如何建模成强化学习问题?MDP 各 元素对应真实场景中的哪些变量? 2)用什么算法实现决策? 我复述的是 DDPG 玩 TORCS 的例子。 3)强化学习需要大量数据,如何生成或采集到这些数据?(本 题亦可作研究课题。)
17 深度学习 研究课题:传统的注意力机制是 soft attention,每时刻的特 征通过 attention 值进行加权,实现端到端的训练。但由于需要把每 个时刻的 attention 都算一遍,soft attention 速度慢。于是“取 attention 值最大的时刻对应的特征”的新方法 hard attention 应 运而生。除了计算量大大降低,hard attention 还有解码方便的优 点。可因为是 hard,没法像 soft 一样将误差梯度反向传导回去。如 何用再励学习的方法训练 hard attention 模型参数?(本人只知道 注意力机制,此题复述得非常费劲,可能有错误。) 18 序列预测 已知且仅知全国所有城市距今千年来的每天(包括今天)最高最 低气温,阴晴雨雪和风力风向,要预测明天北京的最高气温,请详述 如何构造样本点和几大类特征会使得预测会很准确。 (此题非再励学习方法更实用。但北大有教授想用强化学习做序 列预测,于是就写在这里了。) 后记 本文虽然提出了问题,但很多问题本人在面试时回答得并不好。 非常欢迎大家一起讨论这些问题的答案! 虽然 DeepMind 时不时就能刷屏,但再励学习直到 18 年初仍然没 有推广开。我 17 年主攻增强学习属于打出很大提前量的“左侧买入”,
分享到:
收藏