适用于黑白图片的神经网络学习方法以及训练方法技术

技术编号:15878910 阅读:83 留言:0更新日期:2017-07-25 16:54
本发明专利技术提供了适用于黑白图片的神经网络学习方法以及训练方法,包括:黑白图片预处理为第二矩阵;生成二值化的随机编码矩阵,然后乘以第二矩阵为第四矩阵;激活函数调整为第六矩阵;建立二值化的第七矩阵和浮点数的第八矩阵;第七矩阵乘以第四矩阵为第九矩阵;为代表字符的第十矩阵;将第十矩阵减去第九矩阵为第十一矩阵;将第六矩阵的转置矩阵作为第十二矩阵;第六矩阵乘以第十二矩阵为过程参数;第十二矩阵除以过程参数为第十三矩阵;第十一矩阵乘以第十三矩阵为第十四矩阵;将第十四矩阵与第八矩阵相加得到第十五矩阵,作为新的第八矩阵;将第十五矩阵二值化作为新的第七矩阵;本发明专利技术减小矩阵运算时的字节数,加快运算速度,降低了硬件需求。

Neural network learning method and training method for black and white picture

The invention provides for black and white picture of the neural network learning method and training method: black and white image preprocessing second matrix; generate two random encoding matrix, and then multiplied by second to fourth matrix matrix; the activation function is adjusted to sixth matrix; building two eighth seventh matrix matrix and floating point seventh multiplied by fourth; matrix matrix of ninth matrix; tenth matrix for representing characters; tenth minus ninth is eleventh matrix matrix transpose matrix; the sixth matrix as the twelfth matrix; Sixth matrix matrix is multiplied by twelfth divided by twelfth process parameters; process parameters for the thirteenth matrix matrix; matrix matrix multiplied by thirteenth is fourteenth eleventh the fourteenth and eighth matrix; matrix matrix can be obtained by adding fifteenth matrix, as eighth new moment When the fifteenth matrix is two valued as the new seventh matrix, the invention reduces the number of bytes in the matrix operation, speeds up the operation, and reduces the hardware requirement.

