科研上新 | 第4期:语言-音乐对比预训练;查找表实现的神经网络推理;大模型时代重新定义搜索框架

编者按:欢迎阅读“科研上新”栏目!“科研上新”汇聚了微软亚洲研究院最新的创新成果与科研动态。在这里,你可以快速浏览研究院的亮点资讯,保持对前沿领域的敏锐嗅觉,同时也能找到先进实用的开源工具。

本期内容速览

01. CLaMP: 面向音乐信息检索的语言-音乐对比预训练
02. LUT-NN: 通过查找表实现的高效神经网络推理
03. Large Search Model: 在大模型时代重定义搜索框架

顶会聚焦

CLaMP: 面向音乐信息检索的语言-音乐对比预训练

new-arrival-in-research-4-1

论文链接:https://arxiv.org/abs/2304.11029

项目链接:https://ai-muzic.github.io/clamp/

符号音乐信息检索是处理基于符号表示(如谱面或 MIDI 文件)的音乐的自动分析和检索领域。由于深度学习能够从大型数据集中提取复杂和抽象的音乐特征,因此在符号音乐信息检索中变得越来越流行。但大多数带标签的符号音乐数据集都规模较小,获取足够的带标签数据可能既昂贵又耗时。而语义搜索和零样本分类技术可以用来检索和标记大量未标记的数据。这些技术将可以让使用者能够通过给定的开放领域查询(例如,“快节奏的欢快音乐”)搜索音乐,或者根据定制标签自动识别音乐特征,且无需训练数据。

若想实现符号音乐的语义搜索和零样本分类,就需要建立音乐和语言之间的联系。为此,微软亚洲研究院的研究员们提出了 CLaMP:对比语言-音乐预训练,通过使用与对比损失一起训练的文本编码器和音乐编码器,来学习自然语言和符号音乐之间的交叉模态表示。为了预训练 CLaMP,这一研究收集了一个包含140万个音乐-文本对的大型数据集。它采用文本丢失作为数据增强技术,并使用小节分块技术来有效表示音乐数据,将序列长度缩短到小于10%。此外,该研究还提出了一个掩码音乐模型的预训练目标,以增强音乐编码器对音乐上下文和结构的理解。

图1:CLaMP 执行跨模态符号音乐信息检索任务的过程,包括语义搜索和零样本分类,而无需特定任务的训练数据

图1:CLaMP 执行跨模态符号音乐信息检索任务的过程,包括语义搜索和零样本分类,而无需特定任务的训练数据

实验表明,CLaMP 整合文本信息,实现了符号音乐的语义搜索和零样本分类,超越了先前模型的能力。与需要微调的目前最先进的模型相比,零样本的 CLaMP 在以乐谱为导向的数据集上展示出了与之相当或更优越的性能。该论文已被 ISMIR 2023 接收,并荣获最佳学生论文奖。

图2:基于 BLIP 生成标题的图像推荐音乐的结果

图2:基于 BLIP 生成标题的图像推荐音乐的结果

LUT-NN: 通过查找表实现的高效神经网络推理

new-arrival-in-research-4-4

论文链接:https://dl.acm.org/doi/10.1145/3570361.3613285

项目链接:https://github.com/lutnn

深度神经网络推理面临着张量计算的高硬件开销,以及张量算子开发的高人力成本。为了解决这一问题,微软亚洲研究院的研究员们创新地提出了 LUT-NN 深度神经网络推理系统。如图所示,LUT-NN 可以将网络推理中的线性计算算子转化为查表操作,从而省去了算子计算和实现的成本。

图3: LUT-NN 模型转换示例

图3: LUT-NN 模型转换示例

为实现查表,研究员们从深度神经网络每层的计算出发。DNN 模型的每一层通常是将输入特征转换为更高级别的特征。即使是不同的输入数据,DNN 模型中每一层的特征也存在着语义上的相似性。LUT-NN 通过学习每个线性计算算子的典型特征(称为中心点 “centroid”),预先计算这些特征的结果来作为查找表(Look-up Tables, LUT)。在推理时,LUT-NN 可以直接从查找表中读取与输入特征最接近中心点的计算结果,作为该算子的近似输出。为了提高 LUT-NN 的准确性,LUT-NN 还采用了可微中心点学习(differentiable centroid learnings)技术。通过模型训练过程中的反向传播,LUT-NN 可以通过调整中心点,最小化 LUT-NN 模型的精度损失。此外,研究员们还优化了 LUT-NN 的推理执行,通过提升并行性、减少内存访问、充分利用已有的硬件加速指令等方式提升了模型的推理性能。

