CN116762071A - 基于用户简档来执行针对性搜索 - Google Patents
基于用户简档来执行针对性搜索 Download PDFInfo
- Publication number
- CN116762071A CN116762071A CN202280012416.8A CN202280012416A CN116762071A CN 116762071 A CN116762071 A CN 116762071A CN 202280012416 A CN202280012416 A CN 202280012416A CN 116762071 A CN116762071 A CN 116762071A
- Authority
- CN
- China
- Prior art keywords
- user
- document
- embeddings
- embedding
- ranking
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 123
- 238000010801 machine learning Methods 0.000 claims description 38
- 230000015654 memory Effects 0.000 claims description 24
- 230000009471 action Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 21
- 238000002156 mixing Methods 0.000 description 13
- 238000001914 filtration Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000001537 neural effect Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000009193 crawling Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
Abstract
本公开的各方面涉及用于基于用户简档来执行针对性搜索的***和方法。在示例中,可以基于用户指示的接收来取回包括用户嵌入的用户简档。可以基于一个或多个用户兴趣来创建用户嵌入。可以基于用户嵌入来标识多个文档嵌入,其中多个文档嵌入中的每个文档嵌入被确定为在用户嵌入的第一距离内。在示例中,可以生成针对多个文档嵌入中的每个文档嵌入的排名,其中多个文档嵌入中的每个文档嵌入的排名基于用户嵌入。可以基于与文档嵌入相关联的排名来推荐至少一个文档。
Description
背景技术
信息搜索和取回***以基于用户提供的关键字在储存库中索引的内容为目标。尽管与用户所提供的关键字相关,但是索引内容可能不以用户为目标或以其他方式特定于用户。也就是说,当从用户提供的关键字标识被索引内容时,此类***基于内容与用户提供的关键字的匹配程度,而不是取回为请求此类内容的用户定制的被索引内容。此外,特定于用户的最及时和/或相关的信息可能未被此类***编索引,因为此类及时和/或相关信息可能会在未编索引的尾部内容中被找到。尾部内容是指非普遍流行的网页内容;此类内容常常不被包括在诸如新闻站点之类的综合内容源中,而新闻站点通常是信息搜索和取回***的重点。将信息的取回限制在一组固定发布者的搜索方法无法基于用户兴趣向用户呈现最佳针对性内容。
已经针对这些和其他一般考虑描述了实施例。此外,尽管已经讨论了相对具体的问题,但是应当理解,实施例不应被局限于解决在背景技术中确定的具体问题。
发明内容
本公开的各方面涉及基于用户简档来执行针对性搜索。在示例中,从用户简档导出的用户嵌入被用来基于针对每个相应文档的文档嵌入来标识文档集合。例如,近似最近邻搜索标识与用户嵌入相似或接近的文档嵌入,其中用户嵌入和文档嵌入可以共享相同语义空间。因此,可以将大型文档嵌入语料库的大小缩减到接近用户嵌入的仅仅那些文档嵌入。因此,可以对大型文档嵌入语料库的子集执行后续处理,从而节省计算周期、存储器等等。变换器模型分析文档嵌入集合并生成针对文档集合中的每个文档的高质量排名。因此,针对性搜索可以标识在语义上与用户简档相似的文档。
在示例中,基于从感兴趣的文档、点击流和其他度量导出的用户兴趣来组装用户简档。因此,针对性内容搜索标识及时且与用户相关的利基内容。此类利基内容位于新闻站点、主流站点以及其他形式的网络内容中,诸如但不限于尾部内容。根据本公开,针对性搜索***定位这样的利基内容,摄取每个内容项,并生成针对每个内容项的文档嵌入。如前所述,针对性搜索***基于搜集到的关于用户的信息(诸如用户简档)来生成包括用户嵌入的用户模型。每个文档嵌入和用户嵌入可以共享相同或相似的语义空间,其中语义空间是能够捕获意义的数据表示。基于多个文档嵌入和用户嵌入,针对性搜索***标识在语义上接近用户嵌入的文档嵌入。然后使用神经网络模型对文档嵌入池进行排名。基于各种因素来对文档嵌入池进行排名,包括但不限于相关性、新颖性、偶然性、多样性和可解释性。基于排名,一个或多个文档被定位为针对性搜索的一部分。在示例中,一个或多个文档在用户订阅源中被呈现给用户。此外,基于用户与所呈现的文档的交互和非交互而收集的各种度量被用来进一步调整或以其他方式改变文档的后续排名,使得呈现给用户的文档是特定于用户的。
根据本公开的至少一方面,描述了基于用户兴趣来执行针对性搜索的***和方法。在示例中,该方法在与网络进行数据通信的针对性搜索***处被执行。该方法包括接收针对用户的用户标识符并基于用户标识符来取回用户嵌入,其中用户嵌入是根据一个或多个用户兴趣创建的。该方法还可以包括针对性搜索的第一步,即通过基于用户嵌入从多个文档嵌入中标识文档嵌入集合来将初始文档池作为目标,其中文档嵌入集合中的每个文档嵌入被确定为在用户嵌入的第一距离内。通过将文档语料库和/或文档嵌入缩减到仅仅接近用户嵌入的那些,可以实现计算周期的节省。然后可以通过生成针对文档嵌入集合中的每个文档嵌入的排名来对池中的每个文档进行排名,其中针对文档嵌入集合中的每个文档嵌入的排名基于用户嵌入。在示例中,变换器模型被利用来生成针对每个文档嵌入的排名。因此,可以通过基于针对文档嵌入集合中的每个文档嵌入的排名来推荐至少一个文档从而向用户推荐基于用户兴趣的针对性内容。
根据本公开的至少一方面,描述了基于用户兴趣来执行针对性搜索的***和方法。在示例中,一种方法在与网络进行数据通信的针对性搜索***处被执行。该方法包括从多个文档中的每个文档中提取信息,并基于所提取的信息来生成文档嵌入。此外,可以标识最接近用户嵌入的文档。例如,该方法可以包括接收用户的用户兴趣信息并基于接收到的用户兴趣信息来生成用户嵌入,其中用户嵌入和文档嵌入共享相同语义空间。因此,该方法可以从多个文档嵌入中标识文档嵌入集合,该文档嵌入集合中的每个文档嵌入在用户嵌入的第一距离内。通过将文档语料库和/或文档嵌入缩减到仅仅接近用户嵌入的那些,可以实现计算周期的节省。然后可以通过生成针对文档嵌入集合中的每个文档嵌入的排名来对池中的每个文档进行排名,其中针对每个文档嵌入的排名基于用户嵌入。因此,可以通过基于文档嵌入排名向用户推荐至少一个文档来向用户推荐基于用户兴趣的针对性内容。
根据本公开的至少一方面,描述了基于用户兴趣来执行针对性搜索的***和方法。在示例中,一种方法在与网络进行数据通信的针对性搜索***处被执行。该方法包括接收针对用户的用户标识符;基于用户标识符来取回用户简档,该用户简档包括根据一个或多个用户兴趣而创建的用户嵌入;基于用户嵌入来标识多个文档嵌入,该多个文档嵌入中的每个文档嵌入被确定为在用户嵌入的第一距离内;生成针对多个文档嵌入中的每个文档嵌入的排名,其中对多个文档嵌入中的每个文档嵌入的排名基于用户嵌入;并且基于多个文档嵌入中每个文档嵌入的排名,向用户推荐至少一个文档。在一些示例中,用户嵌入和文档嵌入可以具有相同或相似的语义空间;相应地,针对性搜索***可以将文档语料库缩减为文档的子集从而节省计算周期,然后使用变换器网络模型进一步对文档的子集进行排名。因此,可以向用户提供基于用户简档的针对性内容。
提供本发明内容是为了以简化的形式介绍将在下面的详细描述中进一步描述的一系列概念。该发明内容不旨在标识要求保护的主题的关键特征或基本特征,也不旨在被用来限制要求保护的主题的范围。
附图说明
参考以下附图描述了非限制性和非穷举性示例。
图1描绘了根据本公开的示例的针对性搜索和显示***的细节。
图2描绘了涉及根据本公开的示例的用户嵌入和文档嵌入的细节。
图3描绘了根据本公开的示例的内容标识和排名模块的细节。
图4描绘了根据本公开的示例的协作文档过滤模块的示例。
图5描绘了根据本公开的示例的用于生成文档嵌入的方法的细节。
图6描绘了根据本公开的示例的用于生成用户嵌入的方法的细节。
图7描绘了根据本公开的示例的用于向用户推荐内容的方法的细节。
图8描绘了根据本公开的示例的用于标识推荐内容的方法的细节。
图9描绘了图示出可以用其来实践本公开的各方面的计算***的物理组件的框图。
图10A至图10B描绘了根据本公开的示例的一个或多个计算***的细节。
图11描绘了根据本公开的示例的用于处理在计算***处接收的数据的***的架构。
具体实施方式
在下面的详细描述中,对构成其一部分的附图进行参考,并且在其中以说明特定实施例或示例的方式示出。在不脱离本公开的情况下,可以对这些方面进行组合,可以利用其他方面,并且可以进行结构改变。实施例可以作为方法、***或设备而被实践。因此,实施例可以采用硬件实现、完全软件实现或组合软件和硬件方面的实现的形式。因此,以下详细描述不应理解为限制意义,并且本公开的范围由所附权利要求及其等同物来限定。
针对性搜索和显示***标识并向用户推荐该用户精确且狭窄感兴趣的内容,诸如文档、网页等。例如,用户可能对在世界范围内进行长距离越野跑感兴趣。有关这些路线的最佳及时信息通常在博客或其他跑步者报告中,而不是在如新闻网站的综合资源中。将取回限制为一组固定的发布者的方法无法为这种兴趣提供最佳页面。虽然内容已经被发现、抓取并作为用户搜索的一部分提供给用户,但是搜索结果不会返回精确符合用户兴趣的内容。相反,从感兴趣的文档、点击流和其他度量中导出的用户兴趣提供了标识匹配用户兴趣的利基但高质量站点的能力。更特别地,根据本公开的示例的针对性搜索和显示***在诸如互联网之类的网络中定位内容,摄取每个内容项,并且为每个内容项生成文档嵌入,其中文档嵌入是从与每个内容项相关联的信息中导出的转换后的较高维向量的相对低维空间表示。此外,针对性搜索和显示***基于搜集到的关于用户的信息来生成包括用户嵌入的用户模型。与文档嵌入类似,用户嵌入是从与用户相关联的信息中导出的转换后的较高维向量的相对低维空间表示。每个文档嵌入和用户嵌入可以共享相同或相似的语义空间,其中语义空间是能够捕获意义的数据表示。作为示例,语义空间可以是自然语言的表示、元数据的表示或为内容项和/或用户提供意义的其他信息的表示。备选地或附加地,文档嵌入和用户嵌入中的每一个可以共享相同的主题或域。例如,可以利用用户嵌入和文档嵌入共同的主题或域来生成文档嵌入和用户嵌入。
基于文档嵌入和用户嵌入,针对性搜索和显示***标识在语义上接近用户嵌入的文档嵌入。例如,最近邻搜索可以标识具有在语义上与用户嵌入接近或者在语义上与用户嵌入相似的文档嵌入的内容项池。备选地或附加地,最近邻搜索可以标识内容项池,其中基于主题或域的每个文档嵌入和用户嵌入是接近的。文档嵌入池被提供给排名模块,该排名模块基于多个因素对文档嵌入进行排名。在非限制性示例中,基于相关性、新颖性、偶然性、多样性和可解释性来对文档嵌入进行排名。例如,内容项应该与用户相关。内容项最好先前应该没有被用户看到。内容项应该是用户意想不到的,以增加用户继续利用这种针对性搜索和显示***的可能性。内容项在本质上应该是多样性的,以增加吸引用户的可能性。并且,内容项应该是可解释的,因为内容项被提供给用户的原因应该存在。然后将经排名的文档的池提供给用户或请求者以被呈现并显示给用户。在一些示例中,经排名的文档的池服从进一步的选择标准以在被提供给用户或请求者之前标识与用户相关的一个或多个内容项。作为示例,用户模型的内容推荐用户简档可以提供用于标识可能与用户相关的内容的附加手段。
基于与提供给用户和/或显示给用户的内容项的用户交互和非交互来收集各种度量。所收集的度量被用来进一步调整或以其他方式更改由针对性搜索和显示***呈现给用户的内容项。例如,指示内容与用户不相关的度量可以被用来改变与文档嵌入或用户嵌入的生成相关联的一个或多个参数。作为另一示例,排名和/或选择机制中的一个或多个可以基于所收集的度量而改变。在一些示例中,用户嵌入基于所收集的度量;例如,当生成用户嵌入时,用户不喜欢特定文档或文档类型的指示可能是信息性的。在一些示例中,度量是作为针对性搜索和显示***的一部分而被收集的;备选地或附加地,度量经由第三方应用而被收集,并作为用户信息被提供给针对性搜索和显示***。
图1描绘了根据本公开的示例的针对性搜索和显示***100的细节。针对性搜索和显示***100包括针对性搜索***106,其提供推荐内容以在用户界面110的一个或多个显示部分108中显示;用户界面110由在用户的计算设备104处执行的应用112生成、呈现或以其他方式被提供。计算设备104的示例包括但不限于个人计算机和/或膝上型计算机、蜂窝电话、智能电话和平板电脑。在示例中,用户启动应用112以使用户界面110被显示或以其他方式被提供给用户。应用112的示例包括但不限于网络浏览器、生产力应用或游戏应用。用户界面110可以包括显示部分108A,其显示针对性搜索***106所推荐的内容,而显示部分108B可以显示其他内容。显示部分108B中显示的其他内容可以对应于与网页或网站相关联的信息,诸如但不限于来自文字处理应用、电子表格、数据库等等的内容之类的生产力内容,和/或与游戏平台相关联的内容。在非限制性示例中,作为信息馈送、微件或门户的一部分,显示部分108A可以包括所推荐的内容。
如先前所讨论的,用户信息被搜集并被用来生成用户嵌入。用户信息是从与其他应用、内容和/或设备的用户交互中搜集的。作为示例,用户可以在应用114的用户界面116中查看内容。向用户显示的内容的位置(例如,统一资源***(URL))以及其他内容相关信息被用于生成用户嵌入。作为示例,可以搜集与用户与应用114的交互相关联的遥测数据。遥测数据可以包括用户先前示出和/或点击的信息;在一些示例中,这种信息对应于针对性搜索***106所推荐的内容。作为另一示例,诸如网络浏览器之类的应用118可以显示包括来自用户提供的关键词的搜索结果的用户界面120。搜索结果可以被显示在显示部分124C中。在一些示例中,显示部分124A和/或124B包括从针对性搜索***106推荐的内容。关于在用户界面120处呈现的内容的信息、以及用户点击了什么、用户观看了什么内容多长时间、用户何时查看该内容、以及可以指示用户的一个或多个兴趣的任何附加信息都可以被收集。所收集的信息然后经由网络128被提供给针对性搜索***106。
网络128可以是分组交换和/或电路交换的。说明性通信网络128包括但不限于广域网(WAN),例如互联网、局域网(LAN)、个域网(PAN)、公共交换电话网(PSTN)、普通网络旧式电话服务(POTS)网络、蜂窝通信网络、IP多媒体子***(IMS)网络、IP语音(VoIP)网络、SIP网络和/或其组合。互联网是构成互联网协议(IP)网络的网络128的示例,该网络包括位于世界各地的许多计算机、计算网络、服务器和其他通信设备,它们通过许多电话***和其他装置而连接。在一种配置中,网络128是支持TCP/IP协议组的公共网络。网络128支持的通信包括实时、近实时和非实时通信。例如,网络128可以支持语音、视频、文本、网络会议或媒体的任何组合。此外,网络128可以包括多种不同的通信介质,诸如同轴电缆、铜缆/电线、光纤电缆、用于传输/接收无线信息的天线以及它们的组合。此外,应当了解,网络128不需要限于任何一种网络类型,而是包括数个不同的网络和/或网络类型。应当了解,网络128可以是分布式的。尽管本公开的示例将网络128称为一个网络128,但是应当了解,在本文中要求保护的实施例不限于此。例如,多个网络128可以由许多服务器和网络来加入。
如先前所提及的,可以收集和/或搜集用户信息138以对用户兴趣进行建模以标识用户最有可能感兴趣的内容。用户信息138可以包括但不限于用户id 138A、明确的用户兴趣138B、浏览器搜索历史138C、搜索引擎点击138D、搜索引擎查询138E、用户利用的应用所消费的其他内容138F和/或可以被用来对用户行为和用户兴趣进行建模的其他用户度量信息138G(例如,停留时间、遥测数据等)。用户id 138A可以来自用户102的计算设备104。创建针对性搜索***用户简档126,其包括从先前的用户交互和用户事实、感兴趣的主题和感兴趣的关键短语中获悉的用户嵌入。用户嵌入模块140生成用户嵌入并且存储或以其他方式将用户嵌入与针对性搜索***用户简档126相关联;针对性搜索***用户简档126可以被存储在用户储存库142中。在一些示例中,由用户嵌入模块140生成的用户嵌入可以驻留在用户储存库142中;相应地,基于用户id,诸如用户id 138A,可以取回用户的用户嵌入。
在示例中,针对性搜索***106摄取内容项并基于内容项来生成内容嵌入。内容项可以指的是由互联网内容抓取或互联网爬取***所发现和索引的文档、网页、图像、视频等。内容项的示例包括但不限于网页130A、新闻项130B、诸如用户本地的内容之类的本地项130C、视频130D、图像130E和其他信息项130F。在一些示例中,内容项在文档理解模块132处被接收。文档理解模块132生成针对每个内容项的一个或多个信号,也被称为文档,其被馈送到内容嵌入模块134,并且在一些实例中被馈送到内容标识和排名模块144。在示例中,文档理解模块132提取和/或生成文档理解信息,包括但不限于文档的标题、包含在文档内的或以其他方式被文档所引用的主要图像、文档的摘要概要、文档的发布日期、文档的主题、文档的关键短语和/或文档的类。当然,其他信息可以被生成和/或被提取并且在本文中被设想。在一些示例中,文档理解模块132生成和/或提取稍后可以由内容标识和排名模块144使用的信息。在示例中,此类信息包括但不限于文档主题、文档关键短语、文档及时性、文档质量、文档的来源权威、文档深度、文档的流行度、作为参考位置和/或作为与文档相关联的地理位置的文档的位置,诸如对位于特定地理位置处的企业的审查以及提供在该地理位置的半径内可用的服务等。在一些示例中,文档理解模块132采用机器学习模型来在语义上理解文档并将文档分类为一个或多个逻辑类别。此类逻辑类别可以包括但不限于文章、新闻、产品等。
由文档理解模块132生成和/或提取的信息在内容嵌入模块134处被接收。对于每个内容项(例如,文档),内容嵌入模块使用一个或多个经训练的机器学习模型来生成文档嵌入。文档嵌入可以是从与每个内容项相关联的信息中导出的转换后的较高维向量的相对低维空间表示。例如,所生成和/或提取的文档理解信息被提供给内容嵌入模块134并且内容嵌入模块生成内容项的文档嵌入。文档嵌入以及在一些实例中所生成和/或提取的文档理解信息被存储在内容索引136中。如先前所提及的,文档嵌入模块134和用户嵌入模块140使用相同或相似的语义空间139来创建嵌入。
内容标识和排名模块144接收包括用户嵌入的用户简档并标识在语义上与用户嵌入相似的多个文档。例如,最近邻搜索可以标识具有在语义上与用户嵌入接近或者在语义上与用户嵌入相似的文档嵌入的内容项池。在示例中,最近邻搜索是近似最近邻搜索(ANN)、K最近邻(KNN)搜索等等中的一个或多个。然后基于多个因素对文档嵌入池进行排名。在非限制性示例中,基于相关性、新颖性、偶然性、多样性和可解释性来对文档嵌入进行排名。如先前所提及的,内容项应该与用户相关;内容项最好先前应该没有被用户看到;内容项应该是用户意想不到的,以增加用户继续利用这种针对性搜索和显示***的可能性;内容项在本质上应该是多样性的,以增加吸引用户的可能性;并且,内容项应该是可解释的,因为内容项被提供给用户的原因应该存在。在示例中,利用一个或多个经训练的机器学习模型来对文档池进行排名,这些模型被训练为基于用户简档和用户嵌入来预测用户是否会在某个时间点使用内容项。当然,可以对不同类型的内容不同地执行排名;例如,可以利用与新闻项不同的机器学习模型对视频进行排名。
然后将经排名的文档的池提供给内容推荐模块146。内容推荐模块146标识要被提供给用户的一个或多个内容项。在示例中,经排名的文档的池被提供给协作文档过滤模块148,其中基于具有相似兴趣的用户来标识附加文档。作为示例,可以标识与当前用户具有相同或相似兴趣的用户相关的、新颖的、偶然的、多样化的和可解释的文档。这样的文档连同经排名的文档的池被提供给混合模块150。混合模块150管理在向用户提供相关的、新颖的、偶然的、多样化的和可解释的文档的目的中固有的权衡。在一些示例中,混合模块150搜集关于新出现的或最近文档的反馈,随着关于用户的更多信息变得可用而修改一个或多个个性化权重,并且处理反馈信号以确保在一个会话中或在最近的一些会话中推荐给用户的内容没有重复。此外,一个或多个特定于应用和/或特定于用户的参数可以覆盖内容推荐。例如,如果用户指示特定文档、网页或内容类型不应该被示出,则混合模块150确保这样的文档、网页或内容类型不被包括在推荐内容中。
内容推荐模块146的输出包括推荐内容154;推荐内容154可以包括对该内容的引用(例如,URL)。备选地或附加地,推荐内容154可以包括用于呈现给用户102的文档的概要/链接。因此,内容推荐模块146向客户端设备发送文档的概要/链接以用于呈现给用户。在一些示例中,针对性搜索***106可以向应用112提供推荐内容154,以使得显示部分108A在用户界面110内被呈现并被显示给用户。备选地或附加地,推荐内容154被提供给第三方合作伙伴152,以使得第三方合作伙伴使推荐内容被提供给应用112,由此应用112使显示部分108A被呈现在用户界面110内并被显示给用户。
图2描绘了涉及根据本公开的示例的用户嵌入和文档嵌入的附加细节。更特别地,文档嵌入218由一个或多个机器学习模型创建和/或生成。一个或多个机器学习模型可以包括但不限于变换器216、卷积神经网络、递归神经网络等。文档嵌入218可以是从与每个内容项相关联的信息中导出的转换后的较高维向量的相对低维空间表示。例如,文档嵌入基于站点信息204、URL信息208和内容信息212。站点信息204包括站点内容项206,其包括但不限于站点流行度信息、诸如站点关系和站点链接之类的站点亲和力信息、站点权威信息、站点年龄信息、站点排名信息和/或与站点相关的附加信息。URL信息208可以包括URL内容项210,其包括但不限于URL流行度信息、URL亲和力信息、URL锚点信息、URL链接信息、URL页面排名信息和/或与URL相关的附加信息。内容信息212包括内容项214,其包括但不限于文档类型、发布日期、作者、语言、主题、质量、文本、图像和/或与内容信息212相关的附加信息。站点信息204、URL信息208和/或内容信息212被提供给变换器216。变换器216将包括在站点信息204、URL信息208和/或内容信息212中的较高维信息变换成低维表示,诸如文档嵌入218。
用户嵌入236由一个或多个机器学习模型创建和/或生成。一个或多个机器学习模型可以包括但不限于变换器234、卷积神经网络、递归神经网络等。用户嵌入236可以是从与用户相关联的信息中导出的转换后的较高维向量的相对低维空间表示。例如,用户嵌入基于用户信息222、用户兴趣信息226和用户历史信息230。用户信息222可以包括用户内容信息224,其包括但不限于用户年龄信息、用户性别信息、用户语言信息、用户种族信息、用户教育信息、用户工作信息、用户收入信息、用户位置信息和/或与用户相关的附加信息。用户兴趣信息226可以包括用户兴趣内容信息228,其包括但不限于用户喜欢的主题和用户不喜欢的主题。在一些示例中,用户兴趣内容信息228包括用户喜欢的主题。在示例中,用户兴趣信息226可以从一个或多个模型中导出,该模型被配置为基于与内容项的用户交互信息来标识感兴趣的主题和不感兴趣的主题。例如,基于先前讨论的度量信息,与特定内容相关联的用户停留时间高指示与该内容相关联的主题可能是用户感兴趣的。作为另一示例,用户可能很少花时间查看他们不感兴趣的内容。用户历史信息230可以包括对应于与用户查看的文档相关的信息的历史内容信息232以及时间戳。用户历史信息230可以从浏览器日志、搜索历史、点击等获得。用户信息222、用户兴趣信息226和用户历史信息230被提供给变换器234。变换器234将包括在用户信息222、用户兴趣信息226和用户历史信息230中的较高维信息变换成低维表示,诸如文档嵌入218。在示例中,变换器234和变换器216在生成各自的嵌入236和218时使用相同或相似的语义空间。因此,用户嵌入236和文档嵌入218包括相同或相似的语义空间。由于用户嵌入236和文档嵌入218共享相同或相似的语义空间,因此可以计算用户嵌入236和文档嵌入(诸如文档嵌入218)之间的距离信息,并且在如前所述获得初始文档池时可以依赖该距离信息。
图3描绘了根据本公开的示例的内容标识和排名模块304的附加细节。内容标识和排名模块304可以与前述的内容标识和排名模块144相同或相似。在示例中,内容标识和排名模块304包括第一部分306、第二部分316和第三部分326。第一部分306称为发生的第一级处理。例如,第一部分306充当初始过滤器并且可以基于针对特定时间点的用户嵌入来标识文档嵌入。在示例中,第一部分306标识与相似性过滤器312处的用户嵌入最相似的前n个文档嵌入。更特别地,用户嵌入310和多个文档嵌入308被提供给相似性过滤器312。相似性过滤器312利用相似性度量来有效地搜索可能与用户相似的文档。在示例中,对相似文档执行最近邻搜索314。最近邻搜索标识文档嵌入308中与用户嵌入310最相似的相似文档315。由于文档嵌入308和用户嵌入310共享相同或相似的语义空间,因此可以确定用户嵌入310和每个文档嵌入308之间的距离。在示例中,距离可以包括但不限于欧氏距离、余弦距离和点积距离。第一部分306可以利用文档主体、文档标题、文档锚点的嵌入,并选择相关的文档315。在第一部分306处基于用户嵌入310的搜索将是基于表示(或失去耦合)的搜索,并且将专注于实现高召回率。然后将那些被最近邻搜索314确定为与用户嵌入310相似的文档嵌入315提供给第二部分316。
第二部分316,也称为发生的第二级处理,对被确定为具有接近用户嵌入310的文档嵌入308的每个文档315进行排名。例如,变换器322可以将来自文档315的一个或多个文档嵌入308和用户嵌入310作为输入;变换器322然后生成经排名的文档的池324,其中经排名的文档的池324中的每个文档包括基于文档嵌入308和用户嵌入310的排名。变换器322应用注意力机制以获得比单独的最近邻搜索314更高质量的结果,因为变换器在数量级更少的文档上操作。由变换器322实现的排名利用基于交互的排名来获得那些被确定为与用户深度相关的文档,同时另外运行不利点过程,以用于将排名结果多样化为用户更有可能喜欢的排名结果集合。在示例中,经排名的文档的池然后被提供给第三部分326。
第三部分326,也称为发生的第三级处理,可以从经排名的文档的池中标识和选择最有可能相关的文档。类似于第二部分316,应用不利点过程以确保排名结果是多样化的并且不涉及相同内容或相似内容。因此,用户-内容质量得分330和内容-内容相似性得分328被用来选择经排名的文档的池的子集。选择332的输出可以被提供给用户馈送以显示给用户。备选地或附加地,选择332的输出被提供给内容推荐模块146,如前所述。
图4描绘了根据本公开的示例的协作文档过滤模块404的示例。协作文档过滤模块404可以与前述的协作文档过滤模块148相同或相似。协作过滤技术使用用户对项目的偏好数据库来预测新用户可能喜欢的其他主题或产品。内容过滤的一个基本假设是,如果用户X和Y对n个项目的评价相似,或者具有相似的行为和/或兴趣(例如,观看相同或相似的内容,购买相同或相似的商品,观看相同或相似的视频,和/或收听相同或相似的音频内容),则与用户X和Y具有相同和/或相似行为和/或兴趣的新用户可能以相似的方式行事。更特别地,协作文档过滤模块404标识被发现为与当前用户具有相同或相似兴趣的用户相关的、新颖的、偶然的、多样化的和可解释的文档。例如,用户嵌入408被利用来确定哪些用户416与当前用户相似。然后将从相似用户标识的内容,诸如内容E(基于文档嵌入406)推荐给当前用户。因此,例如,已经查看过类似内容410的用户被标识,并且被确定为被标识的用户感兴趣的文档被提供给当前用户或者以其他方式被提供给如前所述的后续混合模块。然后将此类文档连同经排名的文档的池提供给混合模块150。
在示例中,可以为每个内容项410建立评级或得分;这种评级或得分可以从用户嵌入中导出,其指示用户与内容项的交互和/或兴趣级别。然后基于对类似内容项具有类似评级或得分的其他用户而向用户提供或以其他方式建议所推荐的内容项。例如,用户420B和420C可以与用户420A一样具有内容项A和E的得分或评级。此外,用户420B和420C可能已经对内容项C的内容进行了评分。因此,基于用户420A、420B和420C对内容项A和E的相似得分或评级,用户的子集412(例如,420A、420B和420C)被选择并且所推荐的内容项C可以从内容中被推荐给用户420A。这些推荐连同经排名的文档的池被提供给混合模块150。
图5描绘了根据本公开的示例的用于生成文档嵌入的方法500的细节。图5中示出了方法500的步骤的一般顺序。通常,方法500开始于502并结束于512。方法500可以包括更多或更少的步骤或者可以布置与图5中所示的那些步骤不同的步骤顺序。方法500可以作为一组由计算机***执行并被编码或存储在计算机可读介质上的计算机可执行指令来执行。在示例中,方法500的各方面由诸如计算机或服务器之类的一个或多个处理设备来执行。此外,方法500可以由与处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上***(SOC)、神经处理单元或其他硬件设备相关联的门或电路来执行。在下文中,方法500将参考结合图1至图4所描述的***、组件、模块、软件、数据结构、用户界面等进行解释。
该方法开始于502,其中流程可以继续进行到504。在504处,接收内容。可以接收的内容的示例包括但不限于网页、新闻项、诸如用户本地的内容之类的本地项、视频、图像和其他信息项。在一些示例中,在506处生成文档理解信号。例如,在诸如文档理解模块132(图1)之类的文档理解模块处接收内容。文档理解模块针对每个内容项生成一个或多个信号。在示例中,文档理解模块提取和/或生成文档理解信息,包括但不限于文档的标题、包含在文档内的或以其他方式被文档所引用的主要图像、文档的摘要概要、文档的发布日期、文档的主题、文档的关键短语和/或文档的类型。当然,其他信息可以被生成和/或被提取并且在本文中被设想。在一些示例中,文档理解模块生成和/或提取稍后可以由内容标识和排名模块使用的信息。在示例中,此类信息包括但不限于文档主题、文档关键短语、文档及时性、文档质量、文档的来源权威、文档深度、文档的流行度、作为参考位置和/或作为与文档相关联的地理位置的文档位置,诸如对位于特定地理位置的企业的评论以及提供在该地理位置的半径范围内可用的服务等。在一些示例中,文档理解模块采用机器学习模型来在语义上理解文档并将文档分类为一个或多个逻辑类别。此类逻辑类别可以包括但不限于文章、新闻、产品等。
在508处基于由文档理解模块生成和/或提取的信息来生成内容嵌入。对于每个内容项(例如,文档),内容嵌入模块使用一个或多个经训练的机器学习模型来生成文档嵌入。文档嵌入可以是从与每个内容项相关联的信息中导出的转换后的较高维向量的相对低维空间表示。例如,文档嵌入基于诸如站点信息204(图2)之类的站点信息、诸如URL信息208(图2)之类的URL信息以及诸如内容信息212(图2)之类的内容信息。站点信息、URL信息和/或内容信息被提供给诸如变换器216(图2)之类的机器学习模型。机器学习模型将包含在站点信息、URL信息和/或内容信息中的较高维信息变换成低维表示,诸如文档嵌入218(图2)。方法500可以继续进行到510,其中文档嵌入被存储在内容索引诸如内容索引136(图1)中。方法500可以在512处结束。
图6描绘了根据本公开的示例的用于生成用户嵌入的方法600的细节。图6中示出了方法600的步骤的一般顺序。通常,方法600开始于602并结束于610。方法600可以包括更多或更少的步骤或者可以布置与图6中所示的那些步骤不同的步骤顺序。方法600可以作为一组由计算机***执行并被编码或存储在计算机可读介质上的计算机可执行指令来执行。在示例中,方法600的各方面由诸如计算机或服务器之类的一个或多个处理设备来执行。此外,方法600可以由与处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上***(SOC)、神经处理单元或其他硬件设备相关联的门或电路来执行。在下文中,方法600将参照结合图1至图5所描述的***、组件、模块、软件、数据结构、用户界面等进行解释。
该方法开始于602,其中流程可以继续进行到604。在604处,可以接收用户信息。用户信息的示例可以包括但不限于用户ID、明确的用户兴趣、浏览器搜索历史、搜索引擎点击、搜索引擎查询、用户利用的应用所消费的其他内容和/或可以被用来对用户行为和用户兴趣进行建模的其他用户度量信息(例如,停留时间、遥测数据等)。方法600可以继续进行到606并且基于接收到的信息来生成用户嵌入。
用户嵌入可以与用户嵌入236(图2)相同或相似,其可以是从与用户相关联的信息中导出的转换后的较高维向量的相对低维空间表示。例如,用户嵌入可以基于诸如用户信息222(图2)之类的用户信息、诸如用户兴趣信息226(图2)之类的用户兴趣信息以及诸如用户历史信息230(图2)之类的用户历史信息。用户信息、用户兴趣信息和历史信息可以被提供给诸如变换器234(图2)之类的机器学习模型。机器学习模型可以将包含在用户信息、用户兴趣信息和历史信息中的较高维信息变换成低维表示,诸如嵌入。在示例中,图6的方法利用的机器学习模型和图5的方法利用的机器学习模型可以在生成各自的嵌入时利用相同或相似的语义空间。因此,用户嵌入和文档嵌入可以包括相同或相似的语义空间。由于用户嵌入和文档嵌入可以共享相同或相似的语义空间,因此可以计算用户嵌入和文档嵌入之间的距离信息,并且可以在如前所述获得初始文档池时依赖该距离信息。一旦在606处生成用户嵌入,方法600就可以继续进行到608并将用户嵌入存储在诸如用户储存库142(图1)之类的用户储存库中。方法600可以在610处结束。
图7描绘了根据本公开的示例的用于向用户推荐内容的方法700的细节。图7中示出了方法700的步骤的一般顺序。通常,方法700开始于702并结束于716。方法700可以包括更多或更少的步骤或者可以布置与图7中所示的那些步骤不同的步骤顺序。方法700可以作为一组由计算机***执行并被编码或存储在计算机可读介质上的计算机可执行指令来执行。在示例中,方法700的各方面由诸如计算机或服务器之类的一个或多个处理设备来执行。此外,方法700可以由与处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上***(SOC)、神经处理单元或其他硬件设备相关联的门或电路来执行。在下文中,方法700将参考结合图1至图6所描述的***、组件、模块、软件、数据结构、用户界面等进行解释。
该方法开始于702,其中流程继续进行到704。在704处,接收与用户标识相关联的标识符。例如,用户标识符可以包括但不限于与登录到网站或以其他方式针对认证源进行认证的用户的用户ID相关联的用户标识符、会话标识符和/或信息的组合(诸如地理位置、互联网协议(IP)地址、可以被用来唯一地标识用户的计算设备信息(例如,硬盘标识符或其他硬件标识符)。方法700继续进行到706,其中取回用户嵌入。可以从诸如用户储存库142(图1)之类的用户储存库中取回用户嵌入。基于用户嵌入,在708处基于文档嵌入和用户嵌入对内容进行排名。
例如,通过将用户嵌入提供给诸如内容标识和排名模块304(图3)之类的内容标识和排名模块来对内容进行排名。内容标识和排名模块标识与用户嵌入最相似的前n个文档嵌入。更特别地,最近邻搜索标识与用户嵌入最相似的文档嵌入池。由于文档嵌入和用户嵌入共享相同或相似的语义空间,因此用户嵌入和每个文档嵌入之间的距离被确定。在示例中,最接近的n个文档可以被包括在文档池中。方法700继续进行到708,其中对内容进行排名。例如,诸如变换器322(图3)之类的机器学习模型将用户嵌入和一个或多个文档嵌入作为输入;机器学习模型生成经排名的文档的池,其中经排名的文档的池中的每个文档都包括基于文档嵌入和用户嵌入的排名。在一些示例中,内容标识和排名模块从经排名的文档的池中标识和选择最有可能与用户相关的文档。可以应用不利点过程来确保排名结果是多样化的并且不涉及相同的内容或相似的内容。因此,用户-内容质量评分和内容-内容相似性评分可以被用来选择经排名的文档的池的子集。
方法700继续进行到710,其中经排名的文档的池和/或经排名的文档的池的子集作为推荐内容被提供给消费者,诸如网站、数据库或第三方供应商。在示例中,与推荐内容相关联的文档的位置经由网络被提供给一个或多个消费者,诸如网站、数据库或第三方供应商。在一些示例中,请求者请求推荐内容以在用户馈送中进行提供;在710处向请求者提供此类推荐内容的标识和位置。在一些示例中,推荐内容是指信号文档、网站/网页等。备选地或附加地,推荐内容可以是指多个文档和/或网站/网页。方法700继续进行到712,其中推荐内容中的至少一些被呈现在用户界面处并被显示给用户。例如,推荐内容可以被显示在显示部分108A(图1)中
该方法进行到714并且其中与推荐内容相关联的度量被获得。例如,对个性化内容点击的实时反馈可以被利用来推动后续的个性化印象和推荐内容。相应地,推荐内容、用户标识符、推荐内容的内容点击率以及其他内容的内容点击率被利用来将到用户的内容进一步个性化。也就是说,此类度量可以作为用户信息被提供并在生成用户嵌入时作为输入而被利用。如先前所讨论的,其他遥测信息、搜索历史、感兴趣的主题、地理和人口统计信息可以作为用户简档和/或用户嵌入的一部分而被利用和消费。方法700可以在716处结束。
图8描绘了根据本公开的示例的用于标识推荐内容的方法800的细节。图8中示出了方法800的步骤的一般顺序。通常,方法800开始于802并结束于816。方法800可以包括更多或更少的步骤或者可以布置与图8中所示的那些步骤不同的步骤顺序。方法800可以作为一组由计算机***执行并被编码或存储在计算机可读介质上的计算机可执行指令来执行。在示例中,方法800的各方面由诸如计算机或服务器之类的一个或多个处理设备来执行。此外,方法800可以由与处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上***(SOC)、神经处理单元或其他硬件设备相关联的门或电路来执行。在下文中,方法800将参考结合图1至图7所描述的***、组件、模块、软件、数据结构、用户界面等进行解释。
该方法开始于802,其中流程继续进行到804。在804处,接收用户嵌入。如前所述,用户嵌入是指从与用户相关联的信息中导出的转换后的较高维向量的相对低维空间表示。作为示例,可以根据图6来生成用户嵌入。在806处,访问多个文档嵌入。如先前所讨论的,文档嵌入可以是从与每个内容项或文档相关联的信息中导出的转换后的较高维向量的相对低维空间表示。方法800继续进行到808,其中基于用户嵌入和文档嵌入之间的距离来选择多个文档。在示例中,多个文档可以是指内容集合(例如,文档集合,诸如文档标识符集合)。在810处,可以将针对所选文档集合的文档嵌入和用户嵌入一起提供给机器学习模型,诸如变换器。机器学习模型生成针对内容集合中的内容的内容排名。例如,文档集合中的每个文档都包括基于文档嵌入和用户嵌入的排名。在一些示例中,被分类为最有可能接收用户交互的文档包括比其他文档更高的排名。此外,可以根据关于用户的相关性、新颖性、偶然性、多样性和可解释性对文档进行排名。在一些示例中,可以应用不利点过程来确保排名结果是多样化的并且不涉及相同的内容或相似的内容。方法800继续进行到814,其中选择推荐内容。在一些示例中,用户-内容质量得分和内容-内容相似性得分被用来选择排名内容的子集,如关于图3所讨论的。在其他示例中,选择单个推荐文档或内容项。备选地或附加地,可以选择多个推荐文档和/或内容项。根据本公开的示例,内容的选择可以是指通过可以被用来指代文档或内容的标识符(例如,唯一标识符、位置等)来标识内容。例如,可以不选择文档或内容本身,但是可以选择与文档或内容相关联的位置(例如,URL)。所选内容可以被提供给请求者和/或被提供给用户界面以被显示给用户。方法800可以在816处结束。
图9至图11和相关联的描述提供了可以在其中实践本公开的各方面的多种操作环境的讨论。然而,关于图9至图11所图示和讨论的设备和***是出于示例和说明的目的,并不限制可以被用于实践本文所描述的本公开的各方面的大量计算***配置。
图9是图示了可以用其来实践本公开的各方面的计算***900的物理组件(例如,硬件)的框图。下面描述的计算***组件可以适用于上面描述的计算和/或处理设备。在基本配置中,计算***900可以包括至少一个处理单元902和***存储器904。取决于计算***的配置和类型,***存储器904可以包括但不限于易失性存储装置(例如,随机存取存储器(RAM))、非易失性存储装置(例如,只读存储器(ROM))、闪存或此类存储器的任意组合。
***存储器904可以包括操作***905和适合于运行软件应用920的一个或多个程序模块906,诸如本文所描述的***支持的一个或多个组件。作为示例,***存储器904可以包括内容嵌入模块921、用户嵌入模块9922、内容标识和排名模块923、内容推荐模块924、协作内容过滤模块925和混合模块926。内容嵌入模块921可以与前述的内容嵌入模块134(图1)相同或相似;用户嵌入模块922可以与前述的用户嵌入模块140(图1)相同或相似;内容标识与排名模块923可以与前述的内容标识与排名模块144(图1)相同或相似;内容推荐模块924可以与前述的内容推荐模块146(图1)相同或相似;协作内容过滤模块925可以与前述的协作文档过滤模块148(图1)相同或相似;并且混合模块926可以与前述的混合模块150(图1)相同或相似。操作***905例如可以适合于控制计算***900的操作。
此外,本公开的实施例可以结合图形库、其他操作***或任何其他应用来实践,并且不限于任何特定的应用或***。该基本配置在图9中由虚线908内的那些组件来进行图示。计算***900可以具有附加的特征或功能性。例如,计算***900还可以包括附加数据存储设备(可移动和/或不可移动),诸如例如磁盘、光盘或磁带。这样的附加存储装置在图9中由可移动存储装置909和不可移动存储装置910图示出。
如上所述,许多程序模块和数据文件可以被存储在***存储器904中。当在处理单元902上执行时,程序模块906(例如,软件应用920)可以执行包括但不限于本文所描述的各方面的过程。根据本公开的各方面可以使用的其他程序模块可以包括电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助程序等。
此外,本公开的实施例可以被实践在电路、分立电子元件、包含逻辑门的封装或集成电子芯片、利用微处理器的电路或包含电子元件或微处理器的单个芯片上。例如,本公开的实施例可以经由片上***(SOC)来实践,其中图9中所图示的每个或许多组件可以被集成到单个集成电路上。这样的SOC器件可以包括一个或多个处理单元、图形单元、通信单元、***虚拟化单元和各种应用功能性,所有这些作为单个集成电路被集成(或“烧制”)到芯片基板上。当经由SOC进行操作时,关于客户端切换协议的能力的本文所描述的功能性可以经由与计算***900的其他组件集成在单个集成电路(芯片)上的特定应用逻辑来操作。本公开的实施例也可以使用能够执行诸如例如与、或和非之类的逻辑运算的其他技术来实践,包括但不限于机械、光学、流体和量子技术。此外,本公开的实施例可以在通用计算机或任何其他电路或***中被实践。
计算***900还可以具有一个或多个输入设备912,诸如键盘、鼠标、笔、声音或语音输入设备、触摸或滑动输入设备等。(多个)输出设备914诸如显示器、扬声器、打印机等也可以被包括在内。上述设备是示例并且可以使用其他设备。计算***900可包括允许与其他计算***950通信的一个或多个通信连接916。合适的通信连接916的示例包括但不限于射频(RF)发射器、接收器和/或收发器电路;通用串行总线(USB)、并行和/或串行端口。
本文中所使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括以用于存储信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质,诸如计算机可读指令、数据结构或程序模块。***存储器904、可移动存储装置909和不可移动存储装置910都是计算机存储介质示例(例如,存储器存储装置)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储技术、CD-ROM、数字多功能磁盘(DVD)或其他光学存储、磁盒、磁带、磁盘存储或其他磁性存储设备或者任何其他可以被用来存储信息并可由计算***900访问的制造品。任何此类计算机存储介质都可以是计算***900的一部分。计算机存储介质不包括载波或其他传播或调制的数据信号。
通信介质可以由计算机可读指令、数据结构、程序模块或诸如载波或其他传输机制之类的调制数据信号中的其他数据来体现,并且包括任何信息递送介质。术语“调制数据信号”可以描述具有以将信息编码在信号中的方式设置或改变的一个或多个特性的信号。作为示例而非限制,通信介质可以包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质之类的无线介质。
图10A至图10B图示了可以用其来实践本公开的实施例的移动计算***1000,例如移动电话、智能电话、可穿戴计算机(诸如智能手表)、平板计算机、膝上型计算机等等。在一些方面,客户端可以是移动计算***。参考图10A,图示了用于实现各方面的移动计算***1000的一个方面。在基本配置中,移动计算***1000是具有输入元件和输出元件的手持式计算机。移动计算***1000通常包括显示器1005和允许用户将信息输入到移动计算***1000中的一个或多个输入按钮1010。移动计算***1000的显示器1005还可以用作输入设备(例如,触摸屏显示器)。
如果被包括的话,可选的侧输入元件1015允许进一步的用户输入。侧输入元件1015可以是旋转开关、按钮或任何其他类型的手动输入元件。在替代方面,移动计算***1000可以并入更多或更少的输入元件。例如,在一些实施例中,显示器1005可以不是触摸屏。
在又一个替代实施例中,移动计算***1000是便携式电话***,诸如蜂窝电话。移动计算***1000还可以包括可选的小键盘1035。可选的小键盘1035可以是物理小键盘或在触摸屏显示器上生成的“软”小键盘。
在各种实施例中,输出元件包括用于显示图形用户界面(GUI)的显示器1005、视觉指示器1020(例如,发光二极管)和/或音频换能器1025(例如,扬声器)。在一些方面,移动计算***1000合并了用于向用户提供触觉反馈的振动换能器。在另一方面,移动计算***1000合并了输入和/或输出端口,诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口),以用于向外部设备发送信号或从外部设备接收信号。
图10B是图示了移动计算***的一方面的架构的框图。也就是说,移动计算***1000可以合并***(例如,架构)1002来实现一些方面。在一个实施例中,***1002被实现为能够运行一个或多个应用(例如,浏览器、电子邮件、日历、联系人管理器、消息传递客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些方面,***1002被集成为计算***,诸如集成个人数字助理(PDA)和无线电话。
一个或多个应用1066可以被加载到存储器1062中并且在操作***1064上运行或与操作***1064相关联地运行。应用的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息传递程序、地图程序等。***1002还包括存储器1062内的非易失性存储区域1068。非易失性存储区域1068可以被用来存储在***1002断电时不应丢失的持久信息。应用1066可以在非易失性存储区域1068中使用和存储信息,诸如电子邮件或电子邮件应用所使用的其他消息等等。同步应用(未示出)也驻留在***1002上,并被编程为与驻留在主计算机上的对应同步应用进行交互,以保持存储在非易失性存储区域1068中的信息与存储在主计算机上的对应信息同步。应当了解,其他应用可以被加载到存储器1062中并在本文所描述的移动计算***1000上运行(例如,搜索引擎、提取器模块、相关性排名模块、答案评分模块等)。
***1002具有电源1070,其可以被实现为一个或多个电池。电源1070还可以包括外部电源,诸如AC适配器或对电池进行补充或再充电的供电对接支架。
***1002还可以包括无线电接口层1072,其执行传输和接收射频通信的功能。无线电接口层1072促进***1002和“外部世界”之间经由通信运营商或服务提供商的无线连接。进出无线电接口层1072的传输在操作***1064的控制下进行。换言之,无线电接口层1072接收的通信可以经由操作***1064而被传播到应用1066,反之亦然。
视觉指示器1020可以被用来提供视觉通知,和/或音频接口1074可以被用于经由音频换能器1025产生听觉通知。在所图示的实施例中,视觉指示器1020是发光二极管(LED)而音频换能器1025是扬声器。这些设备可以直接耦合到电源1070,使得在被激活时,即使处理器1060和其他组件可能被关闭以节省电池电量,而它们仍保持开启达通知机制所规定的持续时间。LED可以被编程为无限期地保持开启,直到用户采取动作来指示设备的通电状态。音频接口1074被用来向用户提供音频信号以及从用户接收音频信号。例如,除了耦合到音频换能器1025之外,音频接口1074还可以耦合到麦克风以接收可听输入,以便促进电话交谈。根据本公开的实施例,麦克风还可以用作音频传感器以促进通知的控制,如下面将描述的。***1002还可以包括视频接口1076,其使得机载相机1030的操作能够记录静止图像、视频流等等。机载相机可以与先前描述的图像传感器620和/或632相同或相似。
实现***1002的移动计算***1000可以具有附加的特征或功能性。例如,移动计算***1000还可以包括附加数据存储设备(可移动和/或不可移动),诸如磁盘、光盘或磁带。这种附加的存储装置在图10B中通过非易失性存储区域3068来图示。
如上所述,由移动计算***1000生成或捕获并经由***1002而被存储的数据/信息可以被本地存储在移动计算***1000上,或者数据可以被存储在任何数量的存储介质上,这些存储介质可以由设备经由无线电接口层1072或经由移动计算***1000和与移动计算***1000相关联的独立计算***(例如,诸如互联网之类的分布式计算网络中的服务器计算机)之间的有线连接来访问。应当了解,这样的数据/信息可以经由移动计算***1000经由无线电接口层1072或经由分布式计算网络来访问。类似地,根据众所周知的数据/信息传送和存储方式,包括电子邮件和协作数据/信息共享***,这样的数据/信息可以很容易在计算***之间进行传送以用于存储和使用。
图11图示了用于处理在计算***处从远程源(诸如个人计算机1104、平板计算设备1106或移动计算设备1108)接收的数据的***架构的一个方面,如上所述。服务器设备1102处的内容可以以不同的通信信道或其他存储类型来进行存储。例如,可以使用目录服务1127、web门户1128、邮箱服务1129、即时消息收发存储库1130或社交联网服务1131来存储各种文档。
如上所述,服务器设备1110和/或个人计算机1104、平板计算设备1106或移动计算设备1108可以采用前述的程序模块906或软件应用920中的一个或多个。例如,服务器设备1102可以包括内容嵌入模块1121、用户嵌入模块1122、内容标识和排名模块1123、内容推荐模块1124、协作内容过滤模块1125和混合模块1126。内容嵌入模块1121可以与前述的内容嵌入模块134(图1)相同或相似;用户嵌入模块1122可以与前述的用户嵌入模块140(图1)相同或相似;内容标识与排名模块1123可以与前述的内容标识与排名模块144(图1)相同或相似;内容推荐模块1124可以与前述的内容推荐模块146(图1)相同或相似;协作内容过滤模块1125可以与前述的协作文档过滤模块148(图1)相同或相似;并且混合模块1126可以与前述的混合模块150(图1)相同或相似。
服务器设备1102可以通过网络1115向和从诸如个人计算机1104、平板计算设备1106和/或移动计算设备1108(例如,智能电话)之类的客户端计算设备提供数据。例如,上述计算机***可以被体现在个人计算机1104、平板计算设备1106和/或移动计算设备1108(例如,智能电话)中。计算设备的这些实施例中的任何一个都可以从存储库1116获得内容,此外还可以接收可用于在图形生成***处进行预处理或在接收计算***处进行后处理的图形数据。
此外,本文所描述的各方面和功能性可以在分布式***(例如,基于云的计算***)上操作,其中应用功能性、存储器、数据存储和取回以及各种处理功能可以通过诸如互联网或内联网之类的分布式计算网络而彼此远程操作。各种类型的用户界面和信息可以经由机载计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元来显示。例如,可以在投影各种用户界面和信息的墙面上显示各种类型的用户界面和信息并与之交互。与可以用其来实践本发明的实施例的大量计算***的交互包括击键输入、触摸屏输入、语音或其他音频输入、手势输入,其中相关联的计算设备配备有检测(例如,相机)功能性,以用于捕获并解释用于控制计算设备的功能性的用户手势等等。
本公开涉及根据至少以下部分中所提供的示例的用于基于用户兴趣来执行针对性搜索的***和方法:
(A1)在一个方面,一些实施例包括一种用于基于用户兴趣来执行针对性搜索的方法。该方法在与网络(例如,128)进行数据通信的针对性搜索***(例如,106)处被执行。该方法包括:(i)接收针对用户(例如,102)的用户标识符(例如,138A);(ii)基于用户标识符(例如,138A)来取回用户嵌入(例如,236/310),该用户嵌入(例如,236/310)是根据一个或多个用户兴趣(例如,222/226/230)创建的;(iii)基于用户嵌入(例如,310)从多个文档嵌入(例如,308)中标识文档嵌入集合(例如,315),文档嵌入集合(例如,315)中的每个文档嵌入被确定为在用户嵌入(例如,310)的第一距离内;(iv)生成针对文档嵌入集合(例如,315)的每个文档嵌入的排名,其中文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名基于用户嵌入(例如,310);并且(v)基于针对文档嵌入集合(例如,315)中的每个文档嵌入的排名,向用户(例如,102)推荐至少一个文档(例如,154)。
(A2)在A1的一些实施例中,多个文档嵌入(例如,308)和用户嵌入(例如,236/310)在相同语义空间(例如,139)内。
(A3)在A1-A2的一些实施例中,该方法还包括使用机器学习模型(例如,216)生成针对文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名,机器学习模型(例如,216)基于相关性、新颖性和多样性中的一个或多个而对文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)进行排名。
(A4)在A1-A3的一些实施例中,该方法还包括:经由机器学习模型(例如,234)基于接收到的特定于用户(例如,102)的用户特性(例如,222)、用户兴趣(例如,226)和用户动作的指示来生成用户嵌入(例如,236/310),其中用户兴趣(例如,226)指示用户(例如,102)感兴趣的一个或多个主题(例如,228A)和用户(例如,102)不感兴趣的一个或多个主题(例如,228B),并且其中用户动作基于用户(例如,102)查看的一个或多个先前文档(例如,130)。
(A5)在A1-A4的一些实施例中,该方法还包括从文档(例如,130)中提取位置(例如,208)和内容信息(例如,212);向机器学习模型(例如,216)提供文档(例如,130)的位置(例如,208)和内容信息(例如,212);经由机器学习模型生成特定于文档(例如,130)的文档嵌入(例如,218);并且将文档嵌入(例如,218)添加到多个文档嵌入(例如,136)中。
(A6)在A1-A5的一些实施例中,该方法还包括使所推荐的至少一个文档(例如,154)被显示在与用户(例如,102)相关联的输出设备(例如,140)处。
(A7)在A1-A6的一些实施例中,该方法还包括:接收用户选择了显示给输出设备(例如,104)的所推荐的至少一个文档(例如,154)的指示(例如,138G);基于接收到的指示(例如,138G)来生成另一用户嵌入(例如,236/310);基于另一用户嵌入(例如,236/310)从多个文档嵌入(例如,308)中标识第二文档嵌入集合(例如,315);生成针对第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名,其中第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名基于另一用户嵌入(例如,310);并且基于第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名,向用户推荐至少一个文档(例如,154)。
在另一方面,一些实施例包括一种计算***,该计算***包括一个或多个处理器和耦合到一个或多个处理器的存储器,该存储器存储一个或多个程序,该一个或多个程序被配置为由一个或多个处理器执行,该一个或多个程序包括用于执行本文所描述的任何方法(例如,上述A1-A7)的指令。
在另一方面,一些实施例包括一种非暂时性计算机可读存储介质,其存储用于由存储设备的一个或多个处理器执行的一个或多个程序,该一个或多个程序包括用于执行本文所描述的任何方法(例如,上述A1-A7)的指令。
本公开涉及根据至少以下部分中提供的示例的用于基于用户兴趣来执行针对性搜索的***和方法:
(B1)在一方面,一些实施例包括一种基于用户兴趣来执行针对性搜索的方法。该方法在与网络(例如,128)进行数据通信的针对性搜索***(例如,106)处被执行。该方法包括:从多个文档(例如,130A-130D)中的每个文档(例如,130)中提取信息;(ii)对于多个文档(例如,130A-130D)中的每个文档(例如,130),基于所提取的信息来生成文档嵌入(例如,218);(iii)接收用户(例如,102)的用户兴趣信息(例如,226);(iv)基于接收到的用户兴趣信息(例如,226)来生成用户嵌入(例如,236),用户嵌入(例如,236)和文档嵌入(例如,218)共享相同语义空间(例如,139);(v)从多个文档嵌入(例如,308)中标识文档嵌入集合(例如,315),文档嵌入集合(例如,315)中的每个文档嵌入在用户嵌入(例如,236)的第一距离内;(vi)生成针对文档嵌入集合(例如,315)中的每个文档嵌入的排名,其中针对每个文档嵌入(例如,324)的排名基于用户嵌入(例如,236/310);并且(vii)基于文档嵌入排名向用户(例如,102)推荐至少一个文档(例如,154)。
(B2)在B1的一些实施例中,将所推荐的至少一个文档(例如,154)呈现给与用户(例如,102)相关联的显示设备(例如,104),该用户(例如,102)与该用户嵌入(例如,236)相关联。
(B3)在B1-B2的一些实施例中,该方法还包括:接收用户选择了所推荐的至少一个文档(例如,154)的指示(例如,136G);基于接收到的指示(例如,136G)来生成与用户(例如,102)相关联的另一用户嵌入(例如,236/310);基于另一用户嵌入(例如,236/310)从多个文档嵌入(例如,308)中标识第二文档嵌入集合(例如,315);生成针对第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名,其中第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名基于另一用户嵌入(例如,310);并且基于第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名,向用户推荐至少一个文档(例如,154)。
(B4)在B1-B3的一些实施例中,该方法还包括使用机器学习模型为多个文档嵌入中的每个文档嵌入生成排名,该机器学习模型基于相关性、新颖性和多样性中的一个或多个而对每个文档嵌入进行排名。
(B5)在B1-B4的一些实施例中,该方法还包括在机器学习模型(例如,234)处基于接收到的特定于用户(例如,102)的用户特性(例如,222)、用户兴趣(例如,226)和用户动作的指示来生成用户嵌入(例如,236/310),其中用户兴趣(例如,226)指示用户(例如,102)感兴趣的一个或多个主题(例如,228A)和用户(例如,102)不感兴趣的一个或多个主题(例如,228B),并且其中用户动作基于用户(例如,102)查看的一个或多个先前文档(例如,130)。
(B6)在B1-B5的一些实施例中,该方法还包括接收用户标识符(例如,138A);基于用户标识符(例如,138A)来取回用户简档(例如,126),用户简档包括用户嵌入(例如,236/310)。
(B7)在B1-B6的一些实施例中,该方法还包括针对与文档嵌入集合(例如,315)相关联的多个文档(例如,130),接收来自多个用户(例如,416)的用户兴趣信息;并且基于来自多个用户(例如,416)的用户兴趣信息匹配用户(例如,102)的用户兴趣信息而标识文档嵌入集合(例如,315)的子集,其中所推荐的至少一个文档(例如,154)基于文档嵌入集合的子集。
在另一方面,一些实施例包括一种计算***,该计算***包括一个或多个处理器和耦合到一个或多个处理器的存储器,该存储器存储一个或多个程序,该一个或多个程序被配置为由一个或多个处理器执行,该一个或多个程序包括用于执行本文所描述的任何方法(例如,上述B1-B7)的指令。
在另一方面,一些实施例包括一种非暂时性计算机可读存储介质,其存储用于由存储设备的一个或多个处理器执行的一个或多个程序,该一个或多个程序包括用于执行本文所描述的任何方法(例如,上述B1-B7)的指令。
本公开涉及用于基于至少根据以下部分中提供的示例的用户兴趣执行针对性搜索的***和方法:
(C1)一方面,一些实施例包括一种基于用户兴趣来执行针对性搜索的方法。该方法在与网络(例如,128)进行数据通信的针对性搜索***(例如,106)处被执行。该方法包括:(i)接收用户(例如,102)的用户标识符(例如,138A);(ii)基于用户标识符(例如,138A)来取回用户简档(例如,125),该用户简档(例如,125)包括根据一个或多个用户兴趣(例如,222/226/230)而创建的用户嵌入(例如,236/310);(iii)基于用户嵌入(例如,236/310)来标识多个文档嵌入(例如,315),多个文档嵌入(例如,315)中的每个文档嵌入(例如,315)被确定为在用户嵌入(例如,310)的第一距离内;(iv)为多个文档嵌入(例如,315)中的每个文档嵌入生成排名,其中多个文档嵌入(例如,315)中的每个文档嵌入(例如,324)的排名基于用户嵌入(例如,310);并且(v)根据多个文档嵌入(例如,315)中的每个文档嵌入的排名,向用户(例如,102)推荐至少一个文档(例如,154)。
(C2)在C1的一些实施例中,多个文档嵌入(例如,308)和用户嵌入(例如,236/310)在相同语义空间(例如,139)内。
(C3)在C1-C2的一些实施例中,该方法还包括使用机器学习模型(例如,216)生成针对多个文档嵌入(例如,315)中的每个文档嵌入(例如,324)的排名,机器学习模型(例如,216)基于相关性、新颖性和多样性中的一个或多个而对多个文档嵌入(例如,315)中的每个文档嵌入进行排名。
(C4)在C1-C3的一些实施例中,该方法还包括:经由机器学习模型(例如,234)基于接收到的特定于用户(例如,102)的用户特性(222)、用户兴趣(例如,226)和用户动作的指示来生成用户嵌入(例如,236/310),其中用户兴趣(例如,226)指示用户(例如,102)感兴趣的一个或多个主题(例如,228A)和用户(例如,102)不感兴趣的一个或多个主题(例如,228B),并且其中用户动作基于用户(例如,102)查看的一个或多个先前文档(例如,130)。
(C5)在C1-C4的一些实施例中,该方法还包括从文档(例如,130)中提取位置(例如,208)和内容信息(例如,212);向机器学习模型(例如,216)提供文档(例如,130)的位置(例如,208)和内容信息(例如,212);经由机器学习模型生成特定于文档(例如,130)的文档嵌入(例如,218);并且将文档嵌入(例如,218)添加到多个文档嵌入(例如,136)中。
(C6)在C1-C5的一些实施例中,该方法还包括使所推荐的至少一个文档(例如,154)被显示在与用户(例如,102)相关联的输出设备(例如,104)处;接收用户(例如,102)选择了显示给输出设备(例如,104)的所推荐的至少一个文档(例如,154)的指示(例如,138G);基于接收到的指示(例如,138G)来生成另一用户嵌入(例如,310);基于另一用户嵌入(例如,310)从多个文档嵌入(例如,308)中标识第二文档嵌入集合(例如,315);生成针对第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名,其中第二文档嵌入集合(例如,315)中的每个文档嵌入(例如,324)的排名基于另一用户嵌入(例如,310);并且基于第二文档嵌入集合(315)中的每个文档嵌入(例如,324)的排名,向用户(例如,102)推荐至少一个文档(例如,154)。
在另一方面,一些实施例包括一种计算***,该计算***包括一个或多个处理器和耦合到一个或多个处理器的存储器,该存储器存储一个或多个程序,该一个或多个程序被配置为由一个或多个处理器执行,该一个或多个程序包括用于执行本文所描述的任何方法(例如,上述C1-C6)的指令。
在另一方面,一些实施例包括一种非暂时性计算机可读存储介质,其存储用于由存储设备的一个或多个处理器执行的一个或多个程序,该一个或多个程序包括用于执行本文所描述的任何方法(例如,上述C1-C6)的指令。
例如,本公开的各方面是参考根据本公开的各方面的方法、***和计算机程序产品的框图和/或操作说明而在上面描述的。块中注明的功能/动作可以不按照任何流程图中所示的顺序而发生。例如,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序来执行,具体取决于所涉及的功能/动作。
本申请中提供的一个或多个方面的描述和说明不旨在以任何方式限制或局限所要求保护的本公开的范围。本申请中提供的方面、示例和细节被认为足以传达所有权并使得其他人能够制作和使用要求保护的公开内容的最佳模式。要求保护的公开内容不应被解释为限于本申请中提供的任何方面、示例或细节。不管是组合地还是单独地示出和描述,(结构的和方法的)各种特征旨在被选择性地包括或省略以产生具有一组特定特征的实施例。已经提供了本申请的描述和说明,本领域的技术人员可以设想落入本申请中体现的总体发明构思的更广泛方面的精神内的变化、修改和替代方面,这些方面都没有脱离所要求的公开内容的更广范围。
Claims (15)
1.一种用于基于用户兴趣来执行针对性搜索的方法,所述方法包括:
接收针对用户的用户标识符;
基于所述用户标识符来取回用户嵌入,所述用户嵌入根据一个或多个用户兴趣而被创建;
基于所述用户嵌入从多个文档嵌入中标识文档嵌入集合,所述文档嵌入集合中的每个文档嵌入被确定为在所述用户嵌入的第一距离内;
生成针对所述文档嵌入集合中的每个文档嵌入的排名,其中针对所述文档嵌入集合中的每个文档嵌入的所述排名基于所述用户嵌入;以及
基于针对所述文档嵌入集合中的每个文档嵌入的所述排名,向所述用户推荐至少一个文档。
2.根据权利要求1所述的方法,其中所述多个文档嵌入和所述用户嵌入在相同语义空间内。
3.根据权利要求2所述的方法,还包括:
使用机器学习模型来生成针对所述文档嵌入集合中的每个文档嵌入的所述排名,所述机器学习模型基于相关性、新颖性和多样性中的一项或多项来对所述文档嵌入集合中的每个文档嵌入进行排名。
4.根据权利要求3所述的方法,还包括:经由所述机器学习模型,基于接收到的特定于所述用户的用户特性、用户兴趣和用户动作的指示来生成所述用户嵌入,
其中所述用户兴趣指示所述用户感兴趣的一个或多个主题和所述用户不感兴趣的一个或多个主题,并且
其中所述用户动作基于由所述用户查看的一个或多个先前文档。
5.根据权利要求1所述的方法,还包括:
从文档中提取位置和内容信息;
向机器学习模型提供针对所述文档的所述位置和内容信息;
经由所述机器学习模型,生成特定于所述文档的文档嵌入;以及
将所述文档嵌入添加到所述多个文档嵌入。
6.根据权利要求1所述的方法,还包括:使所推荐的所述至少一个文档被显示在与所述用户相关联的输出设备处。
7.根据权利要求6所述的方法,还包括:
接收用户选择了被显示到所述输出设备的所推荐的所述至少一个文档的指示;
基于接收到的所述指示来生成另一用户嵌入;
基于所述另一用户嵌入从所述多个文档嵌入中标识第二文档嵌入集合;
生成针对所述第二文档嵌入集合中的每个文档嵌入的排名,其中针对所述第二文档嵌入集合中的每个文档嵌入的所述排名基于所述另一用户嵌入;以及
基于针对所述第二文档嵌入集合中的每个文档嵌入的所述排名,向所述用户推荐至少一个文档。
8.一种用于基于用户兴趣来执行针对性搜索的***,所述***包括:
处理器;
包括指令的存储器,所述指令在由所述处理器执行时,使所述处理器:
从多个文档中的每个文档中提取信息;
针对所述多个文档中的每个文档,基于所提取的所述信息来生成文档嵌入;
接收针对用户的用户兴趣信息;
基于接收到的所述用户兴趣信息来生成用户嵌入,所述用户嵌入和所述文档嵌入共享相同语义空间;
从所述多个文档嵌入中标识文档嵌入集合,所述文档嵌入集合中的每个文档嵌入在所述用户嵌入的第一距离内;
生成针对所述文档嵌入集合中的每个文档嵌入的排名,其中针对每个文档嵌入的所述排名基于所述用户嵌入;以及
基于所述文档嵌入排名,向所述用户推荐至少一个文档。
9.根据权利要求8所述的***,其中所推荐的所述至少一个文档被呈现到与用户相关联的显示设备,所述用户与所述用户嵌入相关联。
10.根据权利要求8所述的***,其中所述指令在由所述处理器执行时,使所述处理器:
接收所述用户选择了所推荐的所述至少一个文档的指示;
基于接收到的所述指示来生成与所述用户相关联的另一用户嵌入;
基于所述另一用户嵌入从所述多个文档嵌入中标识第二文档嵌入集合;
生成针对所述第二文档嵌入集合中的每个文档嵌入的排名,其中针对所述第二文档嵌入集合中的每个文档嵌入的所述排名基于所述另一用户嵌入;以及
基于针对所述第二文档嵌入集合中的每个文档嵌入的所述排名,向所述用户推荐至少一个文档。
11.根据权利要求8所述的***,其中所述指令在由所述处理器执行时,使所述处理器:使用机器学习模型来生成针对所述多个文档嵌入中的每个文档嵌入的所述排名,所述机器学习模型基于相关性、新颖性和多样性中的一项或多项来对每个文档嵌入进行排名。
12.根据权利要求11所述的***,其中所述指令在由所述处理器执行时,使所述处理器:在机器学习模型处,基于接收到的特定于所述用户的用户特性、用户兴趣和用户动作的指示来生成所述用户嵌入,其中所述用户兴趣指示所述用户感兴趣的一个或多个主题和所述用户不感兴趣的一个或多个主题,并且其中所述用户动作基于由所述用户查看的一个或多个先前文档。
13.根据权利要求10所述的***,其中所述指令在由所述处理器执行时,使所述处理器:
接收用户标识符;以及
基于所述用户标识符来取回用户简档,所述用户简档包括所述用户嵌入。
14.根据权利要求10所述的***,还包括在由所述处理器执行时,使所述处理器执行以下操作的指令:
针对与所述文档嵌入集合相关联的多个文档,接收来自多个用户的用户兴趣信息;以及
基于来自所述多个用户的所述用户兴趣信息匹配针对所述用户的用户兴趣信息,标识所述文档嵌入集合的子集,
其中所推荐的所述至少一个文档基于所述文档嵌入集合的所述子集。
15.一种计算机存储介质,所述计算机存储介质包括指令,所述指令在由处理器执行时使所述处理器:
接收针对用户的用户标识符;
基于所述用户标识符来取回用户简档,所述用户简档包括根据一个或多个用户兴趣被创建的用户嵌入;
基于所述用户嵌入来标识多个文档嵌入,所述多个文档嵌入中的每个文档嵌入被确定为在所述用户嵌入的第一距离内;
生成针对所述多个文档嵌入中的每个文档嵌入的排名,其中针对所述多个文档嵌入中的每个文档嵌入的所述排名基于所述用户嵌入;以及
基于针对所述多个文档嵌入中的每个文档嵌入的所述排名,向所述用户推荐至少一个文档。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/163,278 | 2021-01-29 | ||
US17/163,278 US11921728B2 (en) | 2021-01-29 | 2021-01-29 | Performing targeted searching based on a user profile |
PCT/US2022/012829 WO2022164679A1 (en) | 2021-01-29 | 2022-01-18 | Performing targeted searching based on a user profile |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116762071A true CN116762071A (zh) | 2023-09-15 |
Family
ID=80222392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280012416.8A Pending CN116762071A (zh) | 2021-01-29 | 2022-01-18 | 基于用户简档来执行针对性搜索 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11921728B2 (zh) |
EP (1) | EP4285244A1 (zh) |
CN (1) | CN116762071A (zh) |
WO (1) | WO2022164679A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11861677B2 (en) * | 2021-10-28 | 2024-01-02 | Maplebear Inc. | Machine learning model for click through rate prediction using three vector representations |
US20230177273A1 (en) * | 2021-12-08 | 2023-06-08 | International Business Machines Corporation | Intent classification enhancement through training data augmentation |
US20240184835A1 (en) * | 2022-07-11 | 2024-06-06 | City University Of Hong Kong | Recommender system and its operation |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020078045A1 (en) * | 2000-12-14 | 2002-06-20 | Rabindranath Dutta | System, method, and program for ranking search results using user category weighting |
US20050071328A1 (en) * | 2003-09-30 | 2005-03-31 | Lawrence Stephen R. | Personalization of web search |
US20070255707A1 (en) * | 2006-04-25 | 2007-11-01 | Data Relation Ltd | System and method to work with multiple pair-wise related entities |
US20080250008A1 (en) * | 2007-04-04 | 2008-10-09 | Microsoft Corporation | Query Specialization |
EP2068276A1 (en) * | 2007-12-04 | 2009-06-10 | Sony Corporation | Information processing device and method, program, and recording medium |
US20090276403A1 (en) * | 2008-04-30 | 2009-11-05 | Pablo Tamayo | Projection mining for advanced recommendation systems and data mining |
JP5531443B2 (ja) * | 2009-04-08 | 2014-06-25 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US20120253792A1 (en) * | 2011-03-30 | 2012-10-04 | Nec Laboratories America, Inc. | Sentiment Classification Based on Supervised Latent N-Gram Analysis |
US20140236875A1 (en) * | 2012-11-15 | 2014-08-21 | Purepredictive, Inc. | Machine learning for real-time adaptive website interaction |
US9129227B1 (en) * | 2012-12-31 | 2015-09-08 | Google Inc. | Methods, systems, and media for recommending content items based on topics |
US9298802B2 (en) * | 2013-12-03 | 2016-03-29 | International Business Machines Corporation | Recommendation engine using inferred deep similarities for works of literature |
US10846614B2 (en) | 2017-03-16 | 2020-11-24 | Facebook, Inc. | Embeddings for feed and pages |
US11488028B2 (en) | 2017-03-31 | 2022-11-01 | Yahoo Assets Llc | Collaborative personalization via simultaneous embedding of users and their preferences |
US11537623B2 (en) | 2017-05-18 | 2022-12-27 | Meta Platforms, Inc. | Deep semantic content selection |
US20190018692A1 (en) * | 2017-07-14 | 2019-01-17 | Intuit Inc. | System and method for identifying and providing personalized self-help content with artificial intelligence in a customer self-help system |
-
2021
- 2021-01-29 US US17/163,278 patent/US11921728B2/en active Active
-
2022
- 2022-01-18 EP EP22703205.9A patent/EP4285244A1/en active Pending
- 2022-01-18 WO PCT/US2022/012829 patent/WO2022164679A1/en active Application Filing
- 2022-01-18 CN CN202280012416.8A patent/CN116762071A/zh active Pending
-
2024
- 2024-02-12 US US18/438,863 patent/US20240184790A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220245161A1 (en) | 2022-08-04 |
WO2022164679A1 (en) | 2022-08-04 |
US11921728B2 (en) | 2024-03-05 |
US20240184790A1 (en) | 2024-06-06 |
EP4285244A1 (en) | 2023-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8346815B2 (en) | Dynamic image display area and image display within web search results | |
US10437859B2 (en) | Entity page generation and entity related searching | |
US8694505B2 (en) | Table of contents for search query refinement | |
KR102281186B1 (ko) | 검색 결과에 대한 애니메이션 스니핏 | |
US11921728B2 (en) | Performing targeted searching based on a user profile | |
US9934283B2 (en) | Social annotations for enhanced search results | |
CN106471497B (zh) | 使用上下文的辅助浏览 | |
US9158851B2 (en) | Location aware commenting widget for creation and consumption of relevant comments | |
US20210049239A1 (en) | Multi-layer document structural info extraction framework | |
US20160299911A1 (en) | Processing search queries and generating a search result page including search object related information | |
US20220179871A1 (en) | Document body vectorization and noise-contrastive training | |
US11055335B2 (en) | Contextual based image search results | |
US20160335358A1 (en) | Processing search queries and generating a search result page including search object related information | |
CN106462588B (zh) | 来自所提取的内容的内容创建 | |
US9990425B1 (en) | Presenting secondary music search result links | |
US20160335365A1 (en) | Processing search queries and generating a search result page including search object information | |
US10909112B2 (en) | Method of and a system for determining linked objects | |
US11269940B1 (en) | Related content searching | |
US20220043873A1 (en) | Methods and systems for personalized, zero-input suggestions based on semi-supervised activity clusters | |
US11194818B1 (en) | Promoting social media content in search | |
Adeoye | Hybrid Recommendation Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |