模型训练方法、装置、存储介质及电子设备与流程

文档序号:30096181发布日期:2022-05-18 10:56阅读:132来源:国知局
模型训练方法、装置、存储介质及电子设备与流程

1.本公开涉及机器学习技术领域,具体地,涉及一种模型训练方法、装置、存储介质及电子设备。


背景技术:

2.随着机器学习技术的不断发展,各种各样的机器学习模型被应用到实际业务场景中,比如通过机器学习模型在客户端进行业务预测,为用户提供更智能的服务。
3.相关技术中,机器学习模型通常需要预先训练,然后将训练后的模型加载到客户端进行业务预测。在模型的训练过程中,通常需要开发人员先学习机器学习相关的知识,然后人工编写特征抽取、模型训练等代码,学习成本较高,且需要耗费较多的人力和时间,模型训练的效率不高。


技术实现要素:

4.提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
5.第一方面,本公开提供一种模型训练方法,所述方法包括:
6.显示对机器学习模型的训练配置界面,所述训练配置界面用于供用户配置所述机器学习模型的自动训练内容;
7.响应于所述用户在所述训练配置界面的埋点输入操作,确定所述埋点输入操作对应的目标埋点信息,并将所述目标埋点信息发送给后端服务器,以触发所述后端服务器通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;
8.响应于所述用户在所述训练配置界面的训练触发操作,向所述后端服务器发送训练指令,以触发所述后端服务器基于所述训练数据对所述机器学习模型进行训练。
9.第二方面,本公开提供一种模型训练方法,所述方法包括:
10.接收目标埋点信息,所述目标埋点信息是基于用户在训练配置界面的埋点输入操作而确定的;
11.通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;
12.接收训练指令,所述训练指令是基于所述用户在所述训练配置界面的训练触发操作而生成的;
13.响应于所述训练指令,基于所述训练数据对所述机器学习模型进行训练。
14.第三方面,本公开提供一种模型训练装置,所述装置包括:
15.第一显示模块,用于显示对机器学习模型的训练配置界面,所述训练配置界面用于供用户配置所述机器学习模型的自动训练内容;
16.第一确定模块,用于响应于所述用户在所述训练配置界面的埋点输入操作,确定所述埋点输入操作对应的目标埋点信息,并将所述目标埋点信息发送给后端服务器,以触发所述后端服务器通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;
17.第一发送模块,用于响应于所述用户在所述训练配置界面的训练触发操作,向所述后端服务器发送训练指令,以触发所述后端服务器基于所述训练数据对所述机器学习模型进行训练。
18.第四方面,本公开提供一种模型训练装置,所述装置包括:
19.第一接收模块,用于接收目标埋点信息,所述目标埋点信息是基于用户在训练配置界面的埋点输入操作而确定的;
20.获取模块,用于通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;
21.第二接收模块,用于接收训练指令,所述训练指令是基于所述用户在所述训练配置界面的训练触发操作而生成的;
22.训练模块,用于响应于所述训练指令,基于所述训练数据对所述机器学习模型进行训练。
23.第五方面,本公开提供一种非临时性计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现第一方面或第二方面中所述方法的步骤。
24.第六方面,本公开提供一种电子设备,包括:
25.存储装置,其上存储有计算机程序;
26.处理装置,用于执行所述存储装置中的所述计算机程序,以实现第一方面或第二方面中所述方法的步骤。
27.通过上述技术方案,将应用于移动终端的模型的训练流程模板化,用户可以在训练配置界面的埋点输入操作和训练触发操作,从而实现自动化的特征抽取、模型训练等,无需用户学习机器学习相关的知识,可以减少模型训练过程中耗费的人力和时间,简化用户操作,提高模型训练效率。
28.本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
29.结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。在附图中:
30.图1是根据本公开一示例性实施例示出的一种模型训练方法的流程图;
31.图2是根据本公开另一示例性实施例示出的一种模型训练方法的流程图;
32.图3是根据本公开另一示例性实施例示出的一种模型训练方法中交互过程示意图;
33.图4是根据本公开一示例性实施例示出的一种模型训练装置的框图;
34.图5是根据本公开另一示例性实施例示出的一种模型训练装置的框图;
35.图6是根据本公开一示例性实施例示出的一种电子设备的框图。
具体实施方式
36.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
37.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
38.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。另外,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
39.本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
40.正如背景技术所言,相关技术中机器学习模型通常需要预先训练,然后将训练后的模型加载到客户端进行业务预测。在模型的训练过程中,通常需要开发人员先学习机器学习相应知识,然后人工编写特征抽取、模型训练等代码,学习成本较高,且需要耗费较多的人力和时间,模型训练的效率不高。
41.有鉴于此,本公开提供一种模型训练方法,将应用于移动终端的模型的训练流程模板化,实现自动化的特征抽取、模型训练等,从而减少模型训练过程中耗费的人力和时间,提高模型训练效率。
42.首先应当说明的是,本公开实施例中涉及的用户数据均是指经过用户授权后获取到的。比如,在用户使用应用程序的过程中,通过弹窗等方式提示用户是否授权应用程序获取自身相关数据用于业务预测模型的训练,并询问用户允许应用程序获取自身的哪些数据。在得到用户的确认后,可以获取对应的用户数据作为训练数据进行模型的自动训练。
43.图1是根据本公开一示例性实施例示出的一种模型训练方法的流程图。参照图1,该模型训练方法可以应用于前端显示设备,包括:
44.步骤101,显示对机器学习模型的训练配置界面。该训练配置界面用于供用户配置机器学习模型的自动训练内容。
45.步骤102,响应于用户在训练配置界面的埋点输入操作,确定埋点输入操作对应的目标埋点信息,并将目标埋点信息发送给后端服务器,以触发后端服务器通过埋点信息从业务系统对应的数据仓库中获取用于训练机器学习模型的训练数据。
46.步骤103,响应于用户在训练配置界面的训练触发操作,向后端服务器发送训练指令,以触发后端服务器基于训练数据对机器学习模型进行训练。
47.示例地,训练配置界面可以供用户配置机器学习模型的自动训练内容,比如配置自动训练过程中输入机器学习模型的特征数据、该特征数据对应的标注数据、待训练的机器学习模型的类型、训练指标、以及训练后的机器学习模型进行业务预测的时刻点(即决策点)等与模型训练相关的内容,实际应用中可以根据需求在训练配置界面进行相应的配置。
48.在可能的方式中,训练配置界面显示有预设特征埋点和预设标注埋点,步骤102可以是:响应于用户对预设特征埋点的第一选择操作,确定所第一选择操作对应的特征埋点信息,并响应于用户对预设标注埋点的第二选择操作,确定第二选择操作对应的标注埋点信息,然后将特征埋点信息和标注埋点信息作为目标埋点信息。其中,特征埋点信息被用于后端服务器获取训练过程中输入机器学习模型的特征数据,标注埋点信息被用于后端服务器获取数据作为特征数据对应的训练标签。
49.应当理解的是,机器学习模型的训练数据通常包括样本数据以及样本数据对应的训练标签,该训练标签可以表征样本数据的实际数据结果(比如数据分类模型的训练,该实际数据结果为样本数据的实际分类结果)。训练过程通常是:先获取样本数据,然后将样本数据输入机器学习模型,得到机器学习模型针对该样本数据的预测数据结果(比如数据分类模型的训练,该预测数据结果为样本数据的预测分类结果)。之后,可以根据预测分类结果和训练标签计算损失函数,该损失函数表征预测分类结果和训练标签之间的差异。最后根据损失函数的结果调整机器学习模型的参数,从而使得预测分类结果与训练标签越来越接近。由此,完成对机器学习模型的训练。
50.因此,本公开实施例响应于用户对预设特征埋点的第一选择操作,确定第一选择操作对应的特征埋点信息,从而通过该特征埋点信息获取训练过程输入机器学习模型的特征数据。类似地,本公开实施例响应于用户对预设标注埋点的第二选择操作,确定第二选择操作对应的标注埋点信息,从而通过该标注埋点信息获取特征数据对应的训练标签。其中,预设特征埋点和预设标注埋点可以通过列表等形式显示在训练配置界面,供用户选择,本公开实施例对此不作限定。
51.另外应当理解的是,数据埋点是数据采集的一种方式,当用户的行为满足某种条件的时候,比如进入某个页面、点击某个按钮等,自动触发记录和存储用户数据。本公开实施例中,在得到用户授权后,可以基于用户输入的目标埋点信息和预设数据代码获取用户数据进行模型训练,减少模型训练过程中用于获取训练数据的人力和时间。
52.示例地,目标埋点信息可以是用户进入某个页面或点击某个按钮等事件信息,本公开实施例对此不作限定。比如,目标埋点信息为用户进行页面点击操作,则可以调用对应的预设数据代码统计用户进行页面点击操作的次数。
53.示例地,可以在训练配置界面显示多个预设特征埋点和多个预设标注埋点,每一预设特征埋点对应一预设数据代码,且每一预设标注埋点对应一预设数据代码。由此,用户在训练配置界面选择任意预设特征埋点后,可以基于该预设特征埋点对应的特征埋点信息触发后端服务器调用对应的预设数据代码,从而得到特征数据。或者,用户在训练配置界面选择任意预设标注埋点后,可以基于该预设标注埋点对应的标注埋点信息触发后端服务器调用预设数据代码,从而得到特征数据对应的训练标签。
54.由此,可以实现自动化的数据获取,减少用于训练数据获取的人力和时间,简化模型训练过程,提高模型训练效率。并且,可以自动从业务系统的数据仓库获取训练数据,减少离线训练过程与线上应用过程中数据获取不一样的情况,使得训练后的机器学习模型能更好满足实际业务需求,提升训练后机器学习模型的业务预测准确性。
55.在实际应用中,训练配置界面显示的预设特征埋点和预设标注埋点中可能没有实际训练所需的埋点。因此,在可能的方式中,步骤102还可以是:响应于用户在训练配置界面
的埋点添加操作,确定埋点添加操作对应的埋点参数信息为目标埋点信息,该埋点参数信息被用于后端服务器结合预设代码模板生成目标数据代码,目标数据代码用于从数据仓库中获取用于训练机器学习模型的训练数据。
56.也即是说,本公开实施例还提供埋点添加操作,以更好的适应不同训练场景下的训练需求。并且,通过埋点添加操作和预设代码模板生成目标数据获取代码,可以避免每次训练过程中人工编写复杂的数据获取代码,简化操作,提高训练效率。
57.示例地,预设代码模板可以是通过分析常用的特征抽取代码(即埋点代码)而得到的。比如,总结常用的特征抽取逻辑为:
58.统计型特征:统计过去x分钟内,用户发送xx事件行为的个数;
59.类别型特征:统计过去x条用户的xx埋点事件的某个离散属性值(比如过去播放的3条视频类型);
60.原始型特征:统计过去x条用户的xx埋点事件的某个连续属性值(比如过去播放的3条视频时长)。
61.对应地,预设代码模板可以如下所示:
[0062][0063][0064]
其中,“count_feature”代码部分为用于获取统计型特征的预设代码模板,“category_feature”代码部分为用于获取类别型特征的预设代码模板,“category_feature”代码部分为用于获取原始型特征的预设代码模板,均包括多个待配置项(即上述内容值为“xxx”的部分)。用户可以通过埋点添加操作,输入填充到对应待配置项的埋点参数信息,从而得到目标数据获取代码进行自动化的数据获取。
[0065]
在可能的方式中,训练配置界面还可以显示有预设决策信息。相应地,还可以响应于用户对预设决策信息的第三选择操作,确定第三选择操作对应的决策信息,并将决策信息发送给后端服务器,该后端服务器用于对训练后的机器学习模型添加决策信息,该决策信息用于指示训练后的机器学习模型在移动终端进行业务预测的触发时刻。
[0066]
也即是说,本公开实施例在训练机器学习模型之前,还可以通过训练配置界面配置通过训练后的机器学习模型进行业务预测的时刻信息,即配置训练后的机器学习模型加载到移动终端后什么时候进行业务预测。由此,无需开发人员编写复杂的代码进行添加,可以简化操作,提高训练效率。
[0067]
示例地,决策信息可以是用户自定义输入的,或者可以在训练配置界面显示预设决策信息,然后根据用户对任意预设决策信息的选择操作,确定对应的决策信息,本公开实施例不作限定,可以根据需求进行配置。
[0068]
通过上述方式,在训练配置界面进行选择特征埋点、选择标注埋点、选择决策信息等配置操作后,相当于完成了数据配置工作,之后可以将配置的数据(包括目标埋点信息和决策信息)发送给后端服务器。由此,在向后端服务器发送训练指令后,可以触发后端服务器基于目标埋点信息从业务系统对应的数据仓库中获取用于对应的训练数据进行自动模型训练,并在训练后对机器学习模型添加决策信息。
[0069]
在可能的方式中,在响应于用户在训练配置界面的训练触发操作,向后端服务器发送训练指令之前,还可以显示后端服务器发送的数据分析报告,该数据分析报告由后端服务器基于训练数据生成,且数据分析报告包括用于指示训练数据中是否存在异常数据的结果指示信息。
[0070]
例如,在获取到训练数据后,通过pandas等数据分析工具对训练数据进行数据分析,生成数据分析报告。该数据分析过程可以确定获取到的训练数据中是否存在异常数据。数据分析报告可以包括训练数据、用于指示训练数据中是否存在异常数据的结果指示信息以及其他数据分析结果,本公开实施例对此不作限定。
[0071]
由此,用户可以基于数据分析报告确定训练数据中不存在异常数据时,可以在训练配置界面进行训练触发操作。反之,用户可以在基于数据分析报告确定训练数据中存在异常数据时,不进一步触发模型训练,从而保证模型训练结果的准确性。
[0072]
在可能的方式中,训练配置界面中显示有多个预设机器学习模型的类型信息,还可以响应于用户对多个预设机器学习模型的类型信息的第四选择操作,确定第四选择操作对应的目标类型信息。相应地,步骤103可以是:响应于用户在训练配置界面的训练触发操作,向后端服务器发送包括目标类型信息的训练指令,后端服务器用于通过目标类型信息调用对应的机器学习模型,并基于训练数据训练所述机器学习模型。
[0073]
示例地,预设机器学习模型可以包括相关技术中不同类型的多个机器学习模型,比如可以包括xgboost树模型等,以更好地适应不同训练场景。预设机器学习模型可以具有默认的模型参数,该默认的模型参数可以是随机设置的,或者可以是基于历史训练场景确
定的,本公开实施例对此不作限定。
[0074]
由此,可以预先为用户提供多种预设机器学习模型,便于用户根据实际训练需求选择对应的机器学习模型进行训练,无需在每次训练过程中人工编写对应的代码来加载机器学习模型进行训练,从而提高模型训练效率。
[0075]
在可能的方式中,在步骤103之后还可以显示后端服务器发送的模型训练结果。然后响应于用户基于模型训练结果对算法包的上线操作,向后端服务器发送上传指令,以触发后端服务器将所述算法包上传到目标平台,以供移动终端下载算法包进行业务预测,其中算法包由后端服务器基于训练后的机器学习模型和预设算法模板生成,且算法包用于加载训练后的机器学习模型供移动终端进行业务预测。
[0076]
示例地,模型训练结果可以包括用于评估机器学习模型性能的准确率(accuracy)、精确率(precision)、召回率(recall)、auc(area under curve)值等,本公开实施例不作限定。将模型训练结果显示在训练配置界面中,用户可以根据该模型训练结果确定是否对机器学习模型进行重新训练。若用户认为这些模型训练结果无法满足实际训练需求,则可以在训练配置界面中再次触发模型训练,即可以再次执行上述步骤102和步骤103。反之,若用户认为这些模型训练结果可以满足实际训练需求,则可以进一步将训练后的机器学习模型加载到移动终端,以便在移动终端通过训练后的机器学习模型进行业务预测。
[0077]
应当理解的是,在训练机器学习模型后,后端服务器可以将该机器学习模型存储到分布式文件系统hdfs或者上传到模型汇总平台。因此,在可能的方式中,模型训练结果还可以包括机器学习模型的hdfs存储路径和/或模型汇总平台的访问地址信息,以便后续根据hdfs存储路径和/或访问地址信息获取训练后的机器学习模型,无需再重新进行模型训练。
[0078]
应当理解的是,实际应用中,移动终端想要通过训练后的机器学习模型进行业务预测,通常需要人工编写对应的模型调用代码,从而将调用的机器学习模型加载到移动终端,过程复杂。而本公开实施例中,在训练机器学习模型后,后端服务器可以基于训练后的机器学习模型和预设算法模板自动生成算法包。该算法包内置有加载训练后的所述机器学习模型的代码,从而移动终端安装该算法包则可以将训练后的机器学习模型加载到本地,无需人工编写模型调用代码,可以简化操作,提高模型调用效率。
[0079]
由此,在用户侧,当显示模型训练结果后,可以响应于用户对算法包的上线操作,向后端服务器发送上传指令,以触发后端服务器将算法包上传到目标平台,所述目标平台用于供移动终端下载算法包进行业务预测。
[0080]
示例地,目标平台可以是集成有训练配置界面的平台,或者可以是用户指定的其他平台,本公开实施例对此不作限定。预设算法模板为适用于移动终端的模型调用模板,该模型调用模板可以包括模型标识信息对应的待配置项。在训练机器学习模型后,后端服务器可以基于训练后的机器学习模型的模型标识信息填充该待配置项,生成算法包。之后,为了更方便地供移动终端下载算法包进行业务预测,后端服务器可以响应于上传指令将该算法包上传到目标平台。
[0081]
应当理解的是,除了响应于用户对算法包的上传操作进行上传外,本公开实施例还提供自动上传的方式,即后端服务器可以响应于对算法包的生成自动触发对算法包的上
传操作。由此,本公开实施例可以通过自动或用户手动两种方式控制算法包的上线。
[0082]
在可能的方式中,还可以响应于用户对算法包的验证操作,向后端服务器发送验证指令,以触发后端服务器将验证操作包括的目标数据输入已训练的机器学习模型。之后,可以显示后端服务器发送的、机器学习模型对目标数据的输出结果。
[0083]
由此,可以在算法包上线之前,先验证算法包对应的机器学习模型的结果是否正确,从而保证移动终端通过下载该算法包进行业务预测的准确性。
[0084]
当然,在可能的方式中,除了用户手动触发验证的方式外,还可以通过后端服务器进行自动验证,比如后端服务器响应于算法包的生成自动触发验证操作。由此,本公开实施例可以通过自动或用户手动两种方式对算法包进行正确性验证。应当理解的是,在自动触发的场景下,若在上传操作之前进行验证操作,则该验证操作可以是响应于算法包的生成自动触发的,该上传操作可以是响应于正确性验证通过而自动触发的。
[0085]
在将算法包上传目标平台后,移动终端通过接入目标平台对应的sdk(software development kit,软件开发工具包)可以获取到该算法包,从而执行该算法包内置的模型调用逻辑,加载对应的机器学习模型进行业务预测。并且,前文已有说明,可以对训练后的机器学习模型添加决策信息,因此在可能的方式中,还可以在生成算法包后对该算法包添加决策信息,从而可以在不同的业务决策时刻运行该算法包,以加载对应的机器学习模型进行业务预测。
[0086]
基于同一构思,本公开实施例还提供一种模型训练方法,应用于后端服务器,参照图2,该方法包括:
[0087]
步骤201,接收目标埋点信息,该目标埋点信息是基于用户在训练配置界面的埋点输入操作而确定的。
[0088]
步骤202,通过目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据。
[0089]
步骤203,接收训练指令,该训练指令是基于用户在训练配置界面的训练触发操作而生成的。
[0090]
步骤204,响应于训练指令,基于训练数据对机器学习模型进行训练。
[0091]
在可能的方式中,步骤201可以是:接收特征埋点信息和标注埋点信息,其中特征埋点信息是用户对训练配置界面显示的预设特征埋点的第一选择操作而确定的,标注埋点信息是用户对训练配置界面显示的预设标注埋点的第二选择操作而确定的。相应地,步骤202可以是,基于特征埋点信息从业务系统对应的数据仓库获取输入机器学习模型的特征数据,并基于标注埋点信息从业务系统对应的数据仓库获取数据作为特征数据对应的训练标签。
[0092]
在可能的方式中,目标埋点信息是基于用户在训练配置界面的埋点添加操作而确定的埋点参数信息,则步骤202可以是:基于所述埋点参数信息和预设代码模板生成目标数据代码,并通过目标数据代码从数据仓库中获取用于训练机器学习模型的训练数据。
[0093]
在可能的方式中,后端服务器还可以接收决策信息,该决策信息是基于用户对预设决策信息的第三选择操作而确定的,且该决策信息用于指示训练后的机器学习模型在移动终端进行业务预测的触发时刻。然后,对训练后的机器学习模型添加决策信息。
[0094]
在可能的方式中,在步骤202之后,还可以基于训练数据生成数据分析报告,并将
所述数据分析报告发送给前端显示设备进行显示,其中所述数据分析报告包括用于指示训练数据中是否存在异常数据的结果指示信息。
[0095]
在可能的方式中,步骤203可以是接收包括目标类型信息的训练指令,所述目标类型信息是基于用户对多个预设机器学习模型的类型信息的第四选择操作而确定的。相应地,步骤204可以是响应于训练指令,通过所述训练指令包括的目标类型信息调用对应的机器学习模型,并基于训练数据训练机器学习模型。
[0096]
在可能的方式中,后端服务器还可以在基于训练数据对所述机器学习模型进行训练后,向前端显示设备发送模型训练结果,并基于训练后的机器学习模型和预设算法模板生成算法包,该算法包用于加载训练后的机器学习模型供移动终端进行业务预测然后。接收针对算法包的上传指令,该上传指令是由用户基于模型训练结果触发的算法包上传操作而生成的。然后响应于上传指令将算法包上传到目标平台,该目标平台用于供移动终端下载算法包进行业务预测。
[0097]
在可能的方式中,后端服务器还可以接收验证指令,该验证指令是基于用户对算法包的验证操作而生成的。然后响应于该验证指令,将验证操作包括的目标数据输入已训练的机器学习模型,并向前端显示设备发送机器学习模型对所述目标数据的输出结果。
[0098]
在可能的方式中,考虑到移动终端所需的机器学习模型的尺寸与通过后端服务器自动训练的机器学习模型的尺寸有所差异,后端服务器还可以在基于训练数据对机器学习模型进行训练后,对机器学习模型进行模型转换,以减小机器学习模型的尺寸。
[0099]
由此,在机器学习模型训练完成后,后端服务器可以自动对训练后的机器学习模型进行模型转换,使得训练后的机器学习模型更好的适配移动终端。并且,通过减小训练后的机器学习模型的尺寸,可以减少移动终端在通过机器学习模型进行业务预测时的计算资源,提高业务预测的效率。
[0100]
应当理解的是,后端服务器侧的相关执行过程可以参照前文中对前端显示设备的说明部分,这里不再赘述。
[0101]
下面通过另一示例性实施例对本公开提供的模型训练方法中前端显示设备与后端服务器之间的交互进行说明。
[0102]
参照图3,本公开实施例提供的模型训练方法可以集成于端智能策略平台,该平台可以向用户提供可视化的前端界面(即训练配置界面),同时该平台配置有对应的后端服务。由此,基于用户在前端显示设备中前端界面的可视化操作调用后端服务器中的后端服务,可以通过简单的可视化操作实现对机器学习模型的自动训练。
[0103]
首先,用户可以在前端界面进行编辑输入和标注埋点,即可以确定目标埋点信息。之后,触发后端服务开启离线数据流任务,即触发后端服务通过目标埋点信息从业务系统对应的数据仓库中获取用于训练机器学习模型的训练数据。参照图3,在该过程中,后端服务可以从业务系统对应的数据仓库中捞取原始数据,然后基于该原始数据抽取特征数据和标注数据作为训练数据。
[0104]
然后,后端服务可以基于该训练数据进行样本数据分析,并将分析结果以报表的形式展示在前端界面。由此,用户可以查看数据分析报告,从而确定是否触发模型训练。若用户确定触发模型训练,则可以在前端界面通过点击开始控件等进行训练触发操作,以触发后端服务开启自动化模型训练任务。相应地,后端服务可以通过由目标埋点信息获取到
的训练数据进行模型训练,并生成算法包。
[0105]
之后,后端服务可以响应于算法包的生成,返回算法包链接,即在该端智能策略平台的前端界面显示该算法包链接,从而用户可以通过点击该算法包链接访问到实际的算法包,进而下载该算法包到移动终端进行业务预测。或者,在生成算法包后,可以响应于用户在前端界面触发的上线操作,将该算法包上传到目标平台,以供移动终端下载该算法包进行业务预测。由此,客户端在开发过程中,可以通过接入该算法包进行业务预测,无需开发人员编写过多的模型调用代码加载训练后的机器学习模型,简化了操作,提高了机器学习模型的训练效率。
[0106]
基于同一构思,本公开还提供一种模型训练装置,该装置可以通过软件、硬件或者两者的结合成为电子设备的部分或全部。参照图4,该模型训练装置400包括:
[0107]
第一显示模块401,被配置为显示对机器学习模型的训练配置界面,所述训练配置界面用于供用户配置所述机器学习模型的自动训练内容;
[0108]
第一确定模块402,被配置为响应于所述用户在所述训练配置界面的埋点输入操作,确定所述埋点输入操作对应的目标埋点信息,并将所述目标埋点信息发送给后端服务器,以触发所述后端服务器通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;
[0109]
第一发送模块403,被配置为响应于所述用户在所述训练配置界面的训练触发操作,向所述后端服务器发送训练指令,以触发所述后端服务器基于所述训练数据对所述机器学习模型进行训练。
[0110]
可选地,所述训练配置界面显示有预设特征埋点和预设标注埋点,所述第一确定模块402用于:
[0111]
响应于所述用户对所述预设特征埋点的第一选择操作,确定所述第一选择操作对应的特征埋点信息,并响应于所述用户对所述预设标注埋点的第二选择操作,确定所述第二选择操作对应的标注埋点信息;
[0112]
将所述特征埋点信息和所述标注埋点信息作为目标埋点信息。
[0113]
其中,所述特征埋点信息被用于所述后端服务器获取输入所述机器学习模型的特征数据,所述标注埋点信息被用于所述后端服务器获取数据作为所述特征数据对应的训练标签。
[0114]
可选地,所述第一确定模块402用于:
[0115]
响应于所述用户在所述训练配置界面的埋点添加操作,确定所述埋点添加操作对应的埋点参数信息为目标埋点信息,所述埋点参数信息被用于所述后端服务器结合预设代码模板生成目标数据代码,所述目标数据代码用于从所述数据仓库中获取用于训练所述机器学习模型的训练数据。
[0116]
可选地,所述训练配置界面显示有预设决策信息,所述装置400还包括:
[0117]
第二确定模块,用于响应于所述用户对所述预设决策信息的第三选择操作,确定所述第三选择操作对应的决策信息,并将所述决策信息发送给所述后端服务器,所述后端服务器用于对训练后的机器学习模型添加决策信息,所述决策信息用于指示训练后的机器学习模型在移动终端进行业务预测的触发时刻。
[0118]
可选地,所述装置400还包括:
[0119]
第二显示模块,用于显示所述后端服务器发送的数据分析报告,所述数据分析报告由所述后端服务器基于所述训练数据生成,且所述数据分析报告包括用于指示所述训练数据中是否存在异常数据的结果指示信息。
[0120]
可选地,所述训练配置界面中显示有多个预设机器学习模型的类型信息,所述装置400还包括:
[0121]
第三确定模块,用于响应于所述用户对所述多个预设机器学习模型的类型信息的第四选择操作,确定所述第四选择操作对应的目标类型信息;
[0122]
所述第一发送模块403用于响应于所述用户在所述训练配置界面的训练触发操作,向所述后端服务器发送包括所述目标类型信息的训练指令,所述后端服务器用于通过所述目标类型信息调用对应的机器学习模型,并基于所述训练数据训练所述机器学习模型。
[0123]
可选地,所述装置400还包括:
[0124]
第三显示模块,用于在响应于所述用户在所述训练配置界面的训练触发操作,向所述后端服务器发送训练指令后,显示所述后端服务器发送的模型训练结果;
[0125]
第二发送模块,用于响应于所述用户基于所述模型训练结果触发的算法包上传操作,向所述后端服务器发送上传指令,以触发所述后端服务器将算法包上传到目标平台,所述目标平台用于供所述移动终端下载所述算法包进行业务预测,其中,所述算法包由所述后端服务器基于训练后的机器学习模型和预设算法模板生成,所述算法包用于加载训练后的所述机器学习模型供所述移动终端进行业务预测。
[0126]
可选地,所述装置400还包括:
[0127]
第三发送模块,用于响应于所述用户对所述算法包的验证操作,向所述后端服务器发送验证指令,以触发所述后端服务器将所述验证操作包括的目标数据输入已训练的机器学习模型;
[0128]
第四显示模块,用于显示所述后端服务器发送的、所述机器学习模型对所述目标数据的输出结果。
[0129]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0130]
基于同一构思,本公开实施例还提供一种模型训练装置,该装置可以通过软件、硬件或者两者结合的方式成为电子设备的部分或全部。参照图5,该模型训练装置500可以包括:
[0131]
第一接收模块501,用于接收目标埋点信息,所述目标埋点信息是基于用户在训练配置界面的埋点输入操作而确定的;
[0132]
获取模块502,用于通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;
[0133]
第二接收模块503,用于接收训练指令,所述训练指令是基于所述用户在所述训练配置界面的训练触发操作而生成的;
[0134]
训练模块504,用于响应于所述训练指令,基于所述训练数据对所述机器学习模型进行训练。
[0135]
可选地,所述第一接收模块501用于接收特征埋点信息和标注埋点信息,其中特征
埋点信息是用户对训练配置界面显示的预设特征埋点的第一选择操作而确定的,标注埋点信息是用户对训练配置界面显示的预设标注埋点的第二选择操作而确定的;
[0136]
所述获取模块502用于基于特征埋点信息从业务系统对应的数据仓库获取输入机器学习模型的特征数据,并基于标注埋点信息从业务系统对应的数据仓库获取数据作为特征数据对应的训练标签。
[0137]
可选地,目标埋点信息是基于用户在训练配置界面的埋点添加操作而确定的埋点参数信息,所述获取模块502用于:
[0138]
基于所述埋点参数信息和预设代码模板生成目标数据代码,并通过目标数据代码从数据仓库中获取用于训练机器学习模型的训练数据。
[0139]
可选地,所述装置500还包括:
[0140]
第三接收模块,用于接收决策信息,该决策信息是基于用户对预设决策信息的第三选择操作而确定的,且该决策信息用于指示训练后的机器学习模型在移动终端进行业务预测的触发时刻;
[0141]
添加模块,用于对训练后的机器学习模型添加决策信息。
[0142]
可选地,所述装置500还包括:
[0143]
生成模块,用于在通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据之后,基于训练数据生成数据分析报告;
[0144]
第四发送模块,用于将所述数据分析报告发送给前端显示设备进行显示,其中所述数据分析报告包括用于指示训练数据中是否存在异常数据的结果指示信息。
[0145]
可选地,所述第二接收模块503用于接收包括目标类型信息的训练指令,所述目标类型信息是基于用户对多个预设机器学习模型的类型信息的第四选择操作而确定的;
[0146]
所述训练模块504用于响应于训练指令,通过所述训练指令包括的目标类型信息调用对应的机器学习模型,并基于训练数据训练机器学习模型。
[0147]
可选地,所述装置500还包括:
[0148]
第五发送模块,用于在基于训练数据对所述机器学习模型进行训练后,向前端显示设备发送模型训练结果,并基于训练后的机器学习模型和预设算法模板生成算法包,该算法包用于加载训练后的机器学习模型供移动终端进行业务预测然后;
[0149]
第四接收模块,用于接收针对算法包的上传指令,该上传指令是由用户基于模型训练结果触发的算法包上传操作而生成的;
[0150]
上传模块,用于响应于上传指令将算法包上传到目标平台,该目标平台用于供移动终端下载算法包进行业务预测。
[0151]
可选地,所述装置500还包括:
[0152]
第五接收模块,用于接收验证指令,该验证指令是基于用户对算法包的验证操作而生成的;
[0153]
验证模块,用于响应于该验证指令,将验证操作包括的目标数据输入已训练的机器学习模型,并向前端显示设备发送机器学习模型对所述目标数据的输出结果。
[0154]
可选地,所述装置500还包括:
[0155]
转换模块,用于在基于训练数据对机器学习模型进行训练后,对机器学习模型进行模型转换,以减小机器学习模型的尺寸。
[0156]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0157]
基于同一构思,本公开还提供一种非临时性计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现上述任一模型训练方法的步骤。
[0158]
基于同一构思,本公开实施例还提供一种电子设备,包括:
[0159]
存储装置,其上存储有计算机程序;
[0160]
处理装置,用于执行所述存储装置中的所述计算机程序,以实现上述任一模型训练方法的步骤。
[0161]
下面参考图6,其示出了适于用来实现本公开实施例的电子设备600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0162]
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储装置608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
[0163]
通常,以下装置可以连接至i/o接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0164]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从rom 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
[0165]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其
中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0166]
在一些实施方式中,可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
[0167]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0168]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:显示对机器学习模型的训练配置界面,所述训练配置界面用于供用户配置所述机器学习模型的自动训练内容;响应于所述用户在所述训练配置界面的埋点输入操作,确定所述埋点输入操作对应的目标埋点信息,并将所述目标埋点信息发送给后端服务器,以触发所述后端服务器通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;响应于所述用户在所述训练配置界面的训练触发操作,向所述后端服务器发送训练指令,以触发所述后端服务器基于所述训练数据对所述机器学习模型进行训练。
[0169]
或者,使得该电子设备:接收目标埋点信息,所述目标埋点信息是基于用户在训练配置界面的埋点输入操作而确定的;通过所述目标埋点信息从业务系统对应的数据仓库中获取用于训练所述机器学习模型的训练数据;接收训练指令,所述训练指令是基于所述用户在所述训练配置界面的训练触发操作而生成的;响应于所述训练指令,基于所述训练数据对所述机器学习模型进行训练。
[0170]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0171]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上
可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0172]
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定。
[0173]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
[0174]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0175]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
[0176]
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0177]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1