CN116503675A - 一种基于强聚类损失函数的多种类目标辨识方法及*** - Google Patents

一种基于强聚类损失函数的多种类目标辨识方法及*** Download PDF

Info

Publication number
CN116503675A
CN116503675A CN202310762241.9A CN202310762241A CN116503675A CN 116503675 A CN116503675 A CN 116503675A CN 202310762241 A CN202310762241 A CN 202310762241A CN 116503675 A CN116503675 A CN 116503675A
Authority
CN
China
Prior art keywords
loss function
value
data
layer
hardware
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
Application number
CN202310762241.9A
Other languages
English (en)
Other versions
CN116503675B (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.)
Nanjing University of Science and Technology
Original Assignee
Nanjing University of Science and 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 Nanjing University of Science and Technology filed Critical Nanjing University of Science and Technology
Priority to CN202310762241.9A priority Critical patent/CN116503675B/zh
Publication of CN116503675A publication Critical patent/CN116503675A/zh
Application granted granted Critical
Publication of CN116503675B publication Critical patent/CN116503675B/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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • 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/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • 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
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于强聚类损失函数的多种类目标辨识方法及***。所述方法为:根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数;加入目标的移位特征,进一步增大不同类别目标的损失值差异;编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算。所述***包括强聚类损失函数构建、移位特征添加、硬件代码编写、FPGA、硬件层面电路图构建这些模块。本发明聚类效果明显、识别精度高,并且提升了计算效率。

Description

