中国人工智能学会通讯——搜狗搜索:从搜索到问答 1.3 搜狗立知系统

本文涉及的产品
NLP自然语言处理_高级版,每接口累计50万次
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_基础版,每接口每天50万次
简介:

1.3 搜狗立知系统

真实用户需求分布和电视节目中的问题分布差异非常大,我们根据用户向搜索引擎提交的真实查询请求,分析统计出用户问答类需求的分布情况(见表1)。

image

我们将用户的问题类型分为三大类,第一类是事实类问题,例如“中国人口最多的城市是哪个”,这类问题的答案是实体、数字或短语等,通常是10个字以内的简短文本,该类问题占搜索请求的比率为2%左右;第二类是分析类问题,例如“北京公积金提取流程”,这类问题寻求的是某种事物的方法、原因或经验等,其答案需要数十到数百字,甚至更长的一段文本来描述,该类问题占搜索请求的比率达到20%;第三类是观点类问题,即寻找人们对某件事物的看法,通常是互斥的两种或多种观点,这类问题占搜索请求的比率约3%。从用户提交给搜索引擎的问题来看,大部分用户的问题属于分析类。显然,从实际需求出发,一个实用的问答系统需要具备回答上述三类问题的能力。

1. 立知系统概要

立知系统的目标是针对上述各类问题返回相应答案,其总体架构如图4所示。整个系统根据问题类型设计成事实类问答子系统、分析类问答子系统和观点类问答子系统三个子系统,分别处理相应类别的问题。系统接收请求后,根据意图分析模块,将问题分发给相应子系统,子系统处理后直接返回问题的答案。其中事实类问答子系统很好地支撑了搜狗汪仔参加问答比赛,下面重点介绍分析类问答子系统,以及观点类问答子系统的关键功能模块和数据处理流程。

image

2. 分析类问答系统

分析类问答系统解决的是答案为非实体的问答需求(见图5),这类问答的难点在于用户对于问题的自然语言描述方式复杂多样,需要的答案也是条例清晰、内容完整的自然语言文本,没有确定的答案类型辅助;很多情况下也并非有“唯一”正确的答案,而是要从多个可以回答问题的文本中,选择或重组织一个尽可能精准、完整、权威度高的回答。

image

针对这类问答需求,我们的解决方案是从搜索引擎结果中获取高质量候选答案篇章,利用NLP技术对查询和候选篇章进行意图理解和语义分析,计算用户问题和候选答案的匹配程度,挑选出最能回答问题的段落或句子,并利用自动摘要技术进行答案生成,最终返回给用户精准完整的答案。涉及到的关键技术包括下述三个方面。

(1) 海量网页问答文本挖掘

我们实现了一套从网页数据中,自动挖掘高质量分析类问答数据的流程。首先,基于页面结构分析自动抽取出候选问答文本对。其基本思想是通过页面解析获得每段文本对应的标签和样式,根据标签和样式对页面中的文本段进行聚类,针对每一类进行模板特征和规则评分,获得候选问题,对候选问题进行分类并截取对应的答案文本(列表型和一般文本段落型)。该方法无需人工分析页面和配置抽取模板,适用于全网数据。然后,对抽取出的候选问答对进行语义分析。通过主题模型、分散式语义表示、文本聚类和相似度计算、页面质量和站点质量打分等,去掉不是问题或者答非所问的数据,保留问题比较明确、答案较为相关、来源较为可信的数据。

(2) 基于语义匹配的候选答案排序

在借助网页搜索获取候选答案文本的基础上,问答系统重点解决的是对用户意图的判断和对候选答案的排序。基于大规模搜索引擎数据和用户点击反馈学习的问答意图模型,能够帮助我们很好地识别出用户的问答需求,例如查询“外地人北京买房资格”,并不包含疑问词,但是反映了用户对相关答案的需求,属于典型分析类问答。对于识别出来的问答需求查询,我们利用文本匹配和深度语义匹配方法计算查询和候选结果网页标题、抽取问题,以及答案之间的相关性,并通过意图分析和文本分类技术,找到针对该问题需求的比较优质权威的站点结果,生成多种特征,利用机器学习排序模型进行候选答案排序。

(3) 对最佳答案文本的自动摘要展现

精准问答不仅要求给出答案,还需要答案条理清晰、简明扼要,在移动搜索环境中这一点尤为重要,因此我们会对选出的答案文本进行自动摘要。主流的自动摘要方法一般是进行内容表示、权重计算、内容选择和内容组织,针对问答这一场景,还需要在进行上述一系列步骤的同时,加入给定问题(或用户查询)的变量;对于列表型的答案文本,还加入了样式的约束。最后生成的答案是从原文本中摘选出的,具有语义连贯性和表意完整性的最小句子集合。同时,我们也在尝试和研究引入注意力机制的端到端的答案生成方法。

便捷地获取知识是问答需求的本质,基于通用搜索和机器阅读理解的答案生成将在未来为用户信息获取效率的提升带来极大价值。

3. 观点类问答系统

构建观点类问答系统的重点有两大块,即观点数据的挖掘,以及用户查询和观点的匹配,其中查询和观点数据的匹配方法类似在分析类问答系统中的处理流程,这里简要介绍观点数据的挖掘流程(见图6)。

image

系统首先依据用户查询需求的分布,从网页库中抽取优质问答站点的问答数据,并通过查询分析技术识别一个问题是否属于互斥类问题,例如“孕妇能否吃榴莲”。对于识别出的互斥类问题,进一步细分其互斥类型,包括好不好、能不能、真假、选择问等多种类型。接下来对语义相同的问题进行聚合,并采用情感分析技术对聚合内的全部答案进行正负向情感判别。最后是答案聚合和排序,将表达相同观点的回答聚合在一起,形成优质的观点问答数据库,作为后续响应用户查询的基础。

观点数据来自互联网页面,通过观点挖掘可以获取网民对某件事物看法的综合表达,因此挖掘得到的观点聚合数据是针对特定事物网民群体智慧的集中体现和清晰展示。

集成上述三个问答子系统形成的立知系统,具备回答通用领域各类问题的能力,从系统的运作方式不难看出,目前这套立知系统深度依赖互联网海量数据提供的基础,以及包括数据挖掘、自然语言处理、语义计算和情感计算等在内的多项人工智能核心技术。同时,作为一套通用问答系统,立知系统可以很自然地接入搜索引擎,为互联网用户提供更加方便的搜索服务。

相关文章
|
22天前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
227 55
|
4月前
|
机器学习/深度学习 算法 TensorFlow
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件,然后保存为本地格式的H5格式文件。再基于Django开发Web网页端操作界面,实现用户上传一张动物图片,识别其名称。
127 1
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
|
1月前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
165 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
2月前
|
人工智能 监控 物联网
深度探索人工智能与物联网的融合:构建未来智能生态系统###
在当今这个数据驱动的时代,人工智能(AI)与物联网(IoT)的深度融合正引领着一场前所未有的技术革命。本文旨在深入剖析这一融合背后的技术原理、探讨其在不同领域的应用实例及面临的挑战与机遇,为读者描绘一幅关于未来智能生态系统的宏伟蓝图。通过技术创新的视角,我们不仅揭示了AI与IoT结合的强大潜力,也展望了它们如何共同塑造一个更加高效、可持续且互联的世界。 ###
|
2月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
94 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
2月前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
105 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
4月前
|
机器学习/深度学习 人工智能 算法
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
植物病害识别系统。本系统使用Python作为主要编程语言,通过收集水稻常见的四种叶片病害图片('细菌性叶枯病', '稻瘟病', '褐斑病', '稻瘟条纹病毒病')作为后面模型训练用到的数据集。然后使用TensorFlow搭建卷积神经网络算法模型,并进行多轮迭代训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地模型文件。再使用Django搭建Web网页平台操作界面,实现用户上传一张测试图片识别其名称。
155 22
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
|
4月前
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
133 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
4月前
|
人工智能 JSON 数据格式
RAG+Agent人工智能平台:RAGflow实现GraphRA知识库问答,打造极致多模态问答与AI编排流体验
【9月更文挑战第6天】RAG+Agent人工智能平台:RAGflow实现GraphRA知识库问答,打造极致多模态问答与AI编排流体验
RAG+Agent人工智能平台:RAGflow实现GraphRA知识库问答,打造极致多模态问答与AI编排流体验
|
4月前
|
机器学习/深度学习 算法 TensorFlow
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
交通标志识别系统。本系统使用Python作为主要编程语言,在交通标志图像识别功能实现中,基于TensorFlow搭建卷积神经网络算法模型,通过对收集到的58种常见的交通标志图像作为数据集,进行迭代训练最后得到一个识别精度较高的模型文件,然后保存为本地的h5格式文件。再使用Django开发Web网页端操作界面,实现用户上传一张交通标志图片,识别其名称。
158 6
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面