CN117350399A - 用于管理机器学习模型的计算机实现的方法和计算设备 - Google Patents

用于管理机器学习模型的计算机实现的方法和计算设备 Download PDF

Info

Publication number
CN117350399A
CN117350399A CN202311210976.7A CN202311210976A CN117350399A CN 117350399 A CN117350399 A CN 117350399A CN 202311210976 A CN202311210976 A CN 202311210976A CN 117350399 A CN117350399 A CN 117350399A
Authority
CN
China
Prior art keywords
computing device
machine learning
user computing
learning models
model
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
CN202311210976.7A
Other languages
English (en)
Inventor
K·博纳维茨
D·拉梅奇
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 CN117350399A publication Critical patent/CN117350399A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06N3/098Distributed learning, e.g. federated learning
    • 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/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/02Computing arrangements based on specific mathematical models using fuzzy logic
    • G06N7/06Simulation on general purpose computers
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Automation & Control Theory (AREA)
  • Pure & Applied Mathematics (AREA)
  • Biophysics (AREA)
  • Fuzzy Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开提供了用于基于本地记录的数据来管理和/或评估机器学习模型的系统和方法。在一个示例中,用户计算设备可以(例如,从服务器计算设备)获得机器学习模型,并且可以针对机器学习模型评估至少一个性能指标。具体地,可以相对于在用户计算设备处本地存储的数据来评估针对机器学习模型的至少一个性能指标。用户计算设备和/或服务器计算设备可以至少部分地基于至少一个性能指标来确定是否激活用户计算设备上的机器学习模型。在另一示例中,用户计算设备可以参照本地存储的数据评估多个机器学习模型。可以基于评估的性能指标来选择模型中的至少一个。

Description

用于管理机器学习模型的计算机实现的方法和计算设备
本申请是申请日为2017年09月25日,申请号为201780071956.2的发明专利申请的分案申请。
技术领域
本公开一般涉及用户数据和机器学习。更具体地,本公开涉及基于本地记录的数据的机器学习模型的管理和/或评估。
背景技术
诸如,例如智能电话、平板电脑和/或其他移动计算设备的用户计算设备继续变得越来越:(a)无处不在;(b)计算能力强;(c)被赋予重要的本地存储装置;(d)知晓关于用户、他们的行为和他们的环境的潜在敏感数据。另外,移动设备上传递的应用也越来越受数据驱动。例如,在许多场景中,从用户计算设备收集的数据用于训练和评估新的机器学习模型、个性化特征和计算指标以评定产品质量。
传统上,这些任务中的很多任务(例如,通过服务器计算设备)集中地执行。具体地,在一些场景中,数据可以从用户计算设备上传到服务器计算设备。服务器计算设备可以在集中收集的数据上训练各种机器学习模型,然后评估训练的模型。训练的模型可以由服务器计算设备使用,或者可以下载到用户计算设备用于在用户计算设备处使用。另外,在一些场景中,可以从服务器计算设备传递可个性化的特征。同样地,服务器计算设备可以在集中记录的数据上计算跨用户的指标以用于质量评定。
然而,通常不确切地知道数据将来将如何有用,特别是哪些数据将是有用的。因此,在没有所记录的数据的足够历史的情况下,某些机器学习模型或其他数据驱动的应用可能无法实现。换句话说,如果没有记录训练模型、将特征个性化或计算感兴趣的指标所需的某组或某类数据,那么即使在确定某种数据是有用的并且应该被记录之后,在生成足够的数据以实现这样的训练、个性化或计算之前,仍有显著的等待时间。
对该问题的一种可能的响应是集中记录任何和所有数据。然而,这种响应有其本身的缺点。具体地,用户使用他们的移动设备进行各种方式的隐私敏感活动。移动设备也有越来越丰富的传感器,这可以导致允许设备访问来自其周围的进一步的隐私敏感数据流。因此,隐私考虑建议应该谨慎地进行记录——而不是大规模的——以最小化对用户的隐私风险。
除了隐私之外,这些设备可以产生的数据流正变得越来越高带宽。因此,在很多情况下,将任何和所有用户数据流式传输到集中的数据库是不可行的,即使这样做是可取的。
发明内容
本公开的实施例的方面和优点将部分地在以下描述中阐述,或者可以从描述中习得,或者可以通过实施例的实践而习得。
本公开的一个示例方面涉及一种用于管理机器学习模型的计算机实现的方法,该方法包括:由用户计算设备从服务器计算设备获得多个机器学习模型,其中用户计算设备是客户端计算设备;由用户计算设备针对多个机器学习模型中的每一个评估至少一个性能指标,其中,针对每个机器学习模型的至少一个性能指标是相对于在用户计算设备处本地存储和记录的数据评估的;由用户计算设备向服务器计算设备报告针对多个机器学习模型评估的性能指标中的一个或多个;由用户计算设备至少部分地基于针对多个机器学习模型评估的性能指标,确定从多个机器学习模型中选择第一机器学习模型;由用户计算设备使用选择的第一机器学习模型来获得一个或多个预测;以及输出一个或多个预测;其中,由用户计算设备针对多个机器学习模型中的每一个评估至少一个性能指标包括:由用户计算设备使用在用户计算设备处先前记录并且未被上传用于存储在中央服务器的历史数据来针对多个机器学习模型中的每一个评估至少一个性能指标。
由用户计算设备使用在用户计算设备处先前记录并且未被上传用于存储在中央服务的历史数据来针对多个机器学习模型中的每一个评估至少一个性能指标包括:由用户计算设备将历史数据的至少第一部分输入到多个机器学习模型中的每一个中;响应于历史数据的第一部分的输入,由用户计算设备接收来自多个机器学习模型中的每一个的至少一个预测;以及由用户计算设备将来自每个机器学习模型的至少一个预测与历史数据的第二部分进行比较,以分别确定针对多个机器学习模型中的每一个的至少一个性能指标。
由用户计算设备针对多个机器学习模型中的每一个评估至少一个性能指标包括:在由用户计算设备获得多个机器学习模型之后,由用户计算设备使用在用户计算设备处新记录的新数据来针对多个机器学习模型中的每一个评估至少一个性能指标。
由用户计算设备使用在用户计算设备处新记录的新数据来针对多个机器学习模型中的每一个评估至少一个性能指标包括:由用户计算设备将新数据的至少第一部分输入到多个机器学习模型中的每一个中;响应于新数据的第一部分的输入,由用户计算设备接收来自多个机器学习模型中的每一个的至少一个预测;以及由用户计算设备将来自每个机器学习模型的至少一个预测与新数据的第二部分进行比较,以分别确定针对多个机器学习模型中的每一个的至少一个性能指标。
由用户计算设备确定从多个机器学习模型中选择第一机器学习模型包括:由用户计算设备至少部分地基于分别针对多个机器学习模型评估的性能指标,从多个机器学习模型中选择第一机器学习模型,或者由用户计算设备向服务器计算设备提供分别针对多个机器学习模型评估的性能指标;以及由用户计算设备从服务器计算设备接收对第一机器学习模型的选择。
由用户计算设备针对多个机器学习模型中的每一个评估至少一个性能指标包括:由用户计算设备针对多个机器学习模型中的每一个评估正确预测的平均概率。
由用户计算设备获得多个机器学习模型包括:由用户计算设备获得已经分别在不同类型的训练数据上训练的多个机器学习模型。
计算机实现的方法还包括:由服务器计算设备将从用户计算设备接收的一个或多个性能指标与由其他计算设备报告的其他性能指标聚合,以评定针对多个机器学习模型中的每一个的全局性能。
本公开的另一示例方面涉及一种计算设备。计算设备包括一个或多个处理器和一个或多个非暂时性计算机可读介质,其共同存储指令,当由一个或多个处理器执行所述指令时,使计算设备执行操作:从服务器计算设备获得机器学习模型;针对机器学习模型评估至少一个性能指标,其中,针对机器学习模型的至少一个性能指标是相对于在计算设备处本地存储和记录的数据评估的;向服务器计算设备报告针对多个机器学习模型评估的性能指标中的一个或多个;至少部分地基于针对机器学习模型评估的至少一个性能指标,确定是否激活机器学习模型;当确定应激活机器学习模型时,使用机器学习模型来获得一个或多个预测;以及输出一个或多个预测,其中,所述计算设备使用在接收机器学习模型之前在用户计算设备处先前记录并且未被上传用于存储在中央服务器的历史数据,评估针对机器学习模型的至少一个性能指标。
所述计算设备使用在接收机器学习模型之后在用户计算设备处新记录的新数据,针对所述多个机器学习模型中的每一个评估至少一个性能指标。
为了至少部分地基于至少一个性能指标来确定是否激活机器学习模型,所述计算设备:将至少一个性能指标与至少一个阈值进行比较;以及确定至少一个性能指标是否比至少一个阈值有利,其中,当至少一个性能指标比至少一个阈值有利时,确定应激活所述机器学习模型,或者所述计算设备:将针对机器学习模型评估的至少一个性能指标提供给服务器计算设备;以及从服务器计算设备接收是否激活机器学习模型的确定。
所述至少一个性能指标包括正确预测的平均概率。
本公开的另一示例方面涉及一种或多种非暂时性计算机可读介质,其共同存储指令,当由计算系统的一个或多个处理器执行所述指令时,使计算系统执行前述管理机器学习模型的计算机实现的方法的操作。
本公开的其他方面涉及各种系统、装置、非暂时性计算机可读介质、用户界面和电子设备。
参考以下描述和所附权利要求,将更好地理解本公开的各种实施例的这些和其他特征、方面和优点。包含在本说明书中并构成其一部分的附图示出了本公开的示例实施例,并且与说明书一起用于解释相关原理。
附图说明
在参考了附图的说明书中阐述了针对本领域普通技术人员的实施例的详细讨论,在附图中:
图1A描绘了根据本公开的示例实施例的基于本地记录的数据执行模型管理和评估的示例计算系统的框图。
图1B描绘了根据本公开的示例实施例的基于本地记录的数据执行模型管理和评估的示例计算设备的框图。
图1C描绘了根据本公开的示例实施例的基于本地记录的数据执行模型管理和评估的示例计算设备的框图。
图2描绘了根据本公开的示例实施例的用于管理机器学习模型的示例方法的流程图。
图3描绘了根据本公开的示例实施例的用于评估机器学习模型的示例方法的流程图。
图4描绘了根据本公开的示例实施例的管理多个机器学习模型的示例方法的流程图。
图5描绘了根据本公开的示例实施例的管理多个机器学习模型的示例方法的流程图。
具体实施方式
通常,本公开涉及基于本地记录的数据来管理和/或评估机器学习模型。具体地,与传统的集中式数据收集相比,本公开的系统和方法可以利用已经在用户计算设备处本地记录的大量数据的可用性。在一个示例中,用户计算设备可以(例如,从服务器计算设备)获得机器学习模型并且可以评估针器学习模型的至少一个性能指标。具体地,可以相对于在用户计算设备处本地存储的数据来评估针对机器学习模型的至少一个性能指标。用户计算设备和/或服务器计算设备可以至少部分地基于至少一个性能指标来确定是否激活用户计算设备上的机器学习模型。在另一示例中,用户计算设备可以获得多个机器学习模型,并且可以相对于在用户计算设备处本地存储的数据来评估针对多个机器学习模型中的每一个的至少一个性能指标。用户计算设备和/或服务器计算设备可以至少部分地基于性能指标来选择机器学习模型中的至少一个用于在用户计算设备处使用。例如,可以选择具有(一个或多个)最佳性能指标的模型用于在用户计算设备处激活和使用。
因此,本公开提供了用于模型管理和评估的改进技术,其利用了存在的本地记录的用户数据。例如,可以在激活之前评估一个或多个模型,以确定如果将模型作为用户可见特征启用,每个这种模型将带来多少价值。作为这种评估过程的结果,本公开的系统可以做出关于更加明智和用户特定的机器学习模型的使用和激活的决定。另外,由于用户数据本地存储在用户计算设备处,而不是上传用于存储在中央服务器处,因此增强了用户隐私,并且减少了需要上传的数据量。如此,可以降低用于数据的带宽和功率要求。
更具体地,本公开的各方面基于以下认识:传统的“集中记录”与“不记录”的冲突是错误的二分法。相反,根据本公开的各方面,可以将用户数据本地记录到设备上存储装置(on-device storage)。以这种方式,数据与用户共处,从而增加了用户隐私。
具体地,根据本公开的一个方面,在用户计算设备(例如,诸如智能电话的移动计算设备)上实现的应用和/或操作系统可以提供向其写入记录条目(log entry)的本地的设备上数据库(on-device database)。在一些实现中,(一个或多个)数据库可以是或可以不是用户可检查的。数据库中的记录条目可能会或可能不会过期(例如,由于生存时间约束、存储空间约束或其他约束)。此外,记录条目可以是或可以不是用户可删节的(expungable)。到(一个或多个)数据库的记录在逻辑上可以类似于到中央服务器存储的数据库的记录,但是记录可以放置在不离开设备的安全的本地存储装置中。
根据本公开的一个方面,当期望训练模型、将特征个性化或计算指标时,可以将计算发送到数据,而不是相反。根据这种方法,仅集中收集执行特定动作所需的最少量信息。在一些情况下,使用本地记录的数据来提供个性化特征和/或执行模型训练和/或管理可能导致根本不集中收集用户数据。具体地,在一些实现中,用户计算设备的应用库和/或操作系统可以提供支持以用于针对本地数据库来运行分析,从而不需要集中上传数据以用于分析或使用。
作为一个示例,在一些实现中,可以由用户计算设备基于本地记录的数据来训练新的机器学习模型。具体地,可以(例如,从服务器计算设备)向用户计算设备提供未训练的模型结构和训练算法。可以指导用户计算设备使用本地数据库(或其某个子集)中的条目作为用于训练算法的训练数据。此后,可以立即使用新训练的机器智能模型来传递预测,这可以在任何数量的场景中是有用的。替代地,如下面将进一步讨论的,可以在激活之前评估训练模型。
在一些实现中,机器学习模型可以经部分地或完全地预训练,传递给用户计算设备。例如,服务器计算设备可以在将模型发送到用户计算设备之前在集中收集的数据上部分地或完全地训练该模型。在一些这种实现中,用户计算设备可以进一步参照本地记录数据库训练模型。在一些情况下,可以将此附加的本地训练视为将模型个性化。
在一些实现中,关于训练模型的参数的一些信息可以由用户计算设备传递回服务器计算设备。例如,服务器计算设备可以使用返回的参数信息来构建跨群体模型(cross-population model)。
根据本公开的另一方面,在一些实现中,用户计算设备可以相对于在用户计算设备处本地存储的数据评估针对机器学习模型的至少一个性能指标。例如,性能指标可用于确定如果新模型作为用户可见特征激活,将带来多少价值。一个示例性能指标是正确预测的平均概率。另一示例性能指标是模型的期望效用(expected utility)。例如,期望效用可以包括用户交互的数量的节省/消除。关于预测性能的统计可以在本地记录以供将来分析或集中记录。
作为一个示例,用户计算设备可以基于机器学习模型预测未来用户行为的能力来评估机器学习模型。具体地,用户计算设备可以使用在接收和/或训练机器学习模型之后新记录的新本地数据来评估机器学习模型的至少一个性能指标。例如,可采用该模型来基于新接收的数据进行预测。在一些实现中,预测不用于提供用户特征或以其他方式影响设备或应用的性能,而是与新的真实数据(ground truth data)进行比较以评定预测的正确性。
替代地或另外地,用户计算设备可以参照先前记录的本地数据评估机器学习模型。具体地,用户计算设备可以使用在用户计算设备处先前记录的历史数据来评估至少一个性能指标。因此,可以参照先前收集的历史数据和/或参照新收集的数据评估机器学习模型。
根据本公开的另一方面,用户计算设备和/或服务器计算设备可以至少部分地基于至少一个性能指标来确定是否激活机器学习模型。例如,如果(一个或多个)性能指标比一个或多个性能阈值有利,则可以激活模型用于在用户计算设备处使用。在各种实现中,用户计算设备可以确定是否激活模型,或者用户计算设备可以向服务器计算设备提供(一个或多个)性能指标,并且服务器计算设备可以确定是否激活模型。
根据本公开的另一方面,在一些实现中,用户计算设备可以接收和/或训练多个机器学习模型,而不是接收和/或训练单个机器学习模型。例如,服务器计算设备可以已经在不同类型的训练数据上训练了多个机器学习模型。
用户计算设备可以评估针对多个机器学习模型中的每一个的至少一个性能指标。具体地,用户计算设备可以相对于在用户计算设备处本地存储的数据针对每个机器学习模型评估至少一个性能指标。例如,如上所述,本地存储的数据可以是新接收的数据,或者可以是先前记录的数据。
用户计算设备和/或服务器计算设备可以至少部分地基于性能指标来选择机器学习模型中的一个。例如,可以选择具有(一个或多个)最佳性能指标的模型用于在用户计算设备处激活和使用。如所指出的,用户计算设备可以执行选择,或者用户计算设备可以向服务器计算设备提供性能指标,并且服务器计算设备可以执行选择。
为了提供特定示例,服务器计算设备可以已经训练了三个不同的机器学习模型来(例如,基于先前键入的串)预测将被键入到文本消息收发应用中的下一个单词。然而,机器学习模型可以已经在不同类型的训练数据上进行训练。例如,第一模型可以已经在公开可用的文献(例如书籍)上进行训练;第二模型可以已经在公开可用的社交媒体帖子上进行训练;以及第三模型可以已经在公开可用的电子邮件会话上进行训练。服务器计算设备可以将三个模型提供给用户计算设备。
在激活任何模型之前,用户计算设备可以相对于本地存储的数据针对三个模型中的每一个评估至少一个性能指标。例如,本地存储的数据可以包括用户输入到文本消息收发应用中的文本的先前记录的实例和/或用户输入到文本消息收发应用中的文本的新记录的实例。作为示例,用户计算设备可以针对每个模型确定当给定文本输入的记录的实例中的一个的一部分时,正确预测下一个单词的平均概率。
用户计算设备和/或服务器计算设备可以基于评估的性能指标来选择三个模型中的一个。作为示例,如果发现在公开可用的电子邮件会话上训练的模型具有正确预测下一个单词的最高平均概率,则可以在用户计算设备处激活和使用这种模型。例如,选择的模型可用于预测可在用户计算设备上的文本消息收发应用的自动完成特征内浮出(surface)的下一个单词。
在进一步的实现中,可以在激活之前基于本地存储的数据来个性化选择的模型。在更进一步的实现中,如果两个或更多个模型执行相对于一个或多个阈值有利,则可以聚合该两个或更多个模型以形成单个模型,然后激活(或个性化并激活)该单个模型。作为示例,可以根据加权平均来聚合相对于一个或多个阈值有利执行的两个或更多个模型,其中分别应用于两个或更多个模型中的每一个的权重是针对这种模型评估的相应性能指标的函数(例如,更有利地执行的模型可以接收增加的权重)。
根据本公开的又一方面,还可以参照本地记录的数据计算基于典型聚合查询的指标。可以在用户计算设备上计算每个用户对总体指标的贡献。在一些情况下,这些每用户聚合(per-user aggregate)足够小并且被去隐私化,使得它们可以被传递到中央服务器用于进一步的跨用户聚合而不暴露敏感数据。在其他情况下,为了增强用户隐私,差异隐私可用于在将每用户聚合传递到中央服务器用于跨用户聚合之前将噪声引入到每用户聚合中。
在一些实现中,在将得到的跨用户聚合传递到中央服务器之前,可以使用加密技术安全地跨多个用户组合每用户聚合。在其他情况下,为了进一步增强用户隐私,在将结果传递到中央服务器之前,差异隐私可用于在加密聚合过程期间向加密计算的跨用户聚合添加噪声。
根据本公开的另一方面,可以通过不将某些形式的数据的完整流保持在用户计算设备上来进一步增强用户隐私。例如,在一些实现中,本地记录的数据的摘要而不是用户数据本身可以存储在用户计算设备上。作为示例,摘要可以是标准聚合度量,诸如最大值、最小值、平均值、直方图计数等。作为另一示例,摘要可以是从流传输数据训练的机器学习模型。
作为又一个示例,可以通过使用泛私(pan-private)技术以隐私保护方式存储和更新摘要本身。例如,可以使用泛私技术将噪声注入到流传输算法中以实现对该算法的内部状态以及其输出的差异隐私保证。
根据本公开的又一方面,在一些实现中,用户计算设备的本地数据库或本地数据库的摘要版本可以以加密形式存储。在一些实现中,本地数据库或本地数据库的摘要版本仅可以经由特权软件(例如,以特殊许可操作的操作系统中的任务)或特权硬件(例如,可信计算硬件,诸如可信平台模块)直接访问。
现在参考附图,将更详细地讨论本公开的示例实施例。
示例设备和系统
图1A描绘了根据本公开的示例实施例的基于本地记录的数据执行模型管理和评估的示例计算系统100的框图。系统100包括通过网络180通信地耦合的用户计算设备102、服务器计算设备130和训练计算系统150。
用户计算设备102可以是任何类型的计算设备,诸如,例如,个人计算设备(例如,膝上型或台式)、移动计算设备(例如,智能手机或平板电脑)、游戏控制台或控制器、可穿戴计算设备、嵌入式计算设备、个人助理计算设备或任何其他类型的计算设备。
用户计算设备102包括一个或多个处理器112和存储器114。一个或多个处理器112可以是任何合适的处理设备(例如,处理器核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是一个处理器或可操作地连接的多个处理器。存储器114可以包括一个或多个非暂时性计算机可读存储介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等,以及其组合。存储器114可以存储数据116和由处理器112执行的指令118,以使用户计算设备102执行操作。
此外,根据本公开的方面,用户计算设备102的存储器114可以包括本地记录的数据119。具体地,在用户计算设备102上实现的应用和/或操作系统可以在存储器114中提供向其写入记录条目的本地的设备上数据库。可以使用一个数据库,也可以使用多个数据库。在一些实现中,(一个或多个)数据库可以是或可以不是用户可检查的。数据库中的记录条目可能会或可能不会过期(例如,由于生存时间约束、存储空间约束或其他约束)。此外,记录条目可以是或可以不是用户可删节的。到(一个或多个)数据库的记录在逻辑上可以类似于到中央服务器存储的数据库的记录,但是记录可以放置在不离开设备的安全本地存储装置中。
根据本公开的另一方面,用户计算设备102可以存储或包括一个或多个机器学习模型120。机器学习模型120可以是或可以另外包括一个或多个神经网络(例如,深度神经网络);马尔可夫模型(例如,隐马尔可夫模型);分类器;回归模型;支持向量机;贝叶斯网络;多层非线性模型;或其他类型的机器学习模型。神经网络(例如,深度神经网络)可以是前馈神经网络、卷积神经网络、自动编码器、递归神经网络(例如,长短期记忆神经网络、门控递归单元等)和/或各种其他类型的神经网络。
在一些实现中,一个或多个机器学习模型120可以通过网络180从服务器计算设备130接收,存储在用户计算设备存储器114中,然后由一个或多个处理器112使用或以其他方式实现。在一些实现中,用户计算设备102可以实现单个机器学习模型120的多个并行实例。
更具体地,可以实现(一个或多个)机器学习模型120以在各种情况或应用中提供预测。作为一个示例,(一个或多个)机器学习模型120可以在用户计算设备102的文本消息收发应用、用户计算设备102的电子邮件应用、应用(例如,文字处理应用)的文本合成接口或任何其他应用的上下文内采用。作为其他示例,(一个或多个)机器学习模型120可以被包括为浏览器插件,作为键盘的覆盖物或特征(例如,用户计算设备102上的虚拟键盘),或者在其他上下文中。因此,(一个或多个)机器学习模型120可以接收和分析来自各种应用或其他计算设备组件的数据,并且可以在这种数据的基础上产生预测。预测可用于各种特征。
另外地或替代地,一个或多个机器学习模型140可以包括在服务器计算设备130中或以其他方式由服务器计算设备130存储和实现,服务器计算设备130根据客户端-服务器关系与用户计算设备102通信。例如,机器学习模型140可以由服务器计算设备140实现为web服务的一部分(例如,web电子邮件服务)。因此,可以在用户计算设备102处存储和实现一个或多个模型120和/或可以在服务器计算设备130处存储和实现一个或多个模型140。
用户计算设备102还可以包括模型训练器122。模型训练器122可以使用各种训练或学习技术训练或重新训练存储在用户计算设备102处的机器学习模型120中的一个或多个,所述训练或学习技术诸如,例如,误差的后向传播(例如,随时间的截断反向传播)。具体地,模型训练器122可以使用本地记录的数据119作为训练数据来训练或重新训练机器学习模型120中的一个或多个。模型训练器122可以执行许多泛化技术(例如,权重衰减、丢失等)以改进正在训练的模型的泛化能力。
作为一个示例,在一些实现中,可以由模型训练器122基于本地记录的数据119来训练新的机器学习模型120。具体地,可以(例如,从服务器计算设备130)向用户计算设备102提供未训练的模型结构和训练算法。模型训练器122可以使用本地记录的数据119(或其某个子集)作为用于训练算法的训练数据。此后,可以立即使用新训练的机器学习模型120来传递预测,这可以在任何数量的场景中是有用的。替代地,如下面将进一步讨论的,可以在激活之前评估训练模型120。
在一些实现中,机器学习模型120可以部分地或完全地预训练地传递到用户计算设备102。例如,服务器计算设备130可以在将模型140发送到用户计算设备102之前在集中收集的数据162上(例如,通过与训练计算系统150合作)部分地或完全地训练模型140,然后它在用户计算设备102中存储为模型120。在一些这种实现中,用户计算设备102可以实现模型训练器122以参照本地记录数据库119进一步训练模型120。在一些情况下,这种附加的本地训练可被视为将模型120个性化。
在一些实现中,可以由用户计算设备102将关于训练模型的参数的一些信息传递回服务器计算设备130。例如,服务器计算设备130可以使用返回的参数信息来构建跨群体模型。
根据本公开的另一方面,用户计算设备102还可以包括模型管理器124,其执行机器学习模型120中的一个或多个的管理和/或评估。例如,模型管理器124可以基于本地记录的数据119针对每个机器学习模型120评估至少一个性能指标。例如,性能指标可以用于确定如果模型120作为用户可见特征激活,模型120将带来多少价值。一个示例性能指标是正确预测的平均概率。关于预测性能的统计可以在本地记录以供将来分析或(例如,在服务器计算设备130处)集中记录。
作为一个示例评估技术,模型管理器124可以基于机器学习模型120的预测未来用户行为的能力来评估机器学习模型120。具体地,模型管理器124可以使用在接收和/或训练机器学习模型120之后新记录的新本地数据119来评估针对机器学习模型120的至少一个性能指标。例如,可以采用模型120以基于新记录的数据119进行预测。在一些实现中,预测不用于提供用户特征或以其他方式影响设备或应用的性能,而是与新的真实数据进行比较以评定预测的正确性。
替代地或另外地,模型管理器124可以参照先前记录的本地数据119评估机器学习模型120。具体地,模型管理器124可以使用在用户计算设备102处先前记录的历史数据119来评估至少一个性能指标。因此,可以参照先前收集的历史数据和/或参照新收集的数据评估机器学习模型120。
根据本公开的另一方面,模型管理器124可以至少部分地基于至少一个性能指标来确定是否激活机器学习模型120。例如,如果(一个或多个)性能指标比一个或多个性能阈值有利,则可以激活模型120用于在用户计算设备102处使用。在其他实现中,用户计算设备102可以向服务器计算设备130提供(一个或多个)性能指标,并且位于服务器计算设备130处的模型管理器142可以确定是否激活用户计算设备102上的模型120。因此,关于特定模型120的激活的决定可以在用户计算设备102或服务器计算设备130处执行。
根据本公开的另一方面,在一些实现中,用户计算设备102可以接收和/或训练多个机器学习模型120,而不是接收和/或训练单个机器学习模型120。例如,服务器计算设备130可以已经(例如,通过与训练计算系统150合作)在不同类型的训练数据上训练了多个机器学习模型140,然后将这种模型140发送到用户计算设备102,在用户计算设备102中它们被存储为模型120。
如上所述,模型管理器124可以针对多个机器学习模型120中的每一个评估至少一个性能指标。模型管理器124和/或模型管理器142可以至少部分地基于性能指标来选择机器学习模型120中的一个。例如,可以选择具有(一个或多个)最佳性能指标的模型120用于在用户计算设备102处激活和使用。如所指出的,模型管理器124可以执行选择,或者用户计算设备102可以向服务器计算设备130提供性能指标,并且模型管理器142可以执行选择。
在进一步的实现中,可以在激活之前基于本地存储的数据119(例如,通过模型训练器122)将选择的模型120个性化。在更进一步的实现中,如果两个或更多个模型120执行相对于一个或多个阈值有利,则可以聚合两个或更多个模型120以形成单个模型120,然后激活(或个性化和激活)该单个模型120。
服务器计算设备130包括一个或多个处理器132和存储器134。一个或多个处理器132可以是任何合适的处理设备(例如,处理器核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是一个处理器或可操作地连接的多个处理器。存储器134可以包括一个或多个非暂时性计算机可读存储介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等,以及其组合。存储器134可以存储数据136和由处理器132执行的指令138,以使服务器计算设备130执行操作。
在一些实现中,服务器计算设备130包括一个或多个服务器计算设备或以其他方式由一个或多个服务器计算设备实现。在服务器计算设备130包括多个服务器计算设备的情况下,这种服务器计算设备可以根据顺序计算架构、并行计算架构或其某种组合来操作。
如上所述,服务器计算设备130可以存储或另外包括一个或多个机器学习模型140。机器学习模型140可以是或可以另外包括一个或多个神经网络(例如,深度神经网络);马尔可夫模型(例如,隐马尔可夫模型);分类器;回归模型;支持向量机;贝叶斯网络;多层非线性模型;或其他类型的机器学习模型。神经网络(例如,深度神经网络)可以是前馈神经网络、卷积神经网络、自动编码器、递归神经网络(例如,长短期记忆神经网络、门控递归单元等)和/或各种其他类型的神经网络。
服务器计算设备130可以经由与通过网络180通信地耦合的训练计算系统150的交互来训练机器学习模型140。训练计算系统150可以与服务器计算设备130分离或者可以是服务器计算设备130的一部分。
训练计算系统150包括一个或多个处理器152和存储器154。一个或多个处理器152可以是任何合适的处理设备(例如,处理器核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是一个处理器或可操作地连接的多个处理器。存储器154可以包括一个或多个非暂时性计算机可读存储介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等,以及其组合。存储器154可以存储数据156和由处理器152执行的指令158,以使训练计算系统150执行操作。在一些实现中,训练计算系统150包括一个或多个服务器计算设备或以其他方式由一个或多个服务器计算设备实现。
训练计算系统150可以包括模型训练器160,其使用各种训练或学习技术训练存储在服务器计算设备130处的机器学习模型140,所述训练或学习技术诸如,例如,误差的后向传播(例如,随时间的截断反向传播)。模型训练器160可以执行许多泛化技术(例如,权重衰减、丢失等)以改进正在训练的模型的泛化能力。具体地,模型训练器160可以基于一组训练数据162训练机器学习模型140。训练数据162可以包括集中收集的数据。
模型训练器122、模型管理器124、模型管理器142和模型训练器160中的每一个可包括用于提供所需功能的计算机逻辑。模型训练器122、模型管理器124、模型管理器142和模型训练器160中的每一个可以用控制通用处理器的硬件、固件和/或软件来实现。例如,在一些实现中,模型训练器122、模型管理器124、模型管理器142和模型训练器160中的每一个包括存储在存储设备上、加载到存储器中并由一个或多个处理器执行的程序文件。在其他实现中,模型训练器122、模型管理器124、模型管理器142和模型训练器160中的每一个包括存储在诸如RAM硬盘或光学或磁性介质的有形计算机可读存储介质中的一组或多组计算机可执行指令。
网络180可以是任何类型的通信网络,诸如局域网(例如,内联网)、广域网(例如,互联网)或其某种组合,并且可以包括任何数量的有线或无线链路。通常,通过网络180的通信可以经由任何类型的有线和/或无线连接,使用多种通信协议(例如,TCP/IP、HTTP、SMTP、FTP)、编码或格式(例如,HTML、XML))和/或保护方案(例如,VPN、安全HTTP、SSL)承载。
图1A示出了可用于实现本公开的一个示例计算系统。也可以使用其他计算系统。例如,在一些实现中,仅用户计算设备102包括模型训练器和模型管理器。例如,在一些实现中,服务器计算设备130不包括管理器142,并且系统100不包括训练计算系统150。在一些实现中,系统100仅包括用户计算设备102。
图1B描绘了根据本公开的示例实施例的基于本地记录的数据执行模型管理和评估的示例计算设备10的框图。
计算设备10包括许多应用(例如,应用1至N)。每个应用可以包含其本身的机器学习库和(一个或多个)机器学习模型。示例应用包括文本消息收发应用、电子邮件应用、虚拟键盘应用、浏览器应用、照片管理应用、音乐流传输应用、共享出行应用(rideshareapplication)或任何其他类型的应用。
每个应用1至N还包括本地应用数据。具体地,每个应用可以在存储器中提供向其写入记录条目的本地的设备上数据库或以其他方式与其通信。一个数据库可用于所有应用,或者不同的相应数据库可用于每个应用。在一些实现中,(一个或多个)数据库可以是或可以不是用户可检查的。(一个或多个)数据库中的记录条目可能会或可能不会过期(例如,由于生存时间约束、存储空间约束或其他约束)。此外,记录条目可以是或可以不是用户可删节的。到(一个或多个)数据库的记录在逻辑上可以类似于到中央服务器存储的数据库的记录,但是记录可以放置在不离开设备的安全本地存储装置中。
用户计算设备10还可以包括模型管理器12,其执行对应用中包括的机器学习模型中的一个或多个的管理和/或评估。在一些实现中,模型管理器12可以由用户计算设备10的操作系统实现。在本公开的其他实现中,每个应用1至N可以包括其本身相应的专用模型管理器,而不是用于整个设备10的单个模型管理器12。
模型管理器12可以基于相应的本地应用数据针对每个机器学习模型评估至少一个性能指标。例如,可以参照本地应用1数据评估机器学习模型1,等等。评估的性能指标可用于确定如果机器学习模型1作为应用1内的用户可见特征被激活,机器学习模型1将带来多少价值。用于评估目的的本地应用1数据可以是先前记录的数据或新记录的数据。
模型管理器12可以至少部分地基于至少一个性能指标来确定是否激活机器学习模型。例如,如果针对机器学习模型1评估的性能指标(例如,相对于本地应用1数据)比一个或多个性能阈值有利,则可以激活机器学习模型1用于在应用1内使用。
图1C描绘了根据本公开的示例实施例的基于本地记录的数据执行模型管理和评估的示例计算设备50的框图。
计算设备50包括许多应用(例如,应用1至N)。每个应用与中央智能层(centralintelligence layer)进行通信。在一些实现中,每个应用可以使用API(例如,跨所有应用的公共API)与中央智能层(以及存储在其中的模型)通信。
中央智能层包括许多机器学习模型。例如,如图1C所示,相应的机器学习模型可以提供用于每个应用,并由中央智能层管理。在其他实现中,两个或更多个应用可以共享单个机器学习模型。例如,在一些实现中,中央智能层可以为所有应用提供单个模型。
中央智能层还可以包括模型管理器52,其执行对应用中包括的机器学习模型中的一个或多个的管理和/或评估。在一些实现中,模型管理器52可以由用户计算设备50的操作系统实现。
中央智能层可以与中央设备数据层通信。中央设备数据层可以是用于计算设备50的本地记录的数据的集中存储库。如图1C所示,中央设备数据层可以与计算设备的许多其他组件通信,所述其他组件诸如,例如一个或多个传感器、上下文管理器、设备状态组件和/或附加组件。在一些实现中,中央设备数据层可以使用API(例如,私有API)与每个设备组件通信。
模型管理器52可以基于包括在中央设备数据层中的本地记录的数据来针对包括在中央智能层中的机器学习模型中的一个或多个评估至少一个性能指标。例如,可以参照包括在中央设备数据层中的本地记录的数据来评估机器学习模型1。评估的性能指标可用于确定如果机器学习模型1作为应用1内的用户可见特征被激活,机器学习模型1将带来多少价值。用于评估目的的本地记录的数据可以是先前记录的数据或新记录的数据。
模型管理器52可以至少部分地基于至少一个性能指标来确定是否激活机器学习模型。例如,如果针对机器学习模型1评估的性能指标比一个或多个性能阈值有利,则可以激活机器学习模型1以提供供应用1使用的预测。
图1B和图1C中所示的计算设备仅是示例。这些设备的各方面的组合也可用于实现本公开。
示例方法
图2-图5示出了本公开的示例方法。尽管图2-图5分别描绘了出于说明和讨论的目的以特定次序执行的步骤,但是本公开的方法不限于特别示出的次序或布置。在不脱离本公开的范围的情况下,可以以各种方式省略、重新布置、组合和/或适配图2-图5的方法的各个步骤。此外,尽管图2-图4的方法被讨论为主要由用户计算设备执行,但是这些方法可以由其他计算设备(例如,服务器计算设备)或计算设备的组合来执行。
图2描绘了根据本公开的示例实施例的用于管理机器学习模型的示例方法200的流程图。
在202处,用户计算设备获得机器学习模型。作为一个示例,在一些实现中,可以由用户计算设备基于本地记录的数据来训练新的机器学习模型。具体地,可以(例如,从服务器计算设备)向用户计算设备提供未训练的模型结构和训练算法。可以指导用户计算设备使用本地数据库(或其某个子集)中的条目作为用于训练算法的训练数据。
作为另一示例,机器学习模型可以部分地或完全地预训练地传递到用户计算设备。例如,服务器计算设备可以在将模型发送到用户计算设备之前部分地或完全地在集中收集的数据上训练模型。在一些这种实现中,用户计算设备可以进一步参照本地记录数据库训练模型。在一些情况下,可以将此附加的本地训练视为将模型个性化。
在一些实现中,关于训练模型的参数的一些信息可以由用户计算设备传递回服务器计算设备。例如,服务器计算设备可以使用返回的参数信息来构建跨群体模型。
在204处,用户计算设备相对于在用户计算设备上本地存储的数据针对机器学习模型评估至少一个性能指标。一个示例性能指标是通过模型正确预测的平均概率。另一示例性能指标是模型的期望效用。例如,期望效用可以包括用户交互的数量的节省/消除。作为一个示例,在预测键盘上下文中,模型的使用可以导致用户轻敲或其他交互的数量的减少,这可以反映为期望效用。
作为一个示例,在204处,用户计算设备可以基于机器学习模型预测未来用户行为的能力来评估机器学习模型。具体地,用户计算设备可以使用在202处接收和/或训练机器学习模型之后新记录的新本地数据来针对机器学习模型评估至少一个性能指标。例如,可采用该模型以基于新接收的数据进行预测,然后可将其与其他新接收的数据进行比较。
替代地或另外地,在204处,用户计算设备可以参照先前记录的本地数据来评估机器学习模型。具体地,用户计算设备可以使用在用户计算设备处先前记录的历史数据来评估至少一个性能指标。因此,在204处,可以参照先前收集的历史数据和/或参照新收集的数据来评估机器学习模型。
作为一个示例评估技术,图3描绘了根据本公开的示例实施例的用于评估机器学习模型的示例方法300的流程图。
在302处,用户计算设备获得存储在用户计算设备处的真实数据的第一部分。真实数据可以是先前记录的本地数据或新记录的本地数据。
提供一个示例,可以针对机器学习模型的、基于先前键入的串来准确地预测将被键入到文本消息收发应用的下一单词的能力,来评估机器学习模型。因此,在这样的示例中,真实数据可以包括与用户键入的文本串对应的第一部分。
在304处,用户计算设备将真实数据的第一部分输入到机器学习模型中。继续该示例,在304处,用户计算设备将用户键入的文本串输入到机器学习模型中。
在306处,用户计算设备获得存储在用户计算设备处的真实数据的第二部分。继续该示例,真实数据的第二部分可以包括用户在键入文本串之后键入的单词。因此,当给定第一部分时,可以关于模型正确预测真实数据的第二部分的能力来评估模型。
可以在框304之前或之后完成框306。具体地,如所指出的,真实数据可以是先前记录的本地数据或新记录的本地数据。如此,当使用先前记录的本地数据时,获得真实数据可以简单地包括从存储器访问数据。然而,在使用新记录的本地数据的一些实现中,可以实时评估模型。例如,继续该示例,可在与用户键入文本的同时使用模型预测以进行评估。
在308处,用户计算设备从机器学习模型接收对真实数据的第二部分的预测。在310处,用户计算设备确定在306处获得的真实数据的第二部分与在308处接收的预测之间的误差。作为一个示例,该误差本质上可以是二元的(例如,在308处接收的预测是否匹配在306处获得的真实数据的第二部分)。作为另一示例,可以根据误差函数来确定误差,该误差函数评估在306处获得的真实数据的第二部分与在308处接收的预测之间的误差幅度(非二元的)。可以使用任何误差函数。
在312处,用户计算设备基于在310处确定的误差来更新机器学习模型的性能指标。作为一个示例,性能指标可以是随时间的误差的平均值。因此,在312处,可以基于新确定的误差来更新平均值。
在312之后,方法300可以终止或可以返回到框302并且再次相对于真实数据的新的第一和第二部分评估机器学习模型。因此,可以通过真实数据的许多对应的第一和第二部分迭代地执行方法300。
再次参考图2,在206处,用户计算设备至少部分地基于至少一个性能指标来确定是否激活机器学习模型。例如,如果(一个或多个)性能指标比一个或多个性能阈值有利,则可以激活模型用于在用户计算设备处使用。在一些实现中,用户计算设备可以确定是否激活模型。在其他实现中,用户计算设备可以向服务器计算设备提供(一个或多个)性能指标,并且服务器计算设备可以确定是否激活模型。
在208处,用户计算设备评估在206处进行的确定。如果应该激活机器学习模型,则方法200进行到210。在210处,用户计算设备使用机器学习模型来获得一个或者多个预测。例如,由机器学习模型做出的预测可以由一个或多个应用或其他计算设备组件使用以提供用户特征。作为一个示例,激活的模型可以用于预测可以在用户计算设备上的文本消息收发应用的自动完成特征内浮出的下一个单词。
然而,再次参考框208,如果不应该激活机器学习模型,则方法200进行到212。在212处,用户计算设备不激活模型。因此,如果模型不能有利地执行,那么它将不会用于提供面向用户的特征。
图4描绘了根据本公开的示例实施例的管理多个机器学习模型的示例方法400的流程图。
在402处,用户计算设备获得多个机器学习模型。具体地,用户计算设备可以接收和/或训练多个机器学习模型,而不是如图2的框202所描述的接收和/或训练单个机器学习模型。例如,服务器计算设备可以已经在不同类型的训练数据上训练了多个机器学习模型。
为了提供特定示例,服务器计算设备可以已经训练了三个不同的机器学习模型以(例如,基于先前键入的串)预测将被键入到文本消息收发应用中的下一个单词。然而,机器学习模型可以已经在不同类型的训练数据上进行训练。例如,第一模型可以已经在公开可用的文献(例如书籍)上进行训练;第二模型可以已经在公开可用的社交媒体帖子上进行训练;以及第三模型可以已经在公开可用的电子邮件会话上进行训练。服务器计算设备可以将三个模型提供给用户计算设备。
在404处,用户计算设备相对于在用户计算设备上本地存储的数据针对多个机器学习模型中的每一个评估至少一个性能指标。例如,如上所述,本地存储的数据可以是新接收的数据,或者可以是先前记录的数据。作为一个示例,在404处,用户计算设备可以针对多个机器学习模型中的每一个分别执行图3的方法300。
继续上面提供的特定示例,用户计算设备可以相对于本地存储的数据针对在402处接收的三个模型中的每一个评估至少一个性能指标。例如,本地存储的数据可以包括用户输入到文本消息收发应用中的文本的先前记录的实例和/或用户输入到文本消息收发应用中的文本的新记录的实例。作为示例,用户计算设备可以针对每个模型确定当给定文本输入的记录的实例中的一个的一部分时正确预测下一个单词的平均概率。
在406处,用户计算设备至少部分地基于在404处评估的性能指标来确定从多个机器学习模型中选择第一机器学习模型。在一些实现中,在406处确定选择可以包括在用户计算设备处本地执行选择。在其他实现中,在406处确定选择可以包括将性能指标发送到服务器计算设备,然后从服务器计算设备接收选择。作为示例,可以在406处选择具有(一个或多个)最佳性能指标的模型。
继续上面提供的特定示例,用户计算设备和/或服务器计算设备可以基于评估的性能指标来选择三个模型中的一个。作为示例,如果发现在公开可用的电子邮件会话上训练的模型具有正确预测下一个单词的最高平均概率,则可以在用户计算设备处激活和使用这种模型。例如,选择的模型可用于预测可在用户计算设备上的文本消息收发应用的自动完成特征内浮出的下一个单词。
在408处,用户计算设备使用选择的第一机器学习模型来获得一个或多个预测。继续上面提供的特定示例,选择的模型可用于预测可在用户计算设备上的文本消息收发应用的自动完成特征内浮出的下一个单词。很多不同类型的模型可以提供很多不同类型的预测,这些预测可以用于很多不同的用途,包括面向用户的特征和非面向用户的特征两者。
在进一步的实现中,可以在408处使用之前,基于本地存储的数据将在406处选择的模型个性化。在更进一步的实现中,如果两个或更多个模型执行相对于一个或多个阈值有利,则可以聚合两个或更多个模型以形成单个模型,然后激活(或个性化和激活)该单个模型。在一个示例中,可以根据加权平均来聚合相对于一个或多个阈值有利地执行的两个或更多个模型,其中应用于两个或更多个模型中的每一个的权重是针对这种模型评估的相应性能指标的函数。
图5描绘了根据本公开的示例实施例的用于管理多个机器学习模型的示例方法500的流程图。
在502处,服务器计算设备获得分别与多个机器学习模型相关联的多个性能指标。针对每个模型的性能指标指示当参照在用户计算设备处本地存储的一组数据进行评估时这种模型的性能。
在504处,服务器计算设备至少部分地基于多个性能指标来选择多个机器学习模型中的至少一个。作为示例,可以在504处选择具有(一个或多个)最佳性能指标的模型。
在506处,服务器计算设备使得在用户计算设备处使用选择的至少一个机器学习模型。例如,服务器计算设备可以指导用户计算设备激活和使用选择的至少一个机器学习模型。
附加公开内容
这里讨论的技术参考服务器、数据库、软件应用和其他基于计算机的系统,以及所采取的动作和发送到这些系统以及从这些系统发送的信息。基于计算机的系统的固有灵活性允许组件之间和当中的多种可能的配置、组合以及任务和功能的划分。例如,这里讨论的过程可以使用单个设备或组件或组合工作的多个设备或组件来实现。数据库和应用可以在单个系统上实现,或者可以跨多个系统分布。分布式组件可以顺序或并行操作。
虽然已经关于本主题的各种具体示例实施例详细描述了本主题,但是每个示例是通过解释而非限制本公开的方式来提供的。在获得对前述内容的理解之后,本领域技术人员可以容易地产生对这些实施例的更改、变化和等同物。因此,本主题公开内容并不排除包括对本主题的这些修改、变化和/或添加,这对于本领域普通技术人员来说是显而易见的。例如,作为一个实施例的一部分示出或描述的特征可以与另一实施例一起使用,以产生又一个实施例。因此,本公开旨在覆盖这些更改、变化和等同物。

Claims (13)

1.一种管理机器学习模型的计算机实现的方法,所述方法包括:
由用户计算设备获得多个机器学习模型;
由用户计算设备针对所述多个机器学习模型中的每一个评估至少一个性能指标,其中,针对每个机器学习模型的至少一个性能指标是相对于在用户计算设备处本地存储的数据评估的;
由用户计算设备向服务器计算设备提供针对所述多个机器学习模型分别评估的性能指标;
由用户计算设备至少部分地基于针对所述多个机器学习模型分别评估的性能指标,从服务器计算设备接收对所述多个机器学习模型中的第一机器学习模型的选择;和
由用户计算设备使用选择的第一机器学习模型来获得一个或多个预测。
2.根据权利要求1所述的计算机实现的方法,其中,由用户计算设备针对所述多个机器学习模型中的每一个评估至少一个性能指标包括由用户计算设备使用在用户计算设备处先前记录的历史数据来针对所述多个机器学习模型中的每一个评估所述至少一个性能指标。
3.根据权利要求2所述的计算机实现的方法,其中,由用户计算设备使用在用户计算设备处先前记录的历史数据来针对所述多个机器学习模型中的每一个评估所述至少一个性能指标包括:
由用户计算设备将历史数据的至少第一部分输入到所述多个机器学习模型的每一个中;
响应于历史数据的第一部分的输入,由用户计算设备接收来自所述多个机器学习模型中的每一个的至少一个预测;和
由用户计算设备将来自每个机器学习模型的所述至少一个预测与历史数据的第二部分进行比较,以分别确定针对所述多个机器学习模型中的每一个的所述至少一个性能指标。
4.根据任一前述权利要求所述的计算机实现的方法,其中,由用户计算设备针对所述多个机器学习模型中的每一个评估至少一个性能指标包括,在由用户计算设备获得所述多个机器学习模型之后,由用户计算设备使用在用户计算设备处新纪录的新数据来针对所述多个机器学习模型中的每一个评估所述至少一个性能指标。
5.根据权利要求4所述的计算机实现的方法,其中,由用户计算设备使用在用户计算设备处新记录的新数据来针对所述多个机器学习模型中的每一个评估所述至少一个性能指标包括:
由用户计算设备将新数据的至少第一部分输入到所述多个机器学习模型的每一个中;
响应于新数据的第一部分的输入,由用户计算设备接收来自所述多个机器学习模型中的每一个的至少一个预测;和
由用户计算设备将来自每个机器学习模型的所述至少一个预测与新数据的第二部分进行比较,以分别确定针对所述多个机器学习模型中的每一个的所述至少一个性能指标。
6.根据任一前述权利要求所述的计算机实现的方法,其中,由用户计算设备获得所述多个机器学习模型包括:
由用户计算设备从服务器计算设备接收所述多个机器学习模型。
7.根据任一前述权利要求所述的计算机实现的方法,其中,从所述多个机器学习模型中选择第一机器学习模型至少部分地基于由其他计算设备报告的性能指标中聚合的全局性能。
8.根据任一前述权利要求所述的计算机实现的方法,其中,由用户计算设备针对所述多个机器学习模型中的每一个评估至少一个性能指标包括由用户计算设备针对所述多个机器学习模型中的每一个评估正确预测的平均概率。
9.根据任一前述权利要求所述的计算机实现的方法,其中,在激活任何机器学习模型之前,评估所述多个机器学习模型;和
在用户计算设备接收到对第一机器学习模型的选择之后,第一机器学习模型被激活并在用户计算设备处被使用。
10.根据任一前述权利要求所述的计算机实现的方法,还包括:
由用户计算设备向服务器计算设备报告针对所述多个机器学习模型评估的一个或多个性能指标。
11.根据权利要求10所述的计算机实现的方法,还包括:
由服务器计算设备将从用户计算设备接收的所述一个或多个性能指标与由其他计算设备报告的其他性能指标聚合,以评定所述多个机器学习模型中的每一个的全局性能。
12.一种计算设备,所述计算设备包括:
一个或多个处理器;和
一个或多个非暂时性计算机可读介质,其共同存储指令,当所述指令被所述一个或多个处理器执行时,使得计算设备执行根据任一前述权利要求所述的方法。
13.一种计算机程序产品,包括计算机可读指令,当所述指令被服务器计算系统的一个或多个处理器执行时,使得服务器计算系统执行根据权利要求1至11中任一项所述的方法。
CN202311210976.7A 2016-11-21 2017-09-25 用于管理机器学习模型的计算机实现的方法和计算设备 Pending CN117350399A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15/357,559 2016-11-21
US15/357,559 US10769549B2 (en) 2016-11-21 2016-11-21 Management and evaluation of machine-learned models based on locally logged data
PCT/US2017/053187 WO2018093462A1 (en) 2016-11-21 2017-09-25 Management and evaluation of machine-learned models based on locally logged data
CN201780071956.2A CN109983483B (zh) 2016-11-21 2017-09-25 用于管理机器学习模型的计算机实现的方法和计算设备

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201780071956.2A Division CN109983483B (zh) 2016-11-21 2017-09-25 用于管理机器学习模型的计算机实现的方法和计算设备

Publications (1)

Publication Number Publication Date
CN117350399A true CN117350399A (zh) 2024-01-05

Family

ID=60083445

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311210976.7A Pending CN117350399A (zh) 2016-11-21 2017-09-25 用于管理机器学习模型的计算机实现的方法和计算设备
CN201780071956.2A Active CN109983483B (zh) 2016-11-21 2017-09-25 用于管理机器学习模型的计算机实现的方法和计算设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201780071956.2A Active CN109983483B (zh) 2016-11-21 2017-09-25 用于管理机器学习模型的计算机实现的方法和计算设备

Country Status (4)

Country Link
US (2) US10769549B2 (zh)
EP (2) EP3542322B1 (zh)
CN (2) CN117350399A (zh)
WO (1) WO2018093462A1 (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10467274B1 (en) 2016-11-10 2019-11-05 Snap Inc. Deep reinforcement learning-based captioning with embedding reward
US10198671B1 (en) 2016-11-10 2019-02-05 Snap Inc. Dense captioning with joint interference and visual context
JP6720402B2 (ja) * 2017-03-21 2020-07-08 株式会社Preferred Networks サーバ装置、学習済モデル提供プログラム、学習済モデル提供方法及び学習済モデル提供システム
US11823067B2 (en) * 2017-06-27 2023-11-21 Hcl Technologies Limited System and method for tuning and deploying an analytical model over a target eco-system
US10782939B2 (en) * 2017-08-07 2020-09-22 Microsoft Technology Licensing, Llc Program predictor
US10795965B2 (en) * 2018-03-30 2020-10-06 Microsoft Technology Licensing, Llc Distributed in-browser deep learning for predictive pre-fetching
WO2019217293A1 (en) * 2018-05-07 2019-11-14 Google Llc Personalized match score for places
US11593634B2 (en) * 2018-06-19 2023-02-28 Adobe Inc. Asynchronously training machine learning models across client devices for adaptive intelligence
US20190392333A1 (en) * 2018-06-22 2019-12-26 International Business Machines Corporation Adaptive multi-agent cooperative computation and inference
US20210090750A1 (en) * 2018-08-31 2021-03-25 Google Llc Privacy-First On-Device Federated Health Modeling and Intervention
US11087025B2 (en) * 2018-12-10 2021-08-10 Sap Se Differential privacy processing of IoT streaming data using generative adversarial networks
CN110414187B (zh) * 2019-07-03 2021-09-17 北京百度网讯科技有限公司 模型安全交付自动化的系统及其方法
CN110309462B (zh) * 2019-07-10 2023-05-16 腾讯科技(深圳)有限公司 数据展示方法及系统
US11847545B2 (en) 2019-09-09 2023-12-19 Nxp B.V. Systems and methods involving a combination of machine learning models
US11157776B2 (en) * 2019-09-20 2021-10-26 International Business Machines Corporation Systems and methods for maintaining data privacy in a shared detection model system
CN114830116A (zh) * 2019-10-28 2022-07-29 谷歌有限责任公司 状况归属期间维护隐私
CN112784181A (zh) * 2019-11-08 2021-05-11 阿里巴巴集团控股有限公司 信息展示、图像处理方法及设备、信息展示装置
CN114787825A (zh) 2019-12-09 2022-07-22 三星电子株式会社 电子设备及电子设备的控制方法
US20210232981A1 (en) * 2020-01-23 2021-07-29 swarmin.ai Method and system for incremental training of machine learning models on edge devices
US11178010B2 (en) 2020-02-25 2021-11-16 International Business Machines Corporation Personalized machine learning model management and deployment on edge devices
US11481680B2 (en) * 2020-04-17 2022-10-25 International Business Machines Corporation Verifying confidential machine learning models
US11461292B2 (en) 2020-07-01 2022-10-04 International Business Machines Corporation Quick data exploration
CN111831675A (zh) * 2020-07-07 2020-10-27 平安科技(深圳)有限公司 一种仓储模型训练方法、装置、计算机设备及存储介质
US20230153565A1 (en) * 2020-08-13 2023-05-18 Samsung Electronics Co., Ltd. Method and system of dnn modularization for optimal loading
US20220397515A1 (en) * 2021-06-10 2022-12-15 Applied Materials, Inc. Obtaining substrate metrology measurement values using machine learning
KR102413588B1 (ko) * 2021-11-15 2022-06-27 주식회사 테스트웍스 학습 데이터에 따른 객체 인식 모델 추천 방법, 시스템 및 컴퓨터 프로그램
US11829239B2 (en) 2021-11-17 2023-11-28 Adobe Inc. Managing machine learning model reconstruction
WO2023149880A1 (en) * 2022-02-03 2023-08-10 Google Llc Continuous training of machine learning models on changing data
WO2023245513A1 (en) * 2022-06-22 2023-12-28 Shenzhen Tcl New Technology Co., Ltd. Device capability discovery method and wireless communication device

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6708163B1 (en) 1999-02-24 2004-03-16 Hillol Kargupta Collective data mining from distributed, vertically partitioned feature space
AU2004202199B2 (en) * 1999-04-30 2007-09-20 E. I. Du Pont De Nemours And Company Distributed hierarchical evolutionary modeling and visualization of empirical data
US6961685B2 (en) * 2000-09-19 2005-11-01 Sy Bon K Probability model selection using information-theoretic optimization criterion
US7069256B1 (en) * 2002-05-23 2006-06-27 Oracle International Corporation Neural network module for data mining
US20050138571A1 (en) 2003-12-18 2005-06-23 Keskar Dhananjay V. Dynamic detection of device characteristics
US7664249B2 (en) * 2004-06-30 2010-02-16 Microsoft Corporation Methods and interfaces for probing and understanding behaviors of alerting and filtering systems based on models and simulation from logs
US20060224579A1 (en) * 2005-03-31 2006-10-05 Microsoft Corporation Data mining techniques for improving search engine relevance
US20080189632A1 (en) * 2007-02-02 2008-08-07 Microsoft Corporation Severity Assessment For Performance Metrics Using Quantitative Model
US20080209031A1 (en) 2007-02-22 2008-08-28 Inventec Corporation Method of collecting and managing computer device information
US8190537B1 (en) * 2008-10-31 2012-05-29 Google Inc. Feature selection for large scale models
US20100132044A1 (en) 2008-11-25 2010-05-27 International Business Machines Corporation Computer Method and Apparatus Providing Brokered Privacy of User Data During Searches
US8239396B2 (en) 2009-03-20 2012-08-07 Oracle International Corporation View mechanism for data security, privacy and utilization
TWI396105B (zh) * 2009-07-21 2013-05-11 Univ Nat Taiwan 用於模擬個體差異之個人化資訊檢索之數位資料處理方法及其電腦裝置可讀式資訊儲存媒體與資訊檢索系統
JP5584914B2 (ja) * 2010-07-15 2014-09-10 株式会社日立製作所 分散計算システム
US20120208166A1 (en) * 2011-02-16 2012-08-16 Steve Ernst System and Method for Adaptive Knowledge Assessment And Learning
US8612368B2 (en) 2011-03-01 2013-12-17 International Business Machines Corporation Systems and methods for processing machine learning algorithms in a MapReduce environment
US8533224B2 (en) * 2011-05-04 2013-09-10 Google Inc. Assessing accuracy of trained predictive models
US8954357B2 (en) 2011-05-12 2015-02-10 Xerox Corporation Multi-task machine learning using features bagging and local relatedness in the instance space
US9349103B2 (en) * 2012-01-09 2016-05-24 DecisionQ Corporation Application of machine learned Bayesian networks to detection of anomalies in complex systems
US8429103B1 (en) * 2012-06-22 2013-04-23 Google Inc. Native machine learning service for user adaptation on a mobile platform
US9390370B2 (en) 2012-08-28 2016-07-12 International Business Machines Corporation Training deep neural network acoustic models using distributed hessian-free optimization
US9111232B2 (en) * 2012-10-31 2015-08-18 Nec Laboratories America, Inc. Portable workload performance prediction for the cloud
US9093069B2 (en) 2012-11-05 2015-07-28 Nuance Communications, Inc. Privacy-sensitive speech model creation via aggregation of multiple user models
US20140180738A1 (en) * 2012-12-21 2014-06-26 Cloudvu, Inc. Machine learning for systems management
US9275398B1 (en) 2012-12-10 2016-03-01 A9.Com, Inc. Obtaining metrics for client-side display of content
US20140188768A1 (en) * 2012-12-28 2014-07-03 General Electric Company System and Method For Creating Customized Model Ensembles On Demand
US9053436B2 (en) * 2013-03-13 2015-06-09 Dstillery, Inc. Methods and system for providing simultaneous multi-task ensemble learning
US9190055B1 (en) 2013-03-14 2015-11-17 Amazon Technologies, Inc. Named entity recognition with personalized models
US9646262B2 (en) * 2013-06-17 2017-05-09 Purepredictive, Inc. Data intelligence using machine learning
US20150170053A1 (en) * 2013-12-13 2015-06-18 Microsoft Corporation Personalized machine learning models
US9734457B2 (en) 2013-12-31 2017-08-15 Cisco Technology, Inc. Learning data processor for distributing learning machines across large-scale network infrastructures
US9563854B2 (en) 2014-01-06 2017-02-07 Cisco Technology, Inc. Distributed model training
US10425294B2 (en) 2014-01-06 2019-09-24 Cisco Technology, Inc. Distributed and learning machine-based approach to gathering localized network dynamics
US20150242760A1 (en) 2014-02-21 2015-08-27 Microsoft Corporation Personalized Machine Learning System
US20150324686A1 (en) * 2014-05-12 2015-11-12 Qualcomm Incorporated Distributed model learning
GB2541625A (en) * 2014-05-23 2017-02-22 Datarobot Systems and techniques for predictive data analytics
US9721212B2 (en) * 2014-06-04 2017-08-01 Qualcomm Incorporated Efficient on-device binary analysis for auto-generated behavioral models
US10452992B2 (en) * 2014-06-30 2019-10-22 Amazon Technologies, Inc. Interactive interfaces for machine learning model evaluations
US20160071027A1 (en) * 2014-09-08 2016-03-10 Pivotal Software, Inc. Compute intensive stream processing with concept drift detection
US9727423B2 (en) * 2014-09-30 2017-08-08 Code 42 Software, Inc. Shared file system predictive storage techniques
US9984337B2 (en) * 2014-10-08 2018-05-29 Nec Corporation Parallelized machine learning with distributed lockless training
US20160132787A1 (en) * 2014-11-11 2016-05-12 Massachusetts Institute Of Technology Distributed, multi-model, self-learning platform for machine learning
US10387794B2 (en) * 2015-01-22 2019-08-20 Preferred Networks, Inc. Machine learning with model filtering and model mixing for edge devices in a heterogeneous environment
US9135559B1 (en) * 2015-03-20 2015-09-15 TappingStone Inc. Methods and systems for predictive engine evaluation, tuning, and replay of engine performance
US9336483B1 (en) 2015-04-03 2016-05-10 Pearson Education, Inc. Dynamically updated neural network structures for content distribution networks
US10984338B2 (en) * 2015-05-28 2021-04-20 Raytheon Technologies Corporation Dynamically updated predictive modeling to predict operational outcomes of interest
US20160358099A1 (en) * 2015-06-04 2016-12-08 The Boeing Company Advanced analytical infrastructure for machine learning
US10579750B2 (en) * 2015-06-05 2020-03-03 Uptake Technologies, Inc. Dynamic execution of predictive models
US10878385B2 (en) * 2015-06-19 2020-12-29 Uptake Technologies, Inc. Computer system and method for distributing execution of a predictive model
US10679145B2 (en) * 2015-08-07 2020-06-09 Nec Corporation System and method for balancing computation with communication in parallel learning
US20170046510A1 (en) * 2015-08-14 2017-02-16 Qualcomm Incorporated Methods and Systems of Building Classifier Models in Computing Devices
US9699205B2 (en) * 2015-08-31 2017-07-04 Splunk Inc. Network security system
US10380500B2 (en) * 2015-09-24 2019-08-13 Microsoft Technology Licensing, Llc Version control for asynchronous distributed machine learning
US10402469B2 (en) * 2015-10-16 2019-09-03 Google Llc Systems and methods of distributed optimization
US20200034745A1 (en) * 2015-10-19 2020-01-30 Nutanix, Inc. Time series analysis and forecasting using a distributed tournament selection process
US10474951B2 (en) * 2015-10-23 2019-11-12 Nec Corporation Memory efficient scalable deep learning with model parallelization
US20170193066A1 (en) * 2015-12-31 2017-07-06 Linkedin Corporation Data mart for machine learning
CN105740388B (zh) * 2016-01-27 2019-03-05 上海晶赞科技发展有限公司 一种基于分布漂移数据集的特征选择方法
WO2017156791A1 (en) * 2016-03-18 2017-09-21 Microsoft Technology Licensing, Llc Method and apparatus for training a learning machine
US10885467B2 (en) * 2016-04-28 2021-01-05 Qualcomm Incorporated Differentially private iteratively reweighted least squares
US11461690B2 (en) * 2016-07-18 2022-10-04 Nantomics, Llc Distributed machine learning systems, apparatus, and methods
US20180025286A1 (en) * 2016-07-25 2018-01-25 International Business Machines Corporation Detecting trends in evolving analytics models
US10536351B2 (en) * 2016-07-29 2020-01-14 Splunk Inc. Analytics for edge devices
US20180039905A1 (en) * 2016-08-03 2018-02-08 International Business Machines Corporation Large scale distributed training of data analytics models
US20180075347A1 (en) * 2016-09-15 2018-03-15 Microsoft Technology Licensing, Llc Efficient training of neural networks
US20180089587A1 (en) * 2016-09-26 2018-03-29 Google Inc. Systems and Methods for Communication Efficient Distributed Mean Estimation
US10095753B2 (en) * 2016-09-28 2018-10-09 Microsoft Technology Licensing, Llc Aggregation and generation of confidential data insights with confidence values
US10223547B2 (en) * 2016-10-11 2019-03-05 Palo Alto Research Center Incorporated Method for differentially private aggregation in a star topology under a realistic adversarial model
US10691491B2 (en) * 2016-10-19 2020-06-23 Nutanix, Inc. Adapting a pre-trained distributed resource predictive model to a target distributed computing environment
US11036552B2 (en) * 2016-10-25 2021-06-15 International Business Machines Corporation Cognitive scheduler
US10846751B2 (en) * 2016-11-01 2020-11-24 Facebook, Inc. Generating data to predict user affinity for a component to be included in a content item optimized for an online system user
US10909503B1 (en) * 2016-11-08 2021-02-02 EMC IP Holding Company LLC Snapshots to train prediction models and improve workflow execution

Also Published As

Publication number Publication date
CN109983483B (zh) 2023-10-03
US10769549B2 (en) 2020-09-08
US20180144265A1 (en) 2018-05-24
CN109983483A (zh) 2019-07-05
EP3944160A1 (en) 2022-01-26
US20200401946A1 (en) 2020-12-24
WO2018093462A1 (en) 2018-05-24
EP3542322A1 (en) 2019-09-25
EP3542322B1 (en) 2021-11-03

Similar Documents

Publication Publication Date Title
CN109983483B (zh) 用于管理机器学习模型的计算机实现的方法和计算设备
US20210110313A1 (en) Computer-based systems, computing components and computing objects configured to implement dynamic outlier bias reduction in machine learning models
US11595415B2 (en) Root cause analysis in multivariate unsupervised anomaly detection
KR20190109427A (ko) 침입 탐지를 위한 지속적인 학습
US11176508B2 (en) Minimizing compliance risk using machine learning techniques
EP4028874A1 (en) Techniques for adaptive and context-aware automated service composition for machine learning (ml)
US11615348B2 (en) Computer-based systems, computing components and computing objects configured to implement dynamic outlier bias reduction in machine learning models
WO2021004324A1 (zh) 资源数据的处理方法、装置、计算机设备和存储介质
US20240193169A1 (en) Task and process mining by robotic process automations across a computing environment
US11763189B2 (en) Method for tracking lack of bias of deep learning AI systems
US20230351401A1 (en) Automated Rules Execution Testing And Release System
WO2023055426A1 (en) Techniques for input classification and responses using generative neural networks
CN110462638A (zh) 使用后验锐化训练神经网络
US20190220924A1 (en) Method and device for determining key variable in model
CA3159935A1 (en) System and method for adversarial vulnerability testing of machine learning models
US12002569B2 (en) Generating multi-dimensional recommendation data objects based on decentralized crowd sourcing
US20220147852A1 (en) Mitigating partiality in regression models
US20230109260A1 (en) Techniques for cursor trail capture using generative neural networks
US20220207284A1 (en) Content targeting using content context and user propensity
CN117544432B (zh) 一种电子政务外网接入管理方法及装置
US20240134835A1 (en) Service chain for complex configuration-driven data quality rationalization and data control
US20240086757A1 (en) Utilizing machine learning models to predict multi-level client intent classifications for client communications
US20230036764A1 (en) Systems and Method for Evaluating and Selectively Distilling Machine-Learned Models on Edge Devices
Almalawi et al. Enhancing Security in Smart Healthcare Systems: Using Intelligent Edge Computing with a Novel Salp Swarm Optimization and Radial Basis Neural Network Algorithm
CN117291714A (zh) 一种客户行为的预测方法、系统、设备及可读存储介质

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