一种基于强聚类损失函数的多种类目标辨识方法及***
技术领域
本发明涉及雷达目标识别技术领域,特别是一种基于强聚类损失函数的多种类目标辨识方法及***。
背景技术
对空间目标进行有效探测和种类识别,是雷达目标识别领域面临的挑战。随着理论的完善和计算机算力的提升,深度学习逐渐成为高效便捷的识别工具。卷积神经网络(Convolutional Neural Networks, CNN)对图像特征具有很好的识别效果,近年被广泛运用在目标识别领域。神经网络模型通过不断迭代计算待识别目标的损失函数值,得到最贴近标签值的特征值,合适的损失函数可以帮助迭代过程的加速,高效准确地实现聚类过程。另一方面,FPGA作为高度灵活的可编程逻辑电路,可以通过代码灵活地处理各种逻辑指令,集成度高,功耗较低,且体积相比GPU大大减小。
近年来,人们对于使用深度学***台,实现硬件平台上的快速准确识别,但针对的仅是二分类问题,采用的网络模型较为简单,分类效果较好。
发明内容
本发明的目的在于提供一种基于强聚类损失函数的多种类目标辨识方法及***,根据卷积神经网络模型提取散射模型微多普勒频率中不同目标特性,并利用FPGA硬件资源提升计算效率,从而在低功耗硬件平台上达到更准确的分类效果。
实现本发明目的的技术解决方案为:一种基于强聚类损失函数的多种类目标辨识方法,包括以下步骤:
步骤1、根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加;
步骤2、在步骤1的基础上加入目标的移位特征,进一步增大不同类别目标的损失值差异;
步骤3、编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;
步骤4、构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算。
一种基于强聚类损失函数的多种类目标辨识***,该***用于实现所述的基于强聚类损失函数的多种类目标辨识方法,所述***具体包括强聚类损失函数构建模块、移位特征添加模块、硬件代码编写模块、FPGA、硬件层面电路图构建模块,其中:
强聚类损失函数构建模块,用于根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加;
移位特征添加模块,用于在强聚类损失函数构建模块的基础上加入目标的移位特征,进一步增大不同类别目标的损失值差异;
硬件代码编写模块,用于编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;
硬件层面电路图构建模块,用于构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算。
本发明与现有技术相比,其显著优点为:(1)基于不同目标的标签值与特征值的特点,加入移位过程筛选同种类目标的相同特征,进行提高损失函数聚类功能的设计;(2)通过自定义IP核实现Tensorflow框架下网络层函数的计算功能,并进行计算过程的并行加速,优化过程高效易懂,便于快速理解FPGA硬件结构;(3)自定义IP核与Zynq处理器之间利用AXI总线进行传输,结合片上资源的合理安排,在Xilinx公司的FPGA硬件平台上实现神经网络的分类功能,与传统方法相比,分类精度更高,聚类效果更明显,整体功耗更低。
附图说明
图1是本发明中无人机目标的运动过程示意图。
图2是本发明中待分类的九种无人机目标简化模型示意图。
图3是传统交叉熵损失函数的聚类效果图。
图4是本发明中使用自定义损失函数的聚类效果图。
图5是本发明中构建卷积层IP核的示意图。
图6是本发明中构建池化层IP核的示意图。
图7是本发明中整体硬件设计示意图。
具体实施方式
本发明一种基于强聚类损失函数的多种类目标辨识实现方法,包括以下步骤:
步骤1、根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加;通过增大不同种类目标的损失值的差异,实现更明显的聚类效果;
步骤2、在步骤1的基础上加入目标的移位特征,进一步增大不同类别目标的损失值差异,从而实现多种类目标分类精度的提升;
步骤3、编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;
步骤4、构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS(处理***)端和PL(可编程逻辑)端联合生成比特流,实现CNN模型在FPGA上的运算。
作为一种具体实施例,步骤1中所述根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,建立一种两个阶段的损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加,从而实现识别精度的提高,具体如下:
步骤1.1、建立损失函数的输入为CNN模型一个批次中各图片的特征值和标签值,输出是一个批次得到的相对损失值;
步骤1.2、用表示各目标输入图片经过CNN模型推理得到的种类特征值,用表示各目标输入图片的种类标签值;
步骤1.3、计算两个目标种类特征值之间的欧拉距离为:
(1)
步骤1.4、构建损失值修正项
(2)
步骤1.5、结合分类问题传统使用的交叉熵损失函数,增加加权修正项,得到强聚类损失函数:
(3)
其中和/>是指同一批次不同的两个输入目标,/>为损失函数所计算的损失值,是该批次样本数量,/>是种类的总数,/>是指样本/>可能是种类/>的概率,超参数/>是指不同类别图像的特征的最小距离,/>是修正项在整个损失函数中的权重,也是一个超参数。
根据式(1)~(3),本发明可构建在神经网络训练过程中明显增加聚类效果的损失函数,并通过迭代计算,获得分类精度更高的网络模型。
作为一种具体实施例,步骤2中所述在步骤1的基础上加入目标的移位特征,使得损失值差异进一步增大,从而实现多种类目标分类精度的提升,具体如下:
步骤2.1、损失函数的输入为同一批次待识别目标的特征值和标签值,在式(1)计算两个目标损失值时,对输入的标签值、特征值进行循环移位,将第一位移到最后一位,原来第二位变成第一位,以此类推循环移位;
步骤2.2、移位后的标签值、特征值再进行损失值的计算,实现特征组合;
步骤2.3、对损失函数的输入值进行持续移位,直至与最初输入相同;
步骤2.4、将不同移位位置的标签值与特征值,通过损失函数计算得到的损失值求和,作为最终的损失函数值。通过对不同种类目标在不同组合下的特征的学习,增大不同种类目标特征值之间的距离,缩小同一种类目标特征值之间的距离,从而达到增强聚类的效果,提高对多种类目标分类的准确率。
作为一种具体实施例,步骤3中所述CNN模型的网络结构中包含的网络层有卷积层、池化层、全连接层;
每一层的输入通道数为,输入高度为/>,输入宽度为/>,采样核大小为/>,采样区域移动步长为/>,在样本数据***补0的层数为/>,规定层的输出通道数为/>,得到网络层的输出高度/>和输出宽度/>
(4)
作为一种具体实施例,对于卷积层,输出矩阵的每一个数据是卷积核区域内权重和输入矩阵数据的乘积与偏置之和,输入数据与输出数据/>的关系如式(5)所示:
(5)
其中是该输入数据对应的权重数据,/>是该输入数据对应的偏置数据;
对于池化层,输出矩阵的每一个数据与采样核区域内的输入数据具有函数关系;对于最大池化层,输出的一个数据元素是输入数据在采样核区域内的最大值;对于最小池化层,输出的一个数据元素是输入数据在采样核区域内的最小值;对于平均池化层,输出的一个数据元素是输入数据在采样核区域内的平均值;
对于全连接层,采用高度、宽度与输入高度、输入宽度相同大小的卷积核,进行一次卷积计算得到,全连接层输出矩阵形状为
作为一种具体实施例,步骤3中所述编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中,具体如下:
步骤3.1、根据网络层计算原理,在框架中编写每一个网络层的功能代码;
步骤3.2、在网络层计算过程中,由于要进行多次乘加计算,存在多个嵌套的for循环结构,若采用顺序进行的方式进行循环,会导致计算时间过长,同时FPGA上的资源利用率较低。为了提高计算效率,根据FPGA上能利用的最大资源,选定一个循环结构进行优化;首先要固定每个网络层循环边界,再在功能代码层面对选定for循环进行流水线展开,实现一个周期内并行地进行多个乘加计算,获得优化代码,从而提高计算效率;
步骤3.3、在HLS框架内对优化代码进行仿真、综合,再将C转换为VHDL代码,实现RTL级别的设计并生成每个网络层的IP核;本发明基于HLS pragma优化指令,极大的减少网络层中对数据的计算时间,从而提高卷积神经网络对目标的识别效率;
步骤3.4、将训练过程中的模型文件中每一层网络的权重和偏置数据转换成.bin文件,并和待识别的图片一同存放在FPGA的PS端。
作为一种具体实施例,步骤4所述构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算,具体为:
步骤4.1、将优化代码生成的IP核导入硬件电路工程设计中,再加入FPGA开发板的Zynq处理器模块;
步骤4.2、对FPGA开发板的Zynq处理器模块进行配置,打开FPGA的PL端与PS端进行数据传输的128位的S_AXI总线,配置计算过程中用到的I/O***设备,并为专用于内部固化的外设I/O和处理器DDR内存寻址接口设计外部连接;在为不同IP核的输入、输出数据在总线上分配固定范围的地址后,对所有模块进行连线,形成硬件设计电路图;
步骤4.3、对硬件设计电路图添加顶层文件,并生成比特流文件,该比特流文件包含自定义具有网络层功能的IP核、所有模块的设置以及整个***的整体设计,通过PS端对模块的调用,实现对FPGA的PL端片上资源的并行调用,进而完成CNN模型对目标识别过程中的所有计算过程。
本发明采用Vivado框架进行开发,利用FPGA的PS端对PL端片上资源进行调用,通过自定义模块实现网络层计算功能。最后输入待识别目标的数据,按照网络结构进行顺序计算,实现CNN在FPGA上的高效运算。
本发明还提供一种基于强聚类损失函数的多种类目标辨识***,该***用于实现所述的基于强聚类损失函数的多种类目标辨识方法,所述***具体包括强聚类损失函数构建模块、移位特征添加模块、硬件代码编写模块、FPGA、硬件层面电路图构建模块,其中:
强聚类损失函数构建模块,用于根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加;
移位特征添加模块,用于在强聚类损失函数构建模块的基础上加入目标的移位特征,进一步增大不同类别目标的损失值差异;
硬件代码编写模块,用于编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;
硬件层面电路图构建模块,用于构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算。
下面结合附图及具体实施例对本发明作进一步详细描述。
实施例1
本实施例提供一种基于强聚类损失函数的多种类目标辨识实现方法,并应用于实际分类问题。以无人机目标为例,无人机目标的运动过程示意图如图1所示,图1中描述了无人机模型运动过程中,叶片端点主散射点由运动到/>的过程。运动时间为/>,叶片自旋频率为/>,初始时刻叶片中心原点为/>,旋转角度为/>,距离向量为/>,方位角为/>,俯仰角为/>;运动结束后叶片中心原点运动到/>,旋转角度为/>,位移为/>,距离向量/>,其中/>是/>到/>之间的距离向量。待分类的九种无人机目标简化模型如图2所示,步骤如下:
步骤1、根据待识别目标标签的特征值和标签值特点,设计训练过程中损失值的计算公式,通过增大不同种类目标的损失值的差异,实现更明显的聚类效果;
本实施例中的损失函数的输入为CNN一个批次中各图片的特征值和标签值,输出是一个批次得到的相对损失值。为各图片的特征值,/>为各图片的标签值,首先通过二者计算出两个目标特征值之间的欧拉距离/>,再构建损失值的修正项,最后结合分类问题传统使用的交叉熵损失函数,增加加权后的修正项,得到新的损失函数。
步骤2、在步骤1的基础上加入目标特征值的移位,使得损失值差异进一步增大,从而实现多种类目标分类精度的提升;
损失函数的输入为同一批次九种类无人机目标的特征值和标签值,在计算损失值时,对输入的九位标签值、特征值进行循环移位,将第一位移到第九位,原来第二位变成第一位,以此类推。移位后的标签值、特征值再进行损失值的计算,达到特征组合的效果。对损失函数的输入值进行持续移位,直至与最初输入相同。将不同移位位置的标签值与特征值通过损失公式计算得到的值求和,作为最终的损失函数值。通过对九种类无人机目标在不同组合下的特征的学习,增大不同种类无人机目标计算结果之间的距离,拉近同种类无人机的计算结果,提高对多种类无人机目标的聚类效果以及分类准确率。
根据以上方法,本实施例可构建聚类效果明显增加的损失函数,并在训练过程中进行迭代计算,即可获得分类精度更高的网络模型。图3、图4是增强聚类效果的损失函数与传统交叉熵损失函数的聚类效果对比图。
步骤3、编写模型网络层的硬件代码并进行并行加速,生成的RTL级代码结合网络模型权重数据、偏置数据迁移到FPGA中;
本发明实施对象为卷积神经网络,网络结构中包含的网络层有:卷积层、池化层、全连接层。根据网络层计算原理,在HLS框架中编写每一个网络层的硬件代码。在网络层计算过程中,由于要进行多次乘加计算,存在多个嵌套的for循环结构,若采用顺序进行的方式进行循环计算,会导致推理时间过长,同时FPGA上的资源利用率较低。为了提高计算效率,根据FPGA上能利用的最大资源,选定一个或几个循环结构进行优化。首先要固定每个网络层循环边界,再在功能代码层面对选定for循环进行流水线展开,实现一个周期内并行地进行多个乘加计算,获得优化代码,从而提高计算效率。
后续在HLS框架内对优化代码进行仿真、综合,再将C转换为VHDL代码,实现RTL级别的设计并生成每个网络层的IP核,图5是生成的卷积层IP核,图6是生成的池化层的IP核,图5、图6中,s_axi_AXILiteS是指将使用的S_AXI总线端口集成为一个AXI4-Lite接口,ap_clk是IP核的时钟控制端口,ap_rst_n是IP核的复位控制端口,m_axi_gmem是PS端的DDR和PL端的BRAM互相交换内存数据的端口,interrupt是IP核的中断控制端口。本发明基于HLSpragma优化指令,极大的减少网络层中对数据的计算时间,从而提高卷积神经网络对目标的识别效率。
进一步地,步骤4所描述的对RTL级代码生成的IP核和Zynq处理器部署连线构建硬件层面电路图。PS端和PL端联合生成比特流,实现CNN在FPGA上的运算,构建硬件电路设计的过程具体如下:
①将优化代码生成的IP核导入硬件电路工程设计中,再加入FPGA开发板的Zynq处理器模块;
②对FPGA开发板的Zynq处理器模块进行配置,打开FPGA的PL端与PS端进行数据传输的128位的S_AXI总线,配置计算过程中用到的I/O***设备,并为专用于内部固化的外设I/O和处理器DDR内存寻址接口设计外部连接。在为不同IP核的输入、输出数据在总线上分配固定范围的地址后,将Zynq处理器与AXI Interconnect进行连接,使得数据通过存储器映射进行传输,再连接自定义IP核对数据进行计算,得到的数据经过AXI SmartConnect进行在DDR上的读写,再传回处理器进行下一步计算操作。最后为上述所有模块加入时钟信号和复位信号的控制,对所有模块进行连线,如图7所示,形成硬件设计电路图。
③对硬件设计电路图添加顶层文件,并生成比特流文件。该文件包含自定义具有网络层功能的IP核、所有模块的设置以及整个***的整体设计,通过PS端对模块的调用,实现对FPGA的PL端片上资源的并行调用,进而完成卷积神经网络对目标识别过程中的所有计算过程。
本发明采用Vivado框架进行开发,利用FPGA的PS端对PL端片上资源进行调用,通过自定义模块实现网络层计算功能。最后输入待识别无人机目标的数据,通过硬件网络结构得到推理结果,实现CNN在FPGA上的高效运算。
实施例2
针对空间无人机目标的种类多,分类精度较低,聚类效果差等问题,且传统根据雷达回波数据对目标种类进行辨识的方法所需时间较长,不适合广泛推广使用。因此将本发明基于强聚类损失函数的多种类目标辨识实现方法应用于九种无人机分类问题。
本实施例研究对象是九种不同类型的无人机,其中单旋翼、四旋翼、六旋翼无人机各三种,相同旋翼数量的不同种类无人机在机翼形状、大小上存在明显区别。无人机均沿x轴放置,旋翼与z轴垂直并沿z轴旋转,雷达中心频率为10GHz,雷达俯仰角,扫角间隔为/>,扫角个数为6个;雷达方位角/>,扫角间隔为/>,扫角个数为7个;无人机旋翼旋转角度从/>到/>,角度个数为36001个,旋翼自旋频率/>,扫角间隔为/>,扫角个数为16个。脉冲重复频率/>,观测时间/>。通过对此条件下多种无人机进行电磁仿真得到的雷达RCS回波数据进行时频分析,得到多种类无人机的时频图作为数据集,借助强聚类损失函数进行计算,得到较高的分类精度。
可以看到,基于强聚类损失函数的卷积神经网络识别效果明显优于普通网络识别结果。将优化后神经网络迁移至FPGA硬件平台上实现,与CPU相比,节省推理时间;与GPU相比,降低功耗,设备体积也大大减小。

