- 博客(19)
- 收藏
- 关注
原创 大模型开发(六):LoRA项目——新媒体评论智能分类与信息抽取系统
微调里面,用的最多的是 LoRA 微调,这是一种参数高效微调的方式。这个项目我要完成两个工作,一是文本分类,二是信息抽取,分类我们前面已经讲过了,这里重点介绍以下信息抽取:信息抽取的目的是获得知识图谱(即实体和实体之间的关系),圆圈表示实体,连线表示关系。图中左边时预训练过程,这个我们稍后介绍数据处理的时候会介绍。所谓的LoRA微调,就是给预训练模型的线性层加一个旁支,比如原来是,现在变成了,这里的Δw就是旁支权重,训练的时候是冻结原模型中的参数,只更新旁支的参数,旁支是先降维,后升维。硬件环境如下
2025-03-19 21:38:47
1003
原创 大模型开发(五):P-Tuning项目——新零售决策评价系统(下)
上篇文章我们介绍了使用PET方式微调BERT模型,PET属于提示词微调的一种,另一种比较常见的提示词微调是P-Tuning,我们今天在相同的项目上面用P-Tuning看看。
2025-03-06 09:47:06
575
原创 大模型开发(四):PET项目——新零售决策评价系统(上)
上篇文章我们介绍了使用全量微调构建医疗问诊机器人,比较常用的微调还有提示词微调(Prompt微调)、PEFT,而Prompt微调用的比较多有PET和P-Tuning,而我们今天介绍的项目,就是使用PET的方式微调大模型。PET的全称是Pattern-Exploiting Training,主要用来做文本分类(Prompt微调基本都是文本分两类),它是通过构建提示词模板(硬模版,需要我们自己指定模板)的方式,将下游任务转化为一个完形填空任务,这样就可以用BERT的MLM模型来进行预测了。智能推荐系统是AI技术
2025-03-04 16:46:45
924
原创 大模型开发(三):全量微调项目——基于GPT2 搭建医疗问诊机器人
上一篇文章讲到,大模型都是基于过去的经验数据进行训练完成,它没有学过企业私有的知识,为了处理私有知识,一般可以使用私有知识对模型进行微调,也可以建立本地知识库,然后利用RAG技术实现。1.如果企业里有算力,私有数据量较大,那优先可以微调,时间成本要高;2.如果没有高的算力,或者数据量小,可以使用RAG;3.另外如果算力充足,数据量也大,可以实现RAG和微调结合。总体来讲,RAG技术比较成熟,也比较容易实现,但效果不如微调。
2025-02-26 14:02:57
619
原创 大模型开发(二):RAG项目——物流信息咨询问答系统
上篇文章,我们使用的是百度智能云平台(也叫千帆平台)上已经部署好的模型,对一个企业来说,你把模型放到别人的服务器上,会有一定的信息安全隐患,使得自己“受制于人”;另一方面,很多业务场景的生产环境都是隔离,也就是没有联网,这种情况下你很难用类似的公共云服务来进行推理。因此,在本地或者私有云上进行开发也是大模型开发的一项重要能力。本文以“物流行业信息咨询问答系统”这个项目为载体,介绍一下RAG和私有云开发。
2025-02-21 10:28:10
931
原创 大模型开发(一):LangChain的使用
进入2025年,大模型开发已经成为IT行业中最热门的赛道,本系列文章将介绍大模型的开发,在此之前,最好具备一些大模型的相关知识,比如知道提示词工程有哪些、提示词微调有哪些,什么是Agents,什么是Function Call等。LangChain 由 Harrison Chase 创建于2022年10月,它是围绕LLMs(大语言模型)建立的一个框架。
2025-02-19 18:19:13
1174
原创 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
446
1
原创 PyTorch入门与实践(七):ONNX文件导出与简单部署
严格意义上说,这篇文章已经不完全属于PyTorch的内容了,属于模型部署的范畴,但工作中导出模型一般都是算法工程师的工作内容,所以这里需要讲一下。ONNX(Open Neural Network Exchange)文件是一种开放的、与框架无关的文件格式,用于表示深度学习模型。ONNX 文件使用.onnx扩展名,并且基于 Protocol Buffers(protobuf)格式进行序列化。ONNX 的主要目标是解决深度学习模型在不同框架之间的兼容性问题。
2024-12-12 00:22:58
1513
原创 PyTorch入门与实践(六):实战指南
通过前面几章的内容,我们已经学习了PyTorch的基本使用,对于底层原理也有了一定程度的认识,但我们还没有完整地训练过一个网络。本文将训练一个猫狗分类器,试图把前面所学的知识串起来,完整地实现一个深度学习项目。本章不再深人讲解过多的知识性内容,而是传授一些经验。对于这部分内容可能有些争议,因为它们受笔者个人喜好和代码风格的影响较大,所以读者可以将其当成一种参考或提议,而不是作为必须遵循的准则。归根到底,笔者希望读者能以一种更为合理的方式组织自己的程序。
2024-12-08 22:19:32
755
原创 PyTorch入门与实践(五):PyTorch常用工具模块
在PyTorch中,数据加载可通过自定义的数据集对象实现。数据集对象被抽象为Dataset类,实现自定义的数据集类需要继承Dataset__init__():构造函数,因为不需要使用父类的属性,需要什么都在本类中定义,因此无需调用Dataset的构造函数;:返回一条数据,或一个样本。obj[index]等价于;__len__():返回样本的数量。len(obj)等价于。
2024-12-05 18:12:12
1008
原创 PyTorch入门与实践(四):神经网络工具箱nn
我们也可以自己写损失函数,就和自己写模型一样,继承nn.Module类就行,然后forward的输入有两个,一个是预测值,另一个是标签。自定义损失函数和普通模型最大的不同有两个:一是损失函数里不能有可学习参数,如果有非标量的常数,则要将其用包裹,且设置为False;二是forward的返回值必须是标量,否则无法进行反向传播(张量并不是完全没办法反向传播,只是比较复杂)。return out# 生成标签与预测值# 计算损失函数L = loss(pred, label) # 这句将会报错。
2024-11-24 21:57:05
1164
原创 PyTorch入门与实践(三):Tensor与自动微分详解
一般来说,不同的张量可能头信息不同,但可能使用了相同的数据,一些操作可能创建了一个新的信息头,但它们仍共享同一个数据区,这些张量可以认为是同一个数据区的不同“视图”。w、b、x好理解,因为它们都是用户直接创建,而y之所以也是叶子节点,是因为它是由矩阵乘法运算生成的(操作生成),但由于w和x的requires_grad都被置为了False,这使得y在创建的那一刻,其requires_grad就是False,故y也是叶子节点。查看张量的数据地址,这是来自于C++底层的方法,该方法可以返回真实的内存地址。
2024-11-22 21:41:54
1174
原创 PyTorch入门与实践(一):环境安装与相关工具介绍
本文介绍了Pytorch环境安装、VS Code连接远程服务器、DeepLn的web连接、DeepLn的实例释放与数据保存、VS Code 调试Python
2024-11-17 21:27:13
990
原创 YOLOv5-6.1从训练到部署(一):环境安装、示例检测、推理文件的导出与可视化
本系列文章是演示如何使用Ultralytics公司的开源项目YOLOv5-6.1版本进行目标检测的文章,包括直接使用官方权重进行检测和部署,以及在自定义数据集上进行训练和部署,在学习本系列文章之前,需要知道Pytorch的基本使用和YOLOv5的原理,其他知识我们可以跟着文章来学。
2023-11-17 22:23:26
2507
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人