伯特斯卡斯_google ai嵌入的实验室语言不可知伯特句子

2024-03-13 13:20

本文主要是介绍伯特斯卡斯_google ai嵌入的实验室语言不可知伯特句子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

伯特斯卡斯

Multilingual Embedding Models are the ones that map text from multiple languages to a shared vector space (or embedding space). This implies that in this embedding space, related or similar words will lie closer to each other, and unrelated words will be distant (refer to the figure above).

多语言嵌入模型是将多种语言的文本映射到共享向量空间(或嵌入空间)的模型。 这意味着在这个嵌入空间中, 相关或相似的词将彼此靠近 ,而无关的词将变得遥远 (请参见上图)。

In this article, we will discuss LaBSE: Language-Agnostic BERT Sentence Embedding, recently proposed in Feng et. al. which is the state of the art in Sentence Embedding.

在这篇文章中,我们将讨论LaBSE:L anguage- 诺斯 ERT 小号 entenceēmbedding,最近提出了Feng等。 等 这是Sentence Embedding中最先进的技术。

现有方法 (Existing Approaches)

The existing approaches mostly involve training the model on a large amount of parallel data. Models like LASER: Language-Agnostic SEntence Representations and m-USE: Multilingual Universal Sentence Encoder essentially map parallel sentences directly from one language to another to obtain the embeddings. They perform pretty well across a number of languages. However, they do not perform as good as dedicated bilingual modeling approaches such as Translation Ranking (which we are about to discuss). Moreover, due to limited training data (especially for low-resource languages) and limited model capacity, these models cease to support more languages.

现有的方法主要涉及在大量并行数据上训练模型。 模型,如LASER:L anguage- 诺斯SE ntenceř对产权和M-USE:M ultilingualùniversal 小号 entenceËncoder基本上平行映射句子直接从一种语言到另获得的嵌入。 它们在多种语言中的表现都很好。 但是,它们的性能不如专用的双语建模方法(例如, 翻译排名 (我们将要讨论))好。 此外,由于训练数据有限(特别是对于资源匮乏的语言)和模型能力有限,这些模型不再支持更多的语言

Recent advances in NLP suggest training a language model on a masked language modeling (MLM) or a similar pre-training objective and then fine-tuning it on downstream tasks. Models like XLM are extended on the MLM objective, but on a cross-lingual setting. These work great on the downstream tasks but produce poor sentence-level embeddings due to the lack of a sentence-level objective.

NLP的最新进展表明,在掩盖语言建模(MLM)或类似的预训练目标上训练语言模型,然后在下游任务上对其进行微调。 像XLM这样的模型是在MLM目标上扩展的,但是是在跨语言环境下进行的。 这些在下游任务上效果很好,但是由于缺少句子级目标而产生的句子级嵌入效果很差

Rather, the production of sentence embeddings from MLMs must be learned via fine-tuning, similar to other downstream tasks.

而是,必须通过微调来学习来自传销的句子嵌入的产生,这与其他下游任务类似。

— LaBSE Paper

— LaBSE纸

与语言无关的BERT句子嵌入 (Language-Agnostic BERT Sentence Embedding)

Image for post
LaBSE Paper LaBSE Paper具有附加裕度Softmax和共享参数的双向双编码器

The proposed architecture is based on a Bidirectional Dual-Encoder (Guo et. al.) with Additive Margin Softmax (Yang et al.) with improvements. In the next few sub-sections we will decode the model in-depth:

所提出的体系结构是基于双向双编码器 (Guo等人 )和具有改进的加性余量Softmax( Yang等人 )的 。 在接下来的几个小节中,我们将对模型进行深入解码:

翻译排名任务 (Translation Ranking Task)

Image for post
Google AI Blog Google AI博客进行翻译排名任务

First things first, Guo et. al. uses a translation ranking task which essentially ranks all the target sentences in order of their compatibility with the source. This is usually not ‘all’ the sentences but some ‘K - 1’ sentences. The objective is to maximize the compatibility between the source sentence and its real translation and minimize it with others (negative sampling).