LUT-NN 在包括图像识别、语音识别和自然语言处理等多种领域的任务上进行了评估。与传统方法相比,LUT-NN 在保持相似的模型准确度的同时,显著减少了各项推理成本。其中:浮点运算 FLOPs 最多减少到1/16,模型大小最多减少到1/7,延迟最多减少到1/6.8,内存最多减少到1/6.5,功耗最多减少到41.7%。LUT-NN 首次使用了查找表来简化DNN推理过程,并且通过可微中心点的方式降低了模型训练成本,同时还保持了模型的准确度。这种方法为移动设备上的 DNN 推理提供了一种新的、效率更高的解决方案。该论文已被 MobiCom 2023 大会接受。

arXiv精选

Large Search Model: 在大模型时代重定义搜索框架

new-arrival-in-research-4-6

论文链接:https://arxiv.org/pdf/2310.14587.pdf

搜索引擎是十分重要的信息获取工具。当代搜索引擎包含一系列不同的模块,包括查询(query)理解、检索、多级排序和问答等。但这些模块往往是独立优化和部署的,缺少端到端的训练来优化整体的搜索体验。

对此,微软亚洲研究院的研究员们提出了一种称为“大型搜索模型”(Large Search Model)的新搜索概念框架,将不同的搜索模块统一成一个用于搜索的大型语言模型。在这个框架下,研究员们将各种搜索模块都转化为自回归任务,利用大型语言模型强大的理解和推理能力,在简化复杂搜索模块的同时提供更好的搜索结果。

图4:Large Search Model 框架示意图

图4:Large Search Model 框架示意图

在传统搜索引擎中,检索模块负责根据用户查询从海量文档中返回数千相关文档,再通过多个不同的排序模块逐步从数千文档中筛选出最相关的数个文档,最后基于最相关的文档进行摘要抽取和问答等动作,从而生成搜索引擎结果页面(SERP)。而在新的 Large Search Model 框架中,则是使用一个大型语言模型作为一个统一的搜索模型,将检索返回的数千文档同时作为语言模型的输入,然后直接输出整个SERP,包括排序列表、摘要、问答结果等等。

为了实现此目标,研究员们认为 Large Search Model 应该具有统一建模多种检索任务的能力、通过提示词进行定制的能力、长文本建模能力和多模态处理能力。此外,语言模型的推理效率、幻觉和一致性也是实际中需要考虑的问题。研究员们在 MS-MARCO 数据集上进行了初步的实验。检索结果排序(表1)和结果生成(表2)的实验,都取得了优于基线的结果。

表1:列表排序的初步实验结果

表1:列表排序的初步实验结果

表2:答案摘要生成结果示例

表2:答案摘要生成结果示例

在未来,研究员们希望能在更大规模的真实场景下进行实验,并为搜索引擎的研究提供一种新的思路。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/603882.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是ajax,为什么使用ajax!

前言: 要学习一门新的、技术之前,首先我们要了解一下他是什么,为什么使用,有什么好处,该怎么理解。现在就从下文开始了解吧 什么是ajax: Ajax即“Asynchronous Javascript And XML”(异步JavaScript 和XML)&#xff0…

监控API的指标

监控服务器已经是常态了,但是监控API的表现是啥意思呢?还有监控指标?今天就来看看如何监控API。 正如监控应用程序以确保高质量性能一样,也必须监控API。 API是应用程序相互通信的管道。更具体地说,API提供了一种方法…

spring事务默认传播机制REQUIRED的试验(手动开启事务代码+feign远程调用)

transactional注解,默认啥都不指定的时候,我们使用的就是PROPAGATION_REQUIRED这种方式。 PROPAGATION_REQUIRED:业务方法需要在一个事务中运行,如果方法运行时,已处在一个事务中,那么就加入该事务,否则自…

C++20新特性解析:深入探讨协程库的实现原理与应用

C20新特性解析:深入探讨协程库的实现原理与应用 一、C20的协程库简介二、C20协程基础知识2.1、协程的基本概念和使用方法2.2、C20中的协程支持2.3、协程与传统线程的对比 三、C20协程库的实现原理四、C20协程库的应用实例总结 一、C20的协程库简介 C20引入了对协程…

特种印制电路技术

1特种印制电路技术现状、分类及特点 2006年,信息产业部(现工信部)电子信息产品管理司将高档PCB产品类型概括为HDI板、多层FPC、刚挠结合板、IC载板、通信背板、特种板材印制板、印制板新品种等种类。但直至目前,在印制电路设计与制造领域还没有形成特种…

软件测试|深入理解SQL RIGHT JOIN:语法、用法及示例解析

引言 在SQL中,JOIN是一种重要的操作,用于将两个或多个表中的数据关联在一起。SQL提供了多种JOIN类型,其中之一是RIGHT JOIN。RIGHT JOIN用于从右表中选择所有记录,并将其与左表中匹配的记录组合在一起。本文将深入探讨SQL RIGHT …

Python Selenium常见的报错以及措施

