- 博客(64)
- 资源 (6)
- 收藏
- 关注
原创 【多模态大模型】Qwen2-VL基本原理和推理部署实战
具体实现代码地址:https://github.com/huggingface/transformers/blob/main/src/transformers/models/qwen2_vl/modeling_qwen2_vl.py。具体实现代码地址:https://github.com/QwenLM/Qwen2-VL/blob/main/qwen-vl-utils/src/qwen_vl_utils/vision_process.py。Qwen2 VL的一个关键架构改进是引入了原生动态分辨率支持。
2024-09-21 23:57:28
9006
5
原创 【大模型训练】Flash Attention详解
FlashAttention系列工作,是一种加速注意力计算方法,目前已经应用在:GPT-3、Falcon2(阿联酋大模型)、Llama2、Megatron-LM、GPT-4等流行LLM上。并且FlashAttention2已经集成到了pytorch2.0中,可以很便捷的调用。1. FlashAttention动机,可以看出由于Transformer中self-attention 的时间和内存复杂度是序列长度的二次方,所以序列过长时,算法速度会变慢,需要消耗很高的内存,导致低效的。
2024-09-13 18:18:44
3026
原创 【大模型推理】vLLM推理库介绍及部署qwen2实战教程
2023年6月,来自加州大学伯克利分校等机构的一个研究团队开源了 vLLM项目,其使用了一种新设计的注意力算法 PagedAttention,可让服务提供商轻松、快速且低成本地发布 LLM 服务。在vLLM团队发布的论文中,详细解释了如何通过类似操作系统虚拟内存管理的机制来实现高效的 LLM 服务。该论文已被将于十月底在德国举办的 ACM 操作系统原理研讨会(SOSP 2023)接收:CodePaper为了解决上述限制,vLLM团队提出了一种注意力算法 PagedAttention;该算法的灵感来自。
2024-09-13 12:18:14
2078
原创 【大模型推理】KV Cache原理
这里要注意一点,因为 现在大模型基本都是Decoder-only的架构 ,自回归生成的过程中,当前token在做attention计算时是看不到后面的,后面的内容都被 mask 了。目前各种框架,针对 KV Cache 做了优化,比如 vLLM 的 Page Attention, Prefix Caching,Token 的稀疏化,KV 共享或者压缩(MQA、GQA 和 MLA),LayerSkip,Mooncake 等等,可以说。,各种基于 KV Cache 的优化方法撑起了大模型推理加速的半壁江山。
2024-09-12 11:54:01
1085
原创 【大模型推理】大模型前向推理过程详解
为了搞清楚,大模型前向推理的具体流程,本文以Qwen2-7B-Instruct为例,通过直接debug官方推理示例,来深入理解其过程。
2024-09-11 23:57:47
1355
原创 【大模型结构】输出参数配置
大家在体验大语言模型或者多模态大模型的开源应用时,经常会看到类似下面这个页面,用来控制大模型输出的一些参数设置:这些参数设置会直接影响大模型的输出多样性和质量,因此很多面试官都喜欢通过提问这些参数的含义或者使用技巧,来考察首选人对大模型的掌握程度。本文主要介绍以及这几个核心参数的含义及使用技巧。
2024-09-11 11:06:10
1918
原创 【大模型结构】不同技术架构的区别
近几年的大语言模型的技术起点,可以从Google发布的BERT开始算起。此前,最好的语言模型属于RNN一类,但是,由于RNN模型需要按次序处理输入数据,因此并行能力不够,计算成本很高。尽管在翻译领域效果很好,但是RNN也没有取得更好的突破。BERT是一种Transformer架构的模型,它的出现,让语言模型突破了原有的限制,可以以更快的速度运行,并且可以记住更长久的输入数据。Transformer相比RNN具有更长依赖建模的能力,更高的计算复杂度以及更好的并行处理能力。
2024-09-10 12:06:24
1278
原创 【机器学习】使用Numpy实现神经网络训练全流程
曾经在面试一家大模型公司时遇到的面试真题,当时费力写了一个小时才写出来,自然面试也挂了。后来复盘,发现反向传播掌握程度还是太差,甚至连梯度链式传播法则都没有弄明白。
2024-09-10 09:53:43
1359
原创 【Transformer】Post-Norm和Pre-Norm
Post Norm对模型,尤其是较深的模型训练不稳定,梯度容易爆炸,学习率敏感,初始化权重敏感,收敛困难。因此需要做大量调参工作,以及learning rate warm up的必要工作,费时费力潜在好处是,在效果上的优势,但是这个事情还需要大量专业的实验来验证,毕竟现在大模型训练太费钱了,Post Norm 在效果上带来的提升很可能不如多扔点数据让 Pre Norm 更快的训练出来Pre Norm在训练稳定和收敛性方面有明显的优势,所以大模型时代基本都无脑使用 Pre Norm 了。
2024-09-09 09:56:56
1824
原创 【Transformer】Positional Encoding
首先贴上Transformer论文中,对于Positional Encoding部分的全部介绍:我真的服了,这么重要的位置编码,论文里就写了这么一点??现在看来,内容虽然少,但是句句都是关键,每一句都是面试官想要考你的点,蚌埠住了!位置编码的维度和token的embedding的维度一致,所以可以直接add,也就是同时使用正弦函数和余弦函数来表示每个token的绝对位置在中,包括两个关键变量,一个是pos,表示 是哪个token,另一个是i,表示token中不同embedding的位置。
2024-09-08 18:19:32
1035
原创 【Transformer】Tokenization
从上面这个例子可以看出,理想的Subword分词方法应该是把不常见的单词,按照词形变化、复数形式等拆分为不同的token,同时保留token之间的关系,这样就可以最大可能保留句法和语义相似性。这样,当模型在处理新的文本或任务时,就能够利用它学到的vocabulary来生成合适的回答或文本。基于Subword的分词方法,旨在实现基于Word和基于Character的方法的优点,同时最大限度地减少它们的缺点。,也就是一系列离散的字符(单词,单词的一部分,或者是字母),这些符号可以进一步被编码成二进制形式。
2024-09-04 00:38:36
1259
原创 【Transformer】基本概述
的核心思想,就是抛弃传统的递归(recurrence)或者卷积(convolutions)模块,完全采用注意力机制(attention mechanisms),允许模型在处理序列的每个元素时,都能考虑到序列中的所有其他元素,因此,这种机制就使得模型能够更好地捕捉序列内部的长距离依赖关系。下图是原始论文中的结构图,我把它按照重要程度划分为了7个部分,其中红色的前五个部分最为重要(面试官最喜欢考验候选人的部分),必须要深入理解和掌握,蓝色的后两个部分是相对次要但也要深入理解。
2024-09-02 22:39:00
1084
原创 【Transformer】Normalization
Normalization,也就是归一化(或者叫标准化)操作,已经广泛应用于神经网络模型中,成为必不可少的组件。保证训练稳定性:当训练更深的神经网络时,计算反向传播的参数往往是指数级变化,太大或者太小的参数送入激活函数后很容易造成梯度爆炸或者梯度消失,因此Normalization就使得每一层激活函数的输入,可以控制在近似理想的数值区间中,使得训练更加稳定。
2024-09-02 00:40:49
1464
原创 【AI大模型】相关知识梳理
为了系统性梳理AI,大模型,训练和推理,数学,机器学习,python等基础知识,并在此基础上深入理解经典论文,本人将持续更新有关这些方向的基础知识博客,博客 将保持一如既往的 通俗易懂的风格。并且结合代码来深入理解。
2024-09-01 10:08:16
701
1
原创 【单目3D目标检测】MonoDLE论文精读与代码解析
MonoDLE,基于CenterNet在KITTI数据集做的单目3D目标检测工作,非常优秀且经典!!
2022-12-26 21:34:10
2906
3
原创 【单目3D目标检测】MonoFlex论文精读与代码解析
单目3D目标检测经典论文:MonoFlex,对截断物体进行处理,同时增加几何深度估计
2022-12-08 22:57:19
4191
6
原创 【单目3D目标检测】MonoGround论文精读与代码解析
单目3D目标检测:MonoGround,引入密集地面深度先验,实现更细粒度的深度估计
2022-11-30 22:32:51
2830
1
原创 【单目3D目标检测】GUPNet论文精读与代码解析
2021年的单目3D目标检测工作:GUPNet,考虑到投影模型中误差放到的问题,本文提出了GUP模块和HTL训练策略
2022-11-23 17:48:15
3126
1
原创 【单目3D目标检测】FCOS3D + PGD论文解析与代码复现
本文对OpenMMLab在Monocular 3D detection领域做的两项工作FCOS3D和PGD(也被称作FCOS3D++)进行介绍。
2022-11-08 17:48:01
14940
9
原创 【MMDetection3D】基于单目(Monocular)的3D目标检测入门实战
本文简要介绍单目(仅一个摄像头)3D目标检测算法,并使用MMDetection3D算法库,对KITTI(SMOKE算法)、nuScenes-Mini(FCOS3D、PGD算法)进行训练、测试以及可视化操作。单目3D检测,顾名思义,就是只是用一个摄像头采集图像数据,并将图像作为输入进行检测。
2022-10-07 21:30:12
12298
15
原创 【MMDetection3D】环境搭建,使用PointPillers训练&测试&可视化KITTI数据集
MMDetection3D环境搭建,使用PointPillers训练&测试&可视化KITTI数据集
2022-10-04 17:26:52
19164
46
原创 【模型部署】Jetson Xavier NX(eMMC)部署YOLOv5-5.0
在Jetson Xavier NX中部署YOLOv5-5.0,并使用TensorRT进行加速推理
2022-09-27 20:53:07
11533
11
原创 【YOLOv7_0.1】网络结构与源码解析
对YOLOv7_0.1版本的整体网络结构及各个组件,结合源码和train文件夹中的配置文件进行解析
2022-08-04 22:27:35
16594
18
原创 【深度学习】Pycharm连接远程服务器(AutoDL)训练YOLOv5
文章目录ReferencesReferencespycharm远程连接AutoDL训练pascalVOC2007数据集AutoDL帮助文档
2022-05-13 22:10:27
33883
18
原创 【Word2019】不同页设置不同页码、设置参考文献序号
文章目录前言不同页设置不同页码设置参考文献序号前言根据需要,在不同页面设置不同的页码格式,例如,在目录以及摘要(Abstract)页,设置罗马数字,在正文设置阿拉伯数字正确设置参考文献的序号格式 不同页设置不同页码要点:分节符(下一页)+ 设置页码格式(续前节 或 起始页码)1、在需要设置不同页码格式的地方,插入分节符(下一页),另起一页2、双击页面底端,打开页眉和页脚工具,这里选择插入普通数字2格式3、设置页码格式,根据需要,在编号格式中选择合适的编号,并在页码编号选项
2022-05-12 09:29:32
4087
原创 【Python】绘图技巧:目标检测领域常见的折线图和散点图
文章目录直接上图要点解析折线对比图散点对比图直接上图 要点解析绘图工具包:matplotlib英文及数学公式字体格式:Times New Roman中文字体格式:宋体(SimSun)其他的直接看代码吧 折线对比图import matplotlib.pyplot as plt# 设置字体格式from matplotlib import rcParamsfrom matplotlib.ticker import MultipleLocatorsize =
2022-05-10 21:09:51
3159
3
原创 【YOLOv5-6.x】输出中文标签、修改标签框的位置和大小
文章目录前言输出中文标签修改标签框的位置和大小前言使用英文标签训练好的权重文件,检测输出对应的中文标签;当文本太长导致其右侧超出标签框甚至图片时,可以将文本的位置由原来的标签框左上角,改为标签框正上方。 输出中文标签将权重文件中类别的英文标签,直接替换为对应中文标签可以直接把下面这个函数,放在detect.py文件中(例如,可以直接放在def run(...)函数上面)# 将英文标签训练好的权重文件,转换为中文标签def en_to_ch(chinese_names, w
2022-05-10 20:25:30
9816
14
单目3D目标检测经典数据集:kitti-mini
2023-05-20
Pytorch实现CIFAR10图像分类任务测试集准确率达95%
2022-03-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人