【技术实现步骤摘要】
适用于黑白图片的神经网络学习方法以及训练方法
本专利技术涉及神经网络领域,尤其是适用于黑白图片的神经网络学习方法以及训练方法。
技术介绍
随着计算机与信息技术的不断演进,机器学习以及模式识别已成为近几年来最炙手可热的领域之一。在一些以往需要人执行的图像识别任务正在逐渐被机器替代,例如车牌识别,人脸识别以及指纹识别等。虽然这些领域已经有相对成熟的解决方案,但是其方案应用的领域非常有限,往往只能在特定条件的环境下才能达到预期的识别效果;除此之外,传统的图像识别技术往往只能提取图片的局部信息,而无法对待测试图片中的所有信息作识别以及分类,应用范围广泛,识别准确度高。在现有的神经网络学习方法中由于涉及到多位浮点数的运算,普遍计算量过大,减慢了运算速度,所以对运算设备的要求很高。
技术实现思路
本专利技术的目的在于提供适用于黑白图片的神经网络学习方法以及训练方法,克服了现有技术的困难,能够通过二值化矩阵和浮点数矩阵的交替使用,减小了矩阵运算时的字节数,加快运算速度,大大降低了对运算设备的要求。根据本专利技术的一个方面,提供适用于黑白图片的神经网络学习方法,所述神经网络包括大量的神经元,将大量带有字符图形的黑白图片分别提供给所述神经元进行学习,所述黑白图片中包含c种字符,c属于常数,包括以下步骤:S101、将一黑白图片预处理,根据所述黑白图片中的像素排列和字符图形,将所述黑白图片转化为一个二维的第一矩阵M1,所述第一矩阵M1的行数为a,列数为b,a、b均为大于1的常数,所述第一矩阵M1中的每个所述元素值为0或1;S102、将所述第一矩阵转化为一个一维的第二矩阵M2,所述第二矩阵M2的行数为a×b,列数为1,所述第二矩阵M2中的每个所述元素值为0或1;S103、通过同一随机种子生成二值化的随机编码矩阵来建立一个二维的第三矩阵M3,所述第三矩阵M3的行数为d,d属于大于0的整数,列数为a×b,所述第三矩阵M3中的每个所述元素值为1或-1;S104、将所述第三矩阵M3乘以第二矩阵M2,得到一个一维的第四矩阵M4,所述第四矩阵M4的行数为d,列数为1,所述第四矩阵M4中的每个所述元素值的取值范围为[-(a×b),+(a×b)]的整数;S105、通过激活函数调整所述第四矩阵M4,并且将每个所述元素值移位缩小2n倍后只保留整数位,n为可变参数,n属于整数,得到一个一维的第六矩阵M6,所述第六矩阵M6的行数为d,列数为1,所述第六矩阵M6中的每个所述元素值的取值范围是之间的整数;S106、建立一二维的第七矩阵M7,所述第七矩阵M7的行数为c,列数为d,二值化的所述第七矩阵M7中的每个所述元素值为-1或+1;并且建立一二维的第八矩阵M8,所述第八矩阵M8的行数为c,列数为d,所述第八矩阵M8中的每个所述元素值的取值范围是[-1,+1]之间的浮点数;S107、所述第七矩阵M7乘以所述第四矩阵M4,得到一个一维的第九矩阵M9,所述第九矩阵M9的行数为c,列数为1,所述第九矩阵M9中的每个所述元素值的取值范围是的整数,所述步骤S107中所述第九矩阵M9中的每一行的元素代表一种字符;并且,将所述第九矩阵M9中数值最大元素值所在的行所代表的字符作为预测字符;S108、得到代表当前所述黑白图片的字符的一维的第十矩阵M10,所述第十矩阵M10的行数为c,列数为1,所述第十矩阵M10中的每一行的元素代表一种所述字符,所述第十矩阵M10中代表当前所述黑白图片的字符的行的元素值为0或2m,m为可变参数,m属于整数,其余行的元素值为0;S109、将所述第十矩阵M10减去所述第九矩阵M9,得到一个表示误差的一维的第十一矩阵M11,所述第十一矩阵M11的行数为c,列数为1,所述第十一矩阵M11中的每个所述元素值的取值范围是之间的整数;S110、计算所述第六矩阵M6的转置矩阵,得到一个一维的第十二矩阵M12,所述第十二矩阵M12的行数为1,列数为d,所述第十二矩阵M12中的元素值的取值范围为之间的浮点数;S111、将所述第六矩阵M6乘以所述第十二矩阵M12得到一过程参数num,所述过程参数num属于整数;S112、将所述第十二矩阵M12除以所述过程参数num得到一个一维的第十三矩阵M13,所述第十三矩阵M13的行数为1,列数为d,所述第十三矩阵M13中的元素值的取值范围为之间的浮点数;S113、将所述第十一矩阵M11乘以所述第十三矩阵M13,得到一个二维的第十四矩阵M14,所述第十四矩阵M14的行数为c,列数为d,所述第十四矩阵M14中的元素值的取值范围为之间的浮点数;S114、将所述第十四矩阵M14与所述第八矩阵M8相加,得到一个第十五矩阵M15,将当前的所述第八矩阵M8更新为所述第十五矩阵M15,所述第十五矩阵M15的行数为c,列数为d,所述第十五矩阵M15中的元素值的取值范围为之间的浮点数;以及S115、将所述第十五矩阵M15进行二值化,将所述第十五矩阵M15中大于0的元素值转化为1,将所述第十五矩阵M15中小于等于0的元素值转化为-1,得到一个第十六矩阵M16,所述第十六矩阵M16的行数为c,列数为d,所述第十六矩阵M16中的元素值为-1或1;将当前的所述第七矩阵M7更新为所述第十六矩阵M16,返回步骤S107。优选地,所述步骤S101包括:所述第一矩阵中的每个元素各自对应所述黑白图片中的一个像素点,若所述像素点属于所述字符图形,则该像素点对应的所述第一矩阵中的元素值为1;若所述像素点不属于所述字符图形,则该像素点对应的所述第一矩阵中的元素值为0。优选地,所述步骤S102包括:将二维的第一矩阵中每一行首尾相连形成一维的第二矩阵,其中所述第一矩阵的每一行的尾端衔接下一行的首端。优选地,d=a×b×e,e为大于1的整数。优选地,e的取值范围是[5,20]之间的整数。优选地,所述步骤S105包括:根据以下四个激活函数中的任意一种激活所述第四矩阵M4的每一个元素,所述激活函数包括:ReLU(x)=max(0,x);以及STA(x)=max(0,|x|-α);然后将激活后的每个元素移位缩小2n倍,得到一个一维的第五矩阵M5,所述第五矩阵M5的行数为d,列数为1,所述第五矩阵M5中的元素值的取值范围为之间的浮点数;其中x代表所述第四矩阵M4中的每个元素值,α为可变参数,α的取值范围为[0,1];将所述第五矩阵M5的每个元素只保留整数位,得到所述第六矩阵M6。优选地,所述步骤S105替换为将所述第四矩阵M4的每个元素移位缩小2n倍后只保留整数位,得到所述第六矩阵M6,所述第六矩阵M6的行数为d,列数为1,所述第六矩阵M6中的每个所述元素值的取值范围是优选地,所述步骤S106中包括:所述第七矩阵M7和第八矩阵M8中每个所述元素值的初始赋值均为0。优选地,所述步骤S107中所述第九矩阵M9和所述步骤S108中的第十矩阵M10中的每一行的元素所代表的所述字符按照相同的字符顺序沿列方向自上而下进行排列。优选地,所述步骤S112替换为:将所述第十二矩阵M12除以调整后的所述过程参数num得到一个一维的第十三矩阵M13,调整所述过程参数num的方法为对所述过程参数num加1求和,所述第十三矩阵M13的行数为1,列数为d,所述第十三矩阵M13中的元素值的取值范围为之间的浮点数。本文档来自技高网...
适用于黑白图片的神经网络学习方法以及训练方法

