CN113179659A - 利用封闭数据的个性化数据模型 - Google Patents

利用封闭数据的个性化数据模型 Download PDF

Info

Publication number
CN113179659A
CN113179659A CN201980017210.2A CN201980017210A CN113179659A CN 113179659 A CN113179659 A CN 113179659A CN 201980017210 A CN201980017210 A CN 201980017210A CN 113179659 A CN113179659 A CN 113179659A
Authority
CN
China
Prior art keywords
entities
data set
model
subset
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980017210.2A
Other languages
English (en)
Inventor
J.黄
L.何
I.波蒂厄斯
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 CN113179659A publication Critical patent/CN113179659A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • 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
    • 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/211Selection of the most significant subset of features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Machine Translation (AREA)

Abstract

用于训练机器学习架构的系统、方法和计算机可读存储介质。一种方法包括由一个或多个处理电路接收数据集。该方法还包括由一个或多个处理电路确定与多个实体相关联的、数据集的第一部分。该方法还包括由一个或多个处理电路利用数据集的第一部分来训练实体模型。该方法还包括由一个或多个处理电路确定与第一实体子集相关联的、数据集的第二部分,并确定第二实体子集。该方法还包括由一个或多个处理电路冻结与第二实体子集相关联的一个或多个参数,利用数据集的第二部分来训练实体模型。

Description

利用封闭数据的个性化数据模型
背景技术
机器学习架构可以采用一个或多个模型来针对接收到的输入预测输出。一些机器学习模型可以利用数据集来训练。数据集可以具有与公共数据和私有数据相关联的数据子集。在机器学习模型的训练期间,模型可以确定一个或多个参数。因此,每个训练的机器学习模型可以根据一个或多个参数的当前值,基于接收的输入提供输出预测。
发明内容
一些实施方式涉及一种用于训练机器学习架构的方法,该方法由一个或多个处理电路实施。该方法包括由一个或多个处理电路接收数据集。此外,该方法包括由一个或多个处理电路确定与多个实体相关联的、数据集的第一部分。此外,该方法包括由一个或多个处理电路利用数据集的第一部分来训练实体模型,其中实体模型被训练以识别随后接收的数据中的一个或多个模式。此外,该方法包括由一个或多个处理电路确定与多个实体的第一实体子集相关联的、数据集的第二部分。此外,该方法包括由一个或多个处理电路确定第二实体子集,其中第二实体子集不包括第一实体子集中的任何实体。此外,该方法包括:由一个或多个处理电路冻结与第二实体子集相关联的一个或多个参数,使得一个或多个参数在实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联,以及由一个或多个处理电路利用数据集的第二部分训练实体模型。
在一些实施方式中,该方法还包括由一个或多个处理电路确定与多个用户相关联的、数据集的第三部分,其中多个用户包括用户标识符集和多个用户信息,以及由一个或多个处理电路利用数据集的第三部分训练用户模型,其中用户模型被训练以识别随后接收的数据中的一个或多个模式。此外,该方法包括由一个或多个处理电路接收输入数据集。此外,该方法包括由一个或多个处理电路将输入数据集输入到用户模型和实体模型中,以及由一个或多个处理电路基于训练的用户模型和训练的实体模型生成输出预测,其中输出预测特定于第一实体子集,并且其中输出预测是准确度测量,准确度测量包括值。此外,还基于利用由用户模型生成的用户嵌入向量和由实体模型生成的实体嵌入向量来生成输出预测。此外,训练用户模型和实体模型中的每一个还包括配置至少一个神经网络。
在一些实施方式中,该方法还包括由一个或多个处理电路确定与多个实体的第三实体子集相关联的、数据集的第四部分,其中第三实体子集不包括第一实体子集或第二实体子集中的任何实体,以及由一个或多个处理电路利用数据集的第四部分训练第二实体模型,第二实体模型基于利用数据集的第一部分训练和冻结的实体模型。此外,在训练第二实体模型中利用的数据集的第四部分不包含来自在训练实体模型时利用的数据集的第二部分的任何数据。
在一些实施方式中,数据集的第一部分不包含来自数据集的第二部分的任何数据,使得多个实体的每个子集包含特定数据集。
在一些实施方式中,该方法还包括由一个或多个处理电路配置与用户模型相关联的第一神经网络,以及由一个或多个处理电路配置与实体模型相关联的第二神经网络。
在一些实施方式中,用于训练机器学习架构的方法利用两阶段技术,第一阶段与利用数据集的第一部分训练实体模型相关联,并且第二阶段与利用数据集的第二部分训练实体模型相关联。
一些实施方式涉及具有至少一个处理电路的系统。至少一个处理电路可以被配置为接收数据集。此外,至少一个处理电路可以被配置为确定与多个实体相关联的、数据集的第一部分。此外,至少一个处理电路可以被配置为利用数据集的第一部分训练实体模型,其中该实体模型被训练成识别随后接收的数据中的一个或多个模式。此外,至少一个处理电路可以被配置为确定与多个实体的第一实体子集相关联的、数据集的第二部分。此外,至少一个处理电路可以被配置为确定第二实体子集,其中第二实体子集不包括第一实体子集中的任何实体。此外,至少一个处理电路可以被配置为冻结与第二实体子集相关联的一个或多个参数,使得一个或多个参数在实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联,以及利用数据集的第二部分训练实体模型。
在一些实施方式中,至少一个处理电路还被配置为确定与多个用户相关联的、数据集的第三部分,其中多个用户包括用户标识符集和多个用户信息,以及利用数据集的第三部分训练用户模型,其中用户模型被训练为识别随后接收的数据中的一个或多个模式。此外,至少一个处理电路被配置为接收输入数据集。此外,至少一个处理电路被配置为将所述输入数据集输入到用户模型和实体模型中,以及基于训练的用户模型和训练的实体模型生成输出预测,其中输出预测特定于第一实体子集,并且其中输出预测是准确度测量,准确度测量包括值。
在一些实施方式中,至少一个处理电路还被配置为确定与多个实体的第三实体子集相关联的、数据集的第四部分,其中第三实体子集不包括第一实体子集或第二实体子集中的任何实体,以及利用数据集的第四部分训练第二实体模型,第二实体模型基于利用数据集的第一部分训练和冻结的实体模型。此外,至少一个处理电路被配置为确定与多个实体的第四实体子集相关联的、数据集的第五部分,其中第四实体子集不包括第一实体子集、第二实体子集或第三实体子集中的任何实体,以及利用数据集的第五部分训练第三实体模型,第三实体模型基于利用数据集的第一部分训练和冻结的实体模型。
在一些实施方式中,数据集的第一部分不包含来自数据集的第二部分的任何数据,使得多个实体的每个子集包含特定数据集。
一些实施方式涉及其上存储有指令的一个或多个计算机可读存储介质,当由至少一个处理电路执行时,该指令使得至少一个处理电路执行操作。操作包括接收数据集。此外,操作包括确定与多个实体相关联的、数据集的第一部分。此外,操作包括利用数据集的第一部分训练实体模型,其中实体模型被训练以识别随后接收的数据中的一个或多个模式。此外,操作包括确定与多个实体的第一实体子集相关联的、数据集的第二部分。此外,操作包括确定第二实体子集,其中第二实体子集不包括第一实体子集中的任何实体。此外,操作包括冻结与第二实体子集相关联的一个或多个参数,使得一个或多个参数在实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联,以及利用数据集的第二部分训练实体模型。
在一些实施方式中,操作还包括确定与多个用户相关联的、数据集的第三部分,其中多个用户包括用户标识符集和多个用户信息,以及利用数据集的第三部分训练用户模型,其中用户模型被训练以识别随后接收的数据中的一个或多个模式。此外,操作包括接收输入数据集。此外,操作包括将输入数据集输入到用户模型和实体模型中,并基于训练的用户模型和训练的实体模型生成输出预测,其中输出预测特定于第一实体子集,并且其中输出预测是准确度测量,准确度测量包括值。
在一些实施方式中,操作还包括配置与用户模型相关联的第一神经网络和配置与实体模型相关联的第二神经网络。
附图说明
附图不旨在按比例绘制。不同附图中相同的附图标记和名称表示相同的元件。为了清楚起见,在每个附图中不是每个组件都可以被标记。在附图中:
图1A是描绘根据说明性实施方式的机器学习架构的实施方式的框图;
图1B是描绘根据说明性实施方式的数据收集架构的实施方式的框图;
图2是根据说明性实施方式的分析系统和相关联的环境的框图;
图3是根据说明性实施方式的机器学习架构的训练方法的流程图;
图4是根据说明性实施方式的机器学习架构的训练方法的流程图;
图5A-5D是根据多个说明性实施方式的与图1A所示的机器学习架构相关的示例学习曲线图;
图6是描绘根据说明性实施方式的机器学习架构的实施方式的框图;
图7是描绘根据说明性实施方式的机器学习架构的实施方式的框图;
图8是根据说明性实施方式的与图1A所示的机器学习架构相关的神经网络的示例隐藏层表示;
图9是根据说明性实施方式的与图1A所示的机器学习架构相关的神经网络的示例隐藏层表示;
图10是根据说明性实施方式的与图1A所示的机器学习架构相关的神经网络的示例隐藏层表示;和
图11是根据说明性实施方式的计算系统的框图。
具体实施方式
本公开涉及通常涉及机器学习架构的训练的系统和方法。在一些实施例中,机器学习架构的训练可以包括利用由一个或多个处理电路收集的数据集来训练模型。在一些实施方式中,模型被训练成使得它们能够识别随后接收的数据中的一个或多个模式。数据集可以包括可以在机器学习架构的训练中使用的许多数据子集。在一些实施方式中,数据集的子集可以包括开放数据集。开放数据集可以由一个或多个处理电路收集的数据组成。例如,收集的数据可以包括业务类型(例如,非盈利性、政府机构、医疗保健提供商)。在各种实施方式中,数据集的子集也可以包括封闭数据集。封闭数据集可以与多个标识符相关联,并且可以由一个或多个处理电路接收的数据构成。例如,标识符可以包括实体标识号,并且收集的数据可以包括特定于实体的数据(例如,客户、患者、邮件列表、购买历史)。在一些实施例中,可以利用开放数据集(例如,数据集的第一部分)来训练实体模型。在一些实施方式中,可以利用与可以包括单个实体的第一实体子集相关联的封闭数据集的一部分(例如,数据集的第二部分)来再次训练实体模型。在利用封闭数据集训练实体模型之前,可以确定第二实体子集,该第二实体子集不包括第一实体子集中的任何实体。此外,在利用封闭数据集训练实体模型之前,可以冻结与第二实体子集相关联的一个或多个参数,使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联。在各种实施方式中,也可以利用开放数据集(例如,数据集的第三部分)来训练用户模型。
在一些系统中,开放数据集是用于训练机器学习架构并最终生成机器学习架构的输出预测的唯一数据集。然而,在机器学习架构的训练中并入封闭数据集的能力,使得可以基于训练与多个实体相关联的开放数据集和与特定实体子集相关联的、封闭数据集的一部分来生成输出预测,为实体提供了特定于实体的增强输出预测。这种方法允许机器学习架构保持特定于实体子集的封闭数据集的私密性,同时对它们的输出预测提供显著的改进,从而提高预测的准确性和机器学习架构的性能。因此,本公开的各方面通过保持用于生成特定于实体子集的输出预测的封闭数据集(即,不应被用于训练基准(baseline)模型但可用于训练仅与实体子集相关的、模型的一部分的数据)的私密性来解决数据建模私密性中的问题。
在一些系统中,为了保持封闭数据集的私密性,使得它不在实体之间共享,为每个实体创建单独的封闭数据集模型,使得可以训练特定于每个实体的新的个性化模型。然后,系统可以保持新的个性化模型以及实体模型和用户模型。然而,将封闭数据集的一部分合并到机器学习架构的训练中的能力,使得可以基于用户模型和实体模型(例如,基准实体模型)生成输出预测,其中该实体模型仅利用与特定实体子集相关联的封闭数据集的一部分来执行附加训练,这为机器学习架构的训练提供了增强的性能和效率,同时减少了整个模型中的复制(duplication)。这种方法允许训练机器学习架构,以保持特定于实体子集的封闭数据集的一部分的私密性,同时提供最小化复制的有效模型,从而改进机器学习架构的整体设计。因此,本公开的各方面通过设计利用基准训练模型(例如,实体模型)以生成特定于实体子集的嵌入向量的数据模型,来解决数据建模架构中的问题。
因此,本公开针对用于训练机器学习架构的系统和方法,使得输出预测可以是特定于实体的。在一些实施方式中,所描述的系统和方法包括利用一个或多个处理电路。一个或多个处理电路允许接收数据集以及随后基于接收到的数据集训练模型。然后,可以利用训练的模型来生成输出预测,使得输出预测可以是特定实体和特定用户之间的相关性(correlation)的准确度测量。在本公开中,训练的模型包括用户模型和实体模型(即,双塔模型(two tower model))。在一些实施方式中,双塔模型可以提供匹配对(即,用户/实体对)之间的“匹配”的输出预测。
在一些实施方式中,利用与用户相关联的开放数据集来训练用户模型(例如,第一阶段)。并行地,利用与多个实体相关联的开放数据集来训练实体模型(例如,第一阶段)。利用特定于实体子集的、封闭数据集的一部分来进一步训练实体模型(例如,第二阶段)。在利用封闭数据集的一部分的训练过程中,与开放数据集相关联的一个或多个参数可以被冻结(即,被固定以使它们保持恒定)。这使得能够基于特定于实体子集的封闭数据集对实体模型进行第二次训练(即,在第二阶段期间)。此外,可以在利用开放数据集进行训练之后保存实体模型,使得多个实体可以在利用与特定实体子集相关联的封闭数据集对实体模型进行训练之前利用实体模型的基准训练。
在一些实施方式中,可以利用神经网络产生训练模型,使得第一神经网络被配置并与用户模型相关联,并且第二神经网络被配置并与实体模型相关联。在一些实施方式中,接收封闭数据集的第二部分,使得封闭数据集的第二部分与第二实体相关联。随后利用与多个实体的第三实体子集相关联的、数据集的第四部分来训练第二实体模型,其中第三实体子集不包括第一实体子集或第二实体子集中的任何实体。一个或多个处理电路且利用数据的第四部分可以训练第二实体模型,并且其中第二实体模型可以基于利用数据集的第一部分训练和冻结的实体模型。这可以随后用第三和第四实体模型来执行,每个训练的实体模型利用与多个实体的特定实体子集相关联的、封闭数据集的一部分。此外,每个实体模型可以生成特定于实体子集的嵌入向量。
在这里讨论的系统收集关于用户和/或实体的个人信息或者可以利用个人信息的情况下,可以向用户和/或实体提供机会来控制程序或特征是否收集用户信息和/或实体信息(例如,关于用户的社交网络、社交动作或活动、职业、用户偏好或用户当前位置的信息),或者控制是否和/或如何从内容服务器接收可能与用户和/或实体更相关的内容。此外,在存储或使用某些数据之前,可以以一种或多种方式对其进行处理,以便删除个人可识别信息。例如,可以处理用户的身份,使得不能为用户确定个人可识别信息,或者可以在获得位置信息时概括用户的地理位置(诸如城市、ZIP码、或州级),使得不能确定用户的特定位置。因此,用户和/或实体可以控制如何关于用户和/或实体收集信息并且内容服务器如何使用该信息。
现在参考图1A,根据说明性实施方式,示出了机器学习架构100的框图。机器学习架构100被示为包括用户模型102、用户数据集104、用户标识符106、实体模型108、开放实体数据集110、实体标识符集112、封闭数据集114、输出预测生成器116、和一个或多个特定于实体的参数118。在一些实施方式中,机器学习架构100可以利用机器学习算法(例如,神经网络、卷积神经网络、递归神经网络、线性回归模型、稀疏向量机、或本领域普通技术人员已知的任何其他算法)来实施。在一些实施方式中,学习算法可以采用双塔方法。机器学习架构100可以可通信地耦合到其他机器学习架构(例如,诸如通过网络230,如参考图2详细描述的)。机器学习架构100可以具有内部日志系统,该内部日志系统可以用于收集和/或存储数据(例如,在分析数据库220中,如参考图2详细描述的)。在各种实施方式中,可以对最近N天数据集训练模型,其中最近N天数据集可以包括由内部日志系统收集的日志。
在一些实施方式中,机器学习架构100可以在一个或多个处理电路上执行,诸如下面参考图2详细描述的那些。参考图1和图2,一个或多个处理电路可以包括微处理器、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)等,或者它们的组合。存储器可以包括但不限于能够向处理器提供程序指令的电子、光学、磁性或任何其他存储或传输设备。指令可以包括来自任何合适的计算机编程语言的代码。在一些实施方式中,可以利用与多个实体相关联的、数据集的一部分来训练实体模型108(即,塔1),使得它可以识别后续接收的数据中的一个或多个模式。随后接收的数据又可用于基于用于训练模型的多个实体生成嵌入向量。
在一些实施方式中,嵌入向量可以是模型预测的一系列浮点值表示。具体地,嵌入向量可以允许模型通常在变换的空间中表示类别(即,通过取点积)。在一些实施方式中,开放数据集110可以是与由一个或多个处理电路收集的先前数据相关联的、数据集的第一部分(例如,存储在分析数据库220中)。通常,利用开放数据集110训练实体模型108可以被定义为阶段1。
在一些实施方式中,一个或多个处理电路可以接收实体标识符集112(即E2)和开放数据集110(即E1-O)。实体标识符集112可以包括多个实体标识符,这些实体标识符可以包括标识特定实体的字符串、数字和/或符号。开放数据集110可以包括与实体标识符集112的多个实体相关联的特征。例如,开放数据集110可以包括行业类型(例如,制造、零售、金融)、企业规模(例如,小、中、大)和/或地理区域,诸如国家(例如,美国、加拿大、德国)。在特定示例中,多个实体可以被分类为总部在美国的大型制造公司,或者多个实体可以被分类为总部在德国的中型零售公司。在另一示例中,开放数据集110可以包括具有创伤中心级别(例如,级别1、级别2、级别3)和病床容量(例如,少于100张床位、100至499张床位、500张或更多张床位)的医疗中心/医院。在特定示例中,多个实体可被分类为具有500张或更多张床位的级别1创伤中心。
在一些实施方式中,在接收到开放数据集110时,一个或多个处理电路可以使用开放数据集110来训练实体模型108。具体地,开放数据集110可以作为输入被馈送到实体模型108。在训练过程中,可以调整被训练的实体模型108的一个或多个参数。在一些实施方式中,一旦实体模型108被训练,一个或多个处理电路就可以接收包括实体标识符和与该实体标识符相关联的实体数据的输入。在接收到输入之后,一个或多个处理电路可以利用实体模型108生成实体嵌入向量。
在一些实施方式中,一旦训练实体模型108的阶段1完成(即,基准训练),一个或多个处理电路可以确定与多个实体的第一实体子集相关联的、数据集的第二部分。此外,一个或多个处理电路还可以确定第二实体子集,使得第二实体子集不包括第一实体子集中的任何实体。在一些实施方式中,实体的每个子集可以包含单个实体。在确定第一实体子集和第二实体子集之后,一个或多个处理电路可以冻结实体模型108。冻结实体模型108可以包括固定与第二实体子集相关联的一个或多个参数,使得一个或多个参数在实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联。在一些实施方式中,冻结的实体模型可以存储在存储设备(例如,数据存储209)中,使得冻结的实体模型可以被重复使用以减少跨模型的复制,并提高一个或多个处理电路的存储容量。
在一些实施方式中,在实体模型108的训练和冻结完成之后,一个或多个处理电路可以利用与特定实体子集相关联的、数据集的一部分(即,与多个实体的第一实体子集相关联的、数据集的第二部分)再次训练实体模型108,使得它可以识别后续接收的数据中的一个或多个模式。在各种实施方式中,特定实体子集可以包括单个实体。在接收到后续的数据之后,一个或多个处理电路可以利用实体模型108生成用户嵌入向量。通常,利用封闭数据集114的一部分(即,E1-C)训练实体模型108可以被定义为阶段2。在一些实施方式中,封闭数据集114的一部分是与由一个或多个处理电路收集和/或接收的先前数据相关联的、数据集的第二部分。
在一些实施方式中,一个或多个处理电路可以接收与特定实体子集相关联的、封闭数据集114的一部分。特别地,封闭数据集114的一部分可以包括与特定实体子集相关联的特征。例如,封闭数据集114的一部分可以包括按客户的销售历史、重复出现的客户列表、和/或邮寄列表。在特定示例中,实体标识符集112的特定实体标识符可以是商家1,并且封闭数据集114的一部分可以包括过去一年中的所有销售和活动邮件列表。在另一示例中,封闭数据集114的一部分可以包括顾客及其位置列表。在具体示例中,实体标识符可以是公司1,并且封闭数据集114的一部分可以包括他们在过去5年中的所有客户。
在接收到封闭数据集114的一部分时,一个或多个处理电路可以利用封闭数据集114的该部分来训练实体模型108。具体地,封闭数据集114的一部分可以作为输入被馈送到实体模型108。在训练过程期间,实体模型108的一个或多个特定于实体的参数可以被调整并存储在一个或多个特定于实体的参数118的一部分中。一个或多个特定于实体的参数可以存储在矩阵中,使得可以基于特定实体子集来检索它们。在一些实施方式中,矩阵E2是由一个或多个处理电路收集和/或接收的先前数据的、特定于实体的N×M矩阵。在一些实施方式中,一个或多个处理电路可以将矩阵E2的特定于实体的数据转换成固定大小的N个嵌入向量,使得每个特定实体可以与固定大小的N个嵌入向量相关联。在一些实施方式中,矩阵E2可以包含大小为M个的特定实体,使得矩阵E2的每一列可以是特定于实体的数据(即,一个或多个特定于实体的参数118的一部分)。
在一些实施方式中,一旦实体模型108被训练,一个或多个处理电路可以接收包括实体标识符和与该实体标识符相关联的实体数据的输入。一个或多个处理电路然后可以利用实体模型108生成嵌入向量。
在一些实施方式中,实体模型108可以利用机器学习算法来实施,诸如神经网络(即,NN)、深层神经网络(即,DNN)、卷积神经网络(即,CNN)、递归神经网络(即,RNN)、线性回归模型、稀疏向量机或本领域普通技术人员已知的任何其他算法。在一些实施方式中,一旦训练实体模型108的阶段1完成,一个或多个处理电路就可以随后利用封闭数据集114的一部分来训练实体模型108,而无需冻结一个或多个参数。
在一些实施方式中,一个或多个处理电路可以利用与多个用户(即,U2)相关联的、数据集的一部分来训练用户模型102(即,塔2),使得它可以识别后续接收的数据中的一个或多个模式。在接收到后续的数据之后,一个或多个处理电路可以利用用户模型102生成用户嵌入向量。在一些实施方式中,用户数据集104(即,U1)是与由一个或多个处理电路收集的先前数据相关联的、数据集的第三部分。在一些实施方式中,一个或多个处理电路可以接收用户标识符集106和用户数据集104。用户标识符集106可以包括多个用户标识符,这些用户标识符可以包括标识特定实体的字符串、数字、和/或符号。用户数据集104可以包括与用户标识符集106的多个用户标识符相关联的特征。例如,用户数据集104可以包括购买历史信息、电子邮件地址、因特网历史、和/或先前的设备历史。在具体示例中,一个用户标识符可以是人员1,并且用户数据集104可以包含用户在过去30天内进行的所有购买、用户的电子邮件地址。在另一示例中,用户数据集104可以包括先前看过的电影、经常光顾的商店和先前的食品支出。在具体示例中,一个用户标识符可以是人员2,并且用户数据集104可以包含该用户在过去一周观看的所有电影、用户进行购买的五个最常见的商店以及用户进行购买的最后50个杂货店。在一些实施方式中,用户模型102可以是特定于用户的,使得每个用户可以拥有他们自己的用户模型102。在一些实施方式中,特定用户可以拥有与多于一个用户数据集(例如,用户数据集1和用户数据集2)相关联的多于一个用户模型102。
一旦接收到用户标识符集106和用户数据集104,一个或多个处理电路就可以使用用户标识符集106和用户数据集104来训练用户模型102。具体地,用户标识符集106和用户数据集104可以作为输入被馈送到用户模型102。在训练过程期间,可以调整用户模型102的一个或多个参数。在一些实施方式中,一旦用户模型102被训练,一个或多个处理电路就可以接收包括用户标识符和与该用户相关联的数据的输入。利用接收的输入,一个或多个处理电路可以利用用户模型102生成用户嵌入向量。
在一些实施方式中,实体模型108可以利用机器学习算法来实施,诸如神经网络(即,NN)、深层神经网络(即,DNN)、卷积神经网络(即,CNN)、递归神经网络(即,RNN)、线性回归模型、稀疏向量机或本领域普通技术人员已知的任何其他算法。在一些实施方式中,在后续训练期间,可以冻结用户模型102的一个或多个参数。
一旦实体模型108和用户模型102被训练,机器学习架构100的一个或多个处理电路就可以采用实体模型108和用户模型102来基于接收到的数据生成输出预测。在一些实施方式中,输出预测可以预测用户将与特定实体交互的可能性(即,执行转换)。在一些实施方式中,可以利用输出预测生成器116生成所生成的输出预测。具体地,给定对用户模型102和实体模型108的输入,输出预测生成器116可以采用实体嵌入向量和用户嵌入向量的点积来生成输出预测。在一些实施方式中,实体嵌入向量和用户嵌入向量可以表示为一系列浮点值。在一些实施方式中,实体嵌入向量和用户嵌入向量被归一化,使得浮点值被缩放到0和1之间的变量。在这点上,输出预测生成器116的点积可以产生向量之间的余弦距离,该余弦距离的范围从-1(即最不可能交互)到+1(即最可能交互)。在另一实施方式中,可以计算欧几里德距离来确定交互可能性。
输出预测生成器116可以被定义为:
阶段1:
Figure BDA0002666471610000121
Figure BDA0002666471610000122
阶段2:
Figure BDA0002666471610000123
其中标注符号如下表示:
·uid:用户标识符
·U:用户模型函数
·θU:与用户模型102相关联的参数
·
Figure BDA0002666471610000124
用户嵌入向量
·f(uid):用户数据集104
·eid:实体标识符
·E:实体模型函数
·θE:与实体模型108相关联的参数
·
Figure BDA0002666471610000125
多个实体嵌入向量
·f(eid):开放数据集104
·opData(uid,eid):用户和特定实体之间的交互可能性
·Loss:损失函数(例如,sigmoid交叉熵)
·
Figure BDA0002666471610000126
特定于实体的嵌入向量
·clsdData(uid,eid):用户和特定实体之间的交互可能性
如所示出的,在仅利用开放数据集110训练用户模型102和训练实体模型108之后,阶段1完成。同样如所示出的,在利用开放数据110和与实体标识符集112的特定实体子集的标识符相关联的、封闭数据集114的一部分训练用户模型102和实体模型108之后,完成阶段2。
在一些实施方式中,输出预测可以预测用户1相对于商家X执行转换(例如,购买物品、提供所请求的信息等)的可能性有多大。例如,一个或多个处理电路可以接收输入数据集的一部分和与用户相关联的输入标识符。在另一示例中,一个或多个处理电路还可以接收输入数据集的一部分和与该实体模型108相关联的特定实体子集的标识符。在这点上,一个或多个处理电路然后可以利用用户模型102和实体模型108生成嵌入向量,其中,输出生成器116将基于用户1相对于商家X执行转换的可能性来产生输出预测。因此,商家X可以基于多个用户相对于他们的商店执行转换的可能性来利用输出预测来瞄准特定用户。在另一示例中,输出预测可以预测患者1将到医院Y就诊的可能性。在另一示例中,输出预测可以预测用户2将点击内容项Z的可能性。
在各种实施方式中,一个或多个处理电路可以利用随后被冻结的基准模型(即,利用开放数据集110训练的模型)来训练第二实体模型。在一些实施方式中,第二实体模型可以是实体模型108(在其完成阶段1之后)的精确副本(duplicate)。在一些实施方式中,封闭数据集114的不同部分是与多个实体的第三实体子集相关联的、数据集的第四部分。在这点上,第二实体模型可以是与第三实体子集相关联的不同实体模型。
在一些实施方式中,一个或多个处理电路可以接收与第三实体子集相关联的、封闭数据集114的该不同部分。在各种实施方式中,第三实体子集可以包括单个实体。在接收到封闭数据集114的该不同部分时,一个或多个处理电路可以利用封闭数据集114的该不同部分来训练第二实体模型。具体地,封闭数据集114的该不同部分可以作为输入被馈送到第二实体模型。在训练过程期间,可以调整第二实体模型的一个或多个特定于第三子集的参数(例如,一个或多个特定于实体的参数118的一部分,公司2)。在一些实施方式中,一旦第二实体模型被训练,一个或多个处理电路就可以接收包括实体标识符和与该实体标识符相关联的实体数据的输入。然后接收的数据可以被用在第二实体模型中,以生成实体嵌入向量。例如,如一个或多个特定于实体的参数118的一部分所示,公司1可以是实体模型108中利用的一个或多个参数,而公司2可以是第二实体模型中利用的一个或多个参数。在这点上,一个或多个处理电路可以利用实体模型108生成面向第一实体子集的嵌入向量,并且一个或多个处理电路也可以利用第二实体模型生成面向第三实体子集的嵌入向量。此外,第一实体子集可以与特定实体(例如,公司1)相关联,并且第三实体子集可以与不同的特定实体(例如,公司2)相关联。在一些实施方式中,重新训练实体模型108可以针对多个实体发生,使得实体的每个子集可以生成面向实体的每个特定子集的嵌入向量。
现在参考图1B,示出了根据说明性实施方式的数据收集架构150的框图。数据收集架构150被示为包括日志层152、用户事件层154、交互层156、和数据库158。在一些实施方式中,公共数据可以被定义为对公众可用的数据,而没有某些限制(例如开放数据集110)。在一些实施方式中,私有数据可以被定义为受限数据(例如,封闭数据集114)。如所示出的,公共数据并行流过模型的每一层,其中公共数据最终存储在中心位置,使得可以在没有某些限制的情况下共享数据。同样如所示出的,私有数据独立于公共数据流过模型的每一层,使得私有数据最终存储在私有位置,其中,数据被限制到某些实体和/或用户,以防止该数据泄漏。在一些实施方式中,数据收集架构150的每一层可以被配置为在一个或多个处理电路(例如,计算系统201)上运行。
在一些实施方式中,日志层152可以从一个或多个处理电路接收数据。例如,客户端设备可以与实体网站交互。每当客户端设备与网站交互时,可以保存日志并将其传输到日志层152。在一些实施方式中,日志层152将它接收到的日志传输到用户事件层154。在一些实施方式中,层之间或一个或多个处理电路之间的所有通信可以通过网络(例如,网络230)来完成。
在一些实施方式中,用户事件层154可以基于接收到的数据来确定事件是否发生。例如,客户端设备从实体网站购买物品。在另一示例中,客户端设备可能随后拨打了电话号码。在一些实施方式中,接收的数据可以被存储并分类到数据库158中。数据库158可用于向交互层156提供封闭数据和开放数据。在各种实施方式中,数据收集架构150可以可通信且可操作地耦合到数据库158。数据库158可以由多个数据库组成,使得数据可以基于某些属性而被分离。例如,开放数据可以存储在数据库158的一部分中,并且封闭数据可以存储在数据库158的另一部分中。
在一些实施方式中,交互层156可以基于用户事件和接收到的日志来关联数据。例如,关联引起客户端设备购买物品的日志。在一些实施方式中,关联的数据随后可以基于它被认为是私有还是公共的来进行保存。在这点上,如果关联的数据被认为是公共的,则数据可以被存储在公共数据库(例如,数据库158的一部分)中,使得它可以被用来基于多个实体训练模型。在另一示例中,如果关联的数据被认为是私有的,则数据可以被存储在私有数据库(例如,数据库158的一部分)中,使得它可以被用来基于特定实体子集训练模型。在一些实施方式中,可以利用其他架构来收集数据。
现在参考图2,示出了根据说明性实施方式的分析系统210和相关联的环境200的框图。用户可以使用一个或多个用户计算设备240来执行各种动作和/或访问各种类型的内容,一些内容可以通过网络230(例如,因特网、LAN、WAN等)来提供。本文使用的“用户”可以指操作用户计算设备240,并经由用户计算设备240与资源或内容项目交互等的个体。用户计算设备240可以用于向分析系统210发送数据,或者用于访问网站(例如,使用因特网浏览器)、媒体文件、和/或任何其他类型的内容。一个或多个实体计算设备250可以被实体用来执行各种动作和/或访问各种类型的内容,一些内容可以通过网络230提供。实体计算设备250可以用于向分析系统210发送数据,或者用于访问网站、媒体文件、和/或任何其他类型的内容。
分析系统210可以包括一个或多个处理器(例如,任何通用或专用处理器),并且可以包括和/或可操作地耦合到一个或多个暂时和/或非暂时存储介质和/或存储器设备(例如,任何计算机可读存储介质,诸如磁存储、光存储、闪存、RAM等)。在各种实施方式中,分析系统210可以可通信且可操作地耦合到分析数据库220。分析系统210可以被配置为向分析数据库220查询信息以及将信息存储在分析数据库220中。在各种实施方式中,分析数据库220包括各种暂时和/或非暂时存储介质。存储介质可以包括但不限于磁存储、光存储、闪存、RAM等。数据库220和/或分析系统210可以使用各种API来执行数据库功能(即,管理存储在数据库220中的数据)。这些API可以是但不限于SQL、ODBC、JDBC等。
分析系统210可以被配置为经由网络230与环境200中所示的任何设备或系统通信。分析系统210可以被配置为从网络230接收信息。信息可以包括浏览历史、cookie日志、电视数据、印刷出版物数据、无线电数据、和/或在线交互数据。分析系统210可以被配置为接收和/或收集用户计算设备240在网络230上的交互。信息可以存储在数据集222中。
数据集222可以包括由分析系统210通过从实体计算设备250或用户计算设备240接收交互数据而收集的数据。该数据可以是在一个或多个时间点从特定实体或用户输入的数据(例如,患者、顾客购买、因特网内容项目)。数据输入可以包括与多个实体、多个用户、特定实体、特定用户等相关联的数据。数据集222还可以包括由收集数据的各种数据聚集系统和/或实体收集的数据。在一些实施方式中,数据集222可以包括封闭数据集224和开放数据集226。封闭数据集224可以与多个实体或多个用户相关联,并且封闭数据集可以与特定于实体的数据或特定于用户的数据相关联。
分析系统210可以包括被配置为执行分析系统210的各种功能的一个或多个处理电路(即,可由处理器执行的计算机可读指令)和/或电路(即,ASIC、处理器存储器组合、逻辑电路等)。在一些实施方式中,处理电路可以是或包括模型生成系统212。模型生成系统212可以被配置为从存储在分析数据库中的数据生成各种模型和数据结构。
现在参考图3,示出了根据说明性实施方式的机器学习架构的训练方法300的流程图。机器学习架构100可以被配置为执行方法300。此外,本文描述的任何计算设备可以被配置为执行方法300。
在方法300的总体概述中,在阶段310,一个或多个处理电路接收数据集。在阶段320,一个或多个处理电路确定与多个实体相关联的、数据集的第一部分。在阶段330,一个或多个处理电路利用数据集的第一部分训练实体模型,其中实体模型被训练以识别随后接收的数据中的一个或多个模式。在阶段340,一个或多个处理电路确定与多个实体的第一实体子集相关联的、数据集的第二部分。在阶段345,一个或多个处理电路确定第二实体子集,其中第二实体子集不包括第一实体子集中的任何实体。在阶段350,一个或多个处理电路冻结与第二实体子集相关联的一个或多个参数,使得一个或多个参数在实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联。在阶段360,一个或多个处理电路利用数据集的第二部分训练实体模型。
更详细地参考方法300,在阶段310,一个或多个处理电路接收数据集。在一些实施方式中,数据集可以包括从多个源收集的数据。例如,数据集可以由一个或多个处理电路收集。在一些实施方式中,数据集可以由许多数据子集组成。在一些实施方式中,数据子集可以具有不同的特征。例如,数据子集可以是对所有公众都可用的公共数据。在另一示例中,数据子集可以是受限的私有数据,并且只对某些实体和/或用户可用。在一些实施方式中,数据子集可以包括某些限制。
在阶段320,一个或多个处理电路确定与多个实体相关联的、数据集的第一部分(例如,开放数据集110)。在一些实施方式中,数据集的第一部分可以基于哪些数据可以在实体间共享来确定。例如,数据集的第一部分可以与业务类型相关联(例如,非盈利性、政府机构、医疗保健提供商)。在一些实施方式中,数据集的第一部分不包括关于特定实体子集的任何识别信息。例如,公司1可以是非盈利性企业,但也可以有其所有捐赠者的列表。因此,公司1的非盈利业务状态可以被包括在数据集的第一部分中,其中其所有捐赠者的列表将不被包括在数据集的第一部分中。
在阶段330,一个或多个处理电路利用数据集的第一部分训练实体模型(例如,实体模型108),其中实体模型被训练以识别随后接收的数据中的一个或多个模式。在一些实施方式中,一个或多个模式可以是与数据集的第一部分相关联的任何特征或特性。
在一个示例中,可以基于与医疗信息相关联的一个或多个模式来训练实体模型,其中医疗信息可以被定义为与多个医疗机构相关联的信息。在这点上,医疗信息可以包含关于在多个医疗机构就诊的医疗护理的信息,其中所有个人可识别信息都被移除。
在另一示例中,可以基于与可疑交易和欺诈性购买数据相关联的一个或多个模式来训练实体模型,其中交易和/或欺诈性购买可以被定义为由个体做出的任何报告。在这方面,可疑交易和/或欺诈性购买可以包括个体在任何时间提交关于交易或欺诈性购买的报告。
在一些实施方式中,可以修改一个或多个模式,使得可以基于不同的模式来训练实体模型的训练。在一个示例中,可以基于与一个或多个归因转换(attributedconversion)相关联的一个或多个模式来训练实体模型,其中转换可以被定义为内容制作者完成有意义的用户动作,并且利用归因转换可以包括将转换事件与之前的内容事件相关联。在这点上,归因转换可以包括转换事件,该转换事件之前是来自客户端设备的对来自内容制作者的内容项目的点击,它可以与通过点击的转换相关联,其中该转换然后被归因于该点击。在另一方面,如果转换事件之前是来自客户端设备的对来自内容制作者的内容项目的印象,则它可以与通过观看的转换相关联,其中该转换然后被归因于该印象。
在阶段340,一个或多个处理电路确定与多个实体的第一实体子集相关联的、数据集的第二部分。在一些实施方式中,数据集的第二部分不包括与数据集的第一部分相关联的任何数据。具体地,数据集的第二部分基于特定于第一实体子集的数据来构建,使得特定于第一实体子集的数据不与特定于第二实体子集的数据共享。在一些实施方式中,第一实体子集可以与单个实体相关联。例如,公司1拥有与去年销售的所有产品相关联的数据(例如,销售了10亿件产品)。但是,竞争对手公司1也有与去年销售的所有产品相关联的数据(例如,销售了100万件产品)。在这个示例中,公司1包含特定于该公司的大部分数据,并且不应该被用在基准模型(即,利用开放数据集110训练的模型)中以生成用于竞争对手公司1的输出预测,反之亦然。因此,在该示例中,竞争对手公司1不应该利用公司1的大量数据来生成最终可能影响公司1盈利和/或竞争优势的输出预测。此外,公司1可以基于生成的输出预测扩大其客户群。
在阶段345,一个或多个处理电路确定第二实体子集,其中第二实体子集不包括第一实体子集中的任何实体。在一些实施方式中,第二实体子集可以与单个实体相关联。例如,第一实体子集可以包含公司1,并且第二实体子集可以包含公司2。在阶段350,一个或多个处理电路冻结与第二实体子集相关联的一个或多个参数,使得一个或多个参数在实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与第二实体子集相关联。在一些实施方式中,冻结一个或多个参数可以包括固定与利用数据集的第一部分(即,开放数据集110)的训练的模型相关联的所有参数。
在阶段360,一个或多个处理电路利用数据集的第二部分训练实体模型。在一些实施方式中,完成利用数据集的第二部分训练实体模型,使得实体可以获得基于特定于实体的数据(即,数据集的第二部分)生成输出预测的实体模型。在这点上,利用数据集的第二部分训练实体模型防止了对特定于实体的数据的模型泄露,并因此在产生更准确的输出预测的同时保持了与每个实体相关联的每个数据集的私密性。在一些实施方式中,利用数据集的第二部分第二次训练实体模型确保了某些数据保持私有,并且不被共享或用于针对另一实体进行输出预测。
在上述相同示例中,可以基于与特定医疗机构相关联的医疗信息相关联的一个或多个模式来再次训练实体模型,其中医疗信息可以包括关于患者的个人可识别信息。在这方面,未经患者许可,不得向任何实体(例如,另一医疗机构)公开与特定患者相关联的医疗信息。例如,医疗机构中的患者可能患有需要多名医生护理的疾病。医疗机构内的医生可以一起工作来帮助解决医疗状况,但是未经患者许可,医疗机构不应该将医疗信息共享给任何其他实体和/或个人。
在上述相同示例中,可以基于与特定金融公司相关联的一个或多个模式来再次训练实体模型,其中交易和/或欺诈性购买可以被定义为由个体直接向特定金融公司做出的任何报告。在这点上,交易和/或欺诈性购买是特定于金融公司的,使得它们不应该与其他金融公司或任何其他实体共享,并且可疑交易和/或欺诈性购买的示例可以包括个体在任何时间向特定金融公司提交交易或欺诈性购买的报告。
在一些实施方式中,可以修改一个或多个模式,使得可以基于不同的模式来再次训练实体模型的训练。在上述相同的示例中,可以基于与非归因转换相关联的一个或多个模式来再次训练实体模型,其中转换可以被定义为内容制作者完成有意义的用户动作,并且非归因转换不与内容项目印象或内容项目点击事件相关联。在这点上,非归因转换是特定于内容制作者的,使得它们不与其他内容制作者共享,并且非归因转换的示例可以包括来自客户端设备的不与内容项目印象或内容项目点击事件相关联的购买。
现在参考图4,示出了根据说明性实施方式的机器学习架构的训练方法400的流程图。机器学习架构100可以被配置为执行方法400。此外,本文描述的任何计算设备可以被配置为执行方法400。方法400类似于上面参考图3详细描述的类似特征和功能。
在方法400的总体概述中,阶段410-460在上面参考图3的阶段310-360进行了详细描述。然而,在阶段470,一个或多个处理电路确定与多个用户相关联的、数据集的第三部分。在阶段480,一个或多个处理电路利用数据集的第三部分训练用户模型,其中用户模型被训练以识别随后接收的数据中的一个或多个模式。在阶段490,一个或多个处理电路接收输入数据集。在阶段492,一个或多个处理电路将输入数据集输入到用户模型和实体模型中。在阶段494,一个或多个处理电路生成输出预测。
更详细地参考方法400,在阶段470,一个或多个处理电路确定与多个用户相关联的、数据集的第三部分,其中多个用户包括用户标识符集和多个用户信息。阶段470类似于上文参考图3的阶段420详细描述的类似特征和功能。然而,在阶段470,数据的该部分与多个用户相关联。
在阶段480,一个或多个处理电路利用数据集的第三部分训练用户模型,其中用户模型被训练以识别与用户相关联的一个或多个模式。阶段480类似于上文参考图3的阶段430详细描述的类似特征和功能。然而,在阶段480,训练用户模型,使得它可以基于用于训练用户模型(例如,用户模型102)的多个用户来生成与预测分数相关联的用户嵌入向量。
在阶段490,一个或多个处理电路接收输入数据集。在一些实施方式中,输入数据集可以具有与用户标识符相关联的多个部分。在一些实施方式中,输入数据可以具有与实体标识符相关联的多个部分。在一些实施方式中,实体标识符可以确定利用哪个实体模型。例如,如果实体标识符是公司1,则随后将被利用的训练的实体模型将是利用与公司1实体标识符相关联的、封闭数据集的一部分训练的实体模型。在另一个示例中,如果实体标识符是公司2,则随后将被利用的训练的实体模型将是利用与公司2实体标识符相关联的、封闭数据集的一部分训练的实体模型。
在阶段492,一个或多个处理电路将输入数据集输入到用户模型和实体模型中。在一些实施方式中,利用的实体模型可以是与实体标识符相关联的特定于实体的实体模型。在一些实施方式中,利用的实体模型可以是与多个实体标识符(例如,实体标识符集106)相关联的基准实体模型。例如,利用的实体模型可以与公司M相关联,使得实体模型的输出是特定于公司M的。在另一示例中,利用的实体模型可以与实体标识符集112相关联,使得实体模型的输出不是特定于实体的。在这点上,公司M可以利用与实体标识符集112相关联的实体模型,但是除了公司M之外的任何其他公司都不能利用与公司M相关联的实体模型。在这些示例中,公司M的特定数据被私有地保持,使得不存在模型泄露(即,被任何其他公司利用)。
在阶段494,一个或多个处理电路基于训练的用户模型和训练的实体模型生成输出预测,其中输出预测特定于第一实体子集,并且其中输出预测是准确度测量,准确度测量包括值。阶段494类似于上面参考图1A的输出预测生成器116详细描述的类似特征和功能。此外,生成的输出预测可以提供有针对性的洞察以及实体和用户的详细人口统计。
现在参考图5A-5D,示出了根据多个说明性实施方式的与机器学习架构100相关的示例学习曲线图。图5A-5B中的每一个都是基于1∶5的真正例/假正例(true positive/false positive)率绘制的。图5C-5D中的每一个都是基于1∶100的真正例/假正例率绘制的。在所示的实施方式中,真正例被定义为对用户模型102和实体模型108的输入,其中当用户已经与特定实体交互时,模型正确地预测用户已经与该实体交互。在一些实施方式中,假正例可以被定义为对用户模型102和实体模型108的输入,其中当用户尚未与特定实体交互时,模型预测用户已经与该实体交互。在一些实施方式中,假负例可以被定义为对用户模型102和实体模型108的输入,其中当用户已经与特定实体交互时,模型预测用户尚未与该实体交互。
下面描述的图5A是精确率-召回率(precision-recall,PR)曲线的说明性示例。精确率-召回率曲线可用于评估训练的模型(例如,用户模型102、实体模型108)的技能。精确率-召回率曲线可用于评估召回率(即x轴)对(versus)精确率(y轴)。精确率-召回率曲线可定义为:
Figure BDA0002666471610000211
Figure BDA0002666471610000212
其中PPP是正例预测能力,R是召回率,TP是真正例数量,FP是假正例数量,并且FN是假负例数量。因此,曲线下的大面积是高召回率和高精确率的结果(即,召回率是正确识别的实际正例的比例的性能度量,而精确率是正确识别的正例的比例的性能度量)。
因此,如所示出的,用3条单独的线绘制(例如,线502A、线504A和线506A)精确率-召回率曲线。在机器学习架构100的阶段1之后利用训练的模型绘制线502A。在机器学习架构100的阶段1和阶段2之后利用训练的模型绘制线504A。如参考图8详细描述的,利用3个训练的模型架构绘制线506A。如所示出的,线504A的训练的模型比线502A的训练的模型产生显著改善的结果,因为线504A的模型可以更准确地预测真正例。同样如所示出的,线504A的训练的模型不能像线506A的模型那样准确地预测真正例。然而,线506A的训练的模型具有更多的缺点,因为每个实体将需要完全不同的个性化模型。相反,504A的训练的模型利用了机器学习架构100的两阶段技术,其中不需要完全不同的个性化模型,并且因此,允许机器学习架构100的训练保持特定于实体子集的封闭数据集114的各个部分的私密性,同时提供最小化复制的有效模型,使得机器学习架构的整体设计得到改进。
下面描述的图5B是受试者工作特征曲线(receiver operating characteristic,ROC)曲线的说明性示例。受试者工作特征曲线曲线可用于评估假正例率(即x轴)对真正例率(y轴)。受试者工作特征曲线曲线可定义为:
Figure BDA0002666471610000213
其中,TPR是真正例率,TP是真正例数量,并且FN是假负例数量。因此,绘制图的x轴上更小的值指示更低的假正例和更高的真负例,而绘制图的y轴上更大的值指示更高的真正例和更低的假负例(也就是说,曲线下较大的面积(area under the curve,AUC)指示模型预测交互实际发生和实际没有发生的准确程度)。
如所示出的,用3条单独的线绘制(例如,线502B、线504B和线506B)精确率-召回率曲线。在机器学习架构100的阶段1之后利用训练的模型绘制线502B。在机器学习架构100的阶段1和阶段2之后利用训练的模型绘制线504B。如参考图8详细描述的,利用3个训练的模型架构绘制线506B。如所示出的,线504A的训练的模型比线502A的训练的模型产生显著改善的结果,因为线504A的模型可以更准确地预测真正例。同样如所示出的,当实际结果为正时,线504A的训练的模型不能像线506A的模型那样准确地预测真正例。然而,如参考图5A详细描述的,线504B的训练的模型比506B具有更多的优点。此外,如所示出的,图5C-5D类似于参考图5A-5B描述的类似特征和功能,代替的是利用1∶100的真正例/假正例率。
现在参考图6,示出了根据说明性实施方式的机器学习架构600的框图。机器学习架构600类似于参考图1A详细描述的类似特征和功能,具体是训练模型(即,用户模型602和实体模型608)的阶段1。然而,在一些实施方式中,一旦完成训练实体模型608的阶段1(即,基准训练),机器学习架构600就被配置为包括个性化嵌入向量。个性化嵌入向量是特定于实体的参数618的子集的一部分,该参数618的子集类似于参考图1A的特定于实体的参数118详细描述的相似特征和功能。然而,代替在阶段2中利用封闭数据集(例如,封闭数据集114)的一部分来重新训练实体模型,机器学习架构600可以利用个性化嵌入向量来直接生成输出预测。在一些实施方式中,机器学习架构600输出预测类似于参考图1A(具体是输出预测生成器116)详细描述的相似特征和功能。
然而,定义机器学习架构600的输出预测生成器的等式可以被定义为:
阶段1:
Figure BDA0002666471610000221
阶段2:
Figure BDA0002666471610000222
其中,符号标注类似于输出预测生成器116,并且新的符号标注如下表示:
·P:个性化实体模型功能
在一些实施方式中,机器学习架构600提供了如上面参考图1A描述的类似改进。在一些实施方式中,机器学习架构600可以对生成的输出预测提供改进,因为个性化嵌入向量可以提供对生成的输出预测的直接影响。此外,个性化嵌入向量可以提供评估输出预测的方法,而无需重新训练和/或添加任何模型。
现在参考图7,根据说明性实施方式,示出了机器学习架构700的框图。机器学习架构700类似于参考图1A(具体是训练模型的阶段1)详细描述的相似特征和功能。然而,代替在阶段2中利用数据集的不同部分(例如,封闭数据集114的特定于实体的一部分)重新训练实体模型,机器学习架构700训练另一个性化实体模型(即,模型P)。在一些实施方式中,机器学习架构700基于每个实体训练个性化实体模型,使得每个实体具有其自己的单独的模型(例如,个性化架构702、个性化架构704、和个性化架构706)。
在一些实施方式中,一旦训练了每个模型(即,用户模型、实体模型、和个性化模型),机器学习架构700的一个或多个处理电路就可以采用每个模型来基于接收到的数据生成输出预测。机器学习架构700输出预测类似于参考图1A(具体是输出预测生成器116)详细描述的相似特征和功能。
然而,定义机器学习架构700的输出预测生成器的等式可以被定义为:
阶段1:
Figure BDA0002666471610000231
阶段2:
Figure BDA0002666471610000232
Figure BDA0002666471610000233
其中,符号标注类似于输出预测生成器116,并且新的符号标注如下表示:
·
Figure BDA0002666471610000234
对于任何给定实体eid的个性化实体模型
·θU:与个性化实体模型相关联的参数
·clsdDataeid:用户和特定实体的交互可能性
在一些实施方式中,与机器学习架构100相比,机器学习架构700需要更大量的资源,而机器学习架构100仅需要包括每个实体的所有“私有数据”的个性化数据集(即,封闭数据集114)。因此,从效率和保持的角度来看,需要训练3个模型而不是2个模型可能不那么有利。
现在参考图8,示出了根据说明性实施方式的与机器学习架构100相关的神经网络的示例隐藏层表示800。在一些实施方式中,模型可以被可视化,使得它们可以为数据对(例如,用户/实体)提供置信度和探索机会。在一些实施方式中,实体嵌入向量可以包含结构。例如,具有相似垂直方向的实体可以组合在一起。在另一示例中,不同于纯基于垂直方向相似性的方法(其中它只能基于具有完全相同的垂直方向的实体来确定),示例隐藏层表示800上的实体嵌入向量位置可以基于国家和/或其他因素。如所示出的,示例隐藏层表示800包括10,000个嵌入向量。如所示出的,还包括小簇[1]和另一柱状结构[2]。因此,类似于[1]和[2]的聚类可以在整个示例隐藏层表示1100中形成,使得可以基于每个实体嵌入向量的位置进行预测。
现在参考图9,示出了根据说明性实施方式的与机器学习架构100相关的神经网络的示例隐藏层表示900。在一些实施方式中,嵌入向量可以包含使得分组在一起的点可以提供对每个点特征的指示的结构。在所示的该示例中,位于一起的开放点可以是实体,并且位于一起的填充点可以是用户。因此,在该特定示例中,点的位置提供了对用户/实体关系的洞察。一种洞察可以包括实体/用户关系所描绘的特定角度。如所示出的,大多数实体/用户关系描绘了钝角(即负内积),这指示实体/用户关系不太可能交互。
现在参考图10,示出了根据说明性实施方式的与机器学习架构100相关的神经网络的示例隐藏层表示1000。示例隐藏层表示1000类似于参考图9详细描述的类似特征和功能。然而,在所示的这个示例中,位于一起的填充点可以是给定实体的用户,大的开放点可以是给定实体,并且位于一起的开放点可以是随机采样的用户。因此,在该具体示例中,点的位置提供了对用户/实体关系的洞察。一种洞察可以包括实体/用户关系正描绘的特定角度。如所示出,给定实体关系的大多数实体/用户描绘了一个锐角(即,正内积),这指示给定实体关系的实体/用户可能进行交互。
图11示出了计算机系统1100的描述,该计算机系统1100可以用于例如实施本公开中描述的说明性用户设备240、说明性实体设备250、说明性分析系统210和/或各种其他说明性系统。计算系统1100包括用于传达信息的总线1105或其他通信组件,以及耦合到总线1105用于处理信息的处理器1110。计算系统1100还包括耦合到总线1105的主存储器1115(诸如随机存取存储器(random access memory,RAM)或其他动态存储设备),用于存储信息和将由处理器1110执行的指令。主存储器1115还可以用于在处理器1110执行指令期间存储位置信息、临时变量、或其他中间信息。计算系统1100还可以包括耦合到总线1105的只读存储器(read only memory,ROM)1120或其他静态存储设备,用于存储静态信息和处理器1110的指令。诸如固态设备、磁盘或光盘的存储设备1125耦合到总线1105,用于持久存储信息和指令。
计算系统1100可以经由总线1105耦合到显示器1135,诸如液晶显示器或有源矩阵显示器,用于向用户显示信息。输入设备1130(诸如包括字母数字键和其他键的键盘)可以耦合到总线1105,用于向处理器1110传达信息和命令选择。在另一实施方式中,输入设备1130具有触摸屏显示器1135。输入设备1130可以包括光标控制,诸如鼠标、轨迹球、或光标方向键,用于向处理器1110传达方向信息和命令选择,以及用于控制显示器1135上的光标移动。
在一些实施方式中,计算系统1100可以包括通信适配器1145,诸如网络适配器。通信适配器1145可以耦合到总线1105,并且可以被配置为实现与计算或通信网络1145和/或其他计算系统的通信。在各种说明性实施方式中,可以使用通信适配器1145来实现任何类型的网络配置,诸如有线(例如,经由以太网)、无线(例如,经由WiFi、蓝牙等)、预配置、自组织、LAN、WAN等。
根据各种实施方式,响应于处理器1110执行包含在主存储器1115中的指令布置,计算系统1100可以实施实现本文描述的说明性实施方式的过程。这种指令可以从另一计算机可读介质(诸如存储设备1125)读入主存储器1115。包含在主存储器1115中的指令布置的执行使得计算系统1100执行本文描述的说明性过程。多处理布置中的一个或多个处理器也可以用来执行包含在主存储器1115中的指令。在替代实施方式中,可以使用硬连线电路来代替软件指令或者与软件指令相结合,以实施说明性实施方式。因此,实施方式不限于硬件电路和软件的任何特定组合。
尽管在图11中已经描述了示例处理系统,但是本说明书中描述的主题和功能操作的实施方式可以使用其他类型的数字电子电路来执行,或者以计算机软件、固件或硬件(包括本说明书中公开的结构和它们的结构等价物)执行,或者以它们中的一个或多个的组合执行。
本说明书中描述的主题和操作的实施方式可以使用数字电子电路来执行,或者以包含在有形介质、固件或硬件(包括本说明书中公开的结构及其结构等价物)上的计算机软件执行,或者以它们中的一个或多个的组合来执行。本说明书中描述的主题的实施方式可以被实施为一个或多个计算机程序,即,编码在一个或多个计算机存储介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。可替换地或附加地,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光或电磁信号,其中该传播信号被生成以编码用于传输到合适的接收器装置以由数据处理装置执行的信息。计算机可读存储介质可以是计算机可读存储设备、计算机可读存储基板、随机或串行存取存储器阵列或设备、或它们中的一个或多个的组合,或者包括在其中。此外,虽然计算机存储介质不是传播信号,但是计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是一个或多个分离的组件或介质(例如,多个CD、磁盘或其他存储设备),或包括在其中。因此,计算机存储介质既是有形的又是非暂时性的。
本说明书中描述的操作可以被实施为由数据处理装置对存储在一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。
术语“数据处理设备”或“计算设备”包括用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、片上系统、或多个片上系统、或前述的组合。该装置可以包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机、或它们中的一个或多个的组合的代码。该装置和执行环境可以实现各种不同的计算模型基础设施,诸如网络服务、分布式计算和网格计算基础设施。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言、声明性或过程性语言,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程、对象或适合在计算环境中使用的其他单元。计算机程序可以但不是必须对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件(例如,存储在标记语言文档中的一个或多个脚本)的一部分中,存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件(例如,存储一个或多个模块、子程序、或代码部分的文件)中。计算机程序可以被部署为在一台计算机上执行,或者在位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器来执行,以通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流程也可以由专用逻辑电路(例如,FPGA(现场可编程门阵列)或(ASIC)专用集成电路)来执行,并且装置也可以被实施为专用逻辑电路。
举例来说,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个海量存储设备(例如,磁盘、磁光盘或者光盘),或者计算机还将被可操作地耦合到所述一个或多个海量存储设备,以从所述一个或多个海量存储设备接收数据、或者向所述一个或多个海量存储设备传递数据、或者兼而有之。然而,计算机不需要这样的设备。此外,计算机可以嵌入到另一设备中,例如移动电话、个人数字助理(personal digital assistant,PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(Global Positioning System,GPS)接收器、或便携式存储设备(例如,通用串行总线(universal serial bus,USB)闪存驱动器),仅举几例。适于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,包括例如:半导体存储设备(例如,EPROM、EEPROM和闪存设备);磁盘(例如,内部硬盘或可移动磁盘);
Figure BDA0002666471610000271
以及
Figure BDA0002666471610000272
和DVD-ROM盘。处理器和存储器可以由专用逻辑电路来补充或并入专用逻辑电路。
为了提供与用户的交互,本说明书中描述的主题的实施方式可以使用计算机来执行,该计算机具有用于向用户显示信息的显示设备(例如,阴极射线管(cathode ray tube,CRT)或液晶显示器(liquid crystal display,LCD)监视器)以及用户可以通过其向计算机提供输入的键盘和定向设备(例如,鼠标或轨迹球)。其它种类的设备也可以用来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈、或者触觉反馈;以及来自用户的输入可以以任何形式被接收,包括声音、语音、或者触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从用户的客户端设备上的网络浏览器接收的请求,将网页发送到网络浏览器。
本说明书中描述的主题的实施方式可以使用计算系统来执行,该计算系统包括后端组件(例如,作为数据服务器)、或者包括中间件组件(例如,应用服务器)、或者包括前端组件(例如,具有用户可以通过其与本说明书中描述的主题的实施方式进行交互的图形用户界面或网络浏览器的客户端计算机),或者一个或多个这样的后端、中间件或前端组件的任意组合。系统的组件可以通过任何形式或介质的数字数据通信来互连,例如通信网络互连。通信网络的示例包括局域网(local area network,LAN)和广域网(wide areanetwork,WAN)、网络间(例如因特网)、以及对等网络(例如,自组织对等网络)。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户机和服务器的关系凭借在各个计算机上运行的并且彼此之间具有客户端-服务器关系的计算机程序而发生。在一些实施方式中,服务器将数据(例如,HTML页面)传输到客户端设备(例如,为了向与客户端设备交互的用户显示数据和从其接收用户输入)。在客户端设备生成的数据(例如,用户交互的结果)可以在服务器从客户端设备接收。
在一些说明性实施方式中,可以在智能电视模块(或连接的电视模块、混合电视模块等)上实施本文公开的特征,该智能电视模块可以包括处理电路,该处理电路被配置为将因特网连接与更传统的电视节目源(例如,经由电缆、卫星、空中或其他信号接收的)集成在一起。智能电视模块可以物理地结合到电视机中,或者可以包括单独的设备,诸如机顶盒、蓝光或其他数字媒体播放器、游戏控制台、酒店电视系统和其他伴随设备。智能电视模块可以被配置为允许观看者搜索和找到在网络上、在本地有线电视频道上、在卫星电视频道上或存储在本地硬盘驱动器上的视频、电影、照片和其他内容。机顶盒(set-top box,STB)或机顶盒单元(set-top unit,STU)可以包括信息家电设备,该信息家电设备可以包含调谐器并连接到电视机和外部信号源,将信号转换成内容,然后显示在电视屏幕或其他显示设备上。智能电视模块可以被配置为提供主屏幕或顶层屏幕,该主屏幕或顶层屏幕包括用于多个不同应用的图标,诸如网络浏览器和多个流媒体服务(例如,Netflix,Vudu,Hulu,Disney+等)、连接的有线或卫星媒体源、其他网络“频道”等。智能电视模块还可以被配置为向用户提供电子节目指南。可在移动计算设备上操作智能电视模块的伴随应用,以向用户提供关于可用节目的附加信息,允许用户控制智能电视模块等。在替代实施方式中,可以在膝上型计算机或其他个人计算机、智能手机、其他移动电话、手持计算机、智能手表、平板PC、或其他计算设备上实施这些特征。
虽然本说明书包含许多具体的实施细节,但这些细节不应被解释为对任何发明或可能被请求保护的范围的限制,而应被解释为对特定于具体发明的具体实施方式的特征的描述。本说明书中在单独的实施方式的上下文中描述的某些特征也可以在单个实施方式中组合执行。相反,在单个实施方式的上下文中描述的各种特征还能够在多个实施方式中分开地执行或者在任何合适的子组合中执行。此外,虽然特征可能在上面被描述为出现在某些组合中并且甚至一开始就被要求按这样进行保护,但是在一些情况下来自要求保护的组合中的一个或多个特征可以从该组合中被删除,并且要求保护的组合可以指向子组合或者子组合的变型。此外,关于特定标题描述的特征可以关于和/或结合在其他标题下描述的说明性实施方式来利用;提供的标题仅出于可读性的目的而被包括,并且不应被解释为限制关于这些标题提供的任何特征。
类似地,虽然在附图中以特定顺序描述了操作,但是这不应该被理解为要求以所示的特定顺序或顺序执行这些操作,或者要求执行所有示出的操作,以实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。此外,上述实施方式中的各种系统组件的分离不应该被理解为在所有实施方式中都需要这种分离,并且应该理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装到在有形介质上包含的多个软件产品中。
因此,已经描述了主题的特定实施方式。其他实施方式在以下权利要求的范围内。在一些情况下,权利要求中列举的动作可以以不同的顺序执行,并且仍然获得期望的结果。另外,附图中描述的过程不一定需要所示的特定顺序或依次的顺序来实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。

Claims (20)

1.一种用于训练机器学习架构的方法,所述方法包括:
由一个或多个处理电路接收数据集;
由所述一个或多个处理电路确定与多个实体相关联的、所述数据集的第一部分;
由所述一个或多个处理电路利用所述数据集的第一部分来训练实体模型,其中所述实体模型被训练以识别随后接收的数据中的一个或多个模式;
由所述一个或多个处理电路确定与所述多个实体的第一实体子集相关联的、所述数据集的第二部分;
由所述一个或多个处理电路确定第二实体子集,其中所述第二实体子集不包括第一实体子集中的任何实体;
由所述一个或多个处理电路冻结与所述第二实体子集相关联的一个或多个参数,使得所述一个或多个参数在所述实体模型的后续训练期间保持固定,并且使得所训练的实体模型的一个或多个非冻结参数不与所述第二实体子集相关联;和
由所述一个或多个处理电路利用所述数据集的第二部分来训练所述实体模型。
2.根据权利要求1所述的方法,还包括:
由所述一个或多个处理电路确定与多个用户相关联的、所述数据集的第三部分,其中所述多个用户包括用户标识符集和多个用户信息;和
由所述一个或多个处理电路利用所述数据集的第三部分训练用户模型,其中所述用户模型被训练以识别随后接收的数据中的一个或多个模式。
3.根据权利要求2所述的方法,还包括:
由所述一个或多个处理电路接收输入数据集;
由所述一个或多个处理电路将所述输入数据集输入到所述用户模型和所述实体模型中;和
由所述一个或多个处理电路基于训练的用户模型和训练的实体模型生成输出预测,其中所述输出预测特定于所述第一实体子集,并且其中所述输出预测是准确度测量,所述准确度测量包括值。
4.根据权利要求3所述的方法,其中,生成所述输出预测还基于利用由所述用户模型生成的用户嵌入向量和由所述实体模型生成的实体嵌入向量来生成。
5.根据权利要求2所述的方法,其中,训练所述用户模型和所述实体模型中的每一个还包括配置至少一个神经网络。
6.根据权利要求1所述的方法,还包括:
由所述一个或多个处理电路确定与所述多个实体的第三实体子集相关联的、所述数据集的第四部分,其中所述第三实体子集不包括所述第一实体子集或所述第二实体子集中的任何实体;和
由所述一个或多个处理电路利用所述数据集的第四部分训练第二实体模型,所述第二实体模型基于利用所述数据集的第一部分训练和冻结的实体模型。
7.根据权利要求6所述的方法,其中,在训练所述第二实体模型中利用的所述数据集的第四部分不包含来自在训练所述实体模型中利用的所述数据集的第二部分的任何数据。
8.根据权利要求1所述的方法,其中,所述数据集的第一部分不包含来自所述数据集的第二部分的任何数据,使得所述多个实体的每个子集包含特定数据集。
9.根据权利要求1所述的方法,还包括:
由所述一个或多个处理电路配置与用户模型相关联的第一神经网络;和
由所述一个或多个处理电路配置与所述实体模型相关联的第二神经网络。
10.根据权利要求1所述的方法,其中,用于训练机器学习架构的方法利用两阶段技术,第一阶段与利用所述数据集的第一部分训练所述实体模型相关联,并且第二阶段与利用所述数据集的第二部分训练所述实体模型相关联。
11.一种系统,包括:
至少一个处理电路,被配置为:
接收数据集;
确定与多个实体相关联的、所述数据集的第一部分;
利用所述数据集的第一部分训练实体模型,其中所述实体模型被训练以识别随后接收的数据中的一个或多个模式;
确定与多个实体的第一实体子集相关联的、所述数据集的第二部分;
确定第二实体子集,其中所述第二实体子集不包括所述第一实体子集中的任何实体;
冻结与所述第二实体子集相关联的一个或多个参数,使得所述一个或多个参数在所述实体模型的后续训练期间保持固定,并且使得所训练的实体模型的一个或多个非冻结参数不与所述第二实体子集相关联;和
利用所述数据集的第二部分训练所述实体模型。
12.根据权利要求11所述的系统,其中,所述至少一个处理电路还被配置为:
确定与多个用户相关联的、所述数据集的第三部分,其中所述多个用户包括用户标识符集和多个用户信息;和
利用所述数据集的第三部分训练用户模型,其中所述用户模型被训练以识别随后接收的数据中的一个或多个模式。
13.根据权利要求12所述的系统,其中,所述至少一个处理电路还被配置为:
接收输入数据集;
将所述输入数据集输入到所述用户模型和所述实体模型中;和
基于训练的用户模型和训练的实体模型生成输出预测,其中所述输出预测特定于所述第一实体子集,并且其中所述输出预测是准确度测量,所述准确度测量包括值。
14.根据权利要求11所述的系统,其中,所述至少一个处理电路还被配置为:
确定与所述多个实体的第三实体子集相关联的、所述数据集的第四部分,其中所述第三实体子集不包括所述第一实体子集或所述第二实体子集中的任何实体;和
利用所述数据集的第四部分训练第二实体模型,所述第二实体模型基于利用所述数据集的第一部分训练和冻结的实体模型。
15.根据权利要求14所述的系统,其中,所述至少一个处理电路还被配置为:
确定与所述多个实体的第四实体子集相关联的、所述数据集的第五部分,其中所述第四实体子集不包括所述第一实体子集、所述第二实体子集或所述第三实体子集中的任何实体;和
利用所述数据集的第五部分训练第三实体模型,所述第三实体模型基于利用所述数据集的第一部分训练和冻结的实体模型。
16.根据权利要求11所述的系统,其中,所述数据集的第一部分不包含来自所述数据集的第二部分的任何数据,使得所述多个实体的每个子集包含特定数据集。
17.一个或多个计算机可读存储介质,其上存储有指令,当由至少一个处理电路执行时,所述指令使得所述至少一个处理电路执行操作,所述操作包括:
接收数据集;
确定与多个实体相关联的、所述数据集的第一部分;
利用所述数据集的第一部分训练实体模型,其中所述实体模型被训练以识别随后接收的数据中的一个或多个模式;
确定与所述多个实体的第一实体子集相关联的、所述数据集的第二部分;
确定第二实体子集,其中所述第二实体子集不包括所述第一实体子集中的任何实体;
冻结与所述第二实体子集相关联的一个或多个参数,使得所述一个或多个参数在所述实体模型的后续训练期间保持固定,并且使得训练的实体模型的一个或多个非冻结参数不与所述第二实体子集相关联;和
利用所述数据集的第二部分训练所述实体模型。
18.根据权利要求17所述的一个或多个计算机可读存储介质,所述操作还包括:
确定与多个用户相关联的、所述数据集的第三部分,其中所述多个用户包括用户标识符集和多个用户信息;和
利用所述数据集的第三部分训练用户模型,其中所述用户模型被训练以识别随后接收的数据中的一个或多个模式。
19.根据权利要求18所述的一个或多个计算机可读存储介质,所述操作还包括:
接收输入数据集;
将所述输入数据集输入到所述用户模型和所述实体模型中;和
基于训练的用户模型和训练的实体模型生成输出预测,其中所述输出预测特定于所述第一实体子集,并且其中所述输出预测是准确度测量,所述准确度测量包括值。
20.根据权利要求17所述的一个或多个计算机可读存储介质,所述操作还包括:
配置与用户模型相关联的第一神经网络;和
配置与所述实体模型相关联的第二神经网络。
CN201980017210.2A 2019-11-27 2019-11-27 利用封闭数据的个性化数据模型 Pending CN113179659A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/063604 WO2021107948A1 (en) 2019-11-27 2019-11-27 Personalized data model utilizing closed data

Publications (1)

Publication Number Publication Date
CN113179659A true CN113179659A (zh) 2021-07-27

Family

ID=69147759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980017210.2A Pending CN113179659A (zh) 2019-11-27 2019-11-27 利用封闭数据的个性化数据模型

Country Status (6)

Country Link
US (1) US20210397892A1 (zh)
EP (1) EP3847588A1 (zh)
JP (1) JP2022514801A (zh)
KR (1) KR102379653B1 (zh)
CN (1) CN113179659A (zh)
WO (1) WO2021107948A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023112169A1 (ja) * 2021-12-14 2023-06-22 日本電信電話株式会社 学習方法、推定方法、学習装置、推定装置、学習プログラム及び推定プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230036964A1 (en) * 2021-07-14 2023-02-02 Rakuten Group, Inc. Reducing sample selection bias in a machine learning-based recommender system
CN117859143A (zh) * 2022-08-09 2024-04-09 谷歌有限责任公司 模型编排器

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11386202B2 (en) * 2012-11-08 2022-07-12 Proofpoint, Inc. Apparatus and method for social account access control
US9489373B2 (en) * 2013-07-12 2016-11-08 Microsoft Technology Licensing, Llc Interactive segment extraction in computer-human interactive learning
US10078664B2 (en) * 2014-12-05 2018-09-18 General Electric Company Searching for and finding data across industrial time series data
KR101864412B1 (ko) * 2017-12-28 2018-06-04 (주)휴톰 학습용 데이터 관리방법, 장치 및 프로그램
US11164108B2 (en) * 2018-04-20 2021-11-02 International Business Machines Corporation Transfer learning without local data export in multi-node machine learning
US11514333B2 (en) * 2018-04-30 2022-11-29 Meta Platforms, Inc. Combining machine-learning and social data to generate personalized recommendations
US10867210B2 (en) * 2018-12-21 2020-12-15 Waymo Llc Neural networks for coarse- and fine-object classifications
US11816562B2 (en) * 2019-04-04 2023-11-14 Adobe Inc. Digital experience enhancement using an ensemble deep learning model
US11687848B2 (en) * 2019-04-16 2023-06-27 Accenture Global Solutions Limited Identifying correlated roles using a system driven by a neural network
KR20190087351A (ko) * 2019-07-05 2019-07-24 엘지전자 주식회사 머신 러닝 시스템, 방법 및 장치
US11468786B2 (en) * 2019-10-16 2022-10-11 Adobe Inc. Generating tool-based smart-tutorials
US20220301353A1 (en) * 2021-03-22 2022-09-22 Google Llc Dynamic Animation of Human Motion Using Wearable Sensors and Machine Learning

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023112169A1 (ja) * 2021-12-14 2023-06-22 日本電信電話株式会社 学習方法、推定方法、学習装置、推定装置、学習プログラム及び推定プログラム

Also Published As

Publication number Publication date
US20210397892A1 (en) 2021-12-23
KR102379653B1 (ko) 2022-03-28
WO2021107948A1 (en) 2021-06-03
JP2022514801A (ja) 2022-02-16
KR20210068319A (ko) 2021-06-09
EP3847588A1 (en) 2021-07-14

Similar Documents

Publication Publication Date Title
US11500880B2 (en) Adaptive recommendations
US20200267229A1 (en) Trend Detection in a Messaging Platform
US9858308B2 (en) Real-time content recommendation system
US20180068023A1 (en) Similarity Search Using Polysemous Codes
US20190392258A1 (en) Method and apparatus for generating information
US20190065594A1 (en) Similarity Search Using Progressive Inner Products and Bounds
US10460128B2 (en) Collection flow for confidential data
EP3472715A1 (en) Predicting psychometric profiles from behavioral data using machine-learning while maintaining user anonymity
US9269049B2 (en) Methods, apparatus, and systems for using a reduced attribute vector of panel data to determine an attribute of a user
US20140289171A1 (en) Automatic Event Categorization for Event Ticket Network Systems
KR102379653B1 (ko) 폐쇄 데이터를 이용하는 개인화된 데이터 모델
US20190102397A1 (en) Methods and systems for client side search ranking improvements
US11120086B2 (en) Toponym disambiguation
US10915586B2 (en) Search engine for identifying analogies
US10706056B1 (en) Audit log report generator
EP3293696A1 (en) Similarity search using polysemous codes
CN114175018A (zh) 新词分类技术
US10430816B1 (en) Strategy for collection flow and seeding across cohorts
US20170364397A1 (en) Method and system for managing and linking software applications
US20210312497A1 (en) Analyzing randomized geo experiments using trimmed match
US11968236B2 (en) Event-level data privacy for streaming post analytics data
JP7223164B2 (ja) データインテグリティの最適化
US20240144079A1 (en) Systems and methods for digital image analysis
US20240046012A1 (en) Systems and methods for advanced synthetic data training and generation
Huang et al. Variable selection in classification model via quadratic programming

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