Claims (8)

1.一种基于强聚类损失函数的多种类目标辨识方法,其特征在于,包括以下步骤:
步骤1、根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加;
步骤2、在步骤1的基础上加入目标的移位特征,进一步增大不同类别目标的损失值差异;
步骤3、编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;
步骤4、构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算。
2.根据权利要求1所述的基于强聚类损失函数的多种类目标辨识方法,其特征在于,步骤1中所述根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,具体如下:
步骤1.1、建立损失函数的输入为CNN模型一个批次中各图片的特征值和标签值,输出是一个批次得到的相对损失值;
步骤1.2、用表示各目标输入图片经过CNN模型推理得到的种类特征值,用表示各目标输入图片的种类标签值;
步骤1.3、计算两个目标种类特征值之间的欧拉距离为:
(1)
步骤1.4、构建损失值修正项
(2)
步骤1.5、结合交叉熵损失函数,增加加权修正项,得到强聚类损失函数:
(3)
其中和/>是指同一批次不同的两个输入目标,/>为损失函数所计算的损失值,/>是该批次样本数量,/>是种类的总数,/>是指样本/>可能是种类/>的概率,超参数/>是指不同类别图像的特征的最小距离,/>是修正项在整个损失函数中的权重,也是一个超参数。
3.根据权利要求2所述的基于强聚类损失函数的多种类目标辨识方法,其特征在于,步骤2中所述在步骤1的基础上加入目标的移位特征,具体如下:
步骤2.1、损失函数的输入为同一批次待识别目标的特征值和标签值,在计算两个目标损失值时,对输入的标签值、特征值进行循环移位,将第一位移到最后一位,原来第二位变成第一位,以此类推循环移位;
步骤2.2、移位后的标签值、特征值再进行损失值的计算,实现特征组合;
步骤2.3、对损失函数的输入值进行持续移位,直至与最初输入相同;
步骤2.4、将不同移位位置的标签值与特征值,通过损失函数计算得到的损失值求和,作为最终的损失函数值。
4.根据权利要求3所述的基于强聚类损失函数的多种类目标辨识方法,其特征在于,步骤3中所述CNN模型的网络结构中包含的网络层有卷积层、池化层、全连接层;
每一层的输入通道数为,输入高度为/>,输入宽度为/>,采样核大小为/>,采样区域移动步长为/>,在样本数据***补0的层数为/>,规定层的输出通道数为/>,得到网络层的输出高度/>和输出宽度/>
(4)。
5.根据权利要求4所述的基于强聚类损失函数的多种类目标辨识方法,其特征在于,对于卷积层,输出矩阵的每一个数据是卷积核区域内权重和输入矩阵数据的乘积与偏置之和,输入数据与输出数据/>的关系如式(5)所示:
(5)
其中是该输入数据对应的权重数据,/>是该输入数据对应的偏置数据;
对于池化层,输出矩阵的每一个数据与采样核区域内的输入数据具有函数关系;对于最大池化层,输出的一个数据元素是输入数据在采样核区域内的最大值;对于最小池化层,输出的一个数据元素是输入数据在采样核区域内的最小值;对于平均池化层,输出的一个数据元素是输入数据在采样核区域内的平均值;
对于全连接层,采用高度、宽度与输入高度、输入宽度相同大小的卷积核,进行一次卷积计算得到,全连接层输出矩阵形状为
6.根据权利要求5所述的基于强聚类损失函数的多种类目标辨识方法,其特征在于,步骤3中所述编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中,具体如下:
步骤3.1、根据网络层计算原理,在框架中编写每一个网络层的功能代码;
步骤3.2、在网络层计算过程中,根据FPGA上能利用的最大资源,选定一个循环结构进行优化;首先要固定每个网络层循环边界,再在功能代码层面对选定for循环进行流水线展开,实现一个周期内并行地进行多个乘加计算,获得优化代码;
步骤3.3、在HLS框架内对优化代码进行仿真、综合,再将C转换为VHDL代码,实现RTL级别的设计并生成每个网络层的IP核;
步骤3.4、将训练过程中的模型文件中每一层网络的权重和偏置数据转换成.bin文件,并和待识别的图片一同存放在FPGA的PS端。
7.根据权利要求6所述的基于强聚类损失函数的多种类目标辨识方法,其特征在于,步骤4所述构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算,具体为:
步骤4.1、将优化代码生成的IP核导入硬件电路工程设计中,再加入FPGA开发板的Zynq处理器模块;
步骤4.2、对FPGA开发板的Zynq处理器模块进行配置,打开FPGA的PL端与PS端进行数据传输的128位的S_AXI总线,配置计算过程中用到的I/O***设备,并为专用于内部固化的外设I/O和处理器DDR内存寻址接口设计外部连接;在为不同IP核的输入、输出数据在总线上分配固定范围的地址后,对所有模块进行连线,形成硬件设计电路图;
步骤4.3、对硬件设计电路图添加顶层文件,并生成比特流文件,该比特流文件包含自定义具有网络层功能的IP核、所有模块的设置以及整个***的整体设计,通过PS端对模块的调用,实现对FPGA的PL端片上资源的并行调用,进而完成CNN模型对目标识别过程中的所有计算过程。
8.一种基于强聚类损失函数的多种类目标辨识***,其特征在于,该***用于实现权利要求1至7中任一项所述的基于强聚类损失函数的多种类目标辨识方法,所述***具体包括强聚类损失函数构建模块、移位特征添加模块、硬件代码编写模块、FPGA、硬件层面电路图构建模块,其中:
强聚类损失函数构建模块,用于根据同一批次待识别目标标签的特征值和标签值特点,构建强聚类损失函数,使得随着迭代次数的增加,不同类别目标之间得到损失函数结果的差距增加;
移位特征添加模块,用于在强聚类损失函数构建模块的基础上加入目标的移位特征,进一步增大不同类别目标的损失值差异;
硬件代码编写模块,用于编写CNN模型的网络层硬件代码并进行并行加速,生成的RTL级代码结合网络权重数据、偏置数据迁移到FPGA中;
硬件层面电路图构建模块,用于构建硬件层面电路图,对RTL级代码生成的IP核和Zynq处理器部署硬件设计,PS端和PL端联合生成比特流,实现CNN模型在FPGA上的运算。
CN202310762241.9A 2023-06-27 2023-06-27 一种基于强聚类损失函数的多种类目标辨识方法及*** Active CN116503675B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310762241.9A CN116503675B (zh) 2023-06-27 2023-06-27 一种基于强聚类损失函数的多种类目标辨识方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310762241.9A CN116503675B (zh) 2023-06-27 2023-06-27 一种基于强聚类损失函数的多种类目标辨识方法及***

