《基于自适应正负样本对比学习的特征提取框架》-核心公式提炼简洁版 2022年neural networks

news2025/3/20 6:00:20

论文源地址

以下是从文档中提取的关于“基于对比学习的特征提取框架(CL-FEFA)”中正负样本对比学习实现的技术细节,包括详细的数学公式、特征提取过程以及特征表示方式的说明。


1. 正负样本的定义与构造

在CL-FEFA框架中,正负样本的定义是动态且自适应的,基于特征提取的结果,而不是预先固定的。这种自适应性是CL-FEFA区别于传统对比学习(如SimCLR、SupCon)的一个关键点。

定义方式:
  • 指示矩阵 H H H

H i , j = { 0 if  x i  and  x j  are labeled and  c i ≠ c j 1 otherwise H_{i,j} = \begin{cases} 0 & \text{if } x_i \text{ and } x_j \text{ are labeled and } c_i \neq c_j \\ 1 & \text{otherwise} \end{cases} Hi,j={01if xi and xj are labeled and ci=cjotherwise

  • H i , j H_{i,j} Hi,j 是一个 n × n n \times n n×n 的矩阵,其中 n n n 是样本数量。

  • x i x_i xi x j x_j xj 是已标记样本且属于不同类别时, H i , j = 0 H_{i,j} = 0 Hi,j=0;其他情况下(包括未标记样本或同类样本), H i , j = 1 H_{i,j} = 1 Hi,j=1

  • 相似性矩阵 S S S

    • S i , j S_{i,j} Si,j 表示样本 x i x_i xi x j x_j xj 在潜在结构空间(即特征提取后的低维空间)中的相似性关系。
    • S S S 是一个 n × n n \times n n×n 的矩阵,通过优化过程动态学习得到。
  • 正负样本判定

    • 如果 H i , j S i , j ≠ 0 H_{i,j} S_{i,j} \neq 0 Hi,jSi,j=0,则 x i x_i xi x j x_j xj 被定义为一对正样本。
    • 如果 H i , j S i , j = 0 H_{i,j} S_{i,j} = 0 Hi,jSi,j=0,则 x i x_i xi x j x_j xj 被定义为一对负样本。
构造过程:
  • CL-FEFA通过特征提取的结果(即低维嵌入 Y = P T X Y = P^T X Y=PTX)动态调整 S i , j S_{i,j} Si,j,从而构造正负样本。
  • 这种方法避免了传统对比学习中依赖数据增强或预定义规则的局限性,使得正负样本更贴近数据的潜在结构。

2. CL-FEFA的数学模型与优化目标

CL-FEFA的目标是通过InfoNCE损失函数提取判别性特征,同时优化投影矩阵 P P P 和相似性矩阵 S S S

优化问题:

min ⁡ P , S L = ∑ i = 1 n ∑ j = 1 n − H i , j S i , j log ⁡ f ( y i , y j ) ∑ k = 1 n f ( y i , y k ) + γ ∥ S ∥ F 2 \min_{P, S} L = \sum_{i=1}^n \sum_{j=1}^n -H_{i,j} S_{i,j} \log \frac{f(y_i, y_j)}{\sum_{k=1}^n f(y_i, y_k)} + \gamma \|S\|_F^2 P,SminL=i=1nj=1nHi,jSi,jlogk=1nf(yi,yk)f(yi,yj)+γSF2

s.t. ∀ i , S i T 1 = 1 , 0 ⩽ S i ⩽ 1 , rank ⁡ ( L S ) = n − c \text{s.t.} \quad \forall i, S_i^T \mathbf{1} = 1, 0 \leqslant S_i \leqslant 1, \operatorname{rank}(L_S) = n - c s.t.i,SiT1=1,0Si1,rank(LS)=nc

  • 符号解释

    • X = [ x 1 , x 2 , … , x n ] ∈ R D × n X = [x_1, x_2, \dots, x_n] \in \mathbb{R}^{D \times n} X=[x1,x2,,xn]RD×n:训练样本集, D D D 是原始特征维度, n n n 是样本数。
    • Y = [ y 1 , y 2 , … , y n ] ∈ R d × n Y = [y_1, y_2, \dots, y_n] \in \mathbb{R}^{d \times n} Y=[y1,y2,,yn]Rd×n:低维嵌入, Y = P T X Y = P^T X Y=PTX d ≪ D d \ll D dD 是嵌入维度。
    • P ∈ R D × d P \in \mathbb{R}^{D \times d} PRD×d:投影矩阵,将高维数据映射到低维空间。
    • f ( y i , y j ) = exp ⁡ ( y i T y j ∥ y i ∥ ∥ y j ∥ σ ) f(y_i, y_j) = \exp\left(\frac{y_i^T y_j}{\|y_i\| \|y_j\| \sigma}\right) f(yi,yj)=exp(yi∥∥yjσyiTyj):相似性函数,基于余弦相似度, σ \sigma σ 是正参数。
    • γ \gamma γ:正则化参数,控制 S S S 的Frobenius范数。
    • L S = D S − S + S T 2 L_S = D_S - \frac{S + S^T}{2} LS=DS2S+ST:图拉普拉斯矩阵, D S D_S DS 是度矩阵, rank ⁡ ( L S ) = n − c \operatorname{rank}(L_S) = n - c rank(LS)=nc 约束 S S S 的连通分量数为 c c c
  • 目标解释

    • 第一项 − H i , j S i , j log ⁡ f ( y i , y j ) ∑ k = 1 n f ( y i , y k ) -H_{i,j} S_{i,j} \log \frac{f(y_i, y_j)}{\sum_{k=1}^n f(y_i, y_k)} Hi,jSi,jlogk=1nf(yi,yk)f(yi,yj) 是InfoNCE损失,旨在最大化正样本对的相似性,同时最小化负样本对的相似性。
    • 第二项 γ ∥ S ∥ F 2 \gamma \|S\|_F^2 γSF2 是正则化项,防止 S S S 过拟合。
    • 约束条件确保 S S S 是一个有效的概率分布(每列和为1),且低维空间的结构具有 c c c 个连通分量(在监督场景中 c c c 为类别数)。

3. 特征提取与表示

特征提取过程:
  • 输入:高维样本集 X ∈ R D × n X \in \mathbb{R}^{D \times n} XRD×n
  • 投影:通过投影矩阵 P P P X X X 映射到低维空间,得到嵌入 Y = P T X Y = P^T X Y=PTX,其中 Y ∈ R d × n Y \in \mathbb{R}^{d \times n} YRd×n
  • 自适应构造
    • 使用 Y Y Y 计算相似性矩阵 S S S,从而定义正负样本。
    • 根据InfoNCE损失优化 P P P S S S,使得正样本在低维空间中更紧凑(intra-class compact),负样本更分散(inter-class dispersed)。
特征表示:
  • 低维嵌入 Y Y Y
    • 每个样本 x i x_i xi 被表示为 y i = P T x i ∈ R d y_i = P^T x_i \in \mathbb{R}^d yi=PTxiRd
    • y i y_i yi x i x_i xi 在低维空间中的特征表示,保留了原始数据的判别性信息。
  • 相似性度量
    • f ( y i , y j ) = exp ⁡ ( y i T y j ∥ y i ∥ ∥ y j ∥ σ ) f(y_i, y_j) = \exp\left(\frac{y_i^T y_j}{\|y_i\| \|y_j\| \sigma}\right) f(yi,yj)=exp(yi∥∥yjσyiTyj) 表示 y i y_i yi y j y_j yj 的相似性,基于归一化后的内积。
    • 通过优化, f ( y i , y j ) f(y_i, y_j) f(yi,yj) 对于正样本对更大,对于负样本对更小。

4. 互信息与理论支持

CL-FEFA的一个重要理论依据是其优化目标等价于最大化正样本之间的互信息。

数学推导:
  • 定义 W i , j = H i , j S i , j W_{i,j} = H_{i,j} S_{i,j} Wi,j=Hi,jSi,j,则:
    • W i , j ≠ 0 W_{i,j} \neq 0 Wi,j=0 表示 x i x_i xi x j x_j xj 是正样本。
    • W i , j = 0 W_{i,j} = 0 Wi,j=0 表示 x i x_i xi x j x_j xj 是负样本。
  • 优化目标可重写为:

min ⁡ P , S L = ∑ i = 1 n ∑ j = 1 n − W i , j log ⁡ [ p ( W i , j ≠ 0 ∣ y j , y i ) ] + γ ∥ S ∥ F 2 \min_{P, S} L = \sum_{i=1}^n \sum_{j=1}^n -W_{i,j} \log [p(W_{i,j} \neq 0 | y_j, y_i)] + \gamma \|S\|_F^2 P,SminL=i=1nj=1nWi,jlog[p(Wi,j=0∣yj,yi)]+γSF2

  • 通过贝叶斯公式和假设,推导出:

l i = ∑ j = 1 n W i , j log ⁡ [ 1 + ( n n i − 1 ) p ( y j ) p ( y i ) p ( y j , y i ) ] l_i = \sum_{j=1}^n W_{i,j} \log \left[1 + \left(\frac{n}{n_i} - 1\right) \frac{p(y_j) p(y_i)}{p(y_j, y_i)}\right] li=j=1nWi,jlog[1+(nin1)p(yj,yi)p(yj)p(yi)]

  • n i n_i ni x i x_i xi 的正样本数。
  • p ( y j , y i ) p(y_j, y_i) p(yj,yi) 是联合分布, p ( y j ) p ( y i ) p(y_j) p(y_i) p(yj)p(yi) 是独立分布。
  • 进一步推导:

l i ≥ log ⁡ [ n n i ] − I ( y j , y i ) l_i \geq \log \left[\frac{n}{n_i}\right] - I(y_j, y_i) lilog[nin]I(yj,yi)

  • I ( y j , y i ) I(y_j, y_i) I(yj,yi) y j y_j yj y i y_i yi 的互信息。
  • 因此,最小化 L L L 等价于最大化所有正样本对的互信息 I ( y j , y i ) I(y_j, y_i) I(yj,yi)
意义:
  • 互信息 I ( y j , y i ) I(y_j, y_i) I(yj,yi) 捕捉了正样本之间的非线性统计依赖性,提供了CL-FEFA在特征提取中优势的理论支持。
  • 这使得提取的特征 Y Y Y 更能反映数据的真实潜在结构。

5. 优化策略

CL-FEFA采用交替优化策略求解 P P P S S S

优化问题变换:

min ⁡ P , S , F L = ∑ i = 1 n ∑ j = 1 n − H i , j S i , j log ⁡ f ( y i , y j ) ∑ k = 1 n f ( y i , y k ) + γ ∥ S ∥ F 2 + 2 λ Tr ⁡ ( F T L S F ) \min_{P, S, F} L = \sum_{i=1}^n \sum_{j=1}^n -H_{i,j} S_{i,j} \log \frac{f(y_i, y_j)}{\sum_{k=1}^n f(y_i, y_k)} + \gamma \|S\|_F^2 + 2\lambda \operatorname{Tr}(F^T L_S F) P,S,FminL=i=1nj=1nHi,jSi,jlogk=1nf(yi,yk)f(yi,yj)+γSF2+2λTr(FTLSF)

s.t. ∀ i , S i T 1 = 1 , 0 ⩽ S i ⩽ 1 , F ∈ R n × c , F T F = I \text{s.t.} \quad \forall i, S_i^T \mathbf{1} = 1, 0 \leqslant S_i \leqslant 1, F \in \mathbb{R}^{n \times c}, F^T F = I s.t.i,SiT1=1,0Si1,FRn×c,FTF=I

  • F F F 是辅助变量, λ \lambda λ 是正参数。
交替优化:
  1. 固定 P P P S S S,优化 F F F

min ⁡ F Tr ⁡ ( F T L S F ) , s.t. F T F = I \min_F \operatorname{Tr}(F^T L_S F), \quad \text{s.t.} \quad F^T F = I FminTr(FTLSF),s.t.FTF=I

  • 解为 L S L_S LS c c c 个最小特征值对应的特征向量。
  1. 固定 P P P F F F,优化 S S S

min ⁡ S ∑ j = 1 n ( − H i , j S i , j log ⁡ f ( y i , y j ) ∑ k = 1 n f ( y i , y k ) + γ S i , j 2 + λ ∥ f i − f j ∥ 2 S i , j ) \min_S \sum_{j=1}^n \left(-H_{i,j} S_{i,j} \log \frac{f(y_i, y_j)}{\sum_{k=1}^n f(y_i, y_k)} + \gamma S_{i,j}^2 + \lambda \|f_i - f_j\|^2 S_{i,j}\right) Sminj=1n(Hi,jSi,jlogk=1nf(yi,yk)f(yi,yj)+γSi,j2+λfifj2Si,j)

  • 对每个 i i i 独立求解,转化为向量形式并优化。

总结

  • 正负样本实现:通过 H H H 和动态学习的 S S S 自适应构造,基于特征提取结果。
  • 数学公式:核心是InfoNCE损失和互信息最大化,详见优化目标和推导。
  • 特征提取与表示:从 X X X 通过 P P P 映射到 Y Y Y,低维特征 y i y_i yi 保留判别性并反映潜在结构。
  • 优势:自适应性、鲁棒性(对噪声数据)和理论支持(互信息)。

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

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

相关文章

用ASCII字符转化图片

代码 from PIL import Image# 定义 ASCII 字符集,从最暗到最亮 ASCII_CHARS "%#*-:. "def resize_image(image, new_width100):width, height image.sizeratio height / widthnew_height int(new_width * ratio)resized_image image.resize((new_wi…

蓝桥与力扣刷题(蓝桥 组队)

题目:作为篮球队教练,你需要从以下名单中选出 1 号位至 5 号位各一名球员,组成球队的首发阵容。 每位球员担任 1号位至 5号位时的评分如下表所示。请你计算首发阵容 1 号位至 5 号位的评分之和最大可能是多少? 本题为填空题&…

AI Agent系列(六) -基于ReAct架构搭建LLM Agent(Deepseek)

AI Agent系列【六】 一、 ReAct1.1 ReAct 的处理过程:1.1 代码结构 二、 Python代码实现2.1 通过Zero-shot 实现python代码实例Python代码示例1:python代码实现示例2 一、 ReAct ReAct 是 Reseaning 和 Action 两个词的前缀合成,代表着先推…

AnyTouch:跨多个视觉触觉传感器学习统一的静态动态表征

25年3月来自人大、武汉科技大学和北邮的论文“AnyTouch: Learning Unified Static-dynamic Representation Across Multiple Visuo-tactile Sensors”。 视觉触觉传感器旨在模拟人类的触觉感知,使机器人能够精确地理解和操纵物体。随着时间的推移,许多精…

YOLOv11 目标检测

本文章不再赘述anaconda的下载以及虚拟环境的配置,博主使用的python版本为3.8 1.获取YOLOv11的源工程文件 链接:GitHub - ultralytics/ultralytics: Ultralytics YOLO11 🚀 直接下载解压 2.需要自己准备的文件 文件结构如下:红…

VSCode C/C++ 环境搭建指南

一、前言 Visual Studio Code(简称 VSCode)是一款轻量级且功能强大的跨平台代码编辑器,凭借丰富的插件生态和高度的可定制性,深受开发者喜爱。对于 C/C 开发者而言,在 VSCode 中搭建开发环境,能够获得灵活…

Python 中下划线 “_” 的多面性:从变量到约定

# Python中下划线“_”的多面性:从变量到约定 在Python的语法体系里,下划线“_”看似毫不起眼,实则扮演着极为重要且多样化的角色。它不仅能作为普通变量参与编程,更在多个特殊场景下有着独特的用途与约定。深入理解下划线的各种…

Vue3项目开发:状态管理实践指南

# Vue3项目开发:状态管理实践指南 一、引言 背景介绍 在Vue项目中,状态管理是一个非常重要的话题。合理的状态管理能够帮助我们更好地组织和管理数据,提升项目的可维护性和可扩展性。本文将深入探讨Vue3项目中状态管理的最佳实践,…

数据结构-------栈

顺序栈: 一、数据结构定义 数据元素 DATATYPE typedef struct person {char name[32];char sex;int age;int score; } DATATYPE;顺序栈结构 SeqStack typedef struct list {DATATYPE *head; // 栈空间首地址int tlen; // 栈总容量(total leng…

机器学习概要

文章目录 一、什么是机器学习 二、机器学习的种类 1. 有监督学习 2. 无监督学习 3.强化学习 三、机器学习的应用 四、机器学习的步骤 1. 数据的重要性 2. 数据和学习的种类 3. 可视化 一、什么是机器学习 机器学习指的是计算机根据给定的问题、课题或环境进行学习&a…

【LangChain入门 2 Model组件】开始!LLM Models简单对话

文章目录 一、使用langchain_ollama二、采用DeepSeek的API三、Model 介绍3.1 OllamaLLM 预训练模型3.2 ChatOllama 聊天预训练模型3.3 OllamaEmbeddings 实现一个helloworld,跑通一个简单的对话。 后面章节会正式介绍LangChain的各个功能。 后台llm的端口可以任意选…

C++20 中线程管理与取消机制的深度剖析

文章目录 std::jthread:更智能的线程管理背景与优势构造函数与 std::stop_token 的集成 std::stop_token、std::stop_source 和 std::stop_callback:灵活的取消机制std::stop_token:取消请求的指示器std::stop_source:取消请求的发…

Vue3 核心特性解析:Suspense 与 Teleport 原理深度剖析

Vue3 核心特性解析:Suspense 与 Teleport 原理深度剖析 一、Teleport:突破组件层级的时空传送 1.1 实现原理图解 #mermaid-svg-75dTmiektg1XNS13 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-s…

FPGA——实现LED流水灯

文章目录 一、Quartusll_18.1和VS Code软件的关联二、DE2-115的时钟电路三、流水灯的分层次设计四、总结 一、Quartusll_18.1和VS Code软件的关联 1.先打开Quartus II 软件,然后选择菜单栏“Tools”下的“Options…”。 2.点击“Options…”,在弹出的对…

Excel 小黑第12套

对应大猫13 涉及金额修改 -数字组 -修改会计专用 VLOOKUP函数使用(查找目标,查找范围(F4 绝对引用),返回值的所在列数,精确查找或模糊查找)双击填充柄就会显示所有值 这个逗号要中文的不能英…

滚动元素的新api

点击的时候需要双重视图滚动 itemClick(id) {// 滚动到对应位置this.$nextTick(() > {// 找到对应 id 在 initList2 中的索引const index this.initList2.findIndex((item) > item.id Number(id));if (index ! -1) {// 获取所有菜单项const menuItems document.queryS…

多机调度问题(C语言)

代码如下&#xff1a; #include<stdio.h> #include<stdlib.h>int compare(void* a, void* b)//比较函数&#xff0c;用于qsort按处理时间从大到小排序 {return *(int*)a - *(int*)b; }int LPT(int jobs[], int n, int m)//多机调度问题的LPT算法 {qsort(jobs, n, …

烽火HG680-KB_海思HI3798MV310_安卓9.0_U盘强刷固件包及注意点说明

之前发布过这个固件包&#xff0c;关于烽火HG680-KA&#xff0f;HG680-KB_海思HI3798MV310_安卓9.0_U盘强刷固件包详细说明一下&#xff0c;汇总总结一些常遇到的情况&#xff0c;这次固件会分开发布&#xff0c;以免混淆。 上一个帖子地址&#xff1a;烽火HG680-KA&#xff0…

996引擎 - 红点系统

996引擎 - 红点系统 总结NPC 红点(TXT红点)Lua 红点1. Red_Point.lua2. UI_Ex.lua参考资料以下内容是在三端 lua 环境下测试的 总结 红点系统分几个部分组成。 M2中设置变量推送。 配置红点表。 Envir\Data\cfg_redpoint.xls 2.1. UI元素中找到ID填写 ids 列。 主界面挂载…

3.17BUUCTF练习day1

BUUCTF练习day1 [极客大挑战 2019]EasySQL1&#xff08;字符型&#xff0c;账号密码型&#xff0c;get型&#xff09; 判断闭合方式 在用户名输入1‘&#xff0c;此时密码先输入任何数字时&#xff0c;出现语法错误 说明闭合方式为单引号闭合&#xff0c;在判断完闭合方式后…