【技术保护点】
一种适用于黑白图片的神经网络学习方法,其特征在于,所述神经网络包括大量的神经元,将大量带有字符图形的黑白图片分别提供给所述神经元进行学习,所述黑白图片中包含c种字符,c属于常数,包括以下步骤:S101、将一黑白图片预处理,根据所述黑白图片中的像素排列和字符图形,将所述黑白图片转化为一个二维的第一矩阵M1,所述第一矩阵M1的行数为a,列数为b,a、b均为大于1的常数,所述第一矩阵M1中的每个所述元素值为0或1;S102、将所述第一矩阵转化为一个一维的第二矩阵M2,所述第二矩阵M2的行数为a×b,列数为1,所述第二矩阵M2中的每个所述元素值为0或1;S103、通过同一随机种子生成二值化的随机编码矩阵来建立一个二维的第三矩阵M3,所述第三矩阵M3的行数为d,d属于大于0的整数,列数为a×b,所述第三矩阵M3中的每个所述元素值为1或‑1;S104、将所述第三矩阵M3乘以第二矩阵M2,得到一个一维的第四矩阵M4,所述第四矩阵M4的行数为d,列数为1,所述第四矩阵M4中的每个所述元素值的取值范围为[‑(a×b),+(a×b)]的整数;S105、通过激活函数调整所述第四矩阵M4,并且将每个所述元素值移位缩小2...

