CN116186526B - 一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质 - Google Patents

一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质 Download PDF

Info

Publication number
CN116186526B
CN116186526B CN202310484071.2A CN202310484071A CN116186526B CN 116186526 B CN116186526 B CN 116186526B CN 202310484071 A CN202310484071 A CN 202310484071A CN 116186526 B CN116186526 B CN 116186526B
Authority
CN
China
Prior art keywords
sparse matrix
matrix
channel
zero elements
vector multiplication
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.)
Active
Application number
CN202310484071.2A
Other languages
English (en)
Other versions
CN116186526A (zh
Inventor
刘杰
郭际虎
王庆林
石永振
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202310484071.2A priority Critical patent/CN116186526B/zh
Publication of CN116186526A publication Critical patent/CN116186526A/zh
Application granted granted Critical
Publication of CN116186526B publication Critical patent/CN116186526B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/30Assessment of water resources
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Algebra (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

本申请公开了一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质,涉及科学计算领域。该方法中,将矩阵图像和矩阵特征输入至神经网络模型中;通过神经网络模型输出目标稀疏矩阵的预测存储格式;按照预测存储格式对目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定预设场景的特征信息。神经网络模型中样本稀疏矩阵对应的矩阵图像和矩阵特征为输入,样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式为输出,因此,通过神经网络模型输出的目标稀疏矩阵的预测存储格式在进行稀疏矩阵向量乘的耗时也是最短的,提高了稀疏矩阵向量乘的效率,从而提升了基于稀疏矩阵向量乘进行特征检测时的效率。

Description

一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质
技术领域
本申请涉及科学计算领域,特别是涉及一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质。
背景技术
在科学计算领域,稀疏矩阵向量乘(Sparse Matrix-vector Multiplication,SpMV)的性能影响着诸多运算的效率,比如页面排序、求解线性方程组、图分析等。在计算时,矩阵转化为稀疏矩阵格式的形式参与运算,而稀疏矩阵向量乘内存访问密集和并且性能受限于有限的带宽,针对这一特性,出现了许多针对不同硬件架构和非零元素分布情况设计出的储存稀疏矩阵的格式,通过设计不同的格式来针对不同的情况提高效率。
但是同一运算平台上,某一个稀疏矩阵存储格式并不能使得所有的矩阵发挥出最佳的性能,导致通过稀疏矩阵向量乘对某一场景的特征检测的效率下降。如在海洋声学领域,若在同一运算平台上,对所有的稀疏矩阵采用同一存储格式进行稀疏矩阵向量乘,则可能使得所有的稀疏矩阵并不能发挥出最佳的性能,使得通过稀疏矩阵向量乘得到的声强分布的效率下降。
因此,如何确定某一矩阵进行稀疏矩阵向量乘的最佳格式,以确定出的最佳格式进行矩阵向量乘,提高科学运算的效率是本领域人员亟需解决的技术问题。
发明内容
本申请的目的是提供一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质,用于确定某一矩阵进行稀疏矩阵向量乘的最佳格式,以确定出的最佳格式进行矩阵向量乘,提高科学运算的效率,以及提升基于稀疏矩阵向量乘进行特征检测时的效率。
为解决上述技术问题,本申请提供一种基于稀疏矩阵向量乘的特征检测的方法,包括:
获取数据采集设备采集的用于表征预设场景特征的数据,并根据所述数据确定出目标稀疏矩阵;其中,所述预设场景至少包括声学场景、电路场景之一;
将所述目标稀疏矩阵转化为矩阵图像以及提取所述目标稀疏矩阵的矩阵特征;
将所述矩阵图像和所述矩阵特征输入至预设的神经网络模型中;其中,所述神经网络模型是通过将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,所述样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出训练得到;
通过所述神经网络模型输出所述目标稀疏矩阵的预测存储格式;
按照所述预测存储格式对所述目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定所述预设场景的特征信息。
优选地,建立所述神经网络模型包括:
获取样本稀疏矩阵数据集;
对所述样本稀疏矩阵数据集中的各所述样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘;
从各所述样本稀疏矩阵的所有格式中选取稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为对应的所述样本稀疏矩阵的标签值;
将各所述样本稀疏矩阵转换为对应的所述样本矩阵图像以及提取各所述样本稀疏矩阵的所述样本矩阵特征;
根据各所述样本稀疏矩阵对应的所述样本矩阵图像、所述样本矩阵特征、各所述样本稀疏矩阵对应的所述标签值对所述神经网络模型进行训练。
优选地,所述神经网络模型的结构包括:图像通道和特征通道;其中,所述图像通道用于接收矩阵的图像表示,所述特征通道用于接收所述矩阵的特征表示;所述矩阵包含所述样本稀疏矩阵、所述目标稀疏矩阵;
所述图像通道包含一层卷积层、预设数量的附带注意力机制的卷积层、一层全卷积、一层池化层和一层全连接层;
所述特征通道包含两层全连接层、一个残差全连接层、一个全连接层;其中,所述残差全连接层中包含两个全连接层构成的残差块;
所述图像通道的输出与所述特征通道的输出经过一层全连接层以得到所述预测存储格式。
优选地,提取稀疏矩阵的矩阵特征包括:
获取所述稀疏矩阵中的目标数据;其中,所述目标数据至少包括所述稀疏矩阵中的非零元素的值、所述稀疏矩阵中所述非零元素的列值、所述稀疏矩阵中所述非零元素的行值;
根据所述非零元素的值、所述非零元素的列值、所述非零元素的行值确定所述稀疏矩阵的矩阵特征;其中,所述稀疏矩阵的矩阵特征至少包括所述稀疏矩阵的密度、所述稀疏矩阵每行非零元个数的平均值。
优选地,将稀疏矩阵转换为矩阵图像包括:
将所述稀疏矩阵按照预设大小进行分块;
获取当前分块中当前非零元素的列坐标相对于所述稀疏矩阵对角线的第一距离;
获取所述第一距离与所述当前分块的宽度的第一整除结果以及所述当前非零元素的行坐标与所述当前分块的长度的第二整除结果;
根据所述第一整除结果和所述第二整除结果确定RGB三通道的第一通道中待修改的非零元素的坐标,并对所述第一通道中待修改的非零元素的坐标上的元素值加1;返回所述获取当前分块中当前非零元素的列坐标相对于所述稀疏矩阵对角线的距离的步骤,直至遍历完所述稀疏矩阵中所有的非零元素为止;
获取所述当前分块中所述当前非零元素的行坐标相对于所述稀疏矩阵对角线的第二距离;
获取所述第二距离与所述当前分块的长度的第三整除结果以及所述当前非零元素的列坐标与所述当前分块的宽度的第四整除结果;
根据所述第三整除结果和所述第四整除结果确定所述RGB三通道的第二通道中待修改的非零元素的坐标,并对所述第二通道中待修改的非零元素的坐标上的元素值加1;返回所述获取所述当前分块中所述当前非零元素的行坐标相对于所述稀疏矩阵对角线的距离的步骤,直至遍历完所述稀疏矩阵中所有的非零元素为止;
获取所述当前分块中非零元素的数量;
获取所述当前分块中所述非零元素的数量与所述当前分块大小的比值;
将所述比值作为所述RGB三通道中第三通道的所述当前分块对应的值。
优选地,将稀疏矩阵转换为矩阵图像包括:
获取待生成的矩阵图像的大小以及获取所述稀疏矩阵的非零元素的数量;
在所述非零元素的数量等于所述待生成的矩阵图像的大小的情况下,在RGB三通道中的第一通道中对应的位置填入所述非零元素的行坐标以及在第二通道中对应的位置填入所述非零元素的列坐标;
在所述非零元素的数量小于所述待生成的矩阵图像的大小的情况下,在所述RGB三通道中的所述第一通道中对应的位置填入所述非零元素的行坐标以及在所述第二通道中对应的位置填入所述非零元素的列坐标;对于空余部分的位置填入0;
在所述非零元素的数量大于所述待生成的矩阵图像的大小的情况下,选取所述稀疏矩阵的所有非零元素中部的与所述待生成的矩阵图像的大小相等数量的元素;在所述RGB三通道中的所述第一通道中对应的位置填入所述元素的行坐标以及在所述第二通道中对应的位置填入所述元素的列坐标。
优选地,在确定所述RGB三通道的元素的值后,所述方法还包括:
分别对各通道的元素的值进行归一化处理,以便于各所述通道的元素的值在预设范围内。
为了解决上述技术问题,本申请还提供一种基于稀疏矩阵向量乘的特征检测的装置,包括:
获取模块,用于获取数据采集设备采集的用于表征预设场景特征的数据,并根据所述数据确定出目标稀疏矩阵;其中,所述预设场景至少包括声学场景、电路场景之一;
转化及提取模块,用于将所述目标稀疏矩阵转化为矩阵图像以及提取所述目标稀疏矩阵的矩阵特征;
输入模块,用于将所述矩阵图像和所述矩阵特征输入至预设的神经网络模型中;其中,所述神经网络模型是通过将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,所述样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出训练得到;
输出模块,用于通过所述神经网络模型输出所述目标稀疏矩阵的预测存储格式;
确定模块,用于按照所述预测存储格式对所述目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定所述预设场景的特征信息。
为了解决上述技术问题,本申请还提供一种基于稀疏矩阵向量乘的特征检测的装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述的一种基于稀疏矩阵向量乘的特征检测的方法的步骤。
为了解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的一种基于稀疏矩阵向量乘的特征检测的方法的步骤。
本申请所提供的基于稀疏矩阵向量乘的特征检测的方法,包括:获取数据采集设备采集的用于表征预设场景特征的数据,并根据数据确定出目标稀疏矩阵;其中,预设场景至少包括声学场景、电路场景之一;将目标稀疏矩阵转化为矩阵图像以及提取目标稀疏矩阵的矩阵特征;将矩阵图像和矩阵特征输入至预设的神经网络模型中;通过神经网络模型输出目标稀疏矩阵的预测存储格式;按照预测存储格式对目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定预设场景的特征信息。相比于之前的对所有的稀疏矩阵采用同一存储格式进行稀疏矩阵向量乘的方式,本申请提供的方法中,由于用来预测目标稀疏矩阵进行稀疏矩阵向量乘时的存储格式的神经网络模型中,样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出,因此,通过神经网络模型输出的目标稀疏矩阵的预测存储格式在进行稀疏矩阵向量乘的耗时也是最短的,提高了稀疏矩阵向量乘的效率,从而提升了基于稀疏矩阵向量乘进行特征检测时的效率。
此外,本申请还提供一种基于稀疏矩阵向量乘的特征检测的装置以及计算机可读存储介质,与上述提到的基于稀疏矩阵向量乘的特征检测的方法具有相同或相对应的技术特征,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于稀疏矩阵向量乘的特征检测的方法的流程图;
图2为本申请实施例提供的一种将矩阵用多通道直方图表示法、非零元素位置表示法分别转换为图像的示意图;
图3为本申请的一实施例提供的基于稀疏矩阵向量乘的特征检测的装置的结构图;
图4为本申请另一实施例提供的基于稀疏矩阵向量乘的特征检测的装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质,用于确定某一矩阵进行稀疏矩阵向量乘的最佳格式,以确定出的最佳格式进行矩阵向量乘,提高科学运算的效率,以及提升基于稀疏矩阵向量乘进行特征检测时的效率。
在科学计算领域,稀疏矩阵向量乘的性能影响着诸多运算的效率,比如页面排序、求解线性方程组、图分析等。在计算时,矩阵转化为稀疏矩阵格式的形式参与运算,而稀疏矩阵向量乘内存访问密集和并且性能受限于有限的带宽。针对这一特性,出现了许多针对不同硬件架构和非零元素分布情况设计出的储存稀疏矩阵的格式,通过设计不同的格式来针对不同的情况提高效率。但在同一运算平台上,某一个稀疏矩阵存储格式并不能使得所有的矩阵发挥出最佳的性能。故而,本申请使用建立的神经网络模型对各稀疏矩阵进行稀疏矩阵向量乘时的最佳格式预测,以预测出的格式进行稀疏矩阵向量乘,以此来提高运算的效率。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。图1为本申请实施例提供的一种基于稀疏矩阵向量乘的特征检测的方法的流程图,如图1所示,该方法包括:
S10:获取数据采集设备采集的用于表征预设场景特征的数据,并根据数据确定出目标稀疏矩阵。
其中,预设场景至少包括声学场景、电路场景之一。
S11:将目标稀疏矩阵转化为矩阵图像以及提取目标稀疏矩阵的矩阵特征。
S12:将矩阵图像和矩阵特征输入至预设的神经网络模型中。
其中,神经网络模型是通过将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出训练得到。
S13:通过神经网络模型输出目标稀疏矩阵的预测存储格式。
S14:按照预测存储格式对目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定预设场景的特征信息。
目标稀疏矩阵为待进行稀疏矩阵向量乘的矩阵。稀疏矩阵可以来自以下问题或领域,如声学问题、生化网络、图论问题、化学过程模拟问题、电路模拟问题、组合问题、计算流体动力学问题、计算机图形/视觉问题、有向图问题等。对应的预设场景即为在解决这些问题时对应的场景。对于数据采集设备、预设场景不作限定,根据实际情况确定。如选取的预设场景为海洋声学场景,数据采集设备可以是传感器,在水场中放入带传感器的探测器来检测水下声场数据,如声强、水温密度、流速等,然后根据水下声场数据复原出稀疏矩阵。
在运算平台上对稀疏矩阵进行稀疏矩阵向量乘,得到预设场景的特征信息。运算平台类型根据运算部件分为纯中央处理器(Central Processing Unit,CPU)、纯图形处理器(Graphics Processing Unit,GPU)和CPU+GPU平台。表1为部分稀疏矩阵格式以及其对应的支持的运算平台。当前平台只有CPU,可以选取的稀疏矩阵格式就有CSR、COO、ELL、DIA、CSR5、CVR、SpV8、CSR2等,若当前平台只有GPU,那么可以选取的稀疏矩阵格式就有ACSR、CSR、COO、ELL、DIA、CSR5。不同格式的稀疏矩阵在进行稀疏矩阵向量乘时的耗时不同,因此,可以通过本申请实施例提供的神经网络模型确定出稀疏矩阵的最佳格式(在进行稀疏矩阵向量乘时耗时最短时对应的稀疏矩阵的格式),按照最佳格式进行稀疏矩阵向量乘。
表1 部分稀疏矩阵格式以及其对应的支持的运算平台
本实施例中将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,将样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出,对神经网络模型进行训练,使神经网络模型的输出满足一定的准确率。对于获取稀疏矩阵(包含样本稀疏矩阵以及目标稀疏矩阵)对应的矩阵图像的方式以及提取稀疏矩阵对应的矩阵特征的方式不作限定,根据实际情况确定。
在确定出用来预测稀疏矩阵最佳存储格式时的神经网络模型后,将目标稀疏矩阵转化为矩阵图像以及提取目标稀疏矩阵的矩阵特征,将矩阵图像和矩阵特征输入至神经网络模型后,便可以通过神经网络模型输出目标稀疏矩阵的预测存储格式,使用预测出的存储格式进行稀疏矩阵向量乘,根据稀疏矩阵向量乘的结果便可以确定出预测场景的特征信息。此处仍然以选取的预设场景为海洋声学场景为例,根据水下声场数据复原出稀疏矩阵后,在得到稀疏矩阵的预测存储格式(由于使用所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式进行神经网络模型的训练,故而,预测存储格式也为最佳存储格式)后,使用该预测存储格式进行稀疏矩阵向量乘,可以得到水下的声强分布信息。
本实施例所提供的基于稀疏矩阵向量乘的特征检测的方法,包括:获取数据采集设备采集的用于表征预设场景特征的数据,并根据数据确定出目标稀疏矩阵;其中,预设场景至少包括声学场景、电路场景之一;将目标稀疏矩阵转化为矩阵图像以及提取目标稀疏矩阵的矩阵特征;将矩阵图像和矩阵特征输入至预设的神经网络模型中;通过神经网络模型输出目标稀疏矩阵的预测存储格式;按照预测存储格式对目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定预设场景的特征信息。相比于之前的对所有的稀疏矩阵采用同一存储格式进行稀疏矩阵向量乘的方式,本实施例提供的方法中,由于用来预测目标稀疏矩阵进行稀疏矩阵向量乘时的存储格式的神经网络模型中,样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出,因此,通过神经网络模型输出的目标稀疏矩阵的预测存储格式在进行稀疏矩阵向量乘的耗时也是最短的,提高了稀疏矩阵向量乘的效率,从而提升了基于稀疏矩阵向量乘进行特征检测时的效率。
在上述实施例的基础上,在建立神经网络模型时,优选的实施方式是,建立神经网络模型包括:
获取样本稀疏矩阵数据集;
对样本稀疏矩阵数据集中的各样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘;
从各样本稀疏矩阵的所有格式中选取稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为对应的样本稀疏矩阵的标签值;
将各样本稀疏矩阵转换为对应的样本矩阵图像以及提取各样本稀疏矩阵的样本矩阵特征;
根据各样本稀疏矩阵对应的样本矩阵图像、样本矩阵特征、各样本稀疏矩阵对应的标签值对神经网络模型进行训练。
对神经网络模型的训练过程如下:
步骤1:首先,获取稀疏矩阵数据集。所有符合mtx文件(mtx文件是按照稀疏矩阵格式存储的矩阵数据)规范的数据都可以直接加入数据集。
步骤2:在运算平台上针对所有格式进行相同次数的稀疏矩阵向量乘。需要说明的是,为了降低误差,此处的此处要“足够多次”,比如1000次或者10000次稀疏矩阵向量乘运算,根据多次执行的结果取平均值,在本实施例的方法中至少执行了1000次稀疏矩阵向量乘。根据表1中展示的部分稀疏矩阵格式及其对应的运算平台,在选取了对应的格式后,矩阵就以对应的格式执行稀疏矩阵向量乘运算,统计每个矩阵使用不同稀疏矩阵格式进行稀疏矩阵向量乘时的耗时。表2为针对矩阵apache2(矩阵文件的文件名,后缀为.mtx)在纯CPU平台上的耗时统计结果。此处使用的CPU的信息如下:CPU名称为Intel Xeon Gold 6258R;核心数为28;线程数为56;最大睿频为4.00GHz;基准频率为2.7GHz;Cache大小为38.5MB;内存类型为DDR4-2933。
表2 矩阵apache2在纯CPU平台上的耗时统计结果
步骤3:对矩阵数据进行标注。根据稀疏矩阵向量乘的耗时结果,以耗时最短的格式作为该矩阵的标签值,如表2所示,apache2在纯CPU平台上以8种格式各进行了3000次SpMV,最终MKL-CSR格式所耗费的时间最少,所以apache2的标签值为MKL-CSR。
步骤4:提取矩阵的矩阵特征。
步骤5:将矩阵转化为矩阵图像。
步骤6:将提取出的矩阵特征和矩阵图像作为输入,结合步骤2获取的矩阵标签值,对神经网络进行训练。
对于步骤6用到的神经网络模型,本实施例中提供了一种新的神经网络架构(由于输入为矩阵特征和矩阵图像的双重输入,因此,本申请中将新的神经网络表示为MixedNet),可以根据矩阵特征和矩阵图像双重输入对矩阵的最佳稀疏矩阵向量乘存储格式进行预测。优选的实施方式是,神经网络模型的结构包括:图像通道和特征通道;其中,图像通道用于接收矩阵的图像表示,特征通道用于接收矩阵的特征表示;矩阵包含样本稀疏矩阵、目标稀疏矩阵;
图像通道包含一层卷积层、预设数量的附带注意力机制的卷积层、一层全卷积、一层池化层和一层全连接层;
特征通道包含两层全连接层、一个残差全连接层、一个全连接层;其中,残差全连接层中包含两个全连接层构成的残差块;
图像通道的输出与特征通道的输出经过一层全连接层以得到预测存储格式。如表3所示,表3为MixedNet的结构参数。
表3 MixedNet的结构参数
由表3可以看出,MixedNet由两个通道组成,分别是图像通道和特征通道。图像通道用于接收矩阵的图像表示,如多通道直方图和非零元素位置图,假设尺寸为H×W,输入的图像首先会经历一层卷积层(Conv),卷积核大小为3×3,通道数为32,之后将经历7层附带注意力机制的卷积层(MBConv),卷积核大小和通道数如表4所示;最终,再经历一层全卷积、一次池化和一层全连接层,得到图像通道的输出。特征通道用于接收矩阵的特征表示,选取矩阵的特征构成一个向量,常见的选取的特征如表3所示,该向量即为矩阵的特征表示。特征通道包含两层全连接层(FC)和一个残差全连接层(Residual FC)。残差全连接层中包含两个由全连接层构成的残差块(FcBlock)。输出的结果再次通过一层全连接层之后,和图像通道的输出结果组合(Concat)再通过一层全连接层,得到最终的预测结果。
在提取稀疏矩阵的矩阵特征时,优选的实施方式是,提取稀疏矩阵的矩阵特征包括:
获取稀疏矩阵中的目标数据;其中,目标数据至少包括稀疏矩阵中的非零元素的值、稀疏矩阵中非零元素的列值、稀疏矩阵中非零元素的行值;
根据非零元素的值、非零元素的列值、非零元素的行值确定稀疏矩阵的矩阵特征;其中,稀疏矩阵的矩阵特征至少包括稀疏矩阵的密度、稀疏矩阵每行非零元个数的平均值。
在实施中,只需要提供mtx文件(稀疏矩阵存储文件),然后读取稀疏矩阵数据,其中主要包括三个数据val数组(记录矩阵中非零元素的值)、colIdx数组(记录矩阵中非零元素的列值)、rowIdx数组(记录矩阵中非零元素的行值)。读取完毕,遍历这三个数组,从而计算出矩阵的特征。表4为矩阵的部分特征。
表4 矩阵的部分特征
可见,通过本实施例提供的方法中,实现了矩阵特征的提取。
在将稀疏矩阵转化为图像表示时,本申请实施例提供了两种新的矩阵图像生成方法。本实施例中将方法一称为多通道直方图表示法,将方法二称为非零元素位置表示法。
使用多通道直方图表示法将矩阵转换为图像的过程如下:
将稀疏矩阵按照预设大小进行分块;
获取当前分块中当前非零元素的列坐标相对于稀疏矩阵对角线的第一距离;
获取第一距离与当前分块的宽度的第一整除结果以及当前非零元素的行坐标与当前分块的长度的第二整除结果;
根据第一整除结果和第二整除结果确定RGB三通道的第一通道中待修改的非零元素的坐标,并对第一通道中待修改的非零元素的坐标上的元素值加1;返回获取当前分块中当前非零元素的列坐标相对于稀疏矩阵对角线的距离的步骤,直至遍历完稀疏矩阵中所有的非零元素为止;
获取当前分块中当前非零元素的行坐标相对于稀疏矩阵对角线的第二距离;
获取第二距离与当前分块的长度的第三整除结果以及当前非零元素的列坐标与当前分块的宽度的第四整除结果;
根据第三整除结果和第四整除结果确定RGB三通道的第二通道中待修改的非零元素的坐标,并对第二通道中待修改的非零元素的坐标上的元素值加1;返回获取当前分块中当前非零元素的行坐标相对于稀疏矩阵对角线的距离的步骤,直至遍历完稀疏矩阵中所有的非零元素为止;
获取当前分块中非零元素的数量;
获取当前分块中非零元素的数量与当前分块大小的比值;
将比值作为RGB三通道中第三通道的当前分块对应的值。
具体地,首先,将矩阵按固定大小分块(如分块大小为w×h,w表示矩阵块的宽度,h表示矩阵块的长度);随后,计算非零元素值的列坐标(或行坐标)相对于矩阵对角线的距离,假设非零元素坐标为(r, c),该行对角线元素坐标为(r, r),则该距离为abs(c-r)(abs表示取c-r的绝对值)。之后,将该距离用w整除,得到col(col= abs(c-r)//w),用h整除r得到row(row= r//h);最后,将多通道直方图中坐标为(row, col)位置的元素值加1;重复这一步骤直到遍历完所有非零元素。需要说明的是,多通道直方图表示法可以分为行直方图表示法和列直方图表示法。上文中描述的确定第一通道的待修改的非零元素的坐标的过程采用的方法为行直方图表示法,确定第一通道的待修改的非零元素的坐标的过程采用的方法为列直方图表示,此外,确定第三通道的元素的值时的方式称为密度法。在确定RGB三通道的元素的值后,还包括:分别对各通道的元素的值进行归一化处理,以便于各通道的元素的值在预设范围内。
图2为本申请实施例提供的一种将矩阵用多通道直方图表示法、非零元素位置表示法分别转换为图像的示意图。如图2所示,包含AB元素的虚线框包围的区域为Block1,分块大小设置w=2,h=2,Block1的行标为0,列标为0。使用行直方图法时,Block1中的两个非零元素为A和B,它们的坐标分别为(0,0)和(0,1),距离对角线的距离分别为abs(0-0)和abs(1-0),对应到行直方图表示的RowMajorChannel(行直方图通道,实际以一个二维矩阵表示)中的列坐标分别为abs(0-0)//2=0和abs(1-0)//2=0,行坐标分别为0//2=0和0//2=0,所以最终将RowMajorChannel[0][0]的值加2;使用列直方图法时,以非零元素E和F为例,E的坐标为(2,4),F的坐标为(2,5),它们距离对角线元素(4,4)和(5,5)的距离分别为2和3,所以对应到列直方图表示的通道ColMajorChannel(列直方图通道,实际以一个二维矩阵表示)中所需要修改的非零元素的行坐标为2//2=1和3//2=1,列坐标为4//2=2和5//2=2,故令ColMajorChannel[1][2]的值加2。在三通道图像的R(红色)G(绿色)通道中分别以行直方图和列直方图方法给元素赋值,在B(蓝色)通道为密度图,如图2所示划分的块大小为2×2,第一块坐标为(0,0),其中有2个非零元素,则密度图DensityChannel[0][0]的值为2/4=0.5。获取行直方图、列直方图和密度图之后,对每个通道分别归一化到数值范围为[0,255]的区间。
使用非零元素位置表示法将矩阵转换为图像的过程如下:
获取待生成的矩阵图像的大小以及获取稀疏矩阵的非零元素的数量;
在非零元素的数量等于待生成的矩阵图像的大小的情况下,在RGB三通道中的第一通道中对应的位置填入非零元素的行坐标以及在第二通道中对应的位置填入非零元素的列坐标;
在非零元素的数量小于待生成的矩阵图像的大小的情况下,在RGB三通道中的第一通道中对应的位置填入非零元素的行坐标以及在第二通道中对应的位置填入非零元素的列坐标;对于空余部分的位置填入0;
在非零元素的数量大于待生成的矩阵图像的大小的情况下,选取稀疏矩阵的所有非零元素中部的与待生成的矩阵图像的大小相等数量的元素;在RGB三通道中的第一通道中对应的位置填入元素的行坐标以及在第二通道中对应的位置填入元素的列坐标。
具体地,非零元素位置表示法则是在R(红色)G(绿色)通道中的对应位置填入非零元素的行标和列标,其中若指定生成图像的大小为256*256,那么当矩阵的非零元素总数小于等于256*256时,将所有元素填入图像,空余部分置0;当矩阵非零元素总数大于256*256时,选取矩阵所有非零元素中部的256*256个元素,比如非零元素总共有256*256*3个,那么就根据读取的矩阵数据,将第256*256个非零元素开始到第256*256*2个非零元素为止,依次将行标列标填入生成图像的R(红色)G(绿色)通道中。如图2所示,生成的非零元素位置表示图大小为4×4,可以容纳16个非零元素,原矩阵中共有12个元素,按照ABCDEFGHIJKL的顺序,A的顺序为0,非零元素位置表示图的大小为4×4,则非零元素位置表示图需要修改的位置为(0//4, 0%4)=(0,0);A的坐标为(0,0),则在非零元素位置表示图R和G通道的(0,0)位置分别填入0,F的顺序为5,则非零元素位置表示图需要修改的位置为(5//4, 5%4)=(1,1),F的坐标为(2,5),则在非零元素位置表示图R和G通道的(1,1)位置分别填入2和5。最终所有非零元素全部填入非零元素位置表示图,并剩余4个空位置,将R和G通道剩下的位置的值都置为0。在确定出R通道和G通道的元素后,分别对各通道的元素的值进行归一化处理,以便于各通道的元素的值在预设范围内。
本实施例提供的通过多通道直方图表示法或非零元素位置表示法实现矩阵图像的生成,可以更好地保存矩阵的特征信息,同时也可以指定生成图片的大小和处理任意大小的矩阵。
为了使本技术领域的人员更好地理解本申请方案,下面结合具体的实施方式对本申请作进一步的详细说明。在进行特征检测过程中,对新矩阵进行稀疏矩阵向量乘的过程如下:
步骤1:获取一个新的矩阵,该矩阵以mtx文件形式存储。
步骤2:读取该矩阵的mtx文件。
步骤3:提取矩阵特征。
步骤4:将矩阵转化为指定的图像形式(可选择多通道直方图形式或非零元素位置形式)。
步骤5:将矩阵特征和矩阵图像输入进训练好的网络MixedNet,得到预测结果(预测的最佳稀疏矩阵存储格式)。
步骤6:将矩阵存储格式转化为预测的格式。
步骤7:进行稀疏矩阵向量乘。
在上述实施例中,对于基于稀疏矩阵向量乘的特征检测的方法进行了详细描述,本申请还提供基于稀疏矩阵向量乘的特征检测的装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图3为本申请的一实施例提供的基于稀疏矩阵向量乘的特征检测的装置的结构图。本实施例基于功能模块的角度,包括:
获取模块10,用于获取数据采集设备采集的用于表征预设场景特征的数据,并根据数据确定出目标稀疏矩阵;其中,预设场景至少包括声学场景、电路场景之一;
转化及提取模块11,用于将目标稀疏矩阵转化为矩阵图像以及提取目标稀疏矩阵的矩阵特征;
输入模块12,用于将矩阵图像和矩阵特征输入至预设的神经网络模型中;其中,神经网络模型是通过将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出训练得到;
输出模块13,用于通过神经网络模型输出目标稀疏矩阵的预测存储格式;
确定模块14,用于按照预测存储格式对目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定预设场景的特征信息。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。并且具有与上述提到的基于稀疏矩阵向量乘的特征检测的方法相同的有益效果。
图4为本申请另一实施例提供的基于稀疏矩阵向量乘的特征检测的装置的结构图。本实施例基于硬件角度,如图4所示,基于稀疏矩阵向量乘的特征检测的装置包括:
存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例中所提到的基于稀疏矩阵向量乘的特征检测的方法的步骤。
本实施例提供的基于稀疏矩阵向量乘的特征检测的装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU;协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有GPU,GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的基于稀疏矩阵向量乘的特征检测的方法的相关步骤。另外,存储器20所存储的资源还可以包括操作***202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作***202可以包括Windows、Unix、Linux等。数据203可以包括但不限于上述所提到的基于稀疏矩阵向量乘的特征检测的方法所涉及到的数据等。
在一些实施例中,基于稀疏矩阵向量乘的特征检测的装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图4中示出的结构并不构成对基于稀疏矩阵向量乘的特征检测的装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的基于稀疏矩阵向量乘的特征检测的装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:基于稀疏矩阵向量乘的特征检测的方法,效果同上。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请提供的计算机可读存储介质包括上述提到的基于稀疏矩阵向量乘的特征检测的方法,效果同上。
以上对本申请所提供的一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (9)

1.一种基于稀疏矩阵向量乘的特征检测的方法,其特征在于,包括:
获取数据采集设备采集的用于表征预设场景特征的数据,并根据所述数据确定出目标稀疏矩阵;其中,所述预设场景为海洋声学场景,所述数据采集设备为传感器,所述获取数据采集设备采集的用于表征预设场景特征的数据,并根据所述数据确定出目标稀疏矩阵包括:获取所述传感器采集的水下声场数据,根据所述水下声场数据复原出所述目标稀疏矩阵,所述水下声场数据包括声强、水温密度、流速;
将所述目标稀疏矩阵转化为矩阵图像以及提取所述目标稀疏矩阵的矩阵特征;
将所述矩阵图像和所述矩阵特征输入至预设的神经网络模型中;其中,所述神经网络模型是通过将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,所述样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出训练得到;
通过所述神经网络模型输出所述目标稀疏矩阵的预测存储格式;
按照所述预测存储格式对所述目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定所述预设场景的特征信息;
其中,将稀疏矩阵转换为矩阵图像包括:
将所述稀疏矩阵按照预设大小进行分块;
获取当前分块中当前非零元素的列坐标相对于所述稀疏矩阵对角线的第一距离;
获取所述第一距离与所述当前分块的宽度的第一整除结果以及所述当前非零元素的行坐标与所述当前分块的长度的第二整除结果;
根据所述第一整除结果和所述第二整除结果确定RGB三通道的第一通道中待修改的非零元素的坐标,并对所述第一通道中待修改的非零元素的坐标上的元素值加1;返回所述获取当前分块中当前非零元素的列坐标相对于所述稀疏矩阵对角线的距离的步骤,直至遍历完所述稀疏矩阵中所有的非零元素为止;
获取所述当前分块中所述当前非零元素的行坐标相对于所述稀疏矩阵对角线的第二距离;
获取所述第二距离与所述当前分块的长度的第三整除结果以及所述当前非零元素的列坐标与所述当前分块的宽度的第四整除结果;
根据所述第三整除结果和所述第四整除结果确定所述RGB三通道的第二通道中待修改的非零元素的坐标,并对所述第二通道中待修改的非零元素的坐标上的元素值加1;返回所述获取所述当前分块中所述当前非零元素的行坐标相对于所述稀疏矩阵对角线的距离的步骤,直至遍历完所述稀疏矩阵中所有的非零元素为止;
获取所述当前分块中非零元素的数量;
获取所述当前分块中所述非零元素的数量与所述当前分块大小的比值;
将所述比值作为所述RGB三通道中第三通道的所述当前分块对应的值。
2.根据权利要求1所述的基于稀疏矩阵向量乘的特征检测的方法,其特征在于,建立所述神经网络模型包括:
获取样本稀疏矩阵数据集;
对所述样本稀疏矩阵数据集中的各所述样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘;
从各所述样本稀疏矩阵的所有格式中选取稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为对应的所述样本稀疏矩阵的标签值;
将各所述样本稀疏矩阵转换为对应的所述样本矩阵图像以及提取各所述样本稀疏矩阵的所述样本矩阵特征;
根据各所述样本稀疏矩阵对应的所述样本矩阵图像、所述样本矩阵特征、各所述样本稀疏矩阵对应的所述标签值对所述神经网络模型进行训练。
3.根据权利要求2所述的基于稀疏矩阵向量乘的特征检测的方法,其特征在于,所述神经网络模型的结构包括:图像通道和特征通道;其中,所述图像通道用于接收矩阵的图像表示,所述特征通道用于接收所述矩阵的特征表示;所述矩阵包含所述样本稀疏矩阵、所述目标稀疏矩阵;
所述图像通道包含一层卷积层、预设数量的附带注意力机制的卷积层、一层全卷积、一层池化层和一层全连接层;
所述特征通道包含两层全连接层、一个残差全连接层、一个全连接层;其中,所述残差全连接层中包含两个全连接层构成的残差块;
所述图像通道的输出与所述特征通道的输出经过一层全连接层以得到所述预测存储格式。
4.根据权利要求1至3任意一项所述的基于稀疏矩阵向量乘的特征检测的方法,其特征在于,提取稀疏矩阵的矩阵特征包括:
获取所述稀疏矩阵中的目标数据;其中,所述目标数据至少包括所述稀疏矩阵中的非零元素的值、所述稀疏矩阵中所述非零元素的列值、所述稀疏矩阵中所述非零元素的行值;
根据所述非零元素的值、所述非零元素的列值、所述非零元素的行值确定所述稀疏矩阵的矩阵特征;其中,所述稀疏矩阵的矩阵特征至少包括所述稀疏矩阵的密度、所述稀疏矩阵每行非零元个数的平均值。
5.根据权利要求1所述的基于稀疏矩阵向量乘的特征检测的方法,其特征在于,将稀疏矩阵转换为矩阵图像包括:
获取待生成的矩阵图像的大小以及获取所述稀疏矩阵的非零元素的数量;
在所述非零元素的数量等于所述待生成的矩阵图像的大小的情况下,在RGB三通道中的第一通道中对应的位置填入所述非零元素的行坐标以及在第二通道中对应的位置填入所述非零元素的列坐标;
在所述非零元素的数量小于所述待生成的矩阵图像的大小的情况下,在所述RGB三通道中的所述第一通道中对应的位置填入所述非零元素的行坐标以及在所述第二通道中对应的位置填入所述非零元素的列坐标;对于空余部分的位置填入0;
在所述非零元素的数量大于所述待生成的矩阵图像的大小的情况下,选取所述稀疏矩阵的所有非零元素中部的与所述待生成的矩阵图像的大小相等数量的元素;在所述RGB三通道中的所述第一通道中对应的位置填入所述元素的行坐标以及在所述第二通道中对应的位置填入所述元素的列坐标。
6.根据权利要求1或5所述的基于稀疏矩阵向量乘的特征检测的方法,其特征在于,在确定所述RGB三通道的元素的值后,所述方法还包括:
分别对各通道的元素的值进行归一化处理,以便于各所述通道的元素的值在预设范围内。
7.一种基于稀疏矩阵向量乘的特征检测的装置,其特征在于,包括:
获取模块,用于获取数据采集设备采集的用于表征预设场景特征的数据,并根据所述数据确定出目标稀疏矩阵;其中,所述预设场景为海洋声学场景,所述数据采集设备为传感器,所述获取数据采集设备采集的用于表征预设场景特征的数据,并根据所述数据确定出目标稀疏矩阵包括:获取所述传感器采集的水下声场数据,根据所述水下声场数据复原出所述目标稀疏矩阵,所述水下声场数据包括声强、水温密度、流速;
转化及提取模块,用于将所述目标稀疏矩阵转化为矩阵图像以及提取所述目标稀疏矩阵的矩阵特征;
输入模块,用于将所述矩阵图像和所述矩阵特征输入至预设的神经网络模型中;其中,所述神经网络模型是通过将样本稀疏矩阵对应的样本矩阵图像和样本稀疏矩阵对应的样本矩阵特征作为输入,所述样本稀疏矩阵的所有格式进行相同次数的稀疏矩阵向量乘的耗时结果中耗时最短时对应的格式作为输出训练得到;
输出模块,用于通过所述神经网络模型输出所述目标稀疏矩阵的预测存储格式;
确定模块,用于按照所述预测存储格式对所述目标稀疏矩阵进行稀疏矩阵向量乘,并根据稀疏矩阵向量乘的结果确定所述预设场景的特征信息;
其中,将稀疏矩阵转换为矩阵图像包括:
将所述稀疏矩阵按照预设大小进行分块;
获取当前分块中当前非零元素的列坐标相对于所述稀疏矩阵对角线的第一距离;
获取所述第一距离与所述当前分块的宽度的第一整除结果以及所述当前非零元素的行坐标与所述当前分块的长度的第二整除结果;
根据所述第一整除结果和所述第二整除结果确定RGB三通道的第一通道中待修改的非零元素的坐标,并对所述第一通道中待修改的非零元素的坐标上的元素值加1;返回所述获取当前分块中当前非零元素的列坐标相对于所述稀疏矩阵对角线的距离的步骤,直至遍历完所述稀疏矩阵中所有的非零元素为止;
获取所述当前分块中所述当前非零元素的行坐标相对于所述稀疏矩阵对角线的第二距离;
获取所述第二距离与所述当前分块的长度的第三整除结果以及所述当前非零元素的列坐标与所述当前分块的宽度的第四整除结果;
根据所述第三整除结果和所述第四整除结果确定所述RGB三通道的第二通道中待修改的非零元素的坐标,并对所述第二通道中待修改的非零元素的坐标上的元素值加1;返回所述获取所述当前分块中所述当前非零元素的行坐标相对于所述稀疏矩阵对角线的距离的步骤,直至遍历完所述稀疏矩阵中所有的非零元素为止;
获取所述当前分块中非零元素的数量;
获取所述当前分块中所述非零元素的数量与所述当前分块大小的比值;
将所述比值作为所述RGB三通道中第三通道的所述当前分块对应的值。
8.一种基于稀疏矩阵向量乘的特征检测的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的一种基于稀疏矩阵向量乘的特征检测的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的一种基于稀疏矩阵向量乘的特征检测的方法的步骤。
CN202310484071.2A 2023-05-04 2023-05-04 一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质 Active CN116186526B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310484071.2A CN116186526B (zh) 2023-05-04 2023-05-04 一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310484071.2A CN116186526B (zh) 2023-05-04 2023-05-04 一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质

Publications (2)

Publication Number Publication Date
CN116186526A CN116186526A (zh) 2023-05-30
CN116186526B true CN116186526B (zh) 2023-07-18

Family

ID=86442643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310484071.2A Active CN116186526B (zh) 2023-05-04 2023-05-04 一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质

Country Status (1)

Country Link
CN (1) CN116186526B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113721982A (zh) * 2021-08-03 2021-11-30 清华大学 稀疏矩阵存储方法、向量计算方法和电子设备
CN115048215A (zh) * 2022-05-24 2022-09-13 哈尔滨工程大学 一种基于混合压缩格式的对角矩阵spmv在gpu上的实现方法
CN115390788A (zh) * 2022-09-19 2022-11-25 复旦大学 基于fpga的图卷积神经网络稀疏矩阵乘法分配***

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140181171A1 (en) * 2012-12-24 2014-06-26 Pavel Dourbal Method and system for fast tensor-vector multiplication
US10346507B2 (en) * 2016-11-01 2019-07-09 Nvidia Corporation Symmetric block sparse matrix-vector multiplication
US11127167B2 (en) * 2019-04-29 2021-09-21 Nvidia Corporation Efficient matrix format suitable for neural networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113721982A (zh) * 2021-08-03 2021-11-30 清华大学 稀疏矩阵存储方法、向量计算方法和电子设备
CN115048215A (zh) * 2022-05-24 2022-09-13 哈尔滨工程大学 一种基于混合压缩格式的对角矩阵spmv在gpu上的实现方法
CN115390788A (zh) * 2022-09-19 2022-11-25 复旦大学 基于fpga的图卷积神经网络稀疏矩阵乘法分配***

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Efficiently Executing Sparse Matrix-Matrix Multiplication on General Purpose Digital Single Processor;Haibo Xu et al.;《2022 IEEE 24th Int Conf on High Performance Computing & Communications》;第1-8页 *
Sparse Matrix Classification on Imbalanced Datasets Using Convolutional Neural Networks;JUAN C. PICHEL et al.;《IEEE Access》;第82377-82389页 *
基于 GPU 的稀疏矩阵存储格式优化研究;杨世伟;《计算机工程》;第45卷(第9期);第23-39页 *

Also Published As

Publication number Publication date
CN116186526A (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
US10096134B2 (en) Data compaction and memory bandwidth reduction for sparse neural networks
EP3627397B1 (en) Processing method and apparatus
KR102499396B1 (ko) 뉴럴 네트워크 장치 및 뉴럴 네트워크 장치의 동작 방법
CN108364061B (zh) 运算装置、运算执行设备及运算执行方法
CN111352656B (zh) 使用按位运算的神经网络设备和方法
CN106855952B (zh) 基于神经网络的计算方法及装置
US20200380360A1 (en) Method and apparatus with neural network parameter quantization
CN111444807B (zh) 目标检测方法、装置、电子设备和计算机可读介质
CN107832794A (zh) 一种卷积神经网络生成方法、车系识别方法及计算设备
KR20190140841A (ko) 확률 적응적 자원 할당을 통한 신경망 하드웨어 가속
CN113126953A (zh) 针对浮点处理的方法和装置
CN116186526B (zh) 一种基于稀疏矩阵向量乘的特征检测的方法、装置及介质
CN112561050B (zh) 一种神经网络模型训练方法及装置
CN110619624B (zh) 一种图像分解方法及装置
CN111898544A (zh) 文字图像匹配方法、装置和设备及计算机存储介质
CN116486153A (zh) 图像分类方法、装置、设备及存储介质
CN116342628A (zh) 病理图像分割方法、装置和计算机设备
CN111222558A (zh) 图像处理方法及存储介质
CN114882247A (zh) 图像的处理方法、装置和电子设备
CN111899161A (zh) 一种超分辨率重建方法
US20230325665A1 (en) Sparsity-based reduction of gate switching in deep neural network accelerators
US20240028895A1 (en) Switchable one-sided sparsity acceleration
US20240119269A1 (en) Dynamic sparsity-based acceleration of neural networks
CN117911794B (zh) 用于图像分类的模型获得方法、装置、电子设备和存储介质
US20240020517A1 (en) Real-time inference of temporal down-sampling convolutional networks

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