首先, 郭等。 等 使用翻译排序任务,该任务从本质上排序所有目标句子与源句子的兼容性 。 这通常不是“全部”句子,而是一些“ K-1 ”句子。 目的是最大程度地提高源句子与其实际翻译之间的兼容性,使其与其他 句子 ( 负采样 ) 的兼容性 最小化

双向双编码器 (Bidirectional Dual Encoder)

Image for post
Dual-Encoder Architecture via Guo et. al.
通过 Guo等人的双编码器架构 。 等

The dual-encoder architecture essentially uses parallel encoders to encode two sequences and then obtain a compatibility score between both the encodings using a dot-product. The model in Guo et. al. was essentially trained on a parallel corpus for the translation ranking task which was discussed in the previous section.

双编码器体系结构本质上使用并行编码器对两个序列进行编码,然后使用点积获得两种编码之间的兼容性得分 。 郭等人的模型。 等 基本上在并行语料库上接受了翻译排名任务的培训,这已在上一节中进行了讨论。

As far as ‘bidirectional’ is concerned; it basically takes the compatibility scores in both the ‘directions’, i.e. from source to target as well as from target to source. For example, if the compatibility from source x to target y is denoted by ɸ(x_i, y_i), then the score ɸ(y_i, x_i) is also taken into account and the individual losses are summed.

就“双向”而言; 它基本上在两个“方向”上取得兼容性评分,即从源到目标以及从目标到源 。 例如,如果从源x到目标y的兼容性 ɸ(x_i,y_i)表示 然后得分ɸ(y_i,x_i) 还考虑了损失,并对各个损失进行了求和。

Loss = L + L′

损失= L + L'

附加保证金Softmax(AMS) (Additive Margin Softmax (AMS))

Image for post
Embedding Space with and without Additive Margin Softmax via Yang et al.
通过 Yang等人的方法,在具有和不具有附加余量Softmax的情况下嵌入空间 。

In vector spaces, classification boundaries can be pretty narrow, hence it can be difficult to separate the vectors. AMS suggests introducing a parameter m in the original softmax loss to increase the separability between the vectors.

在向量空间中,分类边界可能非常狭窄,因此可能难以分离向量 。 AMS建议引入参数m 原始softmax损失会增加向量之间的可分离性。

Image for post
LaBSE Paper LaBSE Paper进行 AMS

Notice how the parameter m is subtracted just from the positive sample and not the negative ones which is responsible for the classification boundary.

注意如何仅从正样本中减去参数m ,而不从负样本中减去负参数m ,这是分类边界的原因。

You can refer to this blog if you’re interested in getting a better understanding of AMS.

如果您有兴趣更好地了解AMS,可以参考此博客 。

跨加速器负采样 (Cross-Accelerator Negative Sampling)

Image for post
LaBSE Paper LaBSE纸进行交叉加速器负采样

The translation ranking task suggests using negative sampling for ‘K - 1’ other sentences that aren’t potentially compatible translations of the source sentence. This is usually done by taking sentences from the rest of the batch. This in-batch negative sampling is depicted in the above figure (left). However, LaBSE leverages BERT as its encoder network. For heavy networks like these, it is infeasible to have batch sizes that are large enough to provide sufficient negative samples for training. Thus, the proposed approach leverages distributed training methods to share batches across different accelerators (GPUs) and broadcasting them in the end. Here, all the shared batches are considered as negative samples, and just the sentences in the local batch are considered for positive sampling. This is depicted in the above figure (right).

翻译排名任务建议对“ K-1 ”其他与源句潜在不兼容的译文使用否定采样。 这通常是通过从其余部分中提取句子来完成的。 上图( )显示了批生产中的负采样。 但是,LaBSE利用BERT作为其编码器网络。 对于此类繁重的网络,批量大小足够大以提供足够的阴性样本进行训练是不可行的。 因此,提出的方法利用分布式训练方法在不同的加速器(GPU)之间共享批次并最终广播它们 。 在这里,所有共享批次都被视为否定样本,而仅将本地批次中的句子视为正样本。 上图( )对此进行了描述。

