模仿学习(Imitation learning)是强化学习(RL)中的一种技术,智能体通过模仿专家演示来学习执行任务,而不是仅仅依靠试错探索和奖励信号。与需要设计奖励函数来指导智能体的传统强化学习不同,模仿学习利用期望行为的示例,例如人类动作或预先录制的轨迹。当奖励函数难以定义但专家数据易于获得时,这种方法特别有用。例如,教机器人走路可能涉及向它展示人类走路的视频,而不是手动为每个关节运动编写奖励代码。
模仿学习通常使用以下两种方法之一:行为克隆(behavioral cloning)或逆向强化学习(inverse reinforcement learning)。行为克隆将问题视为监督学习,智能体通过在标记的专家数据上进行训练,学习从状态(例如,传感器输入)到动作(例如,电机控制)的映射。例如,自动驾驶汽车模型可能通过观察人类驾驶员对路况的反应来学习转向。然而,行为克隆可能难以处理训练数据中未遇到的状态,从而导致执行过程中出现错误。逆向强化学习(IRL)通过推断专家正在优化的潜在奖励函数来解决这个问题,然后使用强化学习来最大化该奖励。IRL 对新场景更具鲁棒性,但需要更多的计算资源。
模仿学习的应用范围涵盖机器人技术、自主系统和游戏 AI。一个常见的用例是通过观察人类演示来训练机器人执行组装或操作等任务。在医疗保健领域,模仿学习已被用于通过分析专家外科医生的动作来训练手术机器人。一个主要挑战是确保专家数据的质量和多样性——次优的演示可能导致智能体性能低下。为了缓解这个问题,像 DAgger(数据集聚合)这样的技术通过让智能体与环境交互,同时专家纠正其错误,来迭代收集新数据。将模仿学习与传统强化学习相结合也有助于智能体超越专家能力范围来改进其策略。