深度学习
文章平均质量分 75
dl
sdbhewfoqi
这个作者很懒,什么都没留下…
展开
-
【深度学习】迭代次数 vs bs? 迭代次数 vs epoch
迭代次数和批次大小的关系每次迭代处理一个批次(batch size)的样本。一个周期内的迭代次数等于训练集的样本数量除以批次大小。原创 2024-08-29 15:32:53 · 703 阅读 · 0 评论 -
【深度学习】过拟合
在深度学习中,过拟合通常是指模型在训练集上表现良好,但在验证集或测试集上表现不佳。这意味着模型已经学到了训练数据中的噪声和细节,而不是学习到了数据的普遍模式。当发生过拟合时,验证集的loss(损失)通常会上升,而训练集的loss会继续下降或保持在较低水平。具体来说:- **训练集的loss下降**:模型在训练数据上变得越来越好,能够准确地预测训练数据,损失值不断降低。- **验证集的loss上升**:尽管模型在训练数据上表现良好,但在验证数据上表现变差,损失值开始上升。这是因为模型开始记住训练数据原创 2024-08-22 14:40:10 · 313 阅读 · 0 评论 -
【深度学习】BS与GPU显存的关系
增大 batch size 使得一个 epoch 所能进行的优化次数变少,收敛可能变慢,从而需要更多时间才能收敛(比如 batch_size 变成全部样本数目)参考链接:https://blog.csdn.net/lien0906/article/details/78863118。显存占用不是和 batch size 简单成正比,模型自身的参数及其延伸出来的数据也要占据显存。显存占用 = 模型显存占用 + batch_size × 每个样本的显存占用。时间更宝贵,尽可能使模型变快(减少 flop)原创 2024-08-13 13:36:18 · 203 阅读 · 0 评论 -
【深度学习】FPS
FPS是衡量系统处理和显示速度的一个关键指标,表示每秒钟能够处理或显示的帧数。高FPS带来更流畅的视觉体验和更高的系统性能,广泛应用于视频播放、游戏、图像处理和实时视频分析等领域。理解和优化FPS对于提升用户体验和系统效率至关重要。看完我发现FPS的计算公式和QPS好像一样。我又问了一下。Q: QPS和FPS的计算方式一样吗?QPS(Queries Per Second,每秒查询数)和FPS(Frames Per Second,每秒帧数)都是衡量系统性能的指标,但它们适用于不同的场景。原创 2024-08-02 11:03:15 · 1045 阅读 · 0 评论 -
【大模型】chat/completions和completions区别
端点适用于单次文本补全任务,通常用于连续文本生成。端点适用于多轮对话生成任务,提供更自然的对话体验。选择哪个端点取决于你的具体需求。如果你需要生成连续的文本,端点可能更合适。如果你需要处理多轮对话,端点会更适合。原创 2024-07-31 19:50:28 · 1289 阅读 · 0 评论 -
【深度学习】NLP评估指标——ROUGE
ROUGE评估NLP任务的时候,分值是越大越好还是越小越好,以及ROUGE最大能达到多少?GPT4O在自然语言处理(NLP)任务中,ROUGE(Recall-Oriented Understudy for Gisting Evaluation)是一种常用的评估指标,特别是在文本摘要和机器翻译等生成任务中。原创 2024-07-30 17:27:05 · 721 阅读 · 0 评论 -
【深度学习】关于模型加速
将模型转为半精度(FP16)确实可以加快推理速度,并减少显存的使用。这种优化特别适用于现代GPU,并且在推理阶段通常不会显著影响模型的性能。然而,在进行这种转换时,需要考虑硬件和软件的兼容性,以及可能的数值精度损失。将模型转换为TensorRT可以显著加速推理过程,主要通过图优化、精度优化、内存优化、高效内核实现、动态张量优化、批处理优化和异步计算等技术手段实现。这些优化措施充分利用了现代GPU的计算能力和内存带宽,显著提高了推理速度和效率。原创 2024-07-11 21:14:41 · 689 阅读 · 0 评论 -
【深度学习】GPU版本
总的来说,NVIDIA GPU的驱动版本和CUDA版本之间的关系是基于兼容性和性能优化的。选择正确的CUDA版本和相应的驱动版本对于开发和运行基于CUDA的应用程序至关重要。通常,更新的驱动版本提供了对最新CUDA版本的支持,以及性能和安全性的改进。看完,不知所云。总的来说,nvidia-smi展示的cuda版本也不一定是真实运行的cuda版本,还和驱动有关系。可以看看nvidia-smi和nvcc -v。原创 2024-06-27 20:30:06 · 516 阅读 · 1 评论 -
【深度学习】记录为什么没有调用GPU
排查CLIP为什么评测推理没有调用GPU,因为model并没有to.cuda()。主要是这个代码:https://github.com/OFA-Sys/Chinese-CLIP/blob/master/cn_clip/eval/extract_features.py在使用图像模型提取图片特征时,GPU利用率为0可能是由于多种原因导致的。原创 2024-06-21 11:15:22 · 1376 阅读 · 0 评论 -
LLM理解v1
在LLM(Large Language Models,大型语言模型)的领域中,RAG代表“Retrieval-Augmented Generation”,即“检索增强生成”。RAG是一种结合了检索(Retrieval)和生成(Generation)的机制,用于提升语言模型在特定任务上的表现,特别是那些需要广泛背景知识的任务。检索阶段:当模型接收到一个问题或查询时,它首先会在一个大型的文档数据库中检索相关的信息。这个数据库可以是维基百科、书籍、文章或其他任何形式的文档集合。生成阶段。原创 2024-04-18 10:33:15 · 623 阅读 · 0 评论 -
GradNorm理解
gradnorm在单个batch step的流程总结如下:整体任务是指L=w_aL_a+w_bL_b, W是神经网络的参数值, gradnorm主要在动态学w_a, w_b;原创 2023-12-13 15:48:06 · 9402 阅读 · 1 评论 -
【深度学习】loss与梯度与交叉熵的关系
问的GPT3.5。原创 2023-12-11 19:27:42 · 3385 阅读 · 0 评论 -
【机器学习】XGB如果类别不平衡怎么解决?和深度学习解决办法一样吗?
xgboost-样本类别不平衡 - 知乎分类问题中类别不平衡问题的有效解决方法_多分类问题时 scale_pos_weight-CSDN博客解决样本不平衡问题的奇技淫巧 汇总_数据小样本 同时每天数据都在变_songhk0209的博客-CSDN博客原创 2023-09-15 16:56:10 · 313 阅读 · 0 评论 -
【知识点】温度超参数
考虑一下出现困难负样本的原因,有可能是因为两张图片确实非常相似,通常是两张图片有着相同的前景,让算法产生了混淆。也就是说,其实网络已经学到了一定的语义特征,这对下游任务是有帮助的,强行将两张非常相似图片提取出的特征相互远离,有可能打破这种语义信息,导致在执行下游任务时,效果不升反降。如果没有引入temperature参数,当有困难负样本过来时,loss相对较小,对参数的惩罚也就较小。因此,必须对所有错误分类的样本都加大惩罚,所以,要加入一个小于1的temperature参数,来放大对于困难负样本的惩罚。原创 2023-08-28 15:56:57 · 574 阅读 · 0 评论 -
【Python】矩阵乘法3种实现方案
两个张量对应的元素相乘(element-wise),在PyTorch中可以通过 torch.mul 函数(或者∗ *∗运算符)实现。3、一般来说,@ 比.dot()方法要慢一点点。dot是numpy里的函数,主要用于求向量相乘,矩阵乘法,矩阵与向量乘法。两个张量矩阵相乘(Matrix product),在PyTorch中可以通过 torch.matmul 函数实现。点积 对于元素相乘并相加,也就是说会降维。2、用这个 @ 运算符可以不用再使用。的意思,也是dot()的意思。1、@ 符在numpy里就是。原创 2023-07-06 22:02:05 · 1790 阅读 · 0 评论 -
【Faiss】余弦相似分数等于L2归一化再内积
Faiss提供了faiss.METRIC_INNER_PRODUCT 和faiss.METRIC_L2。IndexIVFFlat在参数选择时,使用faiss.METRIC_INNER_PRODUCT。normalize_L2 并 向量的内积 -》 余弦相似性。如果从式子上看 就是分母通分,两个式子是相同的。只需要我们代码加上normalize_L2。说明关于余弦相似性的计算。原创 2023-07-06 21:42:16 · 1928 阅读 · 0 评论 -
【深度学习】Pytorch训练模型损失Loss为Nan或者无穷大(INF)原因
Pytorch训练模型损失Loss为Nan或者无穷大(INF)原因原创 2023-06-30 18:04:56 · 403 阅读 · 0 评论 -
【深度学习】contrastive loss与triplet loss
自己总结一下,三元组如果正负样本足够开,距离足够远,loss为0,因为模型已经学的不错了,不需要继续学习。最好的负样本是,model预测负样本的把握不太大的。如果负样本是很难分的,例如d(a,p)>=d(a,n),即负样本和anchor离的更近,loss是最大的,但模型不容易学出来。并且三元组loss每次只对一条样本(a,p,n)进行loss计算,不考虑其他的负样本。CLIP则是batch_size个样本一起做对比loss的,可以看到bs-1个负样本。对比loss都是bs-1个负样本一起计算的吗。原创 2023-06-29 19:57:17 · 1849 阅读 · 0 评论 -
【推荐系统】model 落地(样本/特征/预测服务)
其他章节一天访问量会有百亿级别,单机是无法满足服务,做分布式模型服务分布式模型服务-> 无状态,机器间不会被依赖一些结论用历史上一个训练好的模型做初始化,用过去一个月,或者是三个月的样本做全量训练。但此时,训练量是很大的,比如,今天用前30天的样本进行训练,明天用新增数据做增量训练,极大加快了模型的训练速度。有利于把最新的样本反应到 model 里面去,对用户、商品冷启都有好的效果。为什么在线特征定期同步给离线平台?——节约性能。原创 2023-04-16 23:38:22 · 1089 阅读 · 0 评论 -
【深度学习】classification_report
classification_report() 是python在机器学习中常用的输出模型评估报告的方法。主要参数:y_true:1维数组,或标签指示器数组/稀疏矩阵,目标值。y_pred:1维数组,或标签指示器数组/稀疏矩阵,分类器返回的估计值。labels:array,shape = [n_labels],报表中包含的标签索引的可选列表。target_names:字符串列表,与标签匹配的可选显示名称(相同顺序)。原创 2023-04-10 16:44:05 · 4710 阅读 · 0 评论 -
【机器学习】验证集loss震荡(loss的其他问题)
训练过程中发现,train loss一直下降,train acc一直上升;但是val loss、val acc却一直震荡。loss一会上一会下,但是总体趋势是向下的。“loss震荡但验证集准确率总体下降” 如何解决?原创 2023-03-05 22:59:39 · 7889 阅读 · 2 评论 -
【深度学习】两个特征在经过L2归一化之后的矩阵
两个特征在经过L2归一化之后的矩阵的内积=它们的余弦相似度余弦相似度与两个特征在经过L2归一化之后的矩阵内积等价_Might_Guy.的博客-CSDN博客_余弦相似度归一化ReferenceL2范数归一化概念和优势余弦距离比对对的几种写法 cos距离pytorch计算两个特征的余弦相似度https://blog.csdn.net/weixin_46474546/article/details/121121958L2范数归一化概念和优势 余弦距离比对对的几种写法 cos距离 pytorch计算原创 2022-04-01 22:01:12 · 1302 阅读 · 0 评论 -
【深度学习】softmax with temperture
无原创 2022-01-21 15:47:13 · 3234 阅读 · 0 评论 -
【深度学习】transformer中softmax为什么要scaled
论文中解释是:向量的点积结果会很大,将softmax函数push到梯度很小的区域,scaled会缓解这种现象。怎么理解将sotfmax函数push到梯度很小区域?还有为什么scaled是维度的根号,不是其他的数?答案:q,k向量点积后的结果数量级变大,经历过softmax函数的归一化之后,后续反向传播的过程中梯度会很小,造成梯度消失。进行scaled能够缓解这种情况。Multi-head Attention为什么要做scaled - 卷王李狗蛋的文章 - 知乎目录为什么会梯度消失的原因?原创 2022-01-20 15:49:13 · 4171 阅读 · 0 评论 -
【深度学习】Layer Normalization
【深度学习】Batch Normalization_littlemichelle-CSDN博客与BN的原理一致,只是归一化的对象不同。目录NormalizationBatch NormalizationBatch Normalization的优势、劣势Layer NormalizationCNN为什么要用BN, RNN为何要用layer Norm? - 子不语的回答 - 知乎Normalization不管是Batch Normalization还是Layer Norm原创 2021-12-06 14:56:50 · 6945 阅读 · 0 评论 -
【深度学习】NLP之Bert(2)QA
BERT是一个多任务模型,它的任务是由两个自监督任务组成,即MLM和NSP。紫色是没找到答案的,黄色是重点关注的。BERT0、为什么要随机Mask?在BERT的实验中,15%的WordPiece Token会被随机Mask掉。在训练模型时,一个句子会被多次喂到模型中用于参数学习,但是Google并没有在每次都mask掉这些单词,而是在确定要Mask掉的单词之后,80%的时候会直接替换为[Mask],10%的时候将其替换为其它任意单词,10%的时候会保留原始Token。80%:my d原创 2021-11-18 23:47:59 · 2932 阅读 · 0 评论 -
【深度学习】NLP之Transformer (3) QA
首先transformer不是encoder+decoder,是self-attention结构,楼主说的encoder-decoder,是transformer应用到seq2seq任务(例如机器翻译任务)上的一种体现,例如Bert就是只有encoder的self-attention结构。大自然的搬运工:transformer面试题的简单回答 - Necther的文章 - 知乎大部分内容来自上面,以及自己遇到的一些问题,做了下归纳。原理:【深度学习】NLP之Transformer (1).原创 2021-04-14 22:16:52 · 779 阅读 · 0 评论 -
【深度学习】epoch, batch, iteration
一个epoch 指的是把所有训练数据丢进神经网络一次。由于训练数据常常太大了,不能够一口吃掉一个胖子,得慢慢来,所以我们常常把训练数据分成好几等份,分完之后每份数据的数量就是 batch size,而几等份的这个几就是iteration。总结一下,epoch指的是次数,epoch = 10 指的是把整个数据集丢进神经网络训练10次。batch size 指的是数据的个数,batch size = 10 指的是每次扔进神经网络训练的数据是10个。iteration同样指的是次数,itera原创 2021-04-06 10:59:39 · 1848 阅读 · 0 评论 -
【深度学习】NLP之Transformer (2) Decoder
主要围绕着decoder部分展开。吸收了网上博客的内容,进行了下自己的输出。。。目录1. Decoder的问题2. 回顾 transformer3. mask3.1. Padding Mask3.2. Sequence mask4. QA1. Decoder的问题传统seq2seq是按照时间顺序展开,所以decoder就是按照time,一步一步输入。【深度学习】NLP之Transformer (1) 中介绍了,transformer是并行的,就是说这个句子,在.原创 2021-02-19 00:05:54 · 4074 阅读 · 3 评论 -
【深度学习】NLP之Bert(1)
【深度学习】Attention的理解【深度学习】NLP之Transformer (1)【深度学习】NLP之Transformer (2)理解bert首先需要,attention和transformer理论的铺垫。1、bert理论基础BERT的全称是Bidirectional Encoder Representation from Transformers,即双向Transformer的Encoder,因为decoder是不能获得要预测的信息的。BERT采用两阶段过程,第一个阶段是利用原创 2021-02-18 23:44:13 · 537 阅读 · 0 评论 -
【深度学习】Attention的理解
个人理解Attention就是加权。样本生而不平等,所以催生出各种样本加权的方法,比如对完播率高的样本加权,对时长长的样本加权;样本内特征也是生而不平等的,也可以加权,比如用户最近点击文章关键词,最近点击比稍远一点时间点击的更为重要,可以加权,而在历史长期点击序列中,出现频率更高的可能权重应该更大。这就像NLP领域有词语级别的加权,也有句子级别的加权。我们把这种直观的感受转化为程序语言,这就是Attention机制。几乎所有的attention方法都可以归纳为:给定很多组key和value,以及一个目标原创 2021-02-07 19:22:23 · 607 阅读 · 0 评论 -
【深度学习】多标签/多分类/多任务
1、Multi-Class:多分类/多元分类(二分类、三分类、多分类等)二分类:判断邮件属于哪个类别,垃圾或者非垃圾 二分类:判断新闻属于哪个类别,机器写的或者人写的 三分类:判断文本情感属于{正面,中立,负面}中的哪一类 多分类:判断新闻属于哪个类别,如财经、体育、娱乐等2、Multi-Label:多标签分类文本可能同时涉及任何宗教,政治,金融或教育,也可能不属于任何一种。 电影可以根据其摘要内容分为动作,喜剧和浪漫类型。有可能电影属于romcoms [浪漫与喜剧]等多种类型。例子:原创 2021-01-26 09:30:38 · 7367 阅读 · 1 评论 -
【深度学习】负采样技术(1)
回顾以下word2vec,负采样的思想更加直观:为了解决数量太过庞大的输出向量的更新问题(word2vec这里要预测是哪个单词,而单词库上万),我们就不更新全部向量,而只更新他们的一个样本。显然正确的输出单词(也就是正样本)应该出现在我们的样本中,另外,我们需要采集几个单词作为负样本(因此该技术被称为“负采样”)。采样的过程需要指定总体的概率分布,我们可以任意选择一个分布。我们把这个分布叫做噪声分布,标记为 。可以凭经验选择一个好的分布。在word2vec中,作者称用简化的训练目标取代用一个定义好原创 2021-01-22 00:39:10 · 2115 阅读 · 0 评论 -
【深度学习】负采样技术(2)
logits:softmax的目的是把logits映射到0,1之间,因此logits可以理解为原生概率;原创 2021-01-25 23:18:39 · 894 阅读 · 0 评论 -
【NLP】ELMO\BERT\GPT入门
A word can have multiple senses图:in typical word embedding, each word type has an embeddingbank是不同的token,但是是同样的type,就是bank。token是NLP里分词的结果,是没有确定词义的一个词。word2vector中,每一个word的type有一个embedding,所以不同的token,但它属于同一个type,则它所对应的embedding的一样的。在过去的任务中,所.原创 2020-12-03 00:03:17 · 418 阅读 · 0 评论 -
【深度学习】DSSM模型介绍(1)
DSSM (Deep Structured Semantic Models)应用:DSSM文本匹配模型在商品语义召回上的应用参考:DSSM文本匹配模型在苏宁商品语义召回上的应用蚂蚁金融NLP竞赛——文本语义相似度赛题总结原创 2020-11-15 22:55:47 · 14528 阅读 · 1 评论 -
【深度学习】图深度学习入门(二)
Spectral-Based Convolution实时卷积、频域相乘Spectral Graph Theoryundirected graph 对称矩阵f(0)=4\ f(1)=2 \ f(3)=4 \ f(4)=-3为什么频率可以反应出?f是每个节点的属性,初始是随机的,需要学习的。随着lamda频率越来越高,意味着越不相关。以上一切都是为了做fourior transfor。定义了fourior transfor才能在gr..原创 2020-10-29 00:44:40 · 550 阅读 · 0 评论 -
【深度学习】图深度学习入门(一)
roadmap边代表两个节点有关系,节点有节点的性质,边有边的性质。考虑entity本身的feature,也要考虑entity与其他entity之间的关系——GNN类比CNN,是有一个kernel在滑动做计算,得到feature map(用它的邻居来update feature map),那么如何将方法使用在GNN上呢?fourier domain\ filter response\ inter fourier transition. (一堆听不懂的名词)spatial.原创 2020-10-28 00:39:52 · 1289 阅读 · 0 评论 -
【numpy】维度相关np.newaxis()、ravel()、flatten()、squeeze()
目录ravel()、flatten()、squeeze() 降维numpy.ravel() vs numpy.flatten()np.squeeeze()reshape(-1)np.newaxis() 升维ravel()、flatten()、squeeze() 降维numpy中的ravel()、flatten()、squeeze()都有将多维数组转换为一维数组的功能,区别:ravel():如果没有必要,不会产生源数据的副本 flatten():返回源数据的副本 sq.原创 2020-07-09 17:55:55 · 1171 阅读 · 0 评论 -
【深度学习】图卷积神经网络GCN
参考:基于知识图谱和图卷积神经网络的应用和开发原创 2020-06-08 17:06:13 · 282 阅读 · 0 评论