【技术特征摘要】
1.一种适用于黑白图片的神经网络学习方法,其特征在于,所述神经网络包括大量的神经元,将大量带有字符图形的黑白图片分别提供给所述神经元进行学习,所述黑白图片中包含c种字符,c属于常数,包括以下步骤:S101、将一黑白图片预处理,根据所述黑白图片中的像素排列和字符图形,将所述黑白图片转化为一个二维的第一矩阵M1,所述第一矩阵M1的行数为a,列数为b,a、b均为大于1的常数,所述第一矩阵M1中的每个所述元素值为0或1;S102、将所述第一矩阵转化为一个一维的第二矩阵M2,所述第二矩阵M2的行数为a×b,列数为1,所述第二矩阵M2中的每个所述元素值为0或1;S103、通过同一随机种子生成二值化的随机编码矩阵来建立一个二维的第三矩阵M3,所述第三矩阵M3的行数为d,d属于大于0的整数,列数为a×b,所述第三矩阵M3中的每个所述元素值为1或-1;S104、将所述第三矩阵M3乘以第二矩阵M2,得到一个一维的第四矩阵M4,所述第四矩阵M4的行数为d,列数为1,所述第四矩阵M4中的每个所述元素值的取值范围为[-(a×b),+(a×b)]的整数;S105、通过激活函数调整所述第四矩阵M4,并且将每个所述元素值移位缩小2n倍后只保留整数位,n为可变参数,n属于整数,得到一个一维的第六矩阵M6,所述第六矩阵M6的行数为d,列数为1,所述第六矩阵M6中的每个所述元素值的取值范围是之间的整数;S106、建立一二维的第七矩阵M7,所述第七矩阵M7的行数为c,列数为d,二值化的所述第七矩阵M7中的每个所述元素值为-1或+1;并且建立一二维的第八矩阵M8,所述第八矩阵M8的行数为c,列数为d,所述第八矩阵M8中的每个所述元素值的取值范围是[-1,+1]之间的浮点数;S107、所述第七矩阵M7乘以所述第四矩阵M4,得到一个一维的第九矩阵M9,所述第九矩阵M9的行数为c,列数为1,所述第九矩阵M9中的每个所述元素值的取值范围是的整数,所述步骤S107中所述第九矩阵M9中的每一行的元素代表一种字符;并且,将所述第九矩阵M9中数值最大元素值所在的行所代表的字符作为预测字符;S108、得到代表当前所述黑白图片的字符的一维的第十矩阵M10,所述第十矩阵M10的行数为c,列数为1,所述第十矩阵M10中的每一行的元素代表一种所述字符,所述第十矩阵M10中代表当前所述黑白图片的字符的行的元素值为0或2m,m为可变参数,m属于整数,其余行的元素值为0;S109、将所述第十矩阵M10减去所述第九矩阵M9,得到一个表示误差的一维的第十一矩阵M11,所述第十一矩阵M11的行数为c,列数为1,所述第十一矩阵M11中的每个所述元素值的取值范围是之间的整数;S110、计算所述第六矩阵M6的转置矩阵,得到一个一维的第十二矩阵M12,所述第十二矩阵M12的行数为1,列数为d,所述第十二矩阵M12中的元素值的取值范围为之间的浮点数;S111、将所述第六矩阵M6乘以所述第十二矩阵M12得到一过程参数num,所述过程参数num属于整数;S112、将所述第十二矩阵M12除以所述过程参数num得到一个一维的第十三矩阵M13,所述第十三矩阵M13的行数为1,列数为d,所述第十三矩阵M13中的元素值的取值范围为之间的浮点数;S113、将所述第十一矩阵M11乘以所述第十三矩阵M13,得到一个二维的第十四矩阵M14,所述第十四矩阵M14的行数为c,列数为d,所述第十四矩阵M14中的元素值的取值范围为之间的浮点数;S114、将所述第十四矩阵M14与所述第八矩阵M8相加,得到一个第十五矩阵M15,将当前的所述第八矩阵M8更新为所述第十五矩阵M15,所述第十五矩阵M15的行数为c,列数为d,所述第十五矩阵M15中的元素值的取值范围为之间的浮点数;以及S115、将所述第十五矩阵M15进行二值化,将所述第十五矩阵M15中大于0的元素值转化为1,将所述第十五矩阵M15中小于等于0的元素值转化为-1,得到一个第十六矩阵M16,所述第十六矩阵M16的行数为c,列数为d,所述第十六矩阵M16中的元素值为-1或1;将当前的所述第七矩阵M7更新为所述第十六矩阵M16,返回步骤S107。2.如权利要求1所述的适用于黑白图片的神经网络学习方法,其特征在于,所述步骤S101包括:所述第一矩阵中的每个元素各自对应所述黑白图片中的一个像素点,若所述像素点属于所述字符图形,则该像素点对应的所述第一矩阵中的元素值为1;若所述像素点不属于所述字符图形,则该像素点对应的所述第一矩阵中的元素值为0。3.如权利要求1所述的适用于黑白图片的神经网络学习方法,其特征在于,所述步骤S102包括:将二维的第一矩阵中每一行首尾相连形成一维的第二矩阵,其中所述第一矩阵的每一行的尾端衔接下一行的首端。4.如权利要求1所述的适用于黑白图片的神经网络学习方法,其特征在于,d=a×b×e,e为大于1的整数。5.如权利要求4所述的适用于黑白图片的神经网络学习方法,其特征在于,e的取值范围是[5,20]之间的整数。6.如权利要求1所述的适用于黑白图片的神经网络学习方法,其特征在于,所述步骤S105包括:根据以下四个激活函数中的任意一种激活所述第四矩阵M4的每一个元素,所述激活函数包括:ReLU(x)=max(0,x);以及STA(x)=max(0,|x|-α);然后将激活后的每个元素移位缩小2n倍,得到一个一维的第五矩阵M5,所述第五矩阵M5的行数为d,列数为1,所述第五矩阵M5中的元素值的取值范围为之间的浮点数;其中x代表所述第四矩阵M4中的每个元素值,α为可变参数,α的取值范围为[0,1];将所述第五矩阵M5的每个元素只保留整数位,得到所述第六矩阵M6。7.如权利要求1所述的适用于黑白图片的神经网络学习方法,其特征在于,所述步骤S105替换为将所述第四矩阵M4的每个元素移位缩小2n倍后只...

【专利技术属性】
技术研发人员:汪润春谭黎敏赵钊
申请(专利权)人:上海西井信息科技有限公司
类型:发明
国别省市:澳大利亚,AU

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

1