CN110795624B - 分析个性化框架 - Google Patents

分析个性化框架 Download PDF

Info

Publication number
CN110795624B
CN110795624B CN201911011979.1A CN201911011979A CN110795624B CN 110795624 B CN110795624 B CN 110795624B CN 201911011979 A CN201911011979 A CN 201911011979A CN 110795624 B CN110795624 B CN 110795624B
Authority
CN
China
Prior art keywords
user
interest
machine learning
learning model
initial
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
Application number
CN201911011979.1A
Other languages
English (en)
Other versions
CN110795624A (zh
Inventor
S.S.多莱-拉吉
杜自林
N.N.耶
陈滢
W.张
A.阿尔-阿卢西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN110795624A publication Critical patent/CN110795624A/zh
Application granted granted Critical
Publication of CN110795624B publication Critical patent/CN110795624B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Medical Informatics (AREA)
  • Operations Research (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Economics (AREA)

Abstract

用于个性化分析用户界面的方法、***和计算机可读介质。该方法包括根据接收的用户交互数据生成训练数据集,将训练数据集输入到机器学习模型以训练该模型,生成对于特定用户的用户兴趣得分集,其中每个用户兴趣得分指示用户对访问与应用的UI元素相对应的信息的兴趣,根据用户兴趣得分确定用户对不被包括在初始UI中并且至少具有阈值得分的特定UI元素感兴趣,动态修改初始UI以包括该特定UI元素,呈现更新的UI,监控进一步的用户交互,基于进一步的用户交互更新模型,以及基于更新的模型修改更新的UI。

Description

分析个性化框架
技术领域
本文档涉及在分析环境内提供个性化框架。
背景技术
本文档涉及在分析环境内提供个性化框架。与互联网上的内容交互的用户生成交互数据,该交互数据可以通过不同的用户界面(user interface,UI)元素来查看和分析。用户界面以及由用户界面呈现的内容(诸如分析数据)可以通过自动框架来定制。
发明内容
通常,本说明书中描述的主题的一个创新方面可以具体体现在一种方法中,该方法包括由计算设备接收指示第一用户与呈现给该第一用户的分析报告应用的初始UI的一个或多个用户界面(UI)元素的交互的用户交互数据。该方法包括根据接收的用户交互数据生成训练数据集,并将训练数据集输入到机器学习模型。响应于训练数据集,该方法包括由计算设备训练机器学习模型,并且使用经训练的机器学习模型生成对于第二用户的用户兴趣得分集,其中用户兴趣得分中的每一个指示第二用户对访问与分析报告应用的UI元素相对应的信息的兴趣。该方法包括基于与不被包括在初始UI中的特定UI元素相关联的阈值得分,确定用户兴趣得分集中的至少一个正面地指示第二用户对访问与该特定UI元素相对应的信息的兴趣,并且响应于确定用户兴趣得分集中的至少一个正面地指示第二用户对访问与该特定UI元素相对应的信息的兴趣,动态地修改初始UI,包括将该特定UI元素合并到初始UI中,以获取包括不被包括在初始UI中的特定UI元素的更新的UI。该方法包括向第二用户呈现包括特定UI的更新的UI,在向第二用户呈现更新的UI之后,监控与更新的UI的进一步的用户交互,以及基于进一步的用户交互来更新机器学习模型。该方法包括基于更新的机器学习模型来选择呈现在UI中的更新的UI元素集。
这些和其他实施例中的每一个都可以可选地包括以下特征中的一个或多个。在一些实施方式中,机器学习模型是逻辑回归模型。在一些实施方式中,机器学习模型执行深度和广度学习。在一些实施方式中,机器学习模型是长期短期记忆模型。
该方法还可以包括确定与另一UI元素相关联的用户兴趣得分集中的得分小于与该另一UI元素相关联的阈值得分;其中基于该确定,不向第二用户显示该另一UI元素。该方法还可以包括基于第二用户的交互和特性对第二用户进行分类。
在一些实施方式中,接收的用户交互数据涉及两个或更多不同的主题,并且基于根据对于主题的用户兴趣得分确定的对应主题对用户的重要性,来为两个或更多不同主题中的每一个分配不同的权重。
该方法还可以包括接收指示一组多个不同用户与一个或多个UI元素的交互的用户交互数据集,根据接收的用户交互数据集生成用户组训练数据集,将该用户组训练数据集输入到机器学习模型,并且响应于用户组训练数据集,由计算设备训练机器学习模型。
在一些实施方式中,第一用户和第二用户是相同用户。在一些实施方式中,第一用户和第二用户是不同的用户。
此方面的其他实施例包括对应的***、装置和计算机程序,其被配置为执行编码在计算机存储设备上的方法的动作。
可以实施本文档中描述的主题的特定实施例,以便实现一个或多个以下优点。在某些环境中,先前没有办法向新用户提供“热启动(warm start)”,或者立即被个性化以提供相关内容或UI元素的界面。不熟悉特定应用或界面——尤其是复杂的或提供多种功能或内容的应用或界面——的用户可能会被UI或他们的体验吓倒或挫败,并且不太可能继续使用该应用。例如,在某些环境中,用户可能开始使用新的应用来分析数据,并且因为该应用太复杂,在找到对用户有用或感兴趣的内容之前为用户提供了太多的内容来进行排序,或者难以浏览(navigate),所以用户可能放弃并返回到使用他们现有的应用,或者继续低效地使用该应用。通过定制内容以满足不熟悉应用或界面的新用户的需求,以使用户体验更容易、更快和更有效,***增加了用户再次返回使用应用的可能性,并增加了用户从呈现给用户的内容中获得的价值。基于用户的交互,***可以确定、选择和呈现与用户最相关的内容,并且在一些情况下,可以避免呈现对用户不感兴趣或对用于无用的内容。通过避免呈现用户不感兴趣的内容,在调整用户界面以便向用户显示与用户相关的数据而不向用户显示与用户无关的数据的分析环境内,内容的有效个性化可以减少所使用的计算机资源(例如,处理功率、存储器等)。换句话说,它需要更少的交互(例如,菜单选择、网络请求等)用于用户被引导到他们需要的内容,从而提供相对于传统***和用户界面更高效和有效的用户界面。此外,可以避免提供用户将不使用的数据,并且还可以避免例如从远程服务器的数据传输,从而减少不必要的带宽利用。
随着所收集数据的数量/类型以及不同可用报告数量的增长,减少交互次数以达到所期望的数据集和定制用户界面(并且尤其是数据分析用户界面)的能力变得越来越重要,因为数据和可用报告的这种增长使得用户难以达到他们正在寻找的数据。此外,处于一个特定角色的用户可能只对数据和/或报告的子集感兴趣,同时处于不同角色的用户可能只对数据的不同子集感兴趣,使得标准用户界面将不会对所有用户群体有用。本文档中描述的技术使能够自动定制呈现给每个用户的用户界面,使得在用户界面中呈现与该用户相关的信息。这种定制可以通过利用机器学习模型基于用户与各种用户界面元素的交互来执行。
该***可以通过挖掘用户数据生成用于用户兴趣模型的训练数据,来自动组织内容并修改内容的呈现(例如,通过视觉或听觉效果,诸如页面上的物理放置、视觉突出、视觉效果、声音效果等)以来调整对特定用户的内容,其中该用于用户兴趣模型基于与内容或UI元素的先前的用户交互数据来学习用户兴趣。先前的用户交互数据可以指示特定用户自己的先前交互,并用于训练特定于该特定用户的用户兴趣模型。在一些实施方式中,先前的用户交互数据可以指示其他用户的先前交互,并用于训练特定于特定用户的用户兴趣模型——其他用户可以在几个用户特性上与特定用户具有阈值相似性,并且先前的用户交互数据可以包括特定用户。在一些实施方式中,先前的用户交互数据可以指示其他用户的先前交互,并用于为具有特定特性的用户训练用户兴趣模型。因此,用户界面可以是适应用户的自适应用户界面,例如基于用户的属性或基于从与用户界面相关联的用户接收的输入。
此外,利用为用户选择内容的这种方法允许新用户在与特定应用或环境交互时体验到与已经熟悉特定应用或环境的用户相似的效用和舒适度。该方法允许优化呈现给用户的内容,并允许基于用户的日常交互向用户提供内容。使用该***,用户不必做任何与他们已经做的不同的事情来接收更相关的内容——该方法使用更少的处理资源,因为用户不必单独提供关于用户认为最相关的内容的反馈。在一些应用或环境中,用户没有任何定制选项。因此,与当前可用的方法相比,所描述的技术以易于使用的格式向用户提供更相关的内容,同时需要更少的输入和更少的计算资源。
本说明书中描述的主题的一个或多个实施例的细节在附图和以下描述中阐述。从说明书、附图和权利要求书中,主题的其他特征、方面和优点将变得显而易见。
附图说明
图1是示例环境的框图,在该示例环境中,用户与被分发用于与电子文档一起呈现的数字组件的交互被用于生成用于用户兴趣模型的训练数据,该用户兴趣模型动态定制呈现交互数据的分析的用户界面。
图2是用于基于先前的用户交互数据定制应用中的内容的示例数据流。
图3是可以基于先前的用户交互数据来被定制的示例应用用户界面。
图4是用于确定不向用户提交发送数字组件的机会的示例过程的流程图。
图5是示例计算***的框图。
不同附图中相同的附图标记和名称指示相同的元件。
具体实施方式
本文档描述了提高对于特定应用或环境的用户的内容相关性以及易用性和浏览的方法、***和设备,并且允许内容提供商为用户提供更有用的数据。在一些情况下,当数字组件被呈现给用户时,用户与数字组件交互。例如,用户可以例如通过选择数字组件、通过滚动经过(scroll past)数字组件、通过关闭数字组件、通过选择查看与数字组件相关的更多内容等来进行交互。一些用户与数字组件的交互可以被分类为正面(positive)交互。正面交互是特定用户(或与特定用户共享阈值量的特性的用户)对数字组件或相似于数字组件的内容感兴趣的指示。一些用户交互可以分类为负面(negative)交互。被分类为负面交互的、用户与数字组件的交互指示特定用户或与特定用户共享阈值量的特性的用户对数字组件或相似于数字组件的内容不感兴趣。基于收集的用户交互数据,***可以生成用于用户兴趣模型的训练数据,该用户兴趣模型确定特定用户——或具有相似特性的用户——是否可能对内容的特定类型或呈现感兴趣。***可以利用两个步骤来执行该个性化过程:特征提取,其中用户交互数据被处理以确定用户交互数据内的相关特征;以及用户兴趣评分(scoring)或预测。然后,***使用用户兴趣评分来通过呈现与特定用户最相关的UI元素(例如从可以呈现的大量可能的UI元素中)来个性化UI元素。该***为不同用户群中的每个用户提供相似优化的体验,即使一些用户与***的交互较少或体验较少。
服务器可以通过检查用户与“数字组件”交互时生成的交互数据来执行特征提取。数字组件可以例如通过用户设备来呈现给用户。在此示例中,分发***接收对于要通过与用户相关联的特定用户设备被呈现给特定用户的数字组件的请求。当请求被接收时,分发***与服务器通信,以确定用户最可能感兴趣的数字组件。服务器接收用户交互数据,并且通过从用户交互数据中提取特征来根据接收的用户交互数据生成训练数据集,来生成提供给机器学习模型的训练示例。训练数据可以包含,例如,指示条件集以及这些条件是导致正面结果还是负面结果的训练示例。然后,服务器通过例如将生成的训练数据集输入到机器学习模型来训练用户兴趣模型。
可以出现个性化的多个水平。用户交互数据可以包括用户标识符和简档标识符两者——***的UI和内容个性化可以在用户特定的基础上应用,或者可以跨多个用户共享的特性被泛化(generalize)到简档水平。
***使用捕获的用户与UI元素的交互来推断用户对特定特征的兴趣。如下文更详细讨论的,特征可以包括例如度量、维度、过滤器、报告等。
用户与特定特征或特征集的交互中的每一交互可以用于生成用于用户兴趣模型的训练数据集。例如,如果用户经常生成具有默认度量的报告并选择数据的特定维度,则***可以确定用户对数据的特定维度感兴趣,并且因此生成具有数据的特定维度的报告的用户交互可以是用户对数据的特定维度感兴趣的正面示例。为简洁起见,贯穿本文档,数据的维度称为维度。
在一些实施方式中,***从环境中获取数据。网页或应用具有可以指示用户对某些度量、维度、过滤器等感兴趣的属性。例如,为在威斯康星州内运送杂货的应用生成报告的用户可能对维度威斯康星州和指示已经开始使用该应用的新用户的数量的度量感兴趣。应用的这些特征可以作为训练特征被提取和输入,以告知未来用户体验的个性化。***可以从诸如网页的URL的数据、持久标识符交互日志等中提取特征。
注意,本文档中描述的技术也可以在用户正在浏览可用应用(例如,在在线分析应用或网络浏览器中)的情况或在其他环境(例如,在发布者网页上)中实施。为简洁起见,下面的描述中的大部分将指数据分析环境。
如贯穿本文所使用的,短语“数字组件”指数字内容或数字信息的离散单元(例如,视频片段、音频片段、多媒体片段、图像、文本或内容的另一单元)。数字组件可以作为单个文件或以文件的集合被电子地存储在物理存储器设备中,并且数字组件可以采用视频文件、音频文件、多媒体文件、图像文件或文本文件的形式,并且包括广告信息,使得广告是数字组件的一种类型。通常,数字组件由单个提供商或源(例如,广告商、发布者或其他内容提供商)来定义(或提供),但是可以是来自多个源的内容的组合。来自多个不同源的数字组件可以组合成单个电子文档(例如,各种不同数字组件的集合),并且来自不同源的各种数字组件的部分可以与从搜索结果(或内容的其他部分)提取的信息组合成单个数字组件。
图1是示例环境100的框图,其中数字组件被分发以用于与电子文档一起呈现。用户与这些数字组件的交互被收集并用于生成训练数据。生成的数据用于训练动态修改分析用户界面的用户兴趣模型。示例环境100包括网络102,诸如局域网(local area network,LAN)、广域网(wide area network,WAN)、互联网或其组合。网络102连接电子文档服务器120、用户设备104、第三方设备106和数字组件分发***(digital componentdistribution system,DCDS)112(也称为分发***)。示例环境100可以包括许多不同的电子文档服务器120、不同类型的用户设备104和第三方设备106。
用户设备104或第三方设备106是能够通过网络102请求和接收资源的电子设备。示例用户设备104或第三方设备106包括个人计算机、移动通信设备以及能够通过网络102发送和接收数据的其他设备。用户设备104或第三方设备106典型地包括诸如网络浏览器的用户应用,以促进通过网络102发送和接收数据,但是由用户设备104或第三方设备106执行的本地应用也可以促进通过网络102发送和接收数据。
电子文档是在用户设备104或第三方设备106上呈现一组内容的数据。电子文档的示例包括分析报告、网页、文字处理文档、便携式文档格式(portable document format,PDF)文档、图像、视频、搜索结果页面和馈源(feed source)。诸如安装在移动、平板或桌上型计算设备上的应用的本地应用(例如,“app”)也是电子文档的示例。电子文档121(“Electronic Docs”)可以由电子文档服务器120(“Electronic Doc Servers”)提供给用户设备104或第三方设备106。例如,电子文档服务器120可以包括托管(host)发布者网站的服务器。在此示例中,用户设备104或第三方设备106可以发起对诸如给定发布者网页的资源的请求,并且托管给定发布者网页的电子文档服务器120可以通过发送机器可执行指令来响应该请求,该机器可执行指令发起给定网页在用户设备104或第三方设备106处的呈现。
在另一示例中,电子文档服务器120可以包括用户设备104或第三方设备106可以从其下载应用的应用服务器。在此示例中,用户设备104或第三方设备106可以请求资源,诸如安装应用、下载文件、然后在本地执行下载的应用所需的文件。
电子文档121可以包括各种内容。例如,电子文档121可以包括在电子文档本身内和/或不随时间变化的静态内容(例如,文本或其他指定内容)。电子文档121还可以包括可以随时间变化或者基于每个请求变化的动态内容。例如,给定电子文档121的发布者可以维护用于填充电子文档121的部分的数据源。在此示例中,给定电子文档121可以包括一个或多个标签或脚本,当给定电子文档121被用户设备104或第三方设备106处理(例如,呈递或执行)时,该一个或多个标签或脚本使得用户设备104或第三方设备106从数据源请求内容。用户设备104或第三方设备106将从数据源获取的内容集成到给定电子文档121中,以创建包括从数据源获取的内容的复合电子文档。电子文档还可以包括处理来自其他源的数据的动态生成的报告。例如,给定电子文档121可以是动态生成的报告,其分析来自多个其他数据源的数据,诸如用户与其他电子文档121的交互。
在一些情况下,给定电子文档121可以包括引用DCDS 112的一个或多个数字组件标签或数字组件脚本。在这些情况下,当给定电子文档121由用户设备104或第三方设备106处理时,数字组件标签或数字组件脚本由用户设备104执行。数字组件标签或数字组件脚本的执行配置用户设备104生成对包括一个或多个数字组件的资源的请求114(称为“组件请求”),该请求114通过网络102被传输到DCDS 112。例如,数字组件标签或数字组件脚本可以使用户设备104或第三方设备106能够生成包括报头(header)和有效载荷数据的分组化数据请求。组件请求114可以包括指定诸如从其请求数字组件的服务器的名称(或网络位置)、请求设备(例如,用户设备104或第三方设备106)的名称(或网络位置)、和/或DCDS 112可以用来选择响应于该请求而提供的一个或多个数字组件的信息的特征的事件数据。组件请求114由用户设备104或第三方设备106通过网络102(例如,电信网络)传输到DCDS112的服务器。
组件请求114可以包括指定诸如被请求的电子文档和可以呈现数字组件的电子文档的位置的特性的其他事件特征的事件数据。例如,可以向DCDS112提供事件数据,该事件数据指定对将在其中呈现数字组件的电子文档(例如网页)的引用(例如,URL)、可用于呈现数字组件的电子文档的可用位置、可用位置的大小和/或有资格在位置中呈现的媒体类型。类似地,指定与电子文档相关联的关键词(“文档关键词”)或由电子文档引用的实体(例如,人、地点或事物)的事件数据也可以被包括在组件请求114中(例如,作为有效载荷数据),并被提供给DCDS 112,以促进有资格与电子文档一起呈现的数字组件的标识。事件数据还可以包括从用户设备104或第三方设备106提交以获取搜索结果页面的搜索查询,和/或指定搜索结果和/或该搜索结果中包括的文本、听觉或其他视觉内容的数据。
组件请求114还可以包括与其他信息相关的事件数据,诸如客户端设备的用户已经提供的信息、指示从其提交组件请求的状态或区域的地理信息、或者为将显示数字组件的环境提供上下文的其他信息(例如,组件请求的一天中的时间、组件请求的一周中的一天、将显示数字组件的设备的类型(诸如移动设备或平板设备))。组件请求114可以例如通过分组化网络来传输,并且组件请求114本身可以被格式化为具有报头和有效载荷数据的分组化数据。该报头可以指定分组的目的地,并且该有效载荷数据可以包括上面讨论的任何信息。
DCDS 112响应于接收组件请求114和/或使用组件请求114中包括的信息,来选择将与给定电子文档一起呈现的数字组件。在一些实施方式中,在不到一秒的时间内选择数字组件(使用本文描述的技术),以避免可能由数字组件的延迟选择引起的错误。例如,响应于组件请求114提供数字组件的延迟会导致用户设备104处的页面加载错误,或者导致即使在电子文档的一部分被呈现在用户设备104或第三方设备106处之后,电子文档的其他部分仍然未被填充。此外,随着向用户设备104或第三方设备106提供数字组件的延迟增加,当数字组件被递送到用户设备104或第三方设备106时,电子文档更有可能将不再呈现在用户设备104处,从而负面影响用户对电子文档的体验。此外,例如,如果提供了数字组件时而不再在用户设备104或第三方设备106处呈现电子文档121,则提供数字组件的延迟会导致数字组件的递送失败。当没有与呈现给用户的内容一起提供数字组件时,这种延迟被减少。用户可以在没有数字组件的情况下更快地获取内容,并且其中传输的数据更少以及检索组件的数据库和提供组件的服务器之间没有延迟,提高了用户的体验。
***使用根据用户与诸如电子文档121的数字组件的交互而生成的数据来个性化呈现给用户设备104的电子文档121的选择。
训练数据生成器108收集用户交互数据,并生成用于机器学习模型的一个或多个训练数据集,以确定用户对特定主题、内容类型、内容呈现形式(例如,UI元素的类型)以及电子文档121的各种其他特征的兴趣。训练数据生成器108可以被实施为一个或多个服务器,并且包括特征提取器109。
特征提取器109分析用户交互数据以提取交互的特征,包括用户特性和电子文档特性。用户交互数据可以被包括在,例如,对电子文档121的请求112中。在一些实施方式中,当用户与通过用户设备104或第三方设备106服务的电子文档交互时,该交互生成指示交互的特征的单独数据。用户交互可以包括,例如,在电子文档121内的UI元素上点击,查看电子文档121的特定部分,点击查看与电子文档121的特定主题或部分相关的更多数据等等。
特征提取器109通过,例如,访问存储的用户交互数据或截取用户设备104或第三方设备106与电子文档服务器120之间的通信来收集用户交互数据。在一些实施方式中,用户交互数据可以直接从用户设备104或第三方设备106传输到特征提取器109。用户交互数据可以以各种格式提供,并且取决于格式,可以指示不同的特征。访问请求URL形式的用户交互数据可以指示用户是否已经输入术语、使用过滤器缩小其搜索、选择查看具有特定维度值的数据等。例如,访问请求URL“http://example.com/data analyticsrreport/report/visitors-demographics gender/drill=analytics.gender:women,analytics.age:25-34/”可以指示用户已经与关于example.com/dataanalyticsreport的报告进行了交互,并且已经向下深入(drill down)了两个维度(性别和年龄),以查看针对25-34岁女性的分析。用户交互数据可以以其他形式出现,诸如与持久标识符(例如,cookie)相关联地存储的数据、事件数据(例如,诸如鼠标点击、滚动、缩放、触摸手势等的应用***跟踪事件)、或者可以从诸如用户设备104或第三方设备106、电子文档服务器120、DCDS 112的设备收集或者通过诸如网络102的通信接口收集的其他类型的交互数据。
一旦收集了用户交互数据并提取了特征,***就分析提取的特征以预测用户对附加内容、信息或分析报告的兴趣。为了分析提取的特征,***生成训练数据以输入到模型。例如,***可以生成用于神经网络的训练示例。经训练的神经网络然后可以预测用户对各种特征的兴趣,并向DCDS 112提供推荐数据。推荐数据可以指示特定用户或满足用户特性的特定简档的一组用户感兴趣的特征。经训练的神经网络还可以以用户界面生成数据的形式提供推荐数据。例如,用户界面生成数据可以是当被执行时以特定格式向用户呈现内容的指令。例如,如果用户常规地选择分析报告的图形视图而不是表格视图,则***可以根据此用户的用户交互数据来确定此用户——以及满足与此用户的用户特性的特定简档相匹配的用户特性的特定简档的其他用户——对在图形视图中查看分析报告感兴趣。类似地,如果用户在呈现不同的分析报告之后历来请求呈现特定的分析报告,则***可以修改用户界面以在呈现不同的分析报告时呈现到该特定的分析报告的链接,即使到该特定的分析报告的该链接在不同分析报告的呈现中没有被预定义,并且即使该特定的分析报告处于未启动(unlaunched)状态。
训练数据生成器108接收用户交互数据的提取的特征,并生成用于机器学习模型的一个或多个训练数据集。训练数据生成器108可以使用用户交互和提取的特征来生成训练示例。例如,训练数据生成器108可以基于用户交互来生成用于神经网络的负面训练示例,其中公司用户例如,通过选择导致建议的查询被取消(dismiss)的UI元素来取消包括指示Michigan中新用户的数量的度量的建议的查询。生成的训练示例可以附加地包括指示与用户交互相关联的用户的一个或多个属性的数据。
从训练数据生成器108接收训练数据的用户兴趣模型110(User interest model,UIM 110)训练机器学***至少是置信度阈值水平,则UIM 110可以向DCDS 112或用户设备104提供该推荐,以生成个性化UI或呈现个性化内容,诸如被预测为特定用户最感兴趣的UI元素。
UIM 110也可以应用于只有简档水平数据可用的特定用户。例如,新用户可能没有与特定的应用或环境交互到足以使***生成个性化内容或内容呈现格式的水平。然后,***可以为内容或内容呈现格式提供简档水平个性化推荐。例如,如果新的(或罕见的)用户是位于纽约的家庭和花园杂志的销售运营总监,***可以为该用户确定简档,该简档指示她是运营总监、她的部门是销售部门、她的公司位于纽约、以及她对与销售增长相关的度量和维度感兴趣。
在此特定示例中,***没有通过用户设备104为新用户收集足够的用户特定数据。UIM 110可以从其他用户的第三方设备106接收用户交互数据,UIM 110可以分析至少与新用户的简档的阈值量相匹配的用户交互数据。例如,***可以分析与新用户的五个简档特性中的至少三个相匹配的用户交互数据。在一些实施方式中,特定简档特性必须匹配(例如,用户必须具有相同的职称,用户必须处于相同的状态等等)。一旦***确定并选择与新用户的简档的阈值量相匹配的来自第三方设备106的用户交互数据,UIM 110可以使用由训练数据生成器108根据所选择的用户交互数据生成的训练示例来训练机器学***上新用户可能感兴趣的内容或内容呈现格式。这使得能够为用户生成定制的用户界面,即使该用户可用的历史交互数据很少或没有可用。以这种方式,用户可以更快地被引导到感兴趣的数据,例如,通过修改用户界面以结合当感兴趣的数据的报告处于未启动状态时启动这些报告的UI元素,并且不需要用户浏览大量用户界面或菜单来启动感兴趣的数据的报告。
在一些实施方式中,如对于用户水平或简档水平的个性化内容或内容呈现格式推荐中的置信度水平不满足置信度阈值水平,则***不提供个性化推荐。
对于这里讨论的***收集关于用户的个人信息或者可能利用个人信息的情况,可以向用户提供机会以控制程序或特征是否收集个人信息(例如,关于用户的社交网络、社交动作或活动、职业、用户的偏好或用户的当前位置的信息),或者以控制是否和/或如何从内容服务器接收可能与用户更相关的内容。此外,某些数据在其被存储或使用之前可能会以一种或多种方式被匿名化,使得个人可标识信息被移除。例如,用户的身份可以被匿名化,使得不能对用户确定个人可标识信息,或者可以在获取位置信息的地方(例如城市、ZIP码或州水平)概括用户的地理位置,使得不能确定用户的特定位置。因此,用户可以控制服务器如何收集和使用关于他或她的信息。
图2是用于在图1的示例环境中实施个性化框架的示例数据流200。数据流200的操作由与用户设备104或第三方设备106通信的UIM或服务器110来执行。在一些实施方式中,流200的阶段在诸如环境100的网络环境内执行。
***收集用户交互数据并提取这些用户交互的特征。用户交互数据可以存储在用户交互数据库206中。这种用户交互数据可以包括可以存储在用户简档208中的用户简档数据。一旦***已经收集了用户交互的特征,***就生成训练数据集来训练用户兴趣模型,该用户兴趣模型预测特定用户可能感兴趣的内容或内容呈现格式。训练数据被提供给机器学习模型,并且该模型提供预测用户可能感兴趣的内容的值的输出向量。
在此特定示例中,作为流200的阶段执行的通信发生在网络102上,该网络102可以是互联网。
用户设备104包括在UI内向用户设备104的用户呈现内容的显示器。内容的可视部分在显示器的视口(viewport)202内。在一些实施方式中,视口202是用户设备104的用户正在访问的特定应用或网页的可视部分。例如,如果数字组件呈现在不覆盖用户设备104的显示器的整个可视区域的应用内,则视口202被确定为应用的可视部分。在某些应用中,可能有比可以在视口202内一次显示的内容更多的内容。这种内容可以与用户设备104的视口202内的内容在相同应用部分上,但是实际上对用户不可视,并且在用户设备104的不可视部分203内。例如,内容204a和内容204b在视口202内可视,但是内容204c在对用户设备104的用户不可视的部分203内。内容204(即,内容204a、内容204b和内容204c)可以是如上参考图1所述的各种类型的数字组件。分析应用支持大量用于呈现数据的选项,并且并非所有报告、统计数据和可用类型的度量都可以一次呈现在分析UI(analytical UI)的可视部分。UIM 110收集用户交互数据,以确定和预测特定用户最可能感兴趣的用户信息。UIM 110然后修改分析UI以呈现到相关报告、显示特定度量的UI元素等的链接,以在可用选项由于显示器的限制而无法被显示并且可能是被淹没时,向特定用户提供最相关的信息。
用户设备104的用户与由用户设备104显示的内容204交互,并且生成和收集指示这些交互特征的用户交互数据。用户交互细节将在下面并参照图3详细描述。
用户交互数据可以以各种形式收集,特征提取器109可以解析和处理所有这些用户交互数据。能够具有用户兴趣得分(score)的实体包括度量、维度、维度过滤器、报告、受众/细分市场(segment)、目标等。报告可以包括关于特定数据集的分析数据,并且可以聚合或分析特定数据集。目标受众或细分市场指示用户对查看分析感兴趣的用户类型。用户的目标可以指示用户在监控分析时希望看到的目标度量。
度量测量性能、行为和/或活动。例如,特定应用的性能度量可以包括newUsers,即指示特定时间段内新用户的数量的度量。其他度量可以指示,例如,新创建的会话的会话百分比、唯一页面视图的数量、在网页上花费的平均时间量、在网页上发生的唯一社交交互的数量、平均服务器连接时间、平均页面加载时间等。不同的环境可以具有不同的度量——应用可以具有指示在应用的特定屏幕上花费的时间量的度量,站点可以具有跟踪事件的度量,搜索引擎可以具有指示特定结果在预定时间段内获得的点击次数的度量,并且其他环境可以具有包括用户定义的定制度量的各种其他度量。
定制或用户定义的用户度量可以比没有默认设置或由用户直接选择的特征得到更多权重。例如,如果用户创建要被包括在报告或报告模板中的定制度量,则***可以在提供给用户兴趣模型的训练示例内对定制度量应用更高的权重。
维度表示用户交互数据的特定类别或特性。例如,用户交互数据集的维度可以包括在其上执行用户交互的设备类型、执行用户交互的国家、执行的交互的类型等。不同的环境可以有不同的可用维度,用户可以定义定制维度,以将他们的分析聚焦到或将数据分类到他们感兴趣的维度上。
过滤器可以是根据其数据被分类的特定特征。例如,过滤器可用于示出仅最近30天内的数据,或来自乔治亚州、内布拉斯加州和纽约所有数据,或仅示出来自用户特性的特定简档的数据。不同的环境可以有不同的过滤器,用户可以根据他们对所分析的特定数据的兴趣来定义定制过滤器。
在一些示例中,用户设备104是移动设备,诸如蜂窝电话、虚拟现实设备(例如,在耳机或诸如扬声器和显示器的组合的其他设备中实施)、智能电话、个人数字助理(例如,在桌面扬声器或诸如扬声器和显示器的组合的其他设备中实施)或平板电脑,并且通过无线网络通信。训练数据生成器108和UIM 110可以通过独立于用户设备104通过其通信的无线网络的有线网络来通信。例如,用户设备104可以是通过无线蜂窝网络通信的智能电话,而训练数据生成器108和UIM 110可以是通过有线网络通信的远程服务器。
UIM 110通过网络102从用户设备104接收用户交互数据,并预测用户对数字组件的兴趣。UIM 110然后利用用户兴趣得分来修改UI元素,以用于在用户设备104处呈现。例如,UIM 110可以确定用户设备104已经与由数字组件提供商通过数字组件服务器提供的数字组件进行了交互,该数字组件指示对关于每天在服装店进行不止一次购买的用户数量的报告有正面兴趣。UIM 110标识与交互数据相关联的唯一标识符。唯一标识符可以是例如用户或设备标识符。在一些实施方式中,唯一标识符可以是跨平台和设备携带的用户标识符。例如,唯一标识符可以是跨浏览器和设备使用的用户帐户,并且可以被使用而不管用户是在使用软件应用还是网络应用。
唯一标识符在发送给第三方时可以被保护。例如,在到呈现的内容的转发的机会(forwarded opportunity)中发送时,唯一标识符可以被加密。在一些示例中,转发的机会和唯一标识符可以通过安全套接字层(Secure Sockets Layer,SSL)传输。在一些示例中,与用户设备104的用户相关联的唯一标识符可以通过各种方法来重置,包括经由用户设备104的工厂重置。用户也可以选择完全不在任何内容请求中发送他们的唯一标识符。
在一些实施方式中,***操作的环境是网络应用,并且用户交互数据可以从网络应用的URL中提取。例如,URL可以指示命中(hit)页面计数以及得到页面请求的数量。每个命中有页面请求URL,除了指示页面的用户选择的部分、用户正在选择的度量、用户已经选择了向下深入的UI元素等之外,该页面请求URL还指示除了简档和/或用户标识符的名称或进行请求的网络位置。
特征提取器109可以在用户特定水平和简档水平上确定特征。示例性简档水平字段包括服务质量(quality of service,QOS)水平(例如,用户是否拥有优质服务)、创建简档的时间(例如,2013年12月20日13:20:12)、请求页面的网络位置、页面的名称(例如,鸟很酷(Birds are Cool)——网站和商店)、时区或看到简档的最近的时间。这种简档数据可以存储为例如用户简档208。
用户交互数据可以从从用户界面或从用户交互事件收集的数据日志中收集。在一些示例中,应用的前端可以创建定制事件来跟踪这些交互。
维度可以通过显式用户交互或通过默认设置来确定。在一些实施方式中,用户已经显式地选择了维度,并且这些用户显式操作(例如,从下拉菜单中选择维度,向下深入到维度等等)可以被记录下来。维度也可以根据默认设置来确定,诸如生成诸如报告的内容时选择的默认维度。例如,如果意大利的用户生成关于12-17岁的活跃(至少一个用户交互)用户数量的每周报告,则特征提取器109可以确定默认维度(例如,意大利国家)以及显式维度(例如,12-17岁的用户、活跃用户等)。在一些实施方式中,报告可能过于一般化,并且包括太多的维度,以至于无法针对用户兴趣进行分析。例如,在概览报告中,可能不会生成默认维度,因为那将包括***可用的每个维度。
特征提取器109还可以根据例如特定用户在收集数据时正在查看的内容的快照中确定特征。如果用户正在查看关于每月会话的报告的特定部分,特征提取器109可以在用户查看报告时记录报告的配置和相关特征。
在一些分析环境中,被称为“洞察(insight)”的内容可以被提供以用于向用户显示。洞察提供了对用户可能感兴趣的用户交互数据的分析洞察。例如,报告的每月审查选项卡(monthly review tab)内的弹出窗口(或卡片)可以被呈现为洞察,该弹出窗口指示用户最感兴趣的度量的每月进度的长达一年的快照。对于洞察的度量可以包括洞察是否被提供、洞察被提供了多少次、洞察是否被查看、洞察何时被查看、洞察是否被书签标记以用于未来的引用、洞察何时被书签标记、洞察是否被丢弃、洞察何时被丢弃、洞察被共享多少次、洞察是否被标记为有帮助、洞察在预定时间段(例如30天)内被标记为有帮助多少次,在预定时间段内洞察被标记为无帮助多少次,或者可用于与洞察交互的任何动作。取决于内容的上下文,这些以及其他度量可以应用于其他应用或内容。每个度量都可以有默认值。在一些实施方式中,默认值可以由用户指定。
用户可以彼此交互,或者通过例如问答界面与环境交互。记录用户提问或选择与其兴趣相关的问题时使用的维度、度量和过滤器。例如,如果用户提问“在进行至少一次购买之前有多少新顾客浏览了登录页面5?”***可以确定用户对指示首次顾客、至少购买一次的顾客以及维度登录页面5的度量感兴趣。
用户还可以为数据创建定制警报。例如,区域策略师可能对监控多个区域产品页面中的每一个处的用户流量水平感兴趣,并且可以在用户流量水平增加(正或负)了阈值量时创建定制警报,以确定区域何时流行。在另一示例中,用户可以被标识为负责一系列产品的全球推广的新用户,并且可以在当阈值数量的顾客在聚合水平上从该系列购买产品时,创建定制警报。UIM 110可以使用,例如,机器学习技术来确定用户会感兴趣的定制报告、度量、维度、警报等。
例如,可以通过将用户标识符和简档标识符与提取的特征相链接来存储用户交互数据。用户标识符被链接到特定用户,同时简档标识符被链接到可以与具有相同兴趣、在组织中具有相同角色等的多个用户相关联的用户特性的简档。在生成训练数据时,附加数据,诸如每个维度、度量、过滤器等的使用频率可以被存储和被分析以确定哪些度量最有用。在一些实施方式中,***可以执行这种分析来学习计算资源的最佳分配,以为其用户基础提供最佳服务。
用户交互数据、用户兴趣得分、使用数据的频率等可以取决于环境和用户的需要以不同的格式存储便于使用。例如,***可以以朝向列(column-oriented)的格式存储用户交互数据,使得每个字段的值被单独存储,并且计算开销与从存储装置中实际读出的字段数量成比例。***只能访问相关字段,并且因此避免了读取整个记录来访问例如单个字段;因此,***可以比其他存储格式更有效地使用这种格式的资源。允许其他环境的不同效率水平的其他格式包括在spanner表、在矩阵分解等中存储数据。在一些实施方式中,***根据该数据集或数据类型的最频繁使用的环境,以不同格式存储不同类型的数据。
数据可以以固定间隔被清除,在一些情况下,数据只被存储达预定时间段,以维护用户的隐私。该***可以确定在预测用户兴趣时保持准确度水平的最小时间段,并且可以存储用户兴趣数据达所确定的最小时间段。在一些实施方式中,用户可以指示他们将允许***存储他们的数据的时间段。例如,对更个性化的体验感兴趣的用户可以允许***存储他们的数据达更长的时间段。***可以将用户兴趣得分存储在用户的简档中,同时清除用户交互数据以维护用户的个性化水平。
一旦特征提取器109已经处理了用户交互数据并提取相关特征,训练数据生成器108就生成训练示例。例如,训练数据生成器108可以将用户交互数据特征格式化成输入和预期输出对。这些输入输出对可以被提供给UIM110来训练模型。
在此特定示例中,训练数据生成器108对用户交互数据进行采样,以生成输入到神经网络111a的训练数据。训练数据生成器108可以选择随机样本以获取负面示例来训练例如逻辑回归模型。训练数据生成器108还可以获得最频繁的未查看度量的样本,以最大化余量(margin)。训练数据生成器108可以获得用户交互数据的多个样本,以生成一个或多个训练数据集。
当生成训练数据集时,训练数据生成器108从用户与报告的历史交互中选择在训练数据集内使用的训练特征。训练数据生成器108以几种方式之一确定训练示例权重。在一些实施方式中,训练数据生成器108可以相等地加权每个训练示例,并且仅采样在预定时间段内的数据点。在一些实施方式中,取决于训练示例的最近程度,训练数据生成器108可以使用衰减函数来不同地加权训练示例。
***可以将训练、验证和生成测试数据分成不同百分比的建模时间和资源。***还可以交叉验证模型的输出。
UIM 110接收训练数据并训练机器学习模型来选择数字组件和/或内容呈现格式。机器学习模型可以使用多种技术中的任何一种,例如决策树、线性回归模型、逻辑回归模型、神经网络、分类器、支持向量机、归纳逻辑编程、模型组合(例如,使用诸如bagging、boosting、随机森林等的技术)、遗传算法、贝叶斯网络等,并且可以使用多种方法来训练,诸如深度学习、感知器、关联规则、归纳逻辑、聚类、最大熵分类、学习分类等。在一些示例中,机器学习模型使用监督学习。在一些示例中,机器学习模型使用无监督学习。机器学习模型还可以使用广度和深度(wide and deep)学习、长期短期记忆建模、boosting、矩阵分解、用户嵌入或项目嵌入。
广度和深度学习训练用于记忆的广度线性记忆模型以及用于跨许多特征的泛化的深度神经网络,以将两个模型的优势结合起来,对于具有稀疏输入的一般、大规模回归和分类问题特别有用。例如,广度和深度学习对于具有大量可能特征值的分类特征的问题非常有用。
为了便于解释,神经网络111a的操作是针对逻辑回归来描述的,但是应当理解,神经网络111a可以执行如上所述的许多其他技术中的任何技术。
神经网络111a用于预测特定用户/简档对给定特征感兴趣的概率。例如,给定(用户、简档)对和度量newUsers,可以训练神经网络111a来预测(用户、简档)对给定度量newUsers感兴趣的概率。在此示例中,神经网络111a使用指示(用户、简档)对是否对newUsers感兴趣的训练标签。对于单一实体(例如,度量、维度、维度过滤器、受众/细分市场、目标等),UIM 11为实体计算用户兴趣得分。当特定数字组件包括两个或更多个实体时,UIM 110可以为每个实体计算单独的用户兴趣得分和置信度得分,并将这些得分聚合以生成总体兴趣和置信度得分。
神经网络111a的输出是对特定用户的概率的预测,该特定用户或者是为其收集了先前的用户交互数据的用户,或者是在一定程度上匹配简档数据的用户。UIM 110可以提供个性化数字组件推荐、个性化UI元素和呈现格式,和/或用于用户查询的个性化建议,诸如搜索查询、表单字段等。
在一些实施方式中,UIM 110可以为数字组件提供建议,诸如要被包括在报告中的特定度量、用户感兴趣的维度值、要应用的特定维度过滤器等。UIM 110可以确定在UI的视口202内有多少内容可视。在一些实施方式中,如果在UI中呈现的内容多于视口202中的视觉资源(real estate),并且必须在不可视的部分203中呈现内容,则UIM 110可以根据对于组件的用户兴趣得分将视觉呈现位置分配给特定数字组件。
在一些实施方式中,UIM 110确定用户最可能感兴趣的数字组件的呈现格式。例如,如果用户偏好生成带有列表信息的报告,则她可以自己对数据进行分类,UIM 110可以知道用户偏好列表信息而不是图形信息,并且可以生成适当的用户界面——表格——其中呈现用户可能感兴趣的数字组件。UIM 110利用用户界面生成器111b生成UI元素。用户界面生成器111b生成指令,该指令在被执行时,使得所选择的数字组件以用户可能感兴趣的特定视觉格式呈现。
在一些实施方式中,UIM 110可以确定针对查询,用户可能感兴趣的内容。例如,当用户输入搜索查询“有多少回头客……”时,UIM 110可以确定,因为用户是中国和日本账户的账户经理,所以用户可能对查询“中国和日本分行本月看到了多少回头客”感兴趣,基于先前记录的用户交互UIM 110可以为用户提供建议,诸如对查询、表单字段、向下深入路径等的autofill建议。在提供建议的问题时,UIM 110评估特定用户是否对建议的问题包含的度量和维度感兴趣;具有更高总体兴趣得分的建议的问题更有可能示出在分析UI的可视区域内。
UIM 110计算对于特定特征的总体用户兴趣得分,该总体用户兴趣得分可以是时间衰减的频率得分。当考虑是否围绕特定的度量/维度个性化用户体验时,可以最频繁地使用该总体得分。UIM 110还计算置信度得分,该置信度得分表示个性化数据对于特定用户或用户简档的准确性。在一些实施方式中,如果用户特定的个性化得分不满足阈值得分,则***可以代替地使用简档水平个性化。简档水平个性化不太特定,但仍然有用,因为特定用户可能与具有相同简档的其他用户有相似的兴趣,或者与简档有阈值量的相似性。例如,在新用户的情况下,如果这是她第一次浏览分析应用,并且***没有足够的用户特定的用户交互数据来生成其中置信度得分满足阈值得分的个性化,则如果简档水平个性化具有满足阈值得分的置信度得分,UIM 110可以提供在简档水平上的个性化报告。
***还可以通过如果没有足够的信息则确定不为特定用户个性化数据/UI,而是代替地提供默认信息来节省计算资源。例如,如果用户的用户特定的个性化置信度得分和简档水平个性化置信度得分两者都不满足阈值置信度水平。代替提供用户可能不感兴趣的个性化数据,***可以提供默认信息并根据用户与默认数据的交互来学习,以确定下次/为具有相似简档的相似用户提供什么数据。
例如,对于每个用户,洞察形式的潜在数字组件可以由UIM 110基于组件中的每个度量和维度来评分。UIM 110然后可以利用用户兴趣得分来更准确地对洞察进行排名和评分,并且然后为用户对此进行更高或更低的排名。在一些实施方式中,如果可以在UI的视口202内呈现的数字组件的数量有限制,则UIM 110可以确定数字组件的视觉呈现位置,使得用户可能感兴趣的组件呈现在UI的视口202内,并且用户可能更不感兴趣的组件朝UI的不可查看部分203呈现。例如,如果对用户简档jane1234的洞察包括度量反弹率(BounceRate)和维度日本,则UIM 110计算对于度量和维度的得分,并确定jane1234对这些实体中的每一个的感兴趣程度,以将对于单独实体的兴趣得分考虑到对于洞察的总体兴趣得分中。
就兴趣和技能水平而言,应用可以有不同的用户基础;为了尽可能多地服务于用户基础,许多应用被开发得功能强大且特征丰富。随着应用特征集的扩展,选项的复杂性和多样性对许多用户来说变得不堪重负。例如,虽然用户可以访问应用并看到数百个报告、细分市场、切换和动作,但是她的大部分兴趣在于几个度量标准(例如,细分市场5A内的目标用户数量和发布者收益)、某维度集(例如,设备类别和国家)以及某值(例如,移动、中国和日本)。在没有关于用户感兴趣的主题的信息的情况下,就不能针对她的需求来优化应用以提供有用、简单的UI。
通过提供对于分析环境中的实体的用户兴趣得分,***允许在评分算法中使用个性化以用于将用户感兴趣的度量评分的高于用户不感兴趣的度量。用户兴趣得分可用于标识用户的目标和意图(例如,获得更多的活动收益,优化产品销售),并按对于正确的用户呈现增长机会的意图对度量进行分类。用户兴趣得分可用于生成用于用户搜索的建议的查询或内容——例如,可基于用户的上下文建议被包括在查询中的、对于特定度量/维度/过滤器的建议。
上下文包括用户正在看的实体(例如,报告、数据点、洞察等)或用户之前提交给***的问题。当建议不在用户当前上下文内的实体(诸如度量、维度或维度过滤器)时,***可以基于用户的先前交互来选择具有高用户兴趣得分的度量、维度或维度过滤器。例如,如果用户先前已经要求“去年的收益增长”,则后续建议可以是“去年美国的收益增长”
通过在多个水平上理解用户的兴趣,***可以为用户和与这些用户共享特性的其他用户开发和调整特征。例如,***的应用可以包括服务在组织中具有特定角色的公司顾客或企业顾客。通过理解用户关心的度量、维度和值(例如,电子商务收益、特定活动、从Alabama收集的数据等),***可以以用户容易理解的方式向用户呈现相关的数字组件。这种改进的机器学习高效UI生成***减少了用于确定和选择数字组件以及生成UI元素的计算资源,而不会在用户不太可能感兴趣的内容或格式上浪费资源。理解用户关心的主题或用户在企业中的角色可以用作用户兴趣学习模型的输入或上下文。例如,如果用户处于电子邮件营销位置,则用户可能对通过电子邮件递送的内容以及电子商务收益感兴趣。理解用户的商务意图或目标可以用作用户兴趣学习模型的输入。例如,如果用户的意图是下个月从移动内容(mobile content)中获得至少20万美元的收益,则***可以确定用户对移动设备和营销收益感兴趣。UIM 110然后可以在其用户兴趣评分模型中更重地加权这些度量。
图3是用于用户与呈现具有特定特征的数字组件的UI交互的示例UI 300。流200中所示的过程收集关于用户和正在呈现的数字组件之间的交互的数据,并填充用户交互数据库206,通过保留用户交互的记录、从用户交互数据中提取特征、根据提取的特征生成训练示例、以及使用训练示例训练用户兴趣模型来改进数字组件和数字组件呈现格式的个性化和选择。在一些实施方式中,资源(例如网页或应用)可以包含比在客户端设备的视口中一次显示的更多的内容。例如,分析报告可以包含几个大的图和表,如果用户不向下滚动,用户就不能查看所有内容。如果内容是在UI的视口(例如,不可查看部分203)之外提供的,则用户设备104可以避免呈递数据,从而节省处理和存储器资源。因此,UIM 110可以通过修改分析报告和UI元素以在UI的视口中示出用户最可能感兴趣的UI元素,来减少和/或优化计算资源的使用。流200涉及训练数据生成器108、UIM 110和用户设备104。
用户动作中的每一个考虑了用户兴趣得分。例如,当用户查看浏览器报告时,在训练UIM 110时考虑到她是否在查看报告中示出的默认主要维度,或者她是否选择定制度量和维度。此外,该报告的视觉方面(例如,示出了哪些度量、滚动到哪些度量、用户花费最多时间看哪些度量)被考虑到训练示例中。
***可以确定是否使用特定的用户交互数据以及所选择的用户交互数据集的哪些特征以用在生成用于用户兴趣模型的训练示例中。在一个示例中,当用户查看概览报告时,该报告可能包括太多的度量以至于不能用于相关训练示例,***可以记录该报告的用户视图,并且仅分析用户可视并且用户花费了阈值时间量查看的报告部分。在另一示例中,当用户正在查看实时报告时,报告被动态更新,并且很难确定要记录哪些值。***可以在用户查看报告的特定时间处拍摄报告的快照,并从该快照中提取特征。
向用户呈现的报告和分析内容中的实体有许多默认值。例如,概览报告可以包括所有可用的度量和维度,并且每月销售汇总报告可以包括与销售和收益相关的默认度量,并且存在用户可能不感兴趣、但默认被包括在内的度量、维度、过滤器等。通常,记录在用户交互数据中指示的所有维度、度量、过滤器和其他实体,即使它只是查看概览报告。因此,加重用户操作和交互的权重是有利的,因为这些交互是用户身体部分的显式动作,并且这些交互可以更有把握地被解释为有意的兴趣表达。
例如,向下深入以看到更特定的信息可以记录为用户对更特定信息的兴趣,以及向下深入的度量的兴趣。可被解释为感兴趣或不感兴趣者的有意表达的其他动作可包括改变、移除或添加度量、按度量分类、改变主要维度、改变、移除或添加第二维度、改变、移除或添加过滤器、与超出滚动经过数字组件呈现的洞察的交互、查看并创建定制报告、手动选择和操作报告内的数据、选项卡、UI元素、手动选择(例如,选择图、选择表中的高级过滤器、选择特定目标)、应用细分市场——定制或默认、执行高级分析。
用户在事件指示的环境中进行的有意义的特征交互有助于***改善分析和用户的应用体验。通过使用先前收集的用户交互数据,***可以推荐新特征并个性化用户的报告体验(例如,通过建议要查看的报告、提供现有报告的经过滤的视图、创建受众、创建会话、在管理员中添加新用户等)。当动作与某数据(例如,与动作相关联的度量/维度集)相关联时,***的记录保持旨在保持链接以及用户采取动作的时间和顺序。
用户与呈现内容的UI元素的交互可以提供用于机器学习模型的正面或负面的训练示例。例如,在视口202内,内容项204a包括UI元素302。UI元素302表示用户利用其可以取消、拒绝或通常向内容或UI元素提供负面反馈的UI元素。例如,如果用户选择UI元素302来取消内容项204a,则用户交互数据可以指示内容项204a被取消,并且用户对内容项204a不感兴趣。这样,***允许用户通过她与应用的日常交互来提供反馈,而无需附加的交互。
在一些实施方式中,UIM 110可以基于用户交互数据立即修改分析UI。例如,一旦用户取消了包含州水平的聚合统计数据而不是国家水平的聚合统计数据的特定UI元素,UIM 110可以确定用户可能对全州范围的统计数据不感兴趣,并且不会在UI的视口内呈现那些统计数据。
在一些实施方式中,UI 300可以呈现反馈UI元素,通过反馈UI元素,用户可以提供关于她为什么选择取消内容项204a的进一步细节。例如,用户可以从预定选项当中选择或输入自由响应。如果用户指示她对内容项204a不感兴趣,因为她对内容项204的呈现方式不感兴趣。通过提供附加的反馈,用户可以接收更好、更相关和更容易理解的内容。UIM 110可以分析反馈,以确定,例如,用户是否临时对分析数据不感兴趣但是想要在不同的时间再次看到它,用户是否对分析数据感兴趣但是想要以不同的格式看到它,用户是否已经转向她的组织内的不同角色并且具有不同的统计报告需求等等。
在视口202内,内容项204b包括UI元素304。UI元素304表示UI元素,利用该UI元素,想要看到与内容项204b相关的更宽范围的内容的用户可以看到附加内容,并提供对内容项204b感兴趣的正面指示。例如,如果用户选择UI元素304来看“子部分B内的其他内容”,则用户交互数据可以指示内容项204b被取消,并且用户对看与内容项204b相关的不同或更多内容感兴趣。用户可以正在查看呈现子部分B——新泽西州内的卑尔根县的用户统计数据的UI元素,并选择UI元素304来看新泽西州子部分内的其他内容,诸如哈德逊县。这种用户交互可以产生用户交互数据,以指示用户对维度“新泽西州”内的内容感兴趣,但对卑尔根县不感兴趣。
在视口202内,内容项204a包括UI元素306。UI元素306表示UI元素,利用该UI元素,想要缩小与内容项204a相关的内容范围的用户可以看到附加内容,并提供对内容项204a感兴趣的正面指示。例如,如果用户选择UI元素来向下深入并看类别3的内容中的更多内容。在一些实施方式中,UI元素306允许用户在内容项204a所在的分类中选择不同的类别。用户可以正在查看呈现拥有车辆的用户的统计数据的UI元素,并选择UI元素306来向下深入以看拥有小型货车的用户。这种用户交互可以产生用户交互数据,以指示用户对拥有车辆的用户的维度感兴趣,并且进一步对小型货车的维度感兴趣。UIM 110可以利用这种用户交互数据来预测,例如,用户可能对拥有多于两个人的家庭的用户的维度感兴趣。
在隐藏部分203内,内容项204c被呈现,但可能不被呈递(render)。例如,如果内容项204c的阈值部分从在UI 300内的用户的当前位置不可视,则***100可以避免呈递内容项204c以节省计算资源。在一些实施方式中,如果用户向下滚动以查看内容项204c,则使得内容项204c在视口202内达至少预定时间段的滚动的动作可以被认为是对内容项204c感兴趣的正面指示。UIM 110然后可以从滚动动作中生成正面训练示例。用户可以看到内容项204c的顶部,并确定内容项204c是他感兴趣的;如果用户滚动使得内容项204c在视口202内达至少20秒,则这种用户交互数据可以向UIM 110指示用户对内容项204c感兴趣。然而,如果用户滚动使得内容项204c在视口202内,并且确定内容项204c不感兴趣,他可以滚动离开;指示内容项204c不在视口202内达至少20秒的用户交互数据可以被UIM 110解释为负面训练示例。
诸如放大页面或特定UI元素的一部分、将内容项或呈现格式标记为有帮助、花费至少预定时间段查看内容项或UI元素或与内容项或UI元素交互、查询特定内容等的其他用户交互也可以作为兴趣的正面表示。
图4是用于基于先前收集的用户交互数据来个性化分析环境和用户体验的示例过程400的流程图。在一些实施方式中,过程400可以由一个或多个服务器实施。例如,过程400可以由图1-图2的训练数据生成器108和UIM110来实施。在一些实施方式中,过程400可以被实施为存储在非暂时性计算机可读介质上的指令,并且当指令由一个或多个服务器执行时,该指令可以使得一个或多个服务器执行过程400的操作。
***接收指示特定用户与呈现给该特定用户的分析报告应用的初始UI的一个或多个UI元素的交互的用户交互数据(402)。例如,训练数据生成器108可以收集用户交互数据,并且特征提取器109可以提取记录的用户交互的特征。如上所述,这些交互可以包括,例如,点击UI元素来指示兴趣,取消UI元素,查看与UI元素相关的其他UI元素等等。
***可以建立跟踪用户交互的数据库。用户交互数据可以表示,例如,特定用户感兴趣的内容的特征。数据通过数据处理任务的流水线来处理,例如,***处理数据以提取数据的特征,诸如度量、维度、过滤器等。例如,数据库可以跟踪特定用户已经与特定度量、维度、维度过滤器等交互的频率和最近时间。在此特定示例中,数据库可以是用户交互数据库206。
***将接收的用户交互数据转换成训练数据集(404)。一旦***已经提取了用户交互数据的特征,***生成训练示例以提供给机器学习模型来预测用户兴趣。在此特定示例中,特征提取器109将提取的特征提供给训练数据生成器108,该训练数据生成器108使用记录的用户交互数据和提取的特征来生成训练示例。训练示例可以包括输入和预期输出的对。训练示例可以受用户交互数据的影响,并且被UIM 110用来标识用户可能感兴趣的分析报告项和UI元素。
***将训练数据集输入到机器学习模型(406)。在此特定示例中,训练数据生成器108向UIM 110,特别是向神经网络111a提供训练示例。如上所述,可以使用其他类型的机器学习模型。
响应于训练数据集,***训练机器学习模型(408)。在此特定示例中,UIM 110利用来自训练数据生成器108的训练示例来训练神经网络111a。在一些实施方式中,UIM 110经历训练、验证和特征提取的多次迭代。例如,UIM 110可以继续训练神经网络111a,直到已经达到对于特定用户或简档的特定特征的阈值置信度得分。
***使用经训练的机器学习模型生成对于特定用户的用户兴趣得分集,其中用户兴趣得分中的每一个指示用户对访问与应用的UI元素相对应的信息的兴趣(410)。在此特定示例中,UIM 110使用神经网络111a为UI元素引用的每个实体生成用户兴趣得分,以提供对于UI元素的总体兴趣得分。
然后,***可以确定用户兴趣得分集中的至少一个正面地指示用户对访问与不被包括在初始UI中并且至少具有阈值得分的特定UI元素相对应的信息的兴趣(412)。在此特定示例中,UIM 110可以确定用户兴趣得分中的至少一个指示用户对与UI元素相对应的内容感兴趣(例如,包括不同的内容,或者包括以不同呈现格式的相同内容)。
响应于确定特定UI元素中的用户兴趣得分至少是阈值得分,***动态地修改初始UI,包括将特定UI元素合并到初始UI中,以获取包括不被包括在初始UI中的特定UI元素的更新的UI(414)。在此特定示例中,如果UIM110确定用户对特定内容呈现格式感兴趣,则用户界面生成器111b可以生成UI指令,该UI指令在被执行时使得以特定内容呈现格式呈现内容。如果UIM110确定用户对先前没有呈现的内容感兴趣,UIM 110利用用户兴趣得分来选择用户最可能感兴趣的内容。UIM 110可以对内容进行排名或选择,并修改分析UI,以在UI的视口内呈现用户最可能感兴趣的内容,从而改善用户体验并帮助用户浏览分析UI内可用的大量选项和UI元素。
***向用户呈现包括特定UI元素的更新的UI(416)。在此特定示例中,用户界面生成器111b向用户设备104提供UI指令,以引起特定UI元素的呈现。UIM 110基于生成的用户兴趣得分来修改特定UI元素以呈现用户最可能感兴趣的内容。
***在向用户呈现更新的UI之后监控用户与更新的UI的进一步交互(418)。在此特定示例中,训练数据生成器108,以及更具体地,特征提取器109持续收集用户交互数据并提取特征,在用户交互数据库206中记录用户交互数据,以及在用户简档208中记录用户简档数据。
***基于进一步的用户交互更新机器学习模型(420)。在此特定示例中,训练数据生成器108生成更新的训练示例,并将更新的训练示例提供给UIM110。UIM 110可以基于当前用户交互数据持续地重新训练神经网络111a。
***基于更新的机器学习模型来选择呈现在UI中的更新的UI元素集(422)。在此特定示例中,用户界面生成器111b可以持续更新提供给用户设备104的UI指令,并且神经网络111a可以持续更新UIM 110用来基于记录的用户交互数据动态修改用户的环境和分析体验的用户兴趣得分。
图5是可用于执行上述操作的示例计算机***500的框图。***500包括处理器510、存储器520、存储设备530和输入/输出设备540。组件510、520、530和540中的每一个可以例如使用***总线550互连。处理器510能够处理指令用于在***500内执行。在一个实施方式中,处理器510是单线程处理器。在另一实施方式中,处理器510是多线程处理器。处理器510能够处理存储在存储器520或存储设备530中的指令。
存储器520存储***500内的信息。在一个实施方式中,存储器520是计算机可读介质。在一个实施方式中,存储器520是易失性存储器单元。在另一实施方式中,存储器520是非易失性存储器单元。
存储设备530能够为***500提供大容量存储。在一个实施方式中,存储设备530是计算机可读介质。在各种不同的实施方式中,存储设备530可以包括例如硬盘设备、光盘设备、由多个计算设备(例如云存储设备)通过网络共享的存储设备或者一些其他大容量存储设备。
输入/输出设备540为***500提供输入/输出操作。在一个实施方式中,输入/输出设备540可以包括一个或多个网络接口设备,例如以太网卡、串行通信设备,例如以及RS-232端口,和/或无线接口设备,例如以及802.11卡。在另一实施方式中,输入/输出设备可以包括驱动设备,该驱动设备被配置为接收输入数据并将输出数据发送到其他输入/输出设备,例如键盘、打印机和显示设备560。然而,也可以使用其他实施方式,诸如移动计算设备、移动通信设备、机顶盒电视客户端设备等。
尽管已经在图5中描述了示例处理***,但是本说明书中描述的主题和功能操作的实施方式可以在其他类型的数字电子电路中实施,或者在包括本说明书中公开的结构及其结构等价物的计算机软件、固件或硬件中实施,或者在它们中的一个或多个的组合中实施。
电子文档(为简洁起见,简称为文档)不一定对应于文件。文档可以存储在保存其他文档的文件的一部分中,存储在专用于所讨论的文档的单个文件中,或者存储在多个协调文件中。
本说明书中描述的主题和操作的实施例可以在数字电子电路中实施,或者在包括本说明书中公开的结构及其结构等同物的计算机软件、固件或硬件中实施,或者在它们中的一个或多个的组合中实施。本说明书中描述的主题的实施例可以被实施为一个或多个计算机程序,即,计算机程序指令的一个或多个模块,被编码在一个或多个计算机存储介质上以用于由数据处理装置执行或控制数据处理装置的操作。替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以编码信息用于传输到合适的接收器装置以由数据处理装置执行。计算机存储介质可以是或被包括在计算机可读存储设备、计算机可读存储基底、随机或串行存取存储器阵列或设备、或它们中的一个或多个的组合中。此外,虽然计算机存储介质不是传播信号,但是计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是或被包括在一个或多个单独的物理组件或介质(例如,多个CD、磁盘或其他存储设备)中。
本说明书中描述的操作可以被实施为由数据处理装置对存储在一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。
术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,例如,包括可编程处理器、计算机、片上***、或前述的多个或组合。该装置可以包括专用逻辑电路,例如,FPGA(field-programmable gate array,现场可编程门阵列)或ASIC(application-specific integrated circuit,专用集成电路)。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理***、操作***、跨平台运行时间环境、虚拟机或它们中的一个或多个的组合的代码。该装置和执行环境可以实施各种不同的计算模型基础设施,诸如网络服务、分布式计算和网格计算基础设施。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以以包括编译或解释语言、声明或过程语言的任何形式的编程语言编写,并且可以以任何形式部署,包括作为单独程序或作为模块、组件、子例程、对象或适合在计算环境中使用的其他单元。计算机程序可以但不需要对应于文件***中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件中(例如,存储一个或多个模块、子程序或部分代码的文件)。计算机程序可以被部署为在位于一个站点或分布在多个站点并通过通信网络互连的一个或多个计算机上执行。
本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流程也可以由专用逻辑电路来执行,并且设备也可以被实施为专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
举例来说,适合于执行计算机程序的处理器包括通用和专用微处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元素是用于根据指令执行动作的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,或者被可操作地耦合到该大容量存储设备以从该一个或多个大容量存储设备接收数据或将数据传递到大容量存储设备或两者。然而,计算机不需要这样的设备。此外,计算机可以嵌入到另一设备中,例如移动电话、个人数字助理(personal digital assistant,PDA)、移动音频或视频播放器、游戏控制台、全球定位***(Global Positioning System,GPS)接收器或便携式存储设备(例如通用串行总线(universal serial bus,USB)闪存驱动器),仅举几个示例。适合于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,例如包括半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;和CD ROM及DVD-ROM。处理器和存储器可以由专用逻辑电路来补充或结合到专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在计算机上实施,该计算机具有用于向用户显示信息的显示设备,例如,CRT(cathode ray tube,阴极射线管)或LCD(liquid crystal display,液晶显示器)显示屏,以及键盘和定点设备,例如鼠标或轨迹球,用户可以通过键盘和定点设备向计算机提供输入。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从网络浏览器接收的请求,将网页发送到用户客户端设备上的网络浏览器。
本说明书中描述的主题的实施例可以在计算***中实施,该计算***包括后端组件,例如作为数据服务器,或者该计算***包括中间件组件,例如应用服务器,或者该计算***包括前端组件,例如具有图形用户界面或网络浏览器的客户端计算机,用户可以通过该图形用户界面或网络浏览器与本说明书中描述的主题的实施当时交互,或者一个或多个这样的后端、中间件或前端组件的任意组合。***的组件可以通过任何形式或介质的数字数据通信互连,例如通信网络。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、网络间(例如互联网)和对等网络(例如ad hoc对等网络)。
计算***可以包括客户端和服务器。客户端和服务器通常彼此远离,并且典型地通过通信网络进行交互。客户端和服务器之间的关系是由于在各自的计算机上运行的计算机程序而产生的,并且彼此之间具有客户端-服务器关系。在一些实施例中,服务器将数据(例如,HTML页面)传输到客户端设备(例如,为了向与客户端设备交互的用户显示数据和从与客户端设备交互的用户接收用户输入)。在客户端设备处生成的数据(例如,作为用户交互的结果)可以在服务器处从客户端设备接收。
虽然本说明书包含许多具体的实施细节,但这些不应被解释为对任何发明或可能要求保护的范围的限制,而是对特定发明的特定实施例的特征的描述。本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独或以任何合适的子组合来实施。此外,尽管上述特征可被描述为以某些组合起作用,甚至最初也是这样要求保护的,但是在一些情况下,所要求保护的组合中的一个或多个特征可从该组合中删除,并且所要求保护的组合可指向子组合或子组合的变体。
类似地,尽管在附图中以特定顺序描述了操作,但这不应理解为要求以所示的特定顺序或顺序执行这些操作,或者要求执行所有所示的操作,以实现期望的结果。在一些情况下,多任务处理和并行处理可以是有利的。此外,上述实施例中的各种***组件的分离不应理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和***通常可以集成在单个软件产品中或者打包到多个软件产品中。
因此,已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。在一些情况下,权利要求中列举的动作可以以不同的顺序执行,并且仍然实现期望的结果。此外,附图中描述的过程不一定需要所示的特定顺序或顺序来实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。

Claims (23)

1.一种由计算设备执行的用于个性化分析用户界面的方法,所述方法包括:
由计算设备接收指示第一用户与呈现给第一用户的分析报告应用的初始用户界面(UI)的一个或多个UI元素的交互的用户交互数据;
根据接收的用户交互数据生成训练数据集,其中生成训练数据包括:
至少部分地基于UI元素和由UI元素呈现的内容的维度被呈现给第一用户的相应持续时间,从用户交互数据中选择UI元素和内容的维度并将其作为用于包括在所述训练数据集中的特征集,以及
基于第一用户请求所述特征,将所述特征的第一部分分类为正面特征,以及基于所述特征的第二部分是由初始UI呈现的初始内容,其被呈现少于阈值持续时间,将所述特征的第二部分分类为负面特征;
将所述训练数据集输入到机器学习模型;
响应于所述训练数据集,由计算设备训练所述机器学习模型;
使用经训练的机器学习模型生成对于第二用户的用户兴趣得分集,其中所述用户兴趣得分中的每一个指示第二用户对访问与所述分析报告应用的UI元素相对应的信息的兴趣;
基于与不被包括在初始UI中的特定UI元素相关联的阈值得分,确定所述用户兴趣得分集中的至少一个用户兴趣得分正面地指示第二用户对访问与所述特定UI元素相对应的信息的兴趣;
响应于确定所述用户兴趣得分集中的至少一个用户兴趣得分正面地指示第二用户对访问与所述特定UI元素相对应的信息的兴趣,动态地修改所述初始UI,包括将所述特定UI元素合并到所述初始UI中以获取包括不被包括在所述初始UI中的特定UI元素的更新的UI;以及
向第二用户呈现包括所述特定UI元素的更新的UI;
在向第二用户呈现所述更新的UI之后,监控与所述更新的UI的进一步用户交互;
基于进一步的用户交互来更新所述机器学习模型;以及
基于所更新的机器学习模型来选择呈现在UI中的更新的UI元素集。
2.根据权利要求1所述的方法,其中,所述机器学习模型是逻辑回归模型。
3.根据权利要求1所述的方法,其中,所述机器学习模型执行深度和广度学习,其将用于记忆的广度线性模型与用于跨多个特征进行泛化的深度神经网络相结合。
4.根据权利要求1所述的方法,其中,所述机器学习模型是长期短期记忆模型。
5.根据权利要求1所述的方法,进一步包括确定与另一UI元素相关联的用户兴趣得分集中的得分小于与所述另一UI元素相关联的阈值得分,其中基于所述确定,不向第二用户显示所述另一UI元素。
6.根据权利要求1所述的方法,进一步包括基于第二用户的交互和特性对第二用户进行分类。
7.根据权利要求1所述的方法,其中,接收的用户交互数据涉及两个或更多不同的主题,并且
其中基于根据对于主题的用户兴趣得分确定的主题对用户的重要性,来为所述两个或更多不同主题中的每一个分配不同的权重。
8.根据权利要求1所述的方法,进一步包括接收指示一组多个不同用户与一个或多个UI元素的交互的用户交互数据集;
根据接收的用户交互数据集生成用户组训练数据集;
将所述用户组训练数据集输入到所述机器学习模型;以及
响应于所述用户组训练数据集,由计算设备训练所述机器学习模型。
9.根据权利要求1所述的方法,其中,第一用户和第二用户是相同用户。
10.根据权利要求1所述的方法,其中,第一用户和第二用户是不同的用户。
11.根据权利要求1所述的方法,其中,所述初始UI或更新的UI中的至少一个由游戏控制台呈现给第一用户。
12.一种用于个性化分析用户界面的***,包括:
至少一个处理器;和
存储器,通信耦合到所述至少一个处理器,所述存储器存储指令,所述指令在被所述至少一个处理器执行时,使得所述至少一个处理器执行操作,所述操作包括:
由计算设备接收指示第一用户与呈现给第一用户的分析报告应用的初始用户界面(UI)的一个或多个UI元素的交互的用户交互数据;
根据接收的用户交互数据生成训练数据集,其中生成训练数据包括:
至少部分地基于UI元素和由UI元素呈现的内容的维度被呈现给第一用户的相应持续时间,从用户交互数据中选择UI元素和内容的维度并将其作为用于包括在所述训练数据集中的特征集,以及
基于第一用户请求所述特征,将所述特征的第一部分分类为正面特征,以及基于所述特征的第二部分是由初始UI呈现的初始内容,其被呈现少于阈值持续时间,将所述特征的第二部分分类为负面特征;
将所述训练数据集输入到机器学习模型;
响应于所述训练数据集,由计算设备训练所述机器学习模型;
使用经训练的机器学习模型生成对于第二用户的用户兴趣得分集,其中所述用户兴趣得分中的每一个指示第二用户对访问与所述分析报告应用的UI元素相对应的信息的兴趣;
基于与不被包括在初始UI中的特定UI元素相关联的阈值得分,确定所述用户兴趣得分集中的至少一个用户兴趣得分正面地指示第二用户对访问与所述特定UI元素相对应的信息的兴趣;
响应于确定所述用户兴趣得分集中的至少一个用户兴趣得分正面地指示第二用户对访问与特定UI元素相对应的信息的兴趣,动态地修改所述初始UI,包括将所述特定UI元素合并到所述初始UI中以获取包括不被包括在所述初始UI中的特定UI元素的更新的UI;以及
向第二用户呈现包括所述特定UI元素的更新的UI;
在向第二用户呈现所述更新的UI之后,监控与所述更新的UI的进一步用户交互;
基于进一步的用户交互更新所述机器学习模型;以及
基于更新的机器学习模型来选择呈现在UI中的更新的UI元素集。
13.根据权利要求12所述的***,其中,所述机器学习模型是逻辑回归模型。
14.根据权利要求12所述的***,其中,所述机器学习模型执行深度和广度学习。
15.根据权利要求12所述的***,其中,所述机器学习模型是长期短期记忆模型。
16.根据权利要求12所述的***,进一步包括确定与另一UI元素相关联的用户兴趣得分集中的得分小于与所述另一UI元素相关联的阈值得分,其中基于所述确定,不向第二用户显示所述另一UI元素。
17.根据权利要求12所述的***,进一步包括基于第二用户的交互和特性对第二用户进行分类。
18.根据权利要求12所述的***,其中,第一用户和第二用户是相同用户。
19.根据权利要求12所述的***,其中,第一用户和第二用户是不同的用户。
20.根据权利要求12所述的***,其中,所述初始UI或更新的UI中的至少一个由游戏控制台呈现给第一用户。
21.一种存储指令的计算机可读存储设备,所述指令在被一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括:
由计算设备接收指示第一用户与呈现给第一用户的分析报告应用的初始用户界面(UI)的一个或多个UI元素的交互的用户交互数据;
根据接收的用户交互数据生成训练数据集,其中生成训练数据包括:
至少部分地基于UI元素和由UI元素呈现的内容的维度被呈现给第一用户的相应持续时间,从用户交互数据中选择UI元素和内容的维度并将其作为用于包括在所述训练数据集中的特征集,以及
基于第一用户请求所述特征,将所述特征的第一部分分类为正面特征,以及基于所述特征的第二部分是由初始UI呈现的初始内容,其被呈现少于阈值持续时间,将所述特征的第二部分分类为负面特征;
将所述训练数据集输入到机器学习模型;
响应于所述训练数据集,由计算设备训练所述机器学习模型;
使用经训练的机器学习模型生成对于第二用户的用户兴趣得分集,其中所述用户兴趣得分中的每一个指示第二用户对访问与所述分析报告应用的UI元素相对应的信息的兴趣;
基于与不被包括在初始UI中的特定UI元素相关联的阈值得分,确定所述用户兴趣得分集中的至少一个用户兴趣得分正面地指示第二用户对访问与所述特定UI元素相对应的信息的兴趣;
响应于确定所述用户兴趣得分集中的至少一个用户兴趣得分正面地指示第二用户对访问与所述特定UI元素相对应的信息的兴趣,动态地修改所述初始UI,包括将所述特定UI元素合并到所述初始UI中以获取包括不被包括在所述初始UI中的特定UI元素的更新的UI;以及
向第二用户呈现包括所述特定UI元素的更新的UI;
在向第二用户呈现所述更新的UI之后,监控与所述更新的UI的进一步用户交互;
基于进一步的用户交互更新所述机器学习模型;以及
基于更新的机器学习模型来选择呈现在UI中的更新的UI元素集。
22.根据权利要求21所述的计算机可读存储设备,所述操作进一步包括:
接收指示一组多个不同用户与一个或多个UI元素的交互的用户交互数据集;
根据接收的用户交互数据集生成用户组训练数据集;
将所述用户组训练数据集输入到所述机器学习模型;以及
响应于所述用户组训练数据集,由计算设备训练所述机器学习模型。
23.根据权利要求21所述的计算机可读存储设备,其中,所述初始UI或更新的UI中的至少一个由游戏控制台呈现给第一用户。
CN201911011979.1A 2019-01-11 2019-10-23 分析个性化框架 Active CN110795624B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/245,920 US11669431B2 (en) 2019-01-11 2019-01-11 Analytics personalization framework
US16/245,920 2019-01-11

Publications (2)

Publication Number Publication Date
CN110795624A CN110795624A (zh) 2020-02-14
CN110795624B true CN110795624B (zh) 2023-11-07

Family

ID=68138788

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911011979.1A Active CN110795624B (zh) 2019-01-11 2019-10-23 分析个性化框架

Country Status (4)

Country Link
US (2) US11669431B2 (zh)
EP (1) EP3861466A1 (zh)
CN (1) CN110795624B (zh)
WO (1) WO2020146014A1 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10867338B2 (en) 2019-01-22 2020-12-15 Capital One Services, Llc Offering automobile recommendations from generic features learned from natural language inputs
US10489474B1 (en) 2019-04-30 2019-11-26 Capital One Services, Llc Techniques to leverage machine learning for search engine optimization
US10565639B1 (en) * 2019-05-02 2020-02-18 Capital One Services, Llc Techniques to facilitate online commerce by leveraging user activity
US20200364508A1 (en) * 2019-05-14 2020-11-19 Nvidia Corporation Using decay parameters for inferencing with neural networks
US11232110B2 (en) 2019-08-23 2022-01-25 Capital One Services, Llc Natural language keyword tag extraction
US11347756B2 (en) 2019-08-26 2022-05-31 Microsoft Technology Licensing, Llc Deep command search within and across applications
US20210125068A1 (en) * 2019-10-28 2021-04-29 MakinaRocks Co., Ltd. Method for training neural network
US10796355B1 (en) 2019-12-27 2020-10-06 Capital One Services, Llc Personalized car recommendations based on customer web traffic
CN115191006B (zh) * 2020-02-28 2024-05-24 奇跃公司 用于所显示的2d元素的3d模型
US11775494B2 (en) * 2020-05-12 2023-10-03 Hubspot, Inc. Multi-service business platform system having entity resolution systems and methods
EP4150546A4 (en) * 2020-05-15 2023-10-18 Telefonaktiebolaget LM ERICSSON (PUBL) METHOD FOR FILTERING DATA TRAFFIC SENT TO A USER DEVICE
CN111736940A (zh) * 2020-06-24 2020-10-02 中国银行股份有限公司 智能柜台的业务界面展示方法及装置
US11704560B2 (en) * 2020-06-25 2023-07-18 Google Llc Pattern-based classification
US11513655B2 (en) * 2020-06-26 2022-11-29 Google Llc Simplified user interface generation
US11900046B2 (en) 2020-08-07 2024-02-13 Microsoft Technology Licensing, Llc Intelligent feature identification and presentation
JP7237194B2 (ja) * 2020-10-14 2023-03-10 グーグル エルエルシー プライバシーを守る機械学習予測
EP4238040A1 (en) * 2020-10-27 2023-09-06 Xgenesis Inc. Methods and systems for automated personalization
US11599831B2 (en) * 2020-11-03 2023-03-07 Kpn Innovations, Llc. Method and system for generating an alimentary element prediction machine-learning model
US20220138903A1 (en) * 2020-11-04 2022-05-05 Nvidia Corporation Upsampling an image using one or more neural networks
CN112417271B (zh) * 2020-11-09 2023-09-01 杭州讯酷科技有限公司 一种带有字段推荐的***智能构建方法
CN112507186B (zh) * 2020-11-27 2024-06-14 北京数立得科技有限公司 网页元素分类方法
CN112446765A (zh) * 2020-12-01 2021-03-05 平安科技(深圳)有限公司 产品推荐方法、装置、电子设备及计算机可读存储介质
CN112527296A (zh) * 2020-12-21 2021-03-19 Oppo广东移动通信有限公司 用户界面的定制方法及装置、电子设备、存储介质
EP4330814A1 (en) * 2021-04-26 2024-03-06 Nostra, Inc. Artificial intelligence-based personalized content creation workflow
US20220353304A1 (en) * 2021-04-30 2022-11-03 Microsoft Technology Licensing, Llc Intelligent Agent For Auto-Summoning to Meetings
US11792143B1 (en) 2021-06-21 2023-10-17 Amazon Technologies, Inc. Presenting relevant chat messages to listeners of media programs
US11792467B1 (en) 2021-06-22 2023-10-17 Amazon Technologies, Inc. Selecting media to complement group communication experiences
US11687576B1 (en) 2021-09-03 2023-06-27 Amazon Technologies, Inc. Summarizing content of live media programs
US11785299B1 (en) 2021-09-30 2023-10-10 Amazon Technologies, Inc. Selecting advertisements for media programs and establishing favorable conditions for advertisements
US11785272B1 (en) 2021-12-03 2023-10-10 Amazon Technologies, Inc. Selecting times or durations of advertisements during episodes of media programs
US11916981B1 (en) 2021-12-08 2024-02-27 Amazon Technologies, Inc. Evaluating listeners who request to join a media program
US11791920B1 (en) 2021-12-10 2023-10-17 Amazon Technologies, Inc. Recommending media to listeners based on patterns of activity
WO2023154405A1 (en) * 2022-02-09 2023-08-17 Maplebear Inc. (Dba Instacart) Search relevance model using self-adversarial negative sampling
US11880546B2 (en) * 2022-04-22 2024-01-23 Capital One Services, Llc Presentation and control of user interactions with a user interface element
US20230385087A1 (en) * 2022-05-31 2023-11-30 Intuit Inc. Clickstream processing for intelligent routing
US11995454B2 (en) * 2022-08-17 2024-05-28 Stripe, Inc. Dynamic generation and customization of user interfaces
CN115774816B (zh) * 2023-02-10 2023-04-11 成都萌想科技有限责任公司 基于用户价值的内容淘汰方法、***、设备及存储介质
CN117556192B (zh) * 2023-11-16 2024-07-05 南京小裂变网络科技有限公司 一种基于人工智能的用户增长式运营***及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967533A (zh) * 2006-07-17 2007-05-23 北京航空航天大学 采用元推荐引擎的门户个性化推荐服务方法和***
CN101339562A (zh) * 2008-08-15 2009-01-07 北京航空航天大学 引入兴趣模型反馈更新机制的门户个性化推荐服务***
CN103988161A (zh) * 2011-12-09 2014-08-13 微软公司 调整用户界面屏幕顺序和组成
CN107851092A (zh) * 2015-07-29 2018-03-27 谷歌有限责任公司 个人实体建模
CN108563755A (zh) * 2018-04-16 2018-09-21 辽宁工程技术大学 一种基于双向循环神经网络的个性化推荐***及方法
CN108604237A (zh) * 2015-12-01 2018-09-28 英特吉姆公司股份有限公司 个性化交互式智能搜索方法和***

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008191748A (ja) * 2007-02-01 2008-08-21 Oki Electric Ind Co Ltd ユーザ間コミュニケーション方法、ユーザ間コミュニケーションプログラム、ユーザ間コミュニケーション装置
US9405427B2 (en) 2012-09-12 2016-08-02 Facebook, Inc. Adaptive user interface using machine learning model
US20140236875A1 (en) 2012-11-15 2014-08-21 Purepredictive, Inc. Machine learning for real-time adaptive website interaction
US20140358916A1 (en) 2013-05-29 2014-12-04 Microsoft Corporation Personalized prioritization of integrated search results
US9858322B2 (en) 2013-11-11 2018-01-02 Amazon Technologies, Inc. Data stream ingestion and persistence techniques
US10212243B2 (en) * 2015-03-13 2019-02-19 Oath Inc. Future event detection and notification
US10097973B2 (en) * 2015-05-27 2018-10-09 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US11062222B2 (en) 2017-03-28 2021-07-13 International Business Machines Corporation Cross-user dashboard behavior analysis and dashboard recommendations
US10846617B2 (en) 2017-05-12 2020-11-24 Adobe Inc. Context-aware recommendation system for analysts
US10795647B2 (en) * 2017-10-16 2020-10-06 Adobe, Inc. Application digital content control using an embedded machine learning module
US10579632B2 (en) * 2017-12-18 2020-03-03 Microsoft Technology Licensing, Llc Personalized content authoring driven by recommendations

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967533A (zh) * 2006-07-17 2007-05-23 北京航空航天大学 采用元推荐引擎的门户个性化推荐服务方法和***
CN101339562A (zh) * 2008-08-15 2009-01-07 北京航空航天大学 引入兴趣模型反馈更新机制的门户个性化推荐服务***
CN103988161A (zh) * 2011-12-09 2014-08-13 微软公司 调整用户界面屏幕顺序和组成
CN107851092A (zh) * 2015-07-29 2018-03-27 谷歌有限责任公司 个人实体建模
CN108604237A (zh) * 2015-12-01 2018-09-28 英特吉姆公司股份有限公司 个性化交互式智能搜索方法和***
CN108563755A (zh) * 2018-04-16 2018-09-21 辽宁工程技术大学 一种基于双向循环神经网络的个性化推荐***及方法

Also Published As

Publication number Publication date
CN110795624A (zh) 2020-02-14
US20200226418A1 (en) 2020-07-16
WO2020146014A1 (en) 2020-07-16
EP3861466A1 (en) 2021-08-11
US20230385171A1 (en) 2023-11-30
US11669431B2 (en) 2023-06-06

Similar Documents

Publication Publication Date Title
CN110795624B (zh) 分析个性化框架
US11288702B1 (en) Exploration in a real time messaging platform
US11157464B1 (en) Pre-filtering of candidate messages for message streams in a messaging platform
US8909569B2 (en) System and method for revealing correlations between data streams
US9454771B1 (en) Temporal features in a messaging platform
US20190347287A1 (en) Method for screening and injection of media content based on user preferences
US11526905B1 (en) Systems and methods for preserving privacy
US10552505B2 (en) Method and system for generating a user-personalization interest parameter for identifying personalized targeted content item
US20140372250A1 (en) System and method for providing recommended content
US20140156681A1 (en) System and method for finding and prioritizing content based on user specific interest profiles
US20110282943A1 (en) Systems and methods for determining value of social media pages
EP2747014A1 (en) Adaptive system architecture for identifying popular topics from messages
WO2014074643A2 (en) System and method for dynamically placing and scheduling of promotional items or content based on momentum of activities of a targeted audience in a network environment
US10769677B1 (en) Temporal features in a messaging platform
TW201447797A (zh) 內容個人化之多相排序方法和系統
US11481804B2 (en) Dynamically varying remarketing based on evolving user interests
EP3267386A1 (en) Method and apparatus for generating a content recommendation in a recommendation system
US20230306263A1 (en) Pattern-based classification
US20190087852A1 (en) Re-messaging with alternative content items in an online remarketing campaign
EP3267389A1 (en) Method and apparatus for selecting a network resource as a source of content for a recommendation system
US11237693B1 (en) Provisioning serendipitous content recommendations in a targeted content zone
KR20160104364A (ko) 웹 페이지 제공 방법 및 장치
US20230205754A1 (en) Data integrity optimization
EP3997624A1 (en) Robust model performance across disparate sub-groups within a same group

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