常见的深度强化学习面试题及解答(持续更新ing)

1. 不打破数据相关性,神经网络的训练效果为什么就不好?

  在神经网络中通常使用随机梯度下降法。随机的意思是我们随机选择一些样本来增量式的估计梯度,比如常采用batch训练。如果样本是相关的,那就意味着前后两个batch很可能也是相关的,那么估计的梯度也会呈现出某种相关性。如果不幸的情况下,后面的梯度估计可能会抵消掉前面的梯度量,从而使得训练难以收敛。

2. DQN都有哪些变种?引入状态奖励的是哪种?

DQN三个经典的变种:Double DQN、Dueling DQN、Prioritized Replay Buffer。
Double-DQN:将动作选择和价值估计分开,避免价值过高估计。
Dueling-DQN:将Q值分解为状态价值和优势函数,得到更多有用信息。
Prioritized Replay Buffer:将经验池中的经验按照优先级进行采样。

3. 简述double DQN原理?

double DQN将动作的选择和动作的评估分别用不同的值函数来实现。
动作的选择:选择该状态下动作值函数最大的动作,即 a ∗ a^{*} a。动作的选择所用的动作值函数: arg ⁡ max ⁡ a Q ( S t + 1 , a ; θ t ) \arg \max _{a} Q\left(S_{t+1}, a ; \theta_{t}\right) argmaxaQ(St+1,a;θt)

动作的评估:选出 a ∗ a^{*} a后,利用 a ∗ a^{*} a处的动作值函数构造TD目标,TD目标公式为: Y t = R t + 1 + γ Q ( S t + 1 , arg ⁡ max ⁡ a Q ( S t + 1 , a ; θ t ) ; θ t ′ ) Y_{t}=R_{t+1}+\gamma Q\left(S_{t+1}, \arg \max _{a} Q\left(S_{t+1}, a ; \theta_{t}\right) ; \theta_{t}^{\prime}\right) Yt=Rt+1+γQ(St+1,argmaxaQ(St+1,a;θt);θt)

4. 策略梯度方法中基线baseline如何确定?

  无论baseline的表达式是怎样,减去基线的梯度估计仍然是无偏估计,不影响梯度的均值。但由方差定义可知,减去基线后括号中的平方的均值减小了,因此方差变小了。

5. 什么是DDPG,并画出DDPG框架结构图?

  DDPG是一种使用 Actor Critic 结构,但是输出的不是行为的概率,,而是具体的行为,用于连续动作的预测。

6. actor-critic框架中的critic起了什么作用?

Critic 基于Actor的行为评判行为的得分,Actor根据Critic的评分修改选行为的概率。

7. 简述A3C算法?A3C是on-policy还是off-policy,为什么?

A3C通过创建多个agent,在多个环境实例中并行且异步的执行和学习。

强化学习如何用在推荐系统中?

推荐场景中奖赏函数如何设计?

你可能感兴趣的:(深度强化学习,面试)