自然语言处理在开放搜索中的应用

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
推荐全链路深度定制开发平台,高级版 1个月
OpenSearch LLM智能问答版免费试用套餐,存储1GB首月+计算资源100CU
简介: 构建搜索引擎的时候,都会遇到很多效果优化的问题,其中很多都和自然语言处理相关。本文通过结合开放搜索中NLP技术要点进行解读和分析。

特邀嘉宾:谢朋峻--阿里云智能高级算法专家
视频地址:https://yunqi.aliyun.com/2020/session54?liveId=44650

自然语言智能(NLP)

自然语言智能研究实现人与计算机之间用语言进行有效通信。它是融合语言学、心理学、计算机科学、数学、统计学于一体的科学。它涉及到自然语言和形式化语言的分析、抽取、理解、转换和产生等多个课题。

人工智能可以分为几个阶段

计算智能,指依靠计算强大的算力和海量数据的存储能力,可以在部分领域超越人类的表现。代表例子就是谷歌的alphago,凭借谷歌TPU的强大算力以及结合类似蒙特卡洛树搜索、强化学习等算法,能够在围棋的巨大搜索空间中计算出好的决策路径,战胜人类,这是计算智能;
感知智能,是指从无结构化数据中识别出重要的要素。比如给一个query,分析出包含的人民、地名、机构名等;
认知智能,是在感知之上,能够理解其中要素的含义以及进行一些推理。比如“谢霆锋是谁的儿子 谁是谢霆锋的儿子”两句话。词和实体都差不多,但语义差别很多。这是认知智能要解决的问题;
创造智能,比如计算机指能够理解语义的基础上,创造出符合常识、语义、逻辑的句子。比如自动写出行云流水的小说、创造娓娓动听的音乐 能够无违和跟人自然聊天等
自然语言处理研究覆盖了感知智能,认知智能,创造智能这样的学科,是实现完整人工智能的必要技术

自然语言智能发展趋势

  1. 深度语言模型突破式发展, 引领重要自然语言技术取得进展;
  2. 公有云NLP技术服务从通用功能走向定制化服务;
  3. 自然语言技术逐步与行业/场景紧密结合, 产生更大价值;

阿里集团NLP平台能力

image.png
从下到上分为了NLP数据、NLP基础能力、NLP应用技术和上层应用。
NLP数据是很多算法的原料,累了包括语言词典、实体知识词典、句法词典、情感分析等词典等。阿里NLP基础技术包含了词法分析、句法分析、文本分析、深度模型。在这之上,是NLP垂直的技术 包括问答 对话技术 反垃圾 地址解析等。这些技术的组合,就支持了很多应用。 其中搜索是NLP能力非常密集的一个应用

开放搜索中NLP应用和典型技术

image.png
• 基础设施包含了阿里云基础产品,以及基于阿里生态搜索场景打磨出的多个搜索自研系统,比如HA3、RTP、Dii等;
• 管控基础平台,保证我们离线数据采集、管理、训练等;
• 算法模块,我们分为两块,一块是查询分析相关,包含多粒度分词、实体识别、纠错改写等;另一个块是相关性和排序相关,包括文本相关性、CTR CVR预估、LTR 等;
(其中橙色背景的表示是跟NLP相关)
开放搜索的目标是要打造一站式、开箱即用的智能搜索服务,所以我们会把这些算法能力,以行业模板、 场景化、周边服务的形式开放给用户。

开放搜索NLP分析链路

搜索的发起,往往是一个搜索关键词触发,比如用户搜索“ aj1北卡兰新款球鞋”

image.png
跨领域分词
我们在开放搜索开放了一系列的领域的分词模型
分词挑战

  1. 各个领域不断新增的未登录词或者叫新词,往往会大大降低分词效果;
  2. 为新用户定制分词模型,从标注到训练的整个过程,成本都比较高;
    解决思路
  3. 结合统计特征,比如互信息、左右上等构建一个成词模型,可以基于用户数据快速构建一份领域词典;
  4. 结合源领域分词模型和目标领域的词典,我们基于远程监督技术可以快速构建一个目标领域分词器;

image.png
(上图为自动跨领域分词框架)
用户只需要提供给我们一些自己业务的语料数据,我们就可以自动的得到一个定制化的分词模型,这不仅大大提升了效率,同时也更快满足客户的需求。
通过这个技术,我们可以在各个领域获得比开源通用分词,更好的效果

image.png
命名实体识别
命名实体识别(NER),例如从query中提取人名 地名 时间等。
挑战与困难
NER在NLP领域研究非常多同时也面临很多的挑战,尤其在中文上由于缺乏天然分隔符,面临边界歧义、语义歧义、嵌套歧义等困难。
**解决思路
**• 下图右上角是我们在开放搜索中使用的模型架构图;
• 在开放搜索中,很多用户都积累了大量词典实体库。为了充分利用这些词典,我们提出了一种在bert之上,有机融合知识的graphNer框架。从右下角的表格可以看出,在中文上能取得最好的效果;

image.png
拼写纠错
开放搜索分为4个纠错步骤包含了挖掘、训练、评估和在线预测。
主要的模型根据统计翻译模型和神经网络翻译模型两套系统,同时在性能、展示样式和干预上有一套完备方法。