Python Selenium的常见报错主要包括以下几种: 1. NoSuchElementException: 当Selenium无法在DOM中找到元素时,会抛出此异常。这通常是因为元素不存在或者页面还未完全加载。 解决方法: 显式等待 隐式等待 越快越慢,越慢越快&#…

C#,冒泡排序算法(Bubble Sort)的源代码与数据可视化

排序算法是编程的基础。 常见的四种排序算法是:简单选择排序、冒泡排序、插入排序和快速排序。其中的快速排序的优势明显,一般使用递归方式实现,但遇到数据量大的情况则无法适用。实际工程中一般使用“非递归”方式实现。本文搜集发布四种算法…

嵌入式培训机构四个月实训课程笔记(完整版)-Linux系统编程第二天-Linux开发板外设练习题(物联技术666)

更多配套资料CSDN地址:点赞+关注,功德无量。更多配套资料,欢迎私信。 物联技术666_嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记-CSDN博客物联技术666擅长嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记,等方面的知识,物联技术666关注机器学习,arm开发,物联网,嵌入式硬件,单片机…

并发(6)

目录 31.JUC框架包含几个部分? 32.Lock框架和Tools包含哪些核心的类? 33.JUC原子类有哪些核心的类? 34.JUC线程池有哪些核心的类? 35.线程安全的实现方法有哪些? 31.JUC框架包含几个部分? 主要包含&am…

SpringCloud-高级篇(十三)

前面的主从集群可以应对Redis高并发读的问题,Redis主从之间可以做同步,为了提高主从同步时的性能,单节点Redis的内存不要设置太高,如果内存占用过多,做RDB的持久化,或者做全量同步的时候,导致大…

LDD学习笔记 -- Linux错误码

LDD学习笔记 -- Linux错误码 EACCES(Permission Denied) 13EEXIST(File Exits) 17EINVAL(Invalid Argument) 22ENOENT(No Such File or Directory)ENOMEM(Out of Memory)EIO(Input/Output Error) 5ENOSPC(No space Left on Device)ENOTTY(Not a Typewrite)EPIPE(Broken Pipe)EI…

使用邮箱发送验证码前端完成登录

前言 在前一篇使用C#发送邮箱验证码已经完成使用.net core web api写了完成往登录邮箱发送验证码的接口。现在就用前端调用接口模拟登录功能。 接口 public class ApiResp{public bool Success { get; set; }public int Code { get; set; }public int count { get; set; }pu…

元数据管理平台对比预研 Atlas VS Datahub VS Openmetadata

大家好,我是独孤风。元数据管理平台层出不穷,但目前主流的还是Atlas、Datahub、Openmetadata三家,那么我们该如何选择呢? 本文就带大家对比一下,这三个平台优势劣势。要了解元数据管理平台,先要从架构说起。 正文共&am…

【北邮国院大四上】Business Technology Strategy 企业技术战略

北邮国院电商大四在读,本笔记仅为PPT内容的整理与翻译,并不代表本课程的考纲及重点,仅为本人复习时方便阅读与思考之作。 写在前面 大家好,欢迎来到大学期间的最后一门课程,本门课程是中方课,所以很庆幸的…

【Apollo】阿波罗使用占位符 #{} 的异常分析

文章目录 1. 前言2. 复现3. 分析3.1 Value 注解3.2 根因 4. 后记5. 参考资料 1. 前言 出于线上 hotfix 报文请求模板的考虑,新增一个阿波罗配置,取值形如: 发布配置一段时间后,刚好需要重启服务,最终造成服务宕机&a…

在Ubuntu22.04上安装WordPress

WordPress是当今最简单、最强大的博客和网站建设工具。据统计全球大约有40% 以上网站是使用WordPress,这是个巨大的数字也侧面证明了WordPress的强大和普遍性。因此,如果你正在寻找一款高效、实用、可靠的CMS工具来构建网站,那么WordPress无疑…

关于HAL库外部中断的开关流程

通过HAL库配置好外部中断后,会生成如下代码: static void MX_GPIO_Init(void) {GPIO_InitTypeDef GPIO_InitStruct {0}; /* USER CODE BEGIN MX_GPIO_Init_1 */ /* USER CODE END MX_GPIO_Init_1 *//* GPIO Ports Clock Enable */__HAL_RCC_GPIOD_CLK_…

self-attention(上)李宏毅

B站视频链接 word embedding https//www.youtube.com/watch?vX7PH3NuYW0Q self-attention处理整个sequence,FC专注处理某一个位置的资讯,self-attention和FC可以交替使用。 transformer架构 self-attention的简单理解 a1-a4可能是input也可以作为中…

如何把电脑中的项目快速传进Github中?

一、打开GitHub网站:https:github.com 登录自己的个人账号 1.新建一个项目 2.用鼠标直接拖拽电脑中的项目文件夹与文件到新创建的项目中点击保存即可。