- 2024-11-15不可以色色!使用autodl平台搭建深度学习模型实现自动“鉴黄”!
Falconsai色情内容色情内容是非常有害的,它们既不符合我国的法律也要求,同时也毒害了人们的思想精神。在过去,通过使用人工“鉴黄”的方式,找一个专门的工作者,去判断一个内容是否是色情内容,虽然,他们通过努力不懈,阻止了色情内容的传播,但是,这样的工作对于鉴黄师本人来说,却是很大的
- 2024-11-13深度学习 PyTorch 中的 logits 和交叉熵损失函数
在深度学习中,理解损失函数是训练模型的关键一步。在分类任务中,交叉熵损失函数是最常用的损失函数之一。本文将详细解释PyTorch中的logits、交叉熵损失函数的工作原理,并展示如何调整张量的形状以确保计算正确的损失。什么是logits?logits是模型输出的未归一化预测值,通常
- 2024-11-01forward_MDCS
最好的效果47.35defforward(self,output_logits,target,extra_info=None):ifextra_infoisNone:returnself.base_loss(output_logits,target)#output_logitsindicatesthefinalpredictionloss=0temperature_mean
- 2024-09-25大模型应用曙光 - 10X压缩技术
关注TechLead,复旦AI博士,分享AI领域全维度知识与研究。拥有10+年AI领域研究经验、复旦机器人智能实验室成员,国家级大学生赛事评审专家,发表多篇SCI核心期刊学术论文,上亿营收AI产品研发负责人。如何在不牺牲性能的情况下将大型语言模型缩小十倍虽然LLM的巨大规模赋予了它们在各
- 2024-08-29负对数似然(NLL)和困惑度(PPL)
让我们通过一个简单的例子来演示这段代码的计算过程,包括负对数似然(NLL)和困惑度(PPL)的计算。为了简化,我们将假设一个非常小的模型输出和数据。假设:我们有两个样本(即batchsize为2)。每个样本有3个可能的类别,S_logits是模型输出的logits。smask是一个掩码,假设全部为True
- 2024-08-15大模型微调实战演练:使用代码剖析 Transformers Pipelines工作原理
在自然语言处理(NLP)领域,Transformers模型已经成为了主流技术之一。无论是文本分类、情感分析,还是机器翻译,Transformers都展现了强大的性能。今天,我们来详细解析一下TransformersPipelines的运行原理,帮助大家更好地理解其内部机制。一、基本流程TransformersPipeline
- 2024-08-05hello
点击查看代码defforward(self,output_logits,target,extra_info=None):ifextra_infoisNone:returnself.base_loss(output_logits,target)#output_logitsindicatesthefinalpredictionloss=0temperature_mean=1
- 2024-07-18LLM训练5-MoE并行
前置知识MOE(MixerOfExpert)moe的主要原理是替换attention层后的MLP层,通过将不同类型的token按照门控单元计算出的概率分配给最大概率处理的专家网络处理,对比单一MLP更适合处理复杂多样化的数据集.主要思想和集成学习感觉很像,而且扩展性(遇到新的目标任务可以新增专家网
- 2024-07-16LLM大模型:推理优化-知识蒸馏
1、有些模型比较大,推理时的效果还不错,但非常耗费计算资源;并且产生token的速度也很慢,大概1秒1个token(我的RAG在最后一步使用的secGPT-13B大概就是这个速度),一个问题回答完毕要耗费分钟级别的时间,用户直接抓狂,继续提升推理的速度!大模型本质是大量的矩阵运算,想要提高效
- 2024-07-01昇思25天学习打卡营第12天|网络构建
IT专业入门,高考假期预习指南七月来临,各省高考分数已揭榜完成。而高考的完结并不意味着学习的结束,而是新旅程的开始。对于有志于踏入IT领域的高考少年们,这个假期是开启探索IT世界的绝佳时机。作为该领域的前行者和经验前辈,你是否愿意为准新生们提供一份全面的学习路线图呢?快来
- 2024-06-30昇思25天学习打卡营第5天|网络构建
☀️最近报名参加了昇思25天学习打卡训练营☀️第1天初步学习了MindSpore的基本操作☀️第2天初步学习了张量Tensor☀️第3天初步学习了数据集Dataset☀️第4天初步学习了数据变换Transforms☀️第5天学习初学入门/初学教程/06-网络构建Transforms1.代码跑通流程神经
- 2024-06-23【MindSpore学习打卡】初学教程-06网络构建-使用MindSpore构建神经网络模型
在深度学习的世界中,构建和训练神经网络模型是核心任务之一。MindSpore作为一款开源的深度学习框架,提供了丰富的API和工具,使得构建神经网络模型变得更加简洁和高效。在这篇博客中,我们将以Mnist数据集分类为例,逐步讲解如何使用MindSpore定义模型、构建网络层并进行预测。通过
- 2024-06-18Transformer模型代码(详细注释,适合新手)
#Hyperparametersbatch_size=4#Howmanybatchespertrainingstepcontext_length=16#Lengthofthetokenchunkeachbatchd_model=64#Thesizeofourmodeltokenembeddingsnum_blocks=8#Numberoftransformerblocksnum_heads=4#Numbe
- 2024-06-04【SVG 生成系列论文(九)】如何通过文本生成 svg logo?IconShop 模型推理代码详解
SVG生成系列论文(一)和SVG生成系列论文(二)分别介绍了StarVector的大致背景和详细的模型细节。SVG生成系列论文(三)和SVG生成系列论文(四)则分别介绍实验、数据集和数据增强细节。SVG生成系列论文(五)介绍了从光栅图像(如PNG、JPG格式)转换为矢量图形(如SVG、EPS格式)的关
- 2024-05-27clip-cnblog
CLIPgithubLearningTransferableVisualModelsFromNaturalLanguageSupervisionCLIP全称ConstrastiveLanguage-ImagePre-training,是OpenAI推出的采用对比学习的文本-图像预训练模型。CLIP惊艳之处在于架构非常简洁且效果好到难以置信,在zero-shot文本-图像检索,zero-sho
- 2024-05-03使用 __get__ 向已有类实例注入函数
突然有这样的特殊需求:向已经实例化的类对象添加新方法。例如,我的model本没有实现predict_step方法,现在我想向model注入这个函数:defpredict_step(self,batch,batch_idx,dataloader_idx=0):logits=self(**batch)["logits"]pred=F.softmax(logits,dim=-1)
- 2024-03-11ChatGLM3 源码分析(四)
ChatGLMForSequenceClassificationclassChatGLMForSequenceClassification(ChatGLMPreTrainedModel):def__init__(self,config:ChatGLMConfig,empty_init=True,device=None):super().__init__(config)#NLabels:分类或者回归的标签数
- 2024-03-11蒸馏网络中的bias是指什么? —— 论文《Distilling the Knowledge in a Neural Network》—— 知识蒸馏
论文地址:https://arxiv.org/pdf/1503.02531.pdf在蒸馏网络中会遇到手动调整bias的说法,但是这个bias在论文中又没有明细说明是怎么个bias,具体论文出处:Ifthisbiasisincreasedby3.5查询Gemini,得到回答:Assumingyou'rereferringtotheprevioussentenceaboutl
- 2024-03-07ChatGLM3 源码解析(三)
RotaryEmbedding#旋转位置嵌入,应用于每一层Q和KclassRotaryEmbedding(nn.Module):def__init__(self,dim,rope_ratio=1,original_impl=False,device=None,dtype=None):super().__init__()#除法项定义inv_freq=1.0/(10000**(to
- 2024-01-30CS231N Assignment3 入门笔记(Q4 GANs)
斯坦福2023年春季CS231N课程第三次作业(最后一次)解析、笔记与代码,作为初学者入门学习。在这项作业中,将实现语言网络,并将其应用于COCO数据集上的图像标题。然后将训练生成对抗网络,生成与训练数据集相似的图像。最后,将学习自我监督学习,自动学习无标签数据集的视觉表示。本作业的
- 2023-12-26大语言模型生成模型的源码结构复习
modeling_gpt2.py:1099iflabelsisnotNone:#movelabelstocorrectdevicetoenablemodelparallelismlabels=labels.to(lm_logits.device)#Shiftsothattokens<npredictnshift_logits=lm
- 2023-09-04ChatGLM2 源码解析:`ChatGLMForConditionalGeneration.forward`
classChatGLMForConditionalGeneration(ChatGLMPreTrainedModel):def__init__(self,config:ChatGLMConfig,empty_init=True,device=None):super().__init__(config)self.max_sequence_length=config.max_lengthself.transformer=C
- 2023-07-19logits 与 pre-logits
logits为fc的输出,应用softmax之前的向量,(b,len)pre-logits这个东西我是从论文《Tied-Augment:ControllingRepresentationSimilarityImproves DataAugmentation 》中看到的,根据源码的解释,pre-logits为特征图flatten之后(应用fc之前)的向量: 特此记录
- 2023-06-13CLIP损失函数的理解
参考资料:[一个写的相当好的教程][CLIPhuggingface源码:CLIPModel][CLIPhuggingface训练例程]这篇文章首先展示CLIP损失函数的两种底层实现代码,然后聊一聊自己的理解。说实话念硕士的时候没有接触过CLIP这个东西,来实习之后发现这个多模态的模型使用
- 2023-05-31测试
测试从图中我们可以发现,随着训练次数的增加,Loss越来越小,准确率也是越来越高·。但是在到达某个节点后,随着训练次数的增多Loss反而不稳定起来,准确率也发生波动。所以说明模型的训练并不是次数越多越好。这是因为对于同一个训练集,不断地训练会让模型记住这些样本的一些表面属性,使