执行自动机器学习的方法和装置与流程

文档序号:16137032发布日期:2018-12-01 01:07阅读:196来源:国知局

本申请总体说来涉及人工智能领域,更具体地讲,涉及一种执行自动机器学习的方法和装置。

背景技术

随着海量数据的出现,人工智能技术迅速发展,而机器学习是人工智能发展到一定阶段的必然产物,其致力于通过计算的手段,从大量数据中挖掘有价值的潜在信息。

在机器学习领域,往往通过将经验数据提供给机器学习算法来训练机器学习模型以确定构成机器学习模型的理想参数,而训练好的机器学习模型可被应用于在面对新的预测数据时提供相应的预测结果。然而,机器学习过程中所涉及的许多工作(例如,特征预处理和选择、模型算法选择、超参数调整等)往往既需要具备计算机(特别是机器学习)专业知识,也需要具备与预测场景相关的具体业务经验,因此,需要耗费大量的人力成本。为了提高机器学习效率,近年来提出了自动机器学习(automl)技术,其实现了从数据预处理到参数选择的一系列流程的自动化,因此,大大降低了机器学习门槛并且降低了用于机器学习的人力成本。

然而,automl技术在进行自动机器学习时事实上始终假设用于机器学习模型训练的数据是独立同分布的,或者说,假设用于机器学习模型训练的数据的分布状态是不变的(即,静态数据),而并未考虑数据分布状态变化的情况。但是,事实上,在应用机器学习的实际场景中,随着时间的推移,数据的分布状态常常会发生变化,而如果仍然按照先前训练出的机器学习模型针对数据分布状态已经发生变化的新数据执行预测,则很难获得较准确的预测结果。鉴于此,需要更加完善的自动机器学习技术。



技术实现要素:

根据本申请示例性实施例,提供了一种执行自动机器学习的方法,所述方法可包括:通过自动机器学习方式获取包括至少一个机器学习模型的初始机器学习模型组;持续获取预测数据;监测持续获取的预测数据中是否出现超出预设阈值的分布状态变化;在出现超出阈值的分布状态变化的情况下,自动更新初始机器学习模型组。

可选地,在所述初始机器学习模型组中,各个机器学习模型针对预测数据提供的预测结果可被进行加权求和以作为所述初始机器学习模型组针对预测数据的预测结果,并且,监测步骤可包括:监测持续获取的预测数据的分布状态和/或初始机器学习模型组针对所述预测数据的预测效果,以确定是否出现超出预设阈值的分布状态变化。

可选地,在出现超出预设阈值的分布状态变化的情况下,固定地使用或自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组。

可选地,所述预定的多种更新方式可包括以下更新方式:第一更新方式,重新训练新的机器学习模型组以替代初始机器学习模型组;第二更新方式,调整初始机器学习模型组中的各个机器学习模型的权重;或者第三更新方式,训练新的机器学习模型组并将新的机器学习模型组与初始机器学习模型组组合来构成更新后的机器学习模型组。

可选地,在第一更新方式中,可利用基于至少一部分预测数据及其真实结果形成的训练数据,重新训练新的机器学习模型组;在第二更新方式中,可根据初始机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果来调整初始机器学习模型组中的各个机器学习模型的权重;在第三更新方式中,可利用基于至少一部分预测数据及其真实结果形成的训练数据训练新的机器学习模型组,并且,通过将新的机器学习模型组与初始机器学习模型组组合,并根据组合后的机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果确定组合后的机器学习模型组中的各个机器学习模型的权重来构成更新后的机器学习模型组。

可选地,在第一更新方式中,所述至少一部分预测数据可包括持续获取的全部预测数据;在第二更新方式和第三更新方式中,所述至少一部分预测数据可包括分布状态变化超出预设阈值的预测数据或者持续获取的全部预测数据。

可选地,自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组的步骤可包括:至少根据与预测数据有关的信息自适应地在所述预定的多种更新方式之中选择相应的更新方式来自动更新初始机器学习模型组。

可选地,与预测数据有关的信息可包括能够用于更新初始机器学习模型组的预测数据的数据量和/或与预测数据的分布状态变化相关的信息。可选地,与预测数据的分布状态变化相关的信息可包括预测数据的分布状态变化率和/或预测数据的分布状态变化的周期性。

可选地,自适应地选择相应的更新方式的步骤可包括:在数据量小于第一阈值且分布状态变化率大于第二阈值的情况下,选择第三更新方式;在数据量小于第一阈值且分布状态变化率小于第二阈值的情况下,选择第一更新方式;在数据量大于第一阈值且分布状态变化率小于第二阈值的情况下,选择第二更新方式;在数据量大于第一阈值且分布状态变化呈周期性的情况下,选择第二更新方式;在数据量大于第一阈值,分布状态变化率大于第二阈值,且分布状态变化不呈周期性的情况下,选择第三更新方式。

可选地,监测步骤可包括:获取初始机器学习模型组针对所述预测数据的预测结果;通过将获取的预测结果与所述预测数据的真实结果进行比较,确定初始机器学习模型组针对所述预测数据的预测效果;根据确定的预测效果,确定是否出现超出阈值的分布状态变化。

根据本申请另一示例性实施例,提供了一种用于执行自动机器学习的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行如上所述的方法的计算机程序。

根据本申请另一示例性实施例,提供了一种执行自动机器学习的计算装置,包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,促使处理器执行如上所述的方法。

根据本申请另一示例性实施例,提供了一种执行自动机器学习的装置,所述装置可包括:初始机器学习模型组获取单元,被配置为通过自动机器学习方式获取包括至少一个机器学习模型的初始机器学习模型组;预测数据获取单元,被配置为持续获取预测数据;监测单元,被配置为监测持续获取的预测数据中是否出现超出预设阈值的分布状态变化;更新单元,被配置为在出现超出阈值的分布状态变化的情况下自动更新初始机器学习模型组。

可选地,在所述初始机器学习模型组中,各个机器学习模型针对预测数据提供的预测结果可被进行加权求和以作为所述初始机器学习模型组针对预测数据的预测结果,并且,监测单元可监测持续获取的预测数据的分布状态和/或初始机器学习模型组针对所述预测数据的预测效果,以确定是否出现超出预设阈值的分布状态变化。

可选地,在出现超出预设阈值的分布状态变化的情况下,更新单元可固定地使用或自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组。

可选地,所述预定的多种更新方式可包括以下更新方式:第一更新方式,重新训练新的机器学习模型组以替代初始机器学习模型组;第二更新方式,调整初始机器学习模型组中的各个机器学习模型的权重;或者,第三更新方式,训练新的机器学习模型组并将新的机器学习模型组与初始机器学习模型组组合来构成更新后的机器学习模型组。

可选地,在第一更新方式中,更新单元可利用基于至少一部分预测数据及其真实结果形成的训练数据,重新训练新的机器学习模型组;在第二更新方式中,更新单元可根据初始机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果来调整初始机器学习模型组中的各个机器学习模型的权重;在第三更新方式中,更新单元可利用基于至少一部分预测数据及其真实结果形成的训练数据训练新的机器学习模型组,并且,通过将新的机器学习模型组与初始机器学习模型组组合,并根据组合后的机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果确定组合后的机器学习模型组中的各个机器学习模型的权重来构成更新后的机器学习模型组。

可选地,在第一更新方式中,所述至少一部分预测数据可包括持续获取的全部预测数据;在第二更新方式和第三更新方式中,所述至少一部分预测数据可包括分布状态变化超出预设阈值的预测数据或者持续获取的全部预测数据。

可选地,更新单元可至少根据与预测数据有关的信息自适应地在所述预定的多种更新方式之中选择相应的更新方式来自动更新初始机器学习模型组。

可选地,与预测数据有关的信息可包括能够用于更新初始机器学习模型组的预测数据的数据量和/或与预测数据的分布状态变化相关的信息。可选地,与预测数据的分布状态变化相关的信息可包括预测数据的分布状态变化率和/或预测数据的分布状态变化的周期性。

可选地,在数据量小于第一阈值且分布状态变化率大于第二阈值的情况下,更新单元可选择第三更新方式;在数据量小于第一阈值且分布状态变化率小于第二阈值的情况下,更新单元可选择第一更新方式;在数据量大于第一阈值且分布状态变化率小于第二阈值的情况下,更新单元可选择第二更新方式;在数据量大于第一阈值且分布状态变化呈周期性的情况下,更新单元可选择第二更新方式;在数据量大于第一阈值,分布状态变化率大于第二阈值,且分布状态变化不呈周期性的情况下,更新单元可选择第三更新方式。

可选地,监测单元可获取初始机器学习模型组针对所述预测数据的预测结果,通过将获取的预测结果与所述预测数据的真实结果进行比较来确定初始机器学习模型组针对所述预测数据的预测效果,并且根据确定的预测效果,确定是否出现超出阈值的分布状态变化。

根据本申请示例性实施例的执行自动机器学习的方法和装置,通过在自动机器学习过程中监测预测数据的分布状态变化,并在预测数据中出现超出预设阈值的分布状态变化的情况下自动更新初始机器学习模型,进一步完善了目前的自动机器学习技术,并且,由于能够通过自动更新机器学习模型组来不断学习到预测数据的分布状态变化,因此,能够利用更新后的机器学习模型组针对新的预测数据提供更准确的预测结果。

附图说明

从下面结合附图对本申请实施例的详细描述中,本申请的这些和/或其他方面和优点将变得更加清楚并更容易理解,其中:

图1是示出根据本申请示例性实施例的执行自动机器学习的装置的框图;

图2是示出根据本申请示例性实施例的执行自动机器学习的方法的流程图;

图3是示出根据本申请示例性实施例的执行自动机器学习的方法的示意图。

具体实施方式

为了使本领域技术人员更好地理解本申请,下面结合附图和具体实施方式对本申请的示例性实施例作进一步详细说明。

图1是示出根据本申请示例性实施例的执行自动机器学习的装置100(在下文中,被简称为自动机器学习装置100)的框图。自动机器学习装置100可包括初始机器学习模型组获取单元110、预测数据获取单元120、监测单元130和更新单元140。

具体说来,初始机器学习模型组获取单元110可通过自动机器学习方式获取包括至少一个机器学习模型的初始机器学习模型组。这里,自动机器学习方式可以是诸如automl的任何自动机器学习方式以及不同自动机器学习方式的组合。此外,需要说明的是,初始机器学习模型组不仅可包括一个或多个机器学习模型,而且当初始机器学习模型组包括多个机器学习模型时,所述多个机器学习模型的类型可以相同或不同(例如,可依据相同或不同的算法应用相同或不同的特征处理等),并且,每个机器学习模型可以是任何类型的机器学习模型,例如,逻辑回归(lr)模型、支持向量机(svm)、梯度提升决策树或深度神经网络等,但不限于此。

根据示例性实施例,初始机器学习模型组获取单元110可通过自动机器学习方式,基于预先获取的训练数据来训练初始机器学习模型组。这里,训练数据可由初始机器学习模型组获取单元110、自动机器学习装置100所包括的其他数据获取单元(未示出)或其他数据获取装置从外部数据源(例如,服务器、数据库等)获取,或者可通过输入装置被输入到自动机器学习装置100。例如,上述预先获取的训练数据可按照流传输的方式持续不断地输入,或可一次性或分批次地输入,使得初始机器学习模型组获取单元110能够利用这些训练数据训练出初始机器学习模型组。作为示例,初始机器学习模型组获取单元110可采用基于ensemblelearning(集成学习)的automl方式,基于获取的训练数据来训练初始机器学习模型组。这里,初始机器学习模型组获取单元110可基于贪心算法,通过不断迭代调整每个机器学习模型的权重以最大化初始机器学习模型组在训练数据集上的预测效果,来最终确定初始机器学习模型组中各个机器学习模型的权重。根据示例性实施例,通过自动机器学习方式获取的初始机器学习模型组可用于针对预测数据执行预测,并且包括多个机器学习模型的初始机器学习模型组可通常比单个机器学习模型提供更好的预测效果。

预测数据获取单元120可持续获取预测数据。作为示例,预测数据可按照流传输的方式不断输入,这里,预测数据可来源于期望获取模型预测结果的实体内部(例如,来源于期望获取预测结果的银行、企业、学校等),或者,预测数据也可来源于上述实体以外,例如,来源于数据提供商、互联网(例如,社交网站)、移动运营商、app运营商、快递公司、信用机构等。此外,预测数据既可以是在线获取的数据,也可以是离线获取的数据,并且,预测数据可在由预测数据获取单元120获取之前被预先处理为呈预定格式以用于后续的预测处理,或者可在由预测数据获取单元120获取之后经过特征处理被处理为预定格式以用于后续的预测处理。另外,预测数据也可通过输入装置输入到预测数据获取单元120,或者可由预测数据获取单元120根据已获取的数据来自动生成,或者可由预测数据获取单元120从网络上(例如,网络上的存储介质(例如,数据仓库))获取。此外,诸如服务器的中间数据交换装置可有助于预测数据获取单元120从外部数据源获取相应的数据。需要说明的是,本申请对这里的预测数据的产生方式、存在形式、种类、来源以及获取方式等均不做任何限制,只要其适用于初始机器学习模型组即可。

获取的预测数据可用于形成与预测数据相应的预测样本,以由机器学习模型组提供相应的预测过程。根据示例性实施例,在上述初始机器学习模型组中,各个机器学习模型针对预测数据提供的预测结果被进行加权求和以作为所述初始机器学习模型组针对预测数据的预测结果。

监测单元130可监测持续获取的预测数据中是否出现超出预设阈值的分布状态变化。这里,分布状态变化可包括预测数据的联合概率分布变化。此外,这里的预设阈值可由用户根据机器学习模型的实际应用场景预先设置。根据示例性实施例,监测单元130可监测持续获取的预测数据的分布状态和/或初始机器学习模型组针对所述预测数据的预测效果,以确定是否出现超出预设阈值的分布状态变化。这里,预测数据的分布状态可指预测数据及其真实结果的概率分布状态,其变化大小可在一定程度上表征预测数据中所包含的特征的变化程度,因此,通过将其变化大小与预设阈值进行比较,可确定预测数据中是否出现超出预设阈值的分布状态变化。

作为示例,初始机器学习模型组针对所述预测数据的预测效果可包括预测准确率、精确率、召回率等,但是,本领域技术人员清楚的是,用于评价预测效果的指标不限于此。通常,如果预测数据的分布状态发生变化,则利用先前的训练数据训练出的初始机器学习模型组针对新到来的预测数据的预测效果也会下降,因此,可选地,监测单元130也可通过监测初始机器学习模型组针对预测数据的预测效果来确定持续获取的预测数据中是否出现超出预设阈值的分布状态变化。具体地,例如,监测单元130可获取初始机器学习模型组针对持续获取的预测数据的预测结果,通过将获取的预测结果与所述预测数据的真实结果进行比较来确定初始机器学习模型组针对所述预测数据的预测效果,并且根据确定的预测效果,确定是否出现超出阈值的分布状态变化。作为示例,监测单元可将预测效果的变化大小(例如,预测准确率的变化大小)与所述预设阈值进行比较来确定预测数据中是否出现超出所述预设阈值的分布状态变化。作为示例,监测单元130可从自动机器学习装置的预测单元(未示出)获取初始机器学习模型组针对持续获取的预测数据的预测结果。具体地,预测单元可利用初始机器学习模型组针对持续获取的预测数据执行预测以产生针对持续获取的预测数据的预测结果,并将产生的预测结果提供给监测单元130。

或者,可选地,监测单元130也可监测持续获取的预测数据的分布状态和初始机器学习模型组针对所述预测数据的预测效果两者,以确定是否出现超出预设阈值的分布状态变化,从而可综合分析上述两者的变化来获取更准确的关于预测数据中是否出现超出预设阈值的分布状态变化的确定结果。

在未出现超出预设阈值的分布状态变化的情况下,初始机器学习模型组无需被更新,并且初始机器学习模型组针对预测数据的预测结果可被提供给期望获得模型预测结果的实体。然而,在出现超出预设阈值的分布状态变化的情况下,更新单元140可自动更新初始机器学习模型组。根据示例性实施例,在出现超出预设阈值的分布状态变化的情况下,更新单元140可固定地使用或自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组。“固定地使用”可指:在出现超出阈值的分布状态变化的情况下,更新单元140可始终选择预定的多种更新方式中固定的一种更新方式来自动更新初始机器学习模型组。“自适应地使用”可指:在出现超出阈值的分布状态变化的情况下,更新单元140可自适应地在所述预定的多种更新方式之中选择相应的更新方式来自动更新初始机器学习模型组。根据示例性实施例,这里的预定的多种更新方式可包括以下更新方式:第一更新方式,重新训练新的机器学习模型组以替代初始机器学习模型组;第二更新方式,调整初始机器学习模型组中的各个机器学习模型的权重;或者第三更新方式,训练新的机器学习模型组并将新的机器学习模型组与初始机器学习模型组组合来构成更新后的机器学习模型组。然而,更新方式不限于此,例如,也可采用以下更新方式:删除初始机器学习模型组中预测效果低于阈值的部分机器学习模型而仅保留初始机器学习模型组中预测效果相对较高的部分机器学习模型,然后将保留的部分机器学习模型与重新训练的机器学习模型组进行组合来构成更新后的机器学习模型组。

根据示例性实施例,在以上第一更新方式中,更新单元140可利用基于至少一部分预测数据及其真实结果形成的训练数据,重新训练新的机器学习模型组。这里,所述至少一部分预测数据可以是预测数据获取单元120持续获取的全部预测数据,但不限于此,可选地,所述至少一部分预测数据也可以是持续获取的全部预测数据中的至少包括分布状态发生变化超出预设阈值的预测数据的一部分预测数据,而非持续获取的全部预测数据。这里,预测数据的真实结果可包括关于预测数据的真实标记(label)信息。作为示例,真实标记信息可包括从外部数据源获得的关于该预测数据的真实反馈信息。此外,作为示例,与先前获取初始机器学习模型组的方式相同,更新单元140也可采用自动机器学习方式重新训练新的机器学习模型组,并可根据新的机器学习模型组在上述训练数据上的预测效果,基于贪心算法确定新的机器学习模型组中各机器学习模型的权重。关于贪心算法,鉴于本领域技术人员均熟知其相关内容,因此,这里不再对贪心算法的具体细节进行赘述。

在第二更新方式中,更新单元140可根据初始机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果来调整初始机器学习模型组中的各个机器学习模型的权重。根据示例性实施例,所述至少一部分预测数据可包括分布状态变化超出预设阈值的预测数据或者持续获取的全部预测数据。需要说明的是,不同于第一更新方式,第二更新并不需要重新训练新的机器学习模型组,而仅是调整先前的初始机器学习模型组中的各个机器学习模型的权重来获得更新后的机器学习模型组。作为示例,更新单元140可通过评估初始机器学习模型组中的各个机器学习模型在上述观测数据上的预测效果表现来计算当初始机器学习模型组在上述观测数据上的预测效果最大化时各个机器学习模型的贡献程度,以确定各个机器学习模型的权重。

在第三种更新方式中,更新单元140可利用基于至少一部分预测数据及其真实结果形成的训练数据训练新的机器学习模型组,并且,通过将新的机器学习模型组与初始机器学习模型组组合,并根据组合后的机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果确定组合后的机器学习模型组中的各个机器学习模型的权重来构成更新后的机器学习模型组。也就是说,更新单元140可通过在初始机器学习模型组中引入新的机器学习模型组来构成更新后的机器学习模型组。具体地,更新单元140首先利用基于至少一部分预测数据及其真实结果形成的训练数据训练新的机器学习模型组。这里,所述至少一部分预测数据可包括分布状态变化超出预设阈值的预测数据或者持续获取的全部预测数据,并且第三种更新方式中利用训练数据训练新的机器学习模型组的方式可与以上提及的第一种更新方式中重新训练新的机器学习模型组的方式相同(例如,也可利用自动机器学习方式),因此,这里不再赘述。随后,更新单元140可将新的机器学习模型组与初始机器学习模型组组合,并根据组合后的机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果确定组合后的机器学习模型组中的各个机器学习模型的权重。这里,基于至少一部分预测数据及其真实结果形成的观测数据可与以上描述的基于至少一部分预测数据及其真实结果形成的训练数据完全相同或部分相同。另外,与其他更新方式类似,在第三种更新方式中,更新单元140也可基于贪心算法确定组合后的机器学习模型组中的各个机器学习模型的权重,这里不再赘述。

如上所述,更新单元140可自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组。具体而言,根据示例性实施例,更新单元140可至少根据与预测数据有关的信息自适应地在所述预定的多种更新方式之中选择相应的更新方式来自动更新初始机器学习模型组。这里,作为示例,与预测数据有关的信息可包括能够用于更新初始机器学习模型组的预测数据的数据量和/或与预测数据的分布状态变化相关的信息。如上所述,如果能够利用持续获取的全部预测数据来更新初始机器学习模型组,则能够用于更新初始机器学习模型组的预测数据的数据量可以是持续获取的全部预测数据的数据量。如果能够利用分布状态发生变化的预测数据来更新初始机器学习模型组,则能够用于更新初始机器学习模型组的预测数据的数据量可以是分布状态发生变化的预测数据的数据量。作为示例,与预测数据的分布状态变化相关的信息可包括预测数据的分布状态变化率和/或预测数据的分布状态变化的周期性。这里,预测数据的分布状态变化率可指预测数据的分布状态变化快慢,并且其可通过例如直接计算预测数据的分布状态在预定时间内的变化快慢而获得,或者,其也可通过计算机器学习模型组针对预测数据的预测效果的变化快慢而获得。预测数据的分布状态变化的周期性可指预测数据的分布状态是否是呈周期性变化的。

根据示例性实施例,假设所述预定的多种更新方式包括以上三种更新方式(即,第一更新方式、第二更新方式和第三更新方式),则在更新单元140自适应地选择相应的更新方式时,在数据量小于第一阈值且分布状态变化率大于第二阈值的情况下,更新单元140可选择第三更新方式;在数据量小于第一阈值且分布状态变化率小于第二阈值的情况下,更新单元140可选择第一更新方式;在数据量大于第一阈值且分布状态变化率小于第二阈值的情况下,更新单元140可选择第二更新方式;在数据量大于第一阈值且分布状态变化呈周期性的情况下,更新单元140可选择第二更新方式;在数据量大于第一阈值,分布状态变化率大于第二阈值,且分布状态变化不呈周期性的情况下,更新单元140可选择第三更新方式。这是因为,第一更新方式由于通常利用持续获取的全部预测数据来重新训练新的机器学习模型组,因此耗费的计算资源和时间往往较大,故如果数据量较小且分别状态变化较慢,则较适宜选择第一更新方式。第二更新方式由于并不需要重新训练新的机器学习模型组而只是调整初始机器学习模型组的权重,因此,耗费的计算资源和时间相对较小,故如果数据量较大且分布状态变化较慢,或者数据量较大且分布状态变化呈周期性,则较适应选择第二更新方式。第三更新方式由于在初始机器学习模型组中引入新的机器学习模型组,因此较适宜处理分布状态变化较快的情况。这里,第一阈值和第二阈值可根据机器学习的实际应用场景进行设置,本申请对此并无限制。

需要说明的是,尽管在示例性实施例中提及了以上自适应选择相应的更新方式的几种情况,但是本领域技术人员清楚的是,无论是自适应选择更新方式所依据的因素,还是自适应选择更新方式的具体选择策略均不限于以上示例。

更新后的机器学习模型组可用于继续针对预测数据获取单元120获取的预测数据执行预测,并且更新后的机器学习模型组针对预测数据的预测结果可被提供给监测单元130,以便于监测单元130根据所述预测结果和/或预测数据的分布状态变化确定预测数据中是否出现超出预设阈值的分布状态变化。在监测单元130确定预测数据中出现超出预设阈值的分布状态变化的情况下,更新单元140可如上所述固定地使用或自适应地使用预定的多种更新方式之一来自动更新当前的机器学习模型组。

此外,根据示例性实施例,自动机器学习装置100可部署在云端或本地。自动机器学习装置100可部署在例如公有云、私有云或混合云上,并可向期望获得相应预测结果的实体(例如,内容运营商)提供与预测数据有关的机器学习服务。可选地,自动机器学习装置100也可部署在本地,例如,内容运营商的本地系统。

需要说明的是,尽管以上在描述自动机器学习装置100时,为描述方便,将自动机器学习装置100划分为用于分别执行相应处理的单元(例如,初始机器学习模型组获取单元110、预测数据获取单元120、监测单元130和更新单元140),然而,本领域技术人员清楚的是,上述各单元执行的处理也可在自动机器学习装置100本身在不进行任何具体的单元划分或者各单元之间并无明确划界的情况下执行。此外,以上参照图1描述的自动机器学习装置100并不限于包括以上描述的单元,而是可根据需要增加一些单元,并且以上单元也可被组合。

根据本申请示例性实施例的自动机器学习装置可在自动机器学习过程中持续监测输入(例如,流入)的预测数据的分布状态变化,并根据监测结果不断地自动更新初始机器学习模型,使得持续更新的初始机器学习模型组始终能够提供较为准确的预测结果,从而进一步完善了目前的自动机器学习技术。此外,由于可在出现分布状态变化的情况下不断地自动更新初始机器学习模型组,因此,能够使预测数据的分布状态变化不断地被自动学习到,从而便于利用更新后的初始机器学习模型组针对新的预测数据提供更准确的预测结果。

