模型结果的训练/验证/管理方法/系统、介质及设备技术方案

技术编号:21432096 阅读:26 留言:0更新日期:2019-06-22 11:53
本发明专利技术提供一种模型结果的训练/验证/管理方法/系统、介质及设备,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的训练方法包括:待任务发布节点发布AI训练任务后,对待训练模型进行训练并保存N个中间结果模型;将N个中间结果模型进行哈希运算,以获取N个第一哈希值,并广播N个第一哈希值,以验证所保存的N个不同的中间结果模型是否为通过造假将同一个中间结果模型复制N次给出的;同时保存训练过程中针对N个中间结果模型对应的N个数组长度为M的损失函数。本发明专利技术可以用于衡量AI训练有效工作量是否造假,使训练节点和任务发布节点都有衡量的依据。特别是针对去中心化的区块链网络、算力共享网络中的AI训练有效工作量的衡量。

【技术实现步骤摘要】
模型结果的训练/验证/管理方法/系统、介质及设备
本专利技术属于人工智能
、区块链
,涉及一种练/验证/管理方法/系统,特别是涉及一种模型结果的训练/验证/管理方法/系统、介质及设备。
技术介绍
随着模型算法、数据和硬件算力的高速发展,人工智能(AI)技术得到了广泛的应用。一方面,随着模型变得更加复杂、数据变得更加庞大,人们对于硬件算力的需求也越来越高。另一方面,拥有闲置算力资源的人,希望共享其闲置的算力用于AI训练以获得收益。目前没有一个成熟的、可落地的AI算力共享平台,很大的原因在于算力提供方(也称训练节点)和需求方(也称任务发布节点)之间的互不信任。由于AI训练是一个耗时的过程,最长的训练过程可达几天甚至几个月。一方面,算力提供方(训练节点)可以通过改变训练超参数,使得在相同的训练过程和训练步骤下训练时间大大缩短,也即从中偷懒,使其有效工作量难以被衡量。这种做法对于算力提供方是有利的,其可以通过训练时间造假多获取收益。但是对于算力需求方(任务发布节点)则是不利的,因为其付出了全部费用,但是得到的AI模型训练结果真实性却无法保证。另一方面,训练节点担心自己花费大量时间训练得出的结果被任务发布者恶意不承认,因而白白浪费时间和算力得不到回报。因而供需双方无法达成一致。目前评价AI模型训练好坏的方法是利用数据验证集对模型推断结果进行评价。但是,该方法存在如下问题:第一,通过诚实的AI训练后得到的模型,也会由于模型本身参数设置不合理,而得到不好的推断结果。因而该方法无法区分模型自身超参数设置不好和AI训练过程中工作量造假这两种情况;第二,算力提供方可以通过将数据验证集用于训练,从而在工作量造假的情况下,得到好的推断结果,因此该验证方法反而会将工作量造假的情况判断为诚实的AI训练。因此,如何提供一种模型结果的训练/验证/管理方法/系统、介质及设备,以解决现有技术中任务发布节点担心训练节点所提供的AI模型训练结果真实性无法保证,训练节点担心自己花费大量时间训练得出的结果被任务发布节点恶意不承认,导致供需双方无法达成一致等缺陷,实以成为本领域技术人员亟待解决的技术问题。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种模型结果的训练/验证/管理方法/系统、介质及设备,用于解决现有技术中任务发布节点担心训练节点所提供的AI模型训练结果真实性无法保证,训练节点担心自己花费大量时间训练得出的结果被任务发布节点恶意不承认,导致供需双方无法达成一致的问题。为实现上述目的及其他相关目的,本专利技术一方面提供一种模型结果的训练方法,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的训练方法包括:待任务发布节点发布AI训练任务后,对待训练模型进行训练并保存N个中间结果模型;将N个中间结果模型进行哈希运算,以获取N个第一哈希值,并广播N个第一哈希值,以验证所保存的N个不同的中间结果模型是否为将同一个中间结果模型复制N次给出的;同时保存训练过程中针对N个中间结果模型对应的N个数组长度为M的损失函数。本专利技术另一方面提供一种基于所述模型结果的训练方法的模型结果的验证方法,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;其中,所述任务训练网络通过共识机制选出2L+1个所述验证节点;L为正整数;所述模型结果的验证方法包括:从训练节点处随机挑选K个第一哈希值及其对应的K个中间结果模型;再从所述训练节点处获得K个长度为M的第二损失函数;对获得的K个中间结果模型进行哈希运算,得到K个第二哈希值,判断该K个第二哈希值与训练节点公布的K个第一哈希值是否完全一一对应,以验证所述训练节点公布的第一哈希值是否有对应的中间结果模型存在;在通过哈希验证的中间结果模型上继续进行迭代训练,得到K个长度为M的第一损失函数;根据第一损失函数和第二损失函数进行误差评判,以验证训练节点的工作量是否造假。于本专利技术的一实施例中,所述对所述第一损失函数和第二损失函数进行误差评判,以验证所述训练者的工作量是否造假的步骤包括:对所述第一损失函数和所述第二损失函数做差,以获取两者的数组差;根据所述数组差,计算用于评判所述训练者的工作量是否造成的衡量指标。于本专利技术的一实施例中,在2L+1个所述验证节点给出判断结果以后,所述计帐节点进行统计并最终裁决训练节点是否工作量造假,将结果广播全网所有节点。于本专利技术的一实施例中,所述衡量指标采用阿兰方差。于本专利技术的一实施例中,所述计算用于评判所述训练者的工作量是否造假的衡量指标的步骤包括:对所述阿兰方差进行一阶拟合,以获取到与所述阿兰方差对应的斜率;判断所述斜率的符号是否大于0,若是,则表示所述训练者的工作量造假;如否,则表示所述训练者的工作量真实。于本专利技术的一实施例中,所述验证节点对所述的K个中间结果模型进行工作量是否造假的裁决标准为只有K个中间结果模型均无造假,才给出训练节点无造假。于本专利技术的一实施例中,采用用于计算梯度的梯度下降算法、只采用一个样本的随机梯度下降算法,和采用部分样本的小批量梯度下降算法来计算M次迭代的损失函数。本专利技术又一方面提供一种基于所述模型结果的验证方法的模型结果的管理方法,其特征在于,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的管理方法包括:统计2L+1个验证节点的验证结果;将大于L+1个验证节点的验证结果一致的结果进行验证记录,并广播该验证记录给全网所有节点。本专利技术再一方面提供一种模型结果的训练系统,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的训练系统包括:第一训练模块,用于待任务发布节点发布AI训练任务后,对待训练模型进行训练;存储模块,用于保存N个中间结果模型;同时保存训练过程中针对N个中间结果模型对应的N个数组长度为M的损失函数第一处理模块,用于将N个中间结果模型进行哈希运算,以获取N个第一哈希值,并通过第一广播模块广播N个第一哈希值,以验证所保存的N个不同的中间结果模型是否为将同一个中间结果模型复制N次给出的。本专利技术再一方面还提供一种基于所述模型结果的训练系统的模型结果的验证系统,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;其中,所述任务训练网络通过共识机制的证明选出2L+1个所述验证节点;L为正整数;所述模型结果的验证系统包括:挑选模块,用于从训练节点处随机挑选K个第一哈希值及其对应的K个中间结果模型;第二处理模块,用于对获得的K个中间结果模型进行哈希运算,得到K个第二哈希值,判断该第二哈希值与训练节点公布的K个第一哈希值是否完全一一对应,以验证所述训练节点公布的第一哈希值是否有对应的中间结果模型存在;第二训练模块,用于在通过哈希验证的中间结果模型上继续进行迭代训练,得到K个长度为M的第一损失函数;获取模块,用于从所述训练节点处获得K个长度为M的第二损失函数;误差评判模块,用于根据第一损失函数和第二损失函数进行误差评判,以验证训练节点的工作量是否造假。本专利技术再一方面又提供一种基于所述模型结果的验证系统的模型结果的管理系统,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的管理系统包括本文档来自技高网
...

【技术保护点】
1.一种模型结果的训练方法,其特征在于,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的训练方法包括:待任务发布节点发布AI训练任务后,对待训练模型进行训练并保存N个中间结果模型;将N个中间结果模型进行哈希运算,以获取N个第一哈希值,并广播N个第一哈希值,以验证所保存的N个不同的中间结果模型是否为将同一个中间结果模型复制N次给出的;同时保存训练过程中针对N个中间结果模型对应的N个数组长度为M的损失函数。

【技术特征摘要】
1.一种模型结果的训练方法,其特征在于,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;所述模型结果的训练方法包括:待任务发布节点发布AI训练任务后,对待训练模型进行训练并保存N个中间结果模型;将N个中间结果模型进行哈希运算,以获取N个第一哈希值,并广播N个第一哈希值,以验证所保存的N个不同的中间结果模型是否为将同一个中间结果模型复制N次给出的;同时保存训练过程中针对N个中间结果模型对应的N个数组长度为M的损失函数。2.一种基于权1所述模型结果的训练方法的模型结果的验证方法,其特征在于,应用于包括任务发布节点、训练节点、验证节点及记账节点的任务训练网络中;其中,所述任务训练网络通过共识机制选出2L+1个所述验证节点;L为正整数;所述模型结果的验证方法包括:从训练节点处随机挑选K个第一哈希值及其对应的K个中间结果模型;再从所述训练节点处获得其对应的K个长度为M的第二损失函数;对获得的K个中间结果模型进行哈希运算,得到K个第二哈希值,判断该K个第二哈希值与训练节点公布的K个第一哈希值是否完全一一对应,以验证所述训练节点公布的第一哈希值是否有对应的中间结果模型存在;在通过哈希验证的中间结果模型上继续进行迭代训练,得到K个长度为M的第一损失函数;根据第一损失函数和第二损失函数进行误差评判,以验证训练节点的工作量是否造假。3.根据权利要求2所述的模型结果的验证方法,其特征在于,所述对所述第一损失函数和第二损失函数进行误差评判,以验证所述训练者的工作量是否造假的步骤包括:对所述第一损失函数和所述第二损失函数做差,以获取两者的数组差;根据所述数组差,计算用于评判所述训练者的工作量是否造成的衡量指标。于本发明的一实施例中,在2L+1个所述验证节点给出判断结果以后,所述计帐节点进行统计并最终裁决训练节点是否工作量造假,将结果广播全网所有节点。4.根据权利要求3所述的模型结果的验证方法,其特征在于,所述衡量指标采用阿兰方差。5.根据权利要求4所述的模型结果的验证方法,其特征在于,所述计算用于评判所述训练者的工作量是否造假的衡量指标的步骤包括:对所述阿兰方差进行一阶拟合,以获取到与所述阿兰方差对应的斜率;判断所述斜率的符号是否大于0,若是,则表示所述训练者的工作量造假;如否,则表示所述训练者的工作量真实。6.根据权利要求3所述的模型结果的验证方法,其特征在于,所述验证节点对所述的K个中间结果模型进行工作量是否造假的裁决标准为只有K个中间结果模型均无造假,才给出训练节点无造假。7.根据权利要求3所述的模型结果的验证方法,其特征在于,采用用于计算梯度的梯度下降算法、只采用一个样本的随机梯度下降算法,和采用部分样本的小批量梯度下降算法来计算M次迭代的损失函数。8.一种基于权2至权7任一项所述模型结果的验证方法的模型结果的管理方法,其特征在于,应用于包括任务发布节...

【专利技术属性】
技术研发人员:林锦达刘军高庆忠周志华蒋伟夏伏彪
申请(专利权)人:上海尚阵智能科技有限公司
类型:发明
国别省市:上海,31

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1