预训练和参数共享 (Pre-Training and Parameter Sharing)

Finally, as mentioned earlier, the proposed architecture uses BERT encoders and are pretrained on Masked Language Model (MLM) as in Devlin et. al. and Translation Language Model (TLM) objective as in XLM (Conneau and Lample). Moreover, these are trained using a 3-stage progressive stacking algorithm i.e. an L layered encoder is first trained for L / 4 layers, then L / 2 layers and then finally L layers.

最后,如前所述,所提出的体系结构使用BERT编码器,并且像Devlin等人在Masked Language Model(MLM)上进行了预训练。 人 。 和XLM(Conneau和Lample)中的翻译语言模型(TLM)目标。 此外,使用三阶段渐进式堆栈算法对这些层进行训练,即首先对L层编码器进行L / 4层,然后L / 2层,最后L层的训练。

For more on BERT pre-training, you can refer to my blog.

有关BERT预培训的更多信息,请参阅我的博客 。

放在一起 (Putting it All Together)

LaBSE,

LaBSE,

  1. combines all the existing approaches i.e. pre-training and fine-tuning strategies with bidirectional dual-encoder translation ranking model.

    结合了所有现有方法,即预训练和微调策略与双向双编码器翻译排名模型。
  2. is a massive model and supports 109 languages.

    是一个大型模型,支持109种语言。

结果 (Results)

Image for post
Tatoeba Datasets via Google AI博客获得的 Google AI Blog Tatoeba数据集的平均准确度(%)

LaBSE clearly outperforms its competitors with a state of the art average accuracy of 83.7% on all languages.

LaBSE在所有语言上的平均准确度均达到83.7%,明显优于竞争对手。

Image for post
Google AI Blog Google AI博客进行零位设置

LaBSE was also able to produce decent results on the languages for which training data was not available (zero-shot).

LaBSE还能够在没有培训数据的语言(零射)上产生不错的成绩。

Fun Fact: The model uses a 500k vocabulary size to support 109 languages and provides cross-lingual support for even zero-shot cases.

有趣的事实:该模型使用500k的词汇量来支持109种语言,甚至为零击案例提供了跨语言支持。

结论 (Conclusion)

We discussed the Language-Agnostic BERT Sentence Embedding model and how pre-training approaches can be incorporated to obtain the state of the art sentence embeddings.

我们讨论了语言不可知的BERT句子嵌入模型,以及如何结合预训练方法来获取最新的句子嵌入状态。

The model is open-sourced at TFHub here.

该模型在TFHub开源 。

翻译自: https://towardsdatascience.com/labse-language-agnostic-bert-sentence-embedding-by-google-ai-531f677d775f

伯特斯卡斯


http://www.taodudu.cc/news/show-8491223.html

