3D点云广义零样本分类的递归循环对比生成网络笔记

1 Title

        Contrastive Generative Network with Recursive-Loop for 3D point cloud generalized zero-shot classification(Yun Hao, Yukun Su, Guosheng Lin, Hanjing Su, Qingyao Wu)【Pattern Recognition】

2 Conclusion

        This work aims to facilitate research on 3D point cloud generalized zero-shot learning. Different from previous works, we focus on synthesizing the more high-level discriminative point cloud features. To this end, we design a representation enhancement strategy to generate the features. which can be leveraged to enlarge the inter-class distances and narrow the intra-class gaps. By applying the contrastive representations to the generative model in a recursive-loop form, it can provide the self-guidance for the generator recurrently, which can help yield more discriminative features and train a better classifier

3 Good Sentences 

        1、However, collecting such training data labels is laborious and time-costly. Besides, we are living in a dynamic world that the new class objects are incremental. Therefore, the aforementioned approaches that can only predict on a set of pre-defined categories will inevitably hinder their real-world applications.(The movitation of Zero-Shot Learning)
        2、It simply trains the network by utilizing a bilinear function to associate with semantic attributes and is not designed specifically for 3D point cloud data and thus, yielding unsatisfactory results.(The shortcomings of related works and how this method to improve )
        3、Different from it, our method can better distinguish the inter-class and intra-class distances based on the proposed contrastive recursive-loop learning features within a batch. Moreover, the contrastive learning features of the same batch samples are self-provided to the generator recurrently for the next iteration to yield more discriminative features.(The creativity of this mothed)


         广义零样本学习(GZSL)旨在通过传递语义知识并仅利用可见类数据进行训练来识别可见和不可见类别中的对象。然而,人们对其在 3D 点云零样本学习中的有用性知之甚少。这项工作旨在促进 3D 点云广义零样本学习的研究。本文专注于合成更高级别的判别性点云特征,进而设计了一种表示增强策略来生成特征。具体来说,提出了一种带有递归循环的对比生成网络,称为 CGRL,它可以用来扩大类间距离并缩小类内差距。通过以递归循环形式将对比表示应用于生成模型,它可以循环地为生成器提供自我指导,这有助于产生更多判别性特征并训练更好的分类器。

        介绍:为了解决传统分类中的缺点,零样本学习(ZSL)被提出来转移未见类的语义知识,仅利用已见类数据进行训练,测试集仅包含未见类。而在最近提出的广义零样本学习(GZSL)中,测试集由来自可见类和未见类的测试样本组成。
        最近,2D图像领域的一些开创性工作致力于使用生成对抗网络(GAN)来解决 GZSL 中的问题,其目的是合成假的未见类别实例,并将它们与已见类别中的真实特征实例一起使用在完全监督的环境中训练零样本分类器。
        然而,3D点云数据缺乏大规模且高质量的预训练数据集。因此,2D 特征可以很好地单独聚类,而 3D 点云特征则很紧凑。基于这些较差的聚类 3D 特征,之前的工作没有考虑 2D 图像域中的特征距离,不适合 3D 点云广义零样本学习。
        因此,本文设计了一种循环形式的表示增强策略来生成点云特征。具体来说,我们提出了一种带有递归循环的对比生成网络,称为 CGRL,它可以用来扩大类间距离并缩小类内差距。具体来说,对于真实输入的3D点云特征,构建正对(即随机选择的正例 p 与查询 q 具有相同的类标签)和负对(即反例的类标签n与q类标签不同),使正例更接近,同时负例更远离,从而逐点增强提取的特征编码器(PointNet)。对于合成的特征,使其尽可能接近其对应的真实特征,同时远离其他类。然后,以递归循环形式将自引导对比学习表示注入生成器中,以细化合成特征。这样,生成特征就可以更具辨别力。如下图所示。

        相关工作: 
                1、图像零样本学习(ZSL)
                2、对比学习(Contrastive learning)
                3、3D点云零样本学习(3D point cloud zero-shot learning)

        所提方法
                1、问题定义:在广义零样本学习中,把训练集的源类M(可见类)定义为y^s,目标类N(不可见类)定义为y^u,M和N不相交,即y^s\cap y^u=\phi,把源类对象记作X^S=\left \{ \left ( x_i^s,y_i^s \right ),y_i^s\in Y^S \right \}^M_i,其中x_i是对象的视觉样本,y_i是标签,对于不可见类,没有标签。可见类和不可见类的语义属性信息都可以表示为A^S:\left ( a_i^s \right )^M_{i=1}A^U:\left ( a_i^u \right )^M_{i=1}a_i^s,a_i^u\in R^Q, 在GZSL设置下,目标是学习更通用的模型f_{GZSL}:X\rightarrow y^U\cup y^S,本文关注归纳学习,其中只有可见类才能用于训练。
                2、生成框架
        本文所提出的递归循环对比生成网络 (CGRL) 基于GAN,由一个生成器G和一个判别器D组成。D旨在从生成的对象中精确识别真实对象,G试图通过生成容易被误认为真实的对象来欺骗鉴别器。
        该网络首先将3D点云对象训练数据输入点编码器,它将视觉样本x映射到嵌入空间中,对象的属性和噪声z相结合,由生成器G进行建模,生成虚假特征\hat{x}。判别器D来识别生成的虚假特征和真实的视觉特征,本文进一步引入了对比学习编码器E,E的作用是扩大类间距离,同时缩小类内差距。对于每个批量操作,将对比嵌入表示集成到递归循环中的特征生成模型中,以增强合成特征。以下是CGRL的一些细节内容:
        给定可见类的训练数据,特征生成方法 学习 条件生成器G 以生成 以高斯噪声z~N(0,I)和语义属性a为条件的样本\hat{x}=G(z,a^s)。判别器D与生成器G同时训练,以区别真实样本x和生成的样本\hat{x}。G的目标是合成接近嵌入空间中真实特征的特征。一旦生成器G学会生成真实对象的CNN特征,那G也可

