自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(330)
  • 资源 (4)
  • 收藏
  • 关注

原创 别再死磕全量微调了:用 LoRA 给 Agent 注入“肌肉记忆”

LoRA技术为大模型Agent提供了一种高效记忆解决方案。传统全量微调成本高昂,而纯RAG检索又存在延迟问题。LoRA通过低秩矩阵分解,只需微调少量参数即可将核心知识"内化"到模型中。其优势在于:仅需几百条垂直数据,避免海量训练集消费级显卡即可完成训练(如RTX3090)训练时间短(1-2小时)推理零延迟在Agent架构中,LoRA作为"参数化记忆"存储高频稳定知识,与RAG形成互补。这种方案实现了从外挂存储到内化记忆的进化,使Agent既能快速响应,又保持较低部署成本。

2026-05-06 14:59:48 263

原创 从 ToT 到 PRM:Agent 的规划是如何被“训练”出来的?

《智能Agent的规划能力进化:从单步决策到闭环自学习系统》摘要: 本文探讨了如何赋予AI Agent高级规划能力,突破大模型固有的单步决策局限。通过引入过程奖励模型(PRM)作为"裁判";机制,实现了对决策路径的动态评估与优化;设计了可学习的重规划策略网络,使Agent具备自主判断"坚持/修正/重来";的决策能力;采用技能库封装技术,将成功经验抽象为高层可复用模块。最终构建了规划与记忆深度耦合的双螺旋系统:规划过程不断沉淀经验到记忆库,记忆库又为后续规划提供支持,形成自我进化闭环。

2026-05-06 14:30:20 284

原创 Agent 记忆不只是一个向量库:检索门控、遗忘策略与参数化记忆

本文探讨了AI代理记忆系统的优化方向,提出从传统静态规则转向可学习的神经网络架构。文章首先指出传统RAG检索的三大痛点:固定权重公式无法动态适应不同查询需求。解决方案包括:1)采用MoE门控机制实现可学习检索,通过日志数据训练网络动态调整相关性、时效性等权重;2)引入强化学习驱动的写入/遗忘策略网络,智能决定记忆存储方式;3)最终通过LoRA微调将高频知识参数化,实现从外部存储到模型内部权重的跃迁。这些方法使记忆系统从静态仓库进化为具有"直觉"的动态神经网络,为智能代理提供更强大的经验支撑。

2026-05-06 14:11:58 296

原创 闭环才是 Agent:从架构看“规划”与“记忆”如何协作

《Agent架构解析:规划与记忆的闭环协同》 本文深入探讨Agent系统的核心架构,揭示规划与记忆模块如何形成高效闭环。Agent不同于传统开环推理,采用类似自动驾驶的闭环控制:感知→决策→执行→反馈→再决策。规划模块分战略与战术两层,需依赖记忆检索提供经验支撑;记忆模块则通过主动读取(任务相关记忆注入Prompt)和被动写入(持续记录执行结果)实现动态更新。通过电商爬虫案例演示了从失败到反思、记忆更新再到重规划的完整闭环,展现Agent如何通过外部系统实现"类梯度下降"的经验迭代。

2026-05-06 13:57:49 388

原创 从 CNN 到 Agent:给 DL 工程师的“智能体”入门黑话指南(概念篇)

过去几年,我的日常是“炼丹”——算 FLOPs、卡显存、调 Learning Rate、在 ResNet 或 YOLO 里加各种 Trick。在那个世界里,一切都很确定:输入一张 Tensor,经过一堆卷积层,输出一个预测结果。

2026-05-06 13:44:10 173

原创 构建高可靠企业级 RAG 系统:从 Naive RAG 到面向生成优化的防幻觉实践

构建高可靠 RAG 系统的核心哲学在于“悲观地对待模型能力,乐观地对待工程约束”。不要试图寻找一个“绝对不会幻觉”的大模型,而是要通过精密的检索链路(找得准)和严苛的指令工程(管得严),在物理层面上封死模型产生幻觉的通路。当系统真正做到了“知之为知之,不知为不知”,企业级 AI 的落地才算是迈过了最危险的深水区。

2026-05-06 11:25:43 346

原创 DeepseekR1的推理增强机制的核心

因为传统的 PPO 算法需要训练一个和主模型一样大的 Critic(价值网络)来打分,面对动辄几千 token 的长推理链,算力和显存直接爆炸。在 R1 中,思维链(CoT)不再是一个固定的 Prompt 模板,也不是人工标注的死数据。:先用少量高质量、带思维链的数据稳定模型,使其初步学会清晰、有序的“思考”模式,解决Zero版本可读性差的问题。过去的模型做推理,靠的是 SFT(监督微调)把人类写好的解题步骤“喂”给它,这叫。DeepSeek-R1 推理增强的核心,不在于改了模型架构,而在于它证明了——

