CN104781813B - 用于结构化搜索查询的语法模型 - Google Patents
用于结构化搜索查询的语法模型 Download PDFInfo
- Publication number
- CN104781813B CN104781813B CN201380059164.5A CN201380059164A CN104781813B CN 104781813 B CN104781813 B CN 104781813B CN 201380059164 A CN201380059164 A CN 201380059164A CN 104781813 B CN104781813 B CN 104781813B
- Authority
- CN
- China
- Prior art keywords
- user
- recognized
- grammer
- node
- score
- 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.)
- Active
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
-
- 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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/288—Entity relationship models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
-
- 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/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- 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/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Abstract
在一种实施方式中,一种方法包括:访问包括多个节点和多条边的社交图谱;接收非结构化文本查询;识别对应于文本查询的n元语法的节点和边;访问与上下文无关的语法模型;识别具有对应于所识别节点和边的查询令牌的语法;确定每项所识别语法的得分;以及随后基于所识别的语法根据由语法生成的字串生成结构化查询。
Description
技术领域
本公开整体涉及社交图谱和对社交网络环境中的对象执行搜索。
背景技术
可包括社交网络网站的社交网络系统可以能够使其用户(诸如,个人或者组织)与其交互并且通过社交网络系统彼此交互。社交网络系统可利用来自用户的输入创建与该用户相关联的用户资料并且将用户资料存储在社交网络系统中。用户资料可包括用户的人口统计信息、通信信道信息、以及个人兴趣信息。社交网络系统还可利用来自用户的输入创建并且存储用户与社交网络系统中的其他用户的关系记录以及提供便于两两用户或者多个用户之间的社交交互的服务(例如,壁纸、照片分享、事件组织、消息、游戏或者广告)。
社交网络系统可通过一个或者多个网络将与其服务有关的内容或者消息传输至用户的移动或者其他计算设备。用户还可将软件应用安装在用户的移动或者其他计算设备上,以用于访问该用户的用户资料和社交网络系统内的其他数据。社交网络系统可生成显示给用户的一组个性化内容对象,诸如连接至该用户的其他用户的累积故事的新鲜事。
社交图谱分析在由节点和边构成的网络理论方面考察社交关系。节点表示网络中的各个动作者,并且边表示动作者之间的关系。通常,基于图谱生成的结构非常复杂。可能存在多种类型的节点和用于连接节点的多种类型的边。就其最简单的形式而言,社交图谱是所研究的所有节点之间的所有相关边的布局图。
发明内容
在具体实施方式中,社交网络系统响应于从用户接收的文本查询可生成包括对应于所识别的社交图谱元素的查询令牌的结构化查询。通过响应于用户的文本查询而提供建议的结构化查询,社交网络系统可基于其社交图谱属性及其各个社交图谱元素的关系为在线社交网络中的用户提供搜索社交图谱中所表示的元素的有力方式。
在具体实施方式中,社交网络系统可从用户接收大致非结构化的文本查询。因此,社交网络系统可访问社交图谱并且然后对文本查询进行解析,以识别对应于来自文本查询中的n元语法的社交图谱元素。社交网络系统可通过确定每种n元语法对应于具体社交图谱元素的概率而识别这些对应的社交图谱元素。然后,社交网络系统可访问诸如与上下文无关的语法模型的语法模型。所识别的社交图谱元素可被用作语法模型的语法中的终端令牌(“查询令牌”),并且然后,可存储每种语法。具有比阈值得分更大的得分的语法可用于生成包括引用所识别的社交图谱元素的查询令牌的结构化查询。该结构化查询随后可被传输和显示给用户,其中,用户随后可选择适当的查询以搜索希望的内容。
附图说明
图1示出了与社交网络系统相关联的示例性网络环境。
图2示出了示例性社交图谱。
图3示出了在线社交网络的示例性网页。
图4A-4B示出了社交网络的示例性查询。
图5示出了用于使用与上下文无关的语法模型来生成结构化搜索查询的示例性方法。
图6示出了示例性计算机系统。
具体实施方式
系统概述
图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中的两条或者更多条的组合。网络环境100中的链路150不需要必须相同。就一个或者多个方面而言,一条或者多条第一链路150可以不同于一条或者多条第二链路150。
在具体实施方式中,客户端系统130可以是包括硬件、软件或者嵌入式逻辑部件、或者该等部件的两种或者更多种的组合并且能够完成由客户端系统130实现或者支持的合适功能的电子设备。作为实施例但并不作为限制,客户端系统130可包括诸如桌面型计算机、笔记本或者膝上型计算机、笔记本、平板电脑等计算机系统、电子书阅读器、GPS设备、照相机、个人数字助理(PDA)、手持式电子设备、蜂窝电话、智能手机、其他合适的电子设备或者其任意合适组合。本公开考虑任意合适的客户端系统130。客户端系统130能够使客户端系统130处的网络用户访问网络110。客户端系统130能够使其用户与其他客户端系统130处的其他用户通信。
在具体实施方式中,客户端系统130可包括诸如微软IE浏览器(MICROSOFTINTERNET EXPLORER)、谷歌浏览器(GOOGLECHROME)或者火狐浏览器(MOZILLA FIREFOX)等网络浏览器132,并且可具有一个或者多个附加件、插件或者诸如工具栏或雅虎工具栏等其他扩展。客户端系统130处的用户可输入统一资源定位符(URL)或者将网络浏览器132导向至具体服务器(诸如,服务器162或者与第三方系统170相关联的服务器)的其他地址,并且网络浏览器132可生成超文本传输协议(HTTP)请求并且将HTTP请求通信至服务器。服务器可接受HTTP请求并且响应HTTP请求而将一个或者多个超文本标记语言(HTML)文件通信至客户端系统130。客户端系统130可基于来自服务器的HTML文件对用于呈现给用户的网页进行渲染。本公开考虑任意合适的网页文件。作为实施例但并不作为限制,可根据具体需要从HTML文件、可扩展超文本标记语言(XHTML)文件或者可扩展标记语言(XML)文件渲染网页。例如但并不限于,这些页面还可执行诸如以JAVASCRIPT、JAVA、MICROSOFT SILVERLIGHT、标记语言的组合编写的脚本以及诸如AJAX(异步JAVASCRIPT和XML)等脚本。此处,所引用的网页包括一个或者多个对应的网页文件(浏览器可使用网页文件对网页进行渲染),且反之亦然,视情况而定。
在具体实施方式中,社交网络系统160可以是托管在线社交网络的网络可寻址计算系统。例如,社交网络系统160可生成、存储、接收并且传输诸如用户资料数据、概念资料数据、社交图谱信息等社交网络数据或者与在线社交网络有关的其他合适数据。网络环境100中的其他部件可直接或者经由网络110访问社交网络系统160。在具体实施方式中,社交网络系统160可包括一个或者多个服务器162。每个服务器162均可以是单式服务器或者跨多台计算机或多个数据中心的分布式服务器。例如但不限于,服务器162可以为多种类型,诸如,例如网络服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用服务器、交换服务器、数据库服务器、代理服务器、适用于执行此处所描述的功能或者过程的另一服务器、或者其任意组合等。在具体实施方式中,每个服务器162均可包括硬件、软件或者嵌入式逻辑部件、或者该等部件中的两种或者更多种的组合,以用于完成由服务器162实现或者支持的适当功能。在具体实施方式中,社交网络系统164可包括一个或者多个数据存储器164。可以使用数据存储器164存储各种类型的信息。在具体实施方式中,可以根据特定数据结构组织存储在数据存储器164中的信息。在具体实施方式中,每个数据存储器164可以是相关数据库。具体实施方式可提供能够使客户端系统130、社交网络系统160或者第三方系统170管理、检索、修改、添加或者删除存储在数据存储器164中的信息的接口。
在具体实施方式中,社交网络系统160可将一个或者多个社交图谱存储在一个或者多个数据存储器164中。在具体实施方式中,社交图谱可包括多个节点(可包括多个用户节点(每个均对应于具体用户))或者多个概念节点(每个均对应于具体概念)和连接节点的多条边。社交网络系统160可为在线社交网络中的用户提供与其他用户通信和交互的能力。在具体实施方式中,用户可经由社交网络系统160加入在线社交网络,且然后添加社交网络系统160中用户希望与其连接的多个其他用户的连接(即,关系)。此处,术语“朋友”可指社交网络系统160中用户已经由社交网络系统160与其形成连接、关联或关系的任何其他用户。
在具体实施方式中,社交网络系统160可为用户提供对由社交网络系统160支持的各种类型的项或者对象施加动作的能力。作为实施例但并不作为限制,项和对象可包括社交网络系统160中的用户所属于的团体或者社交网络、用户可能感兴趣的事件或者日历条目、用户可以使用的计算机类应用、允许用户经由服务购买或者出售物品的交易、用户可执行的广告交互或者其他合适的项或者对象。用户可与社交网络系统160中能够表示的任何事物交互或者通过第三方系统170的外部系统与任何事物交互,第三方系统170的外部系统与社交网络系统160分离并且经由网络110耦接至社交网络系统160。
在具体实施方式中,社交网络系统160能够链接各个实体。作为实施例但并不作为限制,社交网络系统160能够使用户彼此交互以及从第三方系统170或者其他实体接收内容,或者允许用户通过应用程序编程接口(API)或者其他通信信道与这些实体交互。
在具体实施方式中,第三方系统170可包括一种或者多种类型的服务器、一个或者多个数据存储器、一个或者多个接口,其中包括但不限于API、一个或者多个网络服务、一种或者多种内容来源、一个或者多个网络或者(例如,服务器可与其通信的)任何其他合适部件。可由不同于操作社交网络系统160的实体的实体操作第三方系统170。然而,在具体实施方式中,社交网络系统160和第三方系统170可彼此结合运行,以将社交网络服务提供给社交网络系统160或者第三方系统170中的用户。就这种意义而言,社交网络系统160可提供用于使诸如第三方系统170等其他系统将社交网络服务和功能提供给因特网上的用户的平台或者中枢链路。
在具体实施方式中,第三方系统170可包括第三方内容对象供应商。第三方内容对象供应商可包括被通信至客户端系统130的内容对象的一个或者多个来源。作为实施例但并不作为限制,内容对象可包括关于用户感兴趣的事物或者活动的信息,诸如,例如电影放映时间、电影评论、餐馆评论、餐馆菜单、产品信息及评论或者其他合适的信息等。作为另一实施例但并不作为限制,内容对象可包括诸如息票、打折票、礼品券或者其他合适的激励型对象等的激励型内容对象。
在具体实施方式中,社交网络系统160还包括用户生成内容对象,该用户生成内容对象可增强用户与社交网络系统160的交互。用户生成内容可包括用户可添加、上传、发送或者“发布”到社交网络系统160上的任何事物。作为实施例但并不作为限制,用户从客户端系统130将帖子通信至社交网络系统160。帖子可包括诸如状态更新或者其他文本数据、位置信息、照片、视频、链接、音乐或者其他类似数据或者媒体等的数据。第三方还可通过诸如新闻递送或者流等“通信信道”将内容添加到社交网络系统160中。
在具体实施方式中,社交网络系统160可包括各种服务器、子系统、程序、模块、日志以及数据存储器。在具体实施方式中,社交网络系统160可包括下列中的一种或者多种:网络服务器、动作记录器、API请求服务器、相关性及排列引擎、内容对象分类器、通知控制器、动作日志、第三方内容对象曝光日志、推理模块、授权/隐私服务器、搜索模块、广告目标模块、用户界面模块、用户资料存储器、连接存储器、第三方内容存储器或者位置存储器。社交网络系统160还可包括诸如网络接口、安全机制、负载平衡器、失败服务器、管理和网络操作控制台、其他合适的部件或者其任何合适的组合等的合适的部件。在具体实施方式中,社交网络系统160可包括用于存储用户资料的一个或者多个用户资料存储器。例如,用户资料可包括传记信息、人口统计信息、行为信息、社交信息或者其他类型的描述性信息,诸如工作经历、教育背景、嗜好或者喜好、兴趣、亲缘关系、或者位置等。兴趣信息可包括与一个或者多个类别有关的兴趣。类别可以为一般类别或者特殊类别。作为实施例但并不作为限制,如果用户“喜欢”关于鞋子品牌的文章,则该类别可以是“鞋”或“服装”的品牌或者一般类别。连接存储器可用于存储关于用户的连接信息。连接信息可指示具有相似或者共同工作经历、团体成员关系、嗜好、教育背景或者以任何方式与共同属性有关或者享有共同属性的用户。连接信息还可包括不同用户与内容(内部和外部)之间的用户定义连接。网络服务器可用于经由网络110将社交网络系统160链接至一个或多个客户端系统130或者一个或多个第三方系统170。网络服务器可包括用于接收消息并且在社交网络系统160与一个或者多个客户端系统130之间路由消息的邮件服务器或者其他消息功能。API请求服务器可允许第三方系统170通过调用一个或者多个API访问社交网络系统160中的信息。动作记录器可用于从网络服务器接收关于用户在社交网络系统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相关联的网站或者与网络应用服务器相关联的第三方网站)、实体(诸如,例如人、公司、团体、体育团、或者名人等)、位于社交网络系统160内或者位于诸如网络应用服务器等外部服务器上的资源(诸如,例如音频文件、视频文件、数码照片、文本文件、结构化文档或者应用等)、不动产或者知识产权(诸如,例如雕刻、油画、电影、游戏、歌曲、理念、照片或者书写作品等)、游戏、活动、理念或理论、另一合适的概念、或者该等概念中的两种或者更多种。概念节点204可以与由用户提供的概念信息相关联或者与通过包括社交网络系统160的各个系统收集的信息相关联。作为实施例但并不作为限制,概念信息可包括名称或者标题、一个或者多个图像(例如,书籍封面页图像)、位置(例如,地址或者地理位置)、网站(可与URL相关联)、联系人信息(例如,电话号码或者电子邮件地址)、其他合适的概念信息或者该信息的任何合适组合。在具体实施方式中,概念节点204可以与对应于与概念节点204相关联的信息的一个或者多个数据对象相关联。在具体实施方式中,概念节点204可对应于一个或者多个网页。
在具体实施方式中,社交图谱200中的节点可表示网页(可被称之为“资料页面”)或者网页可表示社交图谱200中的节点。资料页面可被托管在社交网络系统160中或者社交网络系统160可访问资料页面。资料页面还可托管在与第三方服务器170相关联的第三方网站中。作为实施例但并不作为限制,对应于具体外部网页的资料页面可以是该具体的外部网页,并且资料页面可对应于具体的概念节点204。其他用户的所有或者选择子集可查看资料页面。作为实施例但并不作为限制,用户节点202可具有对应的用户资料页面,其中,对应用户可添加内容、发布声明或者以其他方式表达其自身。作为另一实施例但并不作为限制,概念节点204可具有对应的概念资料页面,其中,一个或者多个用户可具体针对对应于概念节点204的概念添加内容、发布声明或者表达其自身。
在具体实施方式中,概念节点204可表示由第三方系统170托管的第三方网页或者资源。第三方网页或者资源可包括其他元素之中的内容、可选择图标或者其他图标、或者表示动作或行动的其他相互作用对象(例如,以JavaScript、AJAX、或者PHP码实现)。作为实施例但并不作为限制,第三方网页可包括诸如“赞”、“签到”、“吃”、“推荐”或者另一合适的动作或行动的可选择图标。查看第三方网页的用户可通过选择图标中的一个(例如,“吃”)执行动作,从而致使客户端系统130将指示用户动作的消息传输至社交网络系统160。社交网络系统160可响应于该消息在对应于用户的用户节点202与对应于第三方网页或者资源的概念节点204之间创建边(例如,“吃”边)并且将边206存储在一个或者多个数据存储器中。
在具体实施方式中,社交图谱200中的一对节点可以通过一条或者多条边206彼此连接。连接一对节点的边206可表示该对节点之间的关系。在具体实施方式中,边206可包括或者表示一个或者多个数据对象或者对应于一对节点之间的关系的属性。作为实施例但并不作为限制,第一用户可指示第二用户成为第一用户的“朋友”。社交网络系统160可响应于该指示向第二用户发送“朋友请求”。如果第二用户确认“朋友请求”,则社交网络系统160可在社交图谱200中创建将第一用户的用户节点202连接至第二用户的用户节点202的边206并且将边206作为社交图谱信息存储在一个或者多个数据存储器24中。在图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并且在对应于用户的用户节点202与对应于应用的概念节点204之间创建“使用”边(如图2所示),以指示用户收听该歌曲并且使用该应用。而且,社交网络系统160可在对应于歌曲与应用的概念节点204之间创建“播放”边206(如图2所示),以指示通过该具体应用播放该具体歌曲。在这种情况下,“播放”边206对应于通过外部应用(SPOTIFY)对外部音频文件(歌曲“Imagine”)执行的动作。尽管本公开描述了具有连接用户节点202和概念节点204的具体属性的具体边206,然而本公开考虑具有连接用户节点202和概念节点204的任何合适属性的任何合适边206。而且,尽管本公开描述了用户节点202与概念节点204之间的表示单一关系的边,然而本公开考虑用户节点202与概念节点204之间的表示一种或者多种关系的边。作为实施例但并不作为限制,边206可表示用户既喜欢具体概念又使用了该具体概念。可替代地,另一边206可表示用户节点202与概念节点204之间(如图2所示,用户“E”的用户节点202与“SPOTIFY”的概念节点204之间)的各种类型的关系(或者多种单一关系)。
在具体实施方式中,社交网络系统160可在社交图谱200中创建用户节点202与概念节点204之间的边206。作为实施例但并不作为限制,(诸如,例如通过使用由用户的客户端系统130托管的网络浏览器或者特殊目的的应用)查看概念资料页面的用户可通过单击或者选择“赞”图标指示其喜欢由概念节点204表示的概念,单击或者选择“赞”图标可致使用户的客户端系统130将指示用户喜欢与概念资料页面相关联的概念的消息发送给社交网络系统160。如用户与概念节点204之间的“喜欢”边206所示,社交网络系统160可响应于该消息在与用户相关联的用户节点202与概念节点204之间创建边206。在具体实施方式中,社交网络系统160可将边206存储在一个或者多个数据存储器中。在具体实施方式中,社交网络系统160可响应于具体的用户动作自动形成边206。作为实施例但并不作为限制,如果用户上传图片、观看电影或者收听歌曲,则可在对应于第一用户的用户节点202与对应于这些概念的概念节点204之间形成边206。尽管本公开描述了以具体方式形成具体边206,然而本公开考虑以任意合适方式形成任何合适的边206。
预键入过程
在具体实施方式中,一个或者多个客户端和/或后端(服务器端)处理实现并且利用“预键入”特征以自动尝试使对应于相应的现有用户节点202或者概念节点204的概念与用户当前以输入形式输入的结合所请求网页(诸如通过社交网络系统160可托管或者可访问的用户资料页面等)渲染的信息相匹配。在具体实施方式中,当用户输入文本以发布声明时,预键入特征尝试使在声明中输入的文本字符串与对应于社交图谱200中的现有概念(或者用户)和对应概念(或者用户)节点的字符串(例如,名称)相匹配。在具体实施方式中,当找出匹配时,预键入特征可利用对现有节点的节点的引用(诸如,例如节点名称、节点ID或者另一合适的引用或者标识符等)来自动填充该表格。
在具体实施方式中,当用户将文本键入或者以其他方式输入到用于在用户的资料页面或者其他页面的各个部分中添加内容或者发布声明的表格中时,预键入过程可与在社交网络系统160处(或者内)(例如,在服务器162内)执行的一个或者多个前端(客户端)和/后端(服务器端)预键入过程(以下简称为“预键入过程”)结合一起运行,以交互式地或者几乎即时(对用户看似如此)地尝试使用对应于现有社交图谱实体的名称的一个或者多个术语、或者与现有社交图谱实体相关联的术语、被确定为与用户输入文本字符时所输入的文本字符最为相关联或者最为匹配的术语自动填充该表格。预键入过程利用社交图谱数据库中的社交图谱信息或者从社交图谱数据库中提取或者加索引的信息(其中包括与节点和边相关联的信息)结合社交图谱数据库中的信息以及潜在地结合位于社交网络系统160内或者在社交网络系统160内执行的各个其他过程、应用或者数据库,能够以高精确度预测用户的目的声明。然而,社交网络系统160还使用户自由输入其希望的任何声明,从而能够使用户自由地表达其自身。
在具体实施方式中,当用户将文本字符输入到表框或者其他字段中时,预键入过程可尝试识别与用户输入字符时在用户声明中输入的字符串匹配的现有社交图谱元素(例如,用户节点202、概念节点204或者边206)。在具体实施方式中,当用户将字符输入到表框中时,预键入过程可读取所输入文本字符的字串。当执行每个按键时,前端预键入过程可将输入的字符串作为请求(或者调用)发送给在社交网络系统160内执行的后端预键入过程。在具体实施方式中,预键入过程可经由AJAX(异步JavaScript和XML)或者其他合适技术(具体地,异步技术)通信。在一种具体实施方式中,该请求是或者包括能够快速或者动态发送或者获取结果的XMLHTTP请求(XHR)。在具体实施方式中,预键入过程还可在请求之前、之后或者与请求一起发送识别其中用户发布声明的具体页面的具体部分的部分标识符(部分ID)。在具体实施方式中,还可发送用户ID参数,但是在一些实施方式中,由于用户已被“告知”登录到社交网络系统160,所以不需要发送用户ID参数。
在具体实施方式中,预键入过程可使用一种或者多种匹配算法来尝试识别匹配的社交图谱元素。在具体实施方式中,当找出一个或者多个匹配时,预键入过程可(可利用AJAX或者其他合适的技术)向用户的客户端系统130发送响应,例如,其中包括匹配社交图谱元素的名称(名称字串)以及潜在地与匹配社交图谱元素相关联的其他元数据。作为实施例但并不作为限制,如果用户将字符“pok”输入到查询字段中,则预键入过程可显示下拉菜单,该下拉菜单显示与现有资料页面和相应用户节点202或者概念节点204匹配的名称(例如,命名为或者提供“poker”的资料页面),用户则可单击或者以其他方式选择这些名称,从而确认希望声明对应于所选择节点的匹配用户或者概念名称。作为另一实施例但并不作为限制,一旦单击“poker”,则预键入过程可使用声明“poker”自动填充或者致使网络浏览器132自动填充查询字段。在具体实施方式中,预键入过程可仅使用匹配排列靠前的名称或者其他标识符自动填充该字段,而非显示下拉菜单。然后,用户仅通过键入其键盘上的“回车”键或者通过单击自动填充声明而确认自动填充声明。
在于2010年4月19日提交的美国专利申请第12/763162号和于2012年7月23日提交的美国专利申请第13/556072号中可以找到关于预键入过程的更多信息,将其通过引用结合在此。
结构化搜索查询
图3示出了在线社交网络的示例性网页。在具体实施方式中,用户可通过将文本查询输入到查询字段350中将查询提交至社交网络系统160。在线社交网络的用户可通过将描述主题的短语提供至搜索引擎而搜索与特定主题(例如,用户、概念、外部内容或者资源)有关的信息,通常被称之为“搜索查询”。查询可以是非结构化文本查询并且可包括一个或多个文本字串或者一种或多种n元语法。总之,用户可将任何字符串输入到查询字段350中,以搜索社交网络系统160中与文本查询匹配的内容。社交网络系统160则可搜索数据存储器164(或者更具体地,社交图谱数据库),以识别与查询匹配的内容。搜索引擎可基于查询短语使用各种搜索算法进行搜索并且生成识别与搜索查询最为可能相关的资源或者内容(例如,用户资料页面、内容资料页面、或者外部资源)的搜索结果。为了进行搜索,用户可将搜索查询输入或者发送至搜索引擎。因此,搜索引擎可识别可能与搜索查询有关的一种或者多种资源,该一种或者多种资源可被统称为搜索查询所识别的“搜索结果”。例如,识别内容可包括社交图谱实体(即,用户节点202、概念节点204、边206)、资料页面、外部网页、或者其任意组合。然后,社交网络系统160可利用对应于识别内容的搜索结果生成搜索结果网页。搜索结果通常以搜索结果网页上的链接列表形式被呈现给用户,每个链接均与包含一些识别资源或者内容的不同网页相关联。在具体实施方式中,搜索结果中的每个链接均可以为统一资源定位符(URL)形式,该统一资源定位符指定了对应网页所在的位置和用于对其进行检索的机制。然后,社交网络系统160可将搜索结果网页发送至用户客户端系统130上的用户网络浏览器132。用户则可单击URL链接或者通过其他方式从搜索结果网页中选择内容,以访问社交网络系统160或者外部系统中的内容,视情况而定。可根据资源与搜索查询的相对关联度排列资源并且呈现给用户。还可根据搜索结果与用户的相对关联度排列搜索结果并且呈现给用户。换言之,例如,可以基于社交图谱信息、用户信息、用户的搜索或者浏览历史或者与用户有关的其他合适信息使查询用户的搜索结果个性化。在具体实施方式中,通过由搜索引擎实现的排列算法可确定资源排列。作为实施例但并不作为限制,与搜索查询或者用户较为相关的资源可以比与搜索查询或者用户较不相关的资源排列得更靠前。在具体实施方式中,搜索引擎可使其搜索局限于在线社交网络上的资源和内容。然而,在具体实施方式中,搜索引擎还可搜索诸如第三方系统170、因特网或者万维网、或者其他合适来源的其他来源上的资源或者内容。尽管本公开描述了以具体方式查询社交网络系统160,然而本公开考虑以任意合适方式查询社交网络系统160。
在具体实施方式中,此处所描述的预键入过程可适用于由用户输入的搜索查询。作为实施例但并不作为限制,当用户将文本字符输入到搜索字段中时,预键入过程可尝试识别在用户输入字符时与输入搜索字段的字符串匹配的一个或者多个用户节点202、概念节点204或者边206。当预键入过程从文本查询接收包括字串或者n元语法的请求或者调用时,预键入过程可执行或者致使被执行搜索,以识别具有与输入文本匹配的相应名称、类型、类别或者其他标识符的现有社交图谱元素(即,用户节点202、概念节点204、边206)。预键入过程可使用一种或者多种匹配算法尝试识别匹配的节点或者边。当找出一个或者多个匹配时,预键入过程可向用户的客户端系统130发送响应,例如,其中可包括匹配节点的名称(名称字串)以及潜在地与匹配节点相关联的其他元数据。然后,预键入过程可显示下拉菜单300,下拉菜单300显示与现有资料页面和相应用户节点202或者概念节点204匹配的名称,并且显示可连接至匹配用户节点202或者概念节点204的匹配的边206的名称,用户则可单击或者以其他方式选择所匹配的边206的名称,从而确认希望搜索匹配用户或者对应于所选择节点的概念名称,或者通过匹配边搜索连接至匹配用户或者概念的用户或者概念。可替代地,预键入过程可简单使用排列在首位的匹配的名称或者其他标识符来自动填充该表格,而非显示下拉菜单300。然后,用户可仅通过键盘上的按键“回车”或者通过单击自动填充声明来确认自动填充声明。一旦用户确认了匹配节点和边,预键入过程则可发送请求,以将用户对包含匹配社交图谱元素的查询的确认通知给社交网络系统160。社交网络系统160可响应于发送的请求自动(或者可替代地,基于请求中的指令)调用或者以其他方式搜索社交图谱数据库,以获得匹配的社交图谱元素或者连接至匹配社交图谱元素的社交图谱元素,视情况而定。尽管本公开描述了以具体方式将预键入过程应用于搜索查询,然而本公开考虑以任意合适方式将预键入过程应用于搜索查询。
使用与上下文无关的语法模型的解析查询
图4A至图4B示出了社交网络的示例性查询。在具体实施方式中,社交网络系统160可响应于从第一用户(即,查询用户)接收的文本查询生成包括对应于一个或者多个识别的社交图谱元素的查询令牌的一项或者多项结构化查询。图4A至图4B示出了查询字段350中的各种示例性文本查询和由此在下拉菜单300中生成的各种结构化查询。通过响应于用户的文本查询提供建议的结构化查询,社交网络系统160可基于其社交图谱属性和其与各种社交图谱元素的关系提供使在线社交网络中的用户搜索社交图谱200中所表示的元素的有力方式。结构化查询可允许查询用户搜索社交图谱200中通过具体边类型连接至具体用户或者概念的内容。作为实施例但并不作为限制,社交网络系统160可从第一用户接收大致非结构化文本查询。因此,社交网络系统160(例如,经由服务器侧元件检测过程)可访问社交图谱200并且然后对文本查询进行解析,以识别对应于来自文本查询中的n元语法的社交图谱元素。社交网络系统160可通过确定每种n元语法对应于具体社交图谱元素的概率来识别这些对应的社交图谱元素。社交网络系统160则可访问诸如与上下文无关的语法模型等语法模型。已识别的社交图谱元素可被用作语法中的终端令牌(“查询令牌”),并且然后可存储每种语法。具有比阈值得分更大的得分的语法可用于生成包括引用已识别社交图谱元素的查询令牌的结构化查询。然后,结构化查询可被发送至第一用户并且(例如,经由客户端预键入过程)显示在下拉菜单300中,其中,第一用户则可选择搜索希望内容的适当查询。使用此处所描述的结构化查询的一些优点包括基于有限信息查找在线社交网络的用户,从而基于该内容与各个社交图谱元素的关系将在线社交网络中的内容的虚拟索引桥接在一起,或者找出与您和/或您朋友有关的内容。尽管本公开描述了并且图4A和图4B示出了以具体方式生成具体结构化查询,然而本公开考虑以任意合适方式生成任何合适的结构化查询。
在具体实施方式中,社交网络系统160可从查询/第一用户(对应于第一用户节点202)接收大致非结构化文本查询。作为实施例但并不作为限制,第一用户可能希望搜索其他用户,即(1)第一用户的第一重要程度的朋友;以及(2)与斯坦福大学相关联(即,用户节点202通过边206连接至对应于学校“Stanford”的概念节点204)。然后,如图4A和图4B所示,第一用户将文本查询“朋友斯坦福(friend stanford)”输入到查询字段350中。如下拉菜单300中所示,当第一用户将文本查询输入到查询字段350中时,社交网络系统160可提供各种建议的结构化查询。如此处使用的,大致非结构化文本查询是指由用户输入的简单文本字串。当然,可以根据标准语法/语法规则(例如,英语语法)构造文本查询。然而,通常将根据社交图谱元素构造文本查询。换言之,简单的文本查询通常不包括对具体社交图谱元素的嵌入式引用。因此,如此处使用的,结构化查询是指包含对具体社交图谱元素的引用的查询,从而允许搜索引擎基于所识别元素进行搜索。尽管本公开描述了以具体方式接收具体查询,然而本公开考虑以任意合适方式接收任意合适查询。
在具体实施方式中,社交网络系统160可对从第一用户(即,查询用户)接收的大致非结构化文本查询(也被简称为“搜索查询”)进行解析,以识别一种或者多种n元语法。总之,n元语法是给定文本或者语音序列中的n项的连续序列。多个项可以是该序列的文本或者语音中的字符、音素、音节、字母、词、基础对、前缀或者其他可识别的项。n元语法可包括由查询用户输入的文本中的一个或者多个字符(字母、数字、标点等)。大小为一的n元语法可被称之为“一元语法”,大小为二的n元语法可被称之为“二元语法”或者“双元语法”,大小为三的n元语法可被称之为“三元语法”等。每种n元语法均可包括从查询用户接收的文本查询中的一个或者多个部分。在具体实施方式中,每种n元语法均可包括由第一用户输入的字符串(例如,文本中的一个或者多个字符)。作为实施例但并不作为限制,社交网络系统160可对文本查询“朋友斯坦福(friend stanford)”进行解析,以识别下列n元语法“朋友(friend)、斯坦福(stanford)、朋友斯坦福(friend stanford)”。作为实施例但并不作为限制,社交网络系统160可对文本查询“在帕洛阿尔托的朋友(friends in palo alto)”进行解析,以识别下列n元语法“朋友(friends)、在(in)、帕洛(palo)、阿尔托(alto)、在…的朋友(friends in)、在帕洛(in palo)、帕洛阿尔托(palo alto)、在帕洛的朋友(friend inpalo)、也在帕洛(in palo also)、在帕洛阿尔托的朋友(friends in palo alto)”。在具体实施方式中,每种n元语法均可包括文本查询中的n项的连续序列。尽管本公开描述了以具体方式对具体查询进行解析,然而本公开考虑以任意合适方式对任意合适查询进行解析。
在具体实施方式中,社交网络系统160可针对在文本查询中识别的每种n元语法确定或者计算该n元语法对应于社交图谱元素的得分。例如,得分可以是置信得分、概率、质量、排列、另一合适类型的得分或者其任意组合。作为实施例但并不作为限制,社交网络系统160可确定n元语法对应于社交图谱元素(诸如社交图谱200中的用户节点202、概念节点204或者边206等)的概率得分(也被简称为“概率”)。概率得分可指示n元语法与具体社交图谱元素之间的相似性或者关联性级别。存在计算概率的多种不同方式。本公开考虑计算在搜索查询中已识别的n元语法的概率得分的任意合适方法。在具体实施方式中,社交网络系统160可确定n元语法对应于具体社交图谱元素的概率p。给定具体搜索查询X,可以将概率p计算为对应于具体社交图谱元素k的概率。换言之,可以将概率计算为p=(k|X)。作为实施例但并不是限制,可将n元语法对应于社交图谱元素的概率计算为以pi,j,k表示的概率得分。输入可以是文本查询X=(x1,x2,…,xN)和一组分类。对于各个(i:j)和分类k,社交网络系统160可计算pi,j,k=p(class(xi:j)=k|X)。作为实施例但并不作为限制,可以针对下列社交图谱元素对n元语法“斯坦福(stanford)”进行打分如下:学校“斯坦福大学(StanfordUniversity)”=0.7;位置“加利福尼亚州斯坦福(Stanford,California)”=0.2;用户“Allen Stanford”=0.1。作为另一实施例但并不作为限制,可以针对下列社交图谱元素对n元语法“朋友(friends)”进行打分如下:用户“朋友(friends)”=0.9;电视秀“老友记(Friends)”=0.1。在具体实施方式中,社交网络系统160可使用向前向后算法确定具体n元语法对应于具体社交图谱元素的概率。对于文本查询中给定的n元语法,社交网络系统160可使用之前的n元语法和后续的n元语法来确定对应于给定n元语法的具体社交图谱元素。尽管本公开描述了以具体方式确定对应于社交图谱元素的n元语法,然而本公开考虑以任意合适方式确定对应于社交图谱元素的n元语法。而且,尽管本公开描述了使用具体类型的打分确定对应于社交图谱元素的n元语法,然而本公开考虑使用任意合适类型的打分确定对应于社交图谱元素的n元语法。
在具体实施方式中,社交网络系统160可识别具有比边阈值概率更大的概率的一条或者多条边206。所识别的边206中的每条均可对应于n元语法中的至少一种。作为实施例但并不作为限制,如果pi,j,k>pedge-threshold,则n元语法仅可被识别为对应于边k。而且,所识别的边206中的每条均可连接至所识别节点中的至少一个。换言之,社交网络系统160仅可识别边206或者连接至用户节点202的边类型或者之前被识别为对应于具体n元语法的概念节点204。未连接至任一之前识别节点的边206或者边类型通常不可能对应于搜索查询中的具体n元语法。通过过滤或者忽略这些边206和边类型,社交网络系统160可更为有效地搜索社交图谱以获得相关的社交图谱元素。作为实施例但并不作为限制,参考图2,对于包含“去斯坦福(went to Stanford)”的文本查询,其中,所识别的概念节点204是学校“斯坦福(Stanford)”,社交网络系统160可识别对应于“就职于”的边206和对应于“就读于”的边206,这两条边206皆连接至“斯坦福(Stanford)”的概念节点204。因此,n元语法“去(wentto)”可被识别为对应于这些边206。然而,对于相同的文本查询,因为“斯坦福(Stanford)”节点并不具有与其连接的任何该等边,所以社交网络系统160可以不识别社交图谱200中对应于“喜欢”或者“迷恋”的边206。尽管本公开描述了以具体方式识别对应于n元语法的边206,然而本公开考虑以任意合适方式识别对应于n元语法的边206。
在具体实施方式中,社交网络系统160可识别具有比节点阈值概率更大的概率的一个或者多个用户节点202或概念节点204。所识别节点中的每个均可对应于n元语法中的至少一种。作为实施例但并不作为限制,如果pi,j,k>pnode-threshold,则n元语法仅可被识别为对应于节点k。而且,所识别的用户节点202或者概念节点204中的每个均可连接至所识别的边206中的至少一条。换言之,社交网络系统160仅可识别连接至之前被识别为对应于具体n元语法的边206的识别节点或者节点类型。未连接至任何之前识别边206的节点或者节点类型通常不可能对应于搜索查询中的具体n元语法。通过过滤或者忽略这些节点和节点类型,社交网络系统160可更为有效地搜索社交图谱以获得相关社交图谱元素。作为实施例但并不作为限制,对于包含“就职于苹果”的文本查询,其中,所识别的边206是“就职于”,社交网络系统160可识别对应于苹果公司的概念节点204,对应于苹果公司的概念节点204可具有与其连接的“就职于”的多条边206。然而,对于相同的文本查询,社交网络系统160可以不识别对应于水果类型“苹果”的概念节点204,对应于水果类型“苹果”的概念节点204可具有与其连接的多条“喜欢”或者“迷恋”边,但不具有“就职于”的边连接。在具体实施方式中,对于用户节点202和概念节点204,节点阈值概率可不同。如果pi,j,k>puser-node-threshold,则n元语法可被识别为对应于用户节点302kuser,而如果pi,j,k>pconcept-node-threshold,则n元语法可被识别为对应于概念节点304kconcept。在具体实施方式中,社交网络系统160可仅识别位于对应于第一用户(即,查询用户)的用户节点202的阈值隔离度内的节点。例如,该阈值隔离度可以是一、二、三或者全部。尽管本公开描述了以具体方式识别对应于n元语法的节点,然而本公开考虑以任意合适方式识别对应于n元语法的节点。
在具体实施方式中,社交网络系统160可访问包括多种语法的与上下文无关的语法模型。语法模型中的每种语法均可包括可被查询令牌取代的一个或者多个非终端符号。语法模型是用于正式语言字串的一组信息规则。为了生成语言形式的字串,以仅由单一起始符号构成的字串开始。然后,按照任意顺序应用生成规则,直至不再生成既不包含起始符号又不包含指定非终端符号的字串为止。在与上下文无关的语法中,语法的各个非终端符号的生成与由语法的其他非终端符号生成的字串无关。非终端符号可以被终端符号(即,终端令牌或者查询令牌)取代。如上所述,查询令牌中的一些可对应于所识别节点或者所识别的边。通过语法生成的字串则可被用作包含对所识别节点或者所识别的边的引用的结构化查询。与上下文无关的语法是其中每种生成规则的左手边仅由单个非终端符号构成的语法。概率性的与上下文无关的语法是元组<Σ,N,S,P>,其中,不相交集Σ和N分别指定终端和非终端符号,且S∈N是起始符号,P是乘积集,即,采用形式E→ξ(p),其中,E∈N、ξ∈(Σ∪N)+、并且p=Pr(E→ξ),即,E被展开成字串ξ的概率。对给定非终端E的所有扩展的概率p总和必须是一。尽管本公开描述了访问具体语法,然而本公开考虑任意合适的语法。
在具体实施方式中,社交网络系统160可识别具有对应于之前所识别节点和边的查询令牌的一种或者多种语法。换言之,如果已识别的节点或者已识别的边可被用作具体语法中的查询令牌,则通过社交网络系统160可将该语法识别为用于生成结构化查询的可行语法。这是自底至上解析的有效类型。其中,使用可能的查询令牌确定适用于该查询的适用语法。作为实施例但并不作为限制,示例性语法可以是[用户][用户过滤器][学校]。然后,可基于接收文本查询中的n元语法确定非终端符号[用户]、[用户过滤器]以及[学校]。例如,对于文本查询“朋友斯坦福”,可以使用语法如“[朋友][去][斯坦福大学]”或者“[朋友][就职于][斯坦福大学]”对该查询进行解析。作为另一实施例但并不作为限制,示例性语法可以是[用户][用户过滤器][位置]。例如,对于文本查询“朋友斯坦福”,可以通过使用语法如“[朋友][生活在][加利福尼亚州斯坦福]”对该查询进行解析。在上述两种示例性情况下,如果接收文本查询中的n元语法可被用作语法的查询令牌,则通过社交网络系统160可识别这些语法。同样,如果接收的文本查询包括可以不用作语法的查询令牌的n元语法,则可以不识别该语法。尽管本公开描述了以具体方式识别具体语法,然而本公开考虑以任意合适方式识别任意合适语法。
在具体实施方式中,社交网络系统160可确定每种识别语法的得分。例如,该得分可以是置信得分、概率、质量、排列、另一合适类型的得分或者其任意组合。得分可以基于与语法的查询令牌相关联的个体得分或者概率。如果使用具有相对较高个体得分的查询令牌,则语法可具有相对较高的得分。作为实施例但并不作为限制,继续之前实施例,可以针对下列社交图谱元素对n元语法“斯坦福”进行打分如下:学校“斯坦福大学”=0.7;位置“加利福尼亚州斯坦福”=0.2;用户“Allen Stanford”=0.1。可以针对下列社交图谱元素对n元语法“朋友”进行打分如下:用户“朋友”=0.9;电视秀“老友记”=0.1。因此,如果使用用于用户“朋友”和学校“斯坦福大学”的查询令牌(例如,生成字串“就读于斯坦福大学的朋友”)(两者皆具有相对较高的个体得分),则语法[用户][用户过滤器][学校]可具有相对较高的得分。相反,如果使用用于用户“朋友”和用户“Allen Stanford”的查询令牌(例如,生成字串“斯坦福的朋友Allen Stanford的朋友”),则因为后者查询令牌具有相对较低的个体得分,所以语法[用户][用户过滤器][用户]可能具有相对较低的得分。尽管本公开描述了以具体方式确定具体语法的具体得分,然而本公开考虑以任意合适方式确定任意合适语法的任意合适得分。
在具体实施方式中,社交网络系统160可基于对应于语法的查询令牌的社交图谱元素与查询用户(即,第一用户,对应于第一用户节点202)的关联性确定已识别语法的得分。用户节点202和通过边206直接连接至第一用户节点202的概念节点204可被视为与第一用户相关联。因此,包括对应于这些相关联节点和边的查询令牌的语法可被视为更与查询用户相关联。作为实施例但并不作为限制,通过边206连接至第一用户节点202的概念节点204可被视为与第一用户节点202相关联。如此处使用的,当引用社交图谱200时,术语“连接”指社交图谱200中的两个节点之间存在路径,其中,该路径可包括一条或者多条边206和零个或者多个中间节点。在具体实施方式中,经由一个或者多个中间节点(并且由此两条或者多条边206)连接至第一用户节点202的节点也可被视为与第一用户相关联。而且,在具体实施方式中,第二节点越接近于第一用户节点,第二节点越被视为与第一用户节点相关联。即,使第一用户节点202与具体用户节点202或者概念节点204隔离的边206越少(即,隔离度越少),则用户节点202或者概念节点204越被视为与第一用户相关联。作为实施例但并不作为限制,如图2所示,对应于学校“斯坦福”的概念节点204连接至对应于用户“C”的用户节点202,并且由此,概念“斯坦福”可被视为与用户“C”相关联。作为另一实施例但并不作为限制,对应于用户“A”的用户节点202经由一个中间节点和两条边206(即,对应于用户“B”的中间用户节点202)连接至对应于用户“C”的用户节点202,并且由此用户“A”可被视为与用户“C”相关联,但是因为用户“A”的用户节点202是相对于用户“C”的二度连接,所以该具体概念节点204可被视为与通过单条边206连接至用户“C”的用户节点较不关联,例如,对应于用户“B”的用户节点202。作为另一实施例但并不作为限制,“在线扑克(Online Poker)”(即,在线多用户游戏)的概念节点不通过社交图谱200中的任何路径连接至用户“C”的用户节点,并且由此概念“在线扑克(Online Poker)”可以不被视为与用户“C”相关联。在具体实施方式中,如果第二节点位于第一用户节点202的阈值隔离度内,则第二节点仅可被视为与第一用户相关联。作为实施例但并不作为限制,如果阈值隔离度是三,则对应于用户“D”的用户节点202可被视为与对应于食谱“Chicken Parmesan”的概念节点204相关联,用户节点202和概念节点204在图2中所示的社交图谱200中彼此位于三度内。然而,继续该实施例,概念节点204和用户节点202在社交图谱200中位于四度以上,所以对应于应用“关于食谱的一切(All About Recipes)”的概念节点204将不被视为与对应于用户“D”的用户节点202相关联。尽管本公开描述了以具体方式确定具体社交图谱元素(并且由此的其对应的查询令牌)是否彼此相关联,然而,本公开考虑以任意合适方式确定任意合适的社交图谱元素是否彼此相关联。而且,尽管本公开描述了确定对应于用户节点202和概念节点204的具体查询令牌是否与查询用户相关联,然而本公开同样考虑确定任意合适的查询令牌(并且由此的任意合适的节点)是否与任意其他合适的用户相关联。
在具体实施方式中,社交网络系统160可基于对应于语法的查询令牌的社交图谱信息确定已识别语法的得分。作为实施例但并不作为限制,当确定n元语法对应于具体社交图谱元素的概率p时,概率的计算也可作为一种因素计入社交图谱信息中。因此,给定具体搜索查询X和社交图谱信息G,可将对应于具体社交图谱元素k的概率计算为p=(k|X,G)。然后,使用已识别节点和边的个体概率可确定将这些社交图谱元素作为查询令牌的语法的得分。在具体实施方式中,已识别语法的得分可基于第一用户节点202与作为语法查询令牌而使用的具体社交图谱元素之间的隔离度。语法具有对应于社交图谱200中比距用户较远(即,更大隔离度)的社交图谱元素更接近于查询用户(即,该元素与第一用户节点202之间的隔离度更小)的社交图谱元素的查询令牌。作为实施例但并不作为限制,参考图2,如果用户“B”输入文本查询“chicken”,则具有对应于概念节点204(通过边206连接至用户“B”)的食谱“Chicken Parmesan”的查询令牌的语法可以比社交图谱200中具有对应于与n元语法鸡相关联的未连接至用户“B”的其他节点(例如,对应于“鸡块”或者“小鸡跳舞”的概念节点204)的查询令牌的语法具有相对更高的得分。在具体实施方式中,已识别语法的得分可基于对应于语法的查询令牌的识别边206。如果社交网络系统160已经识别对应于接收文本查询中的n元语法的一条或者多条边,则当通过语法确定文本查询的具体解析得分时,可考虑这些已识别的边。如果具体语法包括对应已识别节点和已识别边的查询令牌,如果已识别节点实际上不连接至已识别边中的任一条,则该具体语法可被分配零分或者空白分。在具体实施方式中,已识别语法的得分可以基于连接至对应于语法的查询令牌的节点的边206的条数。包括对应于具有更多连接边206的节点的查询令牌的语法可能更受欢迎并且更可能成为搜索查询的目标。作为实施例但并不作为限制,如果“加利福尼亚州斯坦福”的概念节点204仅被五条边连接,而“斯坦福大学”的概念节点204被五千条边连接,则当确定包含对应于这些节点中的任一个的查询令牌的语法得分时,因为有连接至前者概念节点204的更多边,所以社交网络系统160可确定引用“斯坦福大学”的概念节点204的语法比引用“加利福尼亚州斯坦福”的概念节点204的语法具有相对更高的得分。在具体实施方式中,已识别语法的得分可基于与第一用户(即,查询用户)相关联的搜索历史,所以具有对应于第一用户之前已经访问的节点的查询令牌的语法、或者具有与第一用户之前已经访问的节点相关联的查询令牌的语法更为可能成为第一用户的搜索查询目标。因此,这些语法可被给定更高的得分。作为实施例但并不作为限制,如果第一用户之前已经访问“斯坦福大学”资料页面,但是未曾访问“加利福尼亚州斯坦福”资料页面,则当确定具有对应于这些概念的查询令牌的语法得分时,因为查询用户之前已经访问学校的概念节点204,所以社交网络系统160可确定“斯坦福大学”的概念节点204具有相对较高的得分,并且由此使用对应查询令牌的语法。作为另一实施例但并不作为限制,如果第一用户之前已经访问电视秀“老友记”的概念资料页面,则当确定具有对应于该概念的查询令牌的语法得分时,因为查询用户之前已经访问该电视秀的概念节点204,所以社交网络系统160可确定对应于电视秀“老友记”的概念节点204具有相对较高得分,并且由此使用对应查询令牌的语法。尽管本公开描述了以具体方式基于具体社交图谱信息确定具体语法的得分,然而本公开考虑以任意合适方式基于任意合适的社交图谱信息确定任意合适语法的得分。
在具体实施方式中,社交网络系统160可选择具有比语法阈值得分更大的得分的一种或者多种语法。选择语法中的每种均可包含对应于已识别节点中的至少一个或者已识别边中的至少一条的查询令牌(对应于接收文本查询的n元语法)。在具体实施方式中,可基于其确定得分排列语法,并且仅可选择位于阈值排序内的语法(例如,前七个)。尽管本公开描述了以具体方式选择语法,然而本公开考虑以任意合适方式选择语法。
在具体实施方式中,社交网络系统160可生成对应于具有比语法阈值得分更大的得分的识别语法的一项或者多项结构化查询。每项结构化查询均可基于通过对应识别语法生成的字串。作为实施例但并不作为限制,语法[用户][用户过滤器][学校]可响应文本查询“朋友斯坦福”生成“就读于斯坦福大学的朋友“的字串,其中,语法中的非终端令牌[用户]、[用户过滤器]、[学校]被终端令牌[朋友]、[谁就读于]以及[斯坦福大学]取代,以生成字串。每项结构化查询均可包括对应于相应识别语法的查询令牌,其中,这些查询令牌对应于已识别边206中的一条或者多条和已识别节点中的一个或者多个。下面更多地描述了生成结构化查询。
图5示出了用于使用与上下文无关的语法模型生成结构化搜索查询的示例性方法500。该方法可从步骤510开始,即,社交网络系统160可访问包括多个节点和连接节点的多条边206的社交图谱200。节点可包括第一用户节点202和多个第二节点(一个或者多个用户节点202、概念节点204、或者其任意组合)。在步骤520,社交网络系统160可从第一用户接收大致非结构化文本查询。文本查询可包括一种或者多种n元语法。在步骤530,社交网络系统160可识别对应于n元语法的边和第二节点。在步骤540,社交网络系统160可访问包括多种语法的与上下文无关的语法模型。每种语法均可包括一个或者多个查询令牌。在步骤550,社交网络系统160可识别具有对应于已识别节点或者已识别边的查询令牌的语法。在步骤560,社交网络系统160可确定每种已识别语法的得分。得分可基于各种因素。在步骤570,社交网络系统可基于已识别语法生成一项或者多项结构化查询。每项结构化查询均可对应于具有比语法阈值得分更大的得分的识别语法并且可包括对应识别语法的查询令牌。结构化查询的查询令牌可对应于已识别第二节点中的至少一个或者已识别边中的至少一条。具体实施方式可重复图5中的方法的一个或者多个步骤,视情况而定。尽管本公开描述并且示出了图5中以具体顺序发生的方法的具体步骤,然而本公开考虑图5中以任意合适顺序发生的方法的任意合适步骤。而且,尽管本公开描述并且示出了完成图5中的方法的具体步骤的具体部件、设备、或者系统,然而本公开考虑完成图5中的方法的任意合适步骤的任意合适部件、设备、或者系统的任意合适组合。
生成结构化搜索查询
在具体实施方式中,社交网络系统160可生成一项或者多项结构化查询,其中每项均可包括对应语法的查询令牌,其中,查询令牌可对应于已识别用户节点202中的一个或者多个或者已识别边206中的一条或者多条。如上所述,生成结构化查询可以基于与上下文无关的语法。这种类型的结构化搜索查询可允许社交网络系统160通过搜索连接至已识别用户节点202和已识别边206或者以其他方式与已识别用户节点202和已识别边206有关的内容而更为有效地搜索与在线社交网络有关的资源和内容(诸如,资料页面等)。作为实施例但并不作为限制,社交网络系统160可响应文本查询“给我介绍我女朋友的朋友”生成结构化查询“Stephanie的朋友”,其中,结构化查询中的“朋友”和“Stephanie”是对应于具体社交图谱元素的引用。对“Stephanie”的引用对应于具体用户节点202,而对“朋友”的引用对应于将用户节点202连接至其他用户节点202的“朋友”边206(即,连接至“Stephanie的”第一重要程度朋友的边206)。当执行结构化查询时,社交网络系统160可识别通过“朋友”边206连接至对应于“Stephanie”的用户节点202的一个或者多个用户节点202。在具体实施方式中,社交网络系统160可生成多项结构化查询,其中,结构化查询可包括对不同识别用户节点202或者不同识别边206的引用。作为实施例但并不作为限制,社交网络系统可响应文本查询“猫的照片”生成第一结构化查询“Catey的照片”和第二结构化查询“Catherine的照片”,其中,结构化查询中的“照片”是对应于具体社交图谱元素的引用,并且其中,“Catey”和“Catherine”是两个不同用户节点202的引用。当执行这些结构化查询中的任一项时,社交网络系统160可识别对应于通过边206连接至已识别用户节点202的照片的一个或者多个概念节点204。尽管本公开描述了以具体方式生成具体结构化查询,然而本公开考虑以任意合适方式生成任意合适结构化查询。
在具体实施方式中,社交网络系统160可生成一项或者多项结构化查询,其中每项均包括对应于已识别概念节点204和已识别边206中的一条或者多条的查询令牌。这种类型的结构化搜索查询可允许社交网络系统160通过搜索连接至已识别概念节点204和已识别边206或者以其他方式与已识别概念节点204和已识别边206有关的内容而更为有效地搜索与在线社交网络有关的资源和内容(诸如,资料页面等)。作为实施例但并不作为限制,如上所述,社交网络系统160可响应文本查询“喜欢facebook的朋友”生成结构化查询“喜欢facebook的朋友”,其中,结构化查询中的“朋友”、“喜欢”以及“facebook”是对应于具体社交图谱元素(即,“朋友”边206、“喜欢”边206以及“Facebook”概念节点204)的查询令牌。在具体实施方式中,社交网络系统160可生成多项结构化查询,其中,结构化查询可包括对不同识别概念节点204或者不同识别边206的引用。作为实施例但并不作为限制,继续之前实施例,除结构化查询“喜欢Facebook的朋友”之外,社交网络系统160还可生成结构化查询“喜欢Facebook烹饪团队(Culinary Team)的朋友”,其中,结构化查询中的“Facebook烹饪团队(Culinary Team)”是对应于又一社交图谱元素的查询令牌。在具体实施方式中,社交网络系统160可对生成的结构化查询进行排列。可基于各种因素排列结构化查询。尽管本公开描述了以具体方式生成具体结构化查询,然而本公开考虑以任意合适方式生成任意合适结构化查询。
在具体实施方式中,社交网络系统160可将结构化查询中的一项或者多项发送给第一用户(即,查询用户)。作为实施例但并不作为限制,在生成结构化查询之后,社交网络系统160可(利用AJAX或者其他合适技术)将结构化查询中的一项或者多项作为响应发送给用户的客户端系统130,例如,可包括所引用社交图谱元素的名称(名称字串)、其他查询限制(例如,布尔操作符等)、以及潜在地与所引用社交图谱元素相关联的其他元数据。如图4A和图4B所示,查询用户的客户端系统130上的网络浏览器132可在下拉菜单300中显示已发送的结构化查询。如上所述,在具体实施方式中,可按照排列顺序(例如,基于之前确定的排序)将已发送的查询呈现给查询用户。具有更佳排序的结构化查询可显示在更为显著的位置。而且,在具体实施方式中,仅可将阈值排序以上的结构化查询发送或者显示给查询用户。作为实施例但并不作为限制,如图4A和图4B所示,可在下拉菜单300中将结构化查询呈现给查询用户,其中,排序靠前的结构化查询可显示在菜单顶部,而排序靠后的结构化查询以降序顺序显示在菜单中。在图4A和图4B所示的实施例中,仅将排列在前七项的查询发送和显示给用户。在具体实施方式中,可以按顺序强调突出结构化查询中的一个或者多个引用,以指示其与具体社交图谱元素的对应性。作为实施例但并不作为限制,如图4A和图4B所示,可以强调突出结构化查询中对“斯坦福大学(Stanford University)”和“加利福尼亚州斯坦福(Stanford,California)”的引用,以指示其对应于具体概念节点204。同样,还可强调突出在下拉菜单300中显示的结构化查询中的“朋友(Friends)”、“喜欢(like)”、“就职于(work at)”以及“去(go to)”的引用,以指示其对应于具体边206。尽管本公开描述了以具体方式发送具体结构化查询,然而本公开考虑以任意合适方式发送任意合适结构化查询。
在具体实施方式中,社交网络系统160可从第一用户(即查询用户)接收对结构化查询中的一项的选择。作为实施例但并不作为限制,查询用户的客户端系统130上的网络浏览器132可在下拉菜单300中显示已发送的结构化查询,如图4A和图4B所示,用户则可单击或者以其他方式选择(例如,通过其键盘上的简单按键“回车”),以指示用户希望社交网络系统160执行的具体结构化查询。一旦选择具体结构化查询,用户的客户端系统130则可调用或者以其他方式命令社交网络系统160执行所选择的结构化查询。尽管本公开描了以具体方式接收对具体结构化查询的选择,然而本公开考虑以任意合适方式接收对任意合适结构化查询的选择。
从于2012年7月23日提交的美国专利申请第13/556072号中可以获得关于结构化搜索查询的更多信息,将其通过引用结合在此。
系统和方法
图6示出了示例性计算机系统600。在具体实施方式中,一种或者多种计算机系统600执行此处所描述或者示出的一种或者多种方法中的一个或者多个步骤。在具体实施方式中,一种或者多种计算机系统600提供此处所描述或者示出的功能。在具体实施方式中,在一种或者多种计算机系统600上运行的软件执行此处所描述或者示出的一种或者多种方法中的一个或者多个步骤或提供此处所描述或者示出的功能。具体实施方式包括一种或者多种计算机系统600的一个或者多个部分。此处,引用的计算机系统可包括计算设备,视情况而定。而且,引用的计算机系统可包括一种或者多种计算机系统,视情况而定。
本公开考虑任意合适数目的计算机系统600。本公开考虑采用任意合适物理形式的计算机系统600。作为实施例但并不作为限制,计算机系统600可以是嵌入式计算机系统、片上系统(SOC)、单板计算机系统(SBC)(诸如,计算机模块(COM)或者系统模块(SOM)等)、桌面型计算机系统、膝上型或者笔记本计算机系统、交互式平台、大型机、计算机系统网络、移动电话、个人数字助理(PDA)、服务器、平板计算机系统、或者这些中的两种或者更多种的组合。计算机系统600可包括单一式或者分布式的跨多个位置、跨多台机器、跨多个数据中心、或者驻留在云中的一种或者多种计算机系统600,计算机系统600可包括一个或者多个网络中的一个或者多个云部件,视情况而定。一种或者多种计算机系统600可在无严格空间或者时间限制情况下执行此处所描述或者示出的一种或者多种方法中的一个或者多个步骤,视情况而定。作为实施例但并不作为限制,一种或者多种计算机系统600可实时地或者以批量模式执行此处所描述或者示出的一种或者多种方法中的一个或者多个步骤。一种或者多种计算机系统600可在不同时间或者在不同位置执行此处所描述或者示出的一种或者多种方法中的一个或者多个步骤,视情况而定。
在具体实施方式中,计算机系统600可包括处理器602、内存604、存储器606、输入/输出(I/P)接口608、通信接口610、以及总线612。尽管本公开描述并且示出了具有具体布置的具体数目的具体部件的具体计算机系统,然而本公开考虑具有任意合适布置的任意合适数目的任意合适部件的任意合适计算机系统。
在具体实施方式中,处理器602包括用于执行诸如组成计算机程序的指令的硬件。作为实施例但并不作为限制,为了执行指令,处理器602可从内部寄存器、内部缓存、内存604、或者存储器606中检索(或者获取)指令;将指令解码并且执行指令;然后,将一个或者多个结果写入内部寄存器、内部缓存、内存604、或者存储器606中。在具体实施方式中,处理器602可包括用于数据、指令、或者地址的一个或者多个内部缓存。本公开考虑包括任意合适数目的任意合适内部缓存的处理器602,视情况而定。作为实施例但并不作为限制,处理器602可包括一个或者多个指令缓存、一个或者多个数据缓存、以及一个或者多个转译后备缓冲器(TLB)。指令缓存中的指令可以是内存604或者存储器606中的指令副本,并且指令缓存可加快处理器602对这些指令的检索速度。数据缓存中的数据可以是使通过处理器602执行的指令运行的内存604或者存储器606中的数据副本、用于使处理器602中执行的后续指令访问或者用于写入内存604或存储器606中的通过处理器602执行的之前指令的结果、或者其他合适数据。数据缓存可加快处理器602的读或者写操作。TLB可加快处理器602的虚拟地址转译速度。在具体实施方式中,处理器602可包括用于数据、指令、或者地址的一个或者多个内部寄存器。本公开考虑包括任意合适数目的任意合适内部寄存器的处理器602,视情况而定。处理器602可包括一个或者多个算法逻辑单元(ALU)、可以是多核处理器、或者包括一个或者多个处理器602,视情况而定。尽管本公开描述并且示出了具体处理器,然而,本公开考虑任意合适的处理器。
在具体实施方式中,内存604包括用于存储使处理器602执行的指令或者用于存储使处理器602运行的数据的主内存。作为实施例但并不作为限制,计算机系统600可将指令从存储器606或者另一来源(诸如,另一计算机系统600)加载到内存604中。处理器602则可将指令从内存604加载到内部寄存器或者内部缓存。为了执行指令,处理器602可从内部寄存器或者内部缓存检索指令并且将其解码。在执行指令过程中或者之后,处理器602可将一个或者多个结果(可以是中间结果或者最终结果)写入内部寄存器或者内部缓存中。处理器602则可将这些结果中的一个或者多个写入内存604中。在具体实施方式中,处理器602仅执行一个或者多个内存寄存器或者内部缓存或者内存604(与存储器606相反或者其他地方)中的指令并且仅运行一个或者多个内存寄存器或者内部缓存或者内存604(与存储器606相反或者其他地方)中的数据。一条或者多条内存总线(每条均可包括地址总线和数据总线)可将处理器602耦接至内存604。如下所述,总线612可包括一条或者多条内存总线。在具体实施方式中,一个或者多个内存管理单元(MMU)驻留在处理器602与内存604之间并且便于访问由处理器602请求的内存604。在具体实施方式中,内存604包括随机存取内存(RAM)。RAM可以是易失性内存,视情况而定。RAM可以是动态RAM(DRAM)或者静态RAM(SRAM),视情况而定。而且,RAM可以是单端口式或者多端口式RAM,视情况而定。本公开考虑任意合适的RAM。内存604可包括一个或者多个内存604,视情况而定。尽管本公开描述并且示出了具体内存,然而本公开考虑任意合适的内存。
在具体实施方式中,存储器606包括用户数据或者指令的大容量存储器。作为实施例但并不作为限制,存储器606可包括硬盘驱动(HDD)、软盘驱动、闪存、光盘、磁光盘、磁带、或者通用串行总线(USB)驱动、或者这些中的两种或者更多种的组合。存储器606可包括可移动或者不可移动(或者固定)介质,视情况而定。存储器606可以位于计算机系统600的内部或者外部,视情况而定。在具体实施方式中,存储器606是易失性的固态内存。在具体实施方式中,存储器606包括只读内存(ROM)。ROM可以是掩模编程ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可更改ROM(EAROM)、或者闪存、或者这些中的两种或者更多种的组合,视情况而定。本公开考虑采用任何合适物理形式的大容量存储器606。存储器606可包括便于处理器602与存储器606之间通信的一个或者多个存储控制单元,视情况而定。存储器606可包括一个或者多个存储器606,视情况而定。尽管本公开描述并且示出了具体存储器,然而,本公开考虑任意合适的存储器。
在具体实施方式中,I/O接口608包括硬件、软件、或者提供用于计算机系统600与一个或者多个I/O设备之间通信的一个或者多个接口的硬件和软件。计算机系统600可包括这些I/O设备中的一个或者多个,视情况而定。这些I/O设备中的一个或者多个能够支持人与计算机系统600之间的通信。作为实施例但并不作为限制,I/O设备可包括键盘、键区、麦克风、监控器、鼠标、打印机、扫描仪、扬声器、静态照相机、铁笔、平板电脑、触摸屏、轨迹球、摄影机、另一合适的I/O设备、或者这些中的两种或者更多种的组合。I/O设备可包括一个或者多个传感器。本公开考虑任意合适的I/O设备和与其有关的任意合适I/O接口608。I/O接口608可包括一个或者多个设备或者能够使处理器602驱动这些I/O设备中的一个或者多个的软件驱动器,视情况而定。I/O接口608可包括一个或者多个I/O接口608,视情况而定。尽管本公开描述并且示出了具体I/O接口,然而,本公开考虑任意合适的I/O接口。
在具体实施方式中,通信接口610包括硬件、软件、或者提供用于计算机系统600与一个或者多个其他计算机系统600或一个或者多个网络之间通信(诸如,基于分组的通信等)的一个或者多个接口的硬件和软件。作为实施例但并不作为限制,通信接口610可包括用于与以太网或者其他基于有线的网络通信的网络接口控制器(NIC)或者网络适配器、或者用于与诸如WI-FI网络等无线网络通信的无线NIC(WNIC)或者无线适配器。本公开考虑任意合适的网络和与其有关的任意合适通信接口610。作为实施例但并不作为限制,计算机系统600可与自组网、个人局域网(PAN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、或者因特网的一个或多个部分、或者这些中的两种或者更多种的组合通信。这些网络中的一个或者多个中的一个或者多个部分可以为有线或者无线。例如,计算机系统600可与无线PAN(WPAN)(诸如,蓝牙WPAN等)、WI-FI网络、WI-MAX网络、蜂窝电话网络(诸如,全球移动通信系统(GSM)网络等)、或者其他合适的无线网络、或者这些中的两种或者更多种的组合通信。计算机系统600可包括用于这些网络中的任一个的任意合适通信接口610,视情况而定。通信接口610可包括一个或者多个通信接口610,视情况而定。尽管本公开描述并且示出了具体通信接口,然而本公开考虑任意合适通信接口。
在具体实施方式中,总线612包括硬件、软件、或者将计算机系统600的部件彼此耦接的硬件和软件。作为实施例但并不作为限制,总线612可包括加速图形端口(AGP)或者其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低脚位(LPC)总线、内存总线、微通道架构(MCA)总线、外围部件互连(PCI)总线、PCI-Express(PCIe)总线、串行高级技术附接(SATA)总线、视频电子标准协会本地(VLB)总线、或者另一合适的总线、或者这些中的两种或者更多种的组合。总线612可包括一条或者多条总线612,视情况而定。尽管本公开描述并且示出了具体总线,然而本公开考虑任意合适的总线或者互连。
此处,计算机可读非易失性存储媒介或者介质可包括一个或者多个基于半导体或者其他集成电路(IC)(诸如,场可编程门阵列(FPGA)或者专用IC(ASIC)等)、硬盘驱动(HDD)、混合硬驱动(HHD)、光盘、光盘驱动(ODD)、磁光盘、磁光驱动、软盘、软盘驱动(FDD)、磁带、固态驱动(SSD)、RAM驱动、安全数字卡或者驱动、任何其他合适的计算机可读非易失性存储介质、或者这些中的两种或者更多种的任意合适组合,视情况而定。计算机可读非易失性存储媒介可以是易失性、非易失性、或者易失性与非易失性的组合,视情况而定。
此处,除非另有明确指示或者上下文另有指示,否则,“或者”为包含的并且并不具有排斥性。因此,在本公开中,除非另有明确指示或者上下文另有指示,否则,“A或者B”指“A、B、或者A和B”。而且,除非另有明确指示或者上下文另有指示,否则,“和”为连带的。因此,在本公开中,除非另有明确指示或者上下文另有指示,否则,“A和B”指“连带的A和B”。
本公开的范围包括对本领域普通技术人员理解的此处所描述或者示出的示例性实施方式的所有更改、替换、变形、变更、以及改造。本公开的范围并不局限于此处所描述或者示出的示例性实施方式。而且,尽管本公开描述并且示出了包括具体部件、元件、功能、操作、或者步骤的相应实施方式,然而,这些实施方式中的任一种均可包括本领域普通技术人员理解的本公开中任何地方所描述或者示出的部件、元件、功能、操作、或者步骤的任何组合或者任何置换。而且,在所附权利要求中,只要该装置、系统、或者部件被如此适配、布置、能够、配置、使能够、可操作、或者操作,则引用被适配成、布置成、能够、配置成、使能够、可操作为、或者操作为执行具体功能的装置、或者系统、或者装置或系统的部件包括无论其或者该具体功能是否被激活、开启、或者解锁的装置、系统、部件。
Claims (9)
1.一种基于社交网络图谱的搜索方法,包括通过计算设备:
访问包括多个节点和连接所述节点的多条边的社交图谱,两个所述节点之间的每条所述边均表示两个所述节点之间的单一隔离度,所述节点包括:
第一用户节点,对应于与在线社交网络相关联的第一用户;以及
多个第二节点,各自均对应于与所述在线社交网络相关联的概念或者第二用户;
从所述第一用户的客户端系统接收由所述第一用户输入的非结构化文本查询,其中,所述非结构化文本查询包括一种或多种n元语法;
基于所述非结构化文本查询识别所述社交图谱的一条或多条边以及一个或多个第二节点,每条所识别的边或者每个所识别的第二节点均对应于所述n元语法中的至少一种,其中,识别所述一条或多条边以及一个或多个第二节点包括:
确定每种n元语法对应于一条所述边或一个所述第二节点的第二得分;
选择具有比边阈值得分更大的第二得分的一条或者多条边,每条所识别的边均对应于所述n元语法中的至少一种;以及
选择具有比节点阈值得分更大的第二得分的一个或者多个第二节点,每个所识别的第二节点均连接至至少一条所识别的边,每个所识别的第二节点均对应于至少一种所述n元语法,
访问包括多种语法的与上下文无关的语法模型,每种语法均包括一个或者多个查询令牌;
识别一种或者多种语法,每种所识别的语法均具有对应于所述社交图谱的所识别的第二节点中的至少一个以及所识别的边中的至少一条的一个或者多个查询令牌;
确定每种所识别的语法的第一得分;
生成一项或者多项结构化查询,每项结构化查询均对应于具有比语法阈值得分更大的第一得分的所识别的语法,其中,所述结构化查询包括通过所识别的语法生成的自然语言字串,每项结构化查询均包括对应的所识别语法的所述查询令牌,其中,所述结构化查询的一个或多个所述查询令牌对应于所述社交图谱的所识别的第二节点中的至少一个以及所识别的边中的至少一条;以及
响应于由所述第一用户输入的所述非结构化文本查询,将所述结构化查询中的一个或多个发送至所述第一用户的所述客户端系统,作为向所述第一用户显示的建议的查询。
2.根据权利要求1所述的方法,其中,每种n元语法均包括由所述第一用户输入的一个或者多个文本字符。
3.根据权利要求1所述的方法,其中,每种n元语法均包括来自所述非结构化文本查询中的n项连续序列。
4.根据权利要求1所述的方法,其中,针对每种n元语法的所述第二得分是所述n元语法对应于边或者第二节点的概率。
5.根据权利要求1所述的方法,其中,基于所述第一用户节点与对应于所述语法的所述查询令牌的所识别的第二节点之间的隔离度确定针对每种语法的所述第一得分。
6.根据权利要求1所述的方法,其中,基于对应于所述语法的所述查询令牌的所识别的边确定针对每种语法的所述第一得分。
7.根据权利要求1所述的方法,其中,基于连接至对应于所述语法的所述查询令牌的所识别的第二节点的所识别的边的数量确定针对每种语法的所述第一得分。
8.根据权利要求1所述的方法,其中,基于与所述第一用户相关联的搜索历史确定针对每种语法的所述第一得分。
9.一种基于社交网络图谱的搜索系统,包括:一个或者多个处理器;以及存储器,所述存储器耦接至所述处理器且包括由所述处理器可执行的指令,所述处理器在执行所述指令时可操作为:
访问包括多个节点和连接所述节点的多条边的社交图谱,两个所述节点之间的每条所述边均表示两个所述节点之间的单一隔离度,所述节点包括:
第一用户节点,对应于与在线社交网络相关联的第一用户;以及
多个第二节点,各自均对应于与所述在线社交网络相关联的概念或者第二用户;
从所述第一用户的客户端系统接收由所述第一用户输入的非结构化文本查询,其中,所述非结构化文本查询包括一种或多种n元语法;
基于所述非结构化文本查询识别所述社交图谱的一条或多条边以及一个或多个第二节点,每条所识别的边或者每个所识别的第二节点均对应于所述n元语法中的至少一种,其中,识别所述一条或多条边以及一个或多个第二节点包括:
确定每种n元语法对应于一条所述边或一个所述第二节点的第二得分;
选择具有比边阈值得分更大的第二得分的一条或者多条边,每条所识别的边均对应于所述n元语法中的至少一种;以及
选择具有比节点阈值得分更大的第二得分的一个或者多个第二节点,每个所识别的第二节点均连接至至少一条所识别的边,每个所识别的第二节点均对应于至少一种所述n元语法,访问包括多种语法的与上下文无关的语法模型,每种语法均包括一个或者多个查询令牌;
识别一种或者多种语法,每种所识别的语法均具有对应于所述社交图谱的所识别的第二节点中的至少一个以及所识别的边中的至少一条的一个或者多个查询令牌;
确定每种所识别的语法的第一得分;
生成一项或者多项结构化查询,每项结构化查询均对应于具有比语法阈值得分更大的第一得分的所识别的语法,其中,所述结构化查询包括通过所识别的语法生成的自然语言字串,每项结构化查询均包括对应的所识别语法的所述查询令牌,其中,所述结构化查询的一个或多个所述查询令牌对应于所述社交图谱的所识别的第二节点中的至少一个以及所识别的边中的至少一条;以及
响应于由所述第一用户输入的所述非结构化文本查询,将所述结构化查询中的一个或多个发送至所述第一用户的所述客户端系统,作为向所述第一用户显示的建议的查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710164769.0A CN107403388B (zh) | 2012-11-12 | 2013-10-29 | 用于结构化搜索查询的语法模型 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/674,695 | 2012-11-12 | ||
US13/674,695 US9105068B2 (en) | 2012-11-12 | 2012-11-12 | Grammar model for structured search queries |
PCT/US2013/067214 WO2014074346A1 (en) | 2012-11-12 | 2013-10-29 | Grammar model for structured search queries |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710164769.0A Division CN107403388B (zh) | 2012-11-12 | 2013-10-29 | 用于结构化搜索查询的语法模型 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104781813A CN104781813A (zh) | 2015-07-15 |
CN104781813B true CN104781813B (zh) | 2017-03-22 |
Family
ID=49552279
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710164769.0A Active CN107403388B (zh) | 2012-11-12 | 2013-10-29 | 用于结构化搜索查询的语法模型 |
CN201380059164.5A Active CN104781813B (zh) | 2012-11-12 | 2013-10-29 | 用于结构化搜索查询的语法模型 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710164769.0A Active CN107403388B (zh) | 2012-11-12 | 2013-10-29 | 用于结构化搜索查询的语法模型 |
Country Status (11)
Country | Link |
---|---|
US (3) | US9105068B2 (zh) |
EP (1) | EP2731069A1 (zh) |
JP (3) | JP5902871B2 (zh) |
KR (2) | KR101582929B1 (zh) |
CN (2) | CN107403388B (zh) |
AU (3) | AU2013341565B2 (zh) |
BR (1) | BR112015010802A2 (zh) |
CA (2) | CA2897123C (zh) |
IL (3) | IL238467A (zh) |
MX (2) | MX342073B (zh) |
WO (1) | WO2014074346A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9367607B2 (en) | 2012-12-31 | 2016-06-14 | Facebook, Inc. | Natural-language rendering of structured search queries |
US9703844B2 (en) | 2012-12-31 | 2017-07-11 | Facebook, Inc. | Search result snippets for structured search queries |
US9361363B2 (en) | 2012-12-31 | 2016-06-07 | Facebook, Inc. | Modifying structured search queries on online social networks |
US9244952B2 (en) | 2013-03-17 | 2016-01-26 | Alation, Inc. | Editable and searchable markup pages automatically populated through user query monitoring |
US9805099B2 (en) | 2014-10-30 | 2017-10-31 | The Johns Hopkins University | Apparatus and method for efficient identification of code similarity |
US10412160B2 (en) * | 2015-08-05 | 2019-09-10 | Facebook, Inc. | Controlling a device cloud |
DE102016010909A1 (de) * | 2015-11-11 | 2017-05-11 | Adobe Systems Incorporated | Strukturiertes Modellieren, Extrahieren und Lokalisieren von Wissen aus Bildern |
CN107015979B (zh) * | 2016-01-27 | 2021-04-06 | 斑马智行网络(香港)有限公司 | 一种数据处理方法、装置和智能终端 |
US10162886B2 (en) * | 2016-11-30 | 2018-12-25 | Facebook, Inc. | Embedding-based parsing of search queries on online social networks |
US10185763B2 (en) * | 2016-11-30 | 2019-01-22 | Facebook, Inc. | Syntactic models for parsing search queries on online social networks |
US10558817B2 (en) * | 2017-01-30 | 2020-02-11 | Foley & Lardner LLP | Establishing a link between identifiers without disclosing specific identifying information |
US10614141B2 (en) | 2017-03-15 | 2020-04-07 | Facebook, Inc. | Vital author snippets on online social networks |
US10445319B2 (en) * | 2017-05-10 | 2019-10-15 | Oracle International Corporation | Defining subgraphs declaratively with vertex and edge filters |
US10678786B2 (en) | 2017-10-09 | 2020-06-09 | Facebook, Inc. | Translating search queries on online social networks |
CN107704450B (zh) * | 2017-10-13 | 2020-12-04 | 威盛电子股份有限公司 | 自然语言识别设备以及自然语言识别方法 |
KR102363131B1 (ko) * | 2018-01-12 | 2022-02-15 | (주)호모미미쿠스 | 도식화된 질의 구성 방식을 이용한 전문가시스템에서의 다차원 지식 검색 방법 및 시스템 |
CN110209885B (zh) * | 2018-04-26 | 2023-05-12 | 腾讯科技(深圳)有限公司 | 一种图查询方法及系统 |
US10664472B2 (en) * | 2018-06-27 | 2020-05-26 | Bitdefender IPR Management Ltd. | Systems and methods for translating natural language sentences into database queries |
CN110889000B (zh) * | 2018-09-10 | 2022-08-16 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
KR102149701B1 (ko) * | 2018-12-27 | 2020-08-31 | 포항공과대학교 산학협력단 | 텍스트 데이터에서 의미상 대응하는 자연어-sql의 매핑 방법 |
US11966389B2 (en) * | 2019-02-13 | 2024-04-23 | International Business Machines Corporation | Natural language to structured query generation via paraphrasing |
US11275906B2 (en) | 2019-07-17 | 2022-03-15 | Avigilon Corporation | Natural language text conversion and method therefor |
KR102345568B1 (ko) * | 2019-12-26 | 2021-12-31 | 포항공과대학교 산학협력단 | 자연어 단어를 데이터베이스의 컬럼 및 테이블과 연결하는 방법 |
CN111787351B (zh) * | 2020-07-01 | 2022-09-06 | 百度在线网络技术(北京)有限公司 | 信息查询方法、装置、设备和计算机存储介质 |
Family Cites Families (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6957184B2 (en) | 2000-07-20 | 2005-10-18 | Microsoft Corporation | Context free grammar engine for speech recognition system |
US6714939B2 (en) | 2001-01-08 | 2004-03-30 | Softface, Inc. | Creation of structured data from plain text |
US8112529B2 (en) | 2001-08-20 | 2012-02-07 | Masterobjects, Inc. | System and method for asynchronous client server session communication |
US7752326B2 (en) | 2001-08-20 | 2010-07-06 | Masterobjects, Inc. | System and method for utilizing asynchronous client server communication objects |
US20090006543A1 (en) | 2001-08-20 | 2009-01-01 | Masterobjects | System and method for asynchronous retrieval of information based on incremental user input |
US7512612B1 (en) | 2002-08-08 | 2009-03-31 | Spoke Software | Selecting an optimal path through a relationship graph |
US20050131872A1 (en) | 2003-12-16 | 2005-06-16 | Microsoft Corporation | Query recognizer |
US7487145B1 (en) * | 2004-06-22 | 2009-02-03 | Google Inc. | Method and system for autocompletion using ranked results |
US7836044B2 (en) | 2004-06-22 | 2010-11-16 | Google Inc. | Anticipated query generation and processing in a search engine |
US7499940B1 (en) | 2004-11-11 | 2009-03-03 | Google Inc. | Method and system for URL autocompletion using ranked results |
BRPI0619558A2 (pt) | 2005-12-07 | 2011-10-04 | Networks In Motion Inc | dispositivo eletrÈnico portátil e método para apresentar informações |
JP2008027290A (ja) * | 2006-07-24 | 2008-02-07 | Nippon Telegr & Teleph Corp <Ntt> | 日本語文作成支援方法及びその装置 |
US7933843B1 (en) | 2006-08-26 | 2011-04-26 | CommEq Ltd. | Media-based computational influencer network analysis |
WO2008082441A1 (en) | 2006-12-29 | 2008-07-10 | Prodea Systems, Inc. | Display inserts, overlays, and graphical user interfaces for multimedia systems |
US8713143B2 (en) | 2007-04-27 | 2014-04-29 | President And Fellows Of Harvard College | Establishing a social network |
US8280886B2 (en) * | 2008-02-13 | 2012-10-02 | Fujitsu Limited | Determining candidate terms related to terms of a query |
US20090228296A1 (en) | 2008-03-04 | 2009-09-10 | Collarity, Inc. | Optimization of social distribution networks |
US8417698B2 (en) | 2008-05-06 | 2013-04-09 | Yellowpages.Com Llc | Systems and methods to provide search based on social graphs and affinity groups |
US8027990B1 (en) | 2008-07-09 | 2011-09-27 | Google Inc. | Dynamic query suggestion |
US8032508B2 (en) | 2008-11-18 | 2011-10-04 | Yahoo! Inc. | System and method for URL based query for retrieving data related to a context |
US8412749B2 (en) | 2009-01-16 | 2013-04-02 | Google Inc. | Populating a structured presentation with new values |
US20100235354A1 (en) | 2009-03-12 | 2010-09-16 | International Business Machines Corporation | Collaborative search engine system |
US20100281044A1 (en) | 2009-04-29 | 2010-11-04 | Ajay Gupta | Method and system for creating a profiled social network |
US8782069B2 (en) | 2009-06-11 | 2014-07-15 | Chacha Search, Inc | Method and system of providing a search tool |
CN102012900B (zh) * | 2009-09-04 | 2013-01-30 | 阿里巴巴集团控股有限公司 | 信息检索方法和系统 |
US20110078166A1 (en) | 2009-09-29 | 2011-03-31 | Nokia Corporation | Method and apparatus for creating and utilizing information representation of queries |
US8862482B2 (en) | 2009-10-09 | 2014-10-14 | International Business Machines Corporation | Managing connections between real world and virtual world communities |
US20110087534A1 (en) | 2009-10-14 | 2011-04-14 | Wantsa Media (Canada), Inc. | Search queries and advertising platforms utilizing at least one social graph |
US8316056B2 (en) | 2009-12-08 | 2012-11-20 | Facebook, Inc. | Second-order connection search in a social networking system |
US9129012B2 (en) * | 2010-02-03 | 2015-09-08 | Google Inc. | Information search system with real-time feedback |
US8595297B2 (en) | 2010-02-08 | 2013-11-26 | At&T Intellectual Property I, L.P. | Searching data in a social network to provide an answer to an information request |
US8527496B2 (en) | 2010-02-11 | 2013-09-03 | Facebook, Inc. | Real time content searching in social network |
US8185558B1 (en) | 2010-04-19 | 2012-05-22 | Facebook, Inc. | Automatically generating nodes and edges in an integrated social graph |
US8180804B1 (en) * | 2010-04-19 | 2012-05-15 | Facebook, Inc. | Dynamically generating recommendations based on social graph information |
JP5296014B2 (ja) * | 2010-06-22 | 2013-09-25 | ヤフー株式会社 | 検索装置、方法及びプログラム |
US8719246B2 (en) * | 2010-06-28 | 2014-05-06 | Microsoft Corporation | Generating and presenting a suggested search query |
US8364709B1 (en) | 2010-11-22 | 2013-01-29 | Google Inc. | Determining word boundary likelihoods in potentially incomplete text |
US9870424B2 (en) * | 2011-02-10 | 2018-01-16 | Microsoft Technology Licensing, Llc | Social network based contextual ranking |
US9495461B2 (en) * | 2011-03-22 | 2016-11-15 | Excalibur Ip, Llc | Search assistant system and method |
US20120278127A1 (en) | 2011-04-28 | 2012-11-01 | Rawllin International Inc. | Generating product recommendations based on dynamic product context data and/or social activity data related to a product |
US20160026727A1 (en) * | 2011-06-03 | 2016-01-28 | Google Inc. | Generating additional content |
US20120311034A1 (en) | 2011-06-03 | 2012-12-06 | Cbs Interactive Inc. | System and methods for filtering based on social media |
US8601027B2 (en) | 2011-06-20 | 2013-12-03 | Google Inc. | Query-based user groups in social networks |
US20130031106A1 (en) | 2011-07-29 | 2013-01-31 | Microsoft Corporation | Social network powered query suggestions |
US8538960B2 (en) | 2011-08-05 | 2013-09-17 | Microsoft Corporation | Providing objective and people results for search |
US20130041876A1 (en) | 2011-08-08 | 2013-02-14 | Paul Alexander Dow | Link recommendation and densification |
US11620719B2 (en) | 2011-09-12 | 2023-04-04 | Microsoft Technology Licensing, Llc | Identifying unseen content of interest |
US8949232B2 (en) | 2011-10-04 | 2015-02-03 | Microsoft Corporation | Social network recommended content and recommending members for personalized search results |
US8949264B2 (en) * | 2012-01-30 | 2015-02-03 | Hewlett-Packard Development Company, L.P. | Disambiguating associations |
US8321364B1 (en) | 2012-02-08 | 2012-11-27 | Google Inc. | Method and system for including robots into social networks |
-
2012
- 2012-11-12 US US13/674,695 patent/US9105068B2/en not_active Expired - Fee Related
-
2013
- 2013-10-29 JP JP2015541803A patent/JP5902871B2/ja not_active Expired - Fee Related
- 2013-10-29 CA CA2897123A patent/CA2897123C/en not_active Expired - Fee Related
- 2013-10-29 CA CA2890248A patent/CA2890248C/en not_active Expired - Fee Related
- 2013-10-29 AU AU2013341565A patent/AU2013341565B2/en not_active Ceased
- 2013-10-29 KR KR1020157015419A patent/KR101582929B1/ko active Application Filing
- 2013-10-29 MX MX2015006040A patent/MX342073B/es active IP Right Grant
- 2013-10-29 CN CN201710164769.0A patent/CN107403388B/zh active Active
- 2013-10-29 BR BR112015010802A patent/BR112015010802A2/pt not_active Application Discontinuation
- 2013-10-29 MX MX2016011819A patent/MX350680B/es unknown
- 2013-10-29 WO PCT/US2013/067214 patent/WO2014074346A1/en active Application Filing
- 2013-10-29 KR KR1020157035809A patent/KR101858157B1/ko active IP Right Grant
- 2013-10-29 CN CN201380059164.5A patent/CN104781813B/zh active Active
- 2013-11-12 EP EP20130192539 patent/EP2731069A1/en not_active Ceased
-
2015
- 2015-04-26 IL IL238467A patent/IL238467A/en active IP Right Grant
- 2015-06-26 US US14/752,407 patent/US9679080B2/en active Active
- 2015-08-31 AU AU2015221436A patent/AU2015221436B2/en not_active Ceased
-
2016
- 2016-03-10 JP JP2016046791A patent/JP6290952B2/ja not_active Expired - Fee Related
- 2016-10-19 IL IL248387A patent/IL248387A/en active IP Right Grant
-
2017
- 2017-04-17 US US15/489,027 patent/US20170220590A1/en not_active Abandoned
- 2017-05-12 AU AU2017203200A patent/AU2017203200B2/en not_active Ceased
- 2017-06-06 IL IL252697A patent/IL252697A0/en unknown
-
2018
- 2018-02-08 JP JP2018020619A patent/JP6568609B2/ja active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104781813B (zh) | 用于结构化搜索查询的语法模型 | |
JP6462088B2 (ja) | オンライン・ソーシャル・ネットワーク上での構造化検索クエリの修正 | |
CN105917330B (zh) | 用于在线社交网络的客户端搜索模板 | |
CN105144151B (zh) | 结构化搜索查询的自然语言渲染 | |
CN105378727B (zh) | 将逆算子用于在在线社交网络上查询 | |
JP6689389B2 (ja) | ディープラーニングモデルを用いたエンティティの識別 | |
KR101630349B1 (ko) | 온라인 소셜 네트워크에서의 검색 질의 상호작용 | |
CA2955321C (en) | Ranking external content on online social networks | |
US20170039210A1 (en) | Suggested Terms for Ambiguous Search Queries | |
US20160041982A1 (en) | Conditioned Search Ranking Models on Online Social Networks | |
US20130124542A1 (en) | Default Structured Search Queries on Online Social Networks | |
CN105103084A (zh) | 基于位置或者速度改变用户界面 | |
CN105009117B (zh) | 在线社交网络中的模糊结构化搜索查询 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: California, USA Patentee after: Yuan platform Co. Address before: California, USA Patentee before: Facebook, Inc. |