以生成不可见类的\hat{x}
        可以通过优化以下对抗目标来学习特征生成器网络和鉴别器网络:其中,判别器D是一个多层感知器,D的最后一层的函数时sigmoid。
        为了进一步保证GAN训练的稳定性,以缓解坍缩模式,增强目标特征的真实性或虚假程度,本文将GAN损失扩展为其中,λ是惩罚系数,\bar{x}是从x\hat{x}的连线上随机采样的,β~(0,1)。上式中的权重惩罚保证判别器D的梯度沿真假对之间的直线具有单位范数。
        3、对比递归循环特征
               传统的实例嵌入方法的目标是,如果嵌入空间中的特征相似,则将它们拉近,否则将它们推远。为了实现这一目标,对比学习通过最大化 相似对 相对于 不同对 的相似性来学习获得表示。给定查询q,相应的正样本k^+,以及其他K个负样本\left \{ k^- \right \}_i^K,InfoNCE将对比损失定义为如下所示:其中,其中\tau是温度超参数,用于缩放距离分布,并余弦相似度作为度量来计算正对或负对之间的距离:
        具体来说,在本文中,给定一批输入训练数据,考虑三种构建正负对的方法。


        1、交叉对(C-P):生成器G学习语义属性以生成 合成特征(假特征),尽管判别器D使得合成特征与真实特征相似,本文还尝试对合成特征与其他类别的真实样本之间的关系进行建模。因此,提出了对比学习编码器E_{ctr}来进一步将特征映射到嵌入空间。具体来说,给定一个查询合成特征q_{(fake)},希望他能接近其对应的真实样本特征k^+_{real},同时远离其他真实的K类样本\left \{ k^- _{(real)}\right \}^K_i,可以通过最小化以下函数来实现此目标:

        2、合成对(S-P):除了上述内容,还考虑了合成特征本身之间的距离,以限制它们在训练过程中更具辨别力。具体来说,给定一个查询合成特征q_{(fake)},其正样本可以是k^+_{fake},负样本可以是k^-_{fake}

        3、实数对(R-P):真实的样本特征并没有很好地聚类。为此,本文还尝试对真实样本特征本身之间的关系进行建模
        递归循环特征嵌入:通过优化对比学习特征,认为对比学习编码器E_{ctr} 能够将真实样本特征和合成特征嵌入到判别空间中。假设E_{ctr}^{L}G^L表示表示同一批样本的第L个循环综合特征和对比学习表示,则给出递归循环特征注入范式如:其中,\eta控制特征调制。
        下面的算法总结了整个过程:

        该方法可以根据批次内提出的对比递归循环学习特征更好地区分类间和类内距离。此外,同一批样本的对比学习特征会循环地自我提供给生成器,以供下一次迭代产生更具区分性的特征。
        最后,使用具有对比细化嵌入的生成框架以端到端的方式训练模型 其中,\gamma _1,\gamma _2是控制权重的参数。

广义零样本分类(Generalized zero-shot classification)
        一旦模型被训练为能够为可见类生成视觉特征,则首先由特征生成器G在嵌入空间中生成不可见类特征特征\hat{x}^u=G(z,a^u)代表不可见的类。然后,将广义零样本学习转化为监督学习问题,具体来说,可以训练一个softmax分类器,并对生成的不可见类\hat{x}和真实的可见类x进行分类,可以表示为其中,θ是训练参数,n_b是当前训练批次中的样本数。

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

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

相关文章

【Spring Boot】内网穿透实现远程调用调试

文章目录 1. 本地环境搭建1.1 环境参数1.2 搭建springboot服务项目 2. 内网穿透2.1 安装配置cpolar内网穿透2.1.1 windows系统2.1.2 linux系统 2.2 创建隧道映射本地端口2.3 测试公网地址 3. 固定公网地址3.1 保留一个二级子域名3.2 配置二级子域名3.2 测试使用固定公网地址 4.…

机器学习入门笔记

文章目录 背景具体步骤1.环境搭建2.写个demo1.数据处理2.分割数据集3.用模型训练数据,并得到预测结果4.绘制结果5.评估 背景 最近学习了一些关于机器学习的内容,做个笔记。 具体步骤 1.环境搭建 需要用到的工具:pycharm,anaco…

如何了解蜘蛛池蚂蚁SEO

蜘蛛池是一种基于搜索引擎优化的技术手段,通过模拟蜘蛛爬行行为来提高网站在搜索引擎中的排名,从而增加网站的流量和曝光率。 编辑搜图 如何联系蚂蚁seo? baidu搜索:如何联系蚂蚁SEO? baidu搜索:如何联…

【Pytorch】Fizz Buzz

文章目录 1 数据编码2 网络搭建3 网络配置,训练4 结果预测5 翻车现场 学习参考来自: Fizz Buzz in Tensorflowhttps://github.com/wmn7/ML_Practice/tree/master/2019_06_10Fizz Buzz in Pytorch I need you to print the numbers from 1 to 100, excep…

牛客网BC92逆序输出

答案&#xff1a; #include <stdio.h>int main() {int i0, j0;int arr[10]{0};for(i0;i<10;i) //将10个整数存进数组里{scanf("%d",&arr[i]);}for(j9;j>0;j--) //逆序打印{printf("%d ",arr[j]); //若要求最后一个数后面不打印空格…

【Hive】——CLI客户端(bin/beeline,bin/hive)

1 HiveServer、HiveServer2 2 bin/hive 、bin/beeline 区别 3 bin/hive 客户端 hive-site.xml 配置远程 MateStore 地址 XML <?xml version"1.0" encoding"UTF-8" standalone"no"?> <?xml-stylesheet type"text/xsl" hre…

C# WPF上位机开发(利用tcp/ip网络访问plc)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 c# wpf如果是用来开发非标上位机的&#xff0c;那么和plc的通信肯定是少不了的。而且&#xff0c;大部分plc都支持modbus协议&#xff0c;所以这个…

neo4j安装报错:neo4j.bat : 无法将“neo4j.bat”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

neo4j安装报错&#xff1a; neo4j.bat : 无法将“neo4j.bat”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写&#xff0c;如果包括路径&#xff0c;请确 保路径正确&#xff0c;然后再试一次。 解决办法&#xff1a; 在环境变量中的&#xff0c;用户…

Shopee ERP:提升电商管理效率的终极解决方案

Shopee ERP&#xff08;Enterprise Resource Planning&#xff0c;企业资源规划&#xff09;是一款专为Shopee卖家设计的集成化电商管理软件。通过使用Shopee ERP系统&#xff0c;卖家可以更高效地管理他们的在线商店&#xff0c;实现库存管理、订单处理、物流跟踪、财务管理、…

