agent 热点栏目说明
这个栏目用于记录 Agent 方向值得持续关注的热点内容。
后续每篇文章可以按固定结构整理:
- 来源链接
- 核心内容
- 为什么值得关注
- 我的判断
- 后续行动
先保留这个占位页,后续有真正的热点内容后再替换为正式文章。
这个栏目用于记录 Agent 方向值得持续关注的热点内容。
后续每篇文章可以按固定结构整理:
先保留这个占位页,后续有真正的热点内容后再替换为正式文章。
ALBEF | Li et al., 2021 | 【略读】
阅读重点
笔记
1.ALBEF提出先让模型学会“图片和文字说的是同一件事“,再把两者融合起来做理解任务,也就是先对齐再融合的思想。
2.当时主流的路线是多依赖于目标检测器提取图像区域特征,再和文本 token 一起送入跨模态 Transformer。另一条路线是 clip 这种双塔对比学习,ALBEF 则提出了一个折中的方案:先用对比学习让图像和文本在全局语义上对齐,再通过一个轻量级的融合模块进行深度融合。
3.ALBEF 采用的结构是 12 层的 vit 作为视觉编码器,6 层的 BERT 作为文本编码器,外加一个 6 层的多模态编码器,图文特征在其中通过交叉注意力机制进行融合。然后再进行 MLM(Masked Language Modeling)和 ITM(Image-Text Matching)的预训练任务。
4.ALBEF还引入了动量蒸馏(Momentum Distillation)的概念,来稳定训练过程。他们维护了一个教师模型(Teacher Model),让学生同时学习 one-hot 监督和教师模型的软标签输出,通过从教师模型中提取知识来提高学生模型的性能。教师模型的参数是学生模型参数的指数移动平均(Exponential Moving Average),这样可以让教师模型在训练过程中保持相对稳定,提供更可靠的指导信号。
5.质疑:ALBEF 认为 one-hot 标签太硬,因为一个 batch 里的其他文本不一定都是真负样本。但反过来,soft label 也可能把本来应该区分开的样本拉近。比如两张图片都包含 “a dog”,但一张是狗追球,一张是狗躺在沙发上。teacher 模型可能因为关键词相似给它们较高相似度,导致模型不够重视动作和场景差异。
BLIP | Li et al., 2022 | 【略读】
阅读重点
笔记
1.当时的视觉语言预训练已经很强,但大多偏科:encoder 型模型适合理解和检索,encoder-decoder 型模型更适合生成,单个模型很难同时在两类任务上都强。数据侧也有问题。为了扩大规模,很多方法直接用网页 alt-text 和图片配对,但网页文本常常不是图片内容的准确描述。规模变大带来了收益,但噪声也被一起放大,监督信号并不干净。
2.BLIP 提出一个统一的视觉语言预训练框架,既能迁移到理解任务,也能迁移到生成任务。它的目标是同时解决两个问题:模型架构不统一,以及网络图文对噪声太大。
3.BLIP 采用 capfilt 的数据增强方法。通过一个标题生成器(Captioner)为网络图像生成合成标题,并通过一个过滤器(Filter)根据图像-文本匹配损失(ITM)来筛选出与图像匹配的高质量标题来移除噪声标题。
4.BLIP 提出 MED, Multimodal Mixture of Encoder-Decoder。同一个模型可以切换三种功能,单模态编码器:分别编码图像和文本,用于图文对比学习;图像引导的文本编码器:文本侧加入 cross-attention,看图后判断图文是否匹配;图像引导的文本解码器:把双向 self-attention 换成 causal self-attention,看图后自回归生成文字。通过在不同层级上共享参数,模型可以在理解和生成任务之间更好地迁移。
5.质疑:BLIP 的 ITM 是 matched / unmatched 二分类,但图文关系不是非黑即白。有些文本部分匹配,有些对象错了,有些属性错了。ITM 可以从二分类升级成更细粒度的多级标签:完全匹配、部分匹配、对象错、属性错、关系错。
BLIP-2 | Li et al., 2023 | 【精读】
阅读重点
笔记
Flamingo | Alayrac et al., 2022 | 【略读】
阅读重点
笔记
多智能体,- 多智能体系统(Multi-Agent Systems)是指由多个智能体组成的系统,这些智能体可以是软件程序、机器人或其他类型的实体。多智能体系统的研究涉及智能体之间的交互、协作、竞争等方面,旨在实现更复杂、更灵活的行为和决策能力。
需要实践, 多人多智能体协作, agent memory, 记忆系统设计,并且省token
自己进行做决策进行记忆系统
一边做一边总结,通用或者场景特化。
ai驾驭系统,
尽可能少的人来介入,让 agent 来做。
每周让 agent 来做 ppt,总结,写周报,做计划。
ai 写一个报告:自己要做些什么,建立一个认识
ViT | Dosovitskiy et al., 2020 | 【精读】
阅读重点
笔记
CLIP | Radford et al., 2021 | 【精读】
阅读重点
笔记
ResNet | He et al., 2015 | 【精读】
阅读重点
笔记
Transformer | Vaswani et al., 2017 | 【精读】
阅读重点
笔记
为什么 Transformer 很重要
Self-Attention 是什么
Q、K、V 的直觉理解
注意力矩阵是怎么来的
为什么要 scaled dot-product
Multi-Head Attention 为什么有效
Positional Encoding 为什么需要
Encoder-Decoder 结构怎么理解
为什么说它是多模态大模型的骨架
GPT-3 / LLaMA | Brown et al., 2020 / Touvron et al., 2023 | 【略读】
阅读重点
笔记
为什么要用decoder-only结构:由于文本生成任务主要是根据现有信息来预测下一个词,纯解码器专注于这一点,避免了编码器-解码器架构中不必要的复杂性和计算开销。同时,纯解码器结构更适合大规模预训练,可以更高效地利用计算资源。
GPT vs BERT
GPT-2使用in-context learning
GPT-3文章里提到有局限性
llama系列要解决的问题更偏现实工程
pre-normlization
LayerNorm vs RMSNorm
LayerNorm是对每个样本的所有特征进行归一化,计算均值和标准差;RMSNorm则是只计算均方根(Root Mean Square),不计算均值。RMSNorm相对于LayerNorm来说,计算更简单,且在某些情况下可以提供更好的训练稳定性和性能。
LayerNorm(GPT‑2/3):去均值 + 归一化方差 + 偏置
RMSNorm(LLaMA、GPT‑4):只做缩放,不移中心,无偏置
梯度本质上就在告诉模型:“你现在偏大了,往小改,而且改的力度大概是多少。”
损失函数只相当于最后给你一个总分,梯度相当于老师在每一段旁边写批注
“传梯度”,本质上就是:后一层把“误差责任”传给前一层,前一层再继续往前传。
模型是一个很长的处理链条:
输入 → 第1层 → 第2层 → 第3层 → 输出 → 损失
最后你只知道“结果错了多少”,但你不知道前面每一层、每一个参数到底该怎么改。梯度反传就是在回答这个问题:
“最终错了这件事,前面这个参数要负多大责任?”
如果不这样传,你就只能用一种很笨的办法:把每个参数都单独加一点、减一点,重新跑一遍模型,看损失变没变。参数一多,这几乎不可能。大模型有上亿、上百亿参数,根本试不起。
做一个项目有时候像是炼丹,你不知道为什么这个组合有效,为什么那个组合无效。你只能不断试错,积累经验。有时候不一定能很严谨的解释为什么某个设计有效,但是结果就是有效的。
梯度消失:在反向传播过程中,梯度逐层变小,导致前面层的参数更新非常缓慢,甚至停滞。
网络退化:随着网络深度增加,训练误差反而增大,导致性能下降。这是因为深层网络难以学习到有效的特征表示。
ResNet 的残差连接通过引入恒等映射,使得网络可以直接传递输入信息,缓解了梯度消失和网络退化问题。
在数学上,F(x) = 0和H(x) = x似乎只是一个位移的差别,但在神经网络的参数初始化和激活函数机制下,两者的难度完全不同。
初始化的“天性”:神经网络的权重(Weight)在初始化时通常是非常接近 0 的随机小数字。这意味着,在训练开始的那一刻,任何一层网络的天生倾向就是输出一个接近 0 的值。要让网络学习F(x)=0,它只需要把权重往 0 萎缩即可,这是符合它“本能”的。要让网络学习 H(x) = x,它必须精确地调整大量权重,使得它们能够完美抵消激活函数的非线性影响,并形成一个精确的单位矩阵。这对于随机初始化的网络来说,是一个极高难度的“技术活”。
下采样(Downsampling)是一个在信号处理、图像处理和机器学习等领域中非常常见的概念。简单来说,它就是减少数据采样率或降低数据分辨率的过程。你可以把它理解为“抽样调查”:从一大堆数据中,按照一定的规则挑选出一部分,从而使数据的总量变少。
in-context learning(ICL)是指模型在没有显式微调的情况下,通过提供一些示例或提示(prompt)来学习和适应新任务的能力。它允许模型在推理阶段利用上下文信息来理解和完成任务,而不需要修改模型的参数。这种能力使得大型语言模型能够在面对新的任务时表现出一定的灵活性和适应性。
Scaling law(缩放定律)是指在机器学习中,模型性能与模型规模(如参数数量、训练数据量等)之间的关系。通常情况下,随着模型规模的增加,性能会呈现出一定的提升,但这种提升并不是线性的,而是遵循某种特定的规律。理解和利用 scaling law 可以帮助研究人员更有效地设计和训练大型模型,以达到更好的性能。