Learning to learn without forgetting by maximizing transfer and minimizing interference
Learning to learn without forgetting by maximizing transfer and minimizing interference在对非平稳数据分布进行持续学习方面,仍然是将神经网络扩展到人类现实环境的主要挑战。
在这项工作中,我们提出了一种关于连续学习的新概念,即迁移和干扰之间的对称权衡,可以通过实施跨样本的梯度对齐来优化该权重。
Meta-Experience Replay (MER) 通过将经验回放与基于优化的元学习相结合。
该方法学习使基于未来梯度的干扰可能性较小,而基于未来梯度的迁移可能性更大的参数。
作者在连续终身监督学习基准和非静态强化学习环境中进行了实验,实验表明,MER算法和基线算法之间的性能差距随着环境变得更加不平稳和存储的经验在总经验中所占的比例变小而增大。
Continual learning problem人工智能的一个长期目标是建立能够长期自主操作的代理。这样的代理必须渐进地学习并适应不断变化的环境,同时保持对以前所学知识的记忆,这种设置称为终身学习。本文是持续学习的一个变体。
在持续学习中,假设学习者接触到一系列 ...
5-最长回文子串
5-最长回文子串5. 最长回文子串动态规划DP
思想:对于一个子串而言,如果它是回文串,并且长度大于2,那么它首尾的两个字母去掉之后,它仍然是个回文串
状态转移方程: $(s[i]==s[j])\ \&\& \ dp[i+1][j-1]$ ,$dp[i][j]$ 表示子串$s[i..j]$是否是回文
边界条件,即子串的长度为 1 或 2。: $dp(i,i)=true$ 单个字符串, $dp(i,i+1) = (Si==Si+1)$两个字符
123456789101112131415161718192021222324class Solution { public String longestPalindrome(String s) { int n = s.length(); boolean[][] dp = new boolean[n][n]; String ans=""; for(int k=0;k<n;k++){ for(i ...
7,8-整数反转,字符串转换整数(atoi)
7,8-整数反转,字符串转换整数(atoi)7. 整数反转法一:按位转换
弹出 和 推入数字
弹出:num = x%10; x/=10
推入:result = result x 10 + num (这里有可能溢出)
模式识别:整数运算注意溢出
转换为 INT_MAX / INT_MIN的逆运算
判断某数乘十是否会溢出,就把该数 和 INT_MAX 除10 进行比较
1234567891011121314class Solution{ public int reverse(int x){ int rev = 0; while(x!=0){ if(rev < Integer.MIN_VALUE /10 || rev > Integer.MAX_VALUE/10){ return 0; } int digit = x % 10; x /= 10; rev = r ...
La-MAML: Look-ahead Meta Learning for Continual Learning
La-MAML: Look-ahead Meta Learning for Continual Learning持续学习问题涉及能力有限的训练模型,这些模型在一组未知数量的顺序到达的任务上表现良好。
虽然元学习在减少新旧任务之间的干扰方面显展示出潜力,但目前的训练过程往往要么很慢,要么离线,而且对许多超参数很敏感。
作者提出Look-ahead MAML (La-MAML) 一种optimisation-based的快速元学习算法,用于在线持续学习,并辅之以小情节记忆。
作者在元学习更新中提出的对每个参数学习率的调制,并将其与先前关于超梯度 hypergradients 和元下降 meta-descent 的工作联系起来。
与传统的基于先验的方法相比,这提供了一种更灵活和更有效的方式来减轻灾难性遗忘。
作者开发了一种基于梯度的元学习算法,以实现高效的在线持续学习。先提出了一种连续元学习的基本算法,称为连续MAML(C-MAML),它利用replay-buffer并优化了一个减轻遗忘的元目标。随后提出了一种对C-MAML的改进,称为La-MAML,它包括对每参数学习率(LRs)的调制,以 ...
4-三种方法彻底解决中位数问题
4-三种方法彻底解决中位数问题4. 寻找两个正序数组的中位数两种思想
真合并:使用归并的方式,合并两个有序数组,得到一个大的有序数组,大的有序数组中的中间位置的元素即为中位数。$O(n+m),O(n+m)$
假合并:不需要合并两个有序数组,只要找到中位数的位置即可。由于两个数组的长度已知,因此中位数对应的两个数组下标之和也是已知的。维护两个指针,初始时分别指向两个数组的下标为0的位置,每次将指向较小的指针后移一位(如果一个指针已经到达数组末尾,则只需要移动另一个数组的指针),直到达到中位数的位置。$O(n+m),O(1)$
常见的思想改进:假合并、奇偶合并通过假合并的思想可以将空间复杂度优化到$O(1)$但对于时间复杂度并没有什么优化,此方法代码复杂,不仅要考虑奇偶问题,更需要高了一个数组遍历后的各种边界问题。
假合并的一个优化点是 将奇偶两种情况合并到了一起:
如果是奇数,我们需要知道第(len+1)/2 个数就可以了,如果遍历的话需要遍历int(len/2)+1次
如果是偶数,需要知道第(len/2) 和 len/2 + 1个数,也是需要遍历len/2 + 1次
返回中位数,奇 ...
Multimodal Emergent Fake News Detection via Meta Neural Process Networks
Multimodal Emergent Fake News Detection via Meta Neural Process Networks基于深度学习的模型在对感兴趣事件的大量标注数据进行训练时表现出较好的性能,而在其他事件上由于领域漂移的影响,模型的性能往往会下降。此外,添加来自新出现的事件的知识需要从头开始构建新的模型或继续微调模型,这对于现实世界的设置来说是不切实际的。(需新注入知识)
假新闻通常出现在新到的活动上,我们很难及时获得足够的帖子。在突发事件的早期阶段,我们通常只有少数相关的验证帖子。 如何利用一小部分经过验证的帖子来使模型快速学习。(few-shot挑战)
本文作者提出 MetaFEND 将元学习(meta learning)和神经过程(np)方法集成在一起解决此类问题。 还提出了标签嵌入模块和硬注意机制,通过处理分类信息和修剪无关帖子来提高效率。
MetaFEND的目标是:调整参数以更好地利用给定的支持数据点作为条件。
Limitations of Current Techniquesfew-shot learning 是一种为了克服利用一小部分数据实例进行 ...
11-盛最多的水的容器
11-盛最多的水的容器11. 盛最多水的容器双指针双指针的思想来源双指针大多都是对两层循环的优化,所以当暴力法设计到两层循环遍历的时候,我们就应该有这种思想:能不能用双指针。
其次,就是要有限制的满足条件,对于本题而言,限制的满足条件就是 每次移动数字较小的那个指针,我们必须根据题目找到某个条件,而这个条件就是双指针的移动条件,也就是双指针思想的基础。
双指针移动的条件要找到这个条件,我们就需要从题目的定义出发,也就是容纳的水量的含义,当左右指针分别指向数组的左右两端,那么, 容纳的水量 = 两个指针指向的数字中较小的值 x 指针之间的距离。
接下来就只要考虑移动双指针后两者的变化情况即可。如果我们移动数字较大的那个指针,那么前者 【两个指针指向的数字中较小值】不会增加,后者 【指针之间的距离】会减小,那么这个成绩会减小。因此,我们移动数字较小的那个指针,这是从公式变化角度解释如何移动指针的
双指针合理性的证明双指针的含义:
双指针代表的是,可以作为容器边界的所有位置的范围
在一开始,双指针指向数组的左右边界,表示数组中所有的位置都可以作为容器的边界。
在这之后,我们每次将,对应的数 ...
1-两数之和到四数之和
1-两数之和到四数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。
你可以按任意顺序返回答案。
示例 1:
输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:
输入:nums = [3,2,4], target = 6输出:[1,2]示例 3:
输入:nums = [3,3], target = 6输出:[0,1]
两数之和哈希表法哈希表的方法首先用在了两数之和(无序数组)上, 哈希表的使用最主要的目的就是为了降低时间复杂度, 缩减寻找第二个元素使用的时间(将时间复杂度由O(n)降为O(1)), 其中无序数组是哈希表使用的重要条件, 因为当数组有序后, 我们完全可以直接使用 双指针 的方法来降低时间复杂度, 它的使用比 哈希表 更加方便快捷, 空间复杂度也更低, 所以数组有序之后, ...
Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
Model-Agnostic Meta-Learning for Fast Adaptation of Deep NetworksMAML一种模型无关的元学习算法,即它可以与任何经过梯度下降训练的模型兼容,并适用于各种不同的学习问题,包括分类、回归和强化学习。
元学习的目标是在各种学习任务上训练一个模型,它只需要少量的训练样本就可以解决新的学习任务。
MAML模型的参数被显式地训练,使得少量的梯度步骤和来自新任务的少量训练数据将在该任务上产生良好的泛化性能,易于微调。
核心思想是训练模型的初始参数,以便在参数通过一个或多个梯度步骤更新后,模型在新任务上具有最大性能,该梯度步骤使用来自该新任务的少量数据计算。
这种快速灵活的学习是一种挑战,因为模型必须将其先前的经验与少量新信息相结合,同时避免过拟合新数据。此外,先验经验和新数据的形式将取决于任务。因此,为了获得最大的适用性,learn to learn (或元学习)的机制应该适用于任务和完成任务所需的计算形式。
Model-Agnostic Meta-Learning目标是训练能够实现快速适应的模型,这是一种通常被形式化为few-sho ...
Dynamically Addressing Unseen Rumor via Continual Learning
Dynamically Addressing Unseen Rumor via Continual Learning谣言往往与新出现的事件联系在一起,因此,处理没见过的谣言的能力对于谣言真实性分类模型至关重要。
以前的工作通过改进模型的泛化能力来解决这个问题,假设即使在新的事件爆发之后,模型也会保持不变。
在这项工作中,提出了一种解决方案,以根据谣言域创建的动态不断更新模型。
与这种新方法相关的最大技术挑战是由于新的学习而灾难性地忘记了以前的学习。
作者采用持续学习策略来控制新的学习,以避免灾难性的遗忘,并提出了一种可以联合使用的额外策略来加强遗忘的缓解。
谣言检测任务两个重要难点:
处理没见过的谣言的能力 (处理训练阶段未见的新谣言)
谣言早发现
此前的方法试图通过关注静态设置中的模型泛化通用性来解决这一挑战,如下图a。目标是提高模型$M{\theta{t=1}}$ 在不更新模型的情况下,在看不见的话题领域(“古尔利特”和“普京失踪”)上表现好。然而,增强模型的泛化能力是一个困难的问题,特别是对于总是引入新主题和词汇的任务。
因此,作为另一种解决方案,通过训练一个能够不断适 ...