CN108345940A - 数据处理方法、装置及计算机可读存储介质 - Google Patents
数据处理方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108345940A CN108345940A CN201810121361.XA CN201810121361A CN108345940A CN 108345940 A CN108345940 A CN 108345940A CN 201810121361 A CN201810121361 A CN 201810121361A CN 108345940 A CN108345940 A CN 108345940A
- Authority
- CN
- China
- Prior art keywords
- fixed point
- data
- data set
- bit wide
- training
- 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/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种数据处理方法,包括:获取数据模型的数据集;根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型,其中,所述预设位宽至少包括两个位宽。本发明还公开了一种数据处理装置、计算机可读存储介质。本发明能够解决现有深度学习训练时数据处理存在的误差可能会导致模型不够准确的问题。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种数据处理方法、装置及计算机可读存储介质。
背景技术
深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
目前,深度学习进行训练时一般通过指定特定位宽,然后在浮点的数据的基础上进行训练,这种方法虽然训练速度快,但是数据处理存在的误差可能会导致模型不够准确。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种数据处理方法、装置及计算机可读存储介质,旨在解决现有深度学习训练模型过程中数据处理存在的误差导致模型不够准确问题。
为实现上述目的,本发明提供一种数据处理方法,所述数据处理方法包括:
获取数据模型的数据集;
根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型,其中,所述预设位宽至少包括两个位宽。
优选地,所述根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型的步骤包括:
将第一预设位宽作为定点化位宽对所述数据集进行定点化,获得当前定点化数据集;
利用当前定点化数据集进行模型训练,获得当前训练模型;
根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
优选地,所述根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型的步骤包括:
将当前定点化位宽与所述预设位宽间隔的差值作为新的定点化位宽对所述数据集进行定点化,获得新的定点化数据集;
利用当前定点化数据集对当前训练模型进行训练,获得新的训练模型;
重复执行上述步骤至所述第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
优选地,所述获得最终迭代训练模型的步骤之后包括:
获取图像数据,根据所述第二预设边界位宽和所述最终迭代训练模型对所述图像数据进行处理。
优选地,所述根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型还包括:
根据预设置信水平参数确定所述数据集的定点化整数位长度;
根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集;
利用所述定点化数据集进行迭代训练,获得最终迭代训练模型。
优选地,所述根据预设置信水平参数确定所述数据集的定点化整数位长度的步骤包括:
根据所述预设置信水平参数和所述数据集的数据元素数量确定所述数据集的置信数量,并确定所述数据集中数值在预设整数位长度对应的置信数值范围内的数据元素数量;
根据所述置信数量和数值在对应置信数值范围内的数据元素数量确定所述数据集的定点化整数位长度。
优选地,所述根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集的步骤包括:
根据当前定点化位宽和所述定点化整数位长度对所述数据集进行数值范围划分;
确定所述数据集中的数据所属数值范围,并根据数据所属数值范围进行定点化,获得定点化数据集。
优选地,所述数据处理方法还包括:
判断所述数据集中的数据是否在第一边界值和第二边界值组成的闭合区间之外;
当所述数据集中的数据在所述闭合区间之外时,以对应的边界值作为数据的定点化数据,并根据所有定点化数据获得定点化数据集。
为实现上述目的,本发明还提供一种数据处理装置,所述数据处理装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上所述的数据处理方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如上所述的数据处理方法的步骤。
本发明提供一种数据处理方法,装置和计算机可读存储介质。在该方法中,获取数据模型的数据集;根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型,其中,所述预设位宽至少包括两个位宽。通过上述方式,通过预设位宽对所述数据集进行定点化,并利用定点化数据进行进行迭代训练,逐步提高模型训练的准确度。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置所属终端结构示意图;
图2为本发明数据处理方法第一实施例的流程示意图;
图3为本发明数据处理方法第二实施例的流程示意图;
图4为本发明数据处理方法第三实施例的流程示意图;
图5为本发明数据处理方法第四实施例的流程示意图;
图6为本发明数据处理方法第五实施例的流程示意图;
图7为本发明数据处理方法第六实施例的流程示意图;
图8为本发明数据处理方法第七实施例的流程示意图;
图9为本发明数据处理方法第八实施例的流程示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有深度学习进行训练时一般通过指定特定位宽,然后再浮点的数据的基础上进行训练,这种方法虽然训练速度快,数据处理存在的误差可能会导致模型不够准确。
为了解决上述技术问题,本发明提供一种数据处理方法,通过在该方法中,先获取数据模型的数据集,再根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型,其中,所述预设位宽至少包括两个位宽,从而逐步提高模型训练的准确度。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、便携计算机等具有显示功能的可移动式终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据处理程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的数据处理程序,并执行以下操作:
获取数据模型的数据集;
根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型,其中,所述预设位宽至少包括两个位宽。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
将第一预设位宽作为定点化位宽对所述数据集进行定点化,获得当前定点化数据集;
利用当前定点化数据集进行模型训练,获得当前训练模型;
根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
将当前定点化位宽与所述预设位宽间隔的差值作为新的定点化位宽对所述数据集进行定点化,获得新的定点化数据集;
利用当前定点化数据集对当前训练模型进行训练,获得新的训练模型;
重复执行上述步骤至所述第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
获取图像数据,根据所述第二预设边界位宽和所述最终迭代训练模型对所述图像数据进行处理。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
根据预设置信水平参数确定所述数据集的定点化整数位长度;
根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集;
利用所述定点化数据集进行迭代训练,获得最终迭代训练模型。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
根据所述预设置信水平参数和所述数据集的数据元素数量确定所述数据集的置信数量,并确定所述数据集中数值在预设整数位长度对应的置信数值范围内的数据元素数量;
根据所述置信数量和数值在对应置信数值范围内的数据元素数量确定所述数据集的定点化整数位长度。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
根据当前定点化位宽和所述定点化整数位长度对所述数据集进行数值范围划分;
确定所述数据集中的数据所属数值范围,并根据数据所属数值范围进行定点化,获得定点化数据集。
进一步地,处理器1001可以调用存储器1005中存储的数据处理程序,还执行以下操作:
判断所述数据集中的数据是否在第一边界值和第二边界值组成的闭合区间之外;
当所述数据集中的数据在所述闭合区间之外时,以对应的边界值作为数据的定点化数据,并根据所有定点化数据获得定点化数据集。
基于上述硬件结构,提出本发明数据处理方法的实施例。
参照图2,图2为本发明数据处理方法第一实施例流程示意图。
本实施应用于数据处理领域,如深度学习网络的数据处理。深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。目前,深度学习进行训练时一般通过指定特定位宽,然后再浮点的数据的基础上进行训练,这种方法虽然训练速度快,数据处理存在的误差可能会导致模型不够准确。本实施例提供一种采用不同定点化位宽的训练方法,利用预设位宽对数据进行定点化并利用定点化的数据进行模型迭代训练,从而逐步提高模型的准度。本实施例的实现过程包括以下步骤。
步骤S10,获取数据模型的数据集;
数据模型是数据特征的抽象,是数据库管理的教学形式框架,在数据模型中分布着各个层级,例如,第一层、第二层、第三层等,在数据模型中数据一般可以以32位的二进制进行表示,在对数据模型进行定点化时,首先获取数据模型中各个层级的数据集。
步骤S20,根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型其中,所述预设位宽至少包括两个位宽。
基于上述步骤,在获取数据模型中数据集后,首先根据预设位宽对获取的数据集进行定点化,获得定点化数据集,然后利用定点化数据集进行迭代训练,获得最终迭代模型。本实施例的预设位宽为用户预先设定的用于定点化的数位长度,为整数位长度和小数位长度之和。在本实施例中,由于需要对数据集合进行迭代训练,至少设置两个以上的预设位宽。在实施过程中,先根据位宽1对获取的模型数据集进行训练,获得位宽1的定点化数据集,然后把位宽1的数据集输入网络进行训练,获得第一次训练的模型,然后再根据位宽2对获取的模型数据集进行训练,获得位宽2的定点化数据集,然后利用位宽2的定点化数据集对第一次训练的模型进行训练,获得第二次训练的模型。根据上述方法根据其他位宽对获取的数据集进行定点化并对已训练的模型继续进行训练直到所有预设位宽的定点化数据集都进行模型训练,获得最终的迭代训练模型。在本实施例实施过程中,可以预先设置若干具体的定点化位宽的数值,例如第一预设位宽、第二预设位宽、第三位宽……也可以设定某个位宽范围,在训练的过程中从预设的位宽范围中按照预设位宽间隔从预设范围其中一个边界值逐渐递增或者递减的方式逐个确定定点化的位宽并对获取的数据进行定点化,利用定点化数据进行训练,例如,可以设置一个初始定点化位宽和末端定点化位宽,首先利用初始定点化位宽对从模型中获取的数据集进行定点化,获得第第一个定点化的数据集,然后利用该定点化数据集对进行模型训练,得到第一次训练的模型;然后初始定点化位宽减1,获得第二个定点化位宽,利用第二个定点化位宽对从模型中获取的数据集进行定点化,获得第二个定点化数据集,然后再利用第二个定点化数据集对第一次训练的模型进行训练,获得新的模型;重复上述对当前定点化位宽减1并进行训练的步骤直到末端定点化位宽的训练完毕,获得最终迭代训练模型。在训练过程中,可以预先对每个位宽设定对应的整数位长度或小数位长度,也可以通过统计实际数据集数据的分布确定整数位长度或小数位长度。在本实施例中,在获得最终迭代训练模型后,在对实际图片数据进行处理时,可以训练模型中的其中一个定点化位宽对图片数据进行定点化,例如上述末端定点化位宽,再将该图片的定点化数据输入获得的最终迭代训练模型对数据进行处理。当然在本实施例中,除了上述末端定点化位宽,对实际图片数据定点化位宽也可以是训练模型过程中的其他定点化位宽。
在本实施例中,获取数据模型的数据集;根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型。通过上述方式,通过预设位宽对所述数据集进行定点化,并利用定点化数据进行进行迭代训练,逐步提高模型训练的准确度。
进一步地,参照图3,图3为本发明数据处理方法第二实施例流程示意图,基于上述本发明提示的数据处理方法,提出本发明的第二实施例。
在本实施例中,步骤S20包括:
步骤S30,将第一预设位宽作为定点化位宽对所述数据集进行定点化,获得当前定点化数据集;
步骤S40,利用当前定点化数据集进行模型训练,获得当前训练模型;
步骤S50,根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
基于上述实施例,本实施例提出一种在预设范围内逐步改变(增加或减少)定点化位宽的训练方法。在本实施例中,第一预设位宽为训练模型过程中对数据进行定点化的位宽范围的一个边界值,也是训练模型过程中第一个定点化的位宽。在本实施例中,先利用所述第一预设定点化位宽对从模型中获得的数据集进行定点化,获得第一个定点化数据集,即当前定点化数据集,然后利用当前定点化数据集进行模型训练,获得当前训练模型,即第一次训练的模型。然后根据预设位宽间隔确定下一个新的定点化位宽,利用新的定点化位宽对从模型中获取的数据集合进行训练,获得第二个定点化数据集,然后利用第二个定点化数据集对第一次训练的模型继续训练获得新的训练模型,然后再根据预设位宽间隔和当前的定点化位宽确定下一个新的定点化位宽并进行模型训练。重复上述定点化和训练过程,直到第二预设位宽的定点化数据集合训练完毕,其中第二预设位宽为训练模型过程中对数据进行定点化的位宽范围的另一个边界值。在本实施例中,预设位宽间隔指的是用于定点化的位宽的差值,例如可以设置为1。在本实施例中,根据预设位宽间隔确定定点化位宽时,可以通过将当前位宽与预设位宽间隔相加或相减的方式确定新的定点化位宽。具体地,首先利用初始定点化位宽对从模型中获取的数据集进行定点化,获得第第一个定点化的数据集,然后利用该定点化数据集对进行模型训练,得到第一次训练的模型;然后初始定点化位宽减1,获得第二个定点化位宽,利用第二个定点化位宽对从模型中获取的数据集进行定点化,获得第二个定点化数据集,然后再利用第二个定点化数据集对第一次训练的模型进行训练,获得新的模型;重复上述对当前定点化位宽减1并进行训练的步骤直到末端定点化位宽的训练完毕,获得最终迭代训练模型。
在本实施例中,将第一预设位宽作为定点化位宽对所述数据集进行定点化,获得当前定点化数据集;利用当前定点化数据集进行模型训练,获得当前训练模型;根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。通过上述方式,通过预设位宽间隔使得用于定点化的位宽逐步变化,获得逐步变化的定点化数据集并进行迭代训练,逐步提高训练模型的准确度。
进一步地,基于上述本发明提示的数据处理方法,参照图4,提出本发明的第三实施例。
基于上述所示的实施例,在本实施例中,步骤S50包括:
步骤S60,将当前定点化位宽与所述预设位宽间隔的差值作为新的定点化位宽对所述数据集进行定点化,获得新的定点化数据集;
步骤S70,利用当前定点化数据集对当前训练模型进行训练,获得新的训练模型;
步骤S80,重复执行上述步骤至所述第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
基于上述实施例,本实施例提出一种逐渐减少定点化位宽的训练方法。在本实施例中,先利用所述第一预设定点化位宽对从模型中获得的数据集进行定点化,获得第一个定点化数据集,即当前定点化数据集,然后利用当前定点化数据集进行模型训练,获得当前训练模型,即第一次训练的模型。然后根据预设位宽间隔确的差值定下一个新的定点化位宽,利用新的定点化位宽对从模型中获取的数据集合进行训练,获得第二个定点化数据集,然后利用第二个定点化数据集对第一次训练的模型继续训练获得新的训练模型,然后再根据预设位宽间隔和当前的定点化位宽差值确定下一个新的定点化位宽并进行模型训练。重复上述定点化和训练过程,直到第二预设位宽的定点化数据集合训练完毕。具体地,首先利用初始定点化位宽对从模型中获取的数据集进行定点化,获得第第一个定点化的数据集,然后利用该定点化数据集对进行模型训练,得到第一次训练的模型;然后初始定点化位宽减1,获得第二个定点化位宽,利用第二个定点化位宽对从模型中获取的数据集进行定点化,获得第二个定点化数据集,然后再利用第二个定点化数据集对第一次训练的模型进行训练,获得新的模型;重复上述对当前定点化位宽减1并进行训练的步骤直到末端定点化位宽的训练完毕,获得最终迭代训练模型。
在本实施例中,将当前定点化位宽与所述预设位宽间隔的差值作为新的定点化位宽对所述数据集进行定点化,获得新的定点化数据集;利用当前定点化数据集对当前训练模型进行训练,获得新的训练模型;重复执行上述步骤至所述第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。通过上述方式,过预设位宽间隔使得用于定点化的位宽逐步减小,获得逐步变化的定点化数据集并进行迭代训练,逐步提高训练模型的准确度。
进一步地,参照图5,提出本发明数据处理方法的第四实施例。在本实施例中,步骤S20之后包括:
步骤S90,获取图像数据,根据所述第二预设边界位宽和所述最终迭代训练模型对所述图像数据进行处理。
基于上述实施例,在本实施例中,在利用第一预设边界位宽和第二预设位宽范围之间的位宽对数据进行定点化和训练模型获得最终迭代模型后,在对实际图片处理时,先获取该图片的数据集,再利用第二预设边界位宽先对图片的数据集进行定点化,再将获得的数据集输入获得的最终迭代训练模型中,对数据进行处理。在本实施例中,相当于将第二预设边界位宽作为实际图片数据处理过程中定点化位宽。在预先训练的模型中,从初始位宽(即第一预设边界位宽)逐步减小位宽至第二预设边界位宽,对数据集进行定点化,并利用获得的定点化数据集训练模型,逐步提高模型的准确度,利用第二预设边界位宽对图片数据处理可以提高数据处理的准确度和运算速度。
进一步地,参照图6,提出本发明数据处理方法的第五实施例。在本实施例中,步骤S20还包括:
步骤S100,根据预设置信水平参数确定所述数据集的定点化整数位长度;
步骤S110,根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集;
步骤S120,利用所述定点化数据集进行迭代训练,获得最终迭代训练模型。
基于上述实施例,在本实施例中,在获取数据模型中数据集后,根据预设置信水平参数确定各个数据集的定点化整数位长度。置信水平为使得数据处理精度达到置信程度的标准。定点化整数长度指的是定点数据中整数部分的位数。预设置信水平参数指的是数据边界的置信水平参数,可以用来衡量某个数据范围是否达到置信水平,从而确定定点化数据的整数部分的位数和小数部分的位数是否设置合理,数据精度是否满足要求,本实施例的置信水平可以是一个百分比的数据,例如95%。在本实施例中,可以根据硬件配置和实际处理需要预先设定定点化所用的位宽和数据边界的置信水平。获取数据模型各个层级的数据集后,在确定一个数据集的整数位长度时,可以根据该数据集中数据元素的总数与预设置信水平参数的乘积确定置信数量,可以根据数据置信水平参数确定使得该数据集中在置信数值范围内的数据元素的数量大于置信数量的最小整数位长度,将该最小整数位长度作为该数据集的定点化整数位长度。具体地,可以预设一整数位长度,例如1,从该整数位长度开始,逐次将整数位长度递增来确定满足要求的定点化长度。在本实施例中,置信数值范围指的是在整数位长度对应定点化数据所能表示的最大值,例如,当整数位长度为IL时,对应置信数值范围可以为[-2IL,2IL],则确定数据集的整数位长度时,根据置信水平参数找到最小的整数位长度,使得该数据集中绝对值小于2IL的数据元素数量大于置信数量。当然,还可以预设若干整数位长度,计算各个整数位长度对应的置信范围和置信范围中的数据元素数量,确定使得元素数量大于置信数量的置信范围对应的最小整数长度,将该最小整数位长度作为对应数据集的整数位长度。此外还可以根据预设置信水平参数确定置信数量,计算数据集数据元素总数与置信数量的差值d,将数据集中数据按照绝对值的大小进行排列,将前d位数据排除后从剩余数据中确定绝对值最大的数据x,确定表示范围包括x的最小整数位长度,并将该最小整数位长度作为数据集的整数位长度。
在本实施例中,可以预先设置定点化所用的位宽BitWidth。BitWidth即定点化数据中数据的位数,等于符号位数1、整数位长度IL及小数位长度FL三者之和,即BitWidth=IL+FL+1。基于上述步骤,确定整数位长度IL后,由于BitWidth为预先设定,则可根据FL=BitWidth-IL-1来确定小数位长度。在本实施例中可以将数值划分为三个数值范围(-∞,-2IL)、(2IL-2-FL,+∞)及[-2IL,2IL-2-FL],当数据在(-∞,-2IL)范围内时,将-2IL作为数据的定点化数据,当数据在(2IL-2-FL,+∞)范围内时,将2IL-2-FL作为数据的定点化数据,当数据在[-2IL,2IL-2-FL]范围内时间,可以根据公式:
datafixed=(round(datafloat*2FL))/2FL
来计算定点化数据,其中datafloat为待处理的浮点数,datafixed为对应浮点数进行定点化后得到的定点数,即第一定点数,round表示进行绝对值处理。当然,在本实施例中在确定整数位长度并根据整数位长度确定小数位长度后也可以不进行数值范围的划分,对所有浮点数按照以下公式计算:
datafixed=(round(datafloat*2FL))/2FL
也可以根据实际的数据处理需求划分为其他的数据范围并根据数据所处的范围进行定点化。在本实施例中,可以在每个数值范围设定对应的定点化方式,例如,例如根据预设的定点化公式计算定点化数据或者预设值来作为该范围所有数据的定点化数据。通过上述方式模型数据中的数据集进行定点化获得数据集的定点化数据集后,再利用定点化数据集进行模型训练。通过不同位宽的定点化数据集的迭代训练获得最终迭代训练模型。
在本实施例中,根据预设置信水平参数确定所述数据集的定点化整数位长度;根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集;利用所述定点化数据集进行迭代训练,获得最终迭代训练模型。通过上述方式,根据预设置信水平基于数学统计来确定整数位长度和定点化边界,避免根据权重数据确定定点化边界,确保获得高精度的定点化效果。
进一步地,参照图7,提出本发明数据处理方法的第六实施例。在本实施例中,步骤S100包括:
步骤S130,根据所述预设置信水平参数和所述数据集的数据元素数量确定所述数据集的置信数量,并确定所述数据集中数值在预设整数位长度对应的置信数值范围内的数据元素数量;
步骤S140,根据所述置信数量和数值在对应置信数值范围内的数据元素数量确定所述数据集的定点化整数位长度。
基于上述实施例,在本实施例中,预设置信水平参数为用来衡量边界的置信水平的标准,为一个百分比,将每个数据集的数据元素总数和置信水平参数相乘得到的乘积为每个数据集的置信数量,为边界对应的数值范围内的数据元素数量达到置信水平的标准。在获取数据模型中各层级的数据集后,根据预设置信水平参数确定各个数据集的定点化整数位长度。定点化整数长度指的是定点数据中整数部分的位数。预设置信水平参数指的是数据边界的置信水平参数,可以用来衡量某个数据范围是否达到置信水平,从而确定定点化数据的整数部分的位数和小数部分的位数是否设置合理,数据精度是否满足要求,本实施例的置信水平可以是一个百分比的数据,例如95%。在本实施例中,可以根据硬件配置和实际处理需要预先设定定点化所用的位宽和数据边界的置信水平。获取数据模型各个层级的数据集后,在确定一个数据集的整数位长度时,可以根据该数据集中数据元素的总数与预设置信水平参数的乘积确定置信数量,可以根据数据置信水平参数确定使得该数据集中在置信数值范围内的数据元素的数量大于置信数量的最小整数位长度,将该最小整数位长度作为该数据集的定点化整数位长度。具体地,可以预设一整数位长度,例如1,从该整数位长度开始,逐次将整数位长度递增来确定满足要求的定点化长度。在本实施例中,置信数值范围指的是在整数位长度对应定点化数据所能表示的最大值,例如,当整数位长度为IL时,对应置信数值范围可以为[-2IL,2IL],则确定数据集的整数位长度时,根据置信水平参数找到最小的整数位长度,使得该数据集中绝对值小于2IL的数据元素数量大于置信数量。当然,还可以预设若干整数位长度,计算各个整数位长度对应的置信范围和置信范围中的数据元素数量,确定使得元素数量大于置信数量的置信范围对应的最小整数长度,将该最小整数位长度作为对应数据集的整数位长度。
在本实施例中,根据所述预设置信水平参数和所述数据集的数据元素数量确定所述数据集的置信数量,并确定所述数据集中数值在预设整数位长度对应的置信数值范围内的数据元素数量;根据所述置信数量和数值在对应置信数值范围内的数据元素数量确定所述数据集的定点化整数位长度。通过上述方式,实现根据预设置信水平参数确定最优的定点化整数位长度,确保较高精度的定点化效果。
进一步地,参照图8,提出本发明数据处理方法的第七实施例。在本实施例中,步骤S110包括:
步骤S150,根据当前定点化位宽和所述定点化整数位长度对所述数据集进行数值范围划分;
步骤S160,确定所述数据集中的数据所属数值范围,并根据数据所属数值范围进行定点化,获得定点化数据集。
基于上述实施例,在本实施例中,可以预先设置定点化所用的位宽BitWidth。BitWidth即定点化数据中数据的位数,等于符号位数1、整数位长度IL及小数位长度FL三者之和,即BitWidth=IL+FL+1。本实施例的预设定点化位宽指的是先设置定点化所用的位宽BitWidth。基于上述步骤,确定整数位长度IL后,由于BitWidth为预先设定,则可根据FL=BitWidth-IL-1来确定小数位长度。在本实施例中可以将数值划分为三个数值范围(-∞,-2IL)、(2IL-2-FL,+∞)及[-2IL,2IL-2-FL],当数据在(-∞,-2IL)范围内时,将-2IL作为数据的定点化数据,当数据在(2IL-2-FL,+∞)范围内时,将2IL-2-FL作为数据的定点化数据,当数据在[-2IL,2IL-2-FL]范围内时间,可以根据公式:
datafixed=(round(datafloat*2FL))/2FL
来计算定点化数据,其中datafloat为浮点数,datafixed为对应的定点数。当然,也可以根据实际的数据处理需求划分为其他的数据范围并根据数据所处的范围进行定点化。在本实施例中,可以在每个数值范围设定对应的定点化方式,例如,例如根据预设的定点化公式计算定点化数据或者预设值来作为该范围所有数据的定点化数据,本实施例的第一定点化数据指的是将数据模型中的数据进行定点化后获得的定点化数据。
在本实施例中,根据当前定点化位宽和所述定点化整数位长度对所述数据集进行数值范围划分;确定所述数据集中的数据所属数值范围,并根据数据所属数值范围进行定点化,获得定点化数据集。通过上述方式,对数据集进行数值范围划分,根据数据所处的范围来进行不同方式的定点化处理,可以根据需要平衡运算速度和数据处理精度。
进一步地,参照图9,提出本发明数据处理方法的第八实施例。
基于上述实施例,在本实施例中,所述根据数据所属数值范围进行定点化,获得定点化数据集的步骤包括:
步骤S170,判断所述数据集中的数据是否在第一边界值和第二边界值组成的闭合区间之外;
步骤S180,当所述数据集中的数据在所述闭合区间之外时,以对应的边界值作为数据的定点化数据,并根据所有定点化数据获得定点化数据集。
基于上述实施例,在本实施例中,在数据处理过程中,在大于某一值或者小于某一值的范围内分布的数据较少或者数据变化不大,可以将该数值的边界值作为对应范围内的定点化数值,这种处理方式对处理简便且对整体数据精度的影响较小。在本实施例中,可以预先设置一数值,即所述第一边界值,将第一边界值作为数据集中大于该值的数据的定点化数据。基于上述实施例,数据集的置信数值范围可以为[-2IL,2IL],可以将第一边界值设置为2IL-2-FL,当数据集中的数据大于2IL-2-FL,将2IL-2-FL,将2IL-2-FL作为该数据的定点化数据,即datafixed=2IL-2-FL,其中datafixed为将待处理数据进行定点化处理后得到的第一定点化数据。对于小于或等于第一边界值的数据,可以根据其他方式进行定点化。例如根据预设定点化公式或者特定定点化值确定定点化数据。另外,在数据处理过程中,在大于某一值或者小于某一值的范围内分布的数据较少或者数据变化不大,可以将该数值的边界值作为对应范围内的定点化数值,这种处理方式对处理简便且对整体数据精度的影响较小。在本实施例中,可以预先设置一数值,即所述第二边界值,其中第二边界值比第一边界值小,将第二边界值作为数据集中小于该值的数据的定点化数据。基于上述实施例,数据集的置信数值范围可以为[-2IL,2IL],可以将第二边界值设置为-2IL,当数据集中的数据小于-2IL,将-2IL,将-2IL作为该数据的定点化数据,即datafixed=-2IL,在本实施例中,对于不在该预设区间范围内的数据可以根据浮点数值利用预设定点化数据计算公式进行计算。
在本实施例中,判断所述数据是否小于第二预设值,其中,判断所述数据集中的数据是否在第一边界值和第二边界值组成的闭合区间之外;当所述数据集中的数据在所述闭合区间之外时,以对应的边界值作为数据的定点化数据,并根据所有定点化数据获得定点化数据集。通过上述方式,可以快速得到在预设闭合区间之外数据的定点化数据,减少运算量,提高运算速度。
此外,本发明还提供一种数据处理装置。
本发明数据处理装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上所述数据处理方法的步骤。
其中,在所述处理器上运行的数据处理程序被执行时所实现的方法可参照本发明数据处理方法各个实施例,此处不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质。
本发明计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如上所述的数据处理方法的步骤。
其中,在所述处理器上运行的数据处理程序被执行时所实现的方法可参照本发明数据处理方法方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据处理方法,其特征在于,所述数据处理方法包括:
获取数据模型的数据集;
根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型,其中,所述预设位宽至少包括两个位宽。
2.如权利要求1所述数据处理方法,其特征在于,所述根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型的步骤包括:
将第一预设位宽作为定点化位宽对所述数据集进行定点化,获得当前定点化数据集;
利用当前定点化数据集进行模型训练,获得当前训练模型;
根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
3.如权利要求2所述的数据处理方法,其特征在于,所述根据预设位宽间隔确定新的定点化位宽,对所述数据集进行定点化并在当前训练模型的基础上进行迭代训练至第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型的步骤包括:
将当前定点化位宽与所述预设位宽间隔的差值作为新的定点化位宽对所述数据集进行定点化,获得新的定点化数据集;
利用当前定点化数据集对当前训练模型进行训练,获得新的训练模型;
重复执行上述步骤至所述第二预设位宽的定点化数据集训练完毕,获得最终迭代训练模型。
4.如权利要求3所述的数据处理方法,其特征在于,所述获得最终迭代训练模型的步骤之后包括:
获取图像数据,根据所述第二预设边界位宽和所述最终迭代训练模型对所述图像数据进行处理。
5.如权利要求1至4中任一项所述的数据处理方法,其特征在于,所述根据预设位宽对所述数据集进行定点化,并利用定点化数据集进行迭代训练,获得最终迭代训练模型还包括:
根据预设置信水平参数确定所述数据集的定点化整数位长度;
根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集;
利用所述定点化数据集进行迭代训练,获得最终迭代训练模型。
6.如权利要求5所述的数据处理方法,其特征在于,所述根据预设置信水平参数确定所述数据集的定点化整数位长度的步骤包括:
根据所述预设置信水平参数和所述数据集的数据元素数量确定所述数据集的置信数量,并确定所述数据集中数值在预设整数位长度对应的置信数值范围内的数据元素数量;
根据所述置信数量和数值在对应置信数值范围内的数据元素数量确定所述数据集的定点化整数位长度。
7.如权利要求6所述的数据处理方法,其特征在于,所述根据所述定点化整数位长度和所述预设位宽进行定点化,获得定点化数据集的步骤包括:
根据当前定点化位宽和所述定点化整数位长度对所述数据集进行数值范围划分;
确定所述数据集中的数据所属数值范围,并根据数据所属数值范围进行定点化,获得定点化数据集。
8.如权利要求7所述的数据处理方法,其特征在于,所述根据数据所属数值范围进行定点化,获得定点化数据集的步骤包括:
判断所述数据集中的数据是否在第一边界值和第二边界值组成的闭合区间之外;
当所述数据集中的数据在所述闭合区间之外时,以对应的边界值作为数据的定点化数据,并根据所有定点化数据获得定点化数据集。
9.一种数据处理装置,其特征在于,所述数据处理装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如权利要求1至8中任一项所述的数据处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被所述处理器执行时实现如权利要求1至8中任一项所述的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810121361.XA CN108345940B (zh) | 2018-02-05 | 2018-02-05 | 数据处理方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810121361.XA CN108345940B (zh) | 2018-02-05 | 2018-02-05 | 数据处理方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108345940A true CN108345940A (zh) | 2018-07-31 |
CN108345940B CN108345940B (zh) | 2021-09-24 |
Family
ID=62960032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810121361.XA Active CN108345940B (zh) | 2018-02-05 | 2018-02-05 | 数据处理方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108345940B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800865A (zh) * | 2019-01-24 | 2019-05-24 | 北京市商汤科技开发有限公司 | 神经网络生成及图像处理方法和装置、平台、电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622207A (zh) * | 2011-01-30 | 2012-08-01 | 中兴通讯股份有限公司 | 定点化处理方法及装置 |
CN105488563A (zh) * | 2015-12-16 | 2016-04-13 | 重庆大学 | 面向深度学习的稀疏自适应神经网络、算法及实现装置 |
US20170102921A1 (en) * | 2015-10-08 | 2017-04-13 | Via Alliance Semiconductor Co., Ltd. | Apparatus employing user-specified binary point fixed point arithmetic |
CN107256422A (zh) * | 2017-06-06 | 2017-10-17 | 上海兆芯集成电路有限公司 | 数据量化方法及装置 |
CN107451659A (zh) * | 2017-07-27 | 2017-12-08 | 清华大学 | 用于位宽分区的神经网络加速器及其实现方法 |
CN107480770A (zh) * | 2017-07-27 | 2017-12-15 | 中国科学院自动化研究所 | 可调节量化位宽的神经网络量化与压缩的方法及装置 |
CN109670582A (zh) * | 2018-12-28 | 2019-04-23 | 四川那智科技有限公司 | 一种全定点化神经网络的设计方法 |
-
2018
- 2018-02-05 CN CN201810121361.XA patent/CN108345940B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622207A (zh) * | 2011-01-30 | 2012-08-01 | 中兴通讯股份有限公司 | 定点化处理方法及装置 |
US20170102921A1 (en) * | 2015-10-08 | 2017-04-13 | Via Alliance Semiconductor Co., Ltd. | Apparatus employing user-specified binary point fixed point arithmetic |
CN105488563A (zh) * | 2015-12-16 | 2016-04-13 | 重庆大学 | 面向深度学习的稀疏自适应神经网络、算法及实现装置 |
CN107256422A (zh) * | 2017-06-06 | 2017-10-17 | 上海兆芯集成电路有限公司 | 数据量化方法及装置 |
CN107451659A (zh) * | 2017-07-27 | 2017-12-08 | 清华大学 | 用于位宽分区的神经网络加速器及其实现方法 |
CN107480770A (zh) * | 2017-07-27 | 2017-12-15 | 中国科学院自动化研究所 | 可调节量化位宽的神经网络量化与压缩的方法及装置 |
CN109670582A (zh) * | 2018-12-28 | 2019-04-23 | 四川那智科技有限公司 | 一种全定点化神经网络的设计方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800865A (zh) * | 2019-01-24 | 2019-05-24 | 北京市商汤科技开发有限公司 | 神经网络生成及图像处理方法和装置、平台、电子设备 |
CN109800865B (zh) * | 2019-01-24 | 2021-03-23 | 北京市商汤科技开发有限公司 | 神经网络生成及图像处理方法和装置、平台、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108345940B (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106469302B (zh) | 一种基于人工神经网络的人脸肤质检测方法 | |
CN106156807B (zh) | 卷积神经网络模型的训练方法及装置 | |
CN107491166B (zh) | 一种调节虚拟现实设备参数的方法及虚拟现实设备 | |
CN107911491A (zh) | 信息推荐方法、装置及存储介质、服务器和移动终端 | |
CN107426423A (zh) | 基于终端使用姿势的提示方法、终端和计算机存储介质 | |
CN107194151B (zh) | 确定情感阈值的方法和人工智能设备 | |
CN109816042A (zh) | 数据分类模型训练的方法、装置、电子设备和存储介质 | |
CN109754316A (zh) | 产品推荐方法、产品推荐系统及存储介质 | |
CN110264093A (zh) | 信用模型的建立方法、装置、设备及可读存储介质 | |
CN107144056A (zh) | 空调器及电子膨胀阀的控制方法和计算机可读存储介质 | |
CN109375859A (zh) | 屏幕控制方法、装置、终端及存储介质 | |
CN109903837A (zh) | 心理检测方法、装置及计算机可读存储介质 | |
CN107729144B (zh) | 应用控制方法、装置、存储介质及电子设备 | |
CN110517340A (zh) | 一种基于人工智能的脸部模型确定方法和装置 | |
CN108121951A (zh) | 特征点定位方法及装置 | |
CN110879993A (zh) | 神经网络训练方法、人脸识别任务的执行方法及装置 | |
CN109621418A (zh) | 一种游戏中虚拟角色的表情调整及制作方法、装置 | |
CN108926838A (zh) | 注意力游戏的出题方法、系统及计算机可读存储介质 | |
CN108304930A (zh) | 网络裁剪方法、装置及计算机可读存储介质 | |
CN108345940A (zh) | 数据处理方法、装置及计算机可读存储介质 | |
CN109219140A (zh) | 频域带宽资源的分配方法、终端及计算机可读存储介质 | |
CN108416426A (zh) | 数据处理方法、装置及计算机可读存储介质 | |
CN108388336A (zh) | 功耗控制方法、装置及计算机可读存储介质 | |
CN117829892A (zh) | 三维模型供需分析方法、装置、计算机设备和存储介质 | |
CN112381224A (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 |