- 博客(18)
- 收藏
- 关注
原创 MMdetection训练RetinaNet等报错:465 - The testing results of the whole dataset is empty.
类似于这样的报错,大概率就是数据有问题,检查一下coco的json文件的标签,annotations是否正常?有时候网上那种转换的代码有暗坑,比如你原始图片是png的,你用的转换代码可能只适用于jpg,转过来的时候images有信息,annotations没有信息。不是数据集的问题哦,num_classes也对,就是模型不收敛!先写这么多,mmdetection好久没用,又回来踩坑了。调小学习率多等几轮吧。什么是数据集的问题?
2025-01-17 15:52:43
219
3
原创 AttributeError: ‘int‘ object has no attribute ‘type‘
报错原因:可能是原先代码用了多卡训练,返回的是列表如['0','1'],然后我这里只有单卡,返回的是整数0被识别了,就产生了错误,得在源头上让单卡是0的情况也被识别成功。对mm系列真的是又爱又恨,很方便做baseline又特别容易报错,有时候报的错还解决不了。解决方法:为了不动pytorch包下的文件,我这里改了mmdet的内容。
2024-11-22 14:44:41
420
1
原创 书生大模型第四期打卡 | OpenCompass评测
现在开源的大模型很多,要比较大模型的性能孰优孰劣,需要建立一个完整的评价体系。OpenCompass可以理解为一种对大模型进行评价的平台,评测大模型我理解的话应该会是有一些指标的,比如accuracy、相似度之类的。4、配置数据集,同上,touch opencompass/configs/datasets/demo/demo_cmmlu_chat_gen.py,也是在目录下加这个python文件。这一步要把API_KEY换成自己的,也就是上一步外部导入的API,复制过来就行。
2024-11-18 16:55:57
328
原创 书生大模型第四期打卡 | 第五关 大模型微调之Xtuner
微调命令 xtuner train,config是配置文件即internlm2_5_chat_7b_qlora_alpaca_e3_copy.py,deepseed节约显存,work-dir是文件保存位置。1、增量预训练:通过文章、书籍、代码等,让基座模型学到一些新的知识,如某个垂类领域的常识。2、指令跟随微调:通过高质量的对话、问答数据,让模型学会对话模版,根据人类指令进行对话。修改问题,这里的问题用于评测训练表现,应当与要微调的内容相关?3、修改提供的数据,创建新文件夹并创建修改脚本。
2024-11-14 21:54:01
497
原创 踩坑记录1
1、尝试用1.x版本的pytorch,结果3080ti的硬件不支持这个版本。辛辛苦苦按照作者配了半天环境,现在要重新来了。有时候真的一天都在debug,配置环境都没做好,感觉没有意义。在这里开个帖子记录一下。2、新版本的pytorch,没有torch_six。接下来就是做custom dataset了。
2024-11-13 17:13:49
126
原创 Autodl使用体验
刚入门深度学习的时候只是用做一些简单的机器学习回归聚类任务,毕设的时候研究故障诊断,因为处理的都是表格化数据,数据量也不是很大,因此笔记本8G的显存足够,顶多就是卡一会,很少会有炸显存的情况出现。读研后用实验室服务器,实验室有2张3090ti,条件确实不错,但是我们一共有6个人去共用这两张卡,经常会有抢占问题,而且没有root权限,在安装一些c++环境的时候没有办法使用sudo、apt这些命令,局限性较大。2、在jupyter上面跑模型,不用担心ssh断了之后,模型中断,不用设置nohup之类的了。
2024-11-12 01:04:23
467
原创 书生大模型第四期打卡 | 基础岛 第四关 InternLM+LlamaIndex RAG 实践(下)
基于 LlamaIndex 构建自己的 RAG 知识库,寻找一个问题 A 在使用 LlamaIndex 之前 InternLM2-Chat-1.8B 模型不会回答,借助 LlamaIndex 后 InternLM2-Chat-1.8B 模型具备回答 A 的能力,截图保存。:基于 LlamaIndex 构建自己的 RAG 知识库,寻找一个问题 A 在使用 LlamaIndex 之前 浦语 API 不会回答,借助 LlamaIndex 后 浦语 API 具备回答 A 的能力,截图保存。第一步,安装依赖项。
2024-11-07 23:05:30
1000
原创 huggingface的connection error
连不上huggingface的时候,export HF_ENDPOINT=https://hf-mirror.com说不定很有用,可以不用专门从huggingface上下载模型了。
2024-11-07 16:00:38
141
1
原创 代码随想录算法训练营第六天 | Leetcode 1 两数之和 Leetcode 454 四数之和 Leetcode 383 赎金信
hashtable要记录的键和值分别对应前两个列表的和和次数,如何实现次数的积累?后面依然用两层循环,记录后两个列表和的相反数key,如果key在里面,次数+1,最后就可以统计出元组的个数。当要找的另一个数在哈希表里面,返回两个数,然后将i,nums以哈希表的形式存入字典。这样可以转化为根据前两个数的和建立哈希表,然后查询后两个数的和的相反数是否在前两个数和所在的哈希表里面。核心是用一个循环i,找target-i在不在列表中,哈希表可以快速实现找target-i的过程,而无需引入额外的循环,降低了复杂度。
2024-11-06 16:14:57
254
原创 书生大模型第四期打卡 | 基础岛 第四关 InternLM + LlamaIndex RAG 实践(上)
受不了这种一天光看论文又感觉没啥收获的日子, 看也是囫囵吞枣地看,不知道这些方法怎么迁移到自己现有的研究中来,感觉科研真的还是需要氛围和有人带带,不过也是因为自己之前没积累够+现在浮躁焦虑。这里有报错,原来是base_url定义的时候后面多了一个逗号,导致传入的时候把它处理为一个元组了,逗号删去即可跑通(在我上面给的版本中已删去)。3、创建文件夹llamaindex_demo,并在里面创建下载模型的代码为download_hf.py,然后执行。先到这,明天完成对RAG的分析、网页化和两个闯关作业。
2024-11-06 01:48:11
279
原创 书生大模型第四期打卡 | 基础岛 第一关 书生浦语大模型开源开放体系
书生浦语性能评估,介于gpt3.5和gpt4之间。 多模态语料库进行预训练。(似乎不是train from scratch,是基于fine-tuning的) 特点:从预训练到微调到部署方案全流程开源。国产。 这里我只能看懂pytorch engine了。 依然基于Agent开发出了很多垂直领域的解决方案。 特点如下,总之就是非常厉害。
2024-11-05 16:39:17
222
原创 代码随想录算法训练营第五天 | Leetcode 242 有效的字母异位词 Leetcode 349 两个数组的交集 Leetcode 202 快乐数
看了其他方法,有建立哈希表来进行判断的,写一个memo{}来存储字符出现的个数,然后遍历s,存入所有字符和次数,再遍历t,取出所有字符和次数,最后再次遍历,检查memo[i]是否等于0,否则返回False。1、哈希表:可以通过关键码的值直接访问的数据结构(如数组),用于快速判断一个元素是否出现在集合里,通过hashcode将特定的字符映射为数值进行存储。代码随想录笔记中给出了这样的解法,利用了ASCII码的运算记录相对数值。代码随想录的题解也给出了很简介的解法,思路大概一致,用了set变成集合。
2024-11-05 01:07:21
262
原创 书生大模型第四期打卡 | 基础岛 第三关 LangGPT结构化提示词编写实践
提示词设计框架有CRISPE、CO-STAR等,具体来说有一些技巧,比如通过假设角色来更好地拟合任务背景(你是一个人工智能领域的专家、你是一个精通简化代码的程序员),明确LLM所能够达到的目标(您的任务是为我详细为我讲述CNN的原理),尽可能详细任务内容(包括卷积核、通道数、步长等详细的概念内容),设定回复风格(请以严谨准确的词汇表达),设置回复对象(我是一个六岁的小孩请务必能让我听懂),以及回复格式(json格式、csv格式)。我是您的提示词专家助手,请随时告诉我您需要设计什么用途的提示词吧。
2024-11-04 15:25:45
536
1
原创 TabError: inconsistent use of tabs and spaces in indentation
TabError: inconsistent use of tabs and spaces in indentation
2024-11-03 02:01:21
606
原创 代码随想录算法训练营第三天 | Leetcode 203 移除链表元素
有点抽象,举个例子。当前链表有[A,toB],[B,toC],[C,toD]三个节点,现在在[A,toB]这个小节,head.next就是指向B这个小节,刚好我的val值是B,那么toC就被赋值为head.next,就是[C,toD]这个小节,(我的下一个的下一个是我),就没有[B,toC]这个小节了。=None),判断下一个节点的值是否为val,如果为val则跳过下一个节点,即cur.next=cur.next.next,如果不为val,前进一个节点cur到cur.next的位置进行下一步判断。
2024-11-02 00:42:22
314
原创 代码随想录算法训练营第二天 | Leetcode 209 长度最小的子数组 59 螺旋矩阵
好的,那我就开始遍历,累加子数组的和为sum,创建一个空列表list1储存满足子数组和≥target的值时的长度。先动right,当right小于l时,累加值cur_sum等于当前right的累加值,当累加值大于目标值时,取当前最小累加区间长度和右-左的数列片段中的最小值,作为新的累加区间长度,此时累加值要减去左边的值数,然后让左边的指针也动起来。还有一个尴尬的问题,当n为奇数的时候,loop向下取整的,导致少转一圈,所以要填充一下中心值,中心值的索引是[mid,mid],填充值为现在出来的count。
2024-10-31 23:45:58
304
原创 代码随想录算法训练营第一天 | Leetcode 704 二分查找 27 移除元素 977 有序数组的平方
大概是是说数组赋值的时候并不能直接将值赋值过去,否则只会改变引用,并不能改变数组本身,要修改代码,用new_nums重写nums,需要用nums[:] = new_nums,用切片赋值清空原数组并替换内容,表示nums的整个列表里的数值都被new_nums替换。=val的时候,才让k指针位置的值赋在当前的i上,同时k指针+1,这样就不用因为del操作占时间了。结果是对了,但没有用二分查找,先说一下我这个代码,要注意的是,那个return的位置不要写在for循环里了,不然就会只返回-1。
2024-10-30 21:34:18
427
1
空空如也
ssh配置解释器时失败!
2024-01-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人