搜索推荐技术-爱奇艺搜索引擎技术

2023-12-08 00:45

本文主要是介绍搜索推荐技术-爱奇艺搜索引擎技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、爱奇艺的搜索引擎框架示意图

在这里插入图片描述即通过召回系统,即基于文本匹配的matching system,得到大量视频资源的候选集,经过粗排和精排,最后返回给用户。重点在于召回模块和排序模块。

二、召回模块

召回模块比较重要的是基础相关性,类比于传统的切词倒排索引;还有基于深度学习模型的索引,类比于向量索引。
在这里插入图片描述

1.基础相关性

通过对用户的query进行切词,将右边的视频资源的文本描述信息构建构建倒排索引,此过程为精确匹配过程,词匹配则倒排索引拉回归并,然后返回用户。
需要注意的是切词粒度和词的权重问题。不同的词的粒度会影响你是否可以通过倒排索引召回内容;词权重会影响你在相关性计算的时候的最终得分。
基础相关性解决不了的问题,被归为四类:词汇的同义多义问题、语言表达差异、输入错误兼容、泛语义召回。

2.基于深度学习模型

在搜索场景下,用一些nlp工具,能够把词表示成低维的向量,该向量可以表示词与词之间的相关性,在网络里面加入rnn,cnn等机制,把网络做的足够复杂,以提取更加有效的匹配的特征。
在这里插入图片描述
组合起来,就形成了最终的召回模块
在这里插入图片描述

三、排序模块

在这里插入图片描述在这里插入图片描述

1.目标

选择的是list wise方法。我们采用的优化指标是ndcg,这在搜索引擎中是应用的非常广泛的评价指标。它包含两个参数:

r(i)代表第i个结果的相关性,

i代表i个结果的排序位置。

直观理解:i越小,r(i)越大,ndcg越大,越靠前的结果约相关,这个指标就越高。

2.样本

用户的点击行为,点击并不代表喜欢,点击后的行为也需要考虑进来。
在这里插入图片描述

3.特征

如何把排序场景描述的非常准确,把固定问题泛化,在向量的维度表达出来,即特征提取。

Query维度:意图类别(喜欢那个类型的数据),时效性偏好
document维度:质量特征(码流、码率、用户评论、视频帧、视频标签、类别、来源等);相关性特征:命中特征,bm25等
后验特征:包括用户真实点击率,观看时长,满意程度、点击位置(马太效应影响)、各种维度交叉特征
在这里插入图片描述

4.模型

在这里插入图片描述dnn排序框架。

底层是query和document的一些描述文本做多粒度切词,之后做embedding然后做加权平均,得到document和query的向量表达,拼接这两组向量,同时再做点积,(两个向量越来越相近,拼接的时候希望上层网络学到两个向量的相似性,需要有足够的样本和正负样例,所以我们自己做了点积),同时用稠密特征,即在gbdt中用到的特征抽取出来,与embedding特征做拼接,最后经过三个全连接层,接sigmoid函数,就可以得到样本的score,并在此基础上用ndcg的衡量标准去计算损失,从而反向优化网络结构。

参考

https://mp.weixin.qq.com/s?__biz=MzU1NTMyOTI4Mw==&mid=2247487111&idx=1&sn=0466151a7745795694ee6b66838ef263&chksm=fbd4bcebcca335fd6038ab853b9a73ce1147c953594df2aea6fd1c1db013191086f4c656f5d2&scene=27#wechat_redirect

这篇关于搜索推荐技术-爱奇艺搜索引擎技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/467900

相关文章

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑

在 Windows 上安装 DeepSeek 的完整指南(最新推荐)

《在Windows上安装DeepSeek的完整指南(最新推荐)》在Windows上安装DeepSeek的完整指南,包括下载和安装Ollama、下载DeepSeekRXNUMX模型、运行Deep... 目录在www.chinasem.cn Windows 上安装 DeepSeek 的完整指南步骤 1:下载并安装

深入理解Apache Airflow 调度器(最新推荐)

《深入理解ApacheAirflow调度器(最新推荐)》ApacheAirflow调度器是数据管道管理系统的关键组件,负责编排dag中任务的执行,通过理解调度器的角色和工作方式,正确配置调度器,并... 目录什么是Airflow 调度器?Airflow 调度器工作机制配置Airflow调度器调优及优化建议最

Spring Boot统一异常拦截实践指南(最新推荐)

《SpringBoot统一异常拦截实践指南(最新推荐)》本文介绍了SpringBoot中统一异常处理的重要性及实现方案,包括使用`@ControllerAdvice`和`@ExceptionHand... 目录Spring Boot统一异常拦截实践指南一、为什么需要统一异常处理二、核心实现方案1. 基础组件

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

Spring Boot 中整合 MyBatis-Plus详细步骤(最新推荐)

《SpringBoot中整合MyBatis-Plus详细步骤(最新推荐)》本文详细介绍了如何在SpringBoot项目中整合MyBatis-Plus,包括整合步骤、基本CRUD操作、分页查询、批... 目录一、整合步骤1. 创建 Spring Boot 项目2. 配置项目依赖3. 配置数据源4. 创建实体类

Java子线程无法获取Attributes的解决方法(最新推荐)

《Java子线程无法获取Attributes的解决方法(最新推荐)》在Java多线程编程中,子线程无法直接获取主线程设置的Attributes是一个常见问题,本文探讨了这一问题的原因,并提供了两种解决... 目录一、问题原因二、解决方案1. 直接传递数据2. 使用ThreadLocal(适用于线程独立数据)

C# ComboBox下拉框实现搜索方式

《C#ComboBox下拉框实现搜索方式》文章介绍了如何在加载窗口时实现一个功能,并在ComboBox下拉框中添加键盘事件以实现搜索功能,由于数据不方便公开,作者表示理解并希望得到大家的指教... 目录C# ComboBox下拉框实现搜索步骤一步骤二步骤三总结C# ComboBox下拉框实现搜索步骤一这