【论文阅读】Prototypical Networks for Few-shot Learning

news2024/11/29 0:36:12

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、论文
    • 摘要
    • 方法
  • 二、视频
  • 总结


前言

本文结合论文和youtube上的视频[Few-shot learning][2.2] Prototypical Networks: intuition, algorithm, pytorch code来整理一下对prototypical networks在few-shot领域的理解。


一、论文

摘要

问题:少镜头分类问题(在只给定少量实例的情况下,分类器必须推广到未看到的新类)。
提出的解决方案:Prototypical Networks学习一个度量空间,在该空间中,可以通过计算得到每个类的原型表示的距离来执行分类。
优点:与最近少镜头学习方法相比,它们反映了一种更简单的归纳偏差,这种偏差在优先数据的状态下是有益的,取得了出色的结果。
分析:我们表明一些简单的设计决策可以比最近涉及复杂架构选择和元学习的方法产生实质性的改进。
扩展:扩展到了0样本学习,在CU-Birds dataset中获得了最先进的结果。

方法

在这里插入图片描述
这是在度量空间中,左边是few-shot,是计算每个类的embedded支持例的平均值得到ck。右边是zero-shot,通过embedding类别元数据vk生成的。在每一种情况下,embedded查询点是通过softmax对类原型的距离进行分类。pφ(y = k|x) ∝ exp(−d(fφ(x), ck)).

ck中心就是每一个类通过embedding函数得到的支持点的平均值。就是embedding相当于一个有很多维的一个空间中的一个点(我觉得类似特征提取得到得特征,这些特征得到的相当于一个高维空间中得坐标,每个类的支持点坐标不一定相同但是相近,它们的平均值可以近似看作这个类在这个高维空间中聚类的那个中心点)。
就是属于哪个类的概率p的计算是通过softmax函数得到的。p(y=k|x)是到自己true类别的距离的相反数的exp()比到其他类别距离的相反数的exp的和。loss就是-log(p(y=k|x))。
下面是loss的计算。
在这里插入图片描述
距离:距离计算有很多公式,对于一类特定的距离函数,称为正则布雷格曼散度[4],原型网络算法等效于对具有指数族密度的支持集执行混合密度估计。
原型计算可以从支持集上的硬聚类来看,每个类一个聚类,每个支持点分配给其相应的类聚类。对于布雷格曼散度,已经表明[4],达到到其指定点的最小距离的聚类代表是聚类均值。因此,当使用布雷格曼散度时,公式(1)中的原型计算在给定支持集标签的情况下产生最优聚类代表。所以他才取的均值。
后面就是对指数组混合模型的一些数学公式,我暂时看不懂。

重新解释为线性模型
当我们使用欧几里得距离 d(z, z′) = ‖z − z′‖2 时,方程 (2) 中的模型等效于具有特定参数化的线性模型 [21]。若要查看此内容,请展开指数中的项:
− ‖ f φ ( x ) − c k ‖ 2 = − f φ ( x ) T f φ ( x ) + 2 c k T f φ ( x ) − c k T c k −‖fφ(x) − c_k‖2 = −fφ(x)^Tfφ(x) + 2c^T_k fφ(x) − c^T_k c_k fφ(x)ck‖2=fφ(x)Tfφ(x)+2ckTfφ(x)ckTck
等式中的第一项相对于类k是常数,所以他就变成线性的函数了。
2 c k T f φ ( x ) − c k T c k = w k T f φ ( x ) + b k , w h e r e w k = 2 c k a n d b k = − c k T c k 2c^T_k fφ(x) − c^T_k ck = w^T_k fφ(x) + b_k, where w_k = 2c_k and b_k = −c^T_k c_k 2ckTfφ(x)ckTck=wkTfφ(x)+bk,wherewk=2ckandbk=ckTck

与匹配网络比较:原型网络与匹配网络在少数镜头情况下不同,在单镜头场景中具有等效性。
设计选择:Distance metrics, Episode composition

二、视频

在这里插入图片描述
先讲了聚类算法是怎么进行的。
在这里插入图片描述
然后讲了prototype的运行方式。对一个3-way 5-shot任务来说,他有五个支持图片,每个支持图片进入到一个编码器生成zi,这些zi做平均mean得到ci。3 way一次有三类。查询图像经过相同的编码器得到za,计算与这三个zi的距离,经过softmax函数,得到属于每一个类的概率。
在这里插入图片描述
然后对loss的计算过程进行梳理。
在这里插入图片描述
在这里插入图片描述
这里是伪代码。我感觉主要有两个步骤一个根据支持点得到z_proto(详细一点就是让所有输入通过网络得到z,根据每一类的支持点的z取平均得到每一类的z_proto),第二步计算距离,得到loss(用距离函数计算z_query和z_proto的距离,使用softmax函数得到x_query属于每一类的概率,然后根据query的标签计算loss)。
在这里插入图片描述
列出了prototype Networks的优缺点。


总结

原型网络的简单性和有效性使其成为少镜头学习的有前途的方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1055424.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Boot中的@Controller使用教程

一 Controller使用方法,如下所示: Controller是SpringBoot里最基本的组件,他的作用是把用户提交来的请求通过对URL的匹配,分配个不同的接收器,再进行处理,然后向用户返回结果。下面通过本文给大家介绍Spr…

Linux shell编程学习笔记5:变量命名规则、变量类型、使用变量时要注意的事项

跟其他的高级开发语言一样,Linux Shell编程中使用的数据也需要保存在变量中。 Shell使用变量来控制其行为,并且可以通过更改变量值来更改Shell和其他程序的行为。 我们先来了解一下变量命令的规则、变量类型和使用变量时要注意的事项。 一、变量命名规…

Redis学习笔记(常用数据类型,发布订阅,事务和锁机制,持久化,集群,雪崩,缓存击穿,分布式锁)

一、NoSQL数据库简介 解决扩展性问题,如果需要对功能进行改变(比如增删功能),用框架有一定的规范要求,无形中解决了扩展性问题。 Redis是一种典型的NoSQL数据库。 NoSQL的基础作用: 1. nginx负载均衡反向…

3. 文档操作

1. 创建文档 1.1 创建一个文档 在相应的索引下面使用_doc创建文档,地址为:http://127.0.0.1:9200/students/_doc,创建一个姓名张三的学生信息: {"姓名":"张三","年级":5,"班级":2,&qu…

MySQL数据库——索引(6)-索引使用(覆盖索引与回表查询,前缀索引,单列索引与联合索引 )、索引设计原则、索引总结

目录 索引使用(下) 覆盖索引与回表查询 思考题 前缀索引 语法 示例 前缀长度 前缀索引的查询流程 单列索引与联合索引 索引设计原则 索引总结 1.索引概述 2.索引结构 3.索引分类 4.索引语法 5.SQL性能分析 6.索引使用 7.索引设计…

ORACLE Redo Log Buffer 重做日志缓冲区机制的设计

最近和朋友包括一些国产数据库的研发人员交流,很多程序员认为 Oracle 已经过时,开源数据库或者他们研发的国产数据库才代表数据库发展的未来。甚至在很多交流会议上拿出自家产品的某一个功能点和 Oracle 对比就觉得已经遥遥领先。 实际上数据库系统的发展…

Spring Cloud Alibaba Nacos 配置中心 (配置持久化与动态刷新) 实战

文章目录 一、配置持久化到DB1. 找到配置文件2. 修改配置文件3. 执行数据库SQL4. 控制台创建配置文件 二、集成Nacos配置中心客户端1. 引入依赖2. 添加配置信息3. 创建配置信息4. 编写测试类5. 运行测试6. 动态刷新配置 一、配置持久化到DB 1. 找到配置文件 找到 nacos 的安装…

C#,数值计算——Ranlim32的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// High-quality random generator using only 32-bit arithmetic.Same conventions /// as Ran.Period is 3.11E37 . Recommended only when 64-bit arithmetic is not /// a…

中国1km土壤特征数据集(2010年)

简介&#xff1a; 中国1km土壤特征数据集&#xff08;2010&#xff09;是基于第二次全国土壤调查的中国1:1000000比例尺土壤图和8595个土壤剖面图&#xff0c;以及美国农业部&#xff08;USDA&#xff09;中国区域土地和气候模拟标准&#xff0c;开发了一个多层土壤粒度分布数…

开源layui前端框架 收款码生成系统源码 多合一收款码生成源码 带50多套UI模板

Layui前端的多合一收款码在线生成系统源码_附多套前端UI模板。 卡特三合一收款码生成系统源码&#xff0c;和收款啦采用一样的原理。 内部多达50多套模板&#xff0c;前端跟付款界面都特别好看。 识别收款码之后会自动加密&#xff0c;非常安全。 一样没有后台&#xff0c;一样…

2023年全球接口IP市场发展趋势分析:市占率第二IP品类,受大数据及计算需求推动高速增长[图]

接口IP是基于标准接口协议&#xff0c;实现芯片与内外部设备进行通信、传输数据的电路模块&#xff0c;分为有线接口IP与无线接口IP&#xff0c;主要用于数字信号处理和嵌入式系统中的接口设计。 接口IP分类 资料来源&#xff1a;共研产业咨询&#xff08;共研网&#xff09; …

深度学习:基于长短时记忆网络LSTM实现情感分析

目录 1 LSTM网络介绍 1.1 LSTM概述 1.2 LSTM网络结构 1.3 LSTM门机制 1.4 双向LSTM 2 Pytorch LSTM输入输出 2.1 LSTM参数 2.2 LSTM输入 2.3 LSTM输出 2.4 隐藏层状态初始化 3 基于LSTM实现情感分析 3.1 情感分析介绍 3.2 数据集介绍 3.3 基于pytorch的代码实现 3…

在Windows11家庭中文版中启用Copilot(预览版)

1、下载ViveTool-vx.x.x.zip 2、解压下载的压缩包ViveTool-vx.x.x.zip 3、复制ViveTool文件夹的路径 4、按下wins&#xff0c;打开搜索 5、输入cmd&#xff0c;并选择“以管理员身份运行” 6、在cmd中输入以下命令&#xff0c;进入ViveTool文件夹&#xff1a; cd ViveTool…

【最新版配置conda环境】新版pycharm导入新版anaconda环境

最近下载了新版pycharm和新版anaconda&#xff0c;并且在命令行创建了环境&#xff0c;想着在pycharm里面导入环境。结果现在的导入方式发生了变化。 之前是通过导入Python.exe进行的。 现在&#xff1a; 当我们点击进去之后&#xff0c;会发现找不到python.exe了。 具体什么…

网络安全复习大纲wcf

单选10判断10填空30简答25分析25 选择 &#xff08;1&#xff09;计算机网络安全是指利用计算机网络管理控制和技术措施&#xff0c;保证在网络环境中数据的&#xff08; &#xff09;、完整性、网络服务可用性和可审查性受到保护。 A、保密性 B、抗攻击性 C、网络服务管理性 …

mysql服务器时间(时区问题)

本地能查询出来数据&#xff0c;而服务端查询不出来 这是sql代码 在studentId没问题的情况我首先怀疑的就是NOW&#xff08;&#xff09;获取的时间出了问题&#xff0c;后来我想到我的数据库是上海的&#xff0c;时间应该没问题啊&#xff0c;百思不得其解。date去查了系统的…

如何将超大文件压缩到最小

1、一个文件目录&#xff0c;查看属性发现这个文件达到了2.50GB&#xff1b; 2、右键此目录选择添加到压缩文件&#xff1b; 3、在弹出的窗口中将压缩文件格式选择为RAR4&#xff0c;压缩方式选择为最好&#xff0c;选择字典大小最大&#xff0c;勾选压缩选项中的创建固实压缩&…

svn下载安装与使用教程/方法

1、官网下载SVN服务器 官网网址&#xff1a;Subversion Server for Windows | VisualSVN Server 本地新建空文件夹 桌面右击选择如下图所示&#xff1a; 填入刚刚拷贝的仓库地址&#xff0c;与所建立文件要放得地方&#xff0c;点击ok即可。 2、提交代码 新建文件&#xf…

正则表达式基本使用

文章目录 1. 基本介绍2. 元字符(Metacharacter)-转义号 \\3. 元字符-字符匹配符3.1 案例 4. 元字符-选择匹配符5. 元字符-限定符6. 元字符-定位符7. 分组7.1 捕获分组7.2 非捕获分组 8. 非贪婪匹配9. 应用实例10. 正则验证复杂URL 1. 基本介绍 如果要想灵活的运用正则表达式&a…

【计算机取证篇】Windows禁用驱动程序签名教程

【计算机取证篇】Windows禁用驱动程序签名教程 高级启动—【蘇小沐】 文章目录 【计算机取证篇】Windows禁用驱动程序签名教程1、实验环境 &#xff08;一&#xff09;驱动问题&#xff1a;驱动安装失败&#xff08;二&#xff09;高级启动&#xff1a;F7禁用驱动程序强制签名…