| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> (二)元学习算法MAML解读 -> 正文阅读 |
|
[人工智能](二)元学习算法MAML解读 |
欢迎访问个人网络日志🌹🌹知行空间🌹🌹
ICML2017的一篇论文,作者 元学习MAML论文介绍 模型无关元学习算法,即 1.元学习(meta learning)元学习即学会学习,区别与普通的深度学习过程。普通的深度学习具体到某一任务,如图像分类,即训练一个模型实现一个数据集内的图像分类,这种方法有一定的局限性,即模型只能在当前任务(task)上工作,不能应用到其他任务。譬如基于手写字识别数据集训练的分类模型不能用来实现猫和狗的分类。有没有一种方法,可以学会完成分类这一任务,不针对具体是实现哪些对象的分类,学会分类任务后再基于少量的具体数据训练学会是具体给猫狗分类还是给手写字分类。相当于说一个模型实现了原来多个模型的功能。 元学习训练模型是为了获得一个可以快速应用到小样本数据的新任务上的模型,元学习通过初步训练获得模型比较好的初值,再基于初值对具体任务在小样本训练数据上少量更新权重即可取得好的效果。 元学习还可以理解成是寻找一组具有较高敏感度的参数,基于找到的参数,只需要进行少量的迭代即可在新的任务上取得理想的结果。 元学习可应用于训练数据有限的 2.模型无关元学习2.1 元学习问题建模元学习是在一系列任务上学习,目标是学习得到一个比较敏感的模型,使该模型能够基于小样本数据简单训练快速应用到新任务上。也就是说,元学习将一系列学习任务当作训练样本。 譬如,识别一个动物是不是狗是任务
T
1
T_1
T1?,识别一个手写数字是不是9是任务
T
2
T_2
T2?,识别一辆车是不是坦克是任务
T
3
T_3
T3?,普通的学习方法会针对每个训练一个模型,也是基于前述的任务要训练3个模型分别完成。观察前面的三个任务
T
1
,
T
2
,
T
3
T_1,T_2,T_3
T1?,T2?,T3?具有共性,即都是识别分类任务,能不能有一种通用模型可以学习识别分类这一任务,然后再基于少量的数据对通用模型微调即可快速应用的新的类似任务。如基于
T
1
,
T
2
,
T
2
T1,T2,T2
T1,T2,T2使模型学会分类能力,然后提供少量的 使用数学公式描述: 单个任务表示为:
在元学习(meta-learning)中,考虑多个任务 T T T的分布为 p ( T ) p(T) p(T),这正是元学习模型要学习的目标。具体的任务 T i T_i Ti?是从任务分布 p ( T ) p(T) p(T)中取样的,模型的训练基于任务 T i T_i Ti?的 K K K个训练样本和任务 T i T_i Ti?的损失函数 L i L_i Li?。任务 T i T_i Ti?的测试误差,将作为元学习模型的训练误差。 上图中 ? L 1 , ? L 2 , ? L 3 \nabla L_1,\nabla L_2,\nabla L_3 ?L1?,?L2?,?L3?分别表示任务 T 1 , T 2 , T 3 T_1,T_2,T_3 T1?,T2?,T3?上的损失函数梯度, θ 1 ? , θ 2 ? , θ 3 ? \theta_1^\star,\theta_2^\star,\theta_3^\star θ1??,θ2??,θ3??分别表示具体到任务 T 1 , T 2 , T 3 T_1,T_2,T_3 T1?,T2?,T3?上的参数, θ \theta θ是元学习模型的参数。 2.2 MAML算法算法中参数更新分成两步,一次是更新 第一步,针对任务 T i T_i Ti?的模型优化为: θ ′ = θ ? α ? θ L T i ( f θ ) \theta'=\theta-\alpha\nabla_{\theta}L_{T_i}(f_\theta) θ′=θ?α?θ?LTi??(fθ?)
第二步,针对元学习模型的优化为: m i n θ ∑ T i ~ p ( T ) L T i ( f θ ′ ) = ∑ T i ~ p ( T ) L T i ( f θ ? α ? θ L T i ( f θ ) ) θ ← θ ? β ? θ ∑ T i ~ p ( T ) L T i ( f θ ′ ) \mathop{min}\limits _\theta \sum\limits_{T_i\sim p(T)}L_{T_i}(f_\theta')=\sum\limits_{T_i\sim p(T)}L_{T_i}(f_{\theta-\alpha\nabla_{\theta}L_{T_i}(f_\theta)}) \\ \\ \theta \leftarrow \theta - \beta\nabla_\theta\sum\limits_{T_i\sim p(T)}L_{T_i}(f_\theta') θmin?Ti?~p(T)∑?LTi??(fθ′?)=Ti?~p(T)∑?LTi??(fθ?α?θ?LTi??(fθ?)?)θ←θ?β?θ?Ti?~p(T)∑?LTi??(fθ′?) 3.将MAML应用到回归分类任务上的算法流程方程2和方程3分别是均方误差和交叉熵。 参考资料欢迎访问个人网络日志🌹🌹知行空间🌹🌹 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 9:45:00- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |