CN110140134A - 使用深度学习模型来生成推荐 - Google Patents

使用深度学习模型来生成推荐 Download PDF

Info

Publication number
CN110140134A
CN110140134A CN201680091895.1A CN201680091895A CN110140134A CN 110140134 A CN110140134 A CN 110140134A CN 201680091895 A CN201680091895 A CN 201680091895A CN 110140134 A CN110140134 A CN 110140134A
Authority
CN
China
Prior art keywords
entity
attribute
group object
page
user
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
Application number
CN201680091895.1A
Other languages
English (en)
Inventor
布拉德利·雷·格林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Inc
Original Assignee
Facebook Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Facebook Inc filed Critical Facebook Inc
Publication of CN110140134A publication Critical patent/CN110140134A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

在一个实施例中,确定选自多个实体的一组实体中的每个实体的嵌入。每个嵌入对应于嵌入空间中的点,该嵌入空间包括对应于实体的嵌入的点。使用深度学习模型来确定实体的嵌入。确定一组实体属性中的每个实体属性的嵌入。该组中的每个实体属性具有实体属性类型,并且与至少一个实体相关联。使用深度学习模型来精化实体属性嵌入。基于与相应实体相关联的实体属性嵌入来修改在该组实体中的实体的嵌入,以获得在该组中的每个实体的已更新的嵌入。已更新的嵌入包括关于与相应实体相关联的实体属性的信息。

Description

使用深度学习模型来生成推荐
技术领域
本公开总体上涉及训练深度学习模型。
背景
深度学习是可以涉及在监督或无监督环境中训练模型的一种类型的机器学习。可以训练深度学习模型来学习数据的表示。作为示例而不是作为限制,深度学习模型可以将数据表示为强度值的向量。强度值的向量可以对应于在嵌入空间(embedding space)中的点。深度学习模型可以用于生成嵌入(embedding),这些嵌入在嵌入空间中以有意义的方式压缩异构数据。
特定实施例的概述
在特定实施例中,系统可以使用深度学习模型来识别与所输入的内容项目相似的一个或更多个内容项目。深度学习模型可以被训练来将实体映射到多维嵌入空间中的嵌入。每个嵌入可以对应于在嵌入空间中的点的坐标。深度学习模型可以被训练来生成合并实体的属性的实体的嵌入。因此,可以经由实体的嵌入在同一嵌入空间中表示不同的变量(即,不同类型的实体属性)。
合并实体属性的实体的嵌入可以用于完成任何数量的合适任务。被嵌入的实体可以包括被有意义地压缩以便可以对实体的相应向量表示执行向量运算(即,向量加法和减法)的属性的实体。系统可以使用搜索算法来将实体的一个或更多个嵌入识别为接近嵌入空间中的点,其中该点使用向量代数来被确定。作为示例而不是作为限制,系统可以响应于由用户在客户端系统处输入的接收到的搜索查询来识别实体的嵌入。用户可以输入问题,并且系统可以将该问题转变成向量运算。向量运算可以应用于嵌入空间,并且一个或更多个实体可以响应于该问题被识别。所识别的实体可以在客户端系统上运行的应用(例如,消息收发平台、与社交网络系统相关联的应用或任何其他合适的应用)的界面上作为建议被显示给用户。作为另一示例而不是作为限制,系统可以使用向量运算来在嵌入空间中识别作为对特定实体的补充的实体的嵌入。作为另一示例而不是作为限制,实体可以是社交网络系统的页面,并且系统可以通过基于用户的上下文变化(例如,在社交网络系统上的用户简档(user profile)中的上下文变化)采用向量运算来为用户生成上下文页面推荐。
如本文描述的本发明以新颖的方式实现深度学习模型以生成在嵌入空间中以有意义的方式压缩异构数据的嵌入,并因此提供对几乎任何类型的数据(特别是异构数据)的编目和索引的技术问题的解决方案,使在该数据集内以后的计算和搜索成为可能。所提出的解决方案是有利的,因为添加到大型数据库(例如社交网络系统)中并存在于大型数据库中的数据容易超出对数据对象进行编目和索引的已知传统解决方案的能力。尤其是在社交网络系统中,存在对于将异构数据整合到它的数据库(包括例如社交图(social graph)的结构)中的需要,以及相反地也存在对于不断增强数据库或社交图本身的结构以反映该数据的需要。
在根据本发明的实施例中,一种方法包括:
由一个或更多个计算设备确定在第一组实体中的每个实体的嵌入,其中:
第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定实体的嵌入;
由一个或更多个计算设备确定在第一组实体属性中的每个实体属性的嵌入,其中:
在第一组实体属性中的每个实体属性具有实体属性类型,
第一组实体属性中的每个实体属性与多个实体中的至少一个实体相关联,以及
使用深度学习模型来精化(refine)实体属性的嵌入;以及
由一个或更多个计算设备基于与相应实体相关联的实体属性的嵌入来修改在第一组实体中的实体的嵌入,以获得在第一组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在根据本发明的实施例中,用于在嵌入空间中嵌入对应于存储在数据储存器中的数据对象的一组实体的计算机实现的方法可以包括:
由一个或更多个计算设备确定在第一组实体中的每个实体的嵌入,其中:
第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定实体的嵌入;
由一个或更多个计算设备确定在第一组实体属性中的每个实体属性的嵌入,其中:
在第一组实体属性中的每个实体属性具有实体属性类型,
第一组实体属性中的每个实体属性与多个实体中的至少一个实体相关联,以及
使用深度学习模型来精化实体属性的嵌入;以及
由一个或更多个计算设备基于与相应实体相关联的实体属性的嵌入来修改在第一组实体中的实体的嵌入,以获得在第一组实体中每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在根据本发明的实施例中,一种方法可以包括:
确定在第二组实体中的每个实体的嵌入,第二组实体选自多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在第二组实体属性中的每个实体具有实体属性类型;以及
基于与相应实体相关联的实体属性的嵌入来修改在第一组实体和第二组实体中的实体的嵌入,以获得在第一组实体和第二组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
修改每个实体的嵌入可以包括用与相应实体相关联的实体属性的嵌入来对在第一组实体中的每个实体的嵌入进行池化(pooling)。
多个实体可以包括社交网络系统中的多个页面。
多个实体可以包括下列项中的至少一项:社交网络系统中的多个页面、与社交图实体相关联的页面、网页以及任何其他合适的实体。
实体属性类型可以是与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、或与页面相关联的用户。
实体属性类型可以对应于与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、与页面相关联的用户、与页面相关联的大小以及实体的任何其他合适性质中的至少一种。
可以使用Skip-Gram负下采样(Skip-Gram Negative Down-Sampling)来训练深度学习模型。
嵌入空间中的每个嵌入可以对应于相应的向量表示。
在根据本发明的实施例中,一种方法可以包括:
检测到与社交网络系统的用户相关联的上下文项目(context item)已经从第一上下文改变到第二上下文;以及
通过下列操作来将一个或更多个嵌入识别为与第二上下文相关:
使用向量运算来确定在嵌入空间中的与第二上下文相关联的点,以及
将搜索算法应用于嵌入空间,其中,对应于所识别的实体的一个或更多个嵌入的点在与嵌入空间中的与第二上下文相关联的所确定的点相对应的点的阈值距离内。
在根据本发明的实施例中,一种方法可以包括:
接收查询,该查询由用户输入;
将查询转变成向量表达式;
计算(evaluate)向量表达式以识别在嵌入空间中的与查询相关联的点;以及
通过将搜索算法应用于嵌入空间来将一个或更多个实体识别为与查询相关,其中,对应于所识别的实体的一个或更多个嵌入的点在与嵌入空间中的与查询相关联的所识别的点相对应的点的阈值距离内。
在根据本发明的实施例中,一个或更多个计算机可读非暂时性存储介质体现软件,该软件在被执行时可操作来:
确定在第一组实体中的每个实体的嵌入,其中:
第一组实体选自多个实体,
每个嵌入对应于在嵌入空间中的点,
嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定实体的嵌入;
确定在第一组实体属性中的每个实体属性的嵌入,其中:
在第一组实体属性中的每个实体属性具有实体属性类型,
第一组实体属性中的每个实体属性与多个实体中的至少一个实体相关联,以及
使用深度学习模型来精化实体属性的嵌入;以及
基于与相应实体相关联的实体属性的嵌入来修改在第一组实体中的实体的嵌入,以获得在第一组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在根据本发明的实施例中,一个或更多个计算机可读非暂时性存储介质体现软件,该软件在被执行时可操作来:
确定在第二组实体中的每个实体的嵌入,第二组实体选自多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在第二组实体属性中的每个实体具有实体属性类型;以及
基于与相应实体相关联的实体属性的嵌入来修改在第一组实体和第二组实体中的实体的嵌入,以获得在第一组实体和第二组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在根据本发明的实施例中,系统可以包括:一个或更多个处理器;以及耦合到处理器的包括可由处理器执行的指令的存储器,处理器在执行指令时可操作来:
确定在第一组实体中的每个实体的嵌入,其中:
第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定实体的嵌入;
确定在第一组实体属性中的每个实体属性的嵌入,其中:
在第一组实体属性中的每个实体属性具有实体属性类型,
第一组实体属性的每个实体属性与多个实体中的至少一个实体相关联,以及
使用深度学习模型来精化实体属性的嵌入;以及
基于与相应实体相关联的实体属性的嵌入来修改在第一组实体中的实体的嵌入,以获得在第一组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在根据本发明的实施例中,系统可以包括:
确定在第二组实体中的每个实体的嵌入,第二组实体选自多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,第二组实体属性中的每个实体具有实体属性类型;以及
基于与相应实体相关联的实体属性的嵌入来修改在第一组实体和第二组实体中的实体的嵌入,以获得在第一组实体和第二组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在根据本发明的另一实施例中,一个或更多个计算机可读非暂时性存储介质体现软件,该软件在被执行时可操作来执行根据本发明的方法或任何上面提到的实施例。
在根据本发明的另一实施例中,一种系统包括:一个或更多个处理器;以及耦合到处理器并包括可由处理器执行的指令的至少一个存储器,处理器在执行指令时可操作来执行根据本发明的方法或任何上面提到的实施例。
在根据本发明的另一实施例中,当优选地包括计算机可读非暂时性存储介质的计算机程序产品在数据处理系统上被执行时可操作来执行根据本发明的方法或任何上面提到的实施例。
上面或下面公开的实施例仅仅是示例,并且本公开的范围不限于它们。特定实施例可以包括上面公开的实施例的部件、元件、特征、功能、操作或步骤中的全部、一些或没有一个被包括。根据本发明的实施例在涉及方法、存储介质、系统和计算机程序产品的所附权利要求中被具体公开,其中,在一个权利要求类别(例如方法)中提到的任何特征也可以在另一个权利要求类别(例如系统)中被要求保护。在所附权利要求中的从属性或往回引用仅为了形式原因而被选择。然而,也可以要求保护由对任何前面的权利要求(特别是多项权利要求)的有意往回引用而产生的任何主题,使得权利要求及其特征的任何组合被公开并且可被要求保护,而不考虑在所附权利要求中选择的从属性。可以被要求保护的主题不仅包括如在所附权利要求中阐述的特征的组合,而且还包括在权利要求中的特征的任何其他组合,其中,在权利要求中提到的每个特征可以与权利要求中的任何其他特征或其他特征的组合相结合。此外,本文描述或描绘的实施例和特征中的任一个可以在单独的权利要求中和/或以与本文描述或描绘的任何实施例或特征的任何组合的形式或以与所附权利要求的任何特征的任何组合的形式被要求保护。
附图简述
图1示出了与社交网络系统相关联的示例网络环境。
图2示出了示例社交图。
图3示出了示例深度学习模型。
图4示出了用于在嵌入空间中嵌入实体和相关联实体属性的示例方法。
图5示出了使用深度学习模型而生成的嵌入空间的示例视图。
图6示出了用于生成包括关于相关联实体属性的信息的实体的嵌入的示例方法。
图7示出了示例计算机系统。
示例实施例的描述
系统概述
图1示出了与社交网络系统相关联的示例网络环境100。网络环境100包括通过网络110连接到彼此的客户端系统130、社交网络系统160和第三方系统170。尽管图1示出了客户端系统130、社交网络系统160、第三方系统170和网络110的特定布置,但是本公开设想了客户端系统130、社交网络系统160、第三方系统170和网络110的任何合适的布置。作为示例而不是作为限制,客户端系统130、社交网络系统160和第三方系统170中的两个或更多个可以直接连接到彼此,绕过网络110。作为另一示例,客户端系统130、社交网络系统160和第三方系统170中的两个或更多个可以全部或部分地在物理上或逻辑上彼此位于同一位置。此外,尽管图1示出了特定数量的客户端系统130、社交网络系统160、第三方系统170和网络110,但是本公开设想了任何合适数量的客户端系统130、社交网络系统160、第三方系统170和网络110。作为示例而不是作为限制,网络环境100可以包括多个客户端系统130、社交网络系统160、第三方系统170和网络110。
本公开设想了任何合适的网络110。作为示例而不是作为限制,网络110的一个或更多个部分可以包括自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、互联网的一部分、公共交换电话网(PSTN)的一部分、蜂窝电话网、或这些中的两个或更多个的组合。网络110可以包括一个或更多个网络110。
链路150可以将客户端系统130、社交网络系统160和第三方系统170连接到通信网络110或连接到彼此。本公开设想了任何合适的链路150。在特定实施例中,一个或更多个链路150包括一个或更多个有线(例如数字用户线路(DSL)或基于电缆的数据服务接口规范(DOCSIS))链路、无线(例如Wi-Fi或全球互通微波接入(WiMAX))链路、或光(例如同步光网络(SONET)或同步数字体系(SDH))链路。在特定实施例中,一个或更多个链路150各自包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、互联网的一部分、PSTN的一部分、基于蜂窝技术的网络、基于卫星通信技术的网络、另一链路150、或两个或更多个这种链路150的组合。链路150不需要在整个网络环境100中是相同的。一个或更多个第一链路150可以在一个或更多个方面上不同于一个或更多个第二链路150。
在特定实施例中,客户端系统130可以是包括硬件、软件或嵌入式逻辑部件、或两个或更多个这样的部件的组合,并且能够执行由客户端系统130实现或支持的适当功能的电子设备。作为示例而不是作为限制,客户端系统130可以包括计算机系统,例如台式计算机、笔记本或膝上型计算机、上网本、平板计算机、电子书阅读器、GPS设备、摄像机、个人数字助理(PDA)、手持电子设备、蜂窝电话、智能手机、增强/虚拟现实设备、其他合适的电子设备、或其任何合适的组合。本公开设想了任何合适的客户端系统130。客户端系统130可以使在客户端系统130处的网络用户能够访问网络110。客户端系统130可以使它的用户能够与在其他客户端系统130处的其他用户进行通信。
在特定实施例中,客户端系统130可以包括web浏览器132,例如MICROSOFTINTERNET EXPLORER、GOOGLE CHROME或MOZILLA FIREFOX,并且可以具有一个或更多个附加件、插件或其他扩展件,例如TOOLBAR或YAHOO TOOLBAR。在客户端系统130处的用户可以输入统一资源定位符(URL)或将web浏览器132导向特定的服务器(例如服务器162或与第三方系统170相关联的服务器)的其他地址,并且web浏览器132可以生成超文本传输协议(HTTP)请求并将HTTP请求传递到服务器。服务器可以接受HTTP请求,并响应于HTTP请求而向客户端系统130传递一个或更多个超文本标记语言(HTML)文件。客户端系统130可以基于来自服务器的HTML文件来显现网页用于呈现给用户。本公开设想了任何合适的网页文件。作为示例而不是作为限制,可以根据特定的需要从HTML文件、可扩展超文本标记语言(XHTML)文件或可扩展标记语言(XML)文件来显现网页。这样的页面还可以执行脚本,例如且没有限制,用JAVASCRIPT、JAVA、MICROSOFT SILVERLIGHT编写的脚本、标记语言和脚本(例如AJAX(异步JAVASCRIPT和XML))的组合等。在本文,在适当的情况下,对网页的引用包括一个或更多个相应的网页文件(浏览器可以使用这些网页文件来显现网页),反之亦然。
在特定实施例中,社交网络系统160可以是可以托管在线社交网络的网络可寻址计算系统。社交网络系统160可以例如生成、存储、接收并发送社交网络数据(例如,用户简档数据、概念简档数据、社交图信息或与在线社交网络相关的其他合适的数据)。社交网络系统160可以由网络环境100的其他部件直接地或经由网络110访问。在特定实施例中,社交网络系统160可以包括一个或更多个服务器162。每个服务器162可以是单一服务器(unitary server)或跨越多台计算机或多个数据中心的分布式服务器。服务器162可以具有各种类型,例如且没有限制,web服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用服务器、交换服务器、数据库服务器、代理服务器、适合于执行本文描述的功能或过程的另一服务器、或者其任何组合。在特定实施例中,每个服务器162可以包括硬件、软件或嵌入式逻辑部件、或用于执行由服务器162实现或支持的适当功能的两个或更多个这样的部件的组合。在特定实施例中,社交网络系统160可以包括一个或更多个数据储存器164。数据储存器164可以用于存储各种类型的信息。在特定实施例中,可以根据特定的数据结构来组织存储在数据储存器164中的信息。在特定实施例中,每个数据储存器164可以是关系数据库、纵列(columnar)数据库、相关性数据库或其他合适的数据库。尽管本公开描述或示出了特定类型的数据库,但是本公开设想了任何合适类型的数据库。特定实施例可以提供使客户端系统130、社交网络系统160或第三方系统170能够管理、检索、修改、添加或删除存储在数据储存器164中的信息的接口。
在特定实施例中,社交网络系统160可以在一个或更多个数据储存器164中存储一个或更多个社交图。在特定实施例中,社交图可以包括多个节点——其可以包括多个用户节点(各自对应于特定用户)或多个概念节点(各自对应于特定概念)——以及连接节点的多个边。社交网络系统160可以向在线社交网络的用户提供与其他用户通信和互动的能力。在特定实施例中,用户可以经由社交网络系统160加入在线社交网络,且然后将关连(例如,关系)添加到社交网络系统160中的他们想要关连到的多个其他用户。在本文,术语“朋友”可以指社交网络系统160的任何其他用户,用户经由社交网络系统160与任何其他用户形成关连(connection)、关联(association)或关系。
在特定实施例中,社交网络系统160可以向用户提供对由社交网络系统160支持的各种类型的项目或对象采取动作的能力。作为示例而不是作为限制,项目和对象可以包括社交网络系统160的用户可以属于的组或社交网络、用户可能感兴趣的事件或日历条目、用户可以使用的基于计算机的应用、允许用户经由服务来购买或销售商品的交易、用户可以执行的与广告的互动、或其他合适的项目或对象。用户可以与能够在社交网络系统160中或者由第三方系统170的外部系统表示的任何事物进行互动,第三方系统170与社交网络系统160分离并且经由网络110耦合到社交网络系统160。
在特定实施例中,社交网络系统160能够链接各种实体。作为示例而不是作为限制,社交网络系统160可以使用户能够彼此互动以及从第三方系统170或其他实体接收内容,或者允许用户通过应用编程接口(API)或其他通信渠道与这些实体互动。
在特定实施例中,第三方系统170可以包括一种或更多种类型的服务器、一个或更多个数据储存器、一个或更多个接口(包括但不限于API)、一个或更多个web服务、一个或更多个内容源、一个或更多个网络或任何其他合适的部件(例如,服务器可以与这些部件通信)。第三方系统170可以由与操作社交网络系统160的实体不同的实体进行操作。然而,在特定实施例中,社交网络系统160和第三方系统170可以彼此结合来操作以向社交网络系统160或第三方系统170的用户提供社交网络服务。在这个意义上,社交网络系统160可以提供平台或骨干网,其他系统(例如第三方系统170)可以使用该平台或骨干网来在整个互联网上向用户提供社交网络服务和功能。
在特定实施例中,第三方系统170可以包括第三方内容对象提供者。第三方内容对象提供者可以包括可以被传递到客户端系统130的内容对象的一个或更多个源。作为示例而不是作为限制,诸如,内容对象可以包括关于用户感兴趣的事情或活动的信息,例如电影放映时间、电影评论、餐馆评论、餐馆菜单、产品信息和评论或其他合适的信息。作为另一示例而不是作为限制,内容对象可以包括激励内容对象(例如优惠券、折扣券、礼品券或其他合适的激励对象)。
在特定实施例中,社交网络系统160还包括用户生成的内容对象,其可以增强用户与社交网络系统160的互动。用户生成的内容可以包括用户可以添加、上传、发送或“发布”到社交网络系统160的任何内容。作为示例而不是作为限制,用户将帖子从客户端系统130传送到社交网络系统160。帖子可以包括数据,例如状态更新或其他文本数据、位置信息、照片、视频、链接、音乐或其他类似数据或媒体。内容还可以由第三方通过“通信渠道”(例如动态消息或流)来添加到社交网络系统160。
在特定实施例中,社交网络系统160可以包括各种服务器、子系统、程序、模块、日志和数据储存器。在特定实施例中,社交网络系统160可以包括下列项中的一个或更多个:web服务器、动作记录器、API请求服务器、相关性和排名引擎、内容对象分类器、通知控制器、动作日志、第三方内容对象暴露日志、推理模块、授权/隐私服务器、搜索模块、广告定向模块(advertisement-targeting module)、用户界面模块、用户简档储存器、关连储存器(connection store)、第三方内容储存器或位置储存器。社交网络系统160还可以包括合适的部件,例如网络接口、安全机构、负载平衡器、故障转移服务器、管理和网络操作控制台、其他合适的部件、或其任何合适的组合。在特定实施例中,社交网络系统160可以包括用于存储用户简档的一个或更多个用户简档储存器。用户简档可以包括例如,传记信息、人口统计信息、行为信息、社交信息或其他类型的描述性信息(例如工作经历、教育历史、爱好或偏好、兴趣、喜好或位置)。兴趣信息可以包括与一个或更多个类别相关的兴趣。类别可以是一般的或特定的。作为示例而不是作为限制,如果用户“赞(like)”关于一种品牌的鞋的文章,该类别可以是品牌,或者“鞋”或“服装”的一般类别。关连储存器可以用于存储关于用户的关连信息。关连信息可以指示具有相似或共同的工作经历、组成员资格、爱好、教育历史或者以任何方式相关或共享共同属性的用户。关连信息还可以包括在不同用户和内容(内部和外部)之间的用户定义的关连。web服务器可以用于经由网络110将社交网络系统160链接到一个或更多个客户端系统130或一个或更多个第三方系统170。web服务器可以包括邮件服务器或用于在社交网络系统160和一个或更多个客户端系统130之间接收并按规定路线发送消息的其他消息传送功能。API请求服务器可以允许第三方系统170通过调用一个或更多个API来访问来自社交网络系统160的信息。动作记录器可以用于从web服务器接收关于用户在社交网络系统160上或之外的动作的通信。结合动作日志,可以维护关于对第三方内容对象的用户暴露的第三方内容对象日志。通知控制器可以向客户端系统130提供关于内容对象的信息。信息可以作为通知被推送到客户端系统130,或者信息可以响应于从客户端系统130接收的请求而从客户端系统130中被拉取。授权服务器可以用于实施社交网络系统160的用户的一个或更多个隐私设置。用户的隐私设置确定与用户相关联的特定信息可如何被共享。授权服务器可以例如通过设置适当的隐私设置来允许用户决定加入或决定退出使他们的动作由社交网络系统160记录或者与其他系统(例如,第三方系统170)共享。第三方内容对象储存器可以用于存储从第三方(例如第三方系统170)接收的内容对象。位置储存器可以用于存储从与用户相关联的客户端系统130接收的位置信息。广告定价模块可以组合社交信息、当前时间、位置信息或其他合适的信息以用通知的形式向用户提供相关广告。
社交图
图2示出了示例社交图200。在特定实施例中,社交网络系统160可以在一个或更多个数据储存器中存储一个或更多个社交图200。在特定实施例中,社交图200可以包括多个节点(其可以包括多个用户节点202或多个概念节点204)以及连接节点的多个边206。为了教导目的,在二维视觉地图表示中示出了在图2中示出的示例社交图200。在特定实施例中,社交网络系统160、客户端系统130或第三方系统170可以访问社交图200和相关社交图信息以用于合适的应用。社交图200的节点和边可以作为数据对象被存储在例如数据储存器(例如社交图数据库)中。这种数据储存器可以包括社交图200的节点或边的一个或更多个可搜索或可查询的索引。
在特定实施例中,用户节点202可以对应于社交网络系统160的用户。作为示例而不是作为限制,用户可以是与社交网络系统160或通过社交网络系统160互动或通信的个人(人类用户)、实体(例如,企业、公司或第三方应用)或(例如,个人或实体的)团体。在特定实施例中,当用户向社交网络系统160注册账户时,社交网络系统160可以创建对应于用户的用户节点202,并将用户节点202存储在一个或更多个数据储存器中。本文描述的用户和用户节点202在适当的情况下可以指注册的用户和与注册的用户相关联的用户节点202。另外或作为备选方案,在适当的情况下,本文描述的用户和用户节点202可以指没有向社交网络系统160注册的用户。在特定实施例中,用户节点202可以与由用户提供的信息或由各种系统(包括社交网络系统160)收集的信息相关联。作为示例而不是作为限制,用户可以提供他或她的姓名、简档图片、联系信息、出生日期、性别、婚姻状况、家庭状况、职业、教育背景、偏好、兴趣或其他人口统计信息。在特定实施例中,用户节点202可以与对应于与用户相关联的信息的一个或更多个数据对象相关联。在特定实施例中,用户节点202可以对应于一个或更多个网页。
在特定实施例中,概念节点204可以对应于概念。作为示例而不是作为限制,概念可以对应于地点(例如,电影院、餐馆、地标或城市);网站(例如,与社交网络系统160相关联的网站或与web应用服务器相关联的第三方网站);实体(例如,个人、企业、团体、运动队或名人);资源(例如,音频文件、视频文件、数字照片、文本文件、结构化文档或应用),其可以位于社交网络系统160内或外部服务器(例如web应用服务器)上;不动产或知识产权(例如,雕塑、绘画、电影、游戏、歌曲、想法、照片或书面作品);游戏;活动;想法或理论;在增强/虚拟现实环境中的对象;另一个合适的概念;或者两个或更多个这样的概念。概念节点204可以与由用户提供的概念的信息或由各种系统(包括社交网络系统160)收集的信息相关联。作为示例而不是作为限制,概念的信息可以包括名称或标题;一个或更多个图像(例如,书籍的封面的图像);位置(例如,地址或地理位置);网站(其可以与URL相关联);联系信息(例如,电话号码或电子邮件地址);其他合适的概念信息;或者这样的信息的任何合适的组合。在特定实施例中,概念节点204可以与对应于与概念节点204相关联的信息的一个或更多个数据对象相关联。在特定实施例中,概念节点204可以对应于一个或更多个网页。
在特定实施例中,社交图200中的节点可以表示网页(其可以被称为“简档页面”)或者由网页表示。简档页面可以由社交网络系统160托管或是社交网络系统160可访问的。简档页面也可以在与第三方服务器170相关联的第三方网站上被托管。作为示例而不是作为限制,对应于特定外部网页的简档页面可以是特定外部网页,并且简档页面可以对应于特定概念节点204。简档页面可以由其他用户的全部或选定子集可查看。作为示例而不是作为限制,用户节点202可以具有相应的用户简档页面,其中相应的用户可以添加内容、做出声明或以其他方式表达他或她自己。作为另一示例而不是作为限制,概念节点204可以具有相应的概念简档页面,其中一个或更多个用户可以添加内容、做出声明或表达他们自己,特别是关于对应于概念节点204的概念。
在特定实施例中,概念节点204可以表示由第三方系统170托管的第三方网页或资源。第三方网页或资源除了其它元素以外还可以包括表示动作或活动的内容、可选择的图标或其他图标或其他可交互对象(其可以例如用JavaScript、AJAX或PHP代码实现)。作为示例而不是作为限制,第三方网页可以包括可选择的图标(例如“赞”、“签到(check-in)”、“吃”、“推荐”)或其他合适的动作或活动。查看第三方网页的用户可以通过选择图标之一(例如,“签到”)来执行动作,使客户端系统130向社交网络系统160发送指示用户的动作的消息。响应于该消息,社交网络系统160可以在对应于用户的用户节点202和对应于第三方网页或资源的概念节点204之间创建边(edge),(例如,签到类型边),并将边206存储在一个或更多个数据储存器中。
在特定实施例中,社交图200中的一对节点可以通过一条或更多条边206连接到彼此。连接一对节点的边206可以表示在该对节点之间的关系。在特定实施例中,边206可以包括或表示对应于在一对节点之间的关系的一个或更多个数据对象或属性。作为示例而不是作为限制,第一用户可以指示第二用户是第一用户的“朋友”。响应于该指示,社交网络系统160可以向第二用户发送“朋友请求”。如果第二用户确认“朋友请求”,则社交网络系统160可以在社交图200中创建将第一用户的用户节点202连接到第二用户的用户节点202的边206,并将边206作为社交图信息存储在一个或更多个数据储存器164中。在图2的示例中,社交图200包括指示在用户“A”和用户“B”的用户节点202之间的朋友关系的边206,以及指示在用户“C”和用户“B”的用户节点202之间的朋友关系的边。尽管本公开描述或示出了连接特定用户节点202的具有特定属性的特定边206,但是本公开设想了连接用户节点202的具有任何适当属性的任何适当边206。作为示例而不是作为限制,边206可以表示朋友关系、家庭关系、商业或雇佣关系、粉丝关系(包括例如,赞等)、追随者关系、访问者关系(包括例如,访问、查看、签到、共享等)、订购者关系、上级/下级关系、互惠关系、非互惠关系、另一种合适类型的关系、或两种或更多种这样的关系。此外,尽管本公开一般将节点描述为被连接,但是本公开也将用户或概念描述为被连接。在本文,对被连接的用户或概念的引用在适当的情况下可以指对应于在社交图200中由一条或更多条边206连接的那些用户或概念的节点。
在特定实施例中,在用户节点202和概念节点204之间的边206可以表示由与用户节点202相关联的用户朝着与概念节点204相关联的概念执行的特定动作或活动。作为示例而不是作为限制,如图2所示,用户可以“赞”、“出席”、“播放”、“收听”、“烹饪”、“工作”或“观看”概念,其中每个可以对应于边类型或子类型。对应于概念节点204的概念简档页面可以包括例如可选择的“签到”图标(例如,可点击的“签到”图标)或可选择的“添加到收藏夹”图标。类似地,在用户点击这些图标之后,社交网络系统160可以响应于对应于相应动作的用户动作来创建“收藏夹”边或“签到”边。作为另一示例而不是作为限制,用户(用户“C”)可以使用特定的应用(声田(SPOTIFY),其为在线音乐应用)来收听特定的歌曲(“想象(Imagine)”)。在这种情况下,社交网络系统160可以在对应于用户的用户节点202和对应于歌曲和应用的概念节点204之间创建“收听”边206和“使用”边(如图2所示),以指示用户收听了歌曲并使用了应用。此外,社交网络系统160可以在对应于歌曲和应用的概念节点204之间创建“播放”边206(如图2所示),以指示特定的歌曲由特定的应用播放。在这种情况下,“播放”边206对应于由外部应用(声田)对外部音频文件(歌曲“想象”)执行的动作。尽管本公开描述了连接用户节点202和概念节点204的具有特定属性的特定边206,但是本公开设想了连接用户节点202和概念节点204的具有任何适当属性的任何适当边206。此外,尽管本公开描述了表示单个关系的在用户节点202和概念节点204之间的边,但是本公开设想了表示一个或更多个关系的在用户节点202和概念节点204之间的边。作为示例而不是作为限制,边206可以表示用户喜欢并使用了特定概念。可选地,另一条边206可以表示在用户节点202和概念节点204之间(如图2所示,在用户“E”的用户节点202和“声田”的概念节点204之间)的每种类型的关系(或多个单一关系)。
在特定实施例中,社交网络系统160可以在社交图200中的用户节点202和概念节点204之间创建边206。作为示例而不是作为限制,查看概念简档页面的用户(例如,通过使用web浏览器或由用户的客户端系统130托管的专用应用)可以通过点击或选择“赞”图标来指示他或她喜欢由概念节点204表示的概念,这可以使用户的客户端系统130向社交网络系统160发送指示用户喜欢与概念简档页面相关联的概念的消息。响应于该消息,社交网络系统160可以在与用户相关联的用户节点202和概念节点204之间创建边206,如由在用户和概念节点204之间的“赞”边206所示的。在特定实施例中,社交网络系统160可以将边206存储在一个或更多个数据储存器中。在特定实施例中,边206可以由社交网络系统160响应于特定用户动作而自动形成。作为示例而不是作为限制,如果第一用户上传图片、观看电影或听歌曲,则可以在对应于第一用户的用户节点202和对应于那些概念的概念节点204之间形成边206。尽管本公开描述了以特定方式形成特定边206,但是本公开设想了以任何合适的方式形成任何合适的边206。
训练深度学习模型
特定实施例使用一个或更多个深度学习模型来将一个或更多个实体识别为给定实体的替代或补充。深度学习模型可以用于在嵌入空间中生成实体的嵌入,每个嵌入合并与实体相关联的异构数据。作为示例而不是作为限制,实体的嵌入可以包括关于与相应嵌入相关联的任何合适数量的实体属性的信息。作为示例而不是作为限制,实体可以包括与社交图实体相关联的页面(例如,与社交网络系统160的用户或概念相关联的页面)、网页、任何其他合适的实体、或其任何组合。如在本文使用的,作为示例而不是作为限制,实体属性可以包括用户(例如,已经与实体互动的用户)、主题(例如,与通过实体而产生的或在实体上的帖子相关联的主题)、类别(例如,来自实体的分类简档数据)、位置数据(例如,与实体相关联的位置)、实体大小(例如,已经“狂热喜爱(fanned)”或“赞”或以其他方式与实体积极互动的用户的数量)、实体的任何其他合适的性质、或其任何组合。
图3示出了示例深度学习模型310。深度学习模型310可以是机器学习模型、神经网络、潜在神经网络、任何其他合适的深度学习模型、或其任何组合。在特定实施例中,深度学习模型310可以具有多个抽象层。输入302、304、306和308可以是任何合适数量的实体。在特定实施例中,输出312可以是实体的在嵌入空间中的一个或更多个嵌入。在特定实施例中,输出312可以是实体属性的在嵌入空间中的嵌入。嵌入空间可以是多维空间(例如,d维空间,其中d是控制容量的超参数),并且可以包括对应于内容项目的嵌入的多个点。如在本文所使用的,实体的嵌入是指实体在嵌入空间中的表示。尽管图3中示出了特定数量的输入实体302、304、306和308,但是深度学习模型310可以为任何合适数量的输入实体302、304、306和308生成实体的嵌入。
在特定实施例中,深度学习模型310(例如,神经网络)可以包括将实体映射到以形式的向量的一个或更多个索引,其中表示实数集合,并且d是控制容量的超参数。向量可以是d维强度向量。如在本文所使用的,强度值可以是在-1至1的范围内的任何合适的值。实体的向量表示的每一个可以提供在嵌入空间中的相应点的坐标。尽管在图3中示出了特定数量的输入实体302、304、306和308,但是深度学习模型310可以提供在任何合适数量的实体302、304、306和308和向量表示之间的映射。
深度学习模型310可以被训练以生成实体的最佳嵌入。在特定实施例中,深度学习模型310可以包括一个或更多个深度学习模型。深度学习模型310可以包括一个或更多个索引,其可以在深度学习模型310被训练时被动态地更新。可以在深度学习模型310的训练阶段期间生成一个或更多个索引。作为示例而不是作为限制,深度学习模型310可以是神经网络、潜在神经网络、或任何其他合适的深度学习模型。可以使用随机分布来初始化深度学习模型310。也就是说,深度学习模型310初始可以具有随机分配的映射(即,在实体302、304、306和308与向量表示之间,基于此可以生成实体302、304、306和308的嵌入)。作为示例而不是作为限制,随机分布可以是高斯分布。该训练可以导致深度学习模型310的一个或更多个索引生成比初始映射更优化的映射。
尽管本公开将图3的特定实施例描述并示出为由社交网络系统160实现,但是本公开设想了如由任何合适的平台或系统实现的图3的任何合适的实施例。作为示例而不是作为限制,图3的特定实施例可以由客户端系统130、第三方系统170或任何其他合适的系统来实现。此外,尽管本公开描述并示出了执行图3的方法的特定步骤的特定部件、设备或系统,但是本公开设想了执行图3的方法的任何适当步骤的任何适当部件、设备或系统的任何适当组合。
在特定实施例中,一个或更多个深度学习模型310可以对不同类型的实体属性进行操作以生成以有意义的方式(即,其支持向量加法和减法)压缩所有实体和相关联实体属性数据的实体的嵌入。系统可以生成考虑页面的属性(例如,与页面相关联的异构数据)的页面的嵌入。因此,页面可以被有效地嵌入到与页面的实体属性(作为示例而不是作为限制,包括用户、类别、位置和大小)的嵌入空间相同的嵌入空间中。作为示例而不是作为限制,对于霍姆伍德山度假村(Homewood Mountain Resort)的页面,与霍姆伍德页面相关联的用户数据可以包括“关注(follow)”霍姆伍德页面或是霍姆伍德页面的“粉丝(fan)”的人。与霍姆伍德页面相关联的主题数据可以包括关于特定主题的霍姆伍德页面的帖子(例如,关于天气状况的霍姆伍德页面帖子)和由页面在广告定向投放(ad targeting)中指定的主题(例如,滑雪、滑雪板运动、太浩(Tahoe)、雪)。与霍姆伍德页面相关联的类别数据可以包括由页面管理员指定的标记类别(例如,太浩湖、滑雪度假村);由用户建议的类别;以及由机器学习系统确定的类别。与霍姆伍德页面相关联的位置数据可以包括由页面管理员指定的特定地址/位置(例如,霍姆伍德山度假村的地址)、与页面互动的人的位置(例如,在地址处的签到)以及页面将广告定向到的位置(例如,太浩湖的加利福尼亚州侧(California-side))。
迭代地嵌入异构数据
图4示出了用于在嵌入空间中嵌入实体和相关联实体属性的示例方法。在步骤410,系统可以训练深度学习模型310以确定一组实体在嵌入空间中的嵌入。作为示例而不是作为限制,实体可以是社交网络系统160的页面。系统可以使用包括与每个页面相关联的数据的有序序列的训练数据来训练深度学习模型310。作为示例而不是作为限制,系统可以使用训练数据来训练深度学习模型310,对于每个页面,该训练数据包括:一系列其他页面(当用户还表达了对相应页面的喜爱时,用户表达了对该系列其他页面的喜爱);从页面的帖子中提取的一系列主题;在页面的广告中使用的一系列主题;在与页面相关联的广告宣传活动中使用的一系列广告关键字;由页面管理员标记的与页面相关联的一系列类别;与页面相关联的一系列位置(例如,邻居、城市、州、国家、大陆);以及对应于“狂热喜爱”或“点赞”页面的用户的数量的一系列大小信息;或者训练数据的任何其他合适的序列。作为示例而不是作为限制,页面(正在生成其嵌入)可以是电影《钢铁侠(IRON MAN)》的页面,并且训练数据可以包括一系列页面(当用户也表达了对钢铁侠页面的喜爱时,用户表达了对该系列页面的喜爱):复仇者联盟(THE AVENGERS)、美国队长(CAPTAIN AMERICA)、明尼苏达维京人队(MINNESOTA VIKINGS)和明尼苏达双城队(MINNESOTA TWINS)。作为另一示例而不是作为限制,钢铁侠页面的训练数据可以包括从钢铁侠页面的帖子中提取的一系列主题:蚁人(ANT MAN)、电影、首映式、预告片和小罗伯特·唐尼(Robert Downey Jr)。作为另一示例而不是作为限制,钢铁侠页面的训练数据可以包括来自与钢铁侠页面相关联的广告宣传活动的一系列广告关键字:蚁人、电影、剧院、漫威(MARVEL)和动作片。作为另一示例而不是作为限制,蔻驰寿司(Coach Sushi)页面的训练数据可以包括由页面管理员标记的与该页面相关联的一系列类别:寿司、餐馆、日本、清酒、生鱼片和天妇罗。作为另一示例而不是作为限制,蔻驰寿司页面的训练数据可以包括与该页面或与该页面互动的用户相关联的一系列位置:亚当点(Adam’s Point)、梅里特湖(Lake Merritt)、奥克兰(Oakland)、加利福尼亚州(California),美利坚合众国(United States of America)、北美。
系统可以使用实际上与相应页面相关联的训练数据(即,仅正采样)来训练深度学习模型。作为示例而不是作为限制,该系统可以使用Skip-Gram负下采样或任何其他合适的训练算法来训练深度学习模型310。特定实施例使用采用包括实体和上下文的特定长度的滑动窗口的训练算法。上下文可以包括基于滑动窗口的长度的任何合适数量的训练数据项(例如,五个训练数据项)。深度学习模型可以被训练以当在上下文中的特定训练数据项出现时最大化实体出现的条件概率。用于训练深度学习模型310的训练算法可以生成嵌入,嵌入的相应向量表示支持向量代数(即,向量加法和减法)。
该组实体(在步骤410确定其嵌入)可以包括任何合适数量的实体。在特定实施例中,在该组实体中的实体可以从实体的总集(corpus)中被随机地采样。作为示例而不是作为限制,该组实体可以包括所有实体的25%,其嵌入将被生成。作为示例而不是作为限制,该组实体可以被选择为任意固定大小的批次(batch)。作为示例而不是作为限制,该组实体的大小(即,在该组实体中的实体的数量)可以是在深度学习模型310的训练之前是固定的参数。
在步骤420,系统可以使用池化算法来确定一组实体属性的初始嵌入。实体可以是页面,并且实体属性可以与页面相关联。实体属性可以具有特定的实体属性类型。作为示例而不是作为限制,实体属性类型可以包括用户(例如,已经与页面互动的用户或任何其他合适的用户)、主题(例如,与通过页面而产生的或在页面上的帖子相关联的主题、由页面指定的广告主题、或任何其他合适的主题)、类别(例如,来自页面的分类简档数据、由管理员标记的与页面相关联的类别、由用户建议的与页面相关联的类别、由社交网络系统160的机器学习过程确定的与页面相关联的类别、或任何其他合适的类别)、位置数据(例如,与页面相关联的位置、与已经与页面互动的用户相关联的位置、页面被宣传到的位置、或任何其他合适的位置)、实体大小(例如,“狂热喜爱”或“赞”或以其他方式与页面积极互动的用户的数量)、页面的任何其他合适的性质、或其任何组合。该组实体属性可以包括一种类型的实体属性(例如,同构数据)。作为示例而不是作为限制,实体属性可以是实体属性类型的主题,并且可以包括与通过页面而产生的或在页面上发布的帖子相关联的主题。主题可以是与文本相关联的任何合适的主题或标签。如在本文所使用的,标签可以是“#”号标签(hashtag)、绘文字(emoji)、贴纸(sticker)、表意文字(ideogram)、任何其他合适的文本注释、任何其他合适的字符、符号、或图像,其各自可以表示在使用或没有使用字母或字或其任何组合的情况下的想法或事情。
在特定实施例中,在步骤410确定的该组实体(例如,页面)的嵌入可以用于构建一组实体属性(例如,主题)的初始嵌入。在特定实施例中,用于生成该组实体的嵌入的池化算法可以是总和池化算法。作为示例而不是作为限制,系统可以通过取与相应主题相关联的页面(例如,与特定主题实体属性相关联的页面)的嵌入的总和的平均值来确定在该组实体属性中的每个实体属性的初始嵌入。作为示例而不是作为限制,可以通过取与主题“电影”相关联的页面(即,“电影”是与页面的帖子或在页面上的帖子相关联的主题)的向量表示之和的平均值来确定主题“电影”的向量表示和相应嵌入。在特定实施例中,确定由γ(主题)表示的主题的嵌入的池化算法可以由下式给出:
Γ(页面)={页面:与主题相关联的页面} (1)
如在本文所使用的,|Γ(页面)|表示与主题相关联的页面的该组嵌入的大小,并且γ(页面)表示与主题相关联的页面的嵌入。
在步骤430,系统可以训练深度学习模型310以精化该组实体属性的嵌入。在特定实施例中,用于在步骤410生成实体的嵌入的深度学习模型和用于在步骤430精化实体属性的嵌入的深度学习模型可以是同一深度学习模型310。可以使用结合步骤410描述的任何技术来训练深度学习模型310。作为示例而不是作为限制,系统可以使用Skip-Gram负下采样或任何其他合适的训练算法来训练深度学习模型310。在特定实施例中,可以使用主题训练数据来重新训练深度学习模型310。如上所述,可以将该主题训练数据输入到深度学习模型310中,并且可以使用池化算法来构建主题的初始嵌入。作为示例而不是作为限制,主题训练数据可以包括在广告定向投放中使用的主题序列或出现在页面上的主题序列、或与用户相关联的主题序列、或任何其他合适的主题训练数据。深度学习模型310然后可以生成该组实体属性的精化嵌入。
在步骤440,系统使用池化算法以基于在步骤430确定的该组实体属性的精化嵌入来确定来自步骤410的该组实体的已更新的嵌入。系统可以基于在步骤430确定的该组实体属性的嵌入来修改在步骤410确定的该组实体的嵌入。在特定实施例中,用于生成第一组实体的嵌入的池化算法可以是总和池化算法。作为示例而不是作为限制,可以通过将在钢铁侠页面上或经由钢铁侠页面的帖子中提及的主题的精化向量表示(在步骤430确定)的总和添加到钢铁侠页面的旧向量表示(即,在步骤410确定)来确定钢铁侠页面的已更新的向量表示和相应嵌入。在特定实施例中,确定由γ2(页面)表示的页面的已更新的嵌入的池化算法可以由下式给出:
Γ(主题)={主题:与页面相关联的主题} (3)
如在本文所使用的,|Γ(主题)|表示与页面相关联的主题的该组嵌入的大小,γ1(页面)表示页面的嵌入(例如,如在步骤410所确定的),γ(主题)表示与页面相关联的主题的精化嵌入(例如,如在步骤430所确定的),并且αi是系数,其中α∈(1,0)并且i是整数。αi项可以减少在更新步骤(例如,图4的步骤440)期间的扰动(perturbation)和学习。然后,系统可以将在该组实体中的实体的已更新的嵌入存储为实体的新嵌入(即,替换在步骤410中确定的嵌入)。因为在步骤440中确定的实体的已更新的嵌入是基于实体属性(例如,主题)的嵌入被确定的,所以已更新的嵌入包括关于实体属性的信息。
在特定实施例中,可以迭代地重复图4的步骤410-440,直到系统已经为考虑特定类型的所有实体属性(例如,主题)的所有实体生成嵌入。作为示例而不是作为限制,系统可以对实体的总集的25%进行随机地采样以形成第一组实体,并对特定类型的实体属性的总集的25%进行随机地采样以形成第一组实体属性。系统可以在执行图4的步骤410-440时使用这些第一组实体和实体属性。然后,系统可以对实体的剩余总集的另外25%进行随机地采样以形成第二组实体,并且对特定类型的实体属性的剩余总集的25%进行随机地采样以形成第二组实体属性。系统可以在执行图4的步骤410-440时使用这些第二组实体和实体属性。然后,系统可以对实体的剩余总集的另外25%进行随机地采样以形成第三组实体,并且对特定类型的实体属性的剩余总集的25%进行随机地采样以形成第三组实体属性。系统可以在执行图4的步骤410-440时使用这些第三组实体和实体属性。最后,系统可以采用实体的总集的剩余25%来形成第四组实体,并且采用特定类型的实体属性的总集的剩余25%来形成第四组实体属性。系统可以在执行图4的步骤410-440时使用这些第四组实体和实体属性。在特定实施例中,系统可以在步骤410-440的迭代之间对实体的已更新的嵌入进行随机地交错。在特定实施例中,可以迭代地重复图4的步骤410-440,直到深度学习模型310收敛为止。在特定实施例中,当在图4的步骤440中更新实体的嵌入时,可以更新实体的所有嵌入,而不仅仅是在与该迭代相关联的特定组中的嵌入(即,可以更新第一组、第二组、第三组和第四组实体嵌入,而不仅仅是第四组实体嵌入)。作为示例而不是作为限制,每当系统执行图4的步骤440时,系统基于与相应实体相关联的实体属性的嵌入来修改每个实体的嵌入(即,使用池化算法),以获得相应实体的已更新的嵌入。
在特定实施例中,系统可以确定考虑(例如,基于)多于一种类型的实体属性的实体的嵌入。作为示例而不是作为限制,实体可以是社交网络系统160的页面,并且第一类型的实体属性可以是主题。在同一示例中,系统可以重复图4的步骤410-440(例如,直到深度学习模型310收敛为止),以迭代地确定这些页面中的每一个的已更新的嵌入。该系统可以存储页面的已更新的嵌入来代替页面的初始确定的嵌入。然后,系统可以执行相同的过程来迭代地确定考虑第二类型的实体属性(例如,位置)的页面的新近更新的嵌入。在步骤420,系统可以通过取与相应主题相关联的页面(例如,与特定位置实体属性相关联的页面)的嵌入的总和的平均值来确定在第二组实体属性中的每个实体属性的初始嵌入。在步骤430,系统可以使用位置数据的训练集来训练深度学习模型,以便精化这些嵌入。在步骤430,系统可以使用池化算法来确定页面的嵌入(即,基于主题的嵌入的页面的嵌入)的随机采样批次的已更新的嵌入。系统可以使用位置实体属性的集合来迭代地重复图4的步骤,直到考虑关于与相应页面相关联的主题和位置的信息的页面的已更新的嵌入被确定为止。在特定实施例中,系统可以迭代地重复该过程(即,图4的步骤410-440),直到实体的嵌入包括关于不同类型的任何合适数量的实体属性的信息为止。
在适当的情况下,特定实施例可以重复图4的方法的一个或更多个步骤。尽管本公开将图4的方法的特定步骤描述并示出为以特定顺序出现,但是本公开设想了以任何合适的顺序出现的图4的方法的任何合适步骤。尽管本公开将图4的特定实施例描述并示出为以特定方式实现,但是本公开设想了在任何合适的界面上出现并且如由任何合适的平台或系统实现的图4的任何合适的实施例。作为示例而不是作为限制,图4的特定实施例可以由客户端系统130、社交网络系统160、第三方系统170或任何其他合适的系统来实现。此外,尽管本公开描述并示出了执行图4的方法的特定步骤的特定部件、设备或系统,但是本公开设想了执行图4的方法的任何适当步骤的任何适当部件、设备或系统的任何适当组合。
一旦深度学习模型被训练以生成实体在嵌入空间中的嵌入(其合并关于与实体相关联的实体属性的信息),嵌入空间就可以用于完成各种任务。作为示例而不是作为限制,系统可以做出考虑页面的属性的页面推荐(即,实体推荐),因为页面和页面的属性被压缩成在同一嵌入空间中的嵌入。
使用嵌入空间来识别实体推荐
图5示出了嵌入空间500的示例视图。嵌入空间500可以包括对应于目标点520的嵌入的点和对应于实体的多个嵌入的多个点510。可以基于使用一个或更多个深度学习模型310确定的实体的向量表示来确定实体的多个嵌入(例如,如结合图4所述的),并且实体的嵌入可以在嵌入空间500中被表示为点510。点510可以对应于实体的多个嵌入510,如上面结合图4所述的,每个嵌入都考虑与相应实体相关联的一个或更多个实体属性。可以使用深度学习模型310来生成嵌入空间。应当理解,尽管图5中的嵌入空间被描绘为二维的,但是嵌入空间可以具有任何合适的维度(例如,多维的)。
在特定实施例中,嵌入空间500可以用于为社交网络系统160的用户生成页面推荐(即,实体推荐)。应当理解,尽管实体可以被描述为页面,但是这仅仅是说明性的而不是作为限制。实体可以是任何合适的实体,作为示例而不是作为限制,包括网页。如上面结合图4所述的,将异构类型的实体属性(即,页面属性)有意义地压缩到页面的嵌入中的方法适合于向量运算(例如,加法和减法)。向量加法、向量减法或两者可以与页面的向量表示一起使用来提供上下文页面推荐。在特定实施例中,可以响应于系统检测到与社交网络系统160的用户相关联的用户简档或其他数据的变化而生成替代页面推荐。可以为具有可确定的替代的任何上下文变化确定替代页面。作为示例而不是作为限制,上下文变化(其替代可以被确定)可以包括位置、婚姻状况、宗教信仰、校友设置、工作设置、任何其他合适的上下文、或其任何组合。作为示例而不是作为限制,系统可以检测到用户已经将简档设置从第一上下文改变为第二上下文。响应于该检测,系统可以基于与第一和第二上下文相关联的页面以及用户点赞过的或者用户以其他方式表达了喜爱的页面,使用向量运算来生成等式。向量运算的结果是目标向量表示,其可以在嵌入空间500中被表示为目标点520。系统可以响应于检测到在用户的上下文中的变化或者响应于所输入的用户查询来确定目标点。系统可以使用搜索算法来识别与目标点520相关的对应于实体的嵌入的一个或更多个点510。搜索算法可以应用于嵌入空间500以识别与实体的嵌入相对应的点540,其在与向量运算的结果的嵌入相对应的目标点520的阈值距离530内。作为示例而不是作为限制,改变的上下文可以是当前位置,第一上下文可以是费城(Philadelphia),第二上下文可以是奥克兰,并且系统可以使用向量运算来识别与奥克兰相关联的页面,其是与费城相关联的页面的替代。在同一示例中,系统可以确定用户已经签到费城的Del Frisco's Double Eagle Steakhouse,因此系统可以随后在奥克兰找到Del Frisco's Double Eagle Steakhouse的替代。确定从费城到奥克兰的上下文变化的一个或更多个替代的向量运算可以由等式(5)给出:
|argmin:γ(页面)|=γ(Del Frisco′s)-γ(费城)+γ(奥克兰) (5)
如在本文所使用的,|argmin:γ(页面)|表示最靠近目标点520(即,距目标点520最小距离)的页面的嵌入,目标点520通过计算在等式(5)的右手侧上的向量运算来被确定。γ(Del Frisco′s)表示Del Frisco’s Double Eagle Steakhouse的页面的嵌入,γ(费城)表示费城的页面的嵌入,以及γ(奥克兰)表示奥克兰的页面的嵌入。等式(5)可以被计算,因为每个嵌入具有相应的向量表示。一旦经由等式(5)获得了目标点520,系统就应用搜索算法来找到嵌入空间500中的最接近目标点520的与页面的嵌入相对应的点540。作为示例而不是作为限制,对应于页面的嵌入的所识别的点540可以包括Michel Bistro(位于奥克兰的可以是费城的Del Frisco’s Double Eagle Steakhouse的替代的餐馆)页面的嵌入。在特定实施例中,社交网络系统160可以将基于上下文变化被识别为替代的一个或更多个页面发送到用户的客户端系统130以用于显示给用户。在特定实施例中,一个或更多个所识别的页面可以被显示为在用户的客户端系统130上运行的社交网络系统160的本机(native)应用中的通知的一部分。在特定实施例中,一个或更多个所识别的页面可以显示在社交网络系统160的馈送(feed)中。可以以任何合适的方式将一个或更多个所识别的页面在客户端系统130处呈现给用户。
在特定实施例中,嵌入空间500可以用于为社交网络系统160的用户生成是对其他页面的补充的页面推荐。系统可以利用主题和类别的本体(例如,类别树图)来确定补充并用于特定页面。例如,系统可以基于类别的本体来确定摄影师是对面包店、花店和活动策划服务的补充服务。如果用户已经“赞”或签到面包店、花店和活动策划服务中的一个或更多个,则系统可以生成向量表达式以确定向用户推荐的摄影师。作为示例而不是作为限制,用户可以签到农场女孩花店(Farmgirl Flowers),并且系统可以使用等式(6)来确定可能与用户相关的花店:
|argmin:γ(页面)|=γ(农场女孩花店)-γ(花店)+γ(摄影师) (6)
如在本文所使用的,|argmin:γ(页面)|表示最靠近目标点520(即,距目标点520最小距离)的页面的嵌入,其通过计算在等式(6)的右手侧上的向量运算来被确定。γ(农场女孩花店)表示农场女孩花店的页面的嵌入,γ(花店)表示花店的页面的嵌入,以及γ(摄影师)表示摄影师的页面的嵌入。一旦经由等式(6)获得了目标点520,系统就应用搜索算法来找到嵌入空间500中最接近目标点520的与页面的嵌入相对应的点540。作为示例而不是作为限制,对应于页面的嵌入的所识别的点540可以包括怀亚特摄影(Wyatt’sPhotography)(可以是对农场女孩花店的补充的摄影服务)的嵌入。在特定实施例中,社交网络系统160可以向用户的客户端系统130发送被识别为补充的一个或更多个页面以用于显示给用户。如上所述,可以以任何合适的方式将一个或更多个所识别的页面在客户端系统130处呈现给用户。
作为另一示例而不是作为限制,系统可以确定棒球是橄榄球的补充,并且系统可以知道用户“赞”明尼苏达维京人(Minnesota Vikings)橄榄球队的页面。为了给明尼苏达维京人队找到棒球队补充,系统可以使用等式(7):
|argmin:γ(页面)|=γ(维京人)-γ(橄榄球)+γ(棒球) (7)
如在本文所使用的,|argmin:γ(页面)|表示最靠近目标点520(即,距目标点520最小距离)的页面的嵌入,其通过计算在等式(7)的右手侧上的向量运算来被确定。γ(维京人)表示明尼苏达维京人队的页面的嵌入,γ(橄榄球)表示橄榄球的页面的嵌入,以及γ(棒球)表示棒球的页面的嵌入。一旦经由等式(7)获得了目标点520,系统就应用搜索算法来找到嵌入空间500中最接近目标点520的与页面的嵌入相对应的点540。作为示例而不是作为限制,对应于页面的嵌入的所识别的点540可以包括明尼苏达双城队(可以是对明尼苏达维京人橄榄球队的补充的棒球队)的嵌入。在特定实施例中,社交网络系统160可以向用户的客户端系统130发送被识别为补充的一个或更多个页面以用于显示给用户。如上所述,可以以任何合适的方式将一个或更多个所识别的页面在客户端系统130处呈现给用户。
在特定实施例中,嵌入空间500可以用于响应于由社交网络系统160的用户输入的查询来生成页面推荐。在实践中,用户可以输入问题、类比的开始(例如,A对B,如同C对D)、或者任何其他合适的用户输入,并且系统可以访问嵌入空间500以找到答案(即,页面)。作为示例而不是作为限制,用户可以输入:“在旧金山最好的寿司店是哪家?”系统可以确定用户“赞”了在丹佛的特定寿司餐馆的页面,因此系统然后可以使用等式(8)来在旧金山找到对于丹佛寿司餐馆的替代:
|argmin:γ(页面)|=γ(丹佛寿司)-γ(丹佛)+γ(旧金山) (8)
如在本文所使用的,|argmin:γ(页面)|表示最靠近目标点520(即,距目标点520最小距离)的页面的嵌入,其通过计算在等式(8)的右手侧上的向量运算来被确定。γ(丹佛寿司)表示丹佛寿司的页面的嵌入,γ(丹佛)表示丹佛的页面的嵌入,以及γ(旧金山)表示旧金山的页面的嵌入。一旦经由等式(8)获得了目标点520,系统就应用搜索算法来找到嵌入空间500中的最接近目标点520的与页面的嵌入相对应的点540。作为示例而不是作为限制,对应于页面的嵌入的所识别的点540可以包括SF寿司(在旧金山的餐馆,其可以是在丹佛的丹佛寿司的替代)的页面的嵌入。在特定实施例中,社交网络系统160可以向用户的客户端系统130发送被识别为补充的一个或更多个页面以用于显示给用户。如上所述,可以以任何合适的方式将一个或更多个所识别的页面在客户端系统130处呈现给用户。
尽管本公开将图5的特定实施例描述并示出为以特定方式实现,但是本公开设想了在任何合适的界面上出现并且如由任何合适的平台或系统实现的图5的任何合适的实施例。作为示例而不是作为限制,图5的特定实施例可以由客户端系统130、社交网络系统160、第三方系统170或任何其他合适的系统来实现。此外,尽管本公开描述并示出了执行图5的方法的特定步骤的特定部件、设备或系统,但是本公开设想了执行图5的方法的任何适当步骤的任何适当部件、设备或系统的任何适当组合。
图6示出了用于生成包括关于相关联实体属性的信息的实体的嵌入的示例方法600。该方法可以在步骤610开始,其中确定在第一组实体中的每个实体的嵌入。第一组实体选自多个实体。每个嵌入对应于嵌入空间中的点。嵌入空间包括对应于多个实体的嵌入的多个点。使用深度学习模型来确定实体的嵌入。在步骤620,确定在第一组实体属性中的每个实体属性的嵌入。在第一组实体属性中的每个实体属性具有实体属性类型。第一组实体属性的每个实体属性与多个实体中的至少一个实体相关联。使用深度学习模型来精化实体属性的嵌入。在步骤630,基于与相应实体相关联的实体属性的嵌入来修改在第一组实体中的实体的嵌入,以获得在第一组实体中的每个实体的已更新的嵌入,其中,已更新的嵌入包括关于与相应实体相关联的实体属性的信息。
在适当的情况下,特定实施例可以重复图6的方法的一个或更多个步骤。尽管本公开将图6的方法的特定步骤描述并示出为以特定顺序出现,但是本公开设想了以任何合适顺序出现的图6的方法的任何合适步骤。此外,尽管本公开描述并示出了用于生成包括关于相关联实体属性的信息的实体的嵌入、包括图6的方法的特定步骤的示例方法,但是本公开设想了用于生成包括关于相关联实体属性的信息的实体的嵌入、包括任何合适的步骤的任何合适的方法,在适当的情况下,这些步骤可以包括图6的方法的步骤中的全部、一些或不包括图6的方法的步骤。此外,尽管本公开描述并示出了执行图6的方法的特定步骤的特定部件、设备或系统,但是本公开设想了执行图6的方法的任何适当步骤的任何适当部件、设备或系统的任何适当组合。
系统和方法
图7示出了示例计算机系统700。在特定实施例中,一个或更多个计算机系统700执行本文描述或示出的一个或更多个方法的一个或更多个步骤。在特定实施例中,一个或更多个计算机系统700提供本文描述或示出的功能。在特定实施例中,在一个或更多个计算机系统700上运行的软件执行本文描述或示出的一个或更多个方法的一个或更多个步骤,或者提供本文描述或示出的功能。特定实施例包括一个或更多个计算机系统700的一个或更多个部分。在本文,在适当的情况下,对计算机系统的引用可以包括计算设备,反之亦然。此外,在适当的情况下,对计算机系统的引用可以包括一个或更多个计算机系统。
本公开设想了任何合适数量的计算机系统700。本公开设想了计算机系统700采取任何合适的物理形式。作为示例而不是作为限制,计算机系统700可以是嵌入式计算机系统、片上系统(SOC)、单板计算机系统(SBC)(例如,模块上计算机(COM)或模块上系统(SOM))、台式计算机系统、膝上型或笔记本计算机系统、交互式信息亭、大型机、计算机系统网状网、移动电话、个人数字助理(PDA)、服务器、平板计算机系统、或者这些的两个或更多个的组合。在适当的情况下,计算机系统700可以包括一个或更多个计算机系统700;是单一的或分布式的;跨越多个位置;跨越多台机器;跨越多个数据中心;或者驻留在云中,云可以包括在一个或更多个网络中的一个或更多个云部件。在适当的情况下,一个或更多个计算机系统700可以在没有实质性空间或时间限制的情况下,执行本文描述或示出的一个或更多个方法的一个或更多个步骤。作为示例而不是作为限制,一个或更多个计算机系统700可以实时地或以批处理模式来执行本文描述或示出的一个或更多个方法的一个或更多个步骤。在适当的情况下,一个或更多个计算机系统700可以在不同的时间或在不同的位置处执行本文描述或示出的一个或更多个方法的一个或更多个步骤。
在特定实施例中,计算机系统700包括处理器702、存储器704、存储装置706、输入/输出(I/O)接口708、通信接口710和总线712。尽管本公开描述并示出了具有在特定布置中的特定数量的特定部件的特定计算机系统,但是本公开设想了具有在任何合适布置中的任何合适数量的任何合适部件的任何合适的计算机系统。
在特定实施例中,处理器702包括用于执行指令(例如构成计算机程序的那些指令)的硬件。作为示例而不是作为限制,为了执行指令,处理器702可以从内部寄存器、内部高速缓存、存储器704或存储装置706中检索(或取回)指令;将它们解码并执行它们;以及然后将一个或更多个结果写到内部寄存器、内部高速缓存、存储器704或存储装置706。在特定实施例中,处理器702可以包括用于数据、指令或地址的一个或更多个内部高速缓存。在适当的情况下,本公开设想了处理器702包括任何合适数量的任何合适的内部高速缓存。作为示例而不是作为限制,处理器702可以包括一个或更多个指令高速缓存、一个或更多个数据高速缓存、以及一个或更多个转译后备缓冲器(TLB)。在指令高速缓存中的指令可以是在存储器704或存储装置706中的指令的副本,并且指令高速缓存可以加速处理器702对那些指令的检索。在数据高速缓存中的数据可以是在存储器704或存储装置706中的数据的副本,用于使在处理器702处执行的指令进行操作;在处理器702处执行的先前指令的结果,用于由在处理器702处执行的后续指令访问或者用于写到存储器704或存储装置706;或其他合适的数据。数据高速缓存可以加速由处理器702进行的读或写操作。TLB可以加速关于处理器702的虚拟地址转换。在特定实施例中,处理器702可以包括用于数据、指令或地址的一个或更多个内部寄存器。在适当的情况下,本公开设想了处理器702包括任何合适数量的任何合适的内部寄存器。在适当的情况下,处理器702可以包括一个或更多个算术逻辑单元(ALU);是多核处理器;或者包括一个或更多个处理器702。尽管本公开描述并示出了特定的处理器,但是本公开设想了任何合适的处理器。
在特定实施例中,存储器704包括用于存储用于使处理器702执行的指令或用于使处理器702操作的数据的主存储器。作为示例而不是作为限制,计算机系统700可以将指令从存储装置706或另一个源(例如,另一个计算机系统700)加载到存储器704。处理器702然后可以将指令从存储器704加载到内部寄存器或内部高速缓存。为了执行指令,处理器702可以从内部寄存器或内部高速缓存中检索指令并将它们解码。在指令的执行期间或之后,处理器702可以将一个或更多个结果(其可以是中间结果或最终结果)写到内部寄存器或内部高速缓存。处理器702然后可以将这些结果中的一个或更多个写到存储器704。在特定实施例中,处理器702仅执行在一个或更多个内部寄存器或内部高速缓存中或在存储器704(与存储装置706相对或其它地方)中的指令,并且仅对在一个或更多个内部寄存器或内部高速缓存中或在存储器704(与存储装置706相对或其它地方)中的数据进行操作。一个或更多个存储器总线(其可以各自包括地址总线和数据总线)可以将处理器702耦合到存储器704。如下所述,总线712可以包括一个或更多个存储器总线。在特定实施例中,一个或更多个存储器管理单元(MMU)驻留在处理器702和存储器704之间,并且便于由处理器702请求的对存储器704的访问。在特定实施例中,存储器704包括随机存取存储器(RAM)。在适当的情况下,该RAM可以是易失性存储器。在适当的情况下,该RAM可以是动态RAM(DRAM)或静态RAM(SRAM)。此外,在适当的情况下,该RAM可以是单端口RAM或多端口RAM。本公开设想了任何合适的RAM。在适当的情况下,存储器704可以包括一个或更多个存储器704。尽管本公开描述并示出了特定的存储器,但是本公开设想了任何合适的存储器。
在特定实施例中,存储装置706包括用于数据或指令的大容量存储装置。作为示例而不是作为限制,存储装置706可以包括硬盘驱动器(HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器、或这些中的两个或更多个的组合。在适当的情况下,存储装置706可以包括可移动或不可移动(或固定)介质。在适当的情况下,存储装置706可以在计算机系统700的内部或外部。在特定实施例中,存储装置706是非易失性固态存储器。在特定实施例中,存储装置706包括只读存储器(ROM)。在适当的情况下,该ROM可以是掩模编程ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可变ROM(EAROM)、或闪存、或这些中的两个或更多个的组合。本公开设想了大容量存储装置706采取任何合适的物理形式。在适当的情况下,存储装置706可以包括便于在处理器702和存储装置706之间的通信的一个或更多个存储装置控制单元。在适当的情况下,存储装置706可以包括一个或更多个存储装置706。尽管本公开描述并示出了特定的存储装置,但是本公开设想了任何合适的存储装置。
在特定实施例中,I/O接口708包括为在计算机系统700和一个或更多个I/O设备之间的通信提供一个或更多个接口的硬件、软件或两者。在适当的情况下,计算机系统700可以包括这些I/O设备中的一个或更多个。这些I/O设备中的一个或更多个可以实现在人和计算机系统700之间的通信。作为示例而不是作为限制,I/O设备可以包括键盘、小键盘、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静态摄像机、触笔、平板计算机、触摸屏、跟踪球、视频摄像机、另一个合适的I/O设备、或这些中的两个或更多个的组合。I/O设备可以包括一个或更多个传感器。本公开设想了任何合适的I/O设备以及用于它们的任何合适的I/O接口708。在适当的情况下,I/O接口708可以包括使处理器702能够驱动这些I/O设备中的一个或更多个的一个或更多个设备或软件驱动器。在适当的情况下,I/O接口708可以包括一个或更多个I/O接口708。尽管本公开描述并示出了特定的I/O接口,但是本公开设想了任何合适的I/O接口。
在特定实施例中,通信接口710包括提供用于在计算机系统700和一个或更多个其他计算机系统700或一个或更多个网络之间的通信(例如,基于分组的通信)的一个或更多个接口的硬件、软件或两者。作为示例而不是作为限制,通信接口710可以包括用于与以太网或其他基于有线的网络进行通信的网络接口控制器(NIC)或网络适配器,或用于与无线网络(例如WI-FI网络)进行通信的无线NIC(WNIC)或无线适配器。本公开设想了任何合适的网络和用于它的任何合适的通信接口710。作为示例而不是作为限制,计算机系统700可以与自组织网络、个域网(PAN)、局域网(LAN)、广域网(WAN)、城域网(MAN)或互联网的一个或更多个部分、或这些中的两个或更多个的组合进行通信。这些网络中的一个或更多个的一个或更多个部分可以是有线的或无线的。作为示例,计算机系统700可以与无线PAN(WPAN)(例如蓝牙WPAN)、WI-FI网络、WI-MAX网络、蜂窝电话网络(例如,全球移动通信系统(GSM)网络)、或其他合适的无线网络、或这些中的两个或更多个的组合进行通信。在适当的情况下,计算机系统700可以包括用于这些网络中的任一个的任何合适的通信接口710。在适当的情况下,通信接口710可以包括一个或更多个通信接口710。尽管本公开描述并示出了特定的通信接口,但是本公开设想了任何合适的通信接口。
在特定实施例中,总线712包括将计算机系统700的部件耦合到彼此的硬件、软件或两者。作为示例而不是作为限制,总线712可以包括加速图形端口(AGP)或其他图形总线、扩展工业标准体系结构(EISA)总线、前端总线(FSB)、HYPERTRANSPORT(HT)互连、工业标准体系结构(ISA)总线、INFINIBAND互连、低引脚数(LPC)总线、存储器总线,微通道体系结构(MCA)总线、外围部件互连(PCI)总线、PCI-Express(扩展)(PCIe)总线、串行高级技术附件(SATA)总线、视频电子标准协会本地(VLB)总线、或任何其他合适的总线、或这些中的两个或更多个的组合。在适当的情况下,总线712可以包括一个或更多个总线712。尽管本公开描述并示出了特定总线,但是本公开设想了任何合适的总线或互连。
在本文,在适当的情况下,一个或更多个计算机可读非暂时性存储介质可以包括一个或更多个基于半导体的或其他集成电路(IC)(例如,现场可编程门阵列(FPGA)或专用IC(ASIC))、硬盘驱动器(HDD)、混合硬盘驱动器(HHD)、光盘、光盘驱动器(ODD)、磁光盘、磁光盘驱动器、软盘、软盘驱动器(FDD)、磁带、固态驱动器(SSD)、RAM驱动器、安全数字(SECURE DIGITAL)卡或驱动器、任何其他合适的计算机可读非暂时性存储介质、或这些中的两个或更多个的组合。在适当的情况下,计算机可读非暂时性存储介质可以是易失性的、非易失性的或者易失性和非易失性的组合。
其他
本文中,除非另有明确指示或通过上下文另有指示,否则“或”是包括一切的而非排他性的。因此在本文,除非另有明确指示或通过上下文另有指示,否则“A或B”意指“A、B或两者”。此外,除非另有明确指示或通过上下文另有指示,否则“和”既是联合的又是各自的。因此在本文,除非另有明确指示或通过上下文另有指示,否则“A和B”意指“A和B,联合地或各自地”。
本公开的范围包括本领域中的普通技术人员将理解的对本文描述或示出的示例实施例的所有改变、替换、变化、变更和修改。本公开的范围不限于本文描述或示出的示例实施例。此外,尽管本公开将本文的相应实施例描述并示为包括特定的部件、元件、特征、功能、操作或步骤,但是这些实施例中的任何一个可以包括本领域中的普通技术人员将理解的在本文任何地方描述或示出的任何部件、元件、特征、功能、操作或步骤的任何组合或置换。此外,在所附权利要求中对适合于、被布置成、能够、被配置成、实现来、可操作来、或操作来执行特定功能的装置或系统或装置或系统的部件的引用包括该装置、系统、部件,无论它或那个特定功能是否被激活、开启或解锁,只要该装置、系统或部件是如此被调整、被布置、有能力的、被配置、实现、可操作的、或操作的。

Claims (33)

1.一种方法,包括:
由一个或更多个计算设备确定在第一组实体中的每个实体的嵌入,其中:
所述第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
所述嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定所述实体的嵌入;
由一个或更多个计算设备确定在第一组实体属性中的每个实体属性的嵌入,其中:
在所述第一组实体属性中的每个实体属性具有实体属性类型,
所述第一组实体属性中的每个实体属性与所述多个实体中的至少一个实体相关联,以及
使用所述深度学习模型来精化所述实体属性的嵌入;以及
由一个或更多个计算设备基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体中的实体的嵌入,以获得在所述第一组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
2.根据权利要求1所述的方法,还包括:
确定在第二组实体中的每个实体的嵌入,所述第二组实体选自所述多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在所述第二组实体属性中的每个实体具有所述实体属性类型;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体和所述第二组实体中的实体的嵌入,以获得在所述第一组实体和所述第二组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
3.根据权利要求1所述的方法,其中,修改所述每个实体的嵌入包括用与相应实体相关联的所述实体属性的嵌入来对所述第一组实体中的所述每个实体的嵌入进行池化。
4.根据权利要求1所述的方法,其中,所述多个实体包括在社交网络系统中的多个页面。
5.根据权利要求4所述的方法,其中,所述实体属性类型是与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、或与页面相关联的用户。
6.根据权利要求1所述的方法,其中,使用Skip-Gram负下采样来训练所述深度学习模型。
7.根据权利要求1所述的方法,其中,在所述嵌入空间中的每个嵌入对应于相应的向量表示。
8.根据权利要求7所述的方法,还包括:
检测与社交网络系统的用户相关联的上下文项目已经从第一上下文改变到第二上下文;以及
通过下列操作来将一个或更多个嵌入识别为与所述第二上下文相关:
使用向量运算来确定在所述嵌入空间中的与所述第二上下文相关联的点,以及
将搜索算法应用于所述嵌入空间,其中,对应于所识别的实体的一个或更多个嵌入的点在与所述嵌入空间中的与所述第二上下文相关联的所确定的点相对应的点的阈值距离内。
9.根据权利要求7所述的方法,还包括:
接收查询,所述查询由用户输入;
将所述查询转变成向量表达式;
计算所述向量表达式以识别在所述嵌入空间中的与所述查询相关联的点;以及
通过将搜索算法应用于所述嵌入空间来将一个或更多个实体识别为与所述查询相关,其中,对应于所识别的实体的一个或更多个嵌入的点在与所述嵌入空间中的与所述查询相关联的所识别的点相对应的点的阈值距离内。
10.体现软件的一个或更多个计算机可读非暂时性存储介质,所述软件当被执行时可操作来:
确定在第一组实体中的每个实体的嵌入,其中:
所述第一组实体选自多个实体,
每个嵌入对应于在嵌入空间中的点,
所述嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定所述实体的嵌入;
确定在第一组实体属性中的每个实体属性的嵌入,其中:
在所述第一组实体属性中的每个实体属性具有实体属性类型,
所述第一组实体属性中的每个实体属性与所述多个实体中的至少一个实体相关联,以及
使用所述深度学习模型来精化所述实体属性的嵌入;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体中的实体的嵌入,以获得在所述第一组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
11.根据权利要求10所述的介质,还包括:
确定在第二组实体中的每个实体的嵌入,所述第二组实体选自所述多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在所述第二组实体属性中的每个实体具有所述实体属性类型;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体和所述第二组实体中的实体的嵌入,以获得在所述第一组实体和所述第二组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
12.根据权利要求10所述的介质,其中,修改所述每个实体的嵌入包括用与相应实体相关联的所述实体属性的嵌入来对所述第一组实体中的所述每个实体的嵌入进行池化。
13.根据权利要求10所述的介质,其中,所述多个实体包括在社交网络系统中的多个页面。
14.根据权利要求13所述的介质,其中,所述实体属性类型是与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、或与页面相关联的用户。
15.一种系统,包括:一个或更多个处理器;以及耦合到所述处理器的包括指令的存储器,所述指令是由所述处理器可执行的,所述处理器在执行所述指令时可操作来:
确定在第一组实体中的每个实体的嵌入,其中:
所述第一组实体选自多个实体,
每个嵌入对应于在嵌入空间中的点,
所述嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定所述实体的嵌入;
确定在第一组实体属性中的每个实体属性的嵌入,其中:
在所述第一组实体属性中的每个实体属性具有实体属性类型,
所述第一组实体属性中的每个实体属性与所述多个实体中的至少一个实体相关联,以及
使用所述深度学习模型来精化所述实体属性的嵌入;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体中的实体的嵌入,以获得在所述第一组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
16.根据权利要求15所述的系统,还包括:
确定在第二组实体中的每个实体的嵌入,所述第二组实体选自所述多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在所述第二组实体属性中的每个实体具有所述实体属性类型;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体和所述第二组实体中的实体的嵌入,以获得在所述第一组实体和所述第二组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
17.根据权利要求15所述的系统,其中,修改所述每个实体的嵌入包括用与相应实体相关联的所述实体属性的嵌入来对所述第一组实体中的所述每个实体的嵌入进行池化。
18.根据权利要求15所述的系统,其中,所述多个实体包括在社交网络系统中的多个页面。
19.根据权利要求18所述的系统,其中,所述实体属性类型是与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、或与页面相关联的用户。
20.一种计算机实现的方法,用于在嵌入空间中嵌入对应于存储在数据储存器中的数据对象的一组实体,所述方法包括:
由一个或更多个计算设备确定在第一组实体中的每个实体的嵌入,其中:
所述第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
所述嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定所述实体的嵌入;
由一个或更多个计算设备确定在第一组实体属性中的每个实体属性的嵌入,其中:
在所述第一组实体属性中的每个实体属性具有实体属性类型,
所述第一组实体属性中的每个实体属性与所述多个实体中的至少一个实体相关联,以及
使用所述深度学习模型来精化所述实体属性的嵌入;以及
由一个或更多个计算设备基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体中的实体的嵌入,以获得在所述第一组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
21.根据权利要求20所述的方法,还包括:
确定在第二组实体中的每个实体的嵌入,所述第二组实体选自所述多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在所述第二组实体属性中的每个实体具有所述实体属性类型;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体和所述第二组实体中的实体的嵌入,以获得在所述第一组实体和所述第二组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
22.根据权利要求20或21所述的方法,其中,修改所述每个实体的嵌入包括用与相应实体相关联的所述实体属性的嵌入来对所述第一组实体中的所述每个实体的嵌入进行池化。
23.根据权利要求20至22中的任一项所述的方法,其中,所述多个实体包括下列项中的至少一项:
在社交网络系统中的多个页面,
与社交图实体相关联的页面,
网页,以及
任何其他合适的实体;
和/或
其中,所述实体属性类型对应于下列项中的至少一项:
与页面相关联的主题,
与页面相关联的类别,
与页面相关联的位置,
与页面相关联的用户,
与页面相关联的大小,以及
实体的任何其他合适的性质。
24.根据权利要求20至23中的任一项所述的方法,其中,使用Skip-Gram负下采样来训练所述深度学习模型。
25.根据权利要求20至24中的任一项所述的方法,其中,在所述嵌入空间中的每个嵌入对应于相应的向量表示;
所述方法优选地还包括:
检测与社交网络系统的用户相关联的上下文项目已经从第一上下文改变到第二上下文;以及
通过下列操作来将一个或更多个嵌入识别为与所述第二上下文相关:
使用向量运算来确定在所述嵌入空间中的与所述第二上下文相关联的点,以及
将搜索算法应用于所述嵌入空间,其中,对应于所识别的实体的一个或更多个嵌入的点在与所述嵌入空间中的与所述第二上下文相关联的所确定的点相对应的点的阈值距离内;和/或
所述方法优选地还包括:
接收查询,所述查询由用户输入;
将所述查询转变成向量表达式;
计算所述向量表达式以识别在所述嵌入空间中的与所述查询相关联的点;以及
通过将搜索算法应用于所述嵌入空间来将一个或更多个实体识别为与所述查询相关,其中,对应于所述识别的实体的一个或更多个嵌入的点在与所述嵌入空间中的与所述查询相关联的所识别的点相对应的点的阈值距离内。
26.体现软件的一个或更多个计算机可读非暂时性存储介质,所述软件在被执行时可操作来:
确定在第一组实体中的每个实体的嵌入,其中:
所述第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
所述嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定所述实体的嵌入;
确定在第一组实体属性中的每个实体属性的嵌入,其中:
在所述第一组实体属性中的每个实体属性具有实体属性类型,
所述第一组实体属性中的每个实体属性与所述多个实体中的至少一个实体相关联,以及
使用所述深度学习模型来精化所述实体属性的嵌入;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体中的实体的嵌入,以获得在所述第一组实体中每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
27.根据权利要求26所述的介质,还包括:
确定在第二组实体中的每个实体的嵌入,所述第二组实体选自所述多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在所述第二组实体属性中的每个实体具有所述实体属性类型;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体和所述第二组实体中的实体的嵌入,以获得在所述第一组实体和所述第二组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
28.根据权利要求26或27所述的介质,其中,修改所述每个实体的嵌入包括用与相应实体相关联的所述实体属性的嵌入来对所述第一组实体中的所述每个实体的嵌入进行池化。
29.根据权利要求26至28中的任一项所述的介质,其中,所述多个实体包括在社交网络系统中的多个页面;
优选地其中,所述实体属性类型是与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、或与页面相关联的用户。
30.一种系统,包括:一个或更多个处理器;以及耦合到所述处理器的包括指令的存储器,所述指令是由所述处理器可执行的,所述处理器在执行所述指令时可操作来:
确定在第一组实体中的每个实体的嵌入,其中:
所述第一组实体选自多个实体,
每个嵌入对应于嵌入空间中的点,
所述嵌入空间包括对应于多个实体的嵌入的多个点,以及
使用深度学习模型来确定所述实体的嵌入;
确定在第一组实体属性中的每个实体属性的嵌入,其中:
在所述第一组实体属性中的每个实体属性具有实体属性类型,
所述第一组实体属性中的每个实体属性与所述多个实体中的至少一个实体相关联,以及
使用所述深度学习模型来精化所述实体属性的嵌入;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体中的实体的嵌入,以获得在所述第一组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
31.根据权利要求30所述的系统,还包括:
确定在第二组实体中的每个实体的嵌入,所述第二组实体选自所述多个实体;
确定在第二组实体属性中的每个实体属性的嵌入,其中,在所述第二组实体属性中的每个实体具有所述实体属性类型;以及
基于与相应实体相关联的所述实体属性的嵌入来修改在所述第一组实体和所述第二组实体中的实体的嵌入,以获得在所述第一组实体和所述第二组实体中的每个实体的已更新的嵌入,其中,所述已更新的嵌入包括关于与相应实体相关联的所述实体属性的信息。
32.根据权利要求31或32所述的系统,其中,修改所述每个实体的嵌入包括用与所述相应实体相关联的所述实体属性的所述嵌入来对所述第一组实体中的所述每个实体的嵌入进行池化。
33.根据权利要求31至32中的任一项所述的系统,其中,所述多个实体包括在社交网络系统中的多个页面;
优选地其中,所述实体属性类型是与页面相关联的主题、与页面相关联的类别、与页面相关联的位置、或与页面相关联的用户。
CN201680091895.1A 2016-10-28 2016-12-02 使用深度学习模型来生成推荐 Pending CN110140134A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/337,978 US11361242B2 (en) 2016-10-28 2016-10-28 Generating recommendations using a deep-learning model
US15/337,978 2016-10-28
PCT/US2016/064535 WO2018080557A1 (en) 2016-10-28 2016-12-02 Generating recommendations using a deep-learning model

Publications (1)

Publication Number Publication Date
CN110140134A true CN110140134A (zh) 2019-08-16

Family

ID=62021553

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680091895.1A Pending CN110140134A (zh) 2016-10-28 2016-12-02 使用深度学习模型来生成推荐

Country Status (5)

Country Link
US (2) US11361242B2 (zh)
JP (1) JP6744993B2 (zh)
KR (1) KR20190064641A (zh)
CN (1) CN110140134A (zh)
WO (1) WO2018080557A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110214310A (zh) * 2016-12-05 2019-09-06 脸谱公司 基于所预测的用户偏好来定制内容

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019241145A1 (en) 2018-06-12 2019-12-19 Intergraph Corporation Artificial intelligence applications for computer-aided dispatch systems
WO2020123124A1 (en) 2018-12-14 2020-06-18 Google Llc Methods, systems, and media for identifying videos containing objectionable content
US11361365B2 (en) * 2019-02-25 2022-06-14 Etsy, Inc. Intuitive entity navigation
US11263400B2 (en) 2019-07-05 2022-03-01 Google Llc Identifying entity attribute relations
US11886971B2 (en) 2019-08-15 2024-01-30 Microsoft Technology Licensing, Llc Multiple-entity-based recommendation system
US11184301B2 (en) * 2019-08-15 2021-11-23 Microsoft Technology Licensing, Llc Message recommendation system
KR20210046487A (ko) * 2019-10-18 2021-04-28 삼성전자주식회사 데이터 베이스에 포함된 데이터를 분석하는 데이터 분석 장치 및 방법
KR102223382B1 (ko) * 2019-11-14 2021-03-08 숭실대학교산학협력단 다중타입 엔티티에 기반한 지식 보완 방법 및 장치
JP2021135722A (ja) * 2020-02-26 2021-09-13 国立大学法人 東京大学 情報処理装置、及びプログラム
US11818091B2 (en) * 2020-05-10 2023-11-14 Salesforce, Inc. Embeddings-based discovery and exposure of communication platform features
WO2021255484A1 (en) * 2020-06-18 2021-12-23 Citrix Systems, Inc. Autonomous learning of entity values in artificial intelligence conversational systems
WO2022150450A1 (en) * 2021-01-07 2022-07-14 Ritual Mobile, Inc. Automatically generating parameters for enterprise programs and initiatives
US20220382424A1 (en) * 2021-05-26 2022-12-01 Intuit Inc. Smart navigation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9037464B1 (en) * 2013-01-15 2015-05-19 Google Inc. Computing numeric representations of words in a high-dimensional space
EP2887237A1 (en) * 2013-12-19 2015-06-24 Facebook, Inc. Generating recommended search queries on online social networks
US9147154B2 (en) * 2013-03-13 2015-09-29 Google Inc. Classifying resources using a deep network
CN105190597A (zh) * 2012-12-13 2015-12-23 微软技术许可有限责任公司 基于社交的信息推荐系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0211488D0 (en) 2002-05-18 2002-06-26 Univ Aston Information embedding method
US9110922B2 (en) 2010-02-01 2015-08-18 Google Inc. Joint embedding for item association
US9324113B2 (en) * 2011-10-12 2016-04-26 Microsoft Technology Licensing, Llc Presenting social network connections on a search engine results page
US9075824B2 (en) 2012-04-27 2015-07-07 Xerox Corporation Retrieval system and method leveraging category-level labels
US9129227B1 (en) 2012-12-31 2015-09-08 Google Inc. Methods, systems, and media for recommending content items based on topics
US9535960B2 (en) * 2014-04-14 2017-01-03 Microsoft Corporation Context-sensitive search using a deep learning model
US10193902B1 (en) * 2015-11-02 2019-01-29 Deep Instinct Ltd. Methods and systems for malware detection
US10706351B2 (en) * 2016-08-30 2020-07-07 American Software Safety Reliability Company Recurrent encoder and decoder

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105190597A (zh) * 2012-12-13 2015-12-23 微软技术许可有限责任公司 基于社交的信息推荐系统
US9037464B1 (en) * 2013-01-15 2015-05-19 Google Inc. Computing numeric representations of words in a high-dimensional space
US9147154B2 (en) * 2013-03-13 2015-09-29 Google Inc. Classifying resources using a deep network
EP2887237A1 (en) * 2013-12-19 2015-06-24 Facebook, Inc. Generating recommended search queries on online social networks

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MANAAL FARUQUI等: "Retrofitting word vectors to semantic lexicons", 《RXIV:1411.4166V4 [CS.CL]》 *
郑麟等: "基于属性提升与局部采样的推荐评分预测", 《计算机学报》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110214310A (zh) * 2016-12-05 2019-09-06 脸谱公司 基于所预测的用户偏好来定制内容

Also Published As

Publication number Publication date
JP2020503590A (ja) 2020-01-30
US11361242B2 (en) 2022-06-14
US11710079B2 (en) 2023-07-25
KR20190064641A (ko) 2019-06-10
US20180121827A1 (en) 2018-05-03
WO2018080557A1 (en) 2018-05-03
US20220300859A1 (en) 2022-09-22
JP6744993B2 (ja) 2020-08-19

Similar Documents

Publication Publication Date Title
CN110140134A (zh) 使用深度学习模型来生成推荐
JP6689389B2 (ja) ディープラーニングモデルを用いたエンティティの識別
US10496896B2 (en) Generating object proposals using deep-learning models
JP6511429B2 (ja) 対話履歴に基づくユーザ体験インターフェースまたはユーザ・インターフェース
US10496895B2 (en) Generating refined object proposals using deep-learning models
CN105378727B (zh) 将逆算子用于在在线社交网络上查询
CN107403388B (zh) 用于结构化搜索查询的语法模型
CN108292309A (zh) 使用深度学习模型识别内容项
US10699320B2 (en) Marketplace feed ranking on online social networks
US20160155063A1 (en) Iterative Classifier Training on Online Social Networks
US20160041982A1 (en) Conditioned Search Ranking Models on Online Social Networks
CN105917330A (zh) 用于在线社交网络的客户端搜索模板
CN107924553B (zh) 地理度量
CN105874500A (zh) 生成离线内容
CN106716399A (zh) 排序在线社交网络上的外部内容
CN105283841B (zh) 应用定制的对象再利用和再循环
EP3188086A1 (en) Identifying entities using a deep-learning model
US20150113060A1 (en) Node properties in a social-networking system
US10652188B2 (en) Tracking post viewership
US20170351680A1 (en) Profile with Third-Party Content
CN105264526B (zh) 基于垂直的查询选择化
EP3166025A1 (en) Identifying content items using a deep-learning model

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: California, USA

Applicant after: Yuan platform Co.

Address before: California, USA

Applicant before: Facebook, Inc.

WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190816