- 博客(175)
- 资源 (4)
- 收藏
- 关注

原创 YOLO系列汇总 | YOLOv1~YOLOv9持续更新
而上图(e)中,在使用lead head和auxiliary head一起优化模型的时候,auxiliary head的正样本是较为“粗糙的“,主要是通过放宽正样本分配过程的约束来获得更多的正样本。针对每一个gt,其中s是每个anchor点对应的gt类别的分类置信度,u是每个anchor点对应预测的目标框与gt的IoU,a,b表示外部配置的指数,两者相乘就可以衡量对齐程度alignment metrics。,重新定义了距离损失,有效降低了回归的自由度,加快网络收敛,进一步提升了回归精度。
2024-04-13 18:06:59
1142

原创 《剑指Offer》-面试题Python实现合集
《剑指Offer》作为互联网行业求职必看的书籍,其中收录了各大公司招聘时常问到的一些面试题,对于大家通过技术面颇有裨益。因此这个月我也花了接近三周早上的时间,用于通览全书。由于书中是用C++实现的,而本人主要使用Python,因此在掌握解题思路后,采用Python对每个面试题进行了重构。本着先过一遍再慢慢消化和吸收的原则,仓促完成了所有面试题的重构。如有问题,欢迎大家交流讨论~全部代码放在了Gi...
2019-06-26 23:30:20
2456
2

原创 《机器学习》-周志华版学习笔记目录
原定于11月分完成周志华老师所著的《机器学习》的学习,并整理出学习笔记的计划,截至今天总算是基本完成了。中间出了一趟差,周内的还需要做一些项目上的工作,其实时间还是非常的紧的,所以每天基本是上是早上看书,下午项目,晚上总结笔记这样一个时间安排。有的时候真的是看不进去,也不理解,就想着算了吧,算了吧。但是想想飞逝的时间,就不禁产生了一种紧张感,就是这种紧张感让我硬着头皮看下去。 看书时常有不...
2018-12-01 00:06:29
1641
3
原创 【踩坑日志】解决CU118环境下RuntimeError: NCCL error: invalid usage
本博客主要记录了CU118环境下,出现报错信息为的解决方案。
2025-03-01 16:57:46
1016
原创 【大模型系列】CogAgent(2024.12)
值得注意的是,在给定相同的截图、用户指令、历史操作的情况下,可能会有多个正确的输入,例如点击“发送”按钮和按下回车键都可以发送消息。高分辨率的图像编码参与到visual language decoder的过程中,在每层MSA(Multi-Self-Attention)层之后,再添加一个cross-attn层,原MSA的输出作为q,高分辨率的图像编码作为k-v,参与运算,最后cross-attn的输出维度与原MSA的输出维度保持一致。不过对于复杂的任务,或者打开一个冷门没见过的应用就不太行了。
2025-01-11 16:48:44
745
2
原创 【大模型系列】Mobile-Agent(2024.04)
文本检测模型:文本定位,OCR toolsOCR没有检测到指定文本:agent重新选择文本或者选择替代操作OCR检测到一个包含指定文本的实例:直接点击文本框的中心OCR检测到多个包含指定文本的实例:如果检测到的实例特别多,则需要重新选择文本实例;如果实例数量比较少,根据检测据区域外扩后截图,再将检测框画在截图上,最后让agent决策点击哪一个图标检测模型:图标定位,icon检测工具+CLIP;首先让agent提供需要点击的icon的属性(颜色和形状),
2025-01-02 22:27:54
1036
原创 【大模型系列】MultiUI(2024.11)
先基于text-based LLMs获取网页的accessibility tree(辅助功能树,),然后再与网页截图一起作为多模态数据,训练多模态模型。公开了MultiUI数据集,从1M网页中收集了7.3M的样本,包含多种UI任务(3类,9种任务)和界面。
2025-01-02 22:19:34
1014
原创 【大模型系列】Grounded-VideoLLM(2024.10)
针对长视频,均有抽取96帧还是否有效?关键帧选取每个片段的中间帧是否合理?理想情况下每个片段场景应该类似,但是实际中,每个片段可能出现不同的镜头拍摄角度。以关键帧作为间隔来分割会更合理但是会出现不均匀分割的现象。
2024-11-07 22:15:48
1336
原创 【大模型系列】Video-XL(2024.10)
提出了一个Video-XL模型,可以有效地对小时级别的视频进行理解,在A100-80G GPU上可以处理2024帧,大海捞针任务(Needle-in-haystack)中取得100%的准确率;引入一个长视频数据集(2min~10min)VICO(Visual Clue Ordering)
2024-11-07 22:08:45
1053
原创 【大模型系列】Mini-InternVL(2024.10)
核心1:通过蒸馏的方式得到Visual encoder(InternViT-6B -> InternViT-300M),与InternVL2-76B对比,mini-InternVL-4B仅用5%参数实现90%的性能核心2:提出一个迁移到不同下游任务学习框架。
2024-10-28 22:57:38
1099
原创 【大模型系列】mPLUG-Owl3(2024.08)
增强了处理长图片序列的能力提出了一种hyper attention blocks,有效地将视觉和余元集中到一个共同的由语言引导的语义空间提出了一个长视觉序列评估基准:Distractor Resistance核心创新点:visual feature不直接作为LLM的输入,而是在LLM中间几层参与计算,再与文本特征融合到一起,因此不会因为输入的图片多而导致超出LLM的最大输入限制。mPLUG-Owl指标层面一般,与Qwen2VL-7B还有一定的差距。
2024-10-28 22:36:55
1007
原创 【大模型系列】Qwen2-VL(2024.10)
Qwen团队开源了Qwen2-VL系列模型,支持多语言图像文本理解、代码/数学推理、视频分析、实时聊天、代理等。支持动态分辨率输入,并在训练过程中引入了2D-RoPE,从而使模型更好的捕获不同空间尺度的信息;开发了M-RoPE,使用单独的组件来表示时间和空间信息,使模型可以更自然的理解动态内容如视频或者流数据;ModelLMM675M1.5B最高效的模型,专为在设备上运行而设计。它可以为资源有限的大多数场景提供足够的性能。675M7.6B。
2024-10-15 23:00:12
2833
原创 【踩坑日志】解决分卷压缩文件xxx.tar.gz使用tar解压缩出现gzip: stdin: unexpected end of file问题
可以重新下载,并确认下载是否完整。即先将所有分卷拼接在一起再解压缩,xxx.tar.gz.000?就是匹配所有的分卷压缩文件,注意命令最后的。
2024-09-24 17:25:23
1408
原创 【大模型系列】Flash-VStream(2024.06)
Flash-VStream是由来自于清华和字节的研究团队开发的一个视频问答模型(VideoQA)通过设计一种名为STAR的内存机制来实现在有限计算资源的前提下,能处理极长的视频流;开源了一个新的VideoQA Benchmark:VStream-QA Benchmark空间记忆容纳短期使用的最新的且详细的空间信息,并以FIFO队列的形式实现。
2024-08-24 12:46:03
1311
原创 【大模型系列】Video-LLaVA(2023.12)
Video-LLaVA是北大袁粒团队提出的一个视觉理解模型,是他们之前工作的延申。通过将Image和Video特征隐射到一个统一的视觉空间进行对齐,得到统一的visual representation。当前LLM模型的问题:视觉模型被作为即插即用模块,LLM根据特定的任务来schedule(VisualChatGPT、HuggingGPT、MM-REACT、ViperGPT),这些模型不需要端到端训练,也无需对每种模态进行联合和训练和对齐;MiniGPT-4:使用线性投影层将图像与文本对齐;
2024-08-04 21:03:36
1394
原创 【大模型系列】LanguageBind(ICLR2024.01)
LanguageBind是北大袁粒团队提出的一个多模态语义对其的方法,通过将各种模态(图像、视频、红外、音频、深度)映射到一个共享的特征空间,与文本实现对齐。同时该论文还开源了一个VIDAL-10M的数据集,包含多种模态(≥3)的数据。
2024-08-04 20:34:24
1411
原创 【踩坑日志】解决VideoReader出现Thread worker: Error sending packet报错
将线程数量设为1即可解决。初步怀疑是decord库在多线程处理某些视频时存在问题。
2024-08-01 15:23:39
1034
原创 【大模型系列】Video-LaVIT(2024.06)
Video-LaViT是LaViT这篇工作的拓展,详见上一篇博客【大模型系列】Language-Vision Transformer(LaVIT, ICLR2024),作者同样来自于北大和快手。思路与LaViT类似,通过将视频分解为交替的关键帧和运动向量,关键帧采用LaViT中的Image tokenizer,运动向量则设计了一个Motion tokenizer来进行编码。然后通过[IMG]、[/IMG]和[MOV]、[/MOV]来区分。
2024-07-30 22:49:07
1151
原创 【大模型系列】Language-Vision Transformer(LaVIT, ICLR2024)
LaVIT是Language-VisionTransformer的简称,作者来自于北大和快手科技。文章提出了一种将图片tokenization的方式,使图片可以与language一样,可以用一组token来表示,这样图片就可以跟language的token合并在一起作为LLM的输入,通过自回归的方式来训练网络,相当于统一了视觉和文本两种模态的输入,其中图片的token前后通过两个特殊的token[IMG]和[/IMG]来与文本的token区分。所以文章的重点就在于如何将图片tokenization。
2024-06-30 17:17:12
1150
原创 【大模型系列】大模型的上下文长度解释与拓展
大模型的上下文长度(Context Length)是指在自然语言处理(NLP)的大型语言模型(Large Language Models,LLM)中,模型在处理输入信息时能够考虑的最大文本量(一次处理的最大tokens数量)。可以处理更复杂的查询和更长的文档更强的理解能力推理时间变长推理显存空间变大大模型在持续推理的过程中,需要缓存一个叫做 KV Cache 的数据快,KV Cache 的大小也与序列长度成正比。
2024-04-30 23:42:18
9601
原创 【炼金术士】BatchSize对网络训练的影响
首先我们设置一个非常小的初始学习率,比如1e-5,然后在每个batch之后都更新网络,同时增加学习率,统计每个batch计算出的loss。最后我们可以描绘出学习的变化曲线和loss的变化曲线,从中就能够发现最好的学习率。针对BatchSize越大,网络训练速度快这条很好理解,在相同的单位时间内,一次训练的数据越多,网络训练的速度也就越快。初始的学习率肯定是有一个最优值的,过大则导致模型不收敛,过小则导致模型收敛特别慢或者无法学习,下图展示了不同大小的学习率下模型收敛情况的可能性。
2024-04-25 00:03:39
2078
原创 【大模型系列】大模型评价指标总结
参考资料:BLEU (BiLingual Evaluation Understudy) 是一种评估机器翻译文本的指标,但也可用于评估生成文本的质量,通过比较机器生成的文本和人类生成的参考文本的重叠程度。BLEU 得分是一个 0 到 1 之间的数字,用于衡量机器翻译文本与一组高质量参考翻译的相似度。0 表示机器翻译的输出与参考翻译没有重叠(低质量),而 1 表示其与参考翻译完全重叠(高质量)。定义如下:BLEU=∏i4min(1,exp(1−reference-lengthoutput-length))⏟
2024-04-20 17:26:26
12930
原创 【论文阅读】YOLO-World | 开集目标检测
通过视觉语言建模和大规模数据集上的预训练来增强YOLO的开发词汇检测能力。YOLO-world提出了一种prompt-then-detect范式:先提示,再检测。即将单词先转化成一系列离线的embedding,再将其重参数为模型的参数,参与到目标检测任务中来。
2024-04-18 23:40:28
2396
1
原创 YOLO系列 | 正负样本分配策略
YOLOv5的正负样本分配策略是基于邻域匹配,并通过跨网格匹配策略增加正样本数量,从而使得网络快速收敛,但是该方法属于静态分配方法,并不会随着网络训练的过程而调整。注意:yolov4的GT需要利用max iou原则分配到指定的检测头上,然后再与指定检测头上的3个anchor box计算正负样本和忽略样本。选取与gt的IOU最大的bounding box或者anchor,作为真样本,剩余的都是负样本。YOLOv4:只要anchor与gt的IOU大于某个阈值,都可以作为正样本。
2024-04-13 23:39:40
3606
1
原创 【大模型系列】一文看懂SAM大模型
参考资料:SAM模型大致上分成3个模块,一个标准的vit构成的image encoder、一个prompt encoder和一个mask decoder。其中:从结构上看,sam的encoder部分就是堆叠transformer的block结构,最后再跟一个neck,调整输出embedding的维度。Meta开源了三个模型,分别是vit_h, vit_l和vit_b,这三个模型的区别仅仅在于内部patch embedding维度、transformer的block的个数以及每个block中head的数量和全
2024-03-23 10:56:20
24054
21
原创 【大模型系列】问答理解定位(Qwen-VL/Llama2/GPT)
在模型解码过程中,模型是根据前一个结果继续预测后边的,依次推理,此时为了生成完整的句子,需要融合多个step的输出,目标就是使得输出序列的每一步的条件概率相乘最大。在第二步,A和C作为输入,继续预测,则有10个可能得结果,然后再取其中最大的2个,作为输入,进行第三步,取结果中概率最大的2个,得到2个结果,然后再在2个结果中取最优的一个作为输出。对于下图的上半部分,对于2048之后的位置超出了训练2048的长度,模型推理时,该部分很可能就随机乱猜了,导致生成的结果不好。,是decoder-only的模型。
2024-03-16 12:21:16
3093
2
原创 【大模型系列】统一图文理解与生成(BLIP/BLIPv2/InstructBLIP)
问题一:目前VLP(Vision-Language Pre-training)数据大多来自于网络爬取,如CLIP。其中的caption包含很多噪声,不是一个理想的监督来源;问题二:在以往的VLP框架中,仅在理解任务或者生成任务方面表现出色,很少有可以兼顾的模型。针对问题一:提出一种bootstrapping caption的方案来“提纯”带噪声的网络爬取数据,从而提升多模态模型的能力;针对问题二:提出一种新的VLP框架BLIP统一视觉语言理解和生成任务,比现有的方法更适应广泛的下游任务;
2024-03-16 11:01:14
3933
原创 【大模型系列】图片生成(DDPM/VAE/StableDiffusion/ControlNet/LoRA)
ControlNet 是一个任务相关的端到端方法,即对于每一种控制类型都要训练一个特定的 ControlNet 支持, 比如线图控制、深度图控制、姿态控制等等。这样有好处也有坏处, 单独看一个场景,拥有使用简单、训练成本低等优点。但是,如果面对一个复杂场景(多场景),反而变得略麻烦,每一个细分场景都要训练和维护一个模型, 成本高昂,也不易用。LoRA与Adapter的区别:adapter是在模块的后面接上一个mlp,对模块的计算结果进行一个后处理。
2024-03-14 23:38:53
2938
原创 【大模型系列】根据文本检索目标(DINO/DINOv2/GroundingDINO)
DINO 中最核心的数据采样策略便是图像裁剪,这也是自监督学习领域应用非常广泛的主策略之一。
2024-03-09 17:45:14
10358
5
原创 【大模型系列】图文对齐(CLIP/TinyCLIP/GLIP)
给定待编辑的真实图像,我们首先使用StyleGAN inversion方法得到其隐编码,然后我们的头发映射器根据隐编码和条件输入(发型条件、发色条件)预测隐编码相应的变化,最后修改后的隐编码将被送入StyleGAN产生对应的头发编辑后的图像。分成G个阶段进行,每个阶段在前Lm step里做亲和蒸馏和继承训练(根据step更新当前稀疏度p,然后计算亲和力蒸馏损失,然后当前稀疏度p和目标稀疏q计算稀疏损失,然后更新mask和权重),然后将不重要权重移除,Lm后续的训练用亲和训练。
2024-03-09 14:10:29
5914
原创 YOLOv9理性解读 | 网络结构&损失函数&耗时评估
由台北中研院和台北科技大学等机构的研究团队推出的新的目标检测算法,一作Wang Chien-Yao也是Yolov4、Yolov7的作者之一,之前在Alexey Bochkvoskiy(Yolov4的第一作者)的团队中。
2024-02-29 23:13:43
7093
6
原创 【论文阅读】YOLOv3-YOLOv3: An Incremental Improvement
文章目录1. 细节1.1 Bounding boxes prediction1.2 Class Prediction1.3 Predictions Across Scales1.4 Feature Extractor2. 结论3. 一些失败的实验YOLOv3的论文相较于前两个版本,没有太大的改动,作者以一种实验报告的形式描述了YOLOv3的改进部分及实验结果,也非常坦率地公布了一些不太成功的实验...
2020-04-13 19:09:13
648
原创 【论文阅读】YOLO-v2: YOLO9000: Better, faster, stronger
文章目录1. 动机2. 方法2.1 改进2.2 联合多个数据集的训练机制3. 总结1. 动机 当前大部分的目标检测模型都只能检测很少的类别,这主要是受到数据集的影响。相较于分类和tagging任务的数据集,目标检测数据集规模小,比如样本数量,类别等。所以在YOLOv2的论文里面,作者不仅提出了一个升级版本的YOLO,最主要的贡献是还提出了一个联合多个图片分类的数据集和目标检测数据集训练目标检...
2020-04-12 22:55:58
595
原创 【论文阅读】RegNet-Designing Network Design Space
文章目录1. 动机2. 方法2.1 网络基本结构2.2 从AnyNetA到AnyNetE2.3 RegNet3. 总结4. 没有理解透的点1. 动机 当前设计网络结构的方法大部分是基于手工的,即通过做实验来确定相对最优的网结构。如果网络结构比较复杂,需要调整的超参数较多,手工的方式就很难找到最优的网络结构。所以大佬们设计了NAS(Network Architecture Search)及其拓...
2020-04-07 18:32:57
3097
1
原创 【论文阅读】YOLOv1-You Only Look Once: Unified, Real-Time Object Detection Joseph
文章目录1. 动机2. 方法2.1 网络结构2.2 模型成功关键因素2.2.1 图片网格化(gird)2.2.2 训练中的一些神操作2.2.3 LOSS的设计3. YOLO的优缺点3.1 优点3.1 缺点1. 动机 YOLOv1版本发表于2016年,当时流行的一些目标检测算法有DPM(Deformable Parts Models)和R-CNN,这些方法的原理通常是从图片中首先找到一些可能是...
2020-04-01 18:10:21
459
原创 git学习笔记
文章目录0. 学习资料1. git工作流2. 创建/克隆仓库3. 添加/取消/移动/删除文件4. 查看当前项目的状态5. 查看文件的改动信息6. 提交到仓库7. 分支管理(Branch)8. 查看提交日志9. git标签10. 远程仓库协同工作10.1 提取远程仓库10.2 推送到远程仓库10.3 删除远程仓库10.3 删除远程仓库0. 学习资料感谢菜鸟教程:菜鸟教程git官网:git do...
2020-03-18 19:18:21
496
原创 手动实现打乱训练集并生成一个batch的简单方法
在训练一个深度学习模型之前,我们会将数据集划分为训练集、验证集和测试集。在训练的时候,我们往往会将训练集打乱,划分成多个batch来进行训练。一般情况下,我们可以使用tf.data.Dataset或者tf.TFRecordReader()来实现。如果不使用这两个方法,我们利用numpy也可以实现这个功能。 下面我将定义一个类,来简单实现这个功能:import numpy as...
2019-12-02 11:49:01
1991
原创 【论文阅读】图像超分辨率(ISR) - RDN, SRGAN, ESRGAN
目录1.RDN(Residual Dense Network)残差密集网络【2018】1.1【Note】1.2【参数细节】1.3【超参数】2.SRGAN【2017】2.1【Note】3.ESRGAN【2018】3.1 与SRGAN中的生成器区别是做了以下的两个改进:3.2 与SRGAN中的判别器区别是做了以下的改进:3.3 关于感知损失(Perceptual...
2019-10-18 21:29:51
3650
1
原创 计算FLOPs和Parameters数量
在卷积中要计算的parameter数量:输入: 【H_in, W_in, C_in】卷积核大小: 【K_h, K_w】输出: 【H_out, W_out, C_out】parameters = (K_h * K_w * C_in)*C_out + C_out(偏置)FLOPs是指: floatin...
2019-09-06 11:34:08
703
2014年研究生数学建模竞赛E题乘用车物流运输计划解题代码
2023-10-14
android开发-2048游戏源代码
2017-12-26
ADXL345文档资源集合
2016-03-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人