自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 大模型基础(六):ChatGLM原理介绍

ChatGLM是由中国智谱AI(Zhipu AI)与清华大学知识工程实验室(KEG)联合开发的一系列开源双语(中英文)对话大语言模型。该系列模型基于GLM(General Language Model)架构,针对对话场景进行了针对性改进,使其专注于高效推理和自然对话能力,适用于多种实际场景,如智能客服、内容生成、知识问答等,是国内目前的主流大模型之一。ChatGLM系列以高效、实用、安全为核心目标,通过GLM架构的创新和持续迭代,在双语对话场景中展现了强大的竞争力。

2025-05-07 08:25:04 1202

原创 大模型基础(五):transformers库(下):快速分词器、自动配置类、快速微调

本文的内容没有上一篇那么重要,除了 AutoConfig 外,其他了解即可。

2025-05-05 17:50:52 1012

原创 大模型基础(四):transformers库(上):pipline、模型、分词器

🤗 Hugging Face Transformers 库 是一个用于自然语言处理(NLP)和计算机视觉(CV)的 开源深度学习库,以提供丰富的预训练模型和便捷的模型调用接口而闻名。核心功能预训练模型支持• 提供 数千种预训练模型(如 BERT、GPT、T5、ViT、Stable Diffusion 等),涵盖文本、图像、音频等多模态任务。• 支持 PyTorch、TensorFlow 和 JAX 框架,可自由选择模型格式。统一接口设计• 通过AutoModel。

2025-05-05 16:27:49 580

原创 大模型基础(二):GPT-2的高效训练

上篇文章,我们介绍了GPT-2的结构,本文我们来介绍一下GPT-2的高效训练,相关的训练技巧也可以用于其他模型的加速训练。本文依然参考的是Andrej Karpathy复现GPT-2的讲解视频,本文的硬件设备为 RTX 3060显卡,显卡必须是30及以上系列,关于分布式的部分,则至少需要2张显卡。为了对比,我们把上篇文章复现GPT-2的代码,放到 model.py文件中,后续需要调用模型的时候,直接从这个文件中导入即可。本文所用数据集为莎士比亚的文本集,数据集有 40000 行,20万个单词,110万字节,

2025-04-30 00:46:32 731

原创 大模型基础(一):GPT-2复现

今天大多数大语言模型使用的 Decoder-Only 结构,都来源于 GPT 模型,要想学习大模型,有必要对GPT模型有所了解。由于GPT第一代历史比较久远,且影响没有后续几代那么广泛,而GPT第三代又没有开源,因此这里只介绍第二代,GPT-2的复现,有助于理解当今的主流开源大模型(如Llama、ChatGLM、通义千问)的设计理念。GPT-2(Generative Pre-trained Transformer 2)是由OpenAI于2019年发布的自然语言处理(NLP)模型,是GPT系列的第二代模型。

2025-04-27 14:26:29 860

原创 大模型基础(三):Llama3复现

Llama 3,是Meta公司发布的大型语言模型,虽然能力上不如GPT4,但因为GPT4不开源,所以截至2024年4月,它也是最强的开源大模型。Llama3 有 8B 和 70B 两个版本。无论哪一个,我们都不可能成功复现出来,所以今天我们只实现一个mini版本,即原模型有的结构这里都有,但层数和维度都做了简化,其中隐藏层维度由4096降为1024,解码层数量由32降为2。本文的内容参考了B站up主蓝斯诺特的视频和代码。1 在注意力机制内部插入位置编码;2 位置编码使用旋转位置编码;

2025-04-27 10:10:33 666

原创 Transformer由入门到精通(二):Transformer的搭建与理解

上一篇文章我们介绍了Transfomer中涉及到的相关知识,主要是注意力机制,有了上一篇文章的基础以后,我们就可以来手动搭建 transformer 了,我们边写代码边讲解。本文的代码参考借鉴了哈佛大学的 《The Annotated Transformer》,但更加容易理解。本文通过逐步搭建Transformer模型的方式,逐个讲解了transformer的零部件,然后又介绍了mask,还介绍了 Decoder 中的自注意力机制。

2025-04-06 16:11:14 1205

原创 Transformer由入门到精通(一):基础知识

我之前看transformer的论文《Attention Is All You Need》,根本看不懂,特别是QKV注意力机制那部分。后面在知乎上看到名为“看图学”的博主的一篇回答,按他回答阅读了一些论文,搞明白了 transformer 中的注意力机制的发展演变,才对 transformer 中的注意力机制有了了解,在此向他表示感谢!本文并不是面对零基础的同学,在学习这篇文章之间,需要知道什么是RNN、LSTM、GRU,什么是词嵌入。编码器:h0=0hj=RNN⁡GRU(hj−1,xj)c=tanh⁡

