阿里推出文本搜索排序新技术,登顶国际权威NLP榜单MS MARCO

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
推荐全链路深度定制开发平台,高级版 1个月
智能开放搜索 OpenSearch向量检索版,4核32GB 1个月
简介: 3月28日,阿里巴巴团队以0.450的得分,刷新了国际权威自然语言处理(NLP)榜单MS MARCO短文本检索排序任务历史纪录。据悉,搜索团队最新研发的文本检索及排序技术已通过阿里云智能开放搜索OpenSearch产品对外输出。

9f5ff79a07c04d49b7ab1f3d6709d55b.png

文本检索排序任务需根据指定查询词,检索数据集中所有文档并进行排序。相关技术在机器阅读理解、智能问答、搜索引擎等领域应用广泛,一直是NLP领域重要的研究课题。由于候选文档数量巨大,文本检索排序通常包括粗排(召回)和精排两个阶段,其核心是在每个阶段建模查询词和候选文档的语义相关性。近两年,基于大规模预训练语言模型训练的文本检索排序模型,较传统的统计模型效果提升显著,但业界在针对该任务设计适用工业实践的预训练语言模型底座及下游模型上仍有待突破。


MS MARCO是文本检索排序领域最具代表性的数据集,收录了微软Bing搜索引擎和Cortana智能助手近百万查询词与800万文档在内的真实搜索场景数据。自2018年MS MACRO短文本检索排序任务发布以来,在全球范围内吸引了包括谷歌、Facebook、卡内基梅隆大学等上百个研究团队竞相挑战,促进了文本检索排序技术的发展。

3月28日,阿里巴巴团队采用全新研发的文本检索与排序技术,登上MS MARCO短文本检索排序榜单榜首,较第二名得分提升2.5%。


据了解,阿里达摩院语言技术实验室与智能引擎团队提出了针对文本检索排序任务的新型预训练语言模型解决方案,即Search Language Model (SLM) + Hybird List Aware Reranking (HLAR)。在粗排阶段,团队针对文本召回任务的特征设计了新的预训练语言模型SLM,在保证召回效率的同时将召回阶段的效果提升了3.9%。在精排阶段,以StructRobertaLarge模型为底座,团队提出了以Transformer结构为基础、组合粗排与精排特征的重排序模型HLAR, 进一步提升了文本排序的效果。


上述解决方案已通过阿里云智能搜索产品-开放搜索OpenSearch对外输出,打造行业独有的在电商、教育、游戏内容等多个行业搜索解决方案,行业版对比通用模型效果提升10%以上,模板化业务配置,企业可轻松接入获得高质量搜索效果,在业界获得好评。未来持续探索更多行业能力,助力更多场景应用。


为推动中文领域文本检索与排序技术的发展,近期阿里也公开了基于阿里巴巴真实搜索场景数据构建的多领域文本搜索数据集Multi-CPR,未来团队将逐步推进相关文本排序模型的开源。

详细内容可以参考

论文: https://arxiv.org/abs/2203.03367

数据: https://github.com/Alibaba-NLP/Multi-CPR


了解更多阿里云智能开放搜索产品内容:https://www.aliyun.com/product/opensearch

如果你想与更多开发者们进行交流、了解最前沿的搜索与推荐技术,可以钉钉扫码加入社群

目录
相关文章
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理生成文本
自然语言处理生成文本
51 4
|
6月前
|
机器学习/深度学习 自然语言处理 算法
在Python中进行自然语言处理(NLP)的文本预处理
在Python中进行自然语言处理(NLP)的文本预处理
152 1
|
6月前
|
机器学习/深度学习 自然语言处理 数据可视化
数据代码分享|PYTHON用NLP自然语言处理LSTM神经网络TWITTER推特灾难文本数据、词云可视化
数据代码分享|PYTHON用NLP自然语言处理LSTM神经网络TWITTER推特灾难文本数据、词云可视化
|
16天前
|
机器学习/深度学习 自然语言处理 知识图谱
GraphRAG在自然语言处理中的应用:从问答系统到文本生成
【10月更文挑战第28天】作为一名自然语言处理(NLP)和图神经网络(GNN)的研究者,我一直在探索如何将GraphRAG(Graph Retrieval-Augmented Generation)模型应用于各种NLP任务。GraphRAG结合了图检索和序列生成技术,能够有效地处理复杂的语言理解和生成任务。本文将从个人角度出发,探讨GraphRAG在构建问答系统、文本摘要、情感分析和自动文本生成等任务中的具体方法和案例研究。
39 5
|
18天前
|
自然语言处理 Python
如何使用自然语言处理库`nltk`进行文本的基本处理
这段Python代码展示了如何使用`nltk`库进行文本的基本处理,包括分词和词频统计。首先需要安装`nltk`库,然后通过`word_tokenize`方法将文本拆分为单词,并使用`FreqDist`类统计每个单词的出现频率。运行代码后,会输出每个词的出现次数,帮助理解文本的结构和常用词。
|
5月前
|
机器学习/深度学习 自然语言处理 算法
【从零开始学习深度学习】49.Pytorch_NLP项目实战:文本情感分类---使用循环神经网络RNN
【从零开始学习深度学习】49.Pytorch_NLP项目实战:文本情感分类---使用循环神经网络RNN
|
1月前
|
自然语言处理 算法 数据挖掘
探讨如何利用Python中的NLP工具,从被动收集到主动分析文本数据的过程
【10月更文挑战第11天】本文介绍了自然语言处理(NLP)在文本分析中的应用,从被动收集到主动分析的过程。通过Python代码示例,详细展示了文本预处理、特征提取、情感分析和主题建模等关键技术,帮助读者理解如何有效利用NLP工具进行文本数据分析。
46 2
|
1月前
|
自然语言处理
【NLP自然语言处理】文本特征处理与数据增强
【NLP自然语言处理】文本特征处理与数据增强
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【自然语言处理】python之人工智能应用篇——文本生成技术
文本生成是指使用自然语言处理技术,基于给定的上下文或主题自动生成人类可读的文本。这种技术可以应用于各种领域,如自动写作、聊天机器人、新闻生成、广告文案创作等。
108 8
|
3月前
|
机器学习/深度学习 存储 人工智能
自然语言处理 Paddle NLP - 检索式文本问答-理论
自然语言处理 Paddle NLP - 检索式文本问答-理论
28 1