Publications (2)

Publication Number Publication Date
CN116503675A true CN116503675A (zh) 2023-07-28
CN116503675B CN116503675B (zh) 2023-08-29

Family

ID=87327005

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310762241.9A Active CN116503675B (zh) 2023-06-27 2023-06-27 一种基于强聚类损失函数的多种类目标辨识方法及***

Country Status (1)

Country Link
CN (1) CN116503675B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109858486A (zh) * 2019-01-27 2019-06-07 中国人民解放军国防科技大学 一种基于深度学习的数据中心云端目标识别方法
CN109983480A (zh) * 2016-11-15 2019-07-05 谷歌有限责任公司 使用聚类损失训练神经网络
CN113537304A (zh) * 2021-06-28 2021-10-22 杭州电子科技大学 一种基于双向cnn的跨模态语义聚类方法
CN115374925A (zh) * 2022-08-31 2022-11-22 天津津航计算技术研究所 一种用于水下目标识别的硬件加速方法
CN116309679A (zh) * 2023-01-06 2023-06-23 大连理工大学 一种适用于多种模态的类mlp医学影像分割方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109983480A (zh) * 2016-11-15 2019-07-05 谷歌有限责任公司 使用聚类损失训练神经网络
CN109858486A (zh) * 2019-01-27 2019-06-07 中国人民解放军国防科技大学 一种基于深度学习的数据中心云端目标识别方法
CN113537304A (zh) * 2021-06-28 2021-10-22 杭州电子科技大学 一种基于双向cnn的跨模态语义聚类方法
CN115374925A (zh) * 2022-08-31 2022-11-22 天津津航计算技术研究所 一种用于水下目标识别的硬件加速方法
CN116309679A (zh) * 2023-01-06 2023-06-23 大连理工大学 一种适用于多种模态的类mlp医学影像分割方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIUN HONG等: ""Design of Power-Efficient Training Accelerator for Convolution Neural Networks"", 《MDPI》, pages 1 - 19 *