2025-04-04 18:23:53 980

原创 大模型开发(六):LoRA项目——新媒体评论智能分类与信息抽取系统

微调里面,用的最多的是 LoRA 微调,这是一种参数高效微调的方式。这个项目我要完成两个工作,一是文本分类,二是信息抽取,分类我们前面已经讲过了,这里重点介绍以下信息抽取:信息抽取的目的是获得知识图谱(即实体和实体之间的关系),圆圈表示实体,连线表示关系。图中左边时预训练过程,这个我们稍后介绍数据处理的时候会介绍。所谓的LoRA微调,就是给预训练模型的线性层加一个旁支,比如原来是,现在变成了,这里的Δw就是旁支权重,训练的时候是冻结原模型中的参数,只更新旁支的参数,旁支是先降维,后升维。硬件环境如下

2025-03-19 21:38:47 1072 1

原创 大模型开发(五):P-Tuning项目——新零售决策评价系统(下)

上篇文章我们介绍了使用PET方式微调BERT模型,PET属于提示词微调的一种,另一种比较常见的提示词微调是P-Tuning,我们今天在相同的项目上面用P-Tuning看看。

2025-03-06 09:47:06 618

原创 大模型开发(四):PET项目——新零售决策评价系统(上)

上篇文章我们介绍了使用全量微调构建医疗问诊机器人,比较常用的微调还有提示词微调(Prompt微调)、PEFT,而Prompt微调用的比较多有PET和P-Tuning,而我们今天介绍的项目,就是使用PET的方式微调大模型。PET的全称是Pattern-Exploiting Training,主要用来做文本分类(Prompt微调基本都是文本分两类),它是通过构建提示词模板(硬模版,需要我们自己指定模板)的方式,将下游任务转化为一个完形填空任务,这样就可以用BERT的MLM模型来进行预测了。智能推荐系统是AI技术

2025-03-04 16:46:45 1010

原创 大模型开发(三):全量微调项目——基于GPT2 搭建医疗问诊机器人

上一篇文章讲到,大模型都是基于过去的经验数据进行训练完成,它没有学过企业私有的知识,为了处理私有知识,一般可以使用私有知识对模型进行微调,也可以建立本地知识库,然后利用RAG技术实现。1.如果企业里有算力,私有数据量较大,那优先可以微调,时间成本要高;2.如果没有高的算力,或者数据量小,可以使用RAG;3.另外如果算力充足,数据量也大,可以实现RAG和微调结合。总体来讲,RAG技术比较成熟,也比较容易实现,但效果不如微调。

2025-02-26 14:02:57 694

原创 大模型开发(二):RAG项目——物流信息咨询问答系统

上篇文章,我们使用的是百度智能云平台(也叫千帆平台)上已经部署好的模型,对一个企业来说,你把模型放到别人的服务器上,会有一定的信息安全隐患,使得自己“受制于人”;另一方面,很多业务场景的生产环境都是隔离,也就是没有联网,这种情况下你很难用类似的公共云服务来进行推理。因此,在本地或者私有云上进行开发也是大模型开发的一项重要能力。本文以“物流行业信息咨询问答系统”这个项目为载体,介绍一下RAG和私有云开发。

2025-02-21 10:28:10 1076 1

原创 大模型开发(一):LangChain的使用

进入2025年,大模型开发已经成为IT行业中最热门的赛道,本系列文章将介绍大模型的开发,在此之前,最好具备一些大模型的相关知识,比如知道提示词工程有哪些、提示词微调有哪些,什么是Agents,什么是Function Call等。LangChain 由 Harrison Chase 创建于2022年10月,它是围绕LLMs(大语言模型)建立的一个框架。

2025-02-19 18:19:13 1424

原创 Windows11环境MySQL的安装与PyCharm操作数据库

进入到MySQL的下载安装包,截至2025年1月12日,社区版最新的版本为9.1.0版,我们就安装这个:接下来既可以注册登录,也可以直接下载:等待几秒接下来就打开了MySQL的服务配置我们点击Next,直到下面这一步:我们这里只是为了学习,所以密码设的简单些,这里就设置为123456,然后继续点击Next。这里我们将Windows server name改成MySQL(默认是MySQL91,即有版本号,我这里去掉了),以方便使用。

2025-01-12 03:22:38 592 1

原创 PyTorch入门与实践(七):ONNX文件导出与简单部署

严格意义上说,这篇文章已经不完全属于PyTorch的内容了,属于模型部署的范畴,但工作中导出模型一般都是算法工程师的工作内容,所以这里需要讲一下。ONNX(Open Neural Network Exchange)文件是一种开放的、与框架无关的文件格式,用于表示深度学习模型。ONNX 文件使用.onnx扩展名,并且基于 Protocol Buffers(protobuf)格式进行序列化。ONNX 的主要目标是解决深度学习模型在不同框架之间的兼容性问题。

2024-12-12 00:22:58 2042

原创 PyTorch入门与实践(六):实战指南

通过前面几章的内容,我们已经学习了PyTorch的基本使用,对于底层原理也有了一定程度的认识,但我们还没有完整地训练过一个网络。本文将训练一个猫狗分类器,试图把前面所学的知识串起来,完整地实现一个深度学习项目。本章不再深人讲解过多的知识性内容,而是传授一些经验。对于这部分内容可能有些争议,因为它们受笔者个人喜好和代码风格的影响较大,所以读者可以将其当成一种参考或提议,而不是作为必须遵循的准则。归根到底,笔者希望读者能以一种更为合理的方式组织自己的程序。

2024-12-08 22:19:32 858

原创 PyTorch入门与实践(五):PyTorch常用工具模块

在PyTorch中,数据加载可通过自定义的数据集对象实现。数据集对象被抽象为Dataset类,实现自定义的数据集类需要继承Dataset__init__():构造函数,因为不需要使用父类的属性,需要什么都在本类中定义,因此无需调用Dataset的构造函数;:返回一条数据,或一个样本。obj[index]等价于;__len__():返回样本的数量。len(obj)等价于。

2024-12-05 18:12:12 1166

原创 PyTorch入门与实践(四):神经网络工具箱nn

我们也可以自己写损失函数,就和自己写模型一样,继承nn.Module类就行,然后forward的输入有两个,一个是预测值,另一个是标签。自定义损失函数和普通模型最大的不同有两个:一是损失函数里不能有可学习参数,如果有非标量的常数,则要将其用包裹,且设置为False;二是forward的返回值必须是标量,否则无法进行反向传播(张量并不是完全没办法反向传播,只是比较复杂)。return out# 生成标签与预测值# 计算损失函数L = loss(pred, label) # 这句将会报错。

2024-11-24 21:57:05 1329

原创 PyTorch入门与实践(三):Tensor与自动微分详解

一般来说,不同的张量可能头信息不同,但可能使用了相同的数据,一些操作可能创建了一个新的信息头,但它们仍共享同一个数据区,这些张量可以认为是同一个数据区的不同“视图”。w、b、x好理解,因为它们都是用户直接创建,而y之所以也是叶子节点,是因为它是由矩阵乘法运算生成的(操作生成),但由于w和x的requires_grad都被置为了False,这使得y在创建的那一刻,其requires_grad就是False,故y也是叶子节点。查看张量的数据地址,这是来自于C++底层的方法,该方法可以返回真实的内存地址。

2024-11-22 21:41:54 1271

原创 PyTorch入门与实践(二):快速入门

本篇文章是我阅读《深度学习框架PyTorch入门与实践(第2版)》的第二章学习笔记,以及一些思考。

2024-11-18 22:31:39 746

原创 PyTorch入门与实践(一):环境安装与相关工具介绍

本文介绍了Pytorch环境安装、VS Code连接远程服务器、DeepLn的web连接、DeepLn的实例释放与数据保存、VS Code 调试Python

2024-11-17 21:27:13 1057

原创 使用视觉注意力机制改进YOLOv5模型(一):YOLOv5-6.1的模型配置

根据配置文件解析模型

2024-01-02 21:17:49 1431

原创 YOLOv5-6.1从训练到部署(四):模型在GPU上部署

模型在GPU上的部署

2023-12-30 02:39:34 1776 1

原创 YOLOv5-6.1从训练到部署(三):模型在CPU上部署

模型在CPU上部署

2023-12-18 11:23:25 2561 3

原创 YOLOv5-6.1从训练到部署(二):训练自己的数据集

使用YOLOv5训练自己的数据集

2023-12-10 21:58:18 2071

原创 YOLOv5-6.1从训练到部署(一):环境安装、示例检测、推理文件的导出与可视化

本系列文章是演示如何使用Ultralytics公司的开源项目YOLOv5-6.1版本进行目标检测的文章,包括直接使用官方权重进行检测和部署,以及在自定义数据集上进行训练和部署,在学习本系列文章之前,需要知道Pytorch的基本使用和YOLOv5的原理,其他知识我们可以跟着文章来学。

2023-11-17 22:23:26 2816 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除