Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020140613 - MODEL TRAINING METHOD AND APPARATUS, COMPUTER DEVICE, AND COMPUTER READABLE STORAGE MEDIUM

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20  

附图

1   2   3   4   5   6   7  

说明书

发明名称 : 模型训练方法、装置、计算机设备及计算机可读存储介质

[0001]
本申请要求于2019年1月4日提交中国专利局、申请号为201910008124.7、申请名称为“模型训练方法、装置、计算机设备及计算机可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。

技术领域

[0002]
本申请涉及模型构建技术领域,尤其涉及一种模型训练方法、装置、计算机设备及计算机可读存储介质。

背景技术

[0003]
随着大数据的发展和使用,使用大数据训练的用户模型也越来越复杂,而模型训练的传统技术中,随着用户模型复杂程度的提高和训练数据量的增大,经常会遇到计算机设备硬件资源的瓶颈,从而影响模型训练的效率。
[0004]
发明内容
[0005]
本申请实施例提供了一种模型训练方法、装置、计算机设备及计算机可读存储介质,能够解决传统技术中模型训练时因计算机硬件瓶颈导致的模型训练效率低的问题。
[0006]
第一方面,本申请实施例提供了一种模型训练方法,所述方法包括:通过第一预设方式获取训练语料;将所述语料按照预设条件进行切分以得到多个数据块;将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型;按照第二预设方式合成所述训练后的子模型以得到合成模型。
[0007]
第二方面,本申请实施例还提供了一种模型训练装置,包括:获取单元,用于通过第一预设方式获取训练使用的语料;切分单元,用于将所述语料按照预设条件进行切分以得到多个数据块;训练单元,用于将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型; 合成单元,用于按照第二预设方式合成所述训练后的子模型以得到合成模型。
[0008]
第三方面,本申请实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现所述模型训练方法。
[0009]
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行所述模型训练方法。

附图说明

[0010]
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0011]
图1为本申请实施例提供的模型训练方法的应用场景示意图;
[0012]
图2为本申请实施例提供的模型训练方法的流程示意图;
[0013]
图3为本申请实施例提供的模型训练方法的数据处理流向示意图;
[0014]
图4为本申请实施例提供的模型训练方法的子流程示意图;
[0015]
图5为本申请实施例提供的模型训练装置的示意性框图;
[0016]
图6为本申请实施例提供的模型训练装置的另一个示意性框图;以及
[0017]
图7为本申请实施例提供的计算机设备的示意性框图。

具体实施方式

[0018]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0019]
请参阅图1,图1为本申请实施例提供的模型训练方法的应用场景示意图。所述应用场景包括:(1)终端。图1所示终端上安装有应用程序接口,研发人 员通过应用程序接口与主服务器进行交互,提供需要人工输入的内容,比如初始的数据源列表,上传至服务器的Docker容器,以实现主服务器执行模型训练方法的步骤,所述终端可以为笔记本电脑、平板电脑或者台式电脑等电子设备,图1中的终端与主服务器连接。(2)服务器。服务器包括主服务器和从服务器,本申请实施例采用分布式系统,通过主服务器部署多个Docker容器到不同的从服务器上,通过多个从服务器并行训练多个子模型,使主服务器以串行方式合成训练后的多个子模型以获取合成模型,从而提高模型训练的效率。图1中的主服务器分别与终端及从服务器连接。
[0020]
图1中的各个主体工作过程如下:主服务器通过第一预设方式获取训练语料,所述训练语料可以是从终端获取,也可以是根据从终端获取的数据源列表采用爬取的方式从互联网获取;主服务器将所述语料按照预设条件进行切分以得到多个数据块;将所述数据块按照预先设置分别输入至从服务器上对应的子模型以使从服务器训练各个子模型,主服务器得到训练后的子模型,按照第二预设方式合成所述训练后的子模型以得到合成模型。
[0021]
需要说明的是,图1中仅仅示意出台式电脑作为终端,在实际操作过程中,终端的类型不限于图1中所示,所述终端还可以为手机、笔记本电脑或者平板电脑等电子设备,上述模型训练方法的应用场景仅仅用于说明本申请技术方案,并不用于限定本申请技术方案,上述连接关系还可以有其他形式。
[0022]
图2为本申请实施例提供的模型训练方法的示意性流程图。该模型训练方法应用于图1中的主服务器中,以完成模型训练方法的全部或者部分功能。
[0023]
请参阅图2和图3,图2是本申请实施例提供的模型训练方法的流程示意图,图3为本申请实施例提供的模型训练方法的数据处理流向示意图。如图2所示,该方法包括以下步骤S210-S240:
[0024]
S210、通过第一预设方式获取训练使用的语料。
[0025]
具体地,服务器通过第一预设方式获取训练使用的语料。其中,所述第一预设方式包括接收终端发送的训练数据,或者通过爬虫系统爬取的互联网数据,终端发送的训练数据可以是通过存储设备获取的训练数据,也可以是通过互联网获取的数据,爬虫系统爬取语料时可以通过单一计算机设备进行爬取,又可 以采取分布式爬虫系统以提高爬取数据的效率。
[0026]
S220、将所述语料按照预设条件进行切分以得到多个数据块。
[0027]
其中,预设条件包括按照预设数据大小、数据类型、数据结构、数据来源、加工深度及时间分布等。按照预设数据大小是指以存储数据单位来划分数据,常用的数据单位包括:兆字节,吉字节、太字节及拍字节等,其中,1MB(Mega byte兆字节简称“兆”)=1024KB;1GB(Giga byte吉字节又称“千兆”)=1024MB;1TB(Tera byte万亿字节太字节)=1024GB其中1024=2^10(2的10次方);1PB(Peta byte千万亿字节拍字节)=1024TB。比如按照数据500M、2G或者或者0.5TB的数据大小进行划分,尤其是在大数据的情况下,需要根据具体的数据量设置合适的数据大小。数据结构包括平衡结构语料和自然随机结构语料。加工深度包括标注语料和非标注语料。时间分布包括历时语料和共时语料。数据来源包括网站及书籍报刊等,数据类型包括科技、体育或者财经等类型数据。
[0028]
具体地,使用大数据训练模型时,若是需要使用大数据训练复杂模型,如果将复杂模型部署到单一机器处理大量数据,对于计算机硬件要求比较高。在实际工作中,经常会遇到计算机硬件资源的瓶颈,从而降低模型的训练效率。在本申请实施例中,通过将大数据分块获取大小合适的数据块,将复杂模型分解为细分的子模型,并且将多个子模型和数据块对应部署到不同的机器上,最后将子模型汇总经组合后输出完整的模型,提高了模型训练的效率。
[0029]
在本申请实施例中,获取语料后,将所述语料按照预设条件进行切分,获取语料经过分块后的多个数据块。具体地进行以下步骤:首先需要事先准备模板化操作,可以通过定制Shell脚本,启动数据划分的操作。其中,Shell脚本,英文为Shell Script,是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件。其次,进行语料的关联检索,通过多个语料来源获取丰富且全面的语料。比如,语料为来源于一网站的关于一热点事件的新闻报道,可以通过爬虫系统采取爬取的方式获取该热点事件在其他相关网站报道的语料,由于不同的网站针对该热点事件会从不同角度进行报道以形成该热点事件不同的语料,通过该热点事件的关联检索,因此可以通过多个语料来源获取丰富且全面的语料。第三,将获取的用户语料形成的数据集进行划分,获取语料经数据分 块后的数据块。比如,将语料按照时序顺序进行划分以获取时序数据,通过用户的时序数据作为样本集,或者通过根据数据类型将数据进行分类作为划分数据,或者将时序和数据类型相结合的方式对数据进行划分,也就是将不同类型的数据按照时序进行切分以获取切分后的数据块。将数据集划分为数据块后,保存到预设的地址,以备后续步骤中从预设地址中获取数据块。在划分数据集之前,还需要将划分数据集的代码封装到Docker容器中,比如,将划分数据集的代码封装到Docker1,新建和启动Docker1,对数据集进行划分,获取单个用户的语料,并且对单一大数据块划分为若干个数据块子集,输入参数为划分数据子集个数,{D1,D2,D3..,Dn},保存到临时目录1,以备后续步骤中从临时目录1中获取数据块。
[0030]
进一步地,将所述语料按照预设条件进行切分以得到多个数据块,可以是将所述语料按照数据类型进行分类以得到分类数据后,将所述分类数据按照预设周期的时序顺序进行切分以得到多个数据块。也可以是将所述语料按照数据类型进行分类以得到分类数据,将所述分类数据按照预设块数或者预设大小进行切分以得到多个数据块,可以根据实际需求采取不同的灵活方式。
[0031]
本申请实施例中,首先会有初始化子模型的过程,然后基于数据集的构建,进入子模型的训练和构造。本申请实施例通过将用户语料的数据进行划分,获取数据块。同时,数据块的设置可以根据模型训练条件进行自定义的预先设置,具备灵活性,以满足不同的训练条件,比如,若单台计算机设备硬件资源配置高,可以将每一个数据块划分为较大的数据块,数据块数量少,若单台计算机设备硬件资源配置低,但计算机设备数量充足,可以将每一个数据块划分为较小的数据块,但数据块数量多。
[0032]
S230、将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型。
[0033]
其中,预先设置是指数据块与子模型的对应关系,也就是哪个子模型处理哪些对应的数据块。
[0034]
具体地,本申请实施例通过构建并行化的多个子模块和将多个子模块合成起来的串行模型的组合以得到最后的合成模型。首先采用并行化训练的方式, 训练多个子模型,以降低对单台计算机设备硬件资源的要求,提高复杂模型的训练效率。在本申请实施例中基于对大数据文件进行切分,得到了均分的数据块,而每个数据块对应的数据源具有一个模型机制,也就是子模型,通过将多个数据块分别输入到不同机器设备上的多个子模型中,并行训练多个子模型。在训练子模型之前,还需要设置子模型的参数。比如,哪个子模型对应哪个地址的哪些数据块,或者哪个子模型对应哪些类型的数据块。得到切分的多个数据块后,从存储文件或者数据库中获取预先设置的数据块与子模型的对应关系,将所述数据块按照预设对应关系分别输入至对应的子模型。
[0035]
在训练子模型之前,还需要将构建和更新子模型的代码封装到Docker容器中,比如封装到Docker2中,新建和启动若干个Docker2容器,部署到多台计算机设备上,启动构建和更新子模型的代码,比如,输入参数为从临时目录1的数据子集,输出子模型,保存到临时目录2。其中,子模型通过选用划分好的数据块,也就是获取的语料的数据集的子数据集,需要保持子模型的输入跟输出一致。本申请实施例中通过并行架构训练各个子模型,可以使用多核CPU或多台计算机设备的计算资源,提高模型的训练效率。
[0036]
S240、按照第二预设方式合成所述训练后的子模型以得到合成模型。
[0037]
其中,第二预设方式包括融合模型或者预设的组合方式等。
[0038]
具体地,将获取的经过训练后的各个子模型经过汇总,合成最终的合成模型,为最后获取的复杂模型的结果。
[0039]
在一个实施例中,所述按照第二预设方式合成所述训练后的子模型以得到合成模型的步骤包括:将训练后的多个子模型通过融合模型进行汇总以得到合成模型。
[0040]
具体地,训练完各个子模型后,输出训练后的子模型结果,各个子模型再经过一个融合模型,做最终的合并以获取合成模型,也就是通过并行的各个子模型,得到对应的子模型结果,再通过对各个子模型进行加权求平均,获得最终的合成模型。其中,本申请实施例中采用的权重是基于各子模型的模型准确率来计算得到的,比如,回归问题,采用回归模型,回归模型中包括的子模型有MSE(MSE,Mean Square Error,均方误差),RMSE(Root Mean Squard Error, 均方根误差),MAE(Mean Absolute Error,平均绝对误差)及R-Squared(R平方)等,而回归模型采用的是分类准确率,子模型准确率越高,对应的子模型在融合模型中的权重会越高,子模型的准确率越低,对应的子模型在融合模型中的权重会越低。
[0041]
在本申请实施例中,通过各个子模型的并行处理,以及最后对各个子模型的串行处理,获取最终的合成模型,将最终的合成模型保存到预设的地址。其中,串行模型流指的是,先通过A模型,再通过B模型。同时,还涉及各个子模型的读入地址,以及模型预测的输出,将模型预测输出到预设地址。具体实施时,将基于多子用户模型的模型预测的代码封装到Docker容器中,比如封装到Docker3中,新建和启动若干个Docker3容器,直到各个子模型训练完成之后,从临时目录2中导入若干个子模型,{model1,model2,...,modeln},启动基于多子模型的模型预测的代码,也就是将多个子模型的结果进行求平均值,输入参数为临时目录3的数据文件,输出为模型预测结果,也就是最终的合成模型,保存到临时目录4。其中,模型预测的结果和输出地址都需要输出到对应的位置,比如说保存在指定的数据库的某个表。
[0042]
通过将用户数据进行划分数据块,采用并行训练模型,得到将细分数据集形成的各个数据块进入指定模型进行构建和训练,获取作为细分的子模型,最后通过多个细分子模型进行组合计算,组成了用户最终的多层模型,用户的最终多层模型的构建或者更新更多的是并行模型训练和串行模型数据相结合的结果。其中,模型流和数据块均可以通过自定义设置,具有灵活性。同时本申请实施例还基于Docker部署,在多台机器中采用并行架构并行完成模型的训练和更新,可以提高多核CPU或多机的计算资源使用率,能减轻对服务器内存的要求,提高环境部署的便利性和方便性。
[0043]
请参阅图4,图4为本申请实施例提供的模型训练方法的子流程示意图。如图4所示,在该实施例中,所述通过第一预设方式获取训练使用的语料的步骤包括:S211、获取目标对象的初始数据源网站列表;S212、将所述初始数据源网站列表按照预设条件进行分类以得到不同类型的数据源网站列表;S213、封装所述数据源网站列表至对应的Docker容器;S214、启动所述Docker容器以 使所述Docker容器通过爬取的方式获取新数据源网站;S215、将所述新数据源网站添加至对应的数据源网站列表以更新所述目标对象的数据源网站;S216、基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料。
[0044]
具体地,主服务器获取配置的目标的初始数据源网站列表,爬虫系统自动根据所述初始数据源网站列表的预设条件将所述初始数据源网站列表进行分类以获取不同类型的数据源网站列表,比如根据网站标识将数据源网站分为不同的类型,然后封装所述数据源网站列表至对应的Docker容器,所述Docker容器被部署到不同的服务器上,启动所述Docker容器以使所述Docker容器通过爬取获取丰富的新数据源网站,将所述新数据源网站添加至对应的数据源网站列表以更新所述目标的数据源网站,完善目标的数据源网站。具体来说,包括以下子步骤:
[0045]
首先,获得初始网站列表,该列表可以通过手动配置,也就是由人工提供初始的数据源网站。
[0046]
其次,通过将编写好的爬虫代码封装到Docker容器中,其中代码包括了提取网站URL的部分,同时还有匹配URL与对应爬取程序的代码,从而使URL自动与爬取程序对应,通过对应的爬取程序爬取对应的URL的网站。其中,需要构建URL与爬虫程序的索引关系,提前做好所有URL类型的网络爬虫,以使不同类型的URL爬虫对应不同的爬虫程序。
[0047]
第三,启动容器Docker1,通过爬虫代码将总输入清单进行分类和分割,将同一类的数据源清单进行保存,形成待爬取列表,等待爬取。其中,通过启动URL分类和分割的代码,对输入的网站URL列表根据URL类型进行分类,实现网站URL列表进行分类操作,然后,启动列表分割的代码,将不同的数据源清单分成若干个列表,对应不同机器上的docker容器。
[0048]
第四,启动容器Docker2,通过获得的数据源清单列表,通过匹配URL对应的爬虫程序,比如,X网站,对应着X网站爬取和解析的代码,传入X网站即可爬取,对外部网络进行访问,分开抓取对应的数据,并将数据返回到数据库中。
[0049]
进一步地,爬虫程序根据获取的URL挖掘出新的URL,也就是爬虫程序通 过启动URL挖掘出新的URL,并将新的URL存储到待爬取的URL列表中以完善URL列表。同时,还可以核对是否有爬取数据过程中报错的情况,若有报错的情况,针对此网站的爬取过程结束。
[0050]
对URL进行分类,可以通过预先设置的URL正则表达式进行。每类URL列表都有对应的正则表达式,通过判断返回的结果是否为空,来判定是否为该类URL。判断过程如下:若返回结果非空,则判断为该类URL,若判断结果为空,判断为非该类URL。
[0051]
第五,直到所有Docker2的待爬取网站列表为空,停止操作。
[0052]
第六,通过所述数据源网站爬取所述目标的语料以获取训练使用的语料。
[0053]
进一步地,在一个实施例中,按照所述子模型的输入要求从所述训练语料中以抽取的方式获取所述子模型对应的训练语料,从而提高子模型的训练效率。
[0054]
具体地,上述申请实施例选用的数据样本是用户全量的数据样本,进一步地,还可以按照等距离抽样的方式抽取数据块作为训练子模型使用的数据块,以减小训练数据量,提高模型的训练效率。采用等距离抽样的方法进行获取数据,比如,假如将语料进行分块后获取了100个数据块,本申请实施例中要生成10个模型,取出第1、11、21...等方式,组成10个样本。通过对用户相关的语料进行汇总,然后对获取的语料进行分类并保存,形成用户数据集。其中,分类是指将多个来源的数据集根据不同的模型输入要求进行抽取并且保存,此处的分类依赖于模型的输入内容,比如,若要进行行车轨迹预测,对应的子模型需要输入包括了行车的经纬度等数据作为训练语料,需要将包含行车的经纬度的数据进行抽取和保存,从而提高训练数据的准确性,并且去除了噪声数据,可以提高模型训练的效率。
[0055]
需要说明的是,上述各个实施例所述的模型训练方法,可以根据需要将不同实施例中包含的技术特征重新进行组合,以获取组合后的实施方案,但都在本申请要求的保护范围之内。
[0056]
请参阅图5,图5为本申请实施例提供的模型训练装置的示意性框图。对应于上述模型训练方法,本申请实施例还提供一种模型训练装置。如图5所示,该模型训练装置包括用于执行上述模型训练方法的单元,该装置可以被配置于 服务器等计算机设备中。具体地,请参阅图5,该模型训练装置500包括获取单元501、切分单元502、训练单元503及合成单元504。其中,获取单元501,用于通过第一预设方式获取训练语料;切分单元502,用于将所述语料按照预设条件进行切分以得到多个数据块;训练单元503,用于将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型;合成单元504,用于按照第二预设方式合成所述训练后的子模型以得到合成模型。
[0057]
请参阅图6,图6为本申请实施例提供的模型训练装置的另一个示意性框图。如图6所示,在该实施例中,所述获取单元501包括:获取子单元5011,用于获取目标对象的初始数据源网站列表;分类子单元5012,用于将所述初始数据源网站列表按照预设条件进行分类以得到不同类型的数据源网站列表;封装子单元5013,用于封装所述数据源网站列表至对应的Docker容器;启动子单元5014,用于启动所述Docker容器以使所述Docker容器通过爬取的方式获取新数据源网站;添加子单元5015,用于将所述新数据源网站添加至对应的数据源网站列表以更新所述目标对象的数据源网站;爬取子单元5016,用于基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料。
[0058]
请继续参阅图6,如图6所示,在该实施例中,所述模型训练装置500还包括:第一抽取单元505,用于按照所述子模型的输入要求从所述训练语料中以抽取的方式获取所述子模型对应的训练语料。
[0059]
请继续参阅图6,如图6所示,在该实施例中,所述切分单元502包括:第一分类子单元,用于将所述语料按照数据类型进行分类以得到分类数据;第二切分子单元,用于将所述分类数据按照预设周期的时序顺序进行切分以得到多个数据块。
[0060]
请继续参阅图6,如图6所示,在该实施例中,所述切分单元502包括:第二切分子单元,用于将所述语料按照数据类型进行分类以得到分类数据;第二切分子单元,用于将所述分类数据按照预设块数或者预设大小进行切分以得到多个数据块。
[0061]
请继续参阅图6,如图6所示,在该实施例中,所述模型训练装置500还包括:第二抽取单元506,用于按照等距离抽样的方式抽取数据块作为训练子模型 使用的数据块。
[0062]
在一个实施例中,所述合成单元504,用于将训练后的多个子模型通过融合模型进行汇总以得到合成模型。
[0063]
在一个实施例中,所述模型训练装置500还包括:再获取单元,用于获取数据块与子模型的对应关系。
[0064]
需要说明的是,所属领域的技术人员可以清楚地了解到,上述模型训练装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。同时,上述模型训练装置中各个单元的划分和连接方式仅用于举例说明,在其他实施例中,可将模型训练装置按照需要划分为不同的单元,也可将模型训练装置中各单元采取不同的连接顺序和方式,以完成上述模型训练装置的全部或部分功能。
[0065]
上述模型训练装置可以实现为一种计算机程序的形式,该计算机程序可以在如图7所示的计算机设备上运行。
[0066]
请参阅图7,图7是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备700可以是台式机电脑或者服务器等计算机设备,也可以是其他设备中的组件或者部件。
[0067]
参阅图7,该计算机设备700包括通过系统总线701连接的处理器702、存储器和网络接口705,其中,存储器可以包括非易失性存储介质703和内存储器704。该非易失性存储介质703可存储操作系统7031和计算机程序7032。该计算机程序7032被执行时,可使得处理器702执行一种上述模型训练方法。
[0068]
其中,该处理器702用于提供计算和控制能力,以支撑整个计算机设备700的运行。该内存储器704为非易失性存储介质703中的计算机程序7032的运行提供环境,该计算机程序7032被处理器702执行时,可使得处理器702执行一种上述模型训练方法。该网络接口705用于与其它设备进行网络通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备700的限定,具体的计算机设备700可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存 储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图7所示实施例一致,在此不再赘述。
[0069]
其中,所述处理器702用于运行存储在存储器中的计算机程序7032,以实现本申请实施例的模型训练方法。
[0070]
应当理解,在本申请实施例中,处理器702可以是中央处理单元(Central Processing Unit,CPU),该处理器702还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0071]
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来完成,该计算机程序可存储于一计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的步骤。
[0072]
因此,本申请实施例还提供一种计算机可读存储介质。该存储介质存储有计算机程序,该计算机程序被处理器执行时使处理器执行以上各实施例中所描述的模型训练方法的步骤。
[0073]
所述存储介质为实体的、非瞬时性的存储介质,例如可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储计算机程序的实体存储介质。
[0074]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0075]
以上所述,仅为本申请的具体实施方式,但本申请明的保护范围并不局限 于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

