【技术实现步骤摘要】
一种适用于大卷积核的三维Winograd嵌套方法
[0001]本专利技术涉及卷积神经网络算法
,尤其是一种适用于大卷积核的三维Winograd嵌套方法。
技术介绍
[0002]近年来,深度学习(Deep Neural Networks,DNN)已被证明在广泛的应用中取得了性能的突破,将人工智能带入了我们的日常生活。智能手机、自动驾驶汽车、网络级推荐系统等,让我们的生活变得更加轻松。与具有固定规则的传统算法不同,DNN具有自动适应特定任务的能力,其中最为突出的是卷积神经网络(Convolutional Neural Networks,CNN),它已经在多个计算机视觉任务中展示出卓越的准确性,如人脸识别、自动驾驶语义分割和对象检测。但是,CNN的计算成本很高,通常具有巨大的参数量,还会生成大量的中间数据,对存储的需求也很高。
[0003]采用Winograd算法来加速卷积神经网络(CNN)的计算速度成为一个热门的研究方向。相比于其他快速卷积算法FFT和FFA,Winograd的转换方式更为简单,更适用在硬件平台(G ...
【技术保护点】
【技术特征摘要】
1.一种适用于大卷积核的三维Winograd嵌套方法,其特征在于,包括:将三维的原始数据每一面的数据进行有重叠的重新排列,并进行三维Winograd转换,得到重排数据;对所述重排数据逐行抽取数据,进行有重叠的重新排列,并进行三维Winograd转换,得到一个二维矩阵,作为激活转换矩阵;将三维的卷积核数据每一面的数据重新排列,并进行三维Winograd转换,得到一个二维矩阵,作为卷积核转换矩阵;将所述激活转换矩阵与所述卷积核转换矩阵相乘,得到一个二维矩阵,作为输出转换矩阵;将所述输出转换矩阵进行重新排列并进行三维Winograd转换,得到三维的卷积输出结果。2.根据权利要求1所述的一种适用于大卷积核的三维Winograd嵌套方法,其特征在于,所述将三维的原始数据每一面的数据进行有重叠的重新排列,并进行三维Winograd转换,得到重排数据,包括:将所述原始数据每一面的数据进行有重叠的重新排列,得到每一面的二维数据;将所述每一面的二维数据有重叠地重新组合成为多组三维数据;针对每一面的多组三维数据,对每组三维数据分别进行三维Winograd转换并展平,得到每组三维数据对应的一维数据,各面的一维数据组合为重排数据。3.根据权利要求2所述的一种适用于大卷积核的三维Winograd嵌套方法,其特征在于,所述对所述重排数据逐行抽取数据,进行有重叠的重新排列,并进行三维Winograd转换,得到一个二维矩阵,作为激活转换矩阵,包括:对重排数据重新组合后,逐行抽取数据,并进行有重叠的重新排列,得到多组重排后的三维数据;对多组重排后的三维数据进行三维Winograd转换并展平,得到一个二维矩阵,作为激活转换矩阵。4.根据权利要求1所述的一种适用于大卷积核的三维Winograd嵌套方法,其特征在于,所述将三维的卷积核数据每一面的数据重新排列,并进行三维Winograd转换,得到一个二维矩阵,作为卷积核转换矩阵,包括:对所述卷积核数据每一面的数据,将每一排的数据重新排列成为多个二维矩阵,并将每一面的二维矩阵组合为多个三维矩阵;对卷积核数据每个面的三维矩阵进行三维Winograd转换,并展平得到每个面对应的一维向量;将每个面对应的一维向量重新组合、重新排列并进行三维Winograd转换,展平后得到一个二维矩阵,作为卷积核转换矩阵。5.一种适用于大卷积核的三维Winograd嵌套装置,其特征在于,包括:原始数据重排单元,用于将三维的原始数据每一面的数据进行有重叠的重新排列,并进行三维Win...
【专利技术属性】
技术研发人员:叶华锋,王明羽,黄海秋,杨泽旗,虞志益,
申请(专利权)人:中山大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。