以上,已经参照图1描述了根据本申请示例性实施例的自动机器学习装置100。在下文中,将参照图2和图3对根据本申请示例性实施例的执行自动机器学习的方法进行描述。

图2示出根据本申请示例性实施例的执行自动机器学习的方法的流程图。

这里,作为示例,图2所示的自动机器学习方法可由图1所示的自动机器学习装置100来执行,也可完全通过计算机程序以软件方式实现,还可通过特定配置的计算装置来执行。为了描述方便,假设图2所示的方法由图1所示的自动机器学习装置100来执行,并假设自动机器学习装置100可具有图1所示的配置。

参照图2,在步骤s210,初始机器学习模型组获取单元110可通过自动机器学习方式获取包括至少一个机器学习模型的初始机器学习模型组。以上,已经参照图1对自动机器学习方式以及初始机器学习模型组进行了描述,因此,这里不再赘述。作为示例,初始机器学习模型组获取单元110可通过自动机器学习方式,基于预先获取的训练数据来训练初始机器学习模型组。关于训练数据以及具体地训练初始机器学习模型组的方式,以上也已在参照图1描述初始机器学习模型组获取单元110的过程中进行过描述,这里不再赘述。

在步骤s220,预测数据获取单元120可持续获取预测数据。作为示例,预测数据获取单元120可通过手动、半自动或全自动的方式来不断获取预测数据。获取的预测数据可被预先处理为预定格式或形式,或者,可在被预测数据获取单元120获取之后被处理为预定格式或形式。例如,预测数据获取单元120可通过输入装置(例如,工作站)接收操作者(例如,来自期望获得预测结果的实体的操作者)手动持续输入的预测数据。或者,预测数据获取单元120可通过全自动的方式从数据源系统地持续获取预测数据,例如,通过以软件、固件、硬件或其组合实现的定时器机制来系统地请求数据源并从响应中得到所请求的预测数据。所述数据源可包括一个或多个数据库或服务器。预测数据获取单元120可经由内部网络和/或外部网络来实现预测数据的获取,而预测数据可以是经过加密的数据。在服务器、数据库、网络等被配置为彼此通信的情况下,可在没有人工干预的情况下自动进行预测数据的获取,但应注意,在这种方式下仍旧可存在一定的用户输入操作。例如,在接收到特定的用户输入的情况下,产生获取预测数据的请求。此外,每次获取到预测数据时,可根据需要将获取的预测数据存储在相应的存储介质中。作为示例,可利用数据仓库来存储持续获取的预测数据。

根据示例性实施例,获取的预测数据可用于形成与预测数据相应的预测样本,以参与初始机器学习模型组的预测过程。根据示例性实施例,在上述初始机器学习模型组中,各个机器学习模型针对预测数据提供的预测结果被进行加权求和以作为所述初始机器学习模型组针对预测数据的预测结果。

在步骤s230,监测单元130可监测持续获取的预测数据中是否出现超出预设阈值的分布状态变化。根据示例性实施例,在步骤s230,监测单元230可监测持续获取的预测数据的分布状态和/或初始机器学习模型组针对所述预测数据的预测效果,以确定是否出现超出预设阈值的分布状态变化。以上已经在参照图1关于监测单元的描述过程中,对分布状态变换、预设阈值以及预测效果等进行了介绍,因此,这里不再赘述。作为示例,在步骤s230,监测单元130可监测预测数据的联合概率分布状态的变化大小,并将该变换大小与预设阈值进行比较来确定预测数据中是否出现超出预设阈值的分布状态变化。作为另一示例,在步骤s230,监测单元130可获取初始机器学习模型组针对持续获取的预测数据的预测结果,通过将获取的预测结果与所述预测数据的真实结果进行比较来确定初始机器学习模型组针对所述预测数据的预测效果,并且根据确定的预测效果,确定是否出现超出阈值的分布状态变化。可选地,在步骤s230,监测单元130可监测持续获取的预测数据的分布状态和初始机器学习模型组针对所述预测数据的预测效果两者,并通过综合分析以上两者的变化来确定预测数据中是否出现超出预设阈值的分布状态变化。

在未出现超出预设阈值的分布状态变化的情况下,初始机器学习模型组无需被更新,预测数据获取单元120可继续获取新的预测数据。此外,初始机器学习模型组针对预测数据的预测结果可被提供给期望获得模型预测结果的实体。然而,在步骤s230监测单元130确定预测数据中出现超出预设阈值的分布状态变化的情况下,在步骤s240,更新单元140可自动更新初始机器学习模型组。

具体地,在步骤s240,在出现超出预设阈值的分布状态变化的情况下,更新单元140可固定地使用或自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组。根据示例性实施例,这里的预定的多种更新方式可包括以下更新方式:第一更新方式,重新训练新的机器学习模型组以替代初始机器学习模型组;第二更新方式,调整初始机器学习模型组中的各个机器学习模型的权重;或者第三更新方式,训练新的机器学习模型组并将新的机器学习模型组与初始机器学习模型组组合来构成更新后的机器学习模型组。然而,更新方式不限于此。

