CN110955840A - 通知和推送的联合优化 - Google Patents
通知和推送的联合优化 Download PDFInfo
- Publication number
- CN110955840A CN110955840A CN201910904528.4A CN201910904528A CN110955840A CN 110955840 A CN110955840 A CN 110955840A CN 201910904528 A CN201910904528 A CN 201910904528A CN 110955840 A CN110955840 A CN 110955840A
- Authority
- CN
- China
- Prior art keywords
- user
- push object
- potential push
- potential
- machine learning
- 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.)
- Granted
Links
- 238000005457 optimization Methods 0.000 title description 3
- 238000010801 machine learning Methods 0.000 claims abstract description 80
- 230000003993 interaction Effects 0.000 claims abstract description 31
- 230000004044 response Effects 0.000 claims abstract description 20
- 230000006855 networking Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 32
- 230000015654 memory Effects 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000007774 longterm Effects 0.000 abstract description 8
- 230000009474 immediate action Effects 0.000 abstract description 2
- 230000009471 action Effects 0.000 description 27
- 230000000694 effects Effects 0.000 description 22
- 238000004422 calculation algorithm Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 20
- 230000006399 behavior Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 17
- 241000700605 Viruses Species 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 11
- 230000008520 organization Effects 0.000 description 9
- 230000008878 coupling Effects 0.000 description 7
- 238000010168 coupling process Methods 0.000 description 7
- 238000005859 coupling reaction Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000007477 logistic regression Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000037406 food intake Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 239000007789 gas Substances 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000007637 random forest analysis Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000003612 virological effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009118 appropriate response Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000036760 body temperature Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003344 environmental pollutant Substances 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 231100000719 pollutant Toxicity 0.000 description 1
- 230000004266 retinal recognition Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- 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/9536—Search customisation based on social or collaborative filtering
-
- 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/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
- G06F16/24544—Join order optimisation
-
- 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/9038—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- 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—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Operations Research (AREA)
- Business, Economics & Management (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
在示例性实施例中,机器学习模型被用于确定是否向用户发送针对推送对象的通知。该机器学习模型不仅基于通知将使用户与推送对象进行交互的可能性而被优化,而且还基于用户与所述推送对象进行交互的可能的短期和长期影响而被优化。该机器学习模型不仅考虑查看者的立即行动的概率(诸如点击推送对象),而且还考虑长期影响的概率(诸如使查看者向网络贡献内容或者观看者的响应鼓励更多人为网络贡献内容的显示)。因此,所述机器学习模型不仅对通知交互性而且还对推送对象交互性进行优化。
Description
技术领域
本公开总体涉及在机器学习模型中遇到的技术问题。更具体地,本公开涉及针对通知和推送对机器学习模型的的联合优化。
背景技术
社交网络服务是人们用于与他人建立社交网络或社交关系的在线平台。近年来,社交网络服务日趋流行向用户提供推送,其中,能够向已经登录到服务的用户呈现更新或感兴趣的项目。例如,推送可以包含用户已经被提升、已经改变工作等的社交网络连接的指示。推送还可以包含用户感兴趣的文章,因为它们与用户的一个或多个社交网络连接(例如,朋友写的文章)具有某种关联,或者因为它们被链接到用户的感兴趣领域,如社交网络服务所识别的(例如,文章是关于用户已经识别为其用户简档中的感兴趣领域的主题)。
社交网络服务可能难以确定应当在推送中显示许多潜在项目中的哪一个项目以及其应当被显示的次序。这通常经由社交网络服务实施的一种或多种算法来处理,以选择并且排列待显示的潜在项目。然而,这些算法是基于确定用户将以某种方式与项目进行交互(例如,选择它、共享它、喜欢它等)的可能性的。这样的解决方案集中于呈现推送对象的直接影响(例如,该用户是否将点击推送对象)。他们没有考虑长期影响,诸如推送对象可能使查看者对社交网络服务做出更多贡献(例如,发布他们自己的推送对象)以及查看者的响应将如何鼓励其他人对社交网络服务做出更多贡献(例如,如果查看者重新发布推送对象,则其他用户将效仿)。
社交网络服务可以用于鼓励用户与推送对象进行交互的一种工具是使用通知。通知是经由电子单元传送给用户的警报,诸如通过电子邮件、文本消息或者在由用户操作的操作系统或浏览器(诸如移动设备操作系统)中表面化警报。例如,经由电子邮件被通知特定事件(诸如朋友的提升)或者甚至仅仅被通知已经发生与其社交网络联系人之一相关的事件的用户更有可能与对应的推送对象进行交互。然而,过度使用这样的通知可能会关闭某些用户,并且实际上会减少与推送对象的交互。
从技术角度来看,设计能够充分地捕获作为整体的推送消耗生态系统(包括即时影响和长期影响两者)的用于使推送对象表面化的算法以及确定何时发送出针对对应推送对象的通知的算法是相当复杂的。
附图说明
在附图的图中,通过示例而非限制的方式图示了本技术的一些实施例。
图1是图示了根据示例性实施例的客户端-服务器系统的框图。
图2是示出了与本公开的一些实施例一致的社交网络系统的功能组件的框图。
图3是更详细示出了根据示例性实施例的图2的应用服务器模块的框图。
图4是更详细图示了根据示例性实施例的图3的排序模型的框图。
图5是更详细图示了根据示例性实施例的图3的通知模型的框图。
图6是根据一些示例性实施例的包括处在不同类别中的项目的用户推送的屏幕截图。
图7是图示了根据示例性实施例的下游交互计算的框图。
图8是图示了根据示例性实施例的用于确定是否针对一个或多个潜在推送对象中的每个潜在推送对象发送通知的方法的流程图。
图9是图示了根据示例性实施例的计算第一下游影响分数的方法的流程图。
图10是图示了根据示例性实施例的计算第二下游影响分数的方法808的流程图。
图11是图示了能够被安装在上述设备中的任意一个或多个设备上的软件架构的框图。
图12图示了根据示例性实施例的计算机系统形式的机器的图形表示,在计算机系统内可以执行一组指令以使所述机器执行在本文中所讨论的方法中的任意一种或多种方法。
具体实施方式
本公开尤其描述了个体地提供各种功能的方法、系统以及计算机程序产品等。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对本公开的不同实施例的各个方面的透彻理解。然而,对于本领域技术人员显而易见的是,可以在没有所有具体细节的情况下实践本公开。
在示例性实施例中,机器学习模型被用于确定是否向用户发送针对推送对象的通知。该机器学习模型不仅基于通知将使用户与所述推送对象进行交互的可能性而被优化,而且还基于用户与所述推送对象进行交互的可能的短期和长期影响而被优化。该机器学习模型不仅考虑查看者的立即行动的概率(诸如点击推送对象)而且还考虑长期影响的概率(诸如使查看者向网络贡献内容或观看者的响应鼓励更多人为网络贡献内容的显示)。因此,所述机器学习模型不仅对通知交互性而且还对推送对象交互性而被优化。
图1是图示了根据示例性实施例的客户端-服务器系统100的框图。联网系统102经由网络104(例如,互联网或广域网(WAN))向一个或多个客户端提供服务器侧功能。图1图示了例如在各个客户端机器110和112上执行的web客户端106(例如,浏览器)和程序客户端108。
应用程序编程接口(API)服务器114和web服务器116被耦合到一个或多个应用服务器118,并且向一个或多个应用服务器118分别提供程序接口和web接口。(一个或多个)应用服务器118托管一个或多个应用120。(一个或多个)应用服务器118继而被示为被耦合到一个或多个数据库服务器124,数据库服务器124便于访问一个或多个数据库126。尽管(一个或多个)应用120在图1中被示为形成联网系统102的一部分,但是将意识到,在替代实施例中,(一个或多个)应用120可以形成与联网系统102分离并且不同的服务的一部分。
此外,尽管在图1中所示的客户端-服务器系统100采用客户端-服务器架构,但是本公开当然并不限于这样的架构,而是同样可以在例如分布式或对等架构系统中找到应用。各种应用120还可以被实施为独立的软件程序,其不一定具有联网能力。
Web客户端106经由web服务器116支持的web接口来访问各种应用120。类似地,程序客户端108经由API服务114提供的程序接口来访问由(一个或多个)应用120提供的各种服务和功能。
图1还图示了在第三方服务器130上执行的第三方应用128,其经由API服务器114提供的编程接口对联网系统102进行编程访问。例如,第三方应用128可以利用从联网系统102取回的信息来支持在由第三方托管的网站上的一个或多个特征或功能。例如,所述第三方网站可以提供由联网系统102的相关应用120支持的一个或多个功能。
在一些实施例中,在本文中所提及的任何网站可以包括可以在各种设备上呈现的在线内容,所述设备包括但不限于台式个人计算机(PC)、膝上型计算机和移动设备(例如,平板计算机、智能电话等)。在这方面,用户可以采用这些设备中的任意设备来使用本公开的特征。在一些实施例中,用户能够使用移动设备(客户端机器110、112和第三方服务器130中的任何一个可以是移动设备)上的移动应用来访问和浏览在线内容,诸如在本文中所公开的任何在线内容。移动服务器(例如,API服务器114)可以与移动应用和(一个或多个)应用服务器118通信,以便使得本公开的特征在移动设备上可用。
在一些实施例中,联网系统102可以包括社交网络服务的功能组件。图2是示出了与本公开的一些实施例一致的社交网络系统210的功能组件的框图。在一些实施例中,搜索引擎216可以驻留在图1中的(一个或多个)应用服务器118上。然而,设想到了其他配置也在本公开的范围内。
如在图2中所示的,前端可以包括用户接口模块(例如,web服务器116)212,其接收来自各种客户端计算设备的请求并且将适当的响应传送到请求客户端设备。例如,(一个或多个)用户接口模块212可以接收超文本传输协议(HTTP)请求或者其他基于web的API请求的形式的请求。另外,可以提供成员交互检测模块213以检测成员与所呈现的不同应用120、服务和内容的各种交互。如在图2中所示的,在检测到特定交互时,成员交互检测模块213在成员活动和行为数据库222中记录交互,包括交互的类型以及与交互相关的任意元数据。
应用逻辑层可以包括一个或多个各种应用服务器模块214,其结合(一个或多个)用户接口模块212来生成具有从数据层中的各种数据源取回的数据的各种用户接口(例如,网页)。在一些实施例中,个体应用服务器模块214被用于实施与社交网络服务提供的各种应用120和/或服务相关联的功能。
如在图2中所示的,所述数据层可以包括若干数据库126,诸如用于存储简档数据的简档数据库218,其包括成员简档数据以及针对各种组织(例如,公司、学校等)的简档数据。与一些实施例一致,当人员初始注册成为社交网络服务的成员时,将提示该人员提供一些个人信息,诸如他的或她的姓名、年龄(例如,出生日期)、性别、兴趣、联系人信息、家乡、地址、配偶和/或家庭成员的姓名、教育背景(例如,学校、专业、预科和/或毕业日期等)、工作经历、技能、专业组织等。该信息例如被存储在简档数据库218中。类似地,当组织的代表初始向社交网络服务注册该组织时,可以提示该代表提供关于该组织的某些信息。该信息可以被存储在例如简档数据库218或另一数据库(未示出)中。在一些实施例中,可以处理所述简档数据(例如,在后台或离线地)以生成各种导出的简档数据。例如,如果成员已经提供了关于该成员关于同一组织或不同组织持有的各种职称以及多长时间的信息,则该信息能够被用于推断或导出成员简档属性,所述成员简档属性指示该成员的总体资历级别或者在特定组织内的资历级别。在一些实施例中,从一个或多个外部托管的数据源导入或者以其他方式访问数据可以丰富针对成员和组织的简档数据。例如,特别是对于组织,可以从一个或多个外部数据源导入财务数据,并且将其作为组织简档的一部分。
一旦注册,成员就可以邀请其他成员,或者被其他成员邀请,以经由社交网络服务进行连接。“连接”可以构成成员的双边协议,使得这两个成员都确认连接的建立。类似地,在一些实施例中,成员可以选择“跟随”另一成员。与建立连接相反,“跟随”另一成员通常是单方面操作,并且至少在一些实施例中,不需要被跟随的成员的确认或批准。当一个成员跟随另一成员时,跟随的成员可以接收由被跟随的成员发布的或者与被跟随的成员进行的各种活动有关的状态更新(例如,在活动或内容流中)或其他消息。类似地,当成员跟随组织时,该成员变得有资格接收代表所述组织发布的消息或状态更新。例如,代表成员跟随的组织而发布的消息或状态更新将出现在成员的个性化数据推送中,通常被称为活动流或内容流。在任何情况下,成员与其他成员或者与其他实体和对象建立的各种关联和关系被存储和维护在社交图数据库220中的社交图内。
当成员与经由社交网络服务使得可用的各种应用120、服务和内容进行交互时,成员的交互和行为(例如,所查看的内容,所选择的链接或按钮,响应的消息等)可以被跟踪,并且例如如在图2中所指示的,关于成员的活动和行为的信息可以由成员活动和行为数据库222来记录或存储。然后,可以由搜索引擎216使用该记录的活动信息来确定针对搜索查询的搜索结果。
在一些实施例中,数据库218、220和222可以被合并到图1中的(一个或多个)数据库126中。然而,其他配置也在本公开的范围内。
尽管未示出,但是在一些实施例中,社交网络系统210提供API模块,经由API模块,应用120和服务能够访问由社交网络服务提供或维护的各种数据和服务。例如,使用API,应用120能够请求和/或接收一个或多个导航推荐。这样的应用120可以是基于浏览器的应用120,或者可以是特定于操作系统的。特别地,一些应用120可以与移动操作系统一起驻留在一个或多个移动设备(例如,电话或平板计算设备)上并且在其上运行(至少部分地)。此外,尽管在许多情况下,利用API的应用120或服务可以是由操作社交网络服务的实体而开发和维护的应用120和服务,但是除了数据隐私问题之外的任何内容都不阻止API被提供给公众或者在特殊安排下的某些第三方,由此使导航建议可用于第三方应用128和服务。
尽管在本文中将搜索引擎216称为在社交网络服务的上下文中使用,但是可以设想到其也可以在任何网站或在线服务的上下文中采用。另外,尽管本公开的特征在本文中被称为在网页的上下文中使用或呈现,但是可以设想到任何用户接口视图(例如,移动设备或桌面软件上的用户接口)都在本公开的范围内。
在示例性实施例中,当成员简档被索引时,创建并且存储前向搜索索引。搜索引擎216便于索引和搜索社交网络服务内的内容,诸如索引和搜索数据层中所包含的数据或信息,诸如简档数据(存储在例如简档数据库218中)、社交图数据(存储在例如社交图数据库220中)、成员活动和行为数据(存储在例如成员活动和行为数据库222中)和/或在推送对象数据库224中的信息。搜索引擎216可以在索引或其他类似结构中收集、解析和/或存储数据,以便于响应于接收到的针对信息的查询来识别和取回信息。这可以包括但不限于前向搜索索引、反向索引、n元语法(N-gram)索引等。
推送对象数据库224可以包含能够在社交网络服务的一个或多个成员的推送中显示的对象。推送是用于向用户提供频繁更新内容的数据格式。在社交网络服务中,成员可以在例如他们登录社交网络服务时查看他们的推送。所述推送包含社交网络服务认为用户可能感兴趣的一个或多个对象。用户推送可以包含来自不同类别的项目(例如,工作发布、用户发布、针对新连接的建议、赞助的帖子等)。创建推送意味着对来自不同类别的项目进行排序,合并来自不同类别的项目,以及创建用户推送,其按顺序次序来呈现所述项目。
对项目和类别进行排序的过程常常非常复杂,因为期望不同的目标,诸如优化用户体验以及从不同类别生成收益。该过程通常很乏味,并且需要大量的实验。
尽管在本文中将推送对象数据库224描绘为包含推送对象,但是应当注意,不必将所有这些潜在推送对象聚合在单个数据库中。在一些示例性实施例中,所述推送对象可以位于作为推送对象数据库224的替代或补充的各种其他数据库中,并且任何希望访问推送对象的组件(诸如搜索引擎216)能够跨多个数据库取回所述推送对象。然而,为简单起见,本文档将描述从推送对象数据库224获得的推送对象。
图3是更详细图示了根据示例性实施例的图2的应用服务器模块214的框图。尽管在许多实施例中,应用服务器模块214将包含用于在社交网络系统210内执行各种不同动作的许多子组件,但是在图3中仅描绘了与本公开相关的那些组件。
在此,摄取平台300从与排序模型302相关的简档数据库218、社交图数据库220、成员活动和行为数据库222和/或推送对象数据库224获得信息。在训练时,摄取平台300将该信息发送到排序模型302以便训练排序模型302,而在排序时,诸如当社交网络服务需要确定向特定用户呈现哪些推送对象以及以什么次序呈现时,摄取平台300将信息发送到排序模型302,以便允许排序模型302输出要在用户的推送中显示的各种潜在推送对象的排序。
在一些示例性实施例中,以特征向量的形式发送该信息。例如,每个成员简档可以具有由简档数据库218、社交图数据库220以及成员活动和行为数据库222中的信息形成的其自己的特征向量。在其他示例性实施例中,摄取平台300将原始信息发送到排序模型302,并且排序模型302根据原始信息来创建其自己的特征向量。
用户接口服务器组件304与位于客户端设备308上的用户接口客户端组件306通信以运行排序模型302并且使用其结果来显示或更新对用户的推送。这可以响应于用户输入来执行,诸如对包括所述推送的网页的导航输入。例如,用户可以指示用户接口客户端组件306登录社交网络服务账户。然后,可以将该登录信息发送到用户接口服务器组件304,用户接口服务器组件304能够使用该信息来指示摄取平台300从简档数据库218、社交图数据库220、成员活动和行为数据库222和/或推送对象数据库224中取回适当的信息。
然后,可以将来自排序模型302的结果发送到用户接口服务器组件304,用户接口服务器组件304与用户接口客户端组件306一起可以选择和格式化适当的推送对象以用于显示给用户。下文将更详细地描述关于如何经由用户接口客户端组件306在客户端设备308上显示这些对象的细节。
除了使用排序模型302来确定要显示哪些推送对象之外,在示例实施例中,通知模型310可以被用于确定何时向用户发送针对所显示的推送对象的通知。可以基于与推送对象的用户交互的价值(value)和可能性以及通知将增加用户与(一个或多个)推送对象进行交互的机会的可能性来联合地训练通知模型310。
应当注意,在一些实施例中,尽管使用了一些相同的特征和功能,但是通知模型310将与排序模型302被不同地训练和优化。在其他示例性实施例中,排序模型302本身可以在对通知模型310的训练期间使用,其中,通知模型310基本上在排序模型302的顶部上训练。
来自通知模型310的输出可以被传递到通知组件312,然后通知组件312能够基于该输出来生成和发送通知(或者不发送通知)。
图4是更详细图示了根据示例性实施例的图3的排序模型302的框图。在训练组件400中,样本成员简档402、样本推送对象403和/或样本成员活动和行为信息404被推送到特征提取器406,特征提取器406用于从样本成员简档402、样本推送对象403和/或样本成员活动和行为信息404提取策划特征408。特征是与输入数据块有关的变量。由于在一些示例性实施例中所述输入可以是与社交网络服务的成员相关的数据,诸如成员简档、成员使用和/或活动数据、或者社交图信息,因此特征可以例如是成员简档、成员使用和/或活动数据、或社交图的一部分。特征还可以是根据数据的一部分而计算的变量,诸如平均值、总和、差值、测量值等。特征还可以是样本推送对象的某一方面,诸如标题、频繁出现的术语和/或关于对象的各种度量,诸如关键字的出现频率。
在示例性实施例中,策划特征408随后被用作对机器学习算法410的输入,以训练机器学习模型412来生成应当向特定用户显示推送对象的概率。尽管该概率可以基于用户以某种方式与推送对象交互的可能性,如下文将更详细描述的,但是其也可以基于用户或下游用户的病毒动作的影响,以及这些影响对整个社交网络服务的相对价值。在某些类型的机器学习算法中,训练可以包括将样本结果标签414提供给机器学习算法410。这些样本结果标签414中的每个样本结果标签是指示应当向用户显示对应的样本推送对象的可能性的分数。
可以从许多不同的潜在监督或无监督的机器学习算法中选择机器学习算法410。监督的机器学习算法的示例包括人工神经网络、贝叶斯网络、基于实例的学习、支持向量机、随机森林、线性分类器、二次分类器、k最近邻、决策树以及隐马尔可夫模型。无监督的机器学习算法的示例包括期望最大化算法、矢量量化以及信息瓶颈方法。在示例性实施例中,使用二元逻辑回归模型。二元逻辑回归处理因变量的观察结果仅能够具有两种可能类型的情况。逻辑回归被用于基于自变量(预测子)的值来预测一种情况或另一种情况为真的可能性。
在推送对象排序引擎416中,候选推送对象418被推送到特征提取器420,特征提取器420用于从候选推送对象418中提取策划特征422。然后,策划特征422被用作对机器学习模型412的输入,机器学习模型412输出指示应当在推送中显示对应候选推送对象418的可能性的分数。
图5是更详细图示了根据示例性实施例的图3的通知模型310的框图。在训练组件500中,样本成员简档502、样本推送对象503和/或样本成员活动和行为信息504被推送到特征提取器506,特征提取器506用于从样本成员简档502、样本推送对象503和/或样本成员活动和行为信息504中提取策划特征508。在一些示例实施例中,由于所述输入可以是与社交网络服务的成员相关的数据,诸如成员简档、成员使用和/或活动数据、或社交图信息,因此所述特征可以例如是成员简档、成员使用和/或活动数据、或社交图的一部分。所述特征也可以是根据所述数据的一部分而计算的变量,诸如平均值、总和、差值、测量值等。所述特征还可以是样本推送对象的某一方面,诸如标题、频繁出现的术语和/或关于对象的各种度量,诸如关键字的出现频率。
在示例性实施例中,策划特征508然后被用作对机器学习算法510的输入,以训练机器学习模型512来生成应当向特定的一对用户和推送对象显示通知的概率。尽管该概率可以基于用户可能以某种方式与推送对象进行交互的可能性,如下文将更详细描述的,但是其也可以基于用户或下游用户的病毒动作的影响,以及这些影响对整个社交网络服务的相对价值,以及用户将响应于通知与推送对象进行交互的可能性。在某些类型的机器学习算法中,训练可以包括将样本结果标签514提供给机器学习算法510。这些样本结果标签514中的每个样本结果标签是指示应当向用户显示对应的样本推送对象的可能性的分数。
可以从许多不同的潜在监督或无监督的机器学习算法中选择机器学习算法510。监督的机器学习算法的示例包括人工神经网络、贝叶斯网络、基于实例的学习、支持向量机、随机森林、线性分类器、二次分类器、k最近邻、决策树以及隐马尔可夫模型。无监督的机器学习算法的示例包括期望最大化算法、矢量量化以及信息瓶颈方法。在示例性实施例中,使用二元逻辑回归模型。二元逻辑回归处理因变量的观察结果仅能够具有两种可能类型的情况。逻辑回归被用于基于自变量(预测子)的值来预测一种情况或另一种情况为真的可能性。
在通知引擎516中,候选推送对象518和用户519被推送到特征提取器520,特征提取器520用于从候选推送对象518和用户519中提取策划特征522。然后,策划特征522用作对机器学习模型512的输入,机器学习模型512输出指示用户519应当接收关于对应推送对象518的通知的可能性的分数。
在示例性实施例中,作为针对通知模型310的基础的机器学习模型512基于成员j的网络中的预期下游交互而进行优化,并且如果它们对推送对象ai采取病毒动作则超出。一个成员活动的下游影响能够被限定为:
DSIi(ai)=∑j∈连接(i)pSeenj(ai)pViralj(ai)DSIj(ai)。
其中:
pSeenj(ai)=[pSeenj 通知(ai)+pSeenj 推送(ai)]
pSeenj 通知(ai)=xijpVisitj(xij=1)pImpj(xij=1,Visitj)
pSeenj 推送(ai)=(1-xij)pVisitj(xij=0)pImpj(xij=0,Visitj)
其中:
i是推送对象的共享者,xij:是向j发送关于活动ai的通知的概率,pVisitj()是成员j在预先指定的窗口内访问网站的概率,以发送(或未发送)的通知为条件,pImpj(ai)是成员j在访问pClickj(ai)时将看到ai的印记的概率:成员j在看到ai时将点击ai的概率,而pVirali(ai)是成员j在看到ai时将对ai采取病毒行动的概率。
应当注意,在一些示例性实施例中,为了节省处理能力和时间,将仅预测第一级连接下游迭代。随着处理能力/速度的增加,能够添加更多级的连接。
能够为用户和推送对象的每种组合将上述DSI公式计算两次,一次假设发送通知并且一次假设未发送通知。然后能够计算针对这两个场景而计算出的DSI的差异并且将其与阈值进行比较。如果该差异大于特定阈值,则与发送通知的缺点相反的优点足以保证发送通知。
阈值可以是固定的或可变的。如果阈值是可变的,则可以基于各种期望来调整阈值。例如,在示例性实施例中,为不同类别的用户分配不同的阈值,从而为阈值提供一定程度的个性化。
因此,通知模型500能够被认为是针对多个可能的推送对象中的每个推送对象计算在假设已发送通知与假设尚未发送通知之间的DSI分数的差异的模型。这样,通知模型500可以将多个机器学习模型的输出与针对所讨论的到用户的第一(或更多)级连接中的每个连接的递归计算出的DSI分数进行组合。这些机器学习模型中的第一个可以是pSeenj(ai)模型,其可以输出用户将看到潜在推送对象的概率。在一些示例性实施例中,该第一机器学习模型可以使用是否将通知作为特征发送的假设(即,其可以取决于做出哪种假设而输出不同的结果)。
这些机器学习模型中的第二机器学习模型可以是pViralj(ai)模型,其可以输出用户将经由图形用户界面与潜在推送对象进行交互(诸如通过喜欢、评论或共享潜在推送对象)的概率和交互的“价值”(其可以至少部分地基于用户网络的大小)的组合。
在示例性实施例中,由该第二机器学习模型输出的分数基于以下目标函数:
目标*==Pctr+α*P病毒*EDSI+β*P响应*V动作者
PCTR是查看者将直接参与更新(例如,对其进行点击)的概率。
P病毒是查看者将以病毒动作参与更新(例如,共享、喜欢或评论)的概率。
EDSI是来自查看者的下游网络的预期下游交互。
P响应是(任何类型的)查看者对动作者的响应的概率。
V动作者是动作者评价查看者的响应的程度。
其中,α和β是常数。
P响应尝试估计一些查看者(无论是直接的还是下游的)将响应于与动作者的贡献相对应的推送对象的可能性。该响应可以采取多种形式,包括点击、共享、喜欢、评论等。这基于以下假设:即获得响应的动作者将驱使动作者再次贡献。这查看所述查看者过去的交互历史以确定该概率,并且因此,该模型中包含的特征将包括查看者特征,诸如用户简档和过去的交互历史特征。
V动作者尝试估计对动作者的响应值。在一些示例性实施例中,V动作者=e-μ,其中,μ是动作者将获得的预期响应数:
μ=f(x)
其中,f是预测预期的响应数的链接函数,并且x是用于预测更新将接收多少响应的特征。特征集包括但不限于:
·创建者特征,例如,创建者的过去点击通过率(CTR)、创建者网络大小、创建者类型(例如,影响者或非影响者)
·内容特征,例如,内容类型、内容参与率、内容新鲜度
·交叉特征,例如,树特征、上述两个集合之间的交叉特征
在示例性实施例中,可以在模型的该部分中使用对数线性和/或泊松回归。
在一些示例性实施例中,P病毒基于用于处理病毒动作的原理方法。对病毒动作的处理与常规点击/选择不同,因为病毒动作允许项目通过网络传播并且提高可见性。并非所有病毒行为都是相同的(例如,按类型或按动作者改变)。例如,跨国公司总裁的共享比工厂工人的共享更有效。同样,共享动作可能比喜欢动作更有效。
在一些示例性实施例中,模型的PCTR和P病毒部分可以被称为“预期参与度”并且可以在数学上表示为E(m,u),这是向用户m示出推送对象u的预期参与度。该分数包括预期的下游参与度。该分数可以根据以下公式来计算:
E(m,u)=P[A≠Null]+β∑A∈VAP[A]*DE(m,u|A)
A是随机变量(随机集),表示由m采取的可能动作。这将包括每种基于点击的动作:点击、喜欢、共享、评论、工作视图、连接等。病毒动作集合是VA,其例如能够是{喜欢,共享,评论}。
如果用户m采取病毒动作A,则DE(m,u|A)是对象u上的增量下游参与度。应当选择最佳值以使来自用户m的预期长期真北度量最大化。β(其小于或等于1)是确定该当前会话中的参与度与后续会话中的参与度的价值的时间折扣因子。
当然,在一些示例性实施例中,从技术观点来看,这些术语中的一个或多个术语可能难以估计。例如,由于病毒动作的指数性质,DE(m,u|A)在计算上可能难以估计。另外,随着模型越来越向下游,在建模的社交网络中发生循环的可能性更大。例如,如果第一用户与25个其他用户的网络共享项目,那么这些用户中的一个用户可能会对所述项目执行动作,诸如喜欢该项目,这引起第一用户的另一动作,诸如使第一用户喜欢该项目。这些循环能够导致难以建模下游行为。在示例性实施例中,能够通过将下游行为限制到一级来补救计算复杂度和循环方面。换言之,机器学习模型限于仅查看距离用户m一级的下游行为。
在一个示例性实施例中,可以使用以下公式来估计项DE(m,u|A):
DE(m,u|A)=#(Nm\Na)E(m,A)+#(Nm∩Na)(E(m,A)-E(a,Aa)+Nm和Na分别代表用户m和a的网络。E(m,A)是由于动作A而来自m的在对象上的m的网络中成员的平均参与度。E(m,A)=Avg动作。函数x+是x的正部分,即,如果x>0,则x+=x,否则为0。
估计被分为两部分:
(1)m的网络不在a的网络中:在该组中,估计出的参与度是#(Nm\Na)E(m,A)。
(2)m的网络也在a的网络中:在该组中,如果由于m的病毒动作引起的预期参与度大于由于来自a的动作引起的参与度,那么由于m采取动作A可能会存在额外的参与度。
在一些示例性实施例中,可以使用替代方法来进行该估计。示例包括通过检查m的影响并且不结合任何先前的动作者来估计DE,检查m与动作者和根动作者相比可能产生的递增影响,并且使用来自m的平均DE与目前对对象的平均参与度的反向文档频率(IDF)类型折扣,诸如:
DE(m,u|A)=E(m,A)/f(印记,交互),
其中,f是某种递增函数。在后一种情况下,如果对象中已经存在大量印记和交互,则DE将降低权重。
在一些示例性实施例中,通过机器学习模型512不仅可以考虑病毒动作的类型而且可以考虑与病毒动作相关的内容。具体地,尽管一些病毒动作本身不包含超出其类型的内容,诸如“喜欢”动作,但是其他病毒动作有时包含除了其类型之外的内容,诸如当共享推送对象时作为评论输入的文本。在一些示例性实施例中,例如,可以诸如通过使用自然语言处理技术来分析该文本,并且该分析可以被用于创建由机器学习模型512使用的一个或多个特征向量以输出分数。
因此,该模型可以被认为具有四个部分:动作者到查看者部分(PCTR)、查看者到下游部分(P病毒)、下游到查看者部分(EDSI)以及查看者到动作者部分(P响应和V动作者)。这四个部分中的每个部分可以单独训练或一起训练。训练使权重被分配给与要学习的四个部分中的每个部分相关的特征。还应当注意,可以为这四个部分中的每个部分的值分配权重,并且在一些示例性实施例中,还可以经由机器学习算法来学习这些部分权重。
图6是根据一些示例性实施例的包括不同类别的项目的用户推送600的屏幕截图。在图6的示例性实施例中,用户推送600包括不同的类别,诸如工作推荐602、用户帖子606和赞助项目608,并且其他实施例可以包括额外类别。
在一个示例性实施例中,用户推送600提供与用户的工作兴趣相匹配并且与来自用户的特定工作搜索请求一起呈现的工作推荐602(例如,工作帖子603和604)。
用户帖子606包括由社交网络服务的用户发布的项目607,诸如用户的连接,以对社交网络服务进行评论或者包括感兴趣的文章或网页。
赞助项目608是由社交网络服务的赞助者放置的项目609,其支付用于在用户推送上发布那些项目的费用,并且可以包括广告或者到赞助商想要促销的网页的链接。
尽管在用户推送600内将各类别单独示出,但是来自不同类别的项目可以混合并且不仅被呈现为块。因此,用户推送600可以包括来自所述类别中的每个类别的大量项目,并且社交网络服务基于期望的效用来决定向用户呈现这些项目的次序。
图7是图示了根据示例性实施例的下游交互计算的框图。共享者(Alice 700)与她的网络的六个成员Yiping 702A、Ajith 702B、Shaunak 702C、Souvik 702D、Dylan 702E和Zheng 702F共享内容项。这些成员中的每个成员具有其自己的连接成员的网络704A、704B、704C、704D、704E和704F,其中每个网络704A、704B、704C、704F、704E和704F具有可能不同的大小。尽管大小不一定是影响的仅有的量度,但是其可能是重要因素。因此,具有相对较低的pVisit分数(意味着在没有通知的情况下看到共享内容的可能性可能非常低(在此为0.1))的成员(诸如Yiping 702A)由于他的网络704A的大小仍然可以被发送关于共享内容的通知。相反,具有相对较高的pVisit分数(在此为0.5)的成员(诸如Souvik 704D)可能由于缺乏他的网络704D的大小而不会被发送关于共享内容的通知。
对于诸如Zheng 702F的成员,即使他的网络704F很大并且他的DSI分数被计算得相当高,也不提供通知。这可能是因为在未发送通知时他的DSI分数与在发送通知时他的DSI分数之间的差异不大于阈值。换言之,仅仅因为所述成员很可能与推送对象进行交互并且如果他这样做则对系统非常有价值,例如,如果发送通知实际上没有添加太多(如果有的话)发生这样的交互的概率,则仍然可能不会发送通知。这通常会发生在成员已经在社交网络服务上非常活跃的情况下(并且因此,可能有机地遇到推送对象,而不需要通知)。
图8是图示了根据示例性实施例的用于确定是否针对一个或多个潜在推送对象中的每个潜在推送对象发送通知的方法800的流程图。
在操作802处,获得多个样本推送对象。在操作804处,接收在线服务的第一用户的标识。所述在线服务的第一用户在所述在线服务中具有与所述在线服务的一个或多个额外用户中的每个额外用户的连接。然后,针对多个潜在推送对象中的每个潜在推送对象开始循环。在操作806处,针对潜在推送对象计算第一下游影响分数。基于一个或多个机器学习模型,对第一下游影响分数的计算指示在关于潜在推送对象的通知被发送给第一用户的情况下第一用户与潜在推送对象进行交互的可能性和价值。在操作808处,针对潜在推送对象计算第二下游影响分数。基于一个或多个机器学习模型,对第二下游影响分数的计算指示在关于潜在推送对象的通知未被发送给第一用户的情况下第二用户与潜在推送对象进行交互的可能性和价值。
在操作810处,从第一下游影响分数中减去第二下游影响分数,产生差异。在操作812处,确定所述差异是否超过阈值。如果是,则在操作814处,生成关于潜在推送对象的通知,并且在操作816处,导致通知被呈现给第一用户。取决于用户所使用的图形用户界面和系统,可以以多种不同方式来执行该导致。在一些示例性实施例中,生成通知并且将其作为电子邮件或文本消息来发送。在其他示例性实施例中,经由在用户设备上运行的应用(诸如在移动设备上运行的“app”)生成并且表面化所述通知。在一些示例性实施例中,所述应用实际上可以使用用户设备上的操作系统来表面化所述通知。
如果在操作810处确定差异没有超过阈值,则在816处,不生成或发送关于潜在推送对象的通知。在操作818处,确定是否存在要检查的任何额外潜在推送对象。如果是,则方法800循环回到操作806以用于下一潜在推送对象。如果否,则方法800结束。
图9是图示了根据示例实施例的计算第一下游影响分数的方法806的流程图。
在操作900处,潜在推送对象、第一用户的标识以及关于潜在推送对象的通知将被发送给第一用户的指示将被推送到第一机器学习模型,所述第一机器学习模型被训练以输出第一用户将看到潜在推送对象的概率。在操作902处,潜在推送对象、第一用户的标识以及关于潜在推送对象的通知将被发送到第一用户的指示将被推送到第二机器学习模型,所述第二机器学习模型被训练以输出潜在推送对象将由第一用户经由图像用户接口进行交互的概率与这样的交互将提供的价值的组合。在操作904处,第一机器学习模型和第二机器学习模型的输出与针对在线服务中的具有到第一用户的连接的一个或多个额外用户中的每个额外用户的第一递归计算出的下游影响分数进行组合。
图10是图示了根据示例性实施例的计算第二下游影响分数的方法808的流程图。
在操作1000处,潜在推送对象、第一用户的标识以及关于潜在推送对象的通知将不被发送给第一用户的指示将被推送到第一机器学习模型。在操作1002处,潜在推送对象、第一用户的标识以及关于潜在推送对象的通知将不被发送给第一用户的指示将被推送到第二机器学习模型。在操作1004处,第一机器学习模型和第二机器学习模型的输出与针对在线服务中的具有到第一用户的连接的一个或多个额外用户中的每个额外用户的第二递归计算出的下游影响分数进行组合。
图11是图示了能够被安装在上述设备的任何一个或多个设备上的软件架构1102的框图1100。图11仅仅是软件架构的非限制性示例,并且将意识到,能够实施许多其他架构以促进在本文中所描述的功能。在各种实施例中,软件架构1102由诸如图12的机器1200之类的硬件来实施,所述机器1200包括处理器1210、存储器1230和输入/输出(I/O)组件1250。在该示例性架构中,软件架构1102能够被概念化为层的堆栈,其中,每层可以提供特定功能。例如,软件架构1102包括诸如操作系统1104、库1106、框架1108和应用1110之类的层。在操作上,应用1110通过软件堆栈调用API调用1112,并且响应于API调用1112而接收消息1114,这与一些实施例一致。
在各种实现方式中,操作系统1104管理硬件资源并且提供公共服务。操作系统1104例如包括内核1120、服务1122和驱动器1124。内核1120充当在硬件与其他软件层之间的抽象层,与一些实施例一致。例如,内核1120提供存储器管理、处理器管理(例如,调度)、组件管理、网络和安全设置,以及其他功能。服务1122能够为其他软件层提供其他公共服务。根据一些实施例,驱动器1124负责控制底层硬件或者与底层硬件接口。例如,驱动器1124能够包括显示驱动器、相机驱动器、或低能量驱动器、闪存驱动器、串行通信驱动器(例如,通用串行总线(USB)驱动器)、驱动器、音频驱动器、电源管理驱动器等。
在一些实施例中,库1106提供由应用1110所利用的低级公共基础结构。库1106能够包括系统库1130(例如,C标准库),其能够提供诸如存储器分配函数、串操纵函数、数学函数等的函数。另外,库1106能够包括API库1132,诸如媒体库(例如,用于支持各种媒体格式的呈现和操纵的库,诸如运动图像专家组-4(MPEG4)、高级视频编码(H.264或AVC)、运动图像专家组层3(MP3)、高级音频编码(AAC)、自适应多速率(AMR)音频编解码器、联合图像专家组(JPEG或JPG)或便携式网络图形(PNG)),图形库(例如,用于在显示器上的图形上下文中以二维(2D)和三维(3D)呈现的OpenGL框架),数据库库(例如,用于提供各种关系数据库功能的SQLite),web库(例如,用于提供网页浏览功能的WebKit)等。库1106还能够包括各种其他库1134,以向应用1110提供许多其他API。
根据一些实施例,框架1108提供能够由应用1110所利用的高级公共基础结构。例如,框架1108提供各种GUI功能、高级资源管理、高级位置服务等。框架1108能够提供能够由应用1110所利用的宽谱的其他API,其中的一些API可以特定于特定操作系统1104或平台。
在示例性实施例中,应用1110包括家庭应用1150、联系人应用1152、浏览器应用1154、书籍阅读器应用1156、位置应用1158、媒体应用1160、消息传递应用1162、游戏应用1164以及各种其他应用,诸如第三方应用1166。根据一些实施例,应用1110是执行在程序中定义的功能的程序。能够采用各种编程语言来创建应用1110中的一个或多个应用,其以各种方式来构造,诸如面向对象的编程语言(例如,Objective-C、Java或C++)或过程编程语言(例如,C或汇编语言)。在特定示例中,第三方应用1166(例如,由特定平台的供应商以外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用)可以是在移动操作系统(诸如IOSTM、ANDROIDTM、Phone或其他移动操作系统)上运行的移动软件。在该示例中,第三方应用1166能够调用由操作系统1104提供的API调用1112以促进在本文中所描述的功能。
图12图示了根据示例性实施例的计算机系统形式的机器1200的图形表示,在其中可以运行一组指令以使所述机器执行在本文中所讨论的任何一种或多种方法。具体而言,图12示出了计算机系统的示例性形式的机器1200的图形表示,其中可以运行指令1216(例如,软件、程序、应用1110、小应用程序、app或其他可执行码)以用于使机器1200执行在本文中所讨论的任何一种或多种方法。例如,指令1216可以使机器1200执行图8的方法800。另外地或替代地,指令1216可以实施图1-10,等等。指令1216将通用的未编程的机器1200转换成特定的机器1200,该特定的机器1200被编程为以所描述的方式来执行所描述和图示的功能。在替代实施例中,机器1200作为独立设备操作或者可以被耦合(例如,联网)到其他机器。在联网部署中,机器1200可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力来操作,或者作为对等(或分布式)网络环境中的对等机器来操作。机器1200可以包括但不限于:服务器计算机,客户端计算机,PC,平板计算机,膝上型计算机,上网本,机顶盒(STB),便携式数字助理(PDA),娱乐媒体系统,蜂窝电话,智能电话,移动设备,可穿戴设备(例如,智能手表),智能家居设备(例如,智能家电),其他智能设备,网络家电,网络路由器,网络交换机,网桥,或者能够顺序地或者以其他方式执行指令1216的任何机器,其指定机器1200要采取的动作。此外,尽管仅图示了单个机器1200,但是术语“机器”还应当包括机器1200的集合,所述机器个体地或联合地执行指令1216以执行在本文中所讨论的任何一种或多种方法。
机器1200可以包括处理器1210、存储器1230和I/O组件1250,其可以被配置为例如经由总线1202彼此通信。在示例性实施例中,处理器1210(例如,中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)、另一处理器或者其任何合适的组合)可以包括例如可以执行指令1216的处理器1212和处理器1214。术语“处理器”旨在包括多核处理器,多核处理器可以包括可以同时执行指令1216的两个或更多个独立处理器(有时被称为“核”)。尽管图12示出了多个处理器1210,但是机器1200可以包括具有单个核的单个处理器,具有多个核的单个处理器(例如,多核处理器),具有单个核的多个处理器,具有多个核的多个处理器,或者任何其组合。
存储器1230可以包括主存储器1232、静态存储器1234和存储单元1236,所有这些都能由处理器1210例如经由总线1202来访问。主存储器1232、静态存储器1234和存储单元1236存储体现在本文中所描述的方法或功能中的任何一个或多个方法或功能的指令1216。指令1216在由机器1200运行其期间还可以完全或部分地驻留在主存储器1232内、在静态存储器1234内、在存储单元1236内、在处理器1210的至少一个内(例如,在处理器的高速缓存存储器内)、或者其任何适当的组合。
I/O组件1250可以包括各种各样的组件以接收输入、提供输出、产生输出、传送信息、交换信息、捕获测量等。包含在特定机器1200中的特定I/O组件1250将取决于机器1200的类型。例如,诸如移动电话的便携式机器将可能包括触摸输入设备或者其他这样的输入机构,而无头服务器机器将可能不包括这样的触摸输入设备。将意识到,I/O组件1250可以包括图12中未示出的许多其他组件。根据功能仅对I/O组件1250进行分组以简化以下讨论,并且分组不是限制性的。在各种示例性实施例中,I/O组件1250可以包括输出组件1252和输入组件1254。输出组件1252可以包括视觉组件(例如,诸如等离子显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT)的显示器,声学组件(例如扬声器),触觉组件(例如,振动电动机、电阻机构),其他信号发生器,等等。输入组件1254可以包括字母数字输入组件(例如,键盘,被配置为接收字母数字输入的触摸屏,光学键盘或者其他字母数字输入组件),基于点的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或另一定点仪器),触觉输入组件(例如,物理按钮,提供触摸或触摸手势的位置和/或力的触摸屏,或者其他触觉输入组件),音频输入组件(例如,麦克风)等。
在另外的示例性实施例中,I/O组件1250可以包括生物计量组件1256、运动组件1258、环境组件1260或位置组件1262,以及各种其他组件。例如,生物计量组件1256可以包括用于检测表达(例如,手表达、面部表达、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、出汗或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或者基于脑电图的识别)等的组件。运动组件1258可以包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等。环境组件1260可以包括例如照明传感器组件(例如,光度计),温度传感器组件(例如,检测环境温度的一个或多个温度计),湿度传感器组件,压力传感器组件(例如,气压计),声学传感器组件(例如,检测背景噪声的一个或多个麦克风),接近度传感器组件(例如,检测附近物体的红外传感器),气体传感器(例如,用于为了安全检测危险气体的浓度或者测量大气中的污染物的气体检测传感器),或者可提供与周围物理环境相对应的指示、测量或信号的其他组件。位置组件1262可以包括位置传感器组件(例如,全球定位系统(GPS)接收器组件)、高度传感器组件(例如,检测可以从其导出高度的空气压力的高度计或气压计)、取向传感器组件(例如,磁力计)等。
可以使用各种技术来实施通信。I/O组件1250可以包括通信组件1264,其可操作用于分别经由耦合1282和耦合1272将机器1200耦合到网络1280或设备1270。例如,通信组件1264可以包括网络接口组件或者与网络1280接口的另一合适的设备。在另外的示例中,通信组件1264可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、组件(例如,低能量),组件以及其他通信组件,以经由其他模态来提供通信。设备1270可以是另一机器或者各种外围设备中的任何一种(例如,经由USB耦合的外围设备)。
此外,通信组件1264可以检测识别符或者包括可操作用于检测识别符的组件。例如,通信组件1264可以包括射频识别(RFID)标签读取器组件、NFC智能标签检测组件、光学读取器组件(例如,用于检测一维条形码(诸如通用产品码(UPC)条码)、多维条形码(诸如快速响应(QR)码、Aztec码、数据矩阵、Dataglyph、MaxiCode、PDF417、超级码、UCC RSS-2D条形码和其他光学码)的光学传感器),或声学检测组件(例如,用于识别标记音频信号的麦克风)。另外,可以经由通信组件1264来导出各种信息,诸如经由互联网协议(IP)地理定位的位置、经由信号三角测量的位置、经由检测可以指示特定位置的NFC信标信号的位置,等等。
可执行指令和机器存储介质
各种存储器(即,1230、1232、1234和/或(一个或多个)处理器1210的存储器)和/或存储单元1236可以存储体现在本文所描述的一种或多种方法或功能或者由其所利用的一组或多组指令1216和数据结构(例如,软件)。这些指令(例如,指令1216)在由(一个或多个)处理器1210运行时引起各种操作实施所公开的实施例。
如在本文中所使用的,术语“机器存储介质”、“设备存储介质”和“计算机存储介质”意指相同的事物并且可以互换地使用。这些术语指代存储可执行指令1216和/或数据的单个或多个存储设备和/或介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。因此,所述术语应当被视为包括但不限于固态存储器,以及光学和磁性介质,包括处理器1210内部或外部的存储器。机器存储介质、计算机存储介质和/或机器存储介质的具体示例包括非易失性存储器,包括例如半导体存储器设备,例如可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、现场可编程门阵列(FPGA)和闪存设备;磁盘,诸如内部硬盘和可移除磁盘;磁光盘;以及CD-ROM和DVD-ROM磁盘。术语“机器存储介质”、“计算机存储介质”和“设备存储介质”明确地排除了载波、经调制的数据信号以及其他这样的介质,其中的至少一些被下文所讨论的术语“信号介质”所涵盖。
传输介质
在各种示例性实施例中,网络1280的一个或多个部分可以是自组网、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、互联网、互联网的一部分、PSTN的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、网络、另一类型的网络、或者两种或更多种这样的网络的组合。例如,网络1280或网络1280的一部分可以包括无线或蜂窝网络,并且耦合1282可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接或者其他类型的蜂窝或无线耦合。在该示例中,耦合1282可以实施各种类型的数据传输技术中的任何一种,诸如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线电服务(GPRS)技术、增强型数据速率GSM演进(EDGE)技术、第三代合作伙伴计划(3GPP)(包括3G、第四代无线(4G)网络)、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作性(WiMAX)、长期演进(LTE)标准、由各种标准设置组织定义的其他标准,其他远程协议,或者其他数据传输技术。
指令1216可以经由网络接口设备(例如,包含在通信组件1264中的网络接口组件)使用传输介质并且利用多个公知的传输协议中的任何一个协议(例如,HTTP)在网络1280上发送或接收。类似地,指令1216可以使用传输介质经由耦合1272(例如,对等耦合)向设备1270进行发送或接收。术语“传输介质”和“信号介质”意指相同的事物,并且在本公开中互换地使用。术语“传输介质”和“信号介质”应当被视为包括能够存储、编码或携带指令1216以供机器1200执行的任何无形介质,并且包括数字或模拟通信信号或者其他无形介质以促进这样的软件的通信。因此,术语“传输介质”和“信号介质”应当被视为包括任何形式的经调制的数据信号、载波等。术语“经调制的数据信号”意指以对信号中的信息进行编码的方式设置或改变其一个或多个特性的信号。
计算机可读介质
术语“机器可读介质”、“计算机可读介质”和“设备可读介质”意指相同的事物,并且可以在本公开中互换地使用。这些术语被定义为包括机器存储介质和传输介质。因此,这些术语包括存储设备/介质和载波/经调制的数据信号。
Claims (20)
1.一种系统,包括:
存储器;以及
在其上存储有指令的计算机可读介质,所述指令当由处理器运行时使所述系统:
获得多个潜在推送对象,其中,每个潜在推送对象包括数据结构,所述数据结构包含潜在地能够被显示在社交网络服务的图形用户界面中的推送内的一条信息;
接收在线服务的第一用户的标识,所述在线服务的所述第一用户具有所述在线服务中到所述在线服务的一个或多个额外用户中的每个额外用户的连接;
针对所述多个潜在推送对象中的每个潜在推送对象:
基于一个或多个机器学习模型来计算针对所述潜在推送对象的第一下游影响分数,对所述第一下游影响分数的所述计算指示在关于所述潜在推送对象的通知被发送给所述第一用户的情况下所述第一用户与所述潜在推送对象进行交互的可能性和价值;
基于一个或多个机器学习模型来计算针对所述潜在推送对象的第二下游影响分数,对所述第二下游影响分数的所述计算指示在关于所述潜在推送对象的通知未被发送给所述第一用户的情况下第二用户与所述潜在推送对象进行交互的可能性和价值;
从所述第一下游影响分数中减去所述第二下游影响分数以产生差异;
确定所述差异是否超过阈值;
响应于对所述差异超过阈值的确定而生成关于所述潜在推送对象的通知并且使所述通知被呈现给所述第一用户。
2.根据权利要求1所述的系统,其中,计算针对所述潜在推送对象的所述第一下游影响分数包括:
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将被发送给所述第一用户的指示推送到第一机器学习模型,所述第一机器学习模型被训练以输出所述潜在推送对象将被所述第一用户看到的概率;
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将被发送给所述第一用户的指示推送到第二机器学习模型,所述第二机器学习模型被训练以输出所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合;以及
将所述第一机器学习模型和所述第二机器学习模型的输出与针对所述在线服务的具有到所述第一用户的连接的所述一个或多个额外用户中的每个额外用户的第一递归计算出的下游影响分数进行组合。
3.根据权利要求2所述的系统,其中,计算针对所述潜在推送对象的所述第二下游影响分数包括:
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将不被发送给所述第一用户的指示推送到所述第一机器学习模型;
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将不被发送给所述第一用户的指示推送到所述第二机器学习模型;以及
将所述第一机器学习模型和所述第二机器学习模型的输出与针对所述在线服务的具有到所述第一用户的连接的所述一个或多个额外用户中的每个额外用户的第二递归计算出的下游影响分数进行组合。
4.根据权利要求3所述的系统,其中,所述第一递归计算出的下游影响分数和所述第二递归计算出的下游影响分数是仅针对所述第一用户的第一级连接来计算的。
5.根据权利要求3所述的系统,其中,所述第一递归计算出的下游影响分数和所述第二递归计算出的下游影响分数是针对所述第一用户的第一级连接和大于第一级的连接来计算的。
6.根据权利要求2所述的系统,其中,所述第二机器学习模型被训练以利用针对对应的潜在推送对象的动作者作为确定所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合的特征。
7.根据权利要求2所述的系统,其中,所述第二机器学习模型被训练以利用针对用户的网络大小作为确定所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合的特征。
8.一种方法,包括:
获得多个潜在推送对象,其中,每个潜在推送对象包括数据结构,所述数据结构包含潜在地能够被显示在社交网络服务的图形用户界面中的推送内的一条信息;
接收在线服务的第一用户的标识,所述在线服务的所述第一用户具有所述在线服务中到所述在线服务的一个或多个额外用户中的每个额外用户的连接;
针对所述多个潜在推送对象中的每个潜在推送对象:
基于一个或多个机器学习模型来计算针对所述潜在推送对象的第一下游影响分数,对所述第一下游影响分数的所述计算指示在关于所述潜在推送对象的通知被发送给所述第一用户的情况下所述第一用户与所述潜在推送对象进行交互的可能性和价值;
基于一个或多个机器学习模型来计算针对所述潜在推送对象的第二下游影响分数,对所述第二下游影响分数的所述计算指示在关于所述潜在推送对象的通知未被发送给所述第一用户的情况下第二用户与所述潜在推送对象进行交互的可能性和价值;
从所述第一下游影响分数中减去所述第二下游影响分数以产生差异;
确定所述差异是否超过阈值;
响应于对所述差异超过阈值的确定而生成关于所述潜在推送对象的通知并且使所述通知被呈现给所述第一用户。
9.根据权利要求8所述的方法,其中,计算针对所述潜在推送对象的所述第一下游影响分数包括:
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将被发送给所述第一用户的指示推送到第一机器学习模型,所述第一机器学习模型被训练以输出所述潜在推送对象将被第一用户看到的概率;
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将被发送给所述第一用户的指示推送到第二机器学习模型,所述第二机器学习模型被训练以输出所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合;以及
将所述第一机器学习模型和所述第二机器学习模型的输出与针对所述在线服务的具有到所述第一用户的连接的所述一个或多个额外用户中的每个额外用户的第一递归计算出的下游影响分数进行组合。
10.根据权利要求9所述的方法,其中,计算针对所述潜在推送对象的所述第二下游影响分数包括:
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将不被发送给所述第一用户的指示推送到所述第一机器学习模型;
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将不被发送给所述第一用户的指示推送到所述第二机器学习模型;以及
将所述第一机器学习模型和所述第二机器学习模型的输出与针对所述在线服务的具有到所述第一用户的连接的所述一个或多个额外用户中的每个额外用户的第二递归计算出的下游影响分数进行组合。
11.根据权利要求10所述的方法,其中,所述第一递归计算出的下游影响分数和所述第二递归计算出的下游影响分数是仅针对所述第一用户的第一级连接来计算的。
12.根据权利要求10所述的方法,其中,所述第一递归计算出的下游影响分数和所述第二递归计算出的下游影响分数是针对所述第一用户的第一级连接和大于第一级的连接来计算的。
13.根据权利要求9所述的方法,其中,所述第二机器学习模型被训练以利用针对对应的潜在推送对象的动作者作为确定所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合的特征。
14.根据权利要求9所述的方法,其中,所述第二机器学习模型被训练以利用针对用户的网络大小作为确定所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合的特征。
15.一种包括指令的非瞬态机器可读存储介质,所述指令当由一个或多个机器实施时使所述一个或多个机器执行包括以下项的操作:
获得多个潜在推送对象,其中,每个潜在推送对象包括数据结构,所述数据结构包含潜在地能够被显示在社交网络服务的图形用户界面中的推送内的一条信息;
接收在线服务的第一用户的标识,所述在线服务的所述第一用户具有所述在线服务中到所述在线服务的一个或多个额外用户中的每个额外用户的连接;
针对所述多个潜在推送对象中的每个潜在推送对象:
基于一个或多个机器学习模型来计算针对所述潜在推送对象的第一下游影响分数,对所述第一下游影响分数的所述计算指示在关于所述潜在推送对象的通知被发送给所述第一用户的情况下所述第一用户与所述潜在推送对象进行交互的可能性和价值;
基于一个或多个机器学习模型来计算针对所述潜在推送对象的第二下游影响分数,对所述第二下游影响分数的所述计算指示在关于所述潜在推送对象的通知未被发送给所述第一用户的情况下第二用户与所述潜在推送对象进行交互的可能性和价值;
从所述第一下游影响分数中减去所述第二下游影响分数以产生差异;
确定所述差异是否超过阈值;
响应于对所述差异超过阈值的确定而生成关于所述潜在推送对象的通知并且使所述通知被呈现给所述第一用户。
16.根据权利要求15所述的非瞬态机器可读存储介质,其中,计算针对所述潜在推送对象的所述第一下游影响分数包括:
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将被发送给所述第一用户的指示推送到第一机器学习模型,所述第一机器学习模型被训练以输出所述潜在推送对象将被所述第一用户看到的概率;
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将被发送给所述第一用户的指示推送到第二机器学习模型,所述第二机器学习模型被训练以输出所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合;以及
将所述第一机器学习模型和所述第二机器学习模型的输出与针对所述在线服务的具有到所述第一用户的连接的所述一个或多个额外用户中的每个额外用户的第一递归计算出的下游影响分数进行组合。
17.根据权利要求16所述的非瞬态机器可读存储介质,其中,计算针对所述潜在推送对象的所述第二下游影响分数包括:
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将不被发送给所述第一用户的指示推送到所述第一机器学习模型;
将所述潜在推送对象、所述第一用户的所述标识以及关于所述潜在推送对象的通知将不被发送给所述第一用户的指示推送到所述第二机器学习模型;以及
将所述第一机器学习模型和所述第二机器学习模型的输出与针对所述在线服务的具有到所述第一用户的连接的所述一个或多个额外用户中的每个额外用户的第二递归计算出的下游影响分数进行组合。
18.根据权利要求17所述的非瞬态机器可读存储介质,其中,所述第一递归计算出的下游影响分数和所述第二递归计算出的下游影响分数是仅针对所述第一用户的第一级连接来计算的。
19.根据权利要求17所述的非瞬态机器可读存储介质,其中,所述第一递归计算出的下游影响分数和所述第二递归计算出的下游影响分数是针对所述第一用户的第一级连接和大于第一级的连接来计算的。
20.根据权利要求16所述的非瞬态机器可读存储介质,其中,所述第二机器学习模型被训练以利用针对对应的潜在推送对象的动作者作为确定所述潜在推送对象将由所述第一用户经由图形用户界面进行交互的概率与这样的交互将提供的价值的组合的特征。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/144,848 | 2018-09-27 | ||
US16/144,848 US10956524B2 (en) | 2018-09-27 | 2018-09-27 | Joint optimization of notification and feed |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110955840A true CN110955840A (zh) | 2020-04-03 |
CN110955840B CN110955840B (zh) | 2023-10-27 |
Family
ID=69947573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910904528.4A Active CN110955840B (zh) | 2018-09-27 | 2019-09-24 | 通知和推送的联合优化 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10956524B2 (zh) |
CN (1) | CN110955840B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11531694B1 (en) * | 2018-10-09 | 2022-12-20 | Amazon Technologies, Inc. | Machine learning based improvements in estimation techniques |
US10943388B1 (en) * | 2019-09-06 | 2021-03-09 | Zspace, Inc. | Intelligent stylus beam and assisted probabilistic input to element mapping in 2D and 3D graphical user interfaces |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106649774A (zh) * | 2016-12-27 | 2017-05-10 | 北京百度网讯科技有限公司 | 基于人工智能的对象推送方法及装置 |
US20170222960A1 (en) * | 2016-02-01 | 2017-08-03 | Linkedin Corporation | Spam processing with continuous model training |
CN107526850A (zh) * | 2017-10-12 | 2017-12-29 | 燕山大学 | 基于多重个性化特征混合架构的社交网络好友推荐方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10565229B2 (en) * | 2018-05-24 | 2020-02-18 | People.ai, Inc. | Systems and methods for matching electronic activities directly to record objects of systems of record |
US9411855B2 (en) * | 2010-10-25 | 2016-08-09 | Salesforce.Com, Inc. | Triggering actions in an information feed system |
US8918468B1 (en) * | 2011-07-19 | 2014-12-23 | West Corporation | Processing social networking-based user input information to identify potential topics of interest |
US20140019443A1 (en) * | 2012-07-10 | 2014-01-16 | Venor, Inc. | Systems and methods for discovering content of predicted interest to a user |
US10958742B2 (en) * | 2017-02-16 | 2021-03-23 | International Business Machines Corporation | Cognitive content filtering |
US10491962B2 (en) * | 2018-03-14 | 2019-11-26 | Rovi Guides, Inc. | Systems and methods for presenting event notifications, based on active applications in a social group, on devices notwithstanding a user instruction to disable event notifications |
-
2018
- 2018-09-27 US US16/144,848 patent/US10956524B2/en active Active
-
2019
- 2019-09-24 CN CN201910904528.4A patent/CN110955840B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170222960A1 (en) * | 2016-02-01 | 2017-08-03 | Linkedin Corporation | Spam processing with continuous model training |
CN106649774A (zh) * | 2016-12-27 | 2017-05-10 | 北京百度网讯科技有限公司 | 基于人工智能的对象推送方法及装置 |
CN107526850A (zh) * | 2017-10-12 | 2017-12-29 | 燕山大学 | 基于多重个性化特征混合架构的社交网络好友推荐方法 |
Non-Patent Citations (2)
Title |
---|
姜华;: "基于本体的多主体网络协作学习模型研究" * |
张继东;李鹏程;: "融合多源数据的移动社交网络用户行为感知研究" * |
Also Published As
Publication number | Publication date |
---|---|
US20200104420A1 (en) | 2020-04-02 |
US10956524B2 (en) | 2021-03-23 |
CN110955840B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10678997B2 (en) | Machine learned models for contextual editing of social networking profiles | |
CN109740045B (zh) | 针对搜索结果的因素化模型和基于搜索结果的通信 | |
US11250340B2 (en) | Feature contributors and influencers in machine learned predictive models | |
US11514115B2 (en) | Feed optimization | |
US11151661B2 (en) | Feed actor optimization | |
US10949480B2 (en) | Personalized per-member model in feed | |
US11544672B2 (en) | Instant content notification with user similarity | |
US20200401644A1 (en) | Two-stage training with non-randomized and randomized data | |
US11775601B2 (en) | User electronic message system | |
US10572835B2 (en) | Machine-learning algorithm for talent peer determinations | |
CN118414664A (zh) | 自动gif生成平台 | |
CN110955840B (zh) | 通知和推送的联合优化 | |
US20220391671A1 (en) | Dynamic utility functions for inference in machine-learned models | |
US20200175084A1 (en) | Incorporating contextual information in large-scale personalized follow recommendations | |
US11194877B2 (en) | Personalized model threshold | |
US20230077840A1 (en) | Machine learning model for specialty knowledge base | |
US20230075600A1 (en) | Neural network prediction using trajectory modeling | |
US11461421B2 (en) | Techniques for suggesting skills | |
US11769048B2 (en) | Recommending edges via importance aware machine learned model | |
US11797619B2 (en) | Click intention machine learned models | |
US11868916B1 (en) | Social graph refinement | |
US20230334308A1 (en) | Deep reinforcement learning for skill recommendation | |
CN110858235B (zh) | 热启动广义加性混合效应(game)框架 | |
US20230196070A1 (en) | Deep embedding learning models with mimicry effect | |
US20240354641A1 (en) | Recommending content using multimodal memory embeddings |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |