超球损失函数

核心思想:把分类问题转换为一个几何空间中的特征分布问题。它不是直接学习一个决策边界来区分类别,而是学习一个映射函数,使得所有数据样本的特征向量都被映射到一个超球面上,并且满足:

  1. 类内紧凑:同一类别的样本特征在球面上聚集得非常紧密。

  2. 类间分离:不同类别的样本特征在球面上被尽可能地推远。

超球指的就是高维空间,在机器学习中,特征空间通常是几百甚至几千维。所有学习到的特征向量都被归一化到固定的长度,因此他们的端点都分布在一个点,固定长度为半径的球面上

函数对比,该函数工作原理

  • 传统Softmax损失

    • 最后一个全连接层的作用像一个线性分类器 。它为每个类别学习一个权重向量(可以看作一个"模板"或"原型")。

    • 损失函数鼓励样本的特征向量与其真实类别的权重向量点积(相似度)最大,与其他类别的点积最小。

    • 问题:在存在偏差或类别不平衡的数据上,学到的决策边界可能会有偏差,模型会过于偏向样本多的类别。特征在空间中的分布可能是任意的扇形。

  • 超球损失函数(如SphereFace, CosFace, ArcFace)

    • 第一步:归一化 。它对权重向量和特征向量都进行L2归一化 ,将它们全部映射到超球面上。这意味着所有向量都被压缩到球面,比较它们之间的相似度只需要看它们之间的角度

    • 第二步:基于角度的间隔最大化 。损失函数不再直接优化点积,而是优化特征向量与权重向量之间的角度 。它引入一个几何间隔 (margin) ,让同类样本之间的角度尽可能小,异类样本之间的角度不仅要大,还要大于一个预设的间隔值 m

    • 效果:这样学到的特征分布会非常清晰:类内方差极小,类间方差极大,并且决策边界在角度空间中是均匀的。

该函数的作用:

  1. 消除模长影响:通过归一化,特征的有效性只由其方向(角度)决定,剥离了无意义的模长信息,使特征分布更纯粹,减轻了预训练特征分布的偏差。

  2. 学习更公正的决策边界 :在超球面上,由于引入了角度间隔,决策边界对于所有类别都更加公平清晰。这迫使模型不去依赖预训练数据中的偏见,而是真正去学习新任务中不同类别之间的本质区别(即角度差异)。

  3. 提升泛化能力:这种在角度空间中间隔最大化的特性,通常能学到泛化能力更强的特征,特别适合少样本或类别不平衡的场景。

  4. 用于解决类别不平衡 (Class Imbalance)领域适应 (Domain Adaptation) 问题。

相关推荐
荼蘼2 小时前
openCV 角点检测与 SIFT 特征提取:原理与实战解析
人工智能·opencv·计算机视觉
掘金安东尼2 小时前
文心快码 3.5S:多智能体自协同,引爆开发者新范式
人工智能
fsnine3 小时前
深度学习——迁移学习
人工智能·深度学习·机器学习
shao9185163 小时前
Gradio全解11——Streaming:流式传输的视频应用(8)——Gemini Live API:实时音视频连接
人工智能·async·gemini·websockets·live api·servertoserver·clienttoserver
程序员小袁3 小时前
LMDeploy 上线实战:零部署清单、QPS–显存估算表与 TurboMind vs vLLM 压测脚本全套指南
人工智能
pan0c233 小时前
机器学习 之 时间序列预测 的 电力负荷预测案例
人工智能·算法·机器学习
Sui_Network3 小时前
GraphQL RPC 与通用索引器公测介绍:为 Sui 带来更强大的数据层
javascript·人工智能·后端·rpc·去中心化·区块链·graphql
武子康3 小时前
AI-调查研究-75-具身智能 从LLM到LBM:大模型驱动下的机器人分层控制架构
人工智能·ai·职场和发展·架构·系统架构·机器人·具身智能