利用多臂老虎机优化广告投放及相关技术实现
1. 强化学习基础概念
在强化学习中,状态是环境中可用于决策的信息集合。强化学习算法尝试以计算机能理解和计算的方式对世界进行建模,将世界建模为包含状态空间 (S)、动作空间 (A) 和奖励 (r) 的形式。当在特定状态下采取特定动作时,我们称之为状态 - 动作对 ((s, a))。任何强化学习算法的目标都是在整个回合中最大化奖励。
最初的 (n) 臂老虎机问题只有动作空间,没有状态空间,我们通过查找表来存储动作 - 奖励对 ((a_k, r_k)) 以学习动作和奖励之间的关系。但当引入上下文老虎机的状态空间时,可能的状态 - 动作 - 奖励元组会出现组合爆炸。例如,若有 100 个状态,每个状态对应 10 个动作,就需要存储和重新计算 1000 条不同的数据。在大多数问题中,状态空间非常大,简单的查找表不可行。
这时深度学习就派上用场了。经过适当训练的神经网络擅长学习抽象概念,去除价值不大的细节,能学习数据中的可组合模式和规律,有效压缩大量数据并保留重要信息。因此,神经网络可用于学习状态 - 动作对与奖励之间的复杂关系,而无需将所有经验作为原始记忆存储。我们通常将强化学习算法中基于某些信息做出决策的部分称为智能体,为了解决上下文老虎机问题,我们将使用神经网络作为智能体。
2. PyTorch 入门
如今有许多深度学习框架,如 TensorFlow、MXNet 和 PyTorch 等,其中 PyTorch 因其简单性而被广泛使用。它允许编写类似原生 Python 的代码,同时具备自动求导和内置优化等优秀框架的特性。
如果你熟悉 numpy 多维数组,那么可以用 PyTorch
多臂老虎机在广告投放中的应用
超级会员免费看
订阅专栏 解锁全文
1941

被折叠的 条评论
为什么被折叠?