image.png
语义匹配
深度语言模型的出现给很多NLP任务带来了跨越式的提升,尤其是在语义匹配等任务上。
达摩院在bert上也提出了很多创新,提出了自研的StructBert。主要创新点在于在深度语言模型训练中,增加了字序/词序的目标函数 和更多样的句子结构预测目标函数,进行多任务学习。但是这样的通用的structbert是无法试用给开放搜索里成千上万个客户,成千上万个领域的。我们需要做领域适配。所以我们提出了语义匹配3阶段范式。 可以快速的为客户定制适合于自己业务的语义匹配模型。

image.png

(具体的流程如图)

NLP算法产品化

算法模块产品化的系统架构,包含了离线计算、在线引擎以及产品控制台。
图中浅蓝色的部分是NLP在开放搜索上开放的算法相关功能,用户可以直接在控制台体验和使用。
image.png


以上就是本次云栖大会--“自然语言处理在开放搜索中的应用”的内容。如果您对搜索与推荐相关技术感兴趣,欢迎加入钉钉群内交流~

image.png

【开放搜索】新用户活动:阿里云实名认证用户享1个月免费试用https://free.aliyun.com/product/opensearch-free-trial

目录
相关文章
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术在自然语言处理中的应用与挑战
【10月更文挑战第3天】本文将探讨AI技术在自然语言处理(NLP)领域的应用及其面临的挑战。我们将分析NLP的基本原理,介绍AI技术如何推动NLP的发展,并讨论当前的挑战和未来的趋势。通过本文,读者将了解AI技术在NLP中的重要性,以及如何利用这些技术解决实际问题。
|
2月前
|
机器学习/深度学习 数据采集 自然语言处理
深度学习在自然语言处理中的应用与挑战
本文探讨了深度学习技术在自然语言处理(NLP)领域的应用,包括机器翻译、情感分析和文本生成等方面。同时,讨论了数据质量、模型复杂性和伦理问题等挑战,并提出了未来的研究方向和解决方案。通过综合分析,本文旨在为NLP领域的研究人员和从业者提供有价值的参考。
|
1月前
|
自然语言处理 算法 Python
自然语言处理(NLP)在文本分析中的应用:从「被动收集」到「主动分析」
【10月更文挑战第9天】自然语言处理(NLP)在文本分析中的应用:从「被动收集」到「主动分析」
48 4
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI在自然语言处理中的创新应用
【10月更文挑战第7天】本文将深入探讨人工智能在自然语言处理领域的最新进展,揭示AI技术如何改变我们与机器的互动方式,并展示通过实际代码示例实现的具体应用。
38 1
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术在自然语言处理中的应用
【9月更文挑战第17天】本文主要介绍了AI技术在自然语言处理(NLP)领域的应用,包括文本分类、情感分析、机器翻译和语音识别等方面。通过实例展示了AI技术如何帮助解决NLP中的挑战性问题,并讨论了未来发展趋势。
|
5天前
|
机器学习/深度学习 自然语言处理 监控
探索深度学习在自然语言处理中的应用与挑战
本文深入分析了深度学习技术在自然语言处理(NLP)领域的应用,并探讨了当前面临的主要挑战。通过案例研究,展示了如何利用神经网络模型解决文本分类、情感分析、机器翻译等任务。同时,文章也指出了数据稀疏性、模型泛化能力以及计算资源消耗等问题,并对未来的发展趋势进行了展望。
|
9天前
|
人工智能 自然语言处理 API
探索AI在自然语言处理中的应用
【10月更文挑战第34天】本文将深入探讨人工智能(AI)在自然语言处理(NLP)领域的应用,包括语音识别、机器翻译和情感分析等方面。我们将通过代码示例展示如何使用Python和相关库进行文本处理和分析,并讨论AI在NLP中的优势和挑战。
|
15天前
|
机器学习/深度学习 自然语言处理 知识图谱
GraphRAG在自然语言处理中的应用:从问答系统到文本生成
【10月更文挑战第28天】作为一名自然语言处理(NLP)和图神经网络(GNN)的研究者,我一直在探索如何将GraphRAG(Graph Retrieval-Augmented Generation)模型应用于各种NLP任务。GraphRAG结合了图检索和序列生成技术,能够有效地处理复杂的语言理解和生成任务。本文将从个人角度出发,探讨GraphRAG在构建问答系统、文本摘要、情感分析和自动文本生成等任务中的具体方法和案例研究。
37 5
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术在自然语言处理中的应用
【10月更文挑战第4天】本文将介绍人工智能(AI)在自然语言处理(NLP)领域的应用,包括语音识别、机器翻译、情感分析等方面。我们将通过一些实际案例展示AI如何帮助人们更好地理解和使用自然语言。同时,我们也会探讨AI在NLP领域面临的挑战和未来发展方向。
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
探索人工智能在自然语言处理中的应用
本文将深入探讨人工智能在自然语言处理领域的应用,包括语音识别、文本挖掘和情感分析等方面。通过实例演示,我们将展示如何利用深度学习技术来提高自然语言处理的准确性和效率。

相关产品

  • 智能开放搜索 OpenSearch