语言模型-多模态大模型
文章平均质量分 95
本专栏是视觉模型与语言相关模型融合内容,阐述文本、语言等处理技术,说明视觉与语言相关多模态融合技术。
记录大模型相关技术与点滴内容。
tangjunjun-owen
从事人工智能行业,已从事工业检测行业、智慧交通行业、智慧城市行业,已有如下经验:
ARM/jetson部署、NVIDIA性能优化、道路感知2D、单目3D、点云3D、目标跟踪、lidar/radar/vison多传感融合、中间件ROS2开发、相机标定、工业2D检测/分类/分割、数据增强、attention、transformer、模型压缩加速
计算机技能:C++、Python、cuda、tensorrt、ros2
展开
-
第十四节 huggingface的trainner的_inner_training_loop函数源码解读
huggingface的trainer的训练方法确实有太多内容,本想着使用一个博客这里来解读,但确实内容太多。为此,本节是对上一节内容的细化或补充,主要内容包含,主要是数据相关与优化器相关等内容的细化与解读。本来也想把相关训练细节也在本节进行解读,但实在内容太多,我将在写一个章节专门对其进行解读。注:本节博客都是下方链接博客中trainer的细分类函数解读!博客链接1、返回2个值optimizer_cls, optimizer_kwargs,第一个值是优化器,第二个值是对应参数,特别重要是学习率。原创 2024-05-15 22:45:00 · 21 阅读 · 0 评论 -
Mini-Gemini: Mining the Potential of Multi-modality Vision Language Models论文解读
随着大型语言模型(LLMs)的快速发展,将多模态输入的强大能力融入视觉语言模型(VLMs)已成为当前模型的核心部分。为了弥合模态鸿沟,已有研究尝试将视觉与LLMs结合,从图像到视频都有涉及。尽管取得了进步,但学术界的努力与GPT-4和Gemini等成熟模型的强大性能之间仍存在显著差距,这些模型是基于大量数据和资源训练的。原创 2024-04-19 14:20:54 · 1153 阅读 · 0 评论 -
模拟多模态大模型gradio使用教程
最近,在看多模态推理模块,涉及到gradio相关用法。介于此,我将介绍网页界面gradio如何与大模型结合使用,实现与模型交互。我主要用到gr.Row()与gr.Column()方法实现界面部署,使用button方法触发事件,以及如何界面输入或输出使用图片等内容。读懂该部分基本已可实现大模型界面基本设置,也能更易解读别人源码。原创 2024-04-08 17:54:27 · 1043 阅读 · 0 评论 -
图像描述(image caption)模型简单demo(源码理解原理)
图像描述模型简单理解是通过图像给出一段描述内容,实际也类似一种生成模式,和我一篇博客讲的对话模型相似。然而,网络很少从代码层次去说明图像描述具体做法与细节。基于此,我原创一个简单模型,旨在帮助理解原理,但不具备很好效果能力。涉及到文本相关内容,文本数据最终都是转为对应字典索引代表其文本内容,输入模型加工,实现文本相关任务,图像描述模型也不列外。点击这里# 我这里假设构造一个图像特征是一个且对应描述也是一个vocab_size = 11 # 字典大小,也是后面概率预测数,一般是32000。原创 2024-03-16 10:00:00 · 1143 阅读 · 1 评论 -
CogVLM训练源码解读--数据处理
本文是CogVLM是一个多模态大型模型,它能够处理文本、图像和其他类型的数据。在数据处理方面,CogVLM可以接收多种类型的输入数据,包括文本、图像、音频等。然而,很少有人对代码数据处理进行解读或者基本找不到。基于此,本文将结合源码给出CogVLM大模型数据处理内容,主要包含图像数据处理、文本tokenizer构建、文本加工与修改自己文本方法代码修改。总之,我将结合代码一步一步带领读者实现大模型数据处理源码内容。原创 2024-02-18 10:13:17 · 1007 阅读 · 0 评论 -
对话模型Demo解读(使用代码解读原理)
对话模型是一种人工智能技术,旨在使计算机能够像人类一样进行对话和交流。这种模型通常基于深度学习和自然语言处理技术,能够理解自然语言并做出相应的回应。然而现有博客很少介绍对话模型内容,也很少用一个简单代码带领大家理解其原理。因此,我创建一个简单的对话模型,在不适用Hugging Face或LSTM结构,旨在使用一个简单的全连接神经网络来实现这个模型,且代码基于PyTorch框架搭建,意在帮助读者构建对话模型知识。当然,模型仅是一个简单模型,旨在帮助理解原理,不具备很好效果能力。原创 2024-02-11 11:19:37 · 866 阅读 · 0 评论 -
CogVLM多模态大模型训练代码详细教程(基于vscode调试与训练)
今天(2023-12-29),我很开心,断断续续时间搞了一下CogVLM大模型训练代码,终于实现了CogVLM大模型训练。特别是我是基于vscode编辑器配置launch.json文件在RTX4090显卡实现多模态大模型训练。可能很多玩过大模型或显卡显存充足情况下,使用官网教程,顺利情况亦可实现该模型训练。然我介于显卡为云服务,不得不在一张4090显卡上实现代码解读与训练。而代码解读必然使用debug模式较佳,在多种编辑器中看到vscode能力,我实现deepspeed方式在vscode中训练大模型。原创 2024-01-08 00:00:00 · 1839 阅读 · 4 评论 -
CogVLM大模推理代码详细解读
最近,我一直在查看多模态大模型相关内容,而CogVLM是我们公司需要重点研究模型。同时,CogVLM模型很少有文章涉及到代码相关解读,令更多小白困惑。介于此,我会陆续解读源码并分享。本篇文章,我将分享CogVLM推理整个pipeline走向,带大家熟知CogVLM模型推理过程,这里推理过程有别于hugginggface通用推理构建方法,本篇文章主要内容为作者训练好的参数说明、模型构建与推理stream。最终帮助大家熟知模型整个推理pipeline,特别是对sat库使用有一定认识。原创 2023-12-14 23:00:10 · 1823 阅读 · 3 评论 -
第二节 大模型的deepspeed使用vscode运行或调试debug的环境配置与解读(补充-vscode)
最近在研究deepspeed相关内容,但使用命令方式无法单步调式调用代码的问题,若直接离线看代码,在一定程度上降低效率。同时,使用deepspeed方式debug代码内容较少。为此,我特意在少有信息中和代码实验验证完成基于vscode对deepspeed进行debug方法。特别的,该方式不仅适合deepspeed命令debug,也适用torchrun命令debug,更能延伸其它命令debug模式。本文内容分为三部分,第一部分介绍如何使用vscode传递参数debug;原创 2023-12-14 17:11:37 · 957 阅读 · 1 评论 -
Grounding DINO、TAG2TEXT、RAM、RAM++论文解读
随着SAM模型分割一切大火之后,又有RAM模型识别一切,RAM模型由来可有三篇模型构成,TAG2TEXT为首篇将tag引入VL模型中,由tagging、generation、alignment分支构成,随后才是RAM模型,主要借助CLIP模型辅助与annotation处理trick,由tagging、generation分支构成,最后才是RAM++模型,该模型引入semantic concepts到图像tagging训练框架,RAM++模型能够利用图像-标签-文本三者之间的关系,整合image-text a原创 2023-12-09 23:18:29 · 802 阅读 · 2 评论 -
RAM模型从数据准备到pretrain、finetune与推理全过程详细说明
随着SAM模型分割一切大火之后,又有RAM模型识别一切,RAM模型由来可有三篇模型构成,TAG2TEXT为首篇将tag引入VL模型中,由tagging、generation、alignment分支构成,随后才是RAM模型,主要借助CLIP模型辅助与annotation处理trick,由tagging、generation分支构成,最后才是RAM++模型,该模型引入semantic concepts到图像tagging训练框架,RAM++模型能够利用图像-标签-文本三者之间的关系,...原创 2023-11-24 23:22:05 · 845 阅读 · 2 评论 -
CLIP模型原理与代码实现详解
目前,大模型十分活跃,openai公司呈现GPT系列,特别是Chat-GPT给人深刻印象,意识到大模型厉害之处,随后推出GPT4模型,更是将大模型进一步推到一个高度,并将多模态融合技术留下深刻印象,同时,学者也对多模态融合技术研究呈现百花齐放之势。然而,多模态模型大多以CLIP所提方法或思路实现多模态融合。为此,本文将重新回顾CLIP论文相关理论,也重点梳理其源码,并附其代码供读者参考(本文会涉及VIT与BERT代码解读)。原创 2023-10-15 23:29:38 · 17267 阅读 · 40 评论 -
Attention Is All You Need原理与代码详细解读
目前,我研究大模型相关知识,常用到transformer结构,我想到NLP领域开篇之作Attention is all you need论文,论文实际提出transform结构,可与CNN并驾齐驱的结构,该结构利用Q/K/V模式整合全局信息,与CNN提取局部信息有所差别。介于此,我将一年前博客园更新笔记迁入该博客中,本文将介绍transform原理,也根据源码解读,深入介绍transforme经典典结构,并附有代码。原创 2023-10-15 13:44:46 · 1746 阅读 · 2 评论 -
语言模型编码中/英文句子格式详解
最近一直在学习多模态大模型相关内容,特别是图像CV与语言LLM模型融合方法,如llama-1.5、blip、meta-transformer、glm等大模型。其语言模型的中文和英文句子如何编码成计算机识别符号,使我困惑。我查阅资料,也发现很少有博客全面说明。为此,我以该博客记录其整过过程,并附有对应代码供读者参考。处理语言模型需要将英文或中文等字符表示成模型能识别的符号,为此不同模型会按照某些方法表示,但不同模型转计算机能识别思路是一致的。原创 2023-10-12 17:08:49 · 1096 阅读 · 0 评论