2026-04-28 16:45:57 309

原创 拆解 DeepSeek-R1 的“大脑重塑”术(GRPO与CoT的极致共舞)

deepseekR1的推理增强机制,重点:GRPO思想+长CoT生成

2026-04-28 13:54:13 395

原创 VSCode Python 代码跳转失效?可能是这个设置搞的鬼

vscode更新后代码不能跳转

2026-03-11 17:02:41 430

原创 oimloss解读

标注身份:与某个目标人物匹配的候选框(正样本)。未标注身份:正确检测到了行人,但该行人不在目标人物列表中的候选框(有价值的负样本)。背景杂波:错误的检测,框住了背景或其他物体(忽略)。OIM Loss 只关心前两种。高效收敛:由于是“非参数”的,避免了学习庞大分类器矩阵的困难,收敛速度更快,效果更好(论文图6证实)。利用真实负样本:通过循环队列巧妙地利用了场景中天然存在的未标注行人,提供了海量高质量的负样本,增强了特征的判别力。与任务目标一致:训练过程(特征比较)和测试过程(特征检索)高度统一。

2025-11-14 11:49:04 805

原创 groundingDINO 测试时间-含环境部署

最大感受:(1)pytorch2.0及以上版本都是编译失败的,不要轻易尝试;(2)版本不一致,原始代码里面有些写法需要修改,更新后就没问题了。

2025-09-05 11:10:23 569

原创 下载指定版本的matplotlib

环境安装

2025-06-13 16:10:25 685

原创 SQL update select 功能使用

需要在MS.tbMSImageMapNew 表中将tagMask=1的值中随机选择1200个,将其值置为2,

2024-03-20 16:49:44 266

原创 yolov5_obb win10环境安装

yolov5 + csl_label.(Oriented Object Detection)(Rotation Detection)(Rotated BBox)基于yolov5的旋转目标检测 - GitHub - hukaixuan19970627/yolov5_obb: yolov5 + csl_label.(Oriented Object Detection)(Rotation Detection)(Rotated BBox)基于yolov5的旋转目标检测。”,这些我尝试了一些解决办法,都失败了。

2024-01-12 15:40:13 1389

翻译 Win10下编译DOTA_devkit

那个代码注释掉的是原文件的代码,意思就是说,先去找_polyiou.cp36-win_amd64.pyd文件,找到了然后就导入生成的_polyiou.cp36-win_amd64.pyd文件(后面会生成,后面说),但是遗憾的是imp现在不用了,改为用importlib了,所以更改导入代码就可以了。这里首先去下载这个文件,下载文件后,解压,进入文件夹,先找到polyiou.py这个文件,进行修改,如下图。能够输出这样的就可以了,不难的,慢慢来,到这里,已经完成了最难的了。

2024-01-12 15:16:57 431 1

原创 知识蒸馏开山之作(部分解读)—Distilling the Knowledge in a Neural Network

正常的模型学习到的就是在正确的类别上得到最大的概率,但是不正确的分类上也会得到一些概率尽管有时这些概率很小,但是在这些不正确的分类中,有一些分类的可能性仍然是其他类别的很多倍。但是对这些非正确类别的预测概率也能反应模型的泛化能力,例如,一辆宝马车的图片,只有很小的概率被误识别成垃圾车,但是被识别成垃圾车的概率还是比错误识别成胡萝卜的概率高很多倍。(cat,99%);;错误类别 dog 上的概率仍是错误类别 car 的概率的19倍 )

2023-08-23 14:34:09 604

原创 知识蒸馏Demo,非常详细,适合入门

知识蒸馏(Knowledge Distillation),简称KD,将已经训练好的模型包含的知识(”Knowledge”),蒸馏(“Distill”)提取到另一个模型里面去。

2023-08-23 10:48:46 1568 1

原创 CNN的特性

换句话说,它其实就是拿了同一张“通缉令”在“全国范围”内查找“嫌疑犯”,这样一来理论上就具备了位移不变性了(当然,受限于步进跨度、卷积核大小等因素的影响,某些条件下CNN也可能会存在“漏”的情况)。所以简单来说,卷积神经网络就是通过“大”和“小”卷积核的搭配和层叠,来满足图像识别中的尺度不变性的要求,同时降低参数数量的。从上述的描述中我们也可以看到,CNN的这种旋转不变性其实是“不可靠”的,带有一定的随机性质。它指的是无论物体在图像中的什么位置,卷积神经网络的识别结果都应该是一样的。

2023-08-09 15:53:44 1466 1

原创 python路径,pathlib更优雅

os.path将系统路径视为字符串,容易出现混乱。而pathlib将路径表示为独特的对象,并且引入了更多可扩展的用法,获取路径会更方便。,如果给定的路径对象是嵌套的,则仅删除最后一个子目录。Path子类的使用,可以用该类创建文件夹和目录。它将返回带有后缀的文件名,若只想要前缀,则使用。假设我们需要获取某个文件夹下所有的txt文件。检查路径是否存在,可以使用布尔函数。如果要将路径分成多个部分,可以使用。的方式,比如,使用当前工作路径。属性,它会创建一个生成器。查找主目录中所有文本文件。要删除目录,可以使用。

2023-08-08 10:25:02 342

原创 SQL查询语句

随机删除5条tbImage表中 R1=188的记录。查询tbImage表中的属性值为188的所有行。

2023-07-29 20:02:13 258

转载 TensorRT部署流程

第一种不够灵活,第三种比较麻烦,所以最省事方便的就是第二种方法。本文介绍第二种。ONNX 就是一个通用的神经网络格式,一个.onnx文件内包含了网络的结构和参数。甭管是用什么深度学习框架写的网络,只要把模型导出成 ONNX 格式,就跟原本的代码没有关系了。转成 ONNX 格式还没有被优化,需要再使用 TensorRT 读取它并优化成 TensorRT Engine。优化参数也在这一步指定。

2023-07-23 21:43:02 1614

原创 预训练—冻结权重

方式:将不更新的参数的requires_grad设置为Fasle,同时不将该参数传入optimizer.(1)不更新的参数的requires_grad设置为Fasle(2)不将该参数传入optimizer最优写法能够节省显存和提升速度:节省显存:不将不更新的参数传入optimizer提升速度:将不更新的参数的requires_grad设置为False,节省了计算这部分参数梯度的时间。

2023-07-12 15:56:38 1982

原创 加载预训练模型方法

【代码】加载预训练模型方法。

2023-07-12 11:04:58 436

原创 预训练模型相关整理

本文通过实验说明结果,在ImageNet的1000个类中,作者将其分成2份(A与B),每份包含500个类,这里是随机分的。然后分别针对A和B份,分别训练一个AlexNet网络。关于AlexNet的结构就不多说了,一共8层,前面5层是卷积层,后面3层是FC层。作者分别对n=1~7进行了实验,举个例子:比如n=3,那么AnB就是说在一个新的AlexNet上,前三层采用A网络的前三层并且将其frozen,后5层随机初始化,然后在B数据上去训练。

2023-07-11 16:18:14 626

原创 TensoRT8.4_cuda11.6 sampleOnnxMNIST运行生成

sampleOnnxMNIST运行生成

2023-03-08 15:10:20 716

原创 TensorRT介绍及使用

tensorRT部署前期,engine生成方式

2022-12-30 10:14:27 3171

原创 YOLOV5预训练权重下载方法

YoloV5 预训练权重下载方法

2022-12-14 20:24:09 38065 11

原创 AttributeError: ‘tensorrt.tensorrt.Builder‘ object has no attribute ‘max_workspace_size‘

TensorRT配置

2022-09-05 17:45:41 7966 13

原创 模型的指数移动平均EMA

1、概念指数移动平均(Exponential Moving Average,EMA),也叫权重移动平均(Weighted Moving Average),是一种给予近期数据更高权重的平均方法。就是说,用原理数据来影响现在数据的更新。通俗版本理解:EMA是将每次梯度更新后的权值和前一次的权重进行联系,使得本次更新收到上次权值的影响。2、原理公式:a代表衰减率,该衰减率用于控制模型更新的速度,一般设为0.9-0.999。该值越大表示与上一次的影响越大,本次权重变化越小,与上次权重越接

2022-01-13 12:15:08 3866

转载 机器学习分类

根据问题本身的特征来分类,机器学习问题可分为监督学习、无监督学习、半监督学习和强化学习。 ● 监督学习(Supervised Learning)的特点是训练数据是有标签的,即对于每个输入都有相对应的输出,算法的目的是训练出能反应输入与输出之间的映射关系的模型。对于输出值是离散的(有限个数),称之为分类问题(Classification Problem);对于输出值是连续的,则称之为回归问题(Regression Problem) ● 无监督学习(Unsupervised...

2021-12-06 10:50:30 647

原创 apex windows 安装步骤

第一步:直接上github上下载apex-master。链接为:GitHub - ptrblck/apex: A PyTorch Extension: Tools for easy mixed precision and distributed training in Pytorch第二步:解压后打开,可以看到requirements.txt文件夹,里面写了依赖及版本要求,需要将里面写的依赖装好,具体操作为:进入anaconda的虚拟环境,然后进入倒apex的解压目录下,执行命令:python setup

2021-11-22 10:27:02 3585 2

原创 STL——string字符串的插入和删除、子串的功能

代码实现:#include<iostream>#include<string>using namespace std;//字符串的插入和删除void test01(){ string str1 = "hello"; //字符串的插入 str1.insert(1, "111");//从第一个位置起,插入111 cout << "str1=" <<str1<< endl; //字符串的删除 str1.erase(1, 3

2021-05-07 17:14:23 881

原创 STL——string字符串比较、字符存取

一、string字符串比较功能描述:字符串之间的比较比较方式:字符串是按照ASCII码进行比较的,=返回0>返回1<返回-1函数原型:int compare(const string &s) const; //与字符串s比较int compare(const char *s) const; //与字符串s比较Demo:#include<iostream>#include<string>using namespa

2021-05-07 16:17:02 1425

原创 STL——string查找和替换

功能描述:查找:查找指定的字符串是否存在替换:在指定位置替换字符串函数原型:* int find(const string& str, int pos=0) const;//查找str第一次出现的位置,从pos位置开始查找* int find(const char*s, int pos=0) const; //查找字符c第一次出现的位置,从pos的位置开始查找* int find(const char*s, int pos, int n) const; //从pos的位置开始查找

2021-05-07 16:00:32 896

原创 STL——string的赋值操作

功能:给string字符串进行赋值 string字符串拼接操作赋值的函数原型:共有2种,分别为operate=和assign两种。string& operator=(const char *s); //char*类型字符串 赋值给当前的字符串string& operator=(const string *s); //把当前的字符串s赋值给当前的字符串string& operator=(char c); //字符赋值给当前的字符串string& ass

2021-05-07 13:39:35 1654

原创 STL——String

一、基本概念1、string是C++风格的字符串,而string本质是一个类2、string和char*的区别:char*是一个指针string是一个类,类内部封装了char*,管理这个字符串,是一个char*型的容器3、特点:string类内部封装了很多成员方法如,查找find,拷贝copy,删除delete,替换replace,插入insert4、string管理char*所分配的内存,不用担心复制越界和取值越界等,由类内部进行负责。二、基本操作构造函数原型:

2021-05-07 11:07:59 149

原创 C++——迭代器

Vector可理解为数组容器:vector算法:for_each迭代器:vector<int>::iterator小demo:#include <iostream>#include<vector>#include<algorithm>using namespace std;void myPrint(int val){ cout << val << endl;}void test01()

2021-05-06 22:55:51 213

原创 STL——初识

一、诞生1、C++ 面向对象和泛型编程的思想,目的就是代码复用性的提升。(1)面向对象的三大特性是:封装:将一些属性和行为抽象出来形成一个整体,形成一个事和物,提高代码复用性。继承:子类继承父类,将父类中的行为和属性都可以拿到,提高代码的复用性;多态:父类指针指向子类对象,由于子类对象不同,调用同一个接口会产生不同的形态,提高代码的复用性。(2)泛型编程主要是模板,将参数模板化后,使得函数更加通用化。2、STL算法是Standard Template libaray,即标准模板库

2021-05-06 10:47:44 198

原创 C++_opencv透视变换应用—抠图和换广告牌

透视变换作用:将图片映射到一个新的视平面,也称为投影映射。透视变换和仿射变换的区别:(1)、仿射变换,它可以将矩形转换成平行四边形,也可以将矩形的边压扁但必须保持边是平行的,也可以将矩形旋转或者按比例缩放。透视变换除了能够处理仿射变换的操作外,还可以将矩形转换成梯形。即仿射变换后还是平行四边形,透视变换后是四边形。因此可以说仿射变换是透视变换的一个子集。(2)、在OpenCV中,基于2*3矩阵进行的变换,是图像的仿射变换;基于3*3矩阵进行的变换,是图像的透视变换或者单应性映射。图像透视变换多用

2021-04-25 11:48:23 1591 1

原创 C++——隐式调用动态库.dll

1、依据上个项目中创建的DemoDll工程。在此工程中添加新建项目,控制台程序。然后再新建一个.cpp文件。里面的内容如下:// XianshiInvokeDll.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。#include <iostream>#include <Windows.h>//第一步,创建一个别名,它引用的的函数类型需要和dll中的导出函数一致typedef int (*LPDO_ARRAY) (int* pArr, int

2021-03-31 17:00:04 1738

数据增强方法

深度学习在数据量较小的情况下需要进行数据增强操作。本代码可以进行执行,增强数据

2019-03-03

data_argument.py

python实现数据扩增操作(含有水平、垂直翻转,各种颜色抖动(高斯模糊,普通模糊,边缘增强,浮雕,轮廓等),多角度旋转)。自己也用这代码,真实可靠

2020-02-29

sobel 算子计算图像梯度

使用sobel 计算图像的梯度,调用torch和CV2实现,可以在pytorch代码中直接使用

2019-03-25

vgg19模型下载连接.txt

vgg19. npy在cartoonGAN的tensorflow版本中可以用到,如果没有梯子的话是下载不到了的

2019-07-26

空空如也

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

TA关注的人

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