相关文章:

  • 基于JavaWeb的企业公司管理系统设计与实现
  • Silicon Labs新推出EFR32BG22芯片性能强劲,详细对比nRF52832和CC2640R2F
  • Silicon Labs BG22、xG24、BG27无线SoC比较及信驰达无线模块选型指南
  • 华为企业业务2.0,以数字平台起跳
  • html5 企业网站模板 多语言,通用HTML5企业网站模板
  • 华为企业BG全球智慧城市业务部副总裁王盾:打造智慧城市神经系统
  • 四川公务员考试考“性生活满意度”引热议
  • 120941138报:V8 的 Java 封装 jav8
  • V8的Java 封装jav8
  • Java 8 – List分组GroupBy
  • 自媒体人有哪些好用的热点工具,可以快速蹭热点?
  • 做自媒体必备4大蹭热点工具
  • 自媒体文章阅读量低怎么办?学会蹭热点热搜,流量翻倍
  • 蹭热点的Alpha Zero感想
  • 把握新手期流量:巧妙蹭热点,让你的内容点赞10W+
  • 公众号自媒体怎么做,学会这几招,蹭热点超级快
  • 自媒体百万大号怎么蹭热点?4个小技巧,拿捏了~
  • 短视频人的硬伤,蹭热点大有讲究
  • 成都速领科技:抖音蹭热点技巧是啥
  • 3.8 如何在小红书上蹭热点,这里有8个方法【玩赚小红书】
  • 这些蹭热点的方法你一定要学会,教你打造爆款内容
  • 网络推广蹭热点需要掌握的几点套路
  • 小红书热点怎么蹭?10个技巧,手把手带你用好热点
  • 蹭热点破百万播放量,这些涨粉技巧千万不能错过!
  • 【宽创国际】馆讯:泰特现代美术馆于2018年超越大英博物馆成为伦敦最受欢迎的艺术机构
  • 用VR探索20世纪俄罗斯艺术家工作室(转载)
  • 英国最值得参观的十大博物馆介绍
  • .ART描绘现代创造力和特质
  • 布朗温莎汤(Brown Windsor Soup)布朗温莎汤的特点起源与争议现代的布朗温莎汤白兰地加苏打水这个搭配如何,并讲述这样搭配的由来白兰地的特点苏打水的特点白兰地加
  • 最佳学习网站收集
  • 这篇关于伯特斯卡斯_google ai嵌入的实验室语言不可知伯特句子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



    http://www.chinasem.cn/article/805015

    相关文章

    Java+AI驱动实现PDF文件数据提取与解析

    《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

    Go语言连接MySQL数据库执行基本的增删改查

    《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

    Go语言使用Gin处理路由参数和查询参数

    《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

    Go语言使用net/http构建一个RESTful API的示例代码

    《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据

    Go语言网络故障诊断与调试技巧

    《Go语言网络故障诊断与调试技巧》在分布式系统和微服务架构的浪潮中,网络编程成为系统性能和可靠性的核心支柱,从高并发的API服务到实时通信应用,网络的稳定性直接影响用户体验,本文面向熟悉Go基本语法和... 目录1. 引言2. Go 语言网络编程的优势与特色2.1 简洁高效的标准库2.2 强大的并发模型2.

    Go语言使用sync.Mutex实现资源加锁

    《Go语言使用sync.Mutex实现资源加锁》数据共享是一把双刃剑,Go语言为我们提供了sync.Mutex,一种最基础也是最常用的加锁方式,用于保证在任意时刻只有一个goroutine能访问共享... 目录一、什么是 Mutex二、为什么需要加锁三、实战案例:并发安全的计数器1. 未加锁示例(存在竞态)

    C语言自定义类型之联合和枚举解读

    《C语言自定义类型之联合和枚举解读》联合体共享内存,大小由最大成员决定,遵循对齐规则;枚举类型列举可能值,提升可读性和类型安全性,两者在C语言中用于优化内存和程序效率... 目录一、联合体1.1 联合体类型的声明1.2 联合体的特点1.2.1 特点11.2.2 特点21.2.3 特点31.3 联合体的大小1

    Go语言使用select监听多个channel的示例详解

    《Go语言使用select监听多个channel的示例详解》本文将聚焦Go并发中的一个强力工具,select,这篇文章将通过实际案例学习如何优雅地监听多个Channel,实现多任务处理、超时控制和非阻... 目录一、前言:为什么要使用select二、实战目标三、案例代码:监听两个任务结果和超时四、运行示例五

    C语言中%zu的用法解读

    《C语言中%zu的用法解读》size_t是无符号整数类型,用于表示对象大小或内存操作结果,%zu是C99标准中专为size_t设计的printf占位符,避免因类型不匹配导致错误,使用%u或%d可能引发... 目录size_t 类型与 %zu 占位符%zu 的用途替代占位符的风险兼容性说明其他相关占位符验证示

    Spring AI使用tool Calling和MCP的示例详解

    《SpringAI使用toolCalling和MCP的示例详解》SpringAI1.0.0.M6引入ToolCalling与MCP协议,提升AI与工具交互的扩展性与标准化,支持信息检索、行动执行等... 目录深入探索 Spring AI聊天接口示例Function CallingMCPSTDIOSSE结束语