CN115809693A - 基于神经网络的芯片设计能效优化方法 - Google Patents

基于神经网络的芯片设计能效优化方法 Download PDF

Info

Publication number
CN115809693A
CN115809693A CN202310056009.3A CN202310056009A CN115809693A CN 115809693 A CN115809693 A CN 115809693A CN 202310056009 A CN202310056009 A CN 202310056009A CN 115809693 A CN115809693 A CN 115809693A
Authority
CN
China
Prior art keywords
neural network
node
proportion
input
output
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
CN202310056009.3A
Other languages
English (en)
Other versions
CN115809693B (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 Ic Industry Service Center Co ltd
Original Assignee
Nanjing Ic Industry Service Center Co ltd
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 Ic Industry Service Center Co ltd filed Critical Nanjing Ic Industry Service Center Co ltd
Priority to CN202310056009.3A priority Critical patent/CN115809693B/zh
Publication of CN115809693A publication Critical patent/CN115809693A/zh
Application granted granted Critical
Publication of CN115809693B publication Critical patent/CN115809693B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种基于神经网络的芯片设计能效优化方法,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息;确定神经网络中输入连接线的数量、输出连接线的数量得到各神经网络的连接线信息;根据节点比例信息、连接线信息对所有的神经网络进行计算得到各神经网络的计算比例系数并填入神经网络比例槽位内,基于神经网络比例槽位对计算单元进行分配,使得每个神经网络具有相对应的计算单元;根据每个神经网络的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表。

Description

基于神经网络的芯片设计能效优化方法
技术领域
本发明涉及数据处理技术,尤其涉及一种基于神经网络的芯片设计能效优化方法。
背景技术
芯片是以半导体为原材料,对集成电路进行设计、制造、封测后所得到的实体产品,海量数据处理和各种数字化应用都离不开芯片进行加工和计算。神经网络是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型;这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。因此,现实中将芯片与神经网络相结合,基于芯片运行相关的神经网络进行数据的处理,相比普通芯片而言,使得每个处理单元都有自己的内存,而且直接与相邻的处理单元进行交流提升处理效率。
现有技术中,针对不同场景下的数据处理,芯片无法对参与运算的神经网络进行适应性的能效优化,从而导致一些场景下的数据处理能效较低且不稳定。因此,如何结合不同场景下的数据处理,来对参与运算的神经网络进行适应性的能效优化成为了急需解决的问题。
发明内容
本发明实施例提供一种基于神经网络的芯片设计能效优化方法,可以依据场景的不同针对不同的神经网络进行适应性的能效优化,使得不同神经网络拥有相对应的计算单元提升计算效率。
本发明实施例的第一方面,提供一种基于神经网络的芯片设计能效优化方法,包括:
确定芯片在不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,以及每个神经网络集合的神经网络数量,根据所述神经网络数量生成神经网络比例槽位;
提取每个神经网络中输入层的输入节点数量、隐藏层的隐藏节点数量以及输出层的输出节点数量,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息;
确定神经网络中输入连接线的数量、输出连接线的数量得到每一个神经网络的连接线信息;
根据所述节点比例信息、连接线信息对所有的神经网络进行计算得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,基于神经网络比例槽位对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元;
根据每个神经网络所对应的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表。
可选地,在第一方面的一种可能实现方式中,所述确定芯片在不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,以及每个神经网络集合的神经网络数量,根据所述神经网络数量生成神经网络比例槽位,包括:
获取用户为不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,统计神经网络集合内神经网络的数量得到每个神经网络集合的神经网络数量;
提取每个神经网络所对应的网络标签,根据所述神经网络数量构建相对应的神经网络比例槽位,所述神经网络比例槽位中的每个槽位对应一个网络标签。
可选地,在第一方面的一种可能实现方式中,所述提取每个神经网络中输入层的输入节点数量、隐层的隐藏节点数量以及输出层的输出节点数量,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息,包括:
将每个神经网络的输入节点数量与多个神经网络的输入节点数量之和作比,得到多个神经网络之间的输入节点比例,所述输入节点比例中包括每个神经网络对应的第一输入节点系数;
将每个神经网络的隐藏节点数量与多个神经网络的隐藏节点数量之和作比,得到多个神经网络之间的隐藏节点比例,所述隐藏节点比例中包括每个神经网络对应的第一隐藏节点系数;
将每个神经网络的输出节点数量与多个神经网络的输出节点数量之和作比,得到多个神经网络之间的输出节点比例,所述输出节点比例中包括每个神经网络对应的第一输出节点系数;
统计多个神经网络之间的输入节点比例、隐藏节点比例以及输出节点比例得到相对应的节点比例信息。
可选地,在第一方面的一种可能实现方式中,所述确定神经网络中输入连接线的数量、输出连接线的数量得到每一个神经网络的连接线信息,包括:
确定神经网络中每个输入节点与隐藏节点的连接数量,将所有输入节点与所有隐藏节点的总连接数量作为输入连接线的数量;
确定神经网络中每个输出节点与隐藏节点的连接数量,将所有输出节点与所有隐藏节点的总连接数量作为输出连接线的数量。
可选地,在第一方面的一种可能实现方式中,所述根据所述节点比例信息、连接线信息对所有的神经网络进行计算得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,基于神经网络比例槽位对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元,包括:
将每个神经网络的输入连接线与多个神经网络的输入连接线之和的数量作比得到输入连接线比例,根据所述输入连接线比例得到每个神经网络所对应输入节点数量的输入节点权重、隐藏节点的第一隐藏节点权重;
将每个神经网络的输出连接线与多个神经网络的输出连接线之和的数量作比得到输出连接线比例,根据所述输出连接线比例得到每个神经网络所对应输出节点数量的输出节点权重、隐藏节点的第二隐藏节点权重;
基于所述输入节点权重、第一隐藏节点权重、第二隐藏节点权重以及输出节点权重对节点比例信息进行加权处理得到每个神经网络的计算比例系数,将每个神经网络的计算比例系数填入至神经网络比例槽位内,根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元。
可选地,在第一方面的一种可能实现方式中,所述基于所述输入节点权重、第一隐藏节点权重、第二隐藏节点权重以及输出节点权重对节点比例信息进行加权处理得到每个神经网络的计算比例系数,将每个神经网络的计算比例系数并填入至神经网络比例槽位内,根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元,包括:
根据每个神经网络所对应的输入节点权重对输入节点比例中相应的系数进行修正,得到修正后的输入节点比例,修正后的输入节点比例中包括每个神经网络对应的第二输入节点系数;
根据每个神经网络所对应的第一隐藏节点权重、第二隐藏节点权重对输入节点比例中相应的系数进行修正,得到修正后的隐藏节点比例,修正后的隐藏节点比例中包括每个神经网络对应的第二隐藏节点系数;
根据每个神经网络所对应的输出节点权重对输出节点比例中相应的节点系数进行修正,得到修正后的输出节点比例,修正后的输出节点比例中包括每个神经网络对应的第二输出节点系数;
根据每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算,得到每个神经网络的计算比例系数并填入至神经网络比例槽位内。
可选地,在第一方面的一种可能实现方式中,通过以下公式得到第二输入节点系数、第二隐藏节点系数以及第二输出节点系数,
Figure SMS_1
其中,
Figure SMS_4
为第
Figure SMS_8
个神经网络在输入节点比例中所对应的第二输入节点系数,
Figure SMS_14
为第
Figure SMS_3
个神经网络的输入连接线的数量,
Figure SMS_9
为第
Figure SMS_12
个神经网络的输入连接线的数量,
Figure SMS_15
为在
Figure SMS_2
计算时神经网络的上限值,
Figure SMS_6
为第
Figure SMS_10
个神经网络所对应的输入节点数量,
Figure SMS_11
为第
Figure SMS_5
个神经网络所对应的输入节点数量,
Figure SMS_7
为在
Figure SMS_13
计算时神经网络的上限值;
Figure SMS_26
为第
Figure SMS_18
个神经网络在隐藏节点比例中所对应的第二隐藏节点系数,
Figure SMS_22
为第
Figure SMS_30
个神经网络的输入连接线的数量,
Figure SMS_34
为第
Figure SMS_35
个神经网络的输入连接线的数量,
Figure SMS_37
为在
Figure SMS_25
计算时神经网络的上限值,
Figure SMS_29
为第一输入常数值,
Figure SMS_16
为第
Figure SMS_21
个神经网络的输出连接线的数量,
Figure SMS_19
为第
Figure SMS_23
个神经网络的输出连接线的数量,
Figure SMS_27
为在
Figure SMS_31
计算时神经网络的上限值,
Figure SMS_28
为第一输出常数值,
Figure SMS_32
为第
Figure SMS_33
个神经网络所对应的隐藏节点数量,
Figure SMS_36
为第
Figure SMS_17
个神经网络所对应的隐藏节点数量,
Figure SMS_20
为在
Figure SMS_24
计算时神经网络的上限值;
Figure SMS_40
为第
Figure SMS_43
个神经网络在输出节点比例中所对应的第二输出节点系数,
Figure SMS_48
为第
Figure SMS_38
个神经网络的输出连接线的数量,
Figure SMS_45
为第
Figure SMS_49
个神经网络的输出连接线的数量,
Figure SMS_51
为在
Figure SMS_39
计算时神经网络的上限值,
Figure SMS_44
为第
Figure SMS_47
个神经网络所对应的输出节点数量,
Figure SMS_50
为第
Figure SMS_41
个神经网络所对应的输出节点数量,
Figure SMS_42
Figure SMS_46
计算时神经网络的上限值。
可选地,在第一方面的一种可能实现方式中,所述根据每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算,得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,包括:
将每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数分别与相应的梯度参数相乘后相加得到每个神经网络的计算比例系数,通过以下公式计算每个神经网络的计算比例系数,
Figure SMS_52
其中,
Figure SMS_54
为第
Figure SMS_56
个神经网络的计算比例系数,
Figure SMS_61
为第
Figure SMS_55
个神经网络的第二输入节点系数,
Figure SMS_58
为输入节点的梯度参数,
Figure SMS_60
为第
Figure SMS_63
个神经网络的第二隐藏节点系数,
Figure SMS_53
为隐藏节点的梯度参数,
Figure SMS_57
为第
Figure SMS_59
个神经网络的第二输出节点系数,
Figure SMS_62
为输出节点的梯度参数;
根据每个神经网络的计算比例系数所对应的网络标签,将相应的计算比例系数填入至神经网络比例槽位内。
可选地,在第一方面的一种可能实现方式中,所述根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元,包括:
确定所有计算单元的总数量,将每个神经网络的节点比例信息与所有的神经网络的节点比例信息之和作比得到单元比例系数,根据单元比例系数、计算单元的总数量得到每个神经网络对应的计算单元数量;
Figure SMS_64
其中,
Figure SMS_66
为第
Figure SMS_68
个神经网络对应的计算单元数量,
Figure SMS_71
为第
Figure SMS_67
个神经网络对应的计算比例系数,
Figure SMS_70
为第
Figure SMS_72
个神经网络对应的计算比例系数,
Figure SMS_73
Figure SMS_65
计算时神经网络的上限值,
Figure SMS_69
为所有计算单元的总数量。
可选地,在第一方面的一种可能实现方式中,所述根据每个神经网络所对应的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表,包括:
根据每个神经网络所对应的计算单元数量,每个神经网络所对应的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行计算,得到输入节点、隐藏节点以及输出节点分别对应的计算单元数量,通过以下公式进行计算,
Figure SMS_74
其中,
Figure SMS_89
为第
Figure SMS_77
个神经网络的输入节点所对应的计算单元数量,
Figure SMS_87
为第
Figure SMS_82
个神经网络的第二输入节点系数,
Figure SMS_85
为第
Figure SMS_88
个神经网络的计算比例系数,
Figure SMS_90
为第
Figure SMS_81
个神经网络对应的计算单元数量,
Figure SMS_84
为第
Figure SMS_75
个神经网络的隐藏节点所对应的计算单元数量,
Figure SMS_79
为第
Figure SMS_76
个神经网络的第二隐藏节点系数,
Figure SMS_80
为第
Figure SMS_83
个神经网络的输出节点所对应的计算单元数量,
Figure SMS_86
为第
Figure SMS_78
个神经网络的第二输出节点系数;
对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表,以使在相应场景下进行数据处理时为每个神经网络、输入节点、隐藏节点以及输出节点分配相对应数量的计算单元。
本发明实施例的第二方面,提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现本发明第一方面及第一方面各种可能设计的所述方法。
本发明提供的一种基于神经网络的芯片设计能效优化方法,依据场景不同对应参与运算的神经网络的种类和数量不同,比如对不同的图像的不同部分进行图像处理,使用的神经网络不同;依据不同神经网络的输入层的输入节点数量、隐层的隐藏节点数量、输出层的输出节点数量、输入连接线的数量和输出连接线可以得到神经网络的计算比例系数(复杂程度),神经网络的复杂程度越高相应的需求的计算单元相对较多,根据神经网络的复杂程度不同进行计算单元的分配,并且再对神经网络的不同节点进行计算单元的分配,使得可以结合不同场景下的数据处理,来对参与运算的神经网络进行适应性的能效优化,提升计算效率。
本发明提供的技术方案, 综合考虑了每个神经网络输入层、隐藏层以及输出层的节点数量占比得到相应的第一输入节点系数、第一隐藏节点系数和第一输出节点系数,以及输入层中每个输入节点和输出层中每个输出节点分别与隐藏层的连接线数量得到相应的输入节点权重、输出节点权重、隐藏节点的第一隐藏节点权重和第二隐藏节点权重,使得本发明可以依据神经网络节点以及连接线确定不同神经网络的复杂程度,从而计算出的节点系数可以得到每个神经网络比例槽位中的计算比例系数;依据计算比例系数进行能效的优化,使得本发明可以依据不同场景下所需的不同神经网络进行能效的优化,依据每个神经网络中所对应的输入层的第二输入节点系数、隐藏层的第二隐藏节点系数和输出层的第二输出节点系数再次对神经网络的计算单元数量进行分配,使得每个计算单元对应多个神经网络节点,避免了计算单元的重复分配引起的算力冲突。
附图说明
图1为本发明所提供的一种基于神经网络的芯片设计能效优化方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和C”、“包含A、B、C”是指A、B、C三者都包含,“包含A、B或C”是指包含A、B、C三者之一,“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。
应当理解,在本发明中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。A与B的匹配,是A与B的相似度大于或等于预设的阈值。
取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本发明提供一种基于神经网络的芯片设计能效优化方法,如图1所示,包括步骤S1至步骤S5,具体如下:
S1,确定芯片在不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,以及每个神经网络集合的神经网络数量,根据所述神经网络数量生成神经网络比例槽位。
其中,神经网络比例槽位为每个神经网络用于填充计算比例系数的槽位。
可以理解的是,芯片在不同的计算场景或数据处理场景下对应使用神经网络的数量不同、神经网络的类型不同,每个神经网络都具有相应的神经网络比例槽位,方便后续根据神经网络比例槽位内的系数进行计算单元分配。
例如:手机、摄像机、无人机的GPU图像处理芯片在不同场景下对图像进行处理所需的神经网络不同,对图像不同部分进行处理的时候所需的神经网络数量和类型也不相同,依据芯片的处理场景不同获取所需的神经网络集合,依据神经网络集合中神经网络的数量确定相应数量的神经网络比例槽位。
在一些实施例中,步骤S1中的(确定芯片在不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,以及每个神经网络集合的神经网络数量,根据所述神经网络数量生成神经网络比例槽位)包括S11-S12:
S11,获取用户为不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,统计神经网络集合内神经网络的数量得到每个神经网络集合的神经网络数量。
可以理解的是,服务器会依据对不同场景进行数据处理时的需求确定相应所需的神经网络集合,统计神经网络集合内神经网络的数量得到每个神经网络集合的神经网络数量,方便后续依据神经网络数量确定相应数量的槽位。
S12,提取每个神经网络所对应的网络标签,根据所述神经网络数量构建相对应的神经网络比例槽位,所述神经网络比例槽位中的每个槽位对应一个网络标签。
其中,网络标签为每个神经网络对应的标签,例如:BP神经网络的网络标签可以是标签A、离散Hopfield网络的网络标签可以是标签B。
可以理解的是,依据神经网络数量构建相对应数量的神经网络比例槽位,每个槽位都与相应的网络标签的神经网络相对应,通过网络标签将神经网络比例槽位与神经网络一一对应。
S2,提取每个神经网络中输入层的输入节点数量、隐藏层的隐藏节点数量以及输出层的输出节点数量,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息。
其中,节点比例信息为每个神经网络中输入层、隐藏层和输出层中节点数量占所有神经网络相应层的节点数量之和的比值。
可以理解的是,分别提取每个神经网络中输入层、隐藏层和输出层中相应的输入节点数量、隐藏节点数量和输出节点数量,将每个神经网络的输入节点数量与所有神经网络的输入节点数量的比值得到输入节点比例,将每个神经网络的隐藏节点数量与所有神经网络的隐藏节点数量的比值得到隐藏节点比例,将每个神经网络的输出节点数量与所有神经网络的输出节点数量的比值得到输出节点比例,输入节点比例、隐藏节点比例和输出节点比例均为节点比例信息。
在一些实施例中,步骤S2中的(提取每个神经网络中输入层的输入节点数量、隐层的隐藏节点数量以及输出层的输出节点数量,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息)包括S21-S24:
S21,将每个神经网络的输入节点数量与多个神经网络的输入节点数量之和作比,得到多个神经网络之间的输入节点比例,所述输入节点比例中包括每个神经网络对应的第一输入节点系数。
其中,输入节点比例为每个神经网络的输入节点数量与神经网络集合中所有神经网络的输入节点数量的比值。
可以理解的是,每个神经网络都具有与其对应的第一输入节点系数。
S22,将每个神经网络的隐藏节点数量与多个神经网络的隐藏节点数量之和作比,得到多个神经网络之间的隐藏节点比例,所述隐藏节点比例中包括每个神经网络对应的第一隐藏节点系数。
其中,隐藏节点比例为每个神经网络的隐藏节点数量与神经网络集合中所有神经网络的隐藏节点数量的比值。
可以理解的是,每个神经网络都具有与其对应的第一隐藏节点系数。
S23,将每个神经网络的输出节点数量与多个神经网络的输出节点数量之和作比,得到多个神经网络之间的输出节点比例,所述输出节点比例中包括每个神经网络对应的第一输出节点系数。
其中,输出节点比例为每个神经网络的输出节点数量与神经网络集合中所有神经网络的输出节点数量的比值。
可以理解的是,每个神经网络都具有与其对应的第一输出节点系数。
S24,统计多个神经网络之间的输入节点比例、隐藏节点比例以及输出节点比例得到相对应的节点比例信息。
可以理解的是,统计神经网络集合中多个神经网络之间的输入节点比例、隐藏节点比例以及输出节点比例得到相对应的节点比例信息,方便后续依据节点比例信息确定神经网络的复杂程度从而分配相应的计算单元。
S3,确定神经网络中输入连接线的数量、输出连接线的数量得到每一个神经网络的连接线信息。
需要说明的是,每个神经网络都具有输入层、隐藏层和输出层,输入层中的输入节点可以连接一个隐藏层中的隐层节点也可以连接多个,输出层中的输出节点可以连接一个隐藏层中的隐层节点也可以连接多个。
因此对每个神经网络中输入连接线的数量、输出连接线的数量进行统计可以得到连接线信息,方便后续依据连接线信息确定神经网络的复杂程度,神经网络越复杂进行运算的算力相对较多。
在一些实施例中,步骤S3中的(确定神经网络中输入连接线的数量、输出连接线的数量得到每一个神经网络的连接线信息)包括S31-S32:
S31,确定神经网络中每个输入节点与隐藏节点的连接数量,将所有输入节点与所有隐藏节点的总连接数量作为输入连接线的数量。
可以理解的是,神经网络中每个输入节点可以与一个或多个隐藏节点相连接,每个输入节点的连接线数量与连接的隐藏节点数量相同,统计所有输入节点连接的所有隐藏节点的数量为输入连接线的数量。
S32,确定神经网络中每个输出节点与隐藏节点的连接数量,将所有输出节点与所有隐藏节点的总连接数量作为输出连接线的数量。
可以理解的是,神经网络中每个输出节点可以与一个或多个隐藏节点相连接,每个输出节点的连接线数量与连接的隐藏节点数量相同,统计所有输出节点连接的所有隐藏节点的数量为输出连接线的数量。
本发明考虑了输入、输出连接线的数量,连接线的数量越多相应的神经网络连接越复杂,神经网络越复杂相应的需要的算力越多,方便后续依据连接线的进行分配相应的计算单元。
S4,根据所述节点比例信息、连接线信息对所有的神经网络进行计算得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,基于神经网络比例槽位对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元。
其中,节点比例信息为每个神经网络中各输入层、隐藏层、输出层中的输入节点、隐藏节点、输出节点占神经网络集合中相应的所有输入层、隐藏层、输出层中节点的比例信息,连接线信息为每个神经网络中所有输入节点、输出节点分别与隐藏节点的连接数量信息。
可以理解的是,根据每个神经网络中的节点比例信息、连接线信息进行计算得到每个神经网络的计算比例系数,并将计算比例系数填充至神经网络比例槽位内,并基于神经网络比例槽位内的计算比例系数对所有计算单元进行分配,使得每个神经网络具有相对应数量的计算单元。
需要说明的是,计算单元可以是硬件芯片中核心(Core);也可以是虚拟划分的,例如:一个芯片的计算力分为10个计算单元,每个计算单元拥有10%的计算力。
现有技术中均采用数据量的形式进行计算单元的分配,当处理数据量较大时,计算单元会出现重复分配的情况,导致计算效率较低的同时存在计算有所冲突的问题,容易出现错误;而本发明则是依据处理场景不同获取所需的不同神经网络,依据神经网络的复杂程度为其分配相应的计算单元,对计算单元进行合理的分配,使得计算效率较高。
在一些实施例中,步骤S4中的(根据所述节点比例信息、连接线信息对所有的神经网络进行计算得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,基于神经网络比例槽位对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元)包括S41-S43:
S41,将每个神经网络的输入连接线与多个神经网络的输入连接线之和的数量作比得到输入连接线比例,根据所述输入连接线比例得到每个神经网络所对应输入节点数量的输入节点权重、隐藏节点的第一隐藏节点权重。
其中,输入连接线比例为每个神经网络的输入连接线与神经网络集合中所有神经网络的输入连接线之和的数量的比值。
可以理解的是,输入连接线比例决定了输入节点数量的输入节点权重、隐藏节点的第一隐藏节点权重,输入连接线比例越大相应的神经网络的输入连接线越多,则输入节点数量的输入节点权重、隐藏节点的第一隐藏节点权重相对较大,方便后续依据相应的权重值计算得到计算比例系数。
S42,将每个神经网络的输出连接线与多个神经网络的输出连接线之和的数量作比得到输出连接线比例,根据所述输出连接线比例得到每个神经网络所对应输出节点数量的输出节点权重、隐藏节点的第二隐藏节点权重。
其中,输出连接线比例为每个神经网络的输出连接线与神经网络集合中所有神经网络的输出连接线之和的数量的比值。
需要说明的是,因为隐藏层中的隐藏节点同时与输入层的输入节点连接又与输出层的输出节点连接,因此隐藏节点拥有2个权重值;输出连接线比例决定了输出节点数量的输出节点权重、隐藏节点的第二隐藏节点权重,输出连接线比例越大相应的神经网络的输出连接线越多,则输入节点数量的输出节点权重、隐藏节点的第二隐藏节点权重相对较大,方便后续依据权重值计算得到计算比例系数。
S43,基于所述输入节点权重、第一隐藏节点权重、第二隐藏节点权重以及输出节点权重对节点比例信息进行加权处理得到每个神经网络的计算比例系数,将每个神经网络的计算比例系数填入至神经网络比例槽位内,根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元。
可以理解的是,综合考虑了输入节点权重、第一隐藏节点权重、第二隐藏节点权重和输出节点权重也就是连接线的复杂程度,以及节点比例信息也就是节点的复杂程度从而得到每个神经网络的计算比例系数,并将计算比例系数填入至神经网络比例槽位内,方便后续依据每个神经网络的计算比例系数对计算单元进行分配。
需要说明的是,现有技术中的计算单元分配多是依据任务量大小进行分配相应的算力,任务多且任务量大时分配的计算单元较多,任务少且任务量小时分配的计算单元较少,但计算单元分配过程中同一个计算单元经常会被多次分配到不同任务中,因此会导致算力冲突,严重时会导致芯片占用率过高,计算效率较低导致顿卡等。而本发明则是为每个神经网络配置相应的计算单元,避免了算力的冲突。
在一些实施例中,步骤S43中的(基于所述输入节点权重、第一隐藏节点权重、第二隐藏节点权重以及输出节点权重对节点比例信息进行加权处理得到每个神经网络的计算比例系数,将每个神经网络的计算比例系数填入至神经网络比例槽位内,根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元)包括S431-S434:
S431,根据每个神经网络所对应的输入节点权重对输入节点比例中相应的系数进行修正,得到修正后的输入节点比例,修正后的输入节点比例中包括每个神经网络对应的第二输入节点系数。
可以理解的是,通过每个神经网络所对应的输入节点权重对输入节点比例中相应的系数进行修正,使得修正后的输入节点比例综合考虑了相应输入层连接线的复杂程度;
需要说明的是,每个神经网络的输入层都具有与其对应的第二输入节点系数。
S432,根据每个神经网络所对应的第一隐藏节点权重、第二隐藏节点权重对输入节点比例中相应的系数进行修正,得到修正后的隐藏节点比例,修正后的隐藏节点比例中包括每个神经网络对应的第二隐藏节点系数。
可以理解的是,通过每个神经网络所对应的第一隐藏节点权重、第二隐藏节点权重对输入节点比例中相应的系数进行修正,使得修正后的隐藏节点比例同时考虑了隐藏层分别与输入层和输出层之间连接线的复杂程度。
需要说明的是,每个神经网络的隐藏层都具有与其对应的第二隐藏节点系数。
S433,根据每个神经网络所对应的输出节点权重对输出节点比例中相应的节点系数进行修正,得到修正后的输出节点比例,修正后的输出节点比例中包括每个神经网络对应的第二输出节点系数。
可以理解的是,通过每个神经网络所对应的输出节点权重对输出节点比例中相应的节点系数进行修正,使得修正后的输出节点比例同时考虑了相应输出层连线的复杂程度。
需要说明的是,每个神经网络的输出都具有与其对应的第二输出节点系数。
通过上述实施方式,每个神经网络中的输入层、隐藏层和输出层均综合考虑相应层的节点数量以及连线的复杂程度,方便后续根据输入层、隐藏层和输出层中相应的节点系数(复杂程度)综合得到每个神经网络的计算比例系数,方便后续进行计算单元的分配。
在上述实施例的基础上,通过以下公式得到第二输入节点系数、第二隐藏节点系数以及第二输出节点系数,包括:
通过以下公式得到第二输入节点系数、第二隐藏节点系数以及第二输出节点系数,
Figure SMS_91
其中,
Figure SMS_104
为第
Figure SMS_93
个神经网络在输入节点比例中所对应的第二输入节点系数,
Figure SMS_97
为第
Figure SMS_108
个神经网络的输入连接线的数量,
Figure SMS_112
为第
Figure SMS_110
个神经网络的输入连接线的数量,
Figure SMS_114
为在
Figure SMS_100
计算时神经网络的上限值,
Figure SMS_103
为第
Figure SMS_92
个神经网络所对应的输入节点数量,
Figure SMS_96
为第
Figure SMS_95
个神经网络所对应的输入节点数量,
Figure SMS_99
为在
Figure SMS_101
计算时神经网络的上限值,可以理解的是,第
Figure SMS_105
个神经网络在输入节点比例中所对应的第二输入节点系数
Figure SMS_107
与第
Figure SMS_111
个神经网络的输入连接线的数量
Figure SMS_109
成正比,第
Figure SMS_113
个神经网络在输入节点比例中所对应的第二输入节点系数
Figure SMS_94
与第
Figure SMS_98
个神经网络所对应的输入节点数量
Figure SMS_102
成正比,
Figure SMS_106
为第一输入常数值,可以是人为提前设置的。
Figure SMS_118
为第
Figure SMS_122
个神经网络在隐藏节点比例中所对应的第二隐藏节点系数,
Figure SMS_125
为第
Figure SMS_116
个神经网络的输入连接线的数量,
Figure SMS_120
为第
Figure SMS_124
个神经网络的输入连接线的数量,
Figure SMS_129
为在
Figure SMS_117
计算时神经网络的上限值,
Figure SMS_121
为第一输入常数值,
Figure SMS_126
为第
Figure SMS_130
个神经网络的输出连接线的数量,
Figure SMS_132
为第
Figure SMS_135
个神经网络的输出连接线的数量,
Figure SMS_138
为在
Figure SMS_140
计算时神经网络的上限值,
Figure SMS_131
为第一输出常数值,
Figure SMS_134
为第
Figure SMS_137
个神经网络所对应的隐藏节点数量,
Figure SMS_139
为第
Figure SMS_115
个神经网络所对应的隐藏节点数量,
Figure SMS_119
为在
Figure SMS_123
计算时神经网络的上限值,可以理解的是,第
Figure SMS_127
个神经网络在隐藏节点比例中所对应的第二隐藏节点系数
Figure SMS_128
与第
Figure SMS_133
个神经网络所对应的隐藏节点数量
Figure SMS_136
成正比。
Figure SMS_152
为第
Figure SMS_144
个神经网络在输出节点比例中所对应的第二输出节点系数,
Figure SMS_148
为第
Figure SMS_156
个神经网络的输出连接线的数量,
Figure SMS_160
为第
Figure SMS_158
个神经网络的输出连接线的数量,
Figure SMS_162
为在
Figure SMS_150
计算时神经网络的上限值,
Figure SMS_154
为第
Figure SMS_141
个神经网络所对应的输出节点数量,
Figure SMS_147
为第
Figure SMS_142
个神经网络所对应的输出节点数量,
Figure SMS_146
Figure SMS_151
计算时神经网络的上限值,可以理解的是,第
Figure SMS_155
个神经网络在输出节点比例中所对应的第二输出节点系数
Figure SMS_157
与第
Figure SMS_161
个神经网络的输出连接线的数量
Figure SMS_159
成正比,第
Figure SMS_163
个神经网络在输出节点比例中所对应的第二输出节点系数
Figure SMS_143
与第
Figure SMS_145
个神经网络所对应的输出节点数量
Figure SMS_149
成正比,
Figure SMS_153
为第一输出常数值,可以是人为提前设置的。
S434,根据每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算,得到每个神经网络的计算比例系数并填入至神经网络比例槽位内。
可以理解的是,对每个神经网络的输入层、隐藏层和输出层的复杂程度进行综合考虑可以得到相应的计算比例系数,也就是对每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算得到每个神经网络的计算比例系数。并将计算比例系数填入至神经网络比例槽位内,方便后续根据神经网络比例槽位内的计算比例系数进行计算单元的分配。
在一些实施例中,步骤S434中的(根据每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算,得到每个神经网络的计算比例系数并填入至神经网络比例槽位内)包括S4341-S4342:
S4341,将每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数分别与相应的梯度参数相乘后相加得到每个神经网络的计算比例系数,通过以下公式计算每个神经网络的计算比例系数,
Figure SMS_164
其中,
Figure SMS_182
为第
Figure SMS_185
个神经网络的计算比例系数,
Figure SMS_190
为第
Figure SMS_166
个神经网络的第二输入节点系数,
Figure SMS_171
为输入节点的梯度参数,
Figure SMS_175
为第
Figure SMS_178
个神经网络的第二隐藏节点系数,
Figure SMS_179
为隐藏节点的梯度参数,
Figure SMS_183
为第
Figure SMS_187
个神经网络的第二输出节点系数,
Figure SMS_188
为输出节点的梯度参数,可以理解的是,第
Figure SMS_181
个神经网络的计算比例系数
Figure SMS_184
与第
Figure SMS_189
个神经网络的第二输入节点系数
Figure SMS_191
成正比,第
Figure SMS_168
个神经网络的计算比例系数
Figure SMS_173
与第
Figure SMS_180
个神经网络的第二隐藏节点系数
Figure SMS_186
成正比,第
Figure SMS_165
个神经网络的计算比例系数
Figure SMS_169
与第
Figure SMS_172
个神经网络的第二输出节点系数
Figure SMS_176
成正比,神经网络中通过输入层激活信号,在通过隐藏层进行分析提取特征,通过输出层输出结果,因此,隐藏节点的梯度参数
Figure SMS_167
大于输入节点的梯度参数
Figure SMS_170
,输入节点的梯度参数
Figure SMS_174
大于输出节点的梯度参数
Figure SMS_177
S4342,根据每个神经网络的计算比例系数所对应的网络标签,将相应的计算比例系数填入至神经网络比例槽位内。
可以理解的是,当计算出每个神经网络的计算比例系数后,则基于每个神经网络的网络标签将相应的计算比例系数填入至神经网络比例槽位内,使得计算比例系数与相应的神经网络一一对应。
在一些实施例中,步骤S43中的(根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元)包括:
确定所有计算单元的总数量,将每个神经网络的节点比例信息与所有的神经网络的节点比例信息之和作比得到单元比例系数,根据单元比例系数、计算单元的总数量得到每个神经网络对应的计算单元数量;
Figure SMS_192
其中,
Figure SMS_203
为第
Figure SMS_195
个神经网络对应的计算单元数量,
Figure SMS_200
为第
Figure SMS_205
个神经网络对应的计算比例系数,
Figure SMS_209
为第
Figure SMS_206
个神经网络对应的计算比例系数,
Figure SMS_210
Figure SMS_201
计算时神经网络的上限值,
Figure SMS_207
为所有计算单元的总数量,可以理解的是,第
Figure SMS_193
个神经网络对应的计算单元数量
Figure SMS_197
与第
Figure SMS_196
个神经网络对应的计算比例系数
Figure SMS_199
成正比,第
Figure SMS_204
个神经网络对应的计算比例系数
Figure SMS_208
越大相应的第
Figure SMS_194
个神经网络的复杂程度较高,所需的算力较多,第
Figure SMS_198
个神经网络对应的计算单元数量
Figure SMS_202
若不为整数,则通过四舍五入的方式进行整数化处理。
S5,根据每个神经网络所对应的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表。
其中,芯片能效优化表为每个神经网络的计算单元分配数量和每个神经网络中输入层、隐藏层和输出层中输入节点、隐藏节点和输出节点对相应计算单元再分配得到的计算单元分配表。
可以理解的是,通过每个神经网络的计算比例系数对计算单元进行分配后,再对进行分配后的每个神经网络的计算单元按照输出层、隐藏层和输出层的复杂程度进行再次分配相应的计算单元,使得不同场景下的数据处理,来对参与运算的神经网络进行适应性的能效优化。
在一些实施例中,步骤S5中的(根据每个神经网络所对应的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表)包括S51-S52:
S51,根据每个神经网络所对应的计算单元数量,每个神经网络所对应的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行计算,得到输入节点、隐藏节点以及输出节点分别对应的计算单元数量,通过以下公式进行计算,
Figure SMS_211
其中,
Figure SMS_229
为第
Figure SMS_234
个神经网络的输入节点所对应的计算单元数量,
Figure SMS_237
为第
Figure SMS_214
个神经网络的第二输入节点系数,
Figure SMS_217
为第
Figure SMS_221
个神经网络的计算比例系数,
Figure SMS_225
为第
Figure SMS_227
个神经网络对应的计算单元数量,
Figure SMS_231
为第
Figure SMS_233
个神经网络的隐藏节点所对应的计算单元数量,
Figure SMS_236
为第
Figure SMS_230
个神经网络的第二隐藏节点系数,
Figure SMS_232
为第
Figure SMS_235
个神经网络的输出节点所对应的计算单元数量,
Figure SMS_238
为第
Figure SMS_215
个神经网络的第二输出节点系数,可以理解的是,第
Figure SMS_218
个神经网络的输入节点所对应的计算单元数量与第
Figure SMS_223
个神经网络的第二输入节点系数
Figure SMS_226
成正比,第
Figure SMS_212
个神经网络的隐藏节点所对应的计算单元数量
Figure SMS_219
与第
Figure SMS_222
个神经网络的第二隐藏节点系数
Figure SMS_228
成正比,第
Figure SMS_213
个神经网络的输出节点所对应的计算单元数量
Figure SMS_216
与第
Figure SMS_220
个神经网络的第二输出节点系数
Figure SMS_224
成正比。
S52,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表,以使在相应场景下进行数据处理时为每个神经网络、输入节点、隐藏节点以及输出节点分配相对应数量的计算单元。
可以理解的是,在对每个神经网络进行计算单元分配后,再针对每个神经网络的输入节点、隐藏节点以及输出节点进行相应计算单元的再分配,避免了计算单元出现重复分配的情况,较好的提升了计算效率。
通过上述实施方式,本发明会针对不同场景下所需的神经网络不同,依据神经网络的复杂程度不同进行计算单元的针对性分配,使得每个输入节点、隐藏节点、输出节点都具有相应计算单元,相比现有技术中通过任务量大小进行计算单元分配,多任务情况下计算单元会出现重复分配,导致芯片占用率高使得出现服务器卡顿等情况。
本发明还提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现上述的各种实施方式提供的方法。
其中,存储介质可以是计算机存储介质,也可以是通信介质。通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。计算机存储介质可以是通用或专用计算机能够存取的任何可用介质。例如,存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(ApplicationSpecific Integrated Circuits,简称:ASIC)中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。存储介质可以是只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本发明还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在存储介质中。设备的至少一个处理器可以从存储介质读取该执行指令,至少一个处理器执行该执行指令使得设备实施上述的各种实施方式提供的方法。
在上述终端或者服务器的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:ApplicationSpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.基于神经网络的芯片设计能效优化方法,其特征在于,包括:
确定芯片在不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,以及每个神经网络集合的神经网络数量,根据所述神经网络数量生成神经网络比例槽位;
提取每个神经网络中输入层的输入节点数量、隐藏层的隐藏节点数量以及输出层的输出节点数量,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息;
确定神经网络中输入连接线的数量、输出连接线的数量得到每一个神经网络的连接线信息;
根据所述节点比例信息、连接线信息对所有的神经网络进行计算得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,基于神经网络比例槽位对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元;
根据每个神经网络所对应的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表。
2.根据权利要求1所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述确定芯片在不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,以及每个神经网络集合的神经网络数量,根据所述神经网络数量生成神经网络比例槽位,包括:
获取用户为不同场景下的数据处理时所需要参与运算的神经网络,得到相应场景的神经网络集合,统计神经网络集合内神经网络的数量得到每个神经网络集合的神经网络数量;
提取每个神经网络所对应的网络标签,根据所述神经网络数量构建相对应的神经网络比例槽位,所述神经网络比例槽位中的每个槽位对应一个网络标签。
3.根据权利要求2所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述提取每个神经网络中输入层的输入节点数量、隐层的隐藏节点数量以及输出层的输出节点数量,将多个神经网络的输入节点数量、隐藏节点数量以及输出节点数量进行比例计算得到节点比例信息,包括:
将每个神经网络的输入节点数量与多个神经网络的输入节点数量之和作比,得到多个神经网络之间的输入节点比例,所述输入节点比例中包括每个神经网络对应的第一输入节点系数;
将每个神经网络的隐藏节点数量与多个神经网络的隐藏节点数量之和作比,得到多个神经网络之间的隐藏节点比例,所述隐藏节点比例中包括每个神经网络对应的第一隐藏节点系数;
将每个神经网络的输出节点数量与多个神经网络的输出节点数量之和作比,得到多个神经网络之间的输出节点比例,所述输出节点比例中包括每个神经网络对应的第一输出节点系数;
统计多个神经网络之间的输入节点比例、隐藏节点比例以及输出节点比例得到相对应的节点比例信息。
4.根据权利要求3所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述确定神经网络中输入连接线的数量、输出连接线的数量得到每一个神经网络的连接线信息,包括:
确定神经网络中每个输入节点与隐藏节点的连接数量,将所有输入节点与所有隐藏节点的总连接数量作为输入连接线的数量;
确定神经网络中每个输出节点与隐藏节点的连接数量,将所有输出节点与所有隐藏节点的总连接数量作为输出连接线的数量。
5.根据权利要求4所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述根据所述节点比例信息、连接线信息对所有的神经网络进行计算得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,基于神经网络比例槽位对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元,包括:
将每个神经网络的输入连接线与多个神经网络的输入连接线之和的数量作比得到输入连接线比例,根据所述输入连接线比例得到每个神经网络所对应输入节点数量的输入节点权重、隐藏节点的第一隐藏节点权重;
将每个神经网络的输出连接线与多个神经网络的输出连接线之和的数量作比得到输出连接线比例,根据所述输出连接线比例得到每个神经网络所对应输出节点数量的输出节点权重、隐藏节点的第二隐藏节点权重;
基于所述输入节点权重、第一隐藏节点权重、第二隐藏节点权重以及输出节点权重对节点比例信息进行加权处理得到每个神经网络的计算比例系数,将每个神经网络的计算比例系数填入至神经网络比例槽位内,根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元。
6.根据权利要求5所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述基于所述输入节点权重、第一隐藏节点权重、第二隐藏节点权重以及输出节点权重对节点比例信息进行加权处理得到每个神经网络的计算比例系数,将每个神经网络的计算比例系数并填入至神经网络比例槽位内,根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元,包括:
根据每个神经网络所对应的输入节点权重对输入节点比例中相应的系数进行修正,得到修正后的输入节点比例,修正后的输入节点比例中包括每个神经网络对应的第二输入节点系数;
根据每个神经网络所对应的第一隐藏节点权重、第二隐藏节点权重对输入节点比例中相应的系数进行修正,得到修正后的隐藏节点比例,修正后的隐藏节点比例中包括每个神经网络对应的第二隐藏节点系数;
根据每个神经网络所对应的输出节点权重对输出节点比例中相应的节点系数进行修正,得到修正后的输出节点比例,修正后的输出节点比例中包括每个神经网络对应的第二输出节点系数;
根据每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算,得到每个神经网络的计算比例系数并填入至神经网络比例槽位内。
7.根据权利要求6所述的基于神经网络的芯片设计能效优化方法,其特征在于,
通过以下公式得到第二输入节点系数、第二隐藏节点系数以及第二输出节点系数,
Figure QLYQS_1
其中,
Figure QLYQS_4
为第
Figure QLYQS_8
个神经网络在输入节点比例中所对应的第二输入节点系数,
Figure QLYQS_11
为第
Figure QLYQS_5
个神经网络的输入连接线的数量,
Figure QLYQS_7
为第
Figure QLYQS_12
个神经网络的输入连接线的数量,
Figure QLYQS_15
为在
Figure QLYQS_2
计算时神经网络的上限值,
Figure QLYQS_6
为第
Figure QLYQS_10
个神经网络所对应的输入节点数量,
Figure QLYQS_14
为第
Figure QLYQS_3
个神经网络所对应的输入节点数量,
Figure QLYQS_9
为在
Figure QLYQS_13
计算时神经网络的上限值;
Figure QLYQS_26
为第
Figure QLYQS_17
个神经网络在隐藏节点比例中所对应的第二隐藏节点系数,
Figure QLYQS_23
为第
Figure QLYQS_30
个神经网络的输入连接线的数量,
Figure QLYQS_36
为第
Figure QLYQS_31
个神经网络的输入连接线的数量,
Figure QLYQS_34
为在
Figure QLYQS_24
计算时神经网络的上限值,
Figure QLYQS_28
为第一输入常数值,
Figure QLYQS_16
为第
Figure QLYQS_20
个神经网络的输出连接线的数量,
Figure QLYQS_19
为第
Figure QLYQS_22
个神经网络的输出连接线的数量,
Figure QLYQS_27
为在
Figure QLYQS_29
计算时神经网络的上限值,
Figure QLYQS_32
为第一输出常数值,
Figure QLYQS_35
为第
Figure QLYQS_33
个神经网络所对应的隐藏节点数量,
Figure QLYQS_37
为第
Figure QLYQS_18
个神经网络所对应的隐藏节点数量,
Figure QLYQS_21
为在
Figure QLYQS_25
计算时神经网络的上限值;
Figure QLYQS_41
为第
Figure QLYQS_45
个神经网络在输出节点比例中所对应的第二输出节点系数,
Figure QLYQS_49
为第
Figure QLYQS_38
个神经网络的输出连接线的数量,
Figure QLYQS_42
为第
Figure QLYQS_46
个神经网络的输出连接线的数量,
Figure QLYQS_51
为在
Figure QLYQS_39
计算时神经网络的上限值,
Figure QLYQS_44
为第
Figure QLYQS_47
个神经网络所对应的输出节点数量,
Figure QLYQS_50
为第
Figure QLYQS_40
个神经网络所对应的输出节点数量,
Figure QLYQS_43
Figure QLYQS_48
计算时神经网络的上限值。
8.根据权利要求7所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述根据每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行综合计算,得到每个神经网络的计算比例系数并填入至神经网络比例槽位内,包括:
将每个神经网络的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数分别与相应的梯度参数相乘后相加得到每个神经网络的计算比例系数,通过以下公式计算每个神经网络的计算比例系数,
Figure QLYQS_52
其中,
Figure QLYQS_54
为第
Figure QLYQS_58
个神经网络的计算比例系数,
Figure QLYQS_60
为第
Figure QLYQS_55
个神经网络的第二输入节点系数,
Figure QLYQS_57
为输入节点的梯度参数,
Figure QLYQS_61
为第
Figure QLYQS_63
个神经网络的第二隐藏节点系数,
Figure QLYQS_53
为隐藏节点的梯度参数,
Figure QLYQS_56
为第
Figure QLYQS_59
个神经网络的第二输出节点系数,
Figure QLYQS_62
为输出节点的梯度参数;
根据每个神经网络的计算比例系数所对应的网络标签,将相应的计算比例系数填入至神经网络比例槽位内。
9.根据权利要求8所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述根据神经网络比例槽位中的计算比例系数对芯片的计算单元进行分配,使得每个神经网络具有相对应的计算单元,包括:
确定所有计算单元的总数量,将每个神经网络的节点比例信息与所有的神经网络的节点比例信息之和作比得到单元比例系数,根据单元比例系数、计算单元的总数量得到每个神经网络对应的计算单元数量;
Figure QLYQS_64
其中,
Figure QLYQS_66
为第
Figure QLYQS_70
个神经网络对应的计算单元数量,
Figure QLYQS_72
为第
Figure QLYQS_67
个神经网络对应的计算比例系数,
Figure QLYQS_69
为第
Figure QLYQS_71
个神经网络对应的计算比例系数,
Figure QLYQS_73
Figure QLYQS_65
计算时神经网络的上限值,
Figure QLYQS_68
为所有计算单元的总数量。
10.根据权利要求9所述的基于神经网络的芯片设计能效优化方法,其特征在于,
所述根据每个神经网络所对应的计算单元的数量,将输入节点、隐藏节点以及输出节点与相应的计算单元对应设置,对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表,包括:
根据每个神经网络所对应的计算单元数量,每个神经网络所对应的第二输入节点系数、第二隐藏节点系数以及第二输出节点系数进行计算,得到输入节点、隐藏节点以及输出节点分别对应的计算单元数量,通过以下公式进行计算,
Figure QLYQS_74
其中,
Figure QLYQS_85
为第
Figure QLYQS_78
个神经网络的输入节点所对应的计算单元数量,
Figure QLYQS_82
为第
Figure QLYQS_84
个神经网络的第二输入节点系数,
Figure QLYQS_89
为第
Figure QLYQS_88
个神经网络的计算比例系数,
Figure QLYQS_90
为第
Figure QLYQS_83
个神经网络对应的计算单元数量,
Figure QLYQS_87
为第
Figure QLYQS_75
个神经网络的隐藏节点所对应的计算单元数量,
Figure QLYQS_79
为第
Figure QLYQS_76
个神经网络的第二隐藏节点系数,
Figure QLYQS_80
为第
Figure QLYQS_81
个神经网络的输出节点所对应的计算单元数量,
Figure QLYQS_86
为第
Figure QLYQS_77
个神经网络的第二输出节点系数;
对每个神经网络、输入节点、隐藏节点以及输出节点与计算单元的对应关系进行统计得到每个场景下的芯片能效优化表,以使在相应场景下进行数据处理时为每个神经网络、输入节点、隐藏节点以及输出节点分配相对应数量的计算单元。
CN202310056009.3A 2023-01-16 2023-01-16 基于神经网络的芯片设计能效优化方法 Active CN115809693B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310056009.3A CN115809693B (zh) 2023-01-16 2023-01-16 基于神经网络的芯片设计能效优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310056009.3A CN115809693B (zh) 2023-01-16 2023-01-16 基于神经网络的芯片设计能效优化方法

Publications (2)

Publication Number Publication Date
CN115809693A true CN115809693A (zh) 2023-03-17
CN115809693B CN115809693B (zh) 2023-04-07

Family

ID=85487384

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310056009.3A Active CN115809693B (zh) 2023-01-16 2023-01-16 基于神经网络的芯片设计能效优化方法

Country Status (1)

Country Link
CN (1) CN115809693B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106650922A (zh) * 2016-09-29 2017-05-10 清华大学 硬件神经网络转换方法、计算装置、编译方法和神经网络软硬件协作系统
CN111445003A (zh) * 2018-12-31 2020-07-24 辉达公司 神经网络生成器
CN112819152A (zh) * 2020-08-14 2021-05-18 腾讯科技(深圳)有限公司 一种神经网络训练方法及装置
CN114155410A (zh) * 2021-12-09 2022-03-08 京东科技信息技术有限公司 图池化、分类模型训练、重建模型训练方法和装置
CN114547430A (zh) * 2020-11-24 2022-05-27 腾讯科技(深圳)有限公司 信息对象的标签标注方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106650922A (zh) * 2016-09-29 2017-05-10 清华大学 硬件神经网络转换方法、计算装置、编译方法和神经网络软硬件协作系统
CN111445003A (zh) * 2018-12-31 2020-07-24 辉达公司 神经网络生成器
CN112819152A (zh) * 2020-08-14 2021-05-18 腾讯科技(深圳)有限公司 一种神经网络训练方法及装置
CN114547430A (zh) * 2020-11-24 2022-05-27 腾讯科技(深圳)有限公司 信息对象的标签标注方法、装置、设备及存储介质
CN114155410A (zh) * 2021-12-09 2022-03-08 京东科技信息技术有限公司 图池化、分类模型训练、重建模型训练方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
金健孜: "结合峰度正则化优化存算一体化芯片性能的方法" *

Also Published As

Publication number Publication date
CN115809693B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN111176820B (zh) 一种基于深度神经网络的边缘计算任务的分配方法及装置
CN110929865B (zh) 网络量化方法、业务处理方法及相关产品
CN110263909A (zh) 图像识别方法及装置
CN112651438A (zh) 多类别图像的分类方法、装置、终端设备和存储介质
CN108229591A (zh) 神经网络自适应训练方法和装置、设备、程序和存储介质
CN108985954B (zh) 一种建立各标识的关联关系的方法以及相关设备
CN109345108A (zh) 任务分配方法、装置、设备及存储介质
CN109214508B (zh) 信号处理的系统和方法
CN104391879B (zh) 层次聚类的方法及装置
CN110087228B (zh) 一种业务套餐的确定方法及装置
CN115186821A (zh) 面向芯粒的神经网络推理开销估计方法及装置、电子设备
CN111914908A (zh) 一种图像识别模型训练方法、图像识别方法及相关设备
EP3940603A1 (en) Processing apparatus for performing pointwise convolutions and depthwise convolutions
CN114116705A (zh) 联合学习中确定参与方贡献值的方法及装置
CN114528916A (zh) 样本聚类处理方法、装置、设备及存储介质
CN115809693B (zh) 基于神经网络的芯片设计能效优化方法
CN107395663A (zh) 数据获取方法及装置
CN114070791A (zh) 数据流量的限速处理方法及装置
CN115953651A (zh) 一种基于跨域设备的模型训练方法、装置、设备及介质
CN116129501A (zh) 人脸位姿估计方法及装置
CN114301907B (zh) 云计算网络中的业务处理方法、系统、装置及电子设备
CN109460490B (zh) 社交网络中中心顶点的确定方法、装置、设备及存储介质
CN109255099B (zh) 一种计算机可读存储介质、数据处理方法、装置及服务器
CN114116740A (zh) 用于联合学习中确定参与方贡献度的方法及装置
CN114444688A (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