2024-11-25
深度学习
00

看到一个资料:

https://github.com/QwenLM/Qwen2.5/blob/main/docs/source/framework/LlamaIndex.rst

微调模型的时候有加一些标记,所以后面用的时候给入标记会是一种很强的监督:

2024-11-25
深度学习
00
bash
展开代码
from sentence_transformers import SentenceTransformer model = SentenceTransformer("/data/xiedong/Conan-embedding-v1") sentences = [ "今天天气真好。", "外面的阳光真灿烂!", "他开车去了体育馆。", "The weather is really nice today." ] embeddings = model.encode(sentences) similarities = model.similarity(embeddings, embeddings) print(similarities) print(similarities.shape)
2024-11-25
深度学习
00

个人总结

预训练阶段用对比学习,清洗后的数据用于预训练。题目-内容文本对、输入-输出文本对、问题-答案文本对、提示-响应文本对,都是训练数据。

动态困难负样本挖掘:训练过程中,困难样本会不断改变,重新挖掘。

跨GPU批次平衡损失:以往都是不同embedding任务交替训练,认为这样会震荡,直接多个任务一起BP。

摘要

随着RAG(检索增强生成)技术的日益流行,嵌入模型的能力也引起了越来越多的关注。嵌入模型通常通过对比学习进行训练,其中负样本是关键组成部分。以往的研究提出了多种困难负样本挖掘策略,但这些策略通常作为预处理步骤来应用。在本文中,我们提出了conan-embedding模型,旨在最大化利用更多、更高质量的负样本。具体来说,由于模型处理预处理负样本的能力会随着训练的进行而演变,我们提出了动态困难负样本挖掘方法,旨在使模型在训练过程中暴露于更多具有挑战性的负样本。其次,对比学习需要尽可能多的负样本,但由于GPU内存的限制,这一需求受到了制约。因此,我们使用跨GPU平衡损失(Cross-GPU balancing Loss)来提供更多的负样本进行嵌入训练,并平衡多个任务的批量大小。此外,我们还发现来自大型语言模型(LLM)的提示-响应对(prompt-response pairs)可以用于嵌入训练。我们的方法有效提升了嵌入模型的能力,目前在中文大规模文本嵌入基准(MTEB)排行榜上排名第一。

2024-11-25
深度学习
00
2024-11-22
工具使用
00
2024-11-21
深度学习
00
2024-11-21
深度学习
00

Transformer模型中的位置编码

Transformer模型中的位置编码(Positional Encoding)用于为模型提供序列中单词的位置信息,因为Transformer本身是一个无序列的模型,它并不像RNN那样具有顺序处理的能力。

位置编码的公式通常分为两种形式:正弦和余弦函数,具体形式如下:

2024-11-20
深度学习
00

WO、AWQ、GPTQ 与 SQ 的对比

随着深度学习模型规模的不断扩大,模型的部署和推理变得更加昂贵。量化技术通过降低模型的计算精度(如从浮点数到整数)显著减少模型的存储需求和计算复杂度,是优化大模型的重要手段。目前有多种量化方法被提出,它们各自有针对性的特点和适用场景。本文将介绍以下四种主流量化技术及其差异:

  1. WO:仅权重量化(Weight Only Quantization)
  2. AWQ:激活感知权重量化(Activation-aware Weight Quantization)
  3. GPTQ:生成预训练 Transformer 量化(Generative Pretrained Transformer Quantization)
  4. SQ:平滑量化(Smooth Quantization)
2024-11-20
深度学习
00
2024-11-19
DL论文
00

https://arxiv.org/abs/2308.02223

ESRL: Efficient Sampling-based Reinforcement Learning for Sequence Generation

论文的核心贡献主要包括两方面:

两阶段采样:传统的RL训练在序列生成任务中通常需要为每个生成的候选序列存储计算图,而这会消耗大量内存。为了优化这一点,ESRL采用了两阶段采样方法:在第一阶段,模型采用自回归方式生成候选序列,但不进行反向传播,避免了计算图的存储。第二阶段是计算这些候选序列的概率,利用Transformer的并行计算能力减少了计算图存储的需求。尽管增加了计算时间,但减少了内存消耗。

动态采样:ESRL还引入了动态采样机制,通过估计模型的能力(例如使用BLEU或熵值等度量)来调整采样的大小和温度。具体来说,当模型的能力较强时,减少采样数量;而当能力较弱时,增加采样量以提高探索效果。通过这种方法,ESRL避免了过度采样,从而进一步提高了训练效率。

一切都在此图中,以往模型的采样没有技巧,花费显存和时间,ESRL让这个过程变得高效: