简介:达摩院算法专家--徐光伟(昆卡)聚焦在线教育行业的拍照搜题场景,介绍如何应用开放搜索来构建更高搜索性能及搜题准确率的搜题系统,从而助力在线教育行业客户掌握更高层次用户体验的获客工具。

讲师:徐光伟(昆卡)--阿里云达摩院算法专家

视频地址:https://developer.aliyun.com/live/246649

教育搜题解决方案地址:https://www.aliyun.com/page-source/data-intelligence/activity/edusearch

开放搜索简介-引擎优势

开放搜索(OpenSearch)是基于阿里巴巴自主研发的大规模分布式搜索引擎搭建的一站式智能搜索业务开发平台,通过内置各行业的查询语义理解、机器学习排序算法等能力,提供充分开放的算法及引擎能力,助力开发者快速搭建更高性能、更高搜索基线效果的智能搜索服务。

其搜索引擎采用阿里自研的整套搜索工程体系-AIOS系统,支撑着阿里系包含淘宝、天猫、lazada、闲鱼、优酷、菜鸟、盒马等全部的搜索场景,在稳定性和工程效率上都是行业领先水平。开放搜索简介-算法优势

开放搜索(OpenSearch)在算法上集成达摩院NLP(自然语言处理)团队的核心技术,NLP Foundations 中的词法分析、句法分析、语义分析、文本分析、deep learning 技术都处于业界领先。通过对各行业智能语言处理的深入研究,在开放搜索的行业应用中产品化落地。

教育搜题-业务背景

近几年在线教育行业飞速发展,根据2020中国移动互联网教育学习APP行业月活用户规模TOP10的统计,月活前十中针对K12教育的APP有6个,具备搜题场景的APP有5个;说明了搜题功能在教育行业的的重要性。

(数据来源:QuestMobile<2020中国移动互联网年度大报告>)

工具型的产品能力,它是用来帮助产品获得大量的用户和流量,从而为其他的业务提供变现能力。在线教育行业中拍照搜题作为产品掠取流量最重要的工具,抓住了家长、学生辅导和解题上需求,为其他的业务变现提供源源不断的流量。正是由于这样的定位,搜题的准确性和效率变得更加重要,将直接影响品牌的口碑和用户粘性。

教育搜题-业务特点

海量题库

客户的题库一般都是千万甚至亿级别,而且还在快速持续的增长。同时搜题业务存在比较明显的高峰现象。在平时的晚上787到8点,尤其是周末的最后一天或者是节假日的最后一天。QPS存在很明显的高峰,具备高弹性和低延迟的云搜索,云搜索能力就成为了客户的首选。

场景丰富

搜题的场景越来越丰富,涵盖不同的年级,比如低年级出现比较多的像看图识字、连线题等,这种需要图片信息的,还有包含不同的学科,现在已有的学科已经超过10个,这些丰富的场景都会对搜索效果产生影响。

算法需求

因为搜集产品一般只会展现top 3到top5的1个结果,对于准确性的要求极高,同时还会依赖一些多模态和多元的算法能力来解决图文搜索和多元处理的需求。

开放搜索如何提供精准高效、稳定的一站式搜题解决方案

  • 左边:用户拍照题目,经过OCR识别之后的文本,通过中间的开放搜索(OpenSearch )引擎得到Top 3-5的召回结果进行展示;
  • 右边:客户题库,开放搜索会严格保证客户数据的安全和隐私;
  • 中间:开放搜索(Open Search )引擎部分包含了文档召回、排序定制和干预功能三大模块;

开放搜索Query处理流程

查询语义理解

案例说明:

教育搜题定制分词器

搜题场景分词难点:

  1. 英文题目,ocr 识别之后的空格缺失;
  2. 数学题目latex公式表示之后的切分;

解决方法:

  • 针对第一个问题,收集千万级K12英文语料训练语言模型,即便对超长的英文连写也可以精准切分;
  • 针对第二个问题,利用开放搜索自带的分词干预能力将latex表示中的运算符号预处理;

类目预测-学科、题型分类

什么是类目预测?

简单来说,用户输入一个query,查询得到一批商品,通过计算每一个商品所属的类目与query之间的相关度,只要商品的排序公式中引用了这个相关度,那么对于这个商品来说,它所属的类目与query的相关度越高,它的排序公式的计算结果就获得了越高的排序得分,从而这个商品就会排在越前面。

教育行业中的应用

  • 结合输⼊的图⽚信息和OCR识别之后的结果预测输⼊题⽬的学科类别、题目类型;
  • 预测各⽂本⽚段的字段类型(题干描述、选项等等);

词权重分析

功能介绍:该功能主要分析了查询中每一个词在文本中的重要程度,并将其量化成权重,权重较低的词可能不会参与召回。这样可以避免当用户输入的查询词中包含一些权重低的词时,仍然按用户输入的查询词限制召回,导致命中结果过少。

功能用途: Query丢词、改写、文本相关性分析;

1. 基于用户行为生成训练数据

首先是基于querydock 点击行为去构建点击图,然后利用vpc 计算法得到TOM 之间的一个重要度偏训

2. 词权重模型训练

  • 在进行规划之后得到训练数据利用序列标注模型去预测每一个特用的权重;
  • 预测标签(7,4,1), 分值越⾼表⽰term的重要性越⼤, 召回结果更准确;

示例:

Query改写-干预功能

开放搜索除了已经内置的这些算法能力同时还支持用户的批量干预::词典、拼写纠错,同义词,词权重等;

示例:

  1. OCR识别可能会把一些非题目要素识别进来干扰query分析的结果,这时候可以使用词权重干预的方式保证非题目要素字段被打标成低权重,保证召回和排序效果;
  2. 用户可以自定义同义词来扩召回,例如“立方米” -> “吨”;

教育搜题排序定制

系统开放了两阶段排序过程:基础排序和业务排序,即粗排和精排;基础排序即是海选,从检索结果中快速找到质量高的文档,取出TOP N个结果再按照精排进行精细算分,最终返回最优的结果给用户。为了实现更细粒度的排序效果,结合排序表达式(Ranking Formula)可以为应用自定义搜索结果排序方式 。

多路召回-语义向量召回

为什么搜题要做多路召回?

教育拍照搜题场景相比网页/电商的文本搜索有显著差异:

  • 搜索query特别长:常规检索term数上限30,搜题需要放到100;
  • 搜索query是由拍照OCR识别之后得到的文本,关键term的识别错误会严重影响召回排序;

纯文本查询方案

1. OR逻辑查询

  • 为了降低无结果率,搜题客户常见的系统是基于ES默认的OR逻辑,latency高,计算消耗大;
  • OpenSearch也支持OR逻辑,针对latency高可以通过并行seek的方式优化,但整体计算消耗仍然高;

2. AND逻辑查询

  • 采用通用的query分析模块,无结果率高,整体准确性不如OR逻辑;
  • 针对教育领域优化定制的query分析模块,大幅提高效果,准确性接近OR逻辑;

如何去兼顾计算消耗和搜索准确性那?我们在此引入了文本向量检索

文本向量检索

目标:通过文本向量检索扩召回,结合AND逻辑查询,做到latency和计算消耗低于OR逻辑的情况下准确性更高;

向量召回采用目前最先进的BERT模型,其中针对教育搜题做的特别优化有:

  • BERT模型采用达摩院自研的StructBERT,并针对教育行业定制模型;
  • 向量检索引擎采用达摩院自研的proxima引擎,准确性和运行速度远超开源系统;
  • 训练数据可以基于客户的搜索日志不断积累,效果持续提升;

这个图我们可以看到有一项召回,在召回率上已经达到凹逻辑。同时在准确性上现在超出2逻辑3到5个点,整体的召回到数减少40倍的情况下,latency 可以降低10倍以上。

效果:

  1. 召回率达到OR逻辑
  2. 准确性超出OR逻辑3%-5%
  3. 整体召回doc数量减少40倍,latency降低10倍以上

多路召回-文本向量多路召回

多路召回优势:

文本召回和语义向量召回的结合在搜题场景已经验证有效,开放搜索的多路召回架构还将有更多的使用空间:图片向量召回、公式召回、个性化召回。

除了开放搜索内置的向量模型,我们也将支持客户自己的向量索引,欢迎客户和我们一起深耕搜题算法优化。

搜题案例效果展示

案例1:搜题query:"张慧研所指与小磁大概相近的是乐府之音

案例2:搜题Query: “如图是由一些相同的小正方体搭成的几何体从三个不同方向看得到的形状图,则搭成这样的几何体需要__个小正方体

最佳实践 – 开放搜索对比开源/自建优势

1、某K12教育客户: 某在线教育平台,主打K12教育,用户数千万级别,题库量8千万左右且持续增加,由自建题库和第三方题库两部分组成,之前通过OCR+自建ES搜索服务实现拍照搜索功能,面临的主要问题是搜索准确率待优化提升,降低搜索延迟等问题。

客户反馈:

  • 搜题准确率绝对值提升5%;
  • 延时从100ms-300ms降到稳定50ms;
  • 离线数据同步大于4000TPS;

2、某高职教育客户:某聚焦在大学生搜题领域的在线教育公司,产品DAU300W,月活1000W,业务高峰期日均搜题PV过亿。

客户反馈:

  • 对比自建系统高峰搜索耗时>2s,开放搜索稳定搜索耗时50ms,同比下降40倍;
  • TOP5题目搜索准确率平均提升2.4%;
  • 搜索无结果率从高于40%降低至不到1%;
  • 业务高峰期秒级平滑扩容,解决高并发搜索需求;

如果您对搜索与推荐相关技术感兴趣,欢迎加入钉钉群内交流


【开放搜索】新用户活动:阿里云实名认证用户享1个月免费试用

https://free.aliyun.com/product/opensearch-free-trial

