[论文解读] Changing Model Behavior at Test-Time Using Reinforcement Learning
本文提出一种基于强化学习的方法,通过使用Composer模型根据输入相关约束从预训练模块中选择,动态调整推理时的模型行为。通过引入策略偏好(Policy Preferences),控制器可实时调节计算资源使用(如参数数量或模块多样性),使单一模型在不重新训练的情况下平衡准确性、效率与资源消耗。
Machine learning models are often used at test-time subject to constraints and trade-offs not present at training-time. For example, a computer vision model operating on an embedded device may need to perform real-time inference, or a translation model operating on a cell phone may wish to bound its average compute time in order to be power-efficient. In this work we describe a mixture-of-experts model and show how to change its test-time resource-usage on a per-input basis using reinforcement learning. We test our method on a small MNIST-based example.
研究动机与目标
- 解决在不重新训练的前提下,使机器学习模型适应运行时约束(如速度、内存或功耗)的挑战。
- 实现在推理阶段根据输入特性进行动态、输入特定的计算调整,而非在训练阶段硬编码权衡。
- 通过追踪每个输入所使用的模块及其对应的偏好,提供可解释性。
- 通过可调偏好参数在运行时修改模型行为,而无需重新训练。
- 证明单一模型可在多种运行模式下实现与专用模型相当的性能表现。
提出的方法
- Composer模型使用控制器网络在每个元层从多个模块(神经网络)中进行选择,为每个输入构建动态计算图。
- 控制器通过REINFORCE算法进行训练,以最大化正确预测的对数似然,采用模块选择的随机采样策略。
- 通过在奖励函数中引入依赖偏好的成本项,引入策略偏好(Policy Preferences),其中偏好γ在推理时作为输入提供给控制器。
- 实现两种类型的偏好:Glimpse Preferences(通过模块大小控制参数使用)和Entropy Preferences(鼓励批次间模块使用的均衡性)。
- 控制器在训练期间学习在偏好γ的分布上调节其策略,从而实现在运行时的自适应能力。
- 该方法支持按输入或按小批量的偏好动态调整,实现实时性能与资源消耗之间的权衡。
实验结果
研究问题
- RQ1单一神经网络模型是否能基于输入特征和用户定义的约束,在推理阶段动态调整其计算复杂度?
- RQ2强化学习控制器在不重新训练的情况下,能在多大程度上学习到高效、输入感知的模块选择策略?
- RQ3策略偏好在实现模型行为的运行时自适应(如减少参数使用或平衡模块利用率)方面有多有效?
- RQ4该模型是否能仅通过一个训练好的实例,在不同运行模式(如高精度 vs. 低计算)下实现与专用模型相当的性能?
- RQ5该方法是否通过揭示每个输入所使用的模块及其偏好条件,提供了可解释性?
主要发现
- 使用Glimpse偏好和Entropy偏好联合训练的Composer模型,在推理阶段成功实现了计算使用量的动态调整,不同偏好设置下实现了参数数量的多样化平均值。
- 当计算成本偏好较高时,控制器会为‘左’数字(其左半部分完全可见)选择小模块,从而在保持准确性的同时降低计算成本。
- 仅当glimpse偏好极低时,控制器才开始为‘右’数字选择小模块,表明其做出了智能、基于输入的决策。
- Composer曲线与基线模型(随机切换模块)之间的差距表明,控制器的选择优于随机选择,能更智能地保持性能。
- 热力图显示,控制器的模块选择策略随偏好值变化而可预测地调整——在成本约束收紧时,优先选择小模块处理左数字,随后才扩展到右数字。
- 该方法实现了无需重新训练的动态、实时行为调整,且Entropy偏好机制确保了模块使用的均衡性,无需手动设置退火调度。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。