Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

小模型如何进行上下文学习?字节跳动 & 华东师大联合提出自进化文本识别器

我们都知道,大语言模型(LLM)能够以一种无需模型微调的方式从少量示例中学习,这种方式被称为「上下文学习」(In-context Learning)。这种上下文学习现象目前只能在大模型上观察到。比如 GPT-4、Llama 等大模型在非常多的领域中都表现出了杰出的性能,但还是有很多场景受限于资源或者实时性要求较高,无法使用大模型。

那么,常规大小的模型是否具备这种能力呢?为了探索小模型的上下文学习能力,字节和华东师大的研究团队在场景文本识别任务上进行了研究。

目前,在实际应用场景中,场景文本识别面临着多种挑战:不同的场景、文字排版、形变、光照变化、字迹模糊、字体多样性等,因此很难训练一个能应对所有场景的统一的文本识别模型。

一个直接的解决办法是收集相应的数据,然后在具体场景下对模型进行微调。但是这一过程需要重新训练模型,计算量很大,而且需要针对不同场景需要保存多个模型权重。如果文本识别模型也能具备上下文学习能力,面对新的场景,只需要少量标注数据作为提示,就能提升在新场景上的性能,那么上面的问题就迎刃而解。不过,场景文本识别是一个资源敏感型任务,将大模型当作文本识别器非常耗费资源,通过初步的实验,研究人员得到的观察是传统的大模型训练方法在场景文本识别任务上并不适用。

为了解决这个问题,来自字节跳动和华东师大的研究团队提出了自进化文本识别器,E2STR(Ego-Evolving Scene Text Recognizer),一个融合了上下文学习能力的常规大小的文本识别器,无需微调即可快速适应不同的文本识别场景。

图片

论文地址:https://arxiv.org/pdf/2311.13120.pdf

E2STR 配备了一种上下文训练和上下文推理模式,不仅在常规数据集上达到了 SOTA 的水平,而且可以使用单一模型提升在各个场景中的识别性能,实现对新场景的快速适应,甚至超过了经过微调后专用模型的识别性能。E2STR 证明,常规大小的模型足以在文本识别任务中实现有效的上下文学习能力。

方法

图 1 介绍了 E2STR 的训练和推理流程。

图片

1. 基础文本识别训练

基础文本识别训练阶段采用自回归框架训练视觉编码器和语言解码器,目的为了获取文本识别能力:

图片

2. 上下文训练

上下文训练阶段 E2STR 将根据文中提出的上下文训练范式进行进一步训练。在这一阶段,E2STR 会学习理解不同样本之间的联系,从而从上下文提示中获取推理能力。

图片

如图 2 所示,这篇文章提出 ST 策略,在场景文本数据中进行随机的分割和转换,从而生成一组 "子样本"。子样本在视觉和语言方面都是内在联系的。这些内在联系的样本被拼接成一个序列,模型从这些语义丰富的序列中学习上下文知识,从而获取上下文学习的能力。这一阶段同样采用自回归框架进行训练:

图片

3. 上下文推理

针对一个测试样本,该框架会从上下文提示池中选择 N 个样本,这些样本在视觉隐空间与测试样本具有最高的相似度。具体来说,这篇文章通过对视觉 token 序列做平均池化,计算出图像 embedding 。然后,从上下文池中选择图像嵌入与 I 的余弦相似度最高的前 N 个样本,从而形成上下文提示。

图片

上下文提示和测试样本拼接在一起送入模型,E2STR 便会以一种无训练的方式从上下文提示中学得新知识,提升测试样本的识别准确率。值得注意的是,上下文提示池只保留了视觉编码器输出的 token,使得上下文提示的选择过程非常高效。此外,由于上下文提示池很小,而且 E2STR 不需要训练就能直接进行推理,因此额外的消耗也降到了最低限度。

实验

实验从三个角度进行:分别是传统文本识别集、跨域场景识别、困难样本修正。

1. 传统数据集

从训练集中随机抽取很少的样本(1000 个,训练集 0.025% 的样本数量)组成上下文提示池,在 12 个常见的场景文本识别测试集中进行的测试,结果如下:

图片

可以发现 E2STR 在识别性能差不多已经饱和的传统数据集上依然有所提升,超越了 SOTA 模型的表现。

2. 跨域场景

跨域场景下每个测试集仅提供 100 个域内训练样本,无训练和微调对比结果如下,E2STR 甚至超过了 SOTA 方法的微调结果。

图片

3. 困难样本修正

研究人员收集了一批困难样本,对这些样本提供了 10%~20% 的标注,对比 E2STR 的无需训练的上下文学习方法和 SOTA 方法的微调学习方法,结果如下:

图片

可以发现,相比于微调方法,E2STR-ICL 大大降低了困难样本的错误率。

未来展望

E2STR 证明了使用合适的训练和推理策略,小模型也可以拥有和 LLM 类似的 In-context Learning 的能力。在一些实时性要求比较强的任务中,使用小模型也可以对新场景进行快速的适应。更重要的是,这种使用单一模型来实现对新场景快速适应的方法使得构建统一高效的小模型更近了一步。
工程自进化文本识别器E2STR
相关数据
字节跳动机构

北京字节跳动科技有限公司成立于2012年,是最早将人工智能应用于移动互联网场景的科技企业之一,是中国北京的一家信息科技公司,地址位于北京市海淀区知春路甲48号。其独立研发的“今日头条”客户端,通过海量信息采集、深度数据挖掘和用户行为分析,为用户智能推荐个性化信息,从而开创了一种全新的新闻阅读模式

https://bytedance.com
池化技术

池化(Pooling)是卷积神经网络中的一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效的原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

场景识别技术

场景识别是一类很常见的图像处理任务。就是给一张地标图像,快速准确地识别出这张图像的场景,识别的结果既可以是具体的地理位置,也可以是该场景的名称,还可以是数据库中的某个同样的场景。

推荐文章
暂无评论
暂无评论~