原文链接:https://developer.aliyun.com/article/783591?

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

算法专家解读 | 开放搜索教育搜题能力和实践相关推荐

  1. 资深算法专家解读CTR预估业务中的深度学习模型

    内容来源:2018 年 01 月 05 日,资深算法专家张俊林在"2018 移动技术创新大会"进行<深度学习在CTR预估业务中的应用>演讲分享.IT 大咖说(微信id: ...

  2. python拍照搜题_Python数据分析实践,中国大学MOOC(慕课)答案公众号搜题

    Python数据分析实践,中国大学MOOC(慕课)答案公众号搜题 更多相关问题 I can guess you were in a hurry. You ( ) your sweater inside ...

  3. 开放华为30年研发能力与实践 助力DevOps真正落地

    戳蓝字"CSDN云计算"关注我们哦! 作者 | 刘丹 受访者 | 汪维敏 出品 | CSDN云计算(ID:CSDNcloud) 高速的中子撞击U235原子核,使其分裂成两个原子核, ...

  4. 阿里云峰会 | AI搜题加速在线教育行业场景创新

    简介:过去的2020年的让所有人难忘的一年,受新冠疫情的影响,各行各业都在挑战中变化,在教育方面也催生了新的商业格局.在线教育平台发展迅猛,阿里云也积极相应,为在线教育的众多客户提供了高效稳定的技术保 ...

  5. 【新功能】开放搜索多路召回技术解读

    简介:多路召回就是指采用不同的策略.特征或者简单模型,分别召回一部分候选集,然后再把这些候选集混合在一起后供后续排序模型使用的策略,本文将介绍开放搜索平台上的多路召回技术是如何深度提升搜索效果的~ 背 ...

  6. 开放搜索查询分析服务架构解读

    简介:搜索行为在后端都会有大量的数据计算和处理才会召回符合用户需求的搜索结果,本次分享结合自建搜索业务中查询分析服务常见的问题及难点,介绍阿里云开放搜索查询分析具备的能力及解决方案,并深度解读阿里巴巴 ...

  7. 新功能 | 智能开放搜索上线定制分词器

    NLP算法在搜索链路中的应用 这是一个完整的从查询词到搜索结果的链路,其中自然语言处理(NLP)算法发挥作用的地方主要在第二阶段的查询分析,该阶段包含多个NLP算法模块,如分词.纠错.实体识别.词权重 ...

  8. 智能开放搜索上线定制分词器

    简介:智能开放搜索上线定制召回模型-定制分词器功能,满足各行业.垂类.业务特殊,对搜索有较高分词要求的客户,提升语义理解能力,精准召回用户搜索意图. NLP算法在搜索链路中的应用 这是一个完整的从查询 ...

  9. [转]拍照怎么搜题?(上)

    拍照怎么搜题?(上) 原文地址:http://mp.weixin.qq.com/s?__biz=MzA3MDExNzcyNA==&mid=402907292&idx=1&sn= ...

最新文章

  1. LAMP编译安装(一)——安装Apache2.4
  2. catia曲面扫掠命令详解_Catia曲面基础与工程实践 3.2 扫掠曲面
  3. python基础高频_面试题(一)
  4. java servlet例子_Servlet学习教程(三)---- 一个简单的Servlet例子
  5. Linux文件锁学习-flock, lockf, fcntl
  6. resnet50能用cpu跑吗_2020年12月1日更新。性价比最高入门游戏CPU--intel 10100F装机配置推荐。...
  7. vue搭建后可以改下全局配置
  8. linux rc文件是什么,linux通常使用的 rc 和 .(点)文件
  9. ERC223以太坊通证标准
  10. mysql skip-grant-tables my.cnf_skip-grant-tables:修改mysql密码
  11. HDU 6319(单调队列)
  12. opencv3.4.5安装包
  13. freertos fatfs s32k 云_云的英语表达方式
  14. nbu备份oracle中途停止,NBU异构还原Oracle完整备份的一些总结
  15. android textview setellipsize,android中给TextView设置属性ellipsize
  16. 龙卷风路径_“龙卷风”:预判路径 减轻灾害
  17. ssm教务系统网站毕业设计源码290915
  18. cf-645D. Robot Rapping Results Report(拓扑序列)
  19. ORACLE-SQL笔记
  20. Google 应用与游戏出海 4 月刊: 带您连线 GDC,赢在发布前!

热门文章

  1. Python项目打包发布到pypi
  2. 数据恢复错误卡住 linux,如何处理ORA-00376错误的恢复问题
  3. 已知三角形三边长怎么求面积_已知三角形三边求面积的公式——海伦公式
  4. git-ssh-keygen
  5. Cassandra--启用用户认证和用户管理
  6. JAVA首次课堂测试总结
  7. centos7.3 编译安装 git 2.13
  8. 【单词】常见单词含义的辨异(emulator/simulator、hardware/firmware)
  9. IBM Bluemix体验:Containers持久存储
  10. Hibernate如何一个类映射两个表