CN110363303A - 智能分配模型训练内存方法、装置及计算机可读存储介质 - Google Patents
智能分配模型训练内存方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110363303A CN110363303A CN201910520760.8A CN201910520760A CN110363303A CN 110363303 A CN110363303 A CN 110363303A CN 201910520760 A CN201910520760 A CN 201910520760A CN 110363303 A CN110363303 A CN 110363303A
- Authority
- CN
- China
- Prior art keywords
- data collection
- training
- memory
- cell data
- small lot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/50—Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Machine Translation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及人工智能技术,揭露了一种智能分配模型训练内存的方法,包括构建PyTorch框架并接收训练数据,并将所述训练数据随机分为单元数据集A和单元数据集B,将所述单元数据集A运算后得到小批量梯度数据集,将所述小批量梯度数据集输入至循环神经网络中进行反向传播训练得到训练值,直至所述循环神经网络的训练值小于预设阈值时,所述循环神经网络退出训练并输出内存空间余量值,根据所述内存空间余量值计算多种机器学习模型所占用的模型训练内存,根据所述模型训练空间将所述单元数据集B分别导入所述多种机器学习模型进行训练。本发明还提出一种智能分配模型训练内存的装置以及一种计算机可读存储介质。本发明可以实现智能分配模型训练内存功能。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种基于梯度下降的智能分配 模型训练内存方法、装置及计算机可读存储介质。
背景技术
目前机器学习技术应用广泛,集成化的机器学习系统也越来越多的被采用, 所述集成化的机器学习系统就是同时应用多种机器学习模型进行训练。但所 述集成化的机器学习效果和速度常常受制于内存性能和空间,这样导致了模 型训练速度慢且准确度不高。如果通过单纯拓展内存空间的方式来提高模型 训练的效率,成本高昂,效益不佳,应用范围很窄。
发明内容
本发明提供一种智能分配模型训练内存的方法、装置及计算机可读存储 介质,其主要目的在于利用循环神经网络计算模型训练内存的容量,并基于 所述计算出的容量,利用梯度下降算法分配模型训练内存,提高模型训练的 效率。
为实现上述目的,本发明提供的一种智能分配模型训练内存的方法,包 括:
在python环境构建PyTorch框架,所述PyTorch框架包括多种机器学习 模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随机分割为单 元数据集A和单元数据集B;
将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集, 利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据集输入至所 述循环神经网络中进行反向传播训练得到训练值,直至所述循环神经网络的 训练值小于预设阈值时,所述循环神经网络退出训练并输出所述反向传播训 练的内存空间余量值;
根据所述内存空间余量值,计算多种机器学习模型训练所述单元数据集B 时所占用的模型训练内存,根据所述模型训练内存将所述单元数据集B分别 导入所述多种机器学习模型进行训练,直至所述多种机器学习模型的训练值 收敛于预设区间时完成训练。
可选地,所述多种机器学习模型包括朴素贝叶斯、支持向量机、卷积神 经网络;
所述训练数据按照数据格式划分为文本数据、图片数据。
可选地,将所述小批量梯度数据集输入至所述循环神经网络中进行反向 传播训练得到训练值,包括:
将所述小批量梯度集输入至所述循环神经网络模型的隐藏层中;
所述隐藏层将所述隐藏层的基本参数与所述小批量梯度集进行卷积运算 得到卷积梯度值。
可选地,所述卷积运算为:
其中ω′为所述内存空间余量值,ω为所述小批量梯度数据集,k为卷积核 的大小,s为卷积操作的步幅,p为数据补零矩阵。
可选地,将所述单元数据集A采用批量梯度下降法运算后得到小批量梯 度数据集,包括:
求出所述单元数据集A的损失函数loss为:
其中,b为所述单元数据集A的样本个数,yθ(x(i))为所述单元数据集A 的预测值,y(i)为所述单元数据集A的真实值,x为所述单元数据集A的加权 平均值,θ为所述单元数据集A所包含的预估参数值;
对所述损失函数loss求解θ的偏导数:
基于上述求解偏导数的过程,不断更新小批量梯度数据集θj+1:
其中,θj为更新前的小批量梯度数据集,θj+1为更新后的小批量梯度数据 集当达到预设迭代次数时,退出迭代,输出所述小批量梯度数据集θj+1。
此外,为实现上述目的,本发明还提供一种装置,该装置包括存储器和 处理器,所述存储器中存储有可在所述处理器上运行的智能训练程序,所述 智能训练程序被所述处理器执行时实现如下步骤:
在python环境构建PyTorch框架,所述PyTorch框架包括多种机器学习 模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随机分割为单 元数据集A和单元数据集B;
将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集, 利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据集输入至所 述循环神经网络中进行反向传播训练得到训练值,直至所述循环神经网络的 训练值小于预设阈值时,所述循环神经网络退出训练并输出所述反向传播训 练的内存空间余量值;
根据所述内存空间余量值,计算多种机器学习模型训练所述单元数据集B 时所占用的模型训练内存,根据所述模型训练内存将所述单元数据集B分别 导入所述多种机器学习模型进行训练,直至所述多种机器学习模型的训练值 收敛于预设区间时完成训练。
可选地,所述多种机器学习模型包括朴素贝叶斯、支持向量机、卷积神 经网络;
所述训练数据按照数据格式划分为文本数据、图片数据。
可选地,将所述小批量梯度数据集输入至所述循环神经网络中进行反向 传播训练得到训练值,包括:
将所述小批量梯度集输入至所述循环神经网络模型的隐藏层中;
所述隐藏层将所述隐藏层的基本参数与所述小批量梯度集进行卷积运算 得到卷积梯度值。
可选地,所述卷积运算为:
其中ω′为所述内存空间余量值,ω为所述小批量梯度数据集,k为卷积核 的大小,s为卷积操作的步幅,p为数据补零矩阵。
可选地,将所述单元数据集A采用批量梯度下降法运算后得到小批量梯 度数据集,包括:
求出所述单元数据集A的损失函数loss为:
其中,b为所述单元数据集A的样本个数,yθ(x(i))为所述单元数据集A 的预测值,y(i)为所述单元数据集A的真实值,x为所述单元数据集A的加权 平均值,θ为所述单元数据集A所包含的预估参数值;
对所述损失函数loss求解θ的偏导数:
基于上述求解偏导数的过程,不断更新小批量梯度数据集θj+1:
其中,θj为更新前的小批量梯度数据集,θj+1为更新后的小批量梯度数据 集当达到预设迭代次数时,退出迭代,输出所述小批量梯度数据集θj+1。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述 计算机可读存储介质上存储有智能训练程序,所述智能训练程序可被一个或 者多个处理器执行,以实现如上所述的智能分配模型训练内存方法的步骤。
本发明提出的智能分配模型训练内存方法、装置及计算机可读存储介质, 通过创建循环神经网络模型,导入部分数据,利用所述循环神经网络模型根 据所述部分数据计算内存容量,并基于批量梯度下降法高效分配多种机器学 习模型的内存,提高了模型训练的效率,保证了用户对内存空间的使用效率。
附图说明
图1为本发明一实施例提供的智能分配模型训练内存的方法的流程示意 图;
图2为本发明一实施例提供的装置的内部结构示意图;
图3为本发明一实施例提供的装置中智能训练程序的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步 说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限 定本发明。
本发明提供一种智能分配模型训练内存的方法。参照图1所示,为本发 明一实施例提供的智能分配模型训练内存的方法的流程示意图。该方法可以 由一个装置执行,该装置可以由软件和/或硬件实现。
在本实施例中,智能分配模型训练内存的方法包括:
S1、在python环境下构建PyTorch框架,所述PyTorch框架包括多种机 器学习模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随机分 割为单元数据集A和单元数据集B。
本发明较佳实施例,所述训练数据是训练所述多种机器学习模型的数据, 较佳地,按照数据格式划分如文本数据、图片数据等,按照业务类型划分如 信息安全、数据预测、聚类判断等,所述训练数据可从热门网站中爬取,并 随机将所述原始数据分割为单元数据集A和单元数据集B。其中,所述单元 数据集A用于计算存储内存的单元余量值,所述单元数据集B用于训练所述 多种机器学习模型,较佳地,所述单元数据集A与所述单元数据集B的数据 量比为1∶9。
所述PyTorch框架是一种基于Python的深度学习框架,能够实现所述多 种机器学习模型,如朴素贝叶斯、支持向量机、卷积神经网络等。
S2、将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数 据集,利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据集输 入至所述循环神经网络中进行反向传播训练得到训练值,直至所述循环神经 网络的训练值小于预设阈值时,所述循环神经网络退出训练并输出所述反向 传播训练的内存空间余量值。
本发明较佳实施例,所述批量梯度下降法具有运算速度更快,可有效避 免相似样本的干扰,减轻计算负担等优点。较佳地,所述单元数据集A采用 批量梯度下降法运算后得到小批量梯度数据集包括求解损失函数loss和对所 述损失函数求解偏导数。
较佳地,求出所述单元数据集A的损失函数loss为:
其中,b为所述单元数据集A的样本个数,yθ(x(i))为所述单元数据集A 的预测值,y(i)为所述单元数据集A的真实值,x为所述单元数据集A的加权 平均值,θ为所述单元数据集A所包含的预估参数值;
对所述损失函数loss求解θ的偏导数:
基于上述求解偏导数的过程,不断更新小批量梯度数据集θj+1:
其中,θj为更新前的小批量梯度数据集,θj+1为更新后的小批量梯度数据 集当达到预设迭代次数时,退出迭代,输出所述小批量梯度数据集θj+1。
进一步地,本发明较佳实施例利用所述PyTorch框架创建一个循环神经网 络,将所述小批量梯度集输入至所述循环神经网络模型,并与所述循环神经 网络模型隐藏层的基本参数进行卷积运算得到卷积梯度值,若所述卷积梯度 值大于预设阈值,则重新随机设定所述基本参数,当所述卷积梯度值小于所 述预设阈值,则所述基本参数值不再变动,所述循环神经网络完成训练。
较佳地,所述卷积运算:
其中ω′为所述内存空间余量值,ω为所述小批量梯度数据集,k为卷积核 的大小,s为卷积操作的步幅,p为数据补零矩阵。
S3、根据所述内存空间余量值,计算多种机器学习模型训练所述单元数 据集B时所占用的模型训练内存,根据所述模型训练内存,将所述单元数据 集B分别导入所述多种机器学习模型进行训练,直至所述多种机器学习模型 的训练值收敛于预设区间时退出训练,并输出所述多种机器学习模型的训练 值。
较佳地,如根据所述循环神经网络智能的计算出所述内存空间余量值的 值为80M,而所述单元数据集A与所述单元数据集B的数量比为1∶9,因此 在以所述循环神经网络为机器学习模型训练所述单元数据集B的话,则需要 720M的内存空间余量值,而由于所述循环神经网络在训练过程中是当前机器 学习模型中最占用内存空间的一种机器学习模型之一,因此,计算多种机器 学习模型训练所述单元数据集B时所占用的模型训练空间可根据梯度下降算 法智能分配模型训练内存:
其中,是所述梯度下降算法,为各机器学习模型集合,如所述朴素 贝叶斯、支持向量机、卷积神经网络等,b为所述单元数据集B的样本个数, 为所述各机器学习模型下训练所述单元数据集B所占用的内存数,可 随机设置,但不大于所述内存空间余量值,如不大于上述720M,y(i)为所述 所述单元数据集B的预估参数值,
对所述损失函数loss求解的偏导数:
基于上述求解偏导数的过程,不断更新各机器学习模型的内存空间余量 值:
其中,θj为更新前的所述各机器学习模型的内存空间余量值,可随机初始 化得到,θj+1为更新后的所述各机器学习模型的内存空间余量值。根据θj+1的 值可得到,如支持向量集训练所述单元数据集B的内存空间余量值为120M, 朴素贝叶斯训练所述单元数据集B的内存空间余量值为72M等。
进一步地,根据所述θj+1的值,给各个机器学习模型划分出对应的内存空 间,由此达到智能分配模型训练内存的目的。
本发明还提供一种装置1。参照图3所示,为本发明一实施例提供的装置 1的内部结构示意图。
在本实施例中,所述装置1可以是PC(Personal Computer,个人电脑), 或者是智能手机、平板电脑、便携计算机等终端设备,也可以是一种服务器 等。该装置1至少包括存储器11、处理器12,通信总线13,以及网络接口 14。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质 包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁 性存储器、磁盘、光盘等。存储器11在一些实施例中可以是装置1的内部存 储单元,例如该装置1的硬盘。存储器11在另一些实施例中也可以是装置1 的外部存储设备,例如装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card) 等。进一步地,存储器11还可以既包括智能分配模型训练内存装置1的内部 存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于装置1的 应用软件及各类数据,例如智能训练程序01的代码等,还可以用于暂时地存 储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器 11中存储的程序代码或处理数据,例如执行智能训练程序01等。
通信总线13用于实现这些组件之间的连接通信。
网络接口14可选的可以包括标准的有线接口、无线接口(如WI-FI接口), 通常用于在该装置1与其他电子设备之间建立通信连接。
可选地,该装置1还可以包括用户接口,用户接口可以包括显示器 (Display)、输入单元比如键盘(KeVboard),可选的用户接口还可以包括标 准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显 示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏 或显示单元,用于显示在装置1中处理的信息以及用于显示可视化的用户界 面。
图3仅示出了具有组件11-14以及智能训练程序01的智能分配模型训练 内存装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对智能 分配模型训练内存装置1的限定,可以包括比图示更少或者更多的部件,或 者组合某些部件,或者不同的部件布置。
在图3所示的装置1实施例中,存储器11中存储有智能训练程序01;处 理器12执行存储器11中存储的智能训练程序01时实现如下步骤:
步骤一、在python环境下构建PyTorch框架,所述PyTorch框架包括多 种机器学习模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随 机分割为单元数据集A和单元数据集B。
本发明较佳实施例,所述训练数据是训练所述多种机器学习模型的数据, 较佳地,按照数据格式划分如文本数据、图片数据等,按照业务类型划分如 信息安全、数据预测、聚类判断等,所述训练数据可从热门网站中爬取,并 随机将所述原始数据分割为单元数据集A和单元数据集B。其中,所述单元 数据集A用于计算存储内存的单元余量值,所述单元数据集B用于训练所述 多种机器学习模型,较佳地,所述单元数据集A与所述单元数据集B的数据 量比为1∶9。
所述PyTorch框架是一种基于Python的深度学习框架,能够实现所述多 种机器学习模型,如朴素贝叶斯、支持向量机、卷积神经网络等。
步骤二、将所述单元数据集A采用批量梯度下降法运算后得到小批量梯 度数据集,利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据 集输入至所述循环神经网络中进行反向传播训练得到训练值,直至所述循环 神经网络的训练值小于预设阈值时,所述循环神经网络退出训练并输出所述 反向传播训练的内存空间余量值。
本发明较佳实施例,所述批量梯度下降法具有运算速度更快,可有效避 免相似样本的干扰,减轻计算负担等优点。较佳地,所述单元数据集A采用 批量梯度下降法运算后得到小批量梯度数据集包括求解损失函数loss和对所 述损失函数求解偏导数。
较佳地,求出所述单元数据集A的损失函数loss为:
其中,b为所述单元数据集A的样本个数,yθ(x(i))为所述单元数据集A 的预测值,y(i)为所述单元数据集A的真实值,x为所述单元数据集A的加权 平均值,θ为所述单元数据集A所包含的预估参数值;
对所述损失函数loss求解θ的偏导数:
基于上述求解偏导数的过程,不断更新小批量梯度数据集θj+1:
其中,θj为更新前的小批量梯度数据集,θj+1为更新后的小批量梯度数据 集当达到预设迭代次数时,退出迭代,输出所述小批量梯度数据集θj+1。
进一步地,本发明较佳实施例利用所述PyTorch框架创建一个循环神经网 络,将所述小批量梯度集输入至所述循环神经网络模型,并与所述循环神经 网络模型隐藏层的基本参数进行卷积运算得到卷积梯度值,若所述卷积梯度 值大于预设阈值,则重新随机设定所述基本参数,当所述卷积梯度值小于所 述预设阈值,则所述基本参数值不再变动,所述循环神经网络完成训练。
较佳地,所述卷积运算:
其中ω′为所述内存空间余量值,ω为所述小批量梯度数据集,k为卷积核 的大小,s为卷积操作的步幅,p为数据补零矩阵。
步骤三、根据所述内存空间余量值,计算多种机器学习模型训练所述单 元数据集B时所占用的模型训练内存,根据所述模型训练内存,将所述单元 数据集B分别导入所述多种机器学习模型进行训练,直至所述多种机器学习 模型的训练值收敛于预设区间时退出训练,并输出所述多种机器学习模型的 训练值。
较佳地,如根据所述循环神经网络智能的计算出所述内存空间余量值的 值为80M,而所述单元数据集A与所述单元数据集B的数量比为1∶9,因此 在以所述循环神经网络为机器学习模型训练所述单元数据集B的话,则需要 720M的内存空间余量值,而由于所述循环神经网络在训练过程中是当前机器 学习模型中最占用内存空间的一种机器学习模型之一,因此,计算多种机器 学习模型训练所述单元数据集B时所占用的模型训练空间可根据梯度下降算 法智能分配模型训练内存:
其中,是所述梯度下降算法,为各机器学习模型集合,如所述朴素 贝叶斯、支持向量机、卷积神经网络等,b为所述单元数据集B的样本个数, 为所述各机器学习模型下训练所述单元数据集B所占用的内存数,可 随机设置,但不大于所述内存空间余量值,如不大于上述720M,y(i)为所述 所述单元数据集B的预估参数值,
对所述损失函数loss求解的偏导数:
基于上述求解偏导数的过程,不断更新各机器学习模型的内存空间余量 值:
其中,θj为更新前的所述各机器学习模型的内存空间余量值,可随机初始 化得到,θj+1为更新后的所述各机器学习模型的内存空间余量值。根据θj+1的 值可得到,如支持向量集训练所述单元数据集B的内存空间余量值为120M, 朴素贝叶斯训练所述单元数据集B的内存空间余量值为72M等。
进一步地,根据所述θj+1的值,给各个机器学习模型划分出对应的内存空 间,由此达到智能分配模型训练内存的目的。
可选地,在其他实施例中,智能训练程序还可以被分割为一个或者多个 模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本 实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成 特定功能的一系列计算机程序指令段,用于描述智能训练程序在智能分配模 型训练内存装置中的执行过程。
例如,参照图3所示,为本发明装置一实施例中的智能训练程序的程序 模块示意图,该实施例中,所述智能训练程序可以被分割为数据预处理模块 10、模型训练模块20及分配训练内存模块30,示例性地:
所述数据预处理模块10用于:在python环境构建PyTorch框架,所述 PyTorch框架包括多种机器学习模型,利用所述PyTorch框架接收训练数据, 并将所述训练数据随机分割为单元数据集A和单元数据集B。
所述模型训练模块20用于:将所述单元数据集A采用批量梯度下降法运 算后得到小批量梯度数据集,利用所述PyTorch框架创建循环神经网络,将所 述小批量梯度数据集输入至所述循环神经网络中进行反向传播训练得到训练 值,直至所述循环神经网络的训练值小于预设阈值时,所述循环神经网络退 出训练并输出所述反向传播训练的内存空间余量值。
所述分配训练内存模块30用于:根据所述内存空间余量值,计算多种机 器学习模型训练所述单元数据集B时所占用的模型训练内存,根据所述模型 训练内存将所述单元数据集B分别导入所述多种机器学习模型进行训练,直 至所述多种机器学习模型的训练值收敛于预设区间时完成训练。
上述数据预处理模块10、模型训练模块20及分配训练内存模块30等程 序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再 赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读 存储介质上存储有智能训练程序,所述智能训练程序可被一个或多个处理器 执行,以实现如下操作:
在python环境构建PyTorch框架,所述PyTorch框架包括多种机器学习 模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随机分割为单 元数据集A和单元数据集B;
将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集, 利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据集输入至所 述循环神经网络中进行反向传播训练得到训练值,直至所述循环神经网络的 训练值小于预设阈值时,所述循环神经网络退出训练并输出所述反向传播训 练的内存空间余量值;
根据所述内存空间余量值,计算多种机器学习模型训练所述单元数据集B 时所占用的模型训练内存,根据所述模型训练内存将所述单元数据集B分别 导入所述多种机器学习模型进行训练,直至所述多种机器学习模型的训练值 收敛于预设区间时完成训练。
本发明计算机可读存储介质具体实施方式与上述智能分配模型训练内存 装置和方法各实施例基本相同,在此不作累述。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的 优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他 性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括 那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、 装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括 一个......”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法 中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的 技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、 磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机, 服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是 利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间 接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种智能分配模型训练内存的方法,其特征在于,所述方法包括:
在python环境构建PyTorch框架,所述PyTorch框架包括多种机器学习模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随机分割为单元数据集A和单元数据集B;
将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集,利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据集输入至所述循环神经网络中进行反向传播训练得到训练值,直至所述循环神经网络的训练值小于预设阈值时,所述循环神经网络退出训练并输出所述反向传播训练的内存空间余量值;
根据所述内存空间余量值,计算多种机器学习模型训练所述单元数据集B时所占用的模型训练内存,根据所述模型训练内存,将所述单元数据集B分别导入所述多种机器学习模型进行训练,直至所述多种机器学习模型的训练值收敛于预设区间时完成训练。
2.如权利要求1所述的智能分配模型训练内存的方法,其特征在于,所述多种机器学习模型包括朴素贝叶斯、支持向量机、卷积神经网络;
所述训练数据按照数据格式划分为文本数据、图片数据。
3.如权利要求1所述的智能分配模型训练内存的方法,其特征在于,将所述小批量梯度数据集输入至所述循环神经网络中进行反向传播训练得到训练值,包括:
将所述小批量梯度集输入至所述循环神经网络模型的隐藏层中;
所述隐藏层将所述隐藏层的基本参数与所述小批量梯度集进行卷积运算得到卷积梯度值。
4.如权利要求3所述的智能分配模型训练内存的方法,其特征在于,所述卷积运算为:
其中ω’为所述内存空间余量值,ω为所述小批量梯度数据集,k为卷积核的大小,s为卷积操作的步幅,p为数据补零矩阵。
5.如权利要求1所述的智能分配模型训练内存的方法,其特征在于,将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集,包括:
求出所述单元数据集A的损失函数loss为:
其中,b为所述单元数据集A的样本个数,yθ(x(i))为所述单元数据集A的预测值,y(i)为所述单元数据集A的真实值,x为所述单元数据集A的加权平均值,θ为所述单元数据集A所包含的预估参数值;
对所述损失函数loss求解θ的偏导数:
基于上述求解偏导数的过程,不断更新小批量梯度数据集θj+1:
其中,θj为更新前的小批量梯度数据集,θj+1为更新后的小批量梯度数据集当达到预设迭代次数时,退出迭代,输出所述小批量梯度数据集θj+1。
6.一种智能分配模型训练内存的装置,其特征在于,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的智能训练程序,所述智能训练程序被所述处理器执行时实现如下步骤:
在python环境构建PyTorch框架,所述PyTorch框架包括多种机器学习模型,利用所述PyTorch框架接收训练数据,并将所述训练数据随机分割为单元数据集A和单元数据集B;
将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集,利用所述PyTorch框架创建循环神经网络,将所述小批量梯度数据集输入至所述循环神经网络中进行反向传播训练得到训练值,直至所述循环神经网络的训练值小于预设阈值时,所述循环神经网络退出训练并输出所述反向传播训练的内存空间余量值;
根据所述内存空间余量值,计算多种机器学习模型训练所述单元数据集B时所占用的模型训练内存,根据所述模型训练内存将所述单元数据集B分别导入所述多种机器学习模型进行训练,直至所述多种机器学习模型的训练值收敛于预设区间时完成训练。
7.如权利要求6所述的智能分配模型训练内存的装置,其特征在于,所述多种机器学习模型包括朴素贝叶斯、支持向量机、卷积神经网络;
所述训练数据按照数据格式划分为文本数据、图片数据。
8.如权利要求7所述的智能分配模型训练内存的装置,其特征在于,将所述小批量梯度数据集输入至所述循环神经网络中进行反向传播训练得到训练值,包括:
将所述小批量梯度集输入至所述循环神经网络模型的隐藏层中;
所述隐藏层将所述隐藏层的基本参数与所述小批量梯度集进行卷积运算得到卷积梯度值。
9.如权利要求8所述的智能分配模型训练内存的装置,其特征在于,将所述单元数据集A采用批量梯度下降法运算后得到小批量梯度数据集,包括:
求出所述单元数据集A的损失函数loss为:
其中,b为所述单元数据集A的样本个数,yθ(x(i))为所述单元数据集A的预测值,y(i)为所述单元数据集A的真实值,x为所述单元数据集A的加权平均值,θ为所述单元数据集A所包含的预估参数值;
对所述损失函数loss求解θ的偏导数:
基于上述求解偏导数的过程,不断更新小批量梯度数据集θj+1:
其中,θj为更新前的小批量梯度数据集,θj+1为更新后的小批量梯度数据集当达到预设迭代次数时,退出迭代,输出所述小批量梯度数据集θj+1。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有智能训练程序,所述智能训练程序可被一个或者多个处理器执行,以实现如权利要求1至5中任一项所述的智能分配模型训练内存方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910520760.8A CN110363303B (zh) | 2019-06-14 | 2019-06-14 | 智能分配模型训练内存方法、装置及计算机可读存储介质 |
PCT/CN2019/102202 WO2020248365A1 (zh) | 2019-06-14 | 2019-08-23 | 智能分配模型训练内存方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910520760.8A CN110363303B (zh) | 2019-06-14 | 2019-06-14 | 智能分配模型训练内存方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110363303A true CN110363303A (zh) | 2019-10-22 |
CN110363303B CN110363303B (zh) | 2023-07-07 |
Family
ID=68217386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910520760.8A Active CN110363303B (zh) | 2019-06-14 | 2019-06-14 | 智能分配模型训练内存方法、装置及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110363303B (zh) |
WO (1) | WO2020248365A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114816758A (zh) * | 2022-05-10 | 2022-07-29 | 北京百度网讯科技有限公司 | 资源分配方法和装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113988389A (zh) * | 2021-10-15 | 2022-01-28 | 厦门大学 | 一种led结构性能的预测方法 |
CN114854978A (zh) * | 2022-04-06 | 2022-08-05 | 武汉钢铁有限公司 | 一种预测带钢跑偏值的方法和装置 |
CN117093871B (zh) * | 2023-10-16 | 2024-02-13 | 之江实验室 | 一种面向深度学习分布式训练测评方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130173509A1 (en) * | 2010-09-29 | 2013-07-04 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangement for processing data |
US9659248B1 (en) * | 2016-01-19 | 2017-05-23 | International Business Machines Corporation | Machine learning and training a computer-implemented neural network to retrieve semantically equivalent questions using hybrid in-memory representations |
CN108415776A (zh) * | 2018-03-06 | 2018-08-17 | 华中科技大学 | 一种分布式数据处理系统中的内存预估与配置优化的方法 |
CN109086652A (zh) * | 2018-06-04 | 2018-12-25 | 平安科技(深圳)有限公司 | 手写字模型训练方法、汉字识别方法、装置、设备及介质 |
CN109445953A (zh) * | 2018-08-30 | 2019-03-08 | 北京大学 | 一种面向大规模机器学习系统的机器学习模型训练方法 |
CN109829542A (zh) * | 2019-01-29 | 2019-05-31 | 武汉星巡智能科技有限公司 | 基于多核处理器的多元深度网络模型重构方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11636308B2 (en) * | 2016-10-31 | 2023-04-25 | Oracle International Corporation | Differentiable set to increase the memory capacity of recurrent neural net works |
CN108960330B (zh) * | 2018-07-09 | 2021-09-10 | 西安电子科技大学 | 基于快速区域卷积神经网络的遥感图像语义生成方法 |
CN109815779A (zh) * | 2018-08-03 | 2019-05-28 | 中国农业大学 | 一种舞台特效触发方法及系统 |
-
2019
- 2019-06-14 CN CN201910520760.8A patent/CN110363303B/zh active Active
- 2019-08-23 WO PCT/CN2019/102202 patent/WO2020248365A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130173509A1 (en) * | 2010-09-29 | 2013-07-04 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangement for processing data |
US9659248B1 (en) * | 2016-01-19 | 2017-05-23 | International Business Machines Corporation | Machine learning and training a computer-implemented neural network to retrieve semantically equivalent questions using hybrid in-memory representations |
CN108415776A (zh) * | 2018-03-06 | 2018-08-17 | 华中科技大学 | 一种分布式数据处理系统中的内存预估与配置优化的方法 |
CN109086652A (zh) * | 2018-06-04 | 2018-12-25 | 平安科技(深圳)有限公司 | 手写字模型训练方法、汉字识别方法、装置、设备及介质 |
CN109445953A (zh) * | 2018-08-30 | 2019-03-08 | 北京大学 | 一种面向大规模机器学习系统的机器学习模型训练方法 |
CN109829542A (zh) * | 2019-01-29 | 2019-05-31 | 武汉星巡智能科技有限公司 | 基于多核处理器的多元深度网络模型重构方法及装置 |
Non-Patent Citations (1)
Title |
---|
李抵非等: "基于分布式内存计算的深度学习方法", 《吉林大学学报(工学版)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114816758A (zh) * | 2022-05-10 | 2022-07-29 | 北京百度网讯科技有限公司 | 资源分配方法和装置 |
CN114816758B (zh) * | 2022-05-10 | 2023-01-06 | 北京百度网讯科技有限公司 | 资源分配方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2020248365A1 (zh) | 2020-12-17 |
CN110363303B (zh) | 2023-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110363303A (zh) | 智能分配模型训练内存方法、装置及计算机可读存储介质 | |
CN107437110B (zh) | 卷积神经网络的分块卷积优化方法及装置 | |
CN108764046A (zh) | 车辆损伤分类模型的生成装置、方法及计算机可读存储介质 | |
CN109657694A (zh) | 图片自动分类方法、装置及计算机可读存储介质 | |
CN109358851A (zh) | 图表组件的创建方法、装置及计算机可读存储介质 | |
CN106503269A (zh) | 应用推荐的方法、装置及服务器 | |
CN109871936A (zh) | 用于处理神经网络中的卷积运算的方法和装置 | |
CN110135942A (zh) | 产品推荐方法、装置及计算机可读存储介质 | |
CN105989130A (zh) | 电子地图展示方法、装置及电子设备 | |
CN107871166A (zh) | 针对机器学习的特征处理方法及特征处理系统 | |
CN111414353A (zh) | 智能化的缺失数据填充方法、装置及计算机可读存储介质 | |
CN110222087A (zh) | 特征提取方法、装置及计算机可读存储介质 | |
CN107358247A (zh) | 一种确定流失用户的方法及装置 | |
CN108108248A (zh) | 一种实现目标检测的cpu+gpu集群管理方法、装置及设备 | |
US11461694B2 (en) | Machine learning implementation in processing systems | |
CN108008942A (zh) | 对数据记录进行处理的方法及系统 | |
CN107682575A (zh) | 业务员呼入进线分配方法、电子装置、计算机可读存储介质 | |
CN108229658A (zh) | 基于有限样本的物体检测器的实现方法及装置 | |
CN110399812A (zh) | 人脸特征智能提取方法、装置及计算机可读存储介质 | |
CN111931848B (zh) | 数据的特征提取方法、装置、计算机设备及存储介质 | |
CN110135889A (zh) | 智能推荐书单的方法、服务器及存储介质 | |
CN110274607A (zh) | 智能化路径规划方法、装置及计算机可读存储介质 | |
CN106845990A (zh) | 一种规则处理方法和设备 | |
CN110347789A (zh) | 文本意图智能分类方法、装置及计算机可读存储介质 | |
CN106169961A (zh) | 基于人工智能的神经网络的网络参数处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |