首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《搜索和推荐中的深度匹配》——2.2 搜索和推荐中的匹配模型

接下来,我们概述搜索和推荐中的匹配模型,并介绍潜在空间中的匹配方法。 2.2.1 搜索中的匹配模型 当应用于搜索时,匹配学习可以描述如下。...,N)分别表示查询,文档和查询文档匹配度(相关性)。...带有人类标签的数据或点击数据可以用作训练数据。 匹配学习以进行搜索的目的是自动学习一个表示为得分函数 f(q,d)(或条件概率分布 P(r∣q,d))的匹配模型。...学习的模型必须具有泛化能力,可以对看不见的测试数据进行匹配。 2.2.2 推荐中的匹配模型 当应用于推荐时,匹配学习可以描述如下。给出了一组M个用户U=u1​,......2.2.3 潜在空间中匹配 如第1节所述,在搜索和推荐中进行匹配的基本挑战是来自两个不同空间(查询和文档以及用户和项目)的对象之间的不匹配。

1.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    《搜索和推荐中的深度匹配》——1.2 搜索和推荐中匹配统一性

    图1.1说明了搜索和推荐的统一匹配视图。共同的目标是向用户提供他们需要的信息。 ? 图1.1:搜索和推荐中匹配的统一视图 搜索是一项检索任务,旨在检索与查询相关的文档。...更正式地说,搜索和推荐中的匹配都可以视为构建匹配模型f:X×Y →R,该模型计算两个输入对象x和y之间的匹配程度,其中X和Y表示两个对象空间。...X和Y是搜索中查询和文档的空间,或推荐中用户和项目的空间。 在图1.1的统一匹配视图下,我们使用信息对象一词来表示要检索/推荐的文档/项目,并使用信息来表示相应任务中的查询/用户。...在某些生活方式应用中,当用户搜索餐厅时,将根据相关性(查询-餐厅匹配)和用户兴趣(用户-餐厅匹配)返回结果。...因此,为了开发更先进的技术,有必要并且有利的是采用统一的匹配视图来分析和比较现有的搜索和推荐技术。 搜索和推荐中的匹配任务在实践中面临着不同的挑战。

    1.3K20

    《搜索和推荐中的深度匹配》——经典匹配模型 2.1 匹配学习

    经典匹配模型 已经提出了使用传统的机器学习技术进行搜索中的查询文档匹配和推荐中的用户项目匹配的方法。这些方法可以在一个更通用的框架内形式化,我们称之为“学习匹配”。...Listwise Loss Function 在搜索和推荐中,源对象(例如,查询或用户)通常与多个目标对象(例如,多个文档或项目)相关。用于搜索和推荐的评估措施通常将目标对象列表作为一个整体来处理。...排序学习【7】【8】是学习一个表示为 g(x,y)的函数,其中x和y分别是查询中的查询和文档以及推荐中的用户和项目。...例如,在搜索中,排序函数 g(x,y)可能包含有关x和y之间关系的特征,以及x上的特征和y上的特征。相反,匹配函数 f(x,y)仅包含有关x和y之间关系的特征。...当排名函数 g(x,y)仅包含匹配函数 f(x,y)时,只需要学习即可进行匹配。 在搜索中,x上的特征可以是查询x的语义类别,y上的特征可以是PageRank分数和文档y的URL长度。

    3.7K20

    mysql 多表关联查询 实现 全文匹配的 模糊搜索接口 SQLmysql 多表关联查询 实现 全文匹配的 模糊搜索接口 SQL

    mysql 多表关联查询 实现 全文匹配的 模糊搜索接口 SQL SELECT tagDeptUserRel.* FROM tag_dept_user_rel tagDeptUserRel inner...的使用方法 在mysql中,有时我们在做数据库查询时,需要得到某字段中包含某个值的记录,但是它也不是用like能解决的,使用like可能查到我们不想要的记录,它比like更精准,这时候mysql的FIND_IN_SET...返回值 下面查询btype字段中包含”15″这个参数的值 SELECT * from test where FIND_IN_SET('15',btype) 返回值 下面查询btype字段中包含”5″这个参数的值...接下面查询btype字段中包含”20″这个参数的值 SELECT * from test where FIND_IN_SET('20',btype) 当然它的返回值为null,因为字段中没有这个值...FIND_IN_SET和like的区别 like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果

    2.4K20

    《搜索和推荐中的深度匹配》——1.1搜索和推荐

    如今,两种类型的信息访问范例,即搜索和推荐,已广泛用于各种场景中。 在搜索中,首先会对文档(例如Web文档,Twitter帖子或电子商务产品)进行预处理并在搜索引擎中建立索引。...此后,搜索引擎从用户那里进行查询(多个关键字)。该查询描述了用户的信息需求。从索引中检索相关文档,将其与查询匹配,并根据它们与查询的相关性对其进行排名。...例如,如果用户对有关量子计算的新闻感兴趣,则查询“量子计算”将被提交给搜索引擎,并获得有关该主题的新闻报道。 与搜索不同,推荐系统通常不接受查询。...搜索的基本机制是“拉”,因为用户首先发出特定的请求(即提交查询),然后接收信息。推荐的基本机制是“推送”,因为向用户提供了他们没有明确要求的信息(例如,提交查询)。...这里的“受益人”是指在任务中要满足其利益的人。在搜索引擎中,通常仅根据用户需求创建结果,因此受益者是用户。在推荐引擎中,结果通常需要使用户和提供者都满意,因此受益者都是他们。

    97510

    《搜索和推荐中的深度匹配》——2.3 搜索中的潜在空间模型

    接下来,我们以潜在空间为基础介绍匹配模型。【1】中找到了搜索中语义匹配的完整介绍。...具体来说,我们简要介绍了在潜在空间中执行匹配的代表性搜索方法,包括偏最小二乘(PLS)【2】,潜在空间中的规则化匹配(RMLS)【3】,以及监督语义索引(SSI)【4】【5】。...让我们考虑使用方程 (2.4) 中的匹配函数 f (q, d)。...这意味着 RMLS 中的学习可以轻松并行化和扩展。 方程(2.5)中的匹配函数可以改写为双线性函数: 其中 W=LqT​Ld​。...2.3.3 监督语义索引 在 PLS 和 RMLS 中可以做一个特殊的假设;即query空间和文档空间具有相同的维度。例如,当query和文档都表示为词袋时,它们在查询和文档空间中具有相同的维度。

    85130

    msyql查询数据库中不存在的记录

    背景 有时候,需要往数据库里插入数据,这些数据,有些已经在MySQL中。但这种导入的工作,只是临时性的,又想专门写一个脚本去判断是否存在数据库,不存在就插入。...这里提供一个骚操作,可以直接用MySQL查看哪些不在数据库的,然后再插入。...你可以使用以下查询语句来判断 "zhangsan" 和 "lisi" 是否在数据库中.如果 "zhangsan" 和 "lisi" 存在于数据库中,那么可以查询将返回它们的名字。...'lisi'); +----------+ | name | +----------+ | zhangsan | +----------+ 1 row in set (0.00 sec) 查找不存在的数据...如果你想知道哪个名字不在数据库中,可以稍作修改,使用 NOT IN 来找出不在数据库中的名字 SELECT 'zhangsan' AS name WHERE 'zhangsan' NOT IN (SELECT

    27930

    Django框架开发015期 数据的查询,根据搜索条件查询用户

    本节课程继续讲解增删改查中的查询功能,通过这个功能的介绍,我们可以开发一个简单的数据搜索,该功能类似百度查询,当然仅仅只是最基础的数据库关键词查询功能。...开发用户查询页面,我们从实际用户查询行为的角度出发,我们需要做如下开发: 1)修改用户列表页面,增加一个查询功能; 2)增加一个搜索页面,显示搜索得到的结果; 3)开发路由,用于显示搜索信息的结果页;...表示字段truename上进行匹配,与之相连的__contains表示包含的意思,这样总体就会返回查询结果就是包含输入关键词的真实姓名的所有记录 return render(request,'ljyblog.../ljySearch.html',{'userlist':users})#将查询结果传递给查询结果页面,类似之前的用户信息列表 我们在代码中已经对查询整个过程的语句已经做了详细的解释。...主要在这个查询中,我们使用到了filter函数的功能,用来过滤指定字段的数据,结果返回一个列表。如果查询不到,结果就返回一个长度为0的空列表。

    36920

    《搜索和推荐中的深度匹配》——2.5 延伸阅读

    Query重构是解决搜索中查询文档不匹配的另一种方法,即将Query转换为另一个可以进行更好匹配的Query。Query转换包括Query的拼写错误更正。...受统计机器翻译 (SMT) 的启发,研究人员还考虑利用翻译技术来处理Query文档不匹配问题,假设Query使用一种语言而文档使用另一种语言。【6】利用基于单词的翻译模型来执行任务。...【7】 提出使用基于短语的翻译模型来捕获查询中单词和文档标题之间的依赖关系。主题模型也可用于解决不匹配问题。一种简单而有效的方法是使用term匹配分数和主题匹配分数的线性组合【8】。...【11】对搜索中语义匹配的传统机器学习方法进行了全面调查。 在推荐方面,除了引入的经典潜在因子模型外,还开发了其他类型的方法。...例如,可以使用预先定义的启发式在原始交互空间上进行匹配,例如基于项目的 CF【12】和统一的基于用户和基于项目的 CF【13】。

    36720

    深度学习在视觉搜索和匹配中的应用

    视觉搜索以及所需的训练数据 深度学习或其他机器学习技术可用于开发识别图像中物体的鲁棒方法。对于来自飞机的航拍图像或高分辨率卫星照片,这将使不同物体类型的匹配、计数或分割成为可能。...因此,在与哥本哈根市的合作中,我们朝着一种工具迈进了一步,该工具可以用于匹配所需的物体类型,而不需要预先创建训练数据。该工具基于之前的一个项目背后的技术。...这可以找到不同大小的物体。 我们开发了一种“refining”搜索的交互式方法,使得匹配不只是基于单个片段,而是基于多个片段。...我们可以选择再运行一次迭代搜索,通过选择更多的我们满意的片段,并再次运行排序: ? ? 船只仍在前100名之列,这是一个好迹象。请注意,我们之前标记为满意的片段不再出现在交互式细分中。...然而,在我们的例子中,我们选择测试一种更简单的启发式来匹配船:我们在排序中从M之前选择了100个随机的片段(正样本),在N之后选择了100个随机的片段(负样本)。

    1.4K10

    《搜索和推荐中的深度匹配》——2.4 推荐中的潜在空间模型

    接下来,我们简要介绍在潜在空间中执行匹配的代表性推荐方法,包括偏置矩阵分解 (BMF)【1】、Factored Item Similarity Model (FISM) 【2】和分解机 (FM)【3】。...匹配模型可以表述为: image.png image.png image.png 参阅《深入理解Spark ML:基于ALS矩阵分解的协同过滤算法与源码分析》...FISM 的模型公式为: image.png 这迫使正(观察到的)实例的分数大于负(未观察到的)实例的分数,边距为 1。...两种损失之间的主要区别在于,BPR 将正例和负例之间的差异强制尽可能大,而没有明确定义余量。...FM 的输入是一个特征向量 x = [x1, x2, … . . , xn] 可以包含用于表示匹配函数的任何特征,如上所述。因此,FM 将匹配问题视为监督学习问题。

    51830

    正则表达式:.Net Framework平衡组递归匹配搜索源码中的函数方法({}匹配)

    再比如,java代码中一个函数/方法都是由嵌套的{}构成的,如何准确的从源码文件中找出一个方法也需要对{}递归匹配或叫嵌套匹配。...对Perl等还不了解,本文关注的是.Net Framework正则表达引擎来实现符号的递归匹配。 在.Net Framework中这个特性是由《平衡组定义》来实现的。...匹配“3+2^((1-3)*(3-1))”中的“((1-3)*(3-1))” 如果要匹配java代码中的一个方法。。。上面的表达式要稍微修改下。...[\n\r\t ]*>部分用于匹配匹配最外层号以及内部的所有嵌套,这样,不仅可以适应这样的单层号,还可以用于>这种复杂类型的泛型方法定义 注意: 关于在源码中嵌套匹配...{},这个表达其实是有隐含缺陷的:如果""字符串中包含了不匹配的{},这个表达式是无法匹配的。

    1.4K20

    美团搜索中查询改写技术的探索与实践

    美团搜索中查询改写技术的探索与实践 2022年02月17日 作者: 杨俭 宗宇 谢睿 武威 文章链接 21879字 44分钟阅读 1....引言 在搜索场景中,由于用户搜索词Query和检索文本Document之间存在大量表述不一的情况,在文本检索框架下,此类文本不匹配导致的漏召回问题严重影响着用户的体验。...查询改写策略在美团搜索的全部流量上生效,除扩展用户搜索词外,在整个美团搜索技术架构中作为基础语义理解信号,从索引扩展、排序特征、前端高亮等多方面影响着用户体验。...例如在Session1中用户先搜索Query1后改为Query2再查询,在Session2中用户先搜索Query2后改为Query3再查询,共现的方法无法直接建立Query1和Query3的关联关系,而随机游走能够很好地解决...此外从Document角度看,商品召回字段较单一,不存在商户搜索时一个商户对应多种服务的问题,场景简化后算法空间是比较大的。

    1.1K31

    美团搜索中查询改写技术的探索与实践

    本文主要讲述在美团的搜索场景下查询改写项目的迭代方向和实现思路,希望能对从事搜索、广告、推荐中召回相关工作的同学有所启发或者帮助。 1. 引言 2....引言 在搜索场景中,由于用户搜索词Query和检索文本Document之间存在大量表述不一的情况,在文本检索框架下,此类文本不匹配导致的漏召回问题严重影响着用户的体验。...对搜索召回结果中的无结果率、召回结果数以及搜索点击率等指标,也有着直接且显著的影响。 图1 查询改写信号在美团搜索上的使用本文会介绍美团搜索场景下查询改写这一任务上的迭代经验,内容主要分为三个部分。...例如在Session1中用户先搜索Query1后改为Query2再查询,在Session2中用户先搜索Query2后改为Query3再查询,共现的方法无法直接建立Query1和Query3的关联关系,而随机游走能够很好地解决...此外从Document角度看,商品召回字段较单一,不存在商户搜索时一个商户对应多种服务的问题,场景简化后算法空间是比较大的。

    1.8K21

    如何使用EvilTree在文件中搜索正则或关键字匹配的内容

    关于EvilTree  EvilTree是一款功能强大的文件内容搜索工具,该工具基于经典的“tree”命令实现其功能,本质上来说它就是“tree”命令的一个独立Python 3重制版。...但EvilTree还增加了在文件中搜索用户提供的关键字或正则表达式的额外功能,而且还支持突出高亮显示包含匹配项的关键字/内容。  ...工具特性  1、当在嵌套目录结构的文件中搜索敏感信息时,能够可视化哪些文件包含用户提供的关键字/正则表达式模式以及这些文件在文件夹层次结构中的位置,这是EvilTree的一个非常显著的优势; 2、“tree...,在/var/www中寻找匹配“password = something”的字符串: 样例二-使用逗号分隔的关键字搜索敏感信息: 样例三-使用“-i”参数只显示匹配的关键字/正则式内容(减少输出内容长度...):  有用的关键字/正则表达式模式  搜索密码可用的正则表达式 -x ".{0,3}passw.{0,3}[=]{1}.{0,18}" 搜索敏感信息可用的关键字 -k passw,db_

    4K10

    Django之model查select的用法

    ,正常values_list给出的结果是个列表,里边里边的每条数据对应一个元组,当只查询一列时,可以使用flat标签去掉元组,将每条数据的结果以字符串的形式存储在列表中,从而避免解析元组的麻烦 User.objects.values_list...,year,相同用法的还有匹配月month,匹配日day,匹配周week_day,匹配时hour,匹配分minute,匹配秒second User.objects.filter(create_time_...Q来做搜索逻辑,比如前台搜索框输入一个字符,后台去数据库中检索标题或内容中是否包含 _s = request.GET.get('search') _t = Blog.objects.all() if...方法,如果查询的对象不存在的话,则抛出一个Http404的异常 实现方法类似于下边这样: from django.http import Http404 try: _t = User.objects.get...中能用ORM的就用它ORM吧,不建议执行原生SQL,可能会有一些安全问题,如果实在是SQL太复杂ORM实现不了,那就看看下边执行原生SQL的方法,跟直接使用pymysql基本一致了 from django.db

    75940

    Django model select的各种用法详解

    《Django model update的各种用法介绍》文章介绍了Django model的各种update操作,这篇文章就是她的姊妹篇,详细介绍Django model select的用法,配以对应...,正常values_list给出的结果是个列表,里边里边的每条数据对应一个元组,当只查询一列时,可以使用flat标签去掉元组,将每条数据的结果以字符串的形式存储在列表中,从而避免解析元组的麻烦 User.objects.values_list...Q来做搜索逻辑,比如前台搜索框输入一个字符,后台去数据库中检索标题或内容中是否包含 _s = request.GET.get('search') _t = Blog.objects.all() if...方法,如果查询的对象不存在的话,则抛出一个Http404的异常 实现方法类似于下边这样: from django.http import Http404 try: _t = User.objects.get...中能用ORM的就用它ORM吧,不建议执行原生SQL,可能会有一些安全问题,如果实在是SQL太复杂ORM实现不了,那就看看下边执行原生SQL的方法,跟直接使用pymysql基本一致了 from django.db

    1.1K30

    OracleMysql中 instr() 函数的用法|OracleMysql中 instr()跟like有相同的功能进行模糊匹配查询, instr()更高级

    前言 今天发现了一个更高级的函数instr(),所以今天就介绍介绍这个函数。这个函数俗称字符查找函数,但是也可以用来做模糊查询。...格式二: instr( C1,C2,I,J ) -----》说明: instr(源字符串, 目标字符串, 起始位置, 匹配序号) C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为...1 J 出现的位置,默认为1 描述为:在C1中搜索C2,从第 I 个位置开始搜索(包括这个I),直到出现第J次C2,返回这个序号,(I 也可以为负数,表示从倒数第一个位置开始数,但是返回的序号还是从正的数的那个序号...) 注:在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。...' 表示字段不包含“关键字”的所有 /*这两条查询的效果是一样的*/ select * from tableName where name like '%hello%'; select * from

    5.3K41
    领券