再看SimCSE

news/2024/5/20 10:37:39 标签: 聚类, 机器学习, 算法, 文本相似度, SimCSE

一、概述

在这里插入图片描述

二、要点分析原始ppt解读

2.1 作用:语义表达作用检索+聚类

在这里插入图片描述

2.2 简述:简单的对比学习来做语义表征

  • 预训练+对比学习:最佳的语义表征方法
    • 无监督:dropout
    • 有监督:NLI 蕴含+矛盾数据
  • 原理:
    • 利用对比学习目标,将预训练的embedding进行uniform化
    • 利用监督数据,aligns对齐相同语句的embedding表达
      在这里插入图片描述

2.3 原理:对比学习原理

  • 拉近邻居,push非邻居
    在这里插入图片描述

2.4 目标函数:无监督学习目标函数

  • 正样本:相同句子,独立的dropout mask
  • 负样本:batch内,其他句子的embedding
    在这里插入图片描述

2.5 目标函数:监督学习目标函数

  • 正样本:NLI数据集 蕴含 样本
  • 负样本:batch内的负样本+矛盾样本,原来是两部分啊?相当于利用标注的负样本做了一个补充
    在这里插入图片描述

2.6 主要评估方法:语义相似度任务,而非下游文本分类任务

在这里插入图片描述

2.7 结果:无监督学习结果

在这里插入图片描述

2.8 结果:监督学习结果

在这里插入图片描述

2.9 原因分析:为啥能更好呢?构造无监督正样本对的方法不一样

  • SimCSE:dropout
  • 其他方法:
    • 下个句子增强
    • 同义词替换
    • crop
    • 删除
  • 优点总结:
    • 用他自己来做正样本>>下一个句子来做正样本
    • dropout增强>>其他数据增强
      在这里插入图片描述
      在这里插入图片描述

2.10 embedding表征特点分析:embedding各向异性分析

  • 预训练模型好的alignment,差的uniformity
  • 后处理可以改进uniformity
  • SimCSE:改进uniformity并且保持好的alignment性质
    在这里插入图片描述
    在这里插入图片描述

2.11 最终效果

在这里插入图片描述

2.12 总结

  • SimCSE:对比学习来做句子embedding
    • 无监督:标准dropout来做正样本对
    • 有监督:entailment做正样本,contradiction来做难样本
  • 原因:
    • 可以利用alignment和uniformity来分析不同的模型
    • 理论显示对比学习能改进embedding的uniformity​

http://www.niftyadmin.cn/n/1843305.html

相关文章

ubuntu基础

ubuntu的好处 具有良好的桌面级用户体验流行开发PHP,前端,python等绝佳体验学习资料基于ubuntu下载Ubuntu 16.04.2 LTS apt-get IP地址获取ifconfig sudo用来以其它身份来执行命令执行系统管理员才能完成的事情 apt-get自动从互联网的软件仓库中搜索&…

完整的PHP依赖倒置原则例程

设计模式中依赖倒置原则(Dependence Inversion Principle)的定义是“高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。”理解起来并不难,但在具体实现上,网上给出的很多PHP示例…

DEBERTA: DECODING-ENHANCED BERT WITH DIS- ENTANGLED ATTENTION glue榜首论文解读

一、概览 二、详细内容 abstract a. 两个机制来improve bert和 roberta ⅰ. disentangled attention mechanism ⅱ. enhanced mask decoder b. fine-tuning阶段 ⅰ. virtual adversarial training -> 提升泛化 c. 效果 ⅰ. 对nlu和nlg下游任务,提升都比较大 ⅱ.…

一个通用的utils脚本

utils.py json保存&加载大文件序列化数据保存&加载创建目录log初始化随机种子初始化耗时统计 import pandas as pd import json import numpy as np import joblib import os from contextlib import contextmanager import time import logging import randomdef loa…

seq2seq模型学习总结【用作query rewrite问题生成模型】

一、概述 鱼与熊掌兼得:融合检索和生成的SimBERT模型:https://kexue.fm/archives/7427 SimBERTv2来了!融合检索和生成的RoFormer-Sim模型:https://kexue.fm/archives/8454 代码 v1:https://github.com/ZhuiyiTechno…

Esimcse:Enhanced Sample Building Method for Contrastive Learning of Unsupervised Sentence Embedding论

1 Abstract simcse: 两个文本不同dropout放到transformer里面,无监督来学习可能的缺点:embedding的时候,两个句子的长度都是一致的,这里可能会有biased,因为线上可不是这样的。实验统计观察,发现…

DeBERTaV3: Improving DeBERTa using ELECTRA-Style Pre-Training with Gradient-Disentangled Embedding解读

一、概述 二、详细内容 abstract a. deberataV3, debearta的改进版本 b. 方法1(改进mlm):通过使用RTD来替换原始的MLM任务,一个更有效的简单的预训练方法 c. 方法2(改进electra): ⅰ. 原因&a…

jenkins 集成环境搭建

http://www.cnblogs.com/jenniferhuang/p/3355252.html转载于:https://www.cnblogs.com/ericazy/p/7229755.html