- 博客(114)
- 收藏
- 关注
原创 大模型学习笔记 - LLM 对齐优化算法 DPO
LLM - DPOLLM - DPODPO 概述DPO 目标函数推导DPO 目标函数梯度的推导DPO 概述大模型预训练是从大量语料中进行无监督学习,语料库内容混杂,训练的目标是语言模型损失,任务是next token prediction,生成的token 不可控,为了让大模型能生成符合人类偏好的答案(无毒无害等)一般都会进行微调和人类对齐,通常采用的方法是 基于人类反馈的强化学习方法RLHF. RLHF 是一个复杂且经常不稳定的过程,RLHF 分为2个步骤:首先,训练一个SFT
2024-08-24 19:48:03
727
原创 大模型学习笔记 - LLM 之 LLaMA系列(待更新)
LLaMA: Open and Efficient Foundation Language ModelsLlama 2: Open Foundation and Fine-Tuned Chat Models (LLama2 & LLama2-Chat)LLama 3 | LLama 3.1涉及到的基础知识点:涉及到的基础知识点:LLama2:我们还将预训练语料库的大小增加了 40%,增加了模型的上下文长度,并采用分组查询注意力(Ainslie et al., 2023)。我们正在发布具有 7B、13
2024-08-22 22:56:38
312
原创 大模型学习笔记 - LLM 之 attention 优化
注意力机制最早来源于Transformer,Transformer中的注意力机制分为2种 Encoder中的 全量注意力机制和 Decoder中的带mask的注意力机制。这两种注意力机制 都是 MultiHeadAttention 由Key,Query, Value 三个矩阵组成。由于经典的MHA的计算时间和缓存占用量都是O(n^2)级别的(n是序列长度),这就意味着如果序列长度变成原来的 2 倍,显存占用量就是原来的 4 倍,计算时间也是原来的 4 倍。
2024-08-22 22:52:59
726
原创 大模型学习笔记 - LLM 解码与部署
当完成训练后,我们就可以将大语言模型部署到真实场景中进行使用。大语言模型是通过文本生成的方式进行工作的。在自回归架构中,模型针对输入内容(即提示文本,详见第10 章)逐个单词生成输出内容的文本。这个过程一般被称为解码。下面针对解码策略、加速方法、部署策略、压缩方法进行介绍。
2024-08-04 20:21:40
671
原创 大模型学习笔记 - LLM 之RLHF人类对齐的简单总结
LLM-人类对齐1. RLHF(Reinforcement Learning from Human Feedback, RLHF),基于人类反馈的强化学习2 奖励模型训练3 强化学习训练3.1 PPO介绍3.2 进阶的RLHF的介绍3.2.1. 过程监督奖励模型3.2.2. 基于AI反馈的强化学习3.2.3. 非强化学习的对齐方法4 关于SFT和RLHF的进一步讨论本篇完全参考大语言模型综述,学习完大模型学习笔记 - InstructGPT中的微调与对齐。
2024-08-04 17:50:38
695
原创 大模型学习笔记 - InstructGPT中的微调与对齐
LLM 我们不一定要预训练模型,但是一定要会微调。InstructGPT更是微调的最经典的文章。这里详细介绍InstructGPT的微调技术。
2024-08-04 17:05:49
945
原创 大模型学习笔记 - LLM 预训练
LLM 模型预训练LLM 模型预训练1. 预训练任务2. 优化参数设置2.1 基于批次数据的训练2.2 学习率2.3 优化器2.4 稳定优化技术3. 可扩展的训练技术3.1 3D并行训练3.2 零冗余优化器3.3 激活重计算3.4 混合精度训练4. 模型参数量计算与效率分析4.1 参数量估计4.2 训练运算量估计4.3 训练时间估计4.4 训练显存估计5. 预训练代码实践1. 预训练任务常用的预训练任务主要分为三类:语言建模(Languag
2024-07-21 16:23:39
915
原创 大模型学习笔记 - LLM模型架构
具体来说,滑动窗口注意力设置了一个大小为𝑤 的窗口,对每个词元𝑢𝑡,只对窗口内的词元[𝑢𝑡−𝑤+1, . . . , 𝑢𝑡 ] 进行注意力计算,从而将复杂度降低到𝑂(𝑤𝑇)。来自于《Mixtral of Experts》,Mixtral 8x7B 是一种稀疏的混合专家(稀疏 MoE)模型,目前是性能最佳的大型语言模型(LLM)之一,同时也是最受人关注的一种公开可用的 LLM。大语言模型与早期的预训练语言模型相比,主要是使用了更长的向量维度、更深的层数、更大的数据集、进而包含了更大规模的模型参数。
2024-07-20 22:40:05
1195
原创 A Survey for In-context Learning
(1)最近的研究探索了自然语言之外的语境学习,取得了有希望的结果。正确格式化的数据(例如,用于视觉语言任务的交错图像-文本数据集)和架构设计是激活上下文学习潜力的关键因素。在更复杂的结构空间(如图形数据)中探索它是具有挑战性和前景的(Huang et al.,2023a)。(2) 语境中的文本学习示范设计和选择的发现不能简单地转移到其他模式。需要进行特定领域的调查,以充分利用各种模式的情境学习的潜力。
2023-08-14 14:58:03
717
原创 Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?
大语言模型能够通过上下文学习-只需要在推理阶段加入一些输入-标签的示例对,就能完成对新输入文本的预测。但是,对模型是如何学习,示例的哪些方面会影响最终的任务效果,我们知之甚少。在这篇纹章中,我们揭示了 正确的输入-标签示例对不是必须的,随机替换示例中的标签几乎不会影响效果,这个结论在12个不同的模型上是一致的,包括gpt3。相反,我们发现示例的其他方面是最终任务效果的核心驱动,包括:标签的空间,输入文本的分布,整体序列的格式。
2023-08-13 18:14:50
466
原创 推荐系统中 纯用户冷启动问题研究
纯冷启动问题Pure cold star problem区别于一般冷启动cold star的一点是无法从第三方获取任何有关用户的信息,即它指的是推荐系统(RS)的功能,可为没有历史数据的用户提供有用的推荐。作者基于用户覆盖率最大化引入了两个新的RS来缓解此问题:Max-Coverage 和 Category-Exploration。这项工作旨在增强向初次用户发布的推荐,从而缓解纯冷启动问题。系统做出的假设:因受欢迎程度,新近度和正面评分而产生偏差的商品有可能满足大多数首次使用者的兴趣,但并非总是如此。
2022-08-21 17:45:08
717
1
原创 机器学习评价指标ROC中 macro,micro 的区别
macro:每种类别下,都可以得到m个测试样本为该类别的概率(矩阵P中的列)。所以,根据概率矩阵P和标签矩阵L中对应的每一列,可以计算出各个阈值下的假正例率(FPR)和真正例率(TPR),从而绘制出一条ROC曲线。这样总共可以绘制出n条ROC曲线。最后对n条ROC曲线取平均,即可得到最终的ROC曲线。micro:首先,对于一个测试样本:1)标签只由0和1组成,1的位置表明了它的类别(可对应二分类问题中的‘’正’’),0就表示其他类别(‘’负‘’);2)要是分类器对该测试样本分类正确,则该样本标签中1对应的
2021-06-19 16:40:05
9044
原创 NRMS: Neural News Recommendation with Multi-Head Self-Attention
NRMSMSRA 2019年的多头注意力机制的神经网络推荐算法这里做个简单的总结
2021-05-10 09:47:04
2098
原创 推荐系统有关博客文章
简单汇总一下,方便后面查看【基础】推荐系统教程推荐系统学习清单推荐系统/计算广告/机器学习/CTR预估资料汇总排序学习杂谈-上 排序学习杂谈-下推荐系统随笔推荐系统中的排序学习推荐系统技术演进趋势:从召回到排序再到重排deeplearning 用来做推荐系统基于矩阵分解的推荐算法基于协同过滤的推荐算法文本内容分析算法DPP行列式点阵在推荐系统中的应用【各大公司应用】得物推荐系统Transformer 在美团搜索排序中的实践Embedding在大厂的应用推荐系统Embed
2021-04-06 15:38:37
219
原创 推荐系统中的排序概述
推荐系统中的排序学习1.为什么需要排序学习1.1 排序学习在推荐领域的重要作用2.排序学习框架2.1.基本流程2.2.特征提取2.3.标签获取2.3.1人工标注2.3.2 日志抽取3.排序学习设计方法3.1.单点法(Pointwise)推荐领域的 Pointwise 排序学习3.2 配对法(Pairwise)Pointwise与Pairwise的结合方案3.3 列表法(Listwise)排序学习(Learning to Rank,LTR),也称机器排序学习(Machine-learned Ranking,
2021-03-16 21:43:13
1948
1
原创 排序算法 LTR 的评价指标
排序算法评价指标排序指标1.1 MRR1.2 MAP1.3 NDCG1.4 ERR最近想要总结一下 LTR的算法,虽然DL的出现已经可以快速替代了LTR的方法,但是工业界还有很多LTR的应用。先讲解LTR的评价指标排序指标信息检索和推荐系统常用排序质量评分有4种:MRR(Mean Reciprocal Rank):平均倒数排名。 通用的对搜索推荐算法进行评价的机制,即第一个结果匹配,分数为1,第二个匹配分数为0.5,第n个匹配分数为1/n,如果没有匹配的句子分数为0。最终的分数为所有得分之和。
2021-03-13 17:25:41
1597
2
原创 大数据的技术生态,Hadoop,Hive,Spark之间的关系
这个内容摘抄自知乎一个问题的答案,希望可以把大数据生态圈的技术理清楚。大数据技术本质上无非4个核心问题:存储:海量的数据怎么有效存储?主要包括 HDFS, Kafka;计算:海量的数据怎么快速计算?主要包括:MapReduce,Spark,Flink等;查询:海量的数据怎样快速查询?主要包括Nosql和Olap,Nosql包括Hbase\Cassandra等,其中olap包括kylin,impla等,其中Nosql主要解决随机查询、Olap技术主要解决关联查询。挖掘:海量数据怎样挖掘出隐藏的知识
2020-12-28 12:09:36
681
原创 推荐系统的论文阅读更新计划
基于Embedding+MLP的结构DeepCrossing : 基于Embedding+MLP+Resnet的经典DNN结构PNN: DeepCrossing + Product层对协同过滤的改进模型NeuralCF: 将神经网络替代协同过滤中的点积操作将因子分解机的隐向量作为Embedding初始化值FNN (基于FM)基于Wide&Deep结构的Wide&Deep对wide部分进行改进的Deep&Cross: 将wide部分替换成Cross
2020-12-21 12:14:04
141
原创 推荐系统--n--模型DeepFM
前面提到了Embedding+MLP(DeepCrossing/PNN), Wide&Deep, NerualCF(单塔/双塔)等不同的模型结构,那我们再深入思考一个问题:就是这几种模型都是怎么处理特征交叉的?比如说,模型的输入有 性别、年龄、电影风格这几个特征,在训练样本中,我们发现25岁男生喜欢科幻电影的样本,有35岁女生喜欢恐怖电影的样本,那你觉得模型应该怎么推测“25岁”女生喜欢的电影风格呢?事实上,这类特征组合和特征交叉问题非常常见,实际应用中,特征的种类还要多得多,特征交叉的复杂程度
2020-12-21 12:04:05
307
原创 推荐系统--n--模型Wide&Deep
Wide&Deep 让你的模型既有想象力又有记忆力。Google的Wide&Deep在工业界有着巨大的影响力。只要掌握wide&deep就抓住了深度推荐模型这几年发展的一个主方向。Wide&Deep 形象化理解“宽且深”,我们之前的Embedding+MLP经典结构,因为MLP可以有多层神经网络,所以它是一个比较“深”的模型,但是Wide&Deep这个模型的“深”与MLP有什么区别吗?“宽”的部分又是怎样的呢?宽和深分别有什么不同的作用呢?以及为什么要把他们结合在
2020-12-21 00:14:12
242
原创 推荐系统--n--模型DeepCrossing和PNN
微软2016年提出的DeepCrossing 是经典的Embedding+MLP结构。Embedding + MLP 模型结构微软把DeepCrossing用于广告推荐这个业务场景上。DeepCrossing从下到上可以分为5层,分别是Feature层、Embedding层、Stacking层、MLP层和Scoring层。Feature层feature 层也叫输入特征层,它处于DeepCrossing的最底部,作为整个模型的输入。但是仔细观察feature层,我们会发现不同的特征在细节上的一些区别
2020-12-20 23:29:33
258
原创 推荐系统--3--深度学习发展
深度学习推荐模型,有早期微软的DeepCrossing, Google的Wide&Deep,阿里的MLR,到现在影响力非常大的DIN, DIEN, YouTube的深度推荐模型等。这篇文章讲的是深度学习推荐模型,以及他们之间的发展关系。深度学习能够显著提升推荐系统的效果,主要原因在于2点:深度学习极大地增强了推荐模型的拟合能力深度学习模型可以利用模型结构模拟用户兴趣的变迁、用户注意力机制等不同的用户行为过程。深度学习模型的强拟合能力经典的推荐算法,矩阵分解,在矩阵分解模型的结构中,用
2020-12-20 23:01:28
581
1
原创 推荐系统--2--协同过滤与矩阵分解
协同过滤与矩阵分解协同过滤算法的基本原理计算用户相似度用户评分的预测矩阵分解算法总结这里主要介绍几个推荐系统的模型。推荐系统模型是最重要的一块,因为推荐模型直接决定了最终物品排序的结果,它的好坏也直接影响着推荐效果的优劣。而且从某种意义上讲,推荐系统的整体架构都是围绕着推荐模型搭建的,用于支持推荐模型的上线、训练、评估、服务。这里讲解的是 最经典的”协同过滤“。协同过滤算法的基本原理我们知道”用户行为数据是推荐系统最常用,也是最关键的数据。用户的潜在兴趣、用户对物品的评价好坏都反应在用户的行为历史
2020-12-20 20:08:05
3948
原创 推荐系统--n--召回层
这里主要介绍召回层的技术,包括2个方面,一是召回的策略,另外一个是查找近似向量的策略。召回策略单策略召回:单一无法满足用户潜在多兴趣需求多路召回:可以全面地照顾到不同的召回方法,各个策略之间的数据和信息是割裂的,无法综合考虑多个策略对同一个物品的影响基于embedding召回:既考虑到了多路召回策略,又有评分连续性的特点,embedding线上相似度计算也比较简单。召回层邻近检索方法聚类k-means:虽然可以根据k个中心 进行缩小搜索范围,但是k是超参数,不好确定,并且无法处理边
2020-12-20 12:16:51
1258
1
原创 推荐系统系列--4-- Embedding在推荐系统中的应用
自从深度学习流行起来,embedding就成为深度学习推荐系统方向最火热的话题之一。什么是Embedding?简单来说Embedding就是用一个数值向量“表示”一个对象的方法,这里的对象可以是一个词、物品、也可以是一部电影等。但是“表示”这个词怎么理解呢?用一个向量表示一个物品,一个物品能被向量表示,是因为这个向量跟其他物品向量之间的距离反应了这个物品的相似性,也就是两个向量间的距离向量甚至能够反应他们之间的关系。在Netflix应用的电影Embedding向量方法,就是一个非常直接的推荐系统的应用
2020-12-19 21:28:22
1038
2
原创 矩阵分解背后数学原理
面试时遇到这个问题,试图解释SVD,PCA等方法,总感觉没有很好地解释问题。矩阵分解是机器学习常用的处理方法,包括PCA降维,协同过滤里面的分解MF等。这里简单总结一下SVD, PCA, MF有关矩阵分解的问题。矩阵分解先看一下特征值分解:设A为n*n的方阵,则 Ax=λ∗xAx = \lambda*xAx=λ∗x, 称λ\lambdaλ为方阵A的特征值,x为方阵A的特征向量。 特征值不是唯一的, 一个满秩方阵就有n个特征值,每个特征值对应一个特征向量,满秩方阵的特征向量也是线性无关的。如果A 是
2020-12-19 17:07:09
606
1
原创 推荐系统--n--特征处理2
Spark是一个分布式计算平台,所谓的分布式,指的是计算节点之间不共享内存,需要通过网络通信的方式交换数据。Spark最典型的应用方式就是建立在大良廉价的计算节点上,这些节点可以是廉价主机,也可以是虚拟的docker container.从下面的Spark架构图中我们可以看到Spark程序是由Manager node(管理节点)进行调度组织,由worker node(工作节点)进行具体的计算任务执行,最终将结果返回给Drive Program(驱动程序)。在物理的worker node上,数据还会分为不同
2020-12-19 10:34:33
260
1
原创 推荐系统--n--特征工程
推荐系统中可用的特征非常多,但它们基本上可被划分到“用户行为”“用户关系”“属性标签”“内容数据”“场景信息”这五个类别,而且挑选特征的方法也遵循着“保留有用信息,摒弃冗余信息”的原则。用户行为数据: 一般与业务相关,显示行为(评分,点赞,收藏,转发),隐式行为(点击,收藏,评论,播放,播放时长,加入购物车,购买)用户关系数据:强关系(好友关系等,关注),弱关系(同一个国家,城市,小区,同看一部电影,互相点赞等)属性标签数据:用户属性标签,物品属性标签。(类别型,来源型)(用户类标签:年龄,性别,住
2020-12-18 22:39:34
239
1
原创 推荐系统系列--1--系统架构
最近开始学习推荐系统, 在这里做个记录, 会更新如下内容:推荐系统架构推荐系统进化之路推荐系统与深度学习Embedding在推荐系统中的应用多角度审视推荐系统推荐系统工程实现推荐系统评估推荐系统前沿该系列内容是参考 王喆的深度学习推荐系统 整理的,作为自己的学习笔记.推荐系统的目的是在特定场景下...
2020-12-18 20:06:18
280
1
原创 损失函数
RankCrossEntropyLoss: 排序交叉熵损失class RankCrossEntropyLoss(nn.Module): """Creates a criterion that measures rank cross entropy loss.""" __constants__ = ['num_neg'] def __init__(self, num_neg: int = 1): """ :class:`RankCrossEnt.
2020-12-11 11:40:14
447
原创 sigmoid Vs softmax
在逻辑回归模型中,我们可以使用sigmoid进行二分类,也可以使用softmax进行多分类。但是这两个有什么区别呢?1. sigmoid functionF(xi)=11+exp(−xi)F(x_i) = \frac {1}{1+exp(-x_i)}F(xi)=1+exp(−xi)1sigmoid 函数是把输入单独转成0到1之间的输出properties of sigmoid functionsigmoid 函数返回一个真是的输出值sigmoid函数的一阶导数是非负数或者非正。(非
2020-12-11 11:03:44
222
原创 文本匹配模型-DSSM
这里主要实现的是基于表征文本匹配和基于交互的文本匹配模型。同时也对比了各个模型在wikiQA上的运行结果。1. 基于表征的文本匹配模型1.1 DSSM 模型1. 简介DSSM 模型是2013提出的 最早的基于表征的文本匹配方法,整体流程比较简单:首先基于bag-of-words得到文本的向量表征,再基于word-hashing方法进行降维,接着就是MLP,得到最终128维的文本embedding, 最后对两个文本emebdding 计算cosine相似度得到相似度分数。该模型也奠定了基于表征匹配
2020-12-10 17:35:34
1241
原创 SmiHash算法
1. SimHash与传统hash函数的区别传统hash算法只负责将原始内容尽量均匀随机映射为一个签名值,原理上仅相当于伪随机数产生算法。传统的hash算法产生的两个签名,如果原始内容相等,在一定概率下是相等的,如果不想等,除了说明原始内容不想等以外,不再提供任何信息,因为即使原始内容只是想差一个字节,所产生的签名也很可能差别很大。所以传统的Hash是无法在前面的维度上来衡量原内容的相似度,而SimHash本身属于一种局部敏感哈希算法,它产生的hash签名在一定程度上可以表征原内容的相似度。我们主要解决
2020-12-09 09:20:33
825
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人