System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及教育,尤其涉及一种编码方法、装置、设备、存储介质及产品。
技术介绍
1、算法模型无法处理非数值特征,所以在对算法模型进行模型训练之前,需要对非数值特征进行编码,转化为数值特征。
2、目前对非数值特征进行编码的方法为采用单线程的串行编码,依次对每个非数值特征进行编码,直至所有非数值特征完成编码。但是采用单线程的串行编码的计算量大,对非数值特征编码的效率与质量低下,编码质量低下会导致编码后占用的存储资源过大。
技术实现思路
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、处理器执行存储器存储的计算机执行指令,以实现如前任一项的方法。
31、第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如前任一项的方法。
32、第五方面,本申请提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如前任一项的方法。
33、本申请提供的编码方法、装置、设备、存储介质及产品,将待编码特征集分为多个子集,对选取的目标子集基于当前的编码参数进行编码,得到预测编码资源和实际编码资源,基于预测编码资源与实际编码资源,采用损失函数对梯度模型进行迭代训练直到迭代完成得到第一编码参数,再采用第一编码参数对未经过编码的所有子集进行编码。本申请在对待编码特征进行编码的过程中,通过梯度模型进行迭代训练,实现对编码参数的调整,得到第一编码参数,第一编码参数为基于迭代训练得到的最优选的编码参数,包括cpu、任务并发度与存储内存,所以采用第一编码参数对待编码特征集进行编码,可实现同时采用多条线程对待编码特征集进行编码,可以加快对待编码特征集的编码速度,提高对待编码特征集的编码效率与质量,同时降低单线程编码所需的计算量与存储资源。
本文档来自技高网...【技术保护点】
1.一种编码方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括,包括:
3.根据权利要求2所述的方法,其特征在于,所述将编码后的数据存储至矩阵中包括:
4.根据权利要求1所述的方法,其特征在于,所述基于迭代训练结果更新所述编码参数包括:
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.一种编码装置,其特征在于,包括:
8.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至权利要求6任一项所述的方法。
10.一种计算机程序产品,其特征在于,包括计算机程序,该计算机程序被处理器执行时实现如权利要求1至权利要求6中任一项所述的方法。
【技术特征摘要】
1.一种编码方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括,包括:
3.根据权利要求2所述的方法,其特征在于,所述将编码后的数据存储至矩阵中包括:
4.根据权利要求1所述的方法,其特征在于,所述基于迭代训练结果更新所述编码参数包括:
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
【专利技术属性】
技术研发人员:马亚东,项灵刚,游军杰,谭立何,贾竟源,
申请(专利权)人:杭州海亮数字科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。