优先考虑类型安全的异构容器

在Java中&#xff0c;异构容器是一种可以存储不同类型元素的容器。为了提高类型安全性&#xff0c;可以使用泛型和类型安全的异构容器&#xff0c;而不是传统的非类型安全容器。下面是一个例子&#xff0c;演示如何使用类型安全的异构容器 import java.util.HashMap; import j…

alpine linux 之嵌入式搭建

目录 序启动修改源安装 openssh设置开机网络 ip参考 序 最近发现了 alpine linux 这个文件系统&#xff0c;这是一个基于 musl libc 和 busybox 的面向安全的轻量级 Linux 发行版。 下载了他的文件系统&#xff0c;只有 3M 多的压缩包&#xff0c;非常适合嵌入式系统。 地址…

AIGC专题报告:ChatGPT的工作原理

今天分享的AIGC系列深度研究报告&#xff1a;《AIGC专题报告&#xff1a;ChatGPT的工作原理》。 &#xff08;报告出品方&#xff1a;省时查&#xff09; 报告共计&#xff1a;107页 前言 ChatGPT 能够自动生成一些读起来表面上甚至像人写的文字的东西&#xff0c;这非常了不…

计算机毕业设计 基于SpringBoot的日常办公用品直售推荐系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

AWTK 串口屏开发(2) - 数据绑定高级用法

AWTK 串口屏 智能家居示例 1. 功能 这个例子稍微复杂一点&#xff0c;界面这里直接使用了 立功科技 ZDP1440 HMI 显示驱动芯片 例子中的 UI 文件和资源&#xff0c;重点关注数据绑定。在这里例子中&#xff0c;模型&#xff08;也就是数据&#xff09;里包括一台空调和一台咖…

申请香港高才通计划有什么好处和优势?

申请香港高才通计划有什么好处和优势&#xff1f; 据香港特区政府最新消息&#xff0c;截至今年11月底&#xff0c;各项输入人才计划共收到超过20万宗申请&#xff0c;是2022年申请数目的接近四倍。 在香港特区政府积极引进人才的推动下&#xff0c;今年首11个月&#xff0c;超…

FreeModbus--学习函数指针

目录 函数指针 最简单的例子 稍作修改例子 引入协议栈的函数指针 引入协议栈第二处函数指针 函数指针 该协议栈中使用到函数指针&#xff0c;现开展一篇专门存放函数指针的文章。 C语言的函数指针是指向函数的指针变量&#xff0c;可以用来存储和调用函数的地址。在C语言中…

Vue 组件传参 emit

emit 属性&#xff1a;用于创建自定义事件&#xff0c;接收子组件传递过来的数据。 注意&#xff1a;如果自定义事件的名称&#xff0c;和原生事件的名称一样&#xff0c;那么只会触发自定义事件。 setup 语法糖写法请见&#xff1a;《Vue3 子传父 组件传参 defineEmits》 语…

Qt容器QMdiArea 小部件提供一个显示 MDI 窗口的区域

## QMdiArea ## 控件简介 QMdiArea 继承 QAbstractScrollArea。QMdiArea 小部件提供一个显示 MDI 窗口的区域。QMdiArea的功能本质上类似于MDI窗口的窗口管理器。大多数复杂的程序,都使用MDI框架,在 Qt designer 中可以直接将控件 MDI Area 拖入使用。 ## 用法示例 例 qm…

luceda ipkiss教程 49:以pcell的方式定义线路

在ipkiss中&#xff0c;通常以i3.Circuit来设计线路&#xff08;见教程2&#xff09;&#xff0c;以i3.Pcell的框架也可以来设计线路&#xff1a; 以SplitterTree为例&#xff1a; 线路仿真结果&#xff1a; 所有代码如下&#xff1a; from si_fab import all as pdk import…

ShellCode注入程序

程序功能是利用NtQueueApcThreadEx注入ShellCode到一个进程中&#xff0c;程序运行后会让你选择模式&#xff0c;按1为普通模式&#xff0c;所需的常规API接口都是使用Windows原本正常的API&#xff1b;在有游戏保护的进程中Windows原本正常的API无法使用&#xff0c;这时候需要…