权利要求书

[权利要求 1]
一种模型训练方法,包括: 通过第一预设方式获取训练语料; 将所述语料按照预设条件进行切分以得到多个数据块; 将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型; 按照第二预设方式合成所述训练后的子模型以得到合成模型。
[权利要求 2]
根据权利要求1所述模型训练方法,其中,所述通过第一预设方式获取训练语料的步骤包括: 获取目标对象的初始数据源网站列表; 将所述初始数据源网站列表按照预设条件进行分类以得到不同类型的数据源网站列表; 封装所述数据源网站列表至对应的Docker容器; 启动所述Docker容器以使所述Docker容器通过爬取的方式获取新数据源网站; 将所述新数据源网站添加至对应的数据源网站列表以更新所述目标对象的数据源网站; 基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料。
[权利要求 3]
根据权利要求2所述模型训练方法,其中,基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料的步骤之后,还包括: 按照所述子模型的输入要求从所述训练语料中以抽取的方式获取所述子模型对应的训练语料。
[权利要求 4]
根据权利要求3所述模型训练方法,其中,所述将所述语料按照预设条件进行切分以得到多个数据块的步骤包括: 将所述语料按照数据类型进行分类以得到分类数据; 将所述分类数据按照预设周期的时序顺序进行切分以得到多个数据块。
[权利要求 5]
根据权利要求3所述模型训练方法,其中,所述将所述语料按照预设条件进行切分以得到多个数据块的步骤包括: 将所述语料按照数据类型进行分类以得到分类数据; 将所述分类数据按照预设块数或者预设大小进行切分以得到多个数据块。
[权利要求 6]
根据权利要求1所述模型训练方法,其中,所述将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型的步骤之前,还包括: 按照等距离抽样的方式抽取数据块作为训练子模型使用的数据块。
[权利要求 7]
根据权利要求1所述模型训练方法,其中,所述按照第二预设方式合成所述训练后的子模型以得到合成模型的步骤包括: 将训练后的多个子模型通过融合模型进行汇总以得到合成模型。
[权利要求 8]
根据权利要求1所述模型训练方法,其中,所述将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型的步骤之前,还包括: 获取数据块与子模型的对应关系。
[权利要求 9]
一种模型训练装置,包括: 获取单元,用于通过第一预设方式获取训练使用的语料; 切分单元,用于将所述语料按照预设条件进行切分以得到多个数据块; 训练单元,用于将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型; 合成单元,用于按照第二预设方式合成所述训练后的子模型以得到合成模型。
[权利要求 10]
根据权利要求9所述模型训练装置,其中,所述获取单元包括: 获取子单元,用于获取目标对象的初始数据源网站列表; 分类子单元,用于将所述初始数据源网站列表按照预设条件进行分类以得到不同类型的数据源网站列表; 封装子单元,用于封装所述数据源网站列表至对应的Docker容器; 启动子单元,用于启动所述Docker容器以使所述Docker容器通过爬取的方式获取新数据源网站; 添加子单元,用于将所述新数据源网站添加至对应的数据源网站列表以更新所述目标对象的数据源网站; 爬取子单元,用于基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料。
[权利要求 11]
一种计算机设备,包括存储器以及与所述存储器相连的处理器;所述存储器用于存储计算机程序;所述处理器用于运行所述存储器中存储的计算机程序,以执行如下步骤: 通过第一预设方式获取训练语料; 将所述语料按照预设条件进行切分以得到多个数据块; 将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型; 按照第二预设方式合成所述训练后的子模型以得到合成模型。
[权利要求 12]
根据权利要求11所述计算机设备,其中,所述通过第一预设方式获取训练语料的步骤包括: 获取目标对象的初始数据源网站列表; 将所述初始数据源网站列表按照预设条件进行分类以得到不同类型的数据源网站列表; 封装所述数据源网站列表至对应的Docker容器; 启动所述Docker容器以使所述Docker容器通过爬取的方式获取新数据源网站; 将所述新数据源网站添加至对应的数据源网站列表以更新所述目标对象的数据源网站; 基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料。
[权利要求 13]
根据权利要求12所述计算机设备,其中,基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料的步骤之后,还包括: 按照所述子模型的输入要求从所述训练语料中以抽取的方式获取所述子模型对应的训练语料。
[权利要求 14]
根据权利要求13所述计算机设备,其中,所述将所述语料按照预设条件进行切分以得到多个数据块的步骤包括: 将所述语料按照数据类型进行分类以得到分类数据; 将所述分类数据按照预设周期的时序顺序进行切分以得到多个数据块。
[权利要求 15]
根据权利要求13所述计算机设备,其中,所述将所述语料按照预设条件进行切分以得到多个数据块的步骤包括: 将所述语料按照数据类型进行分类以得到分类数据; 将所述分类数据按照预设块数或者预设大小进行切分以得到多个数据块。
[权利要求 16]
根据权利要求11所述计算机设备,其中,所述将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型的步骤之前,还包括: 按照等距离抽样的方式抽取数据块作为训练子模型使用的数据块。
[权利要求 17]
根据权利要求11所述计算机设备,其中,所述按照第二预设方式合成所述训练后的子模型以得到合成模型的步骤包括: 将训练后的多个子模型通过融合模型进行汇总以得到合成模型。
[权利要求 18]
根据权利要求11所述计算机设备,其中,所述将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型的步骤之前,还包括: 获取数据块与子模型的对应关系。
[权利要求 19]
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如下步骤: 通过第一预设方式获取训练语料; 将所述语料按照预设条件进行切分以得到多个数据块; 将所述数据块按照预设对应关系分别输入至对应的子模型以训练各个子模型,得到训练后的子模型; 按照第二预设方式合成所述训练后的子模型以得到合成模型。
[权利要求 20]
根据权利要求19所述计算机可读存储介质,其中,所述通过第一预设方式获取训练语料的步骤包括: 获取目标对象的初始数据源网站列表; 将所述初始数据源网站列表按照预设条件进行分类以得到不同类型的数据源网站列表; 封装所述数据源网站列表至对应的Docker容器; 启动所述Docker容器以使所述Docker容器通过爬取的方式获取新数据源网站; 将所述新数据源网站添加至对应的数据源网站列表以更新所述目标对象的数据源网站; 基于更新后的所述数据源网站爬取满足预设条件的语料作为训练语料。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]