根据示例性实施例,在第一更新方式中,更新单元140可利用基于至少一部分预测数据及其真实结果形成的训练数据,重新训练新的机器学习模型组。作为示例,所述至少一部分预测数据可以是在步骤s120持续获取的全部预测数据。在第二更新方式中,更新单元140可根据初始机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果来调整初始机器学习模型组中的各个机器学习模型的权重。作为示例,所述至少一部分预测数据可包括分布状态变化超出预设阈值的预测数据或者持续获取的全部预测数据。在第三种更新方式中,更新单元140可利用基于至少一部分预测数据及其真实结果形成的训练数据训练新的机器学习模型组,并且,通过将新的机器学习模型组与初始机器学习模型组组合,并根据组合后的机器学习模型组在基于至少一部分预测数据及其真实结果形成的观测数据上的预测效果确定组合后的机器学习模型组中的各个机器学习模型的权重来构成更新后的机器学习模型组。作为示例,在第三种更新方式中,所述至少一部分预测数据可包括分布状态变化超出预设阈值的预测数据或者持续获取的全部预测数据。

如上所述,在步骤s240更新单元140可自适应地使用预定的多种更新方式之一来自动更新初始机器学习模型组。具体而言,根据示例性实施例,更新单元140可至少根据与预测数据有关的信息自适应地在所述预定的多种更新方式之中选择相应的更新方式来自动更新初始机器学习模型组。这里,与预测数据有关的信息可包括能够用于更新初始机器学习模型组的预测数据的数据量和/或与预测数据的分布状态变化相关的信息。作为示例,与预测数据的分布状态变化相关的信息可包括预测数据的分布状态变化率和/或预测数据的分布状态变化的周期性。

根据示例性实施例,假设所述预定的多种更新方式包括以上三种更新方式(即,第一更新方式、第二更新方式和第三更新方式),则在步骤s240,,在数据量小于第一阈值且分布状态变化率大于第二阈值的情况下,更新单元140可选择第三更新方式;在数据量小于第一阈值且分布状态变化率小于第二阈值的情况下,更新单元140可选择第一更新方式;在数据量大于第一阈值且分布状态变化率小于第二阈值的情况下,更新单元140可选择第二更新方式;在数据量大于第一阈值且分布状态变化呈周期性的情况下,更新单元140可选择第二更新方式;在数据量大于第一阈值,分布状态变化率大于第二阈值,且分布状态变化不呈周期性的情况下,更新单元140可选择第三更新方式。

以上在参照图1描述更新单元的过程中,已经对以上三种更新方式及其涉及的相关内容进行过介绍,因此,这里不再赘述。此外,需要说明的是,在步骤s240自适应地选择更新方式所依据的因素并不仅限于能够用于更新初始机器学习模型组的预测数据的数据量以及与预测数据的分布状态变化有关的信息,而是还可考虑与预测数据有关的其他信息,并且自适应选择更新方式的具体选择策略也可根据其他考虑因素而变化。

在步骤s240对初始机器学习模型组进行更新之后,更新后的机器学习模型组可用于继续针对预测数据获取单元120在步骤s220获取的预测数据执行预测,并且更新后的机器学习模型组针对预测数据的预测结果可被提供给监测单元130,从而监测单元130可继续执行步骤s230来确定预测数据中是否出现超出预设阈值的分布状态变化,而在出现超出预设阈值的分布状态变化的情况下,在步骤s240更新单元140可按照以上描述的自动更新初始机器学习模型组的方式来自动更新当前的机器学习模型组。如上所述的过程可持续进行,使得在自动机器学习中可始终考虑预测数据分布状态的变化并通过自动更新当前的机器学习模型组来不断地学习这种变化,从而使机器学习模型组能够针对新的预测数据提供更准确的预测结果。

需要说明的是,尽管以上在描述图2时,按顺序对图2中的步骤进行了描述,但是,本领域技术人员清楚的是,上述方法中的各个步骤不一定按顺序执行,而是也可并行地执行,例如,以上描述的步骤s220与步骤s230便可并行执行,也就是说,在监测单元230监测已经获取的预测数据中是否出现超出预设阈值的分布状态变化的同时,预测数据获取单元220仍然可持续获取新的预测数据。另外,在步骤s240自动更新初始机器学习模型期间,步骤s220也可被同时执行以持续获取预测数据。

根据本申请示例性实施例的自动机器学习方法可在自动机器学习过程中监测预测数据的分布状态变化,并在预测数据中出现超出预设阈值的分布状态变化的情况下自动更新初始机器学习模型,从而进一步完善了目前的自动机器学习技术。此外,由于通过以上监测操作和自动更新操作,使机器学习模型组能够不断自动学习到出现的预测数据的分布状态变化,因此,便于针对新的预测数据提供更准确的预测结果。

为便于更清楚地理解根据本申请示例性实施例的自动机器学习方法,以下参照图3更直观地对自动机器学习方法的示例性过程进行简要描述。

图3是示出根据本申请示例性实施例的执行自动机器学习的方法的示意图。

在图3示出的示例性实施例中,假设仅通过监测初始机器学习模型组针对预测数据的预测效果来确定预测数据中是否出现超出预设阈值的分布状态变化。但是,应清楚的是,如上参照图2所述,在本申请中,也可直接监测持续获取的预测数据的分布状态来确定预测数据中是否出现超出预设阈值的分布状态变化,或者,可监测持续获取的预测数据的分布状态和初始机器学习模型组针对预测数据的预测效果两者来确定是否出现超出预设阈值的分布状态变化。

如图3所示,首先,初始机器学习模型组获取单元110可获取训练数据,并通过automl方式基于获取的训练数据训练出初始机器学习模型组。随后,预测数据获取单元120持续地获取预测数据。这里,获取的预测数据可每隔预定时间被输入到初始机器学习模型组,以利用初始机器学习模型组针对预测数据执行预测。接下来,初始机器学习模型组针对预测数据的预测结果可被提供给监测单元130。随后,监测单元130可根据初始机器学习模型组针对预测数据的预测效果(例如,预测准确率)确定预测数据中是否出现分布状态变化超出预设阈值的分布状态变化。具体地,例如,监测单元130可通过将获取的预测结果与所述预测数据的真实结果进行比较来确定初始机器学习模型组针对所述预测数据的预测效果,并且根据确定的预测效果,确定是否出现超出阈值的分布状态变化。在未出现超出预设阈值的分布状态变化的情况下,预测数据获取单元120继续获取预测数据。在出现超出预设阈值的分布状态变化的情况下,更新单元140可自动更新初始机器学习模型组。更新后的机器学习模型组可继续针对预测数据获取单元120获取的预测数据执行预测。这样的过程可被重复执行,使得每当监测到持续获取的预测数据中出现超出预设阈值的分布状态变化,便可自动更新机器学习模型组,从而不断地自动学习预测数据的分布状态变化,从而使机器学习模型组能够针对新的预测数据提供更准确的预测结果。

以上已参照图1至图3描述了根据本申请示例性实施例的执行自动机器学习的装置和方法。然而,应理解的是:图1所示出的装置及其单元可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些装置或单元可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些装置或单元所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。

此外,上述方法可通过记录在计算可读介质上的程序来实现,例如,根据本申请示例性实施例,可提供一种用于执行自动机器学习的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:通过自动机器学习方式获取包括至少一个机器学习模型的初始机器学习模型组;持续获取预测数据;监测持续获取的预测数据中是否出现超出预设阈值的分布状态变化;在出现超出阈值的分布状态变化的情况下,自动更新初始机器学习模型组。

上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经在参照图2进行相关方法的描述过程中提及,因此这里为了避免重复将不再进行赘述。

应注意,根据本申请示例性实施例的自动机器学习装置可完全依赖计算机程序的运行来实现相应的功能,即,各个单元在计算机程序的功能架构中与各步骤相应,使得整个装置通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。

另一方面,图1所示的装置或单元也可以通过硬件、软件、固件、中间件、微代码或其任意组合来实现。当以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。

例如,本申请的示例性实施例还可以实现为计算装置,该计算装置包括存储部件和处理器,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行包括以下步骤的方法:通过自动机器学习方式获取包括至少一个机器学习模型的初始机器学习模型组;持续获取预测数据;监测持续获取的预测数据中是否出现超出预设阈值的分布状态变化;在出现超出阈值的分布状态变化的情况下,自动更新初始机器学习模型组。

具体说来,所述计算装置可以部署在服务器或客户端中,也可以部署在分布式网络环境中的节点装置上。此外,所述计算装置可以是pc计算机、平板装置、个人数字助理、智能手机、web应用或其他能够执行上述指令集合的装置。

这里,所述计算装置并非必须是单个的计算装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。计算装置还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。

在所述计算装置中,处理器可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。

根据本申请示例性实施例的执行自动机器学习的方法中所描述的某些操作可通过软件方式来实现,某些操作可通过硬件方式来实现,此外,还可通过软硬件结合的方式来实现这些操作。

处理器可运行存储在存储部件之一中的指令或代码,其中,所述存储部件还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。

存储部件可与处理器集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储部件可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储部件和处理器可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器能够读取存储在存储部件中的文件。

此外,所述计算装置还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。计算装置的所有组件可经由总线和/或网络而彼此连接。

根据本申请示例性实施例的执行自动机器学习的方法所涉及的操作可被描述为各种互联或耦合的功能块或功能示图。然而,这些功能块或功能示图可被均等地集成为单个逻辑装置或按照非确切的边界进行操作。

以上已经结合示例性实施例描述了根据本申请的执行自动机器学习的方法和装置,其可广泛应用于数据非独立同分布的任何机器学习场景,例如,这些机器学习场景可以是诸如在线内容(诸如,新闻、广告、音乐等)推荐、信用卡欺诈检测、异常行为检测、智能营销、智能投资顾问、网络流量分析等的机器学习场景。

尽管以上描述了本申请的示例性实施例,但是应理解:上述描述仅是示例性的,并非穷尽性的。本申请不限于所披露的各示例性实施例,并且在不偏离本申请的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本申请的保护范围应该以权利要求的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1