PRN(20210425):Gradient based sample selection for online continual learning

本文主要是介绍PRN(20210425):Gradient based sample selection for online continual learning,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

智能体需要具备不断适应环境的能力,这就使得其必须能够利用当前与环境或其他智能体交互的样本进行在线、增量式学习的能力。深度神经网络被广泛用于作为学习的模型,应用于这样的增量式学习任务时存在灾难性遗忘问题。缓解该问题的一种方法是:利用一个类似于DQN的经验回放单元存储重要的历史样本用来回忆(rehearsal)历史知识,使模型克服(目前还做不到“克服”,个人觉得用“缓解”更合适)灾难性遗忘问题。该方法的核心要点是如何从持续到来的数据中选择合适的样本。对于一个样本可持续的学习任务,数据一般都是在线产生的,无法保证现有大部分研究所假定的独立同分布条件。
https://github.com/rahafaljundi/Gradient-based-Sample-Selection

一、持续学习:一种带约束的优化问题

1.1 问题阐述

目标:基于当前样本优化损失函数,并同时不增加历史已学习样本的损失值

根据以上目标可得如下带约束的优化问题:
在这里插入图片描述
其中, ( x t , y t ) (x_t, y_t) (xt,yt)为当前时刻获得的样本, f ( . ; θ ) f(.;\theta) f(.;θ)表示参数为 θ \theta θ的模型, l l l为损失函数, t t t为当前样本的索引, i i i表示历史样本的索引。

问题的约束可以进一步变换成梯度空间的约束:
在这里插入图片描述
随着学习的进行,历史样本数越来越多,计算这样一个约束的时间成本也越来越大,外加存储历史样本的空间成本。实际情况允许的是,保留一部分更加有用的历史样本,例如采用一个固定大小为M的记忆单元 M \mathcal{M} M.

1.2 Sample Selection as Constraint Reduction

我们通过选择M个样本,使得由它们表示的约束与原始的约束问题接近:
在这里插入图片描述在这里插入图片描述
C C C C ^ \hat{C} C^的示意图如下:
在这里插入图片描述

于是可得以下优化问题:
在这里插入图片描述

1.3 一个可行区域最小化的经验替代形式

前面给出的形式很难在数学上求解,因此用以下的形式替代:
在这里插入图片描述
可以这样理解:优化目的是为了减小可行集,必须充分增加replay memory中各对样本的梯度夹角

通过以以推导发现,上面优化可以转换成最大化梯度方向的方差:

在这里插入图片描述

note: 重要样本选择问题最后转变成最大化固定size replay memory中样本的损失梯度方向的方差。replay memory中的梯度方向的方差的最大化,等于把一个社区里不同的意见代表给找了出来,如果一个方案能够满足由这样的不同意见代表组成的监察组,那么说明这样的方案兼顾了所有。对应到本文的问题,那就是即照顾到了现有样本的学习,又保持历史知识的不遗忘。除了可以用损失梯度方向的方差最大化这一信息来选择样本,replay memory还可以直接根据样本的方法或样本在网络隐含层输出的特征方差来选择重要样本。

1.4 在线样本选择

1.4.1 整数二次规划

可以等价成如下形式:
在这里插入图片描述
其中, G = < g i , g j > ∣ ∣ g i ∣ ∣ ∣ ∣ g j ∣ ∣ G=\frac{<g_i, g_j>}{||g_i||||g_j||} G=gigj<gi,gj>, x x x非1即0,表示某一样本是否被中。用白话说,就是从N个样本中,选择M个样本,并且它们的损失梯度方向夹角余弦值和最小。
在这里插入图片描述

1.4.2 In-exact贪婪替换

当需要维护的replay memory很大时,基于整数规划的方法计算量很大。因此,提出贪婪替换的方法。

贪婪替换也能够实现replay memory中样本多样性的目的,并且成本比整数二次规划要小很多。贪婪替换的核心思想是:给每一个replay memory中的样本维护一个评分,这个评分是通过计算该样本与从replay memory中随机选择出的固定数量样本的最大余弦相似量获得的。在最开始时,replay memory未填满,我们直接将新来的样本附加评分加入replay memory。一旦replay memory达到最大容量,我们随机的从replay memory中选择样本作为被替换的对象。随机的概率由标准后的评分获得。然后,比较新样本的与候选替换对象的评分来决定替换是否进行。
在这里插入图片描述
其中, P ( i ) = C i / ∑ j C j P(i)=C_i/\sum_j C_j P(i)=Ci/jCj为replay memory中被选中用于替换新样本的候选样本; C i / ( c + C i ) C_i/(c+C_i) Ci/(c+Ci)为候选样本被新样本替换的概率, C i C_i Ci为候选样本的分数, c c c为新样本的分数。


End

by WindSeS 2021-4-25

这篇关于PRN(20210425):Gradient based sample selection for online continual learning的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/630486

相关文章

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

Nn criterions don’t compute the gradient w.r.t. targets error「pytorch」 (debug笔记)

Nn criterions don’t compute the gradient w.r.t. targets error「pytorch」 ##一、 缘由及解决方法 把这个pytorch-ddpg|github搬到jupyter notebook上运行时,出现错误Nn criterions don’t compute the gradient w.r.t. targets error。注:我用

简单的Q-learning|小明的一维世界(3)

简单的Q-learning|小明的一维世界(1) 简单的Q-learning|小明的一维世界(2) 一维的加速度世界 这个世界,小明只能控制自己的加速度,并且只能对加速度进行如下三种操作:增加1、减少1、或者不变。所以行动空间为: { u 1 = − 1 , u 2 = 0 , u 3 = 1 } \{u_1=-1, u_2=0, u_3=1\} {u1​=−1,u2​=0,u3​=1}

简单的Q-learning|小明的一维世界(2)

上篇介绍了小明的一维世界模型 、Q-learning的状态空间、行动空间、奖励函数、Q-table、Q table更新公式、以及从Q值导出策略的公式等。最后给出最简单的一维位置世界的Q-learning例子,从给出其状态空间、行动空间、以及稠密与稀疏两种奖励函数的设置方式。下面将继续深入,GO! 一维的速度世界 这个世界,小明只能控制自己的速度,并且只能对速度进行如下三种操作:增加1、减

PRN(20201231):驾驶人驾驶决策机制遵循最小作用量原理

王建强, 郑讯佳, 黄荷叶. 驾驶人驾驶决策机制遵循最小作用量原理[J]. 中国公路学报, 2020, v.33;No.200(04):159-172. 观点: 为提升智能汽车的自主决策能力,使其能够学习人的决策智慧以适应复杂多变的道路交通环境,需要揭示驾驶人决策机制。 依据: 物理学中常用最小作用量原理解释自然界(包括物理和生物行为)极值现象。同时,最小作用量原理还用于解释蚂蚁在觅

MACS bdgdiff: Differential peak detection based on paired four bedGraph files.

参考原文地址:[http://manpages.ubuntu.com/manpages/xenial/man1/macs2_bdgdiff.1.html](http://manpages.ubuntu.com/manpages/xenial/man1/macs2_bdgdiff.1.html) 文章目录 一、MACS bdgdiff 简介DESCRIPTION 二、用法

Neighborhood Homophily-based Graph Convolutional Network

#paper/ccfB 推荐指数: #paper/⭐ #pp/图结构学习 流程 重定义同配性指标: N H i k = ∣ N ( i , k , c m a x ) ∣ ∣ N ( i , k ) ∣ with c m a x = arg ⁡ max ⁡ c ∈ [ 1 , C ] ∣ N ( i , k , c ) ∣ NH_i^k=\frac{|\mathcal{N}(i,k,c_{

Failed to pull selection解决办法

今天在使用DDMS导出文档到PC端的时候,明明在file explorer里面有文件,导出时候就是失败,出现了“Failed to pull selection”错误。百度了一下,还是重启Eclipse最靠谱。

王立平--Failed to push selection: Read-only file system

往android模拟器导入资源,失败。提示:只读文件、 mnt是只读文件。应点击sdcard,,在导入

【机器学习 sklearn】特征筛选feature_selection

特征筛选更加侧重于寻找那些对模型的性能提升较大的少量特征。 继续沿用Titannic数据集,这次试图通过特征刷选来寻找最佳的特征组合,并且达到提高预测准确性的目标。 #coding:utf-8from __future__ import divisionimport sysreload(sys)sys.setdefaultencoding('utf-8')import timest