Also Published As

Publication number Publication date
CN116503675B (zh) 2023-08-29

Similar Documents

Publication Publication Date Title
Pestana et al. A full featured configurable accelerator for object detection with YOLO
Li et al. Towards acceleration of deep convolutional neural networks using stochastic computing
Pauwels et al. A comparison of FPGA and GPU for real-time phase-based optical flow, stereo, and local image features
TWI795519B (zh) 計算裝置、機器學習運算裝置、組合處理裝置、神經網絡芯片、電子設備、板卡及執行機器學習計算的方法
Akram et al. Towards real-time crops surveillance for disease classification: exploiting parallelism in computer vision
TW201917566A (zh) 深度視覺處理器
Afifi et al. FPGA implementations of SVM classifiers: A review
Wang et al. TRC‐YOLO: A real‐time detection method for lightweight targets based on mobile devices
Zhai et al. Real‐time optical character recognition on field programmable gate array for automatic number plate recognition system
CN102081690B (zh) 复杂电路的矩阵分解结合新奇异值分解方法
Zhang et al. FPGA implementation of quantized convolutional neural networks
Li et al. FPGA implementation of a maximum simplex volume algorithm for endmember extraction from remotely sensed hyperspectral images
CN110738317A (zh) 基于fpga的可变形卷积网络运算方法、装置和***
Abd El-Maksoud et al. Power efficient design of high-performance convolutional neural networks hardware accelerator on FPGA: A case study with GoogLeNet
Jovanović et al. A survey of hardware self-organizing maps
Zhao et al. HLS-based FPGA implementation of convolutional deep belief network for signal modulation recognition
CN116503675B (zh) 一种基于强聚类损失函数的多种类目标辨识方法及***
Yang et al. Design of airborne target tracking accelerator based on KCF
Zhang et al. XNORCONV: CNNs accelerator implemented on FPGA using a hybrid CNNs structure and an inter‐layer pipeline method
Zhan et al. Field programmable gate array‐based all‐layer accelerator with quantization neural networks for sustainable cyber‐physical systems
CN109710562A (zh) 一种基于selectmap的可配置且高速的fpga配置电路及实现方法
Liu et al. Exploiting wireless technology for energy-efficient accelerators with multiple dataflows and precision
Pham-Quoc et al. Hardware/software co-design for convolutional neural networks acceleration: a survey and open issues
Narasimhamurthy et al. Fast architecture for low level vision and image enhancement for reconfigurable platform
Yan et al. High-performance matrix eigenvalue decomposition using the parallel jacobi algorithm on fpga

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