CN117980919A - 用于通过架构延伸提高神经网络的有效精度的方法及装置 - Google Patents
用于通过架构延伸提高神经网络的有效精度的方法及装置 Download PDFInfo
- Publication number
- CN117980919A CN117980919A CN202280062444.0A CN202280062444A CN117980919A CN 117980919 A CN117980919 A CN 117980919A CN 202280062444 A CN202280062444 A CN 202280062444A CN 117980919 A CN117980919 A CN 117980919A
- Authority
- CN
- China
- Prior art keywords
- neuron
- generator
- neurons
- range
- clipping
- 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.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 107
- 238000000034 method Methods 0.000 title claims abstract description 62
- 210000002569 neuron Anatomy 0.000 claims abstract description 489
- 230000004913 activation Effects 0.000 claims abstract description 131
- 230000008569 process Effects 0.000 claims abstract description 36
- 238000004590 computer program Methods 0.000 claims 1
- 238000001994 activation Methods 0.000 description 125
- 230000006870 function Effects 0.000 description 60
- 238000010586 diagram Methods 0.000 description 26
- 230000011218 segmentation Effects 0.000 description 9
- 230000009466 transformation Effects 0.000 description 8
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 7
- 238000013139 quantization Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000003902 lesion Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种通过架构延伸提高神经网络的有效精度的方法和装置。根据本发明的一个方面,提供了一种用于扩展神经网络的架构的计算机实现的方法,该方法包括从包括在神经网络中的神经元中选择目标产生器神经元,所述目标产生器神经元输出根据给定的裁剪范围裁剪的激活;将所述给定的裁剪范围划分为多个分段;用与所述分段对应的多个产生器神经元替换所述目标产生器神经元;设置每个产生器神经元的参数,使得每个产生器神经元处理所述目标产生器神经元的输入;以及设置被连接到所述目标产生器神经元的消耗器神经元的参数,使得所述消耗器神经元处理所述多个产生器神经元的输出。
Description
技术领域
本公开的实施例涉及一种用于提高神经网络的有效精度的方法和装置,并且更具体地,涉及一种用于通过扩展神经网络的架构来提高神经网络的有效精度的方法和装置。
背景技术
在本部分中描述的内容简单地提供了关于本公开的背景信息,并且不构成现有技术。
神经网络是通过模仿人类神经元的结构而创建的机器学习模型。神经网络由一层或多层组成,每层的输出数据用作下一层的输入。最近,已经对由多层组成的深度神经网络的利用进行了深入的研究,并且深度神经网络在诸如语音识别、自然语言处理和病变诊断的各种领域中在提高识别性能方面发挥重要作用。
在神经网络的架构中,神经网络由一个或多个层组成,并且每层包括人工神经元。一层中的人工神经元通过权重连接到其它层中的人工神经元。人工神经元处理通过权重从先前层的人工神经元的输出接收的数据,并且将处理的数据传送到其他人工神经元。人工神经元还可通过权重向接收到的数据施加偏置(bias)。当神经网络基于给定的训练数据集被训练时,确定权重和偏置。也就是说,训练的神经网络具有有效的权重和偏置。此后,训练的神经网络使用确定的权重和偏置执行给定输入的任务。
通常,在训练的神经网络中的权重和偏置具有固定值。另外,权重和偏置具有固定的值。例如,如果神经网络以32位浮点数(FP32)训练,则权重和偏置以32位浮点数表示。
然而,如果权重和偏置具有固定的精度,则每个人工神经元难以执行要求比固定精度更高的精度的操作。
具体地,当人工神经元执行使用裁剪函数来限制输出范围的操作时,人工神经元可以根据给定裁剪范围来输出经裁剪的激活。尽管照原样输出了在裁剪范围内的激活,但是在裁剪范围之外的激活在其饱和或被裁剪到裁剪范围的边界值之后被输出。这里,以固定精度表示裁剪激活。如果固定精度是低精度,则还以低精度表示裁剪激活。即使以高精度计算一些激活并且可以提高神经网络的精度,但是由于在完成神经网络的训练之后激活具有固定的精度,因此神经网络的精度相对劣化。
因此,需要研究使得一些人工神经元能够以比固定精度更高的精度执行操作,即使神经网络中的人工神经元的精度是固定的。
本公开
技术问题
本发明实施例的主要目的在于提供一种用于通过将神经网络中的目标神经元替换为多个神经元并设置所替换的神经元的参数来提高神经元的有效精度的方法和装置。
本公开的其他实施例的目的是提供一种用于通过允许所替换的神经元根据从提供给目标神经元的裁剪范围划分的分段范围执行裁剪以在所提供的裁剪范围内以高精度计算激活来提高神经元的有效精度的方法和装置。
本公开的其他实施例的目的是提供一种用于通过允许所替换的神经元在比提供给目标神经元的裁剪范围更宽的范围内裁剪激活来提高神经元的有效精度的方法和装置。
技术方案
根据本公开的一个方面,提供了一种用于扩展神经网络的架构的计算机实现的方法,该方法包括从包括在神经网络中的神经元中选择目标产生器(producer)神经元,目标产生器神经元输出根据给定的裁剪范围裁剪的激活;将给定的裁剪范围划分为多个分段;用与所述分段对应的多个产生器神经元替换所述目标产生器神经元;设置每个产生器神经元的参数,使得每个产生器神经元处理所述目标产生器神经元的输入;以及设置被连接到所述目标产生器神经元的消耗器(consumer)神经元的参数,使得所述消耗器神经元处理所述多个产生器神经元的输出。
根据本公开的另一方面,提供了一种计算设备,该计算设备包括其中存储指令的存储器;以及至少一个处理器,其中,所述至少一个处理器被配置为通过执行所述指令:从包括在神经网络中的神经元中选择目标产生器神经元,所述目标产生器神经元输出根据给定的裁剪范围裁剪的激活;将所述给定的裁剪范围划分为多个分段;用与所述分段相对应的多个产生器神经元替换所述目标产生器神经元;设置每个产生器神经元的参数,使得每个产生器神经元处理所述目标产生器神经元的输入;以及设置被连接到所述目标产生器神经元的消耗器神经元的参数,使得所述消耗器神经元处理所述多个产生器神经元的输出。
根据本公开的另一方面,提供了一种存储指令的计算机可读记录介质,所述指令在由计算机执行时使所述计算机执行以下过程:从包括在所述神经网络中的神经元中选择目标产生器神经元,所述目标产生器神经元输出根据给定的裁剪范围裁剪的激活;将给定的裁剪范围划分为多个分段;用与所述分段对应的多个产生器神经元替换所述目标产生器神经元;设置每个产生器神经元的参数,使得每个产生器神经元处理所述目标产生器神经元的输入;以及设置被连接到所述目标产生器神经元的消耗器神经元的参数,使得所述消耗器神经元处理所述多个产生器神经元的输出。
有益效果
如上所述,根据本公开的实施例,可以通过用多个神经元替换神经网络中的目标神经元并设置替换的神经元的参数来提高神经元的有效精度
根据本公开的其他实施例,可以通过允许被替换的神经元根据从提供给目标神经元的裁剪范围划分的分段范围执行裁剪,以在所提供的裁剪范围内以高精度计算激活,来提高神经元的有效精度。
根据本公开的其他实施例,可以通过允许被替换的神经元在比提供给目标神经元的裁剪范围更宽的范围内裁剪激活来提高神经元的有效精度。
附图说明
图1a是示出神经网络的计算结构的图。
图1b是示出裁剪函数的图。
图2是示出根据本公开的实施例的神经网络的架构扩展的图。
图3是示出根据本公开的实施例的目标产生器神经元和消耗器神经元的图。
图4是示出根据本公开的实施例的裁剪范围的划分的图。
图5a是示出根据本公开的实施例的神经网络的扩展架构的图。
图5b是示出对应于多个产生器神经元的裁剪范围的图。
图6a是示出根据本公开的实施例的神经网络的扩展架构的图。
图6b是示出对应于多个产生器神经元的裁剪范围的图。
图7是示出根据本公开的实施例的神经网络的扩展架构的图。
图8a是示出根据本公开的实施例的经扩展以具有经扩展的裁剪范围的架构的图。
图8b是示出根据本公开的实施例的经扩展以具有高效率精度的架构的图。
图9是根据本公开的实施例的扩展神经网络的架构的方法的流程图。
图10是根据本公开的实施例的电子设备的配置图。
具体实施方式
在下文中,将参考附图详细描述本公开的一些实施例。在以下描述中,尽管在不同的附图中示出了相同的元件,但是相同的附图标记优选地表示相同的元件。此外,在一些实施例的以下描述中,为了清楚和简洁的目的,将省略对其中结合的已知功能和配置的详细描述。
另外,诸如第一、第二、(a)、(b)等的各种术语仅用于将一个部件与另一个组件区分开,而不是暗示或提示部件的实质、顺序或次序。在整个说明书中,当部件“包括”或“包含”一种组件时,该部件意味着进一步包括其它组件,除非有相反的具体说明,否则不排除其它组件。诸如“单元”、“模块”等术语是指用于处理至少一个功能或操作的一个或多个单元,其可以通过硬件、软件或其组合来实现。
图1a是示出神经网络的计算结构的图。
参考图1a,示出了层100、仿射变换块110和裁剪块120。
层100表示包括在神经网络中的至少一个层。在神经网络包括多个层的情况下,每个层接收另一层的输出作为输入,并将其输出发送到另一层。以下,将在假设在层100之前和之后存在其它层的情况下进行描述。
层100接收来自前一层的输入xp,1和xp,2。层100处理输入xp,1和xp,2,并输出的激活yp,1和yp,2,层100的输入xp,1和xp,2是前一层的输出。
包括在神经网络中的每个层包括至少一个神经元。在图1a中,层100包括位于顶部的第一神经元和位于底部的第二神经元。第一神经元包括第一权重wp,11和wp,12以及第一偏置bp,1。第二神经元包括第二权重wp,21和wp,22,22以及第二偏置bp,2。
每个神经元基于权重和偏置来处理输入以计算偏置的加权和。例如,第一神经元计算输入xp,1和xp,2与第一权重wp,11和wp,12的加权和,并且将第一偏置bp,1应用于所述加权和以计算第一偏置的加权和hp,1,这被称为仿射变换。
每个神经元被给予裁剪范围,并且可以对偏置的加权和执行裁剪。裁剪范围是先前给定的值。当完成神经网络的训练时,可以与神经网络的参数一起确定裁剪范围。可以基于推断步骤中的激活值来确定裁剪范围。另外,可以由用户设置裁剪范围。在图1a中,第一神经元具有α和β作为裁剪范围的边界值。第一神经元通过根据裁剪范围对第一偏置的加权和hp,1进行裁剪来计算第一激活yp,1。
图1b是示出了裁剪函数的图。
请参照图1b,裁剪函数根据一裁剪范围[α,β]来裁剪偏置的加权总和h。裁剪函数将裁剪范围内的输入原样输出,并将裁剪范围外的输入作为裁剪范围的边界值输出。也就是说,裁剪函数被表示为裁剪范围内的线性函数。
如果裁剪函数的输入是裁剪范围[α,β]内的值,则原样输出裁剪函数的输入。另一方面,如果裁剪函数的输入具有小于α的值,则裁剪函数的输出为α。如果裁剪函数的输入具有大于β的值,则裁剪函数的输出为β。
根据本公开的实施例,在裁剪块120中可以一起使用裁剪函数和激活函数。这里,为了应用本公开的实施例,激活函数必须不影响裁剪函数的输出。
具体地,首先将偏置的加权和输入到激活函数,并且可以根据裁剪范围对激活函数的输出进行裁剪,然后将其输出以作为激活。对于偏置的加权和h,使用公式,激活函数可以使用公式被表示为y=f(h),并且裁剪函数可以使用公式被表示为y=clip(h,α,β)。在激活函数和裁剪函数都被应用于偏置的加权和的情况下,裁剪函数可以使用激活函数的输出作为输入。这里,裁剪函数的输出可以表示为y=clip(f(h),α,β)。
根据本公开的实施例,接收用于偏置的加权和的激活函数的输出作为输入的裁剪函数的输出与用于偏置的加权和的裁剪函数的输出相同。例如,当激活函数是整流线性单元(ReLu)函数并且裁剪范围的α具有等于或大于0的值时,建立clip(ReLu(h),α,β)=clip(h,α,β)。也就是说,输入是否通过激活函数不会影响裁剪函数的输出。以这种方式,当以用于偏置的加权和的激活函数的输出作为输入的裁剪函数的输出值与用于偏置的加权和的裁剪函数的输出相同时,可以应用根据本公开的实施例的架构扩展方法。
参考图1a和1b,裁剪范围被给定,并且每个神经元根据给定的裁剪范围执行裁剪,并且以固定精度输出的激活。从相同层输出的激活具有单一精度。
换句话说,激活用给定的裁剪范围表示,并且即使在裁剪范围内也用固定的精度表示。
当从一些神经元输出的激活需要以高精度表示时,如果以固定精度表示激活,则可能无法完全演示神经网络的性能。另外,即使当需要在比给定的裁剪范围更宽的范围中裁剪激活时,如果在给定的裁剪范围内裁剪激活,则可能不会完全利用神经网络的性能。
图2是示出根据本公开的实施例的神经网络的架构扩展的图。
参考图2,神经网络包括多个神经元200、202、210、212、220和222。具体地,神经网络包括通过分支连接的三个层。第一层包括第一神经元200和202,第二层包括第二神经元210和212,第三层包括消耗器神经元220和222。
神经网络在训练之后具有固定的参数,并且从每个神经元输出的激活具有固定的精度。例如,在图2中,多个神经元200、202、210、212、220和222输出256等级(level)的激活。也就是说,从每个神经元输出的激活具有256等级的精度。另外,从每个神经元输出的激活具有在给定的裁剪范围内的值。
这里,如果在给定的裁剪范围内以高精度表示一些激活,则可以改进神经网络的性能。在图2中,目标神经元212的输出的激活在给定的裁剪范围内具有256等级的精度,但是需要以512等级的精度输出,以便提高神经网络的精度。
另外,在一些激活具有相同的分辨率并且在比给定的裁剪范围更宽的范围中表示的情况下,可以改进神经网络的性能。尽管目标神经元212的输出的激活具有图2中给定的裁剪范围内的值,但是需要根据更宽的裁剪范围来裁剪输出的激活,以便提高神经网络的精度。
根据本公开的实施例,神经网络的架构可以被扩展以便改进从一些神经元输出的激活的精度。通过用多个神经元替换需要高精度或宽裁剪范围的神经元,可以扩展神经网络的体系结构。在图2中,目标神经元212被替换为第一产生器神经元213和第二产生器神经元214。
这里,第一产生器神经元213和第二产生器神经元314具有独立的裁剪范围。第一发生者神经元213和第二发生者神经元314以256等级的精度输出的激活。
如果第一生成神经元213的裁剪范围和第二生成神经元214的裁剪范围的总和与目标神经元212的裁剪范围相同,则获得与由于架构扩展而引起的目标神经元212的输出的激活的有效精度的提高相同的效果。虽然第一目标神经元212的输出的激活在裁剪范围内具有256等级的精度,但是被替换的神经元213和214的输出的激活可以表示在相同裁剪范围内的512等级的精度。即,被连接到第一产生器神经元213和第二产生器神经元314两者的消耗器神经元220和222可以被认为接收具有比目标神经元212的输出的激活更高的精度的激活。消耗器神经元220和222从目标神经元212接收与具有512等级精度的激活相同的输入。也就是说,消耗器神经元220和222的输入激活的分辨率增加。
同时,在第一产生者神经元213的裁剪范围与第二产生者神经元214的裁剪范围的总和大于目标神经元212的裁剪范围的情况下,获得与由于架构扩展而引起的目标神经元212的输出的激活的有效精度的提高相同的效果。第一产生器神经元213在与目标神经元212的裁剪范围相同的范围内裁剪激活,并且第二产生器神经元214在目标神经元212的裁剪范围之外的范围内裁剪激活。目标神经元212的输出的激活具有给定裁剪范围内的值,而被替换的神经元213和214的输出的激活可以呈现比给定的裁剪范围更宽的范围内的值。消耗器神经元220和222就像它们从目标神经元212接收具有比给定的裁剪范围更宽的范围中的值的激活那样操作。
这样,在各层的输出精度固定且裁剪范围被确定的情况下,神经网络可以提高各层的输出的有效精度。
图3是展示根据本发明的实施例的目标产生器神经元和消耗器神经元的图。
参考图3,示出了目标产生器神经元和消耗器神经元。目标产生器神经元和消耗器神经元被包括在不同的层中。
目标产生器神经元是指需要增加输出的激活的有效精度以便提高神经网络的准确度的神经元。从目标产生器神经元输出具有在给定的裁剪范围和给定的精度内的值的激活。
消耗器神经元是接收和处理来自产生器神经元的激活的神经元。
目标产生器神经元和消耗器神经元可以包括参数。目标产生器神经元包括产生器权重wp和产生器偏置bp。消耗器神经元包括消耗器权重wc和消耗器偏置bc。
目标产生器神经元可通过将输入xp乘以产生器权重wp并随后将产生器偏置bp添加到结果来计算偏置的偏置加权和hp。目标产生器神经元可以通过根据给定的裁剪范围对偏置的加权和hp进行裁剪来输出裁剪的激活yp。裁剪的激活yp用作消耗器神经元的输入xc。尽管在以下描述中存在产生器神经元的一个输入和消耗器神经元的一个输入,但是这仅仅是示例,并且可以存在产生器神经元的多个输入和消耗器神经元的多个输入。也就是说,产生器神经元和消耗器神经元可以对多个输入应用仿射变换。
目标产生器神经元输出根据给定的裁剪范围裁剪的激活。目标产生器神经元的裁剪范围被给定为[αp,βp]。目标产生器神经元的激活具有在裁剪范围内的值并且以固定精度来表示。
为了提高目标产生器神经元的输出的激活的有效精度,用多个产生器神经元替换目标产生器神经元。
图4是展示根据本发明的实施例的裁剪范围的划分的图。图5a是示出根据本公开的实施例的神经网络的扩展架构的图。图5b是示出对应于多个产生器神经元的裁剪范围的图。
在下文中,被执行以扩展神经网络的架构的操作将被描述为由电子设备执行。将参考图10描述电子设备的具体配置。
参考图4,示出了裁剪函数的给定裁剪范围和被分段的分段。目标产生器神经元的裁剪范围被给定为[αp,βp]。
为了增加目标产生者神经元的有效精度,电子设备确定目标产生者神经元的裁剪范围的分段的数目和分段范围。基于所确定的分段数目和分段范围,所述电子设备将所述目标产生器神经元的所述裁剪范围分段成多个分段。多个分段可以具有相同的尺寸或不同的尺寸。另外,多个分段中的至少两个可具有不同的尺寸。根据每个分段的范围而裁剪的激活具有2m等级的精度。
参考图5a,电子设备用与所划分的分段相对应的多个产生器神经元替换图3中的目标产生器神经元。产生器神经元的数量等于分段的数量。每个产生者神经元输出根据相应分段的范围而裁剪的激活。
参考图5b,示出了与所划分的分段相对应的裁剪函数。第一裁剪函数500是具有第一分段作为裁剪范围的函数。第二裁剪函数510是具有第二分段作为裁剪范围的函数。
参考图5a和5b,第一产生器神经元的第一裁剪范围是[αp,1,βp,1]。第一产生器神经元通过根据第一裁剪范围对第一偏置的加权和hp,1进行裁剪来输出第一输出的激活yp,1。第二产生器神经元的第二裁剪范围是[αp,2,βp,2]。第二产生器神经元通过根据第二裁剪范围对第二偏置的加权和hp,2进行裁剪来输出第二输出的激活yp,2。
当目标产生器神经元被多个产生器神经元替换时,电子装置设置每个产生器神经元的参数,使得每个产生器神经元处理目标产生器神经元的输入。具体地,电子装置设置每个产生者神经元的权重和偏置。
每个产生器神经元接收与目标产生器神经元的输入相同的输入,并且使用设置的参数来计算偏置的加权和。每一产生器神经元根据对应分段的范围来裁剪偏置的加权和。
同时,当目标产生器神经元被多个产生器神经元替换时,电子设备设置被连接到目标产生器神经元的消耗器神经元的参数,使得消耗器神经元处理多个产生器神经元的输出。具体地,消耗器神经元被设置成使得消耗器神经元包括应用于每个产生器神经元的输出的参数。被连接到目标产生器神经元的消耗器神经元连接到多个产生器中的每一个。
消耗器神经元接收每个产生器神经元的输出的激活并且将参数应用于所述输出的激活。具体地,消耗器神经元通过将每个权重应用于每个产生器神经元的输出的激活来计算加权和。此后,消耗器神经元将偏置应用于加权和。
参考图5a,每个产生器神经元可以使用与目标产生器神经元的参数相同的参数来处理输入。可以设置每个产生器神经元,使得其具有目标产生器神经元的产生器权重wp和产生器偏置bp作为其权重和偏置。
消耗器神经元可以使用与应用于目标产生器的输出的参数相同的参数和根据多个分段的偏移(offset)来处理多个产生器神经元的输出。具体地,消耗器神经元通过将与应用于目标产生器神经元的输出的消耗器权重wc相同的权重应用于每个产生器神经元的输出的激活来计算加权和。消耗器神经元通过根据多个段将偏移反映在所计算的加权和中来计算消耗器神经元的输出。消耗器神经元的输出可以由公式1表示。
[公式1]
在公式1中,hc是消耗器神经元的输出,N是产生器神经元的数目,wc是消耗器权重,yp,i是每个产生器神经元的输出的激活,αp是给定的裁剪范围的最小值,βp是给定的裁剪范围的最大值,bc是消耗器偏置,并且αp,i是与每个产生器神经元相对应的分段的最小值。
根据本公开的实施例,多个产生器神经元的输出的激活具有与目标产生器神经元的输出的激活相同的精度。参考图3和5a,第一输出的激活yp,1、第二输出的激活yp,2和第n输出的激活yp,n具有与由目标产生器神经元裁剪的激活yp相同的精度。在这种情况下,与目标产生器神经元相比,多个产生器神经元可以提高输出的激活的精度。如果神经元的数目是n,并且多个产生器神经元的输出的激活被聚集,则给定的裁剪范围被划分成N×2m等级。与将给定的裁剪范围划分成2m等级的目标产生器神经元相比,多个产生器神经元可将给定的裁剪范围划分成N×2m等级。这允许被连接到多个产生器神经元的消耗器神经元以较高的精度处理激活作为输入。
根据本公开的另一实施方式,所述电子设备将给予所述目标产生器神经元的所述裁剪范围划分为多个分段,并且将所述多个分段转换为具有与所述给定裁剪范围相同的尺寸并且不重叠的分段。这允许多个产生器神经元具有比目标产生器神经元更宽的裁剪范围。例如,电子设备将第一产生器神经元的裁剪范围从图5a中的[αp,1,βp,1]转换到[αp,βp]。另外,电子设备将第二产生器神经元的裁剪范围从[αp,2,βp,2]转换为[βp,βp+(βp-αp)]。第一产生器神经元变为与目标产生器神经元相同。相反,第二产生器神经元可以处理给定裁剪范围之外的值。这允许被连接到多个产生器神经元的消耗器神经元处理具有更宽范围的值作为输入的激活。
返回参看图4,电子设备可用扩展架构量化神经网络。量化是将高精度张量转换成低精度值。这里,张量表示神经网络的权重、偏置或激活中的至少一个。量化可以通过将高精度张量转换成低精度值来降低神经网络的计算复杂度。
根据本公开的实施例,多个分段中的至少两个具有不同的尺寸。在此情况下,当电子设备量化神经网络时,由于量化而出现非线性量化效应。
具体地,量化多个产生器神经元中包括的参数,并且还量化多个产生器神经元的输出的激活。当与各个产生器神经元相对应的分段的尺寸不同时,非线性地量化多个产生器神经元的输出的激活。
图6a是示出根据本公开的实施例的神经网络的扩展架构的图。图6b是示出对应于多个产生器神经元的裁剪范围的图。
执行神经网络操作的电子设备计算每个产生器神经元的裁剪函数。
这里,由于硬件限制,对应于每个产生者神经元的分段的尺寸可以不同于在每个产生者神经元中被计算的分段的尺寸。例如,可以由硬件计算的裁剪范围可以不同于分配给每个产生器神经元的裁剪范围。此外,即使将不同的裁剪范围分配给包括在相同层中的神经元,也可能需要针对硬件效率设置相同的裁剪范围。
因此,必须调整与每个产生器神经元相对应的分段的尺寸和范围。
参考图5a,每个产生器神经元包括相同的参数,并且消耗器神经元的权重都是相同的。然而,多个产生器神经元具有不同的分段范围。
另一方面,参考图6a,每个产生器神经元包括独立的参数,并且消耗器神经元的权重也具有独立的值。相反,多个产生器神经元可以具有相同的分段范围。
如上所述,电子设备可设置多个产生器神经元的参数并设置消耗器神经元的参数,以使得产生器神经元的分段匹配。这是为了电子设备在分段范围内执行给定操作,在该分段范围中,即使当逻辑上必要的分段的范围与电子设备可以物理地计算的分段的范围不同时,也可以执行计算。即使存在电子设备不能计算的分段,也可以通过设置参数将该分段转换为可以计算的分段。
然而,与图6a不同,根据本公开的另一实施例,每个产生器神经元包括独立的参数,并且多个产生器神经元可以具有不同的分段范围。也就是说,电子设备可以独立地确定每个产生器神经元的分段范围,并且根据所确定的分段范围来设置每个产生器神经元的参数。这里,电子设备可以针对每个产生器神经元调整每个分段的范围。另外,所述电子设备可针对每一产生器神经元独立地设定消耗器神经元的权重。
返回参看图6a,电子设备可调整多个分段,使得其具有相同尺寸且根据调整来设定神经网络的参数。否则,考虑到每个产生器神经元的操作范围,可以针对每个产生器神经元调整从裁剪范围划分的多个分段。
参考图6b,示出了与每个产生器神经元相对应的裁剪函数。根据本公开的实施例,第一裁剪函数500和第二裁剪函数510两者都具有与裁剪范围相同尺寸的分段。以这种方式,从给定的裁剪范围划分的多个分段可以被调整为具有相同尺寸的分段。每个产生器神经元输出根据相同的裁剪范围被裁剪的激活。需要适当地设置多个产生器神经元的参数和消耗器神经元的参数。
参考图6a,电子设备可以基于与每个产生器神经元相对应的分段的范围和调整后的分段的范围来设置每个产生器神经元的参数。具体地,电子设备可以使用公式2和公式3来设置每个产生器神经元的参数。
[公式2]
[公式3]
在公式2中,p指示产生器神经元,i指示每个产生器神经元的索引,αp,i表示与每个产生器神经元对应的分段的范围的最小值,βp,i表示与产生器神经元对应的分段的范围的最大值,表示调整后的分段的范围的最小值,/>表示调整后的分段的范围的最大值,sp,i表示与每个产生器神经元对应的分段的范围和调整后的分段的范围之间的比率,cp,i表示与每个产生器神经元对应的分段的中心,并且/>表示调整后的分段的中心。
在公式3中,表示每个产生器神经元的权重,/>表示每个产生器神经元的偏置,wp表示目标产生器神经元的权重,并且βp表示目标产生器神经元的偏置。
同时,电子设备可以基于与每个产生器神经元相对应的分段的范围和调整后的分段的范围来设置消耗器神经元的参数。具体地,电子设备可以使用公式2和公式4来设置每个产生器神经元的参数。
[公式4]
在公式4中,表示被连接到每个产生器神经元的消耗器神经元的权重,wc表示连接到目标产生器神经元的消耗器神经元的权重,/>表示被连接到每个产生器神经元的消耗器神经元的偏置,βc表示被连接到目标产生器神经元的消耗器神经元的偏置,并且N表示多个产生器神经元的数目。
电子设备通过使用公式2、公式3和公式4调整目标产生器神经元的参数来确定多个产生器神经元的参数,另外,电子设备通过调整被连接到目标产生器神经元的消耗器神经元的参数来确定被连接到多个产生器神经元的消耗器神经元的参数。
通过使用公式2、公式3和公式4设置每个产生者神经元的参数和消耗器神经元的参数,电子设备可以使产生者神经元的裁剪范围相同。
根据本公开的另一实施例,电子设备可通过使用公式2、公式3和公式4设置每个产生器神经元的参数和消耗器神经元的参数来调整每个产生器神经元的裁剪范围。
图7是示出根据本公开的实施例的神经网络的扩展架构的图。
图7示出了产生器神经元保持目标产生器神经元的参数wp和bp,并且仅裁剪函数被分段。消耗器神经元可以将偏移αp、αp,1、αp,2和αp,N应用于产生器神经元的输出的激活yp,1、yp.2和yp,N,并且将权重wc和偏置bc应用于应用结果yp以输出消耗器神经元的输出的激活hc。
根据图7所示的神经网络架构,电子设备不将目标产生器神经元分段成多个产生器神经元,而是分段目标产生器神经元的裁剪函数。另外,所述电子设备设置参数,使得所述消耗器神经元接收多个裁剪函数值并且将偏置应用于所述裁剪函数值。
从其分段目标产生器神经元的裁剪函数的神经元被称为产生器神经元。产生器神经元接收与目标产生器神经元的输入xp相同的输入,并且执行与目标产生器神经元的仿射变换相同的变换。产生器神经元将多个裁剪函数应用于仿射变换结果。多个裁剪函数具有不同的裁剪范围。产生器神经元输出多个裁剪结果作为输出的激活yp,1、yp.2和yp,N。
消耗器神经元接收输出的激活yp,1、yp.2和yp,N,并且将偏移αp、αp,1、αp,2和αp,N应用于输出的激活。另外,消耗器神经元还应用全局偏移αp。消耗器神经元通过将权重wc和偏置bc应用于应用结果yp来输出消耗器神经元的输出的激活hc。
消耗器神经元的偏移应用结果yp可以由公式5表示。
[公式5]
在公式5中,i表示裁剪函数的索引,N表示分段的裁剪函数的数目。yp表示消耗器神经元的偏移应用结果,αp表示全局偏移,yp,i表示每个裁剪结果,并且αp,i表示应用于每个输出的激活的偏移。
图7中所示的神经网络架构在被实现为以下情形时具有高效率:使得仅产生器神经元的裁剪范围可以硬件等级被分段并且消耗器神经元可向产生器神经元的输出的激活中的每一个施加偏移。
图8a是展示根据本发明的实施例的被扩展以具有扩展的裁剪范围的架构的图。
参考图8a,示出了其架构未被扩展的现有神经网络800、其架构已被扩展的神经网络810、以及被替换的神经元的裁剪函数820。
现有神经网络800可以被量化,使得从包括在现有神经网络800中的神经元输出的激活具有256等级的精度。当现有神经网络800被量化时,包括在相同层中的神经元输出根据相同的裁剪范围裁剪的激活,并且以256等级的精度输出裁剪的激活。在现有的神经网络800中,包括在一些层中的神经元具有[0,t1]作为裁剪范围,而包括在其它层中的神经元具有[[0,t2]作为裁剪范围。
然而,在现有神经网络800中,一些神经元可以通过使用比给定的裁剪范围更宽的范围裁剪激活来提高神经网络的准确度。也就是说,为了提高现有神经网络800的性能,现有神经网络800的左下部的目标产生器神经元具有[0,2t1]作为裁剪范围,并且需要计算具有512等级的裁剪范围内的激活。
根据本公开的实施例,电子设备可以通过用多个神经元替换现有神经网络800中包括的目标神经元来提高目标神经元的有效精度。
扩展神经网络810是其中来自现有神经网络800的目标产生器神经元被两个产生器神经元替换的神经网络。在扩展神经网络810中,在左下部示出了多个产生器神经元。
多个产生器神经元接收与目标产生器神经元的输入相同的输入。在所述多个产生器神经元中,所述第一产生器神经元具有[0,t1]的裁剪范围,并且所述第二产生器神经元具有[t1,2t1]的裁剪范围。然而,当通过硬件在相同范围内计算多个产生器神经元的裁剪函数时,可以调整与多个产生器神经元相对应的裁剪范围,使得它们具有相同的尺寸和范围。每个产生器神经元的裁剪函数具有尺寸为t1的裁剪范围。相反,产生器神经元具有不同的参数。例如,第一产生器神经元的偏置b1b不同于第二产生器神经元的偏置b1b-t1。
消耗器神经元接收并处理来自多个生产神经元的输出的激活。从消耗器神经元的角度来看,从多个产生器神经元接收输出的激活等效于从目标产生器神经元接收根据[0,2t1]的裁剪范围以512等级的精度裁剪的激活。
因此,电子设备可以通过用现有神经网络800中的多个神经元替换需要增加裁剪范围或量化范围的神经元来显著增加神经元的裁剪范围或量化范围。
图8b是展示根据本发明的实施例的被扩展以具有高效率精度的架构的图。
参考图8b,示出了其架构未被扩展的现有神经网络850、其架构已被扩展的神经网络860、以及被替换神经元的裁剪函数870。
现有神经网络850可以被量化,使得从包括在现有神经网络850中的神经元输出的激活具有256等级的精度。当现有神经网络850被量化时,包括在相同层中的神经元输出根据相同的裁剪范围裁剪的激活,并且以256等级的精度输出裁剪的激活。
然而,在现有神经网络850中,一些神经元以比给定精度更高的精度输出的激活,从而提高神经网络的精度。即,为了提高现有神经网络850的性能,在现有神经网络850的左下部的目标产生器神经元输出具有256级精度的激活,但是需要计算具有512等级精度的激活。
根据本公开的实施例,电子设备可以通过用多个神经元替换现有神经网络850中包括的目标神经元来提高目标神经元的有效精度。
扩展神经网络860是其中来自现有神经网络850的目标产生器神经元被两个产生器神经元替换的神经网络。在扩展神经网络860中,在左下部示出了多个产生器神经元。
多个产生器神经元接收与目标产生器神经元的输入相同的输入。多个产生器神经元以256等级的精度计算激活。然而,目标产生器神经元在[0,t1]的裁剪范围内以256等级的精度计算激活。在所述多个产生器神经元之中,所述第一产生器神经元计算[0,0.5t1]的所述裁剪范围内的具有256等级的精度的激活,并且所述第二产生器神经元计算具有[0.5t1,t1]的所述裁剪范围内的256等级的精度的激活。
消耗器神经元接收并处理来自多个产生器神经元的输出的激活。从消耗器神经元的角度来看,从多个产生器神经元接收输出的激活等效于从目标产生器神经元接收在[0,t1]的裁剪范围内以512等级的精度裁剪的激活。
因此,电子设备可以通过用多个神经元替换现有神经网络850中的给定的裁剪范围内的需要增加的激活精度的神经元来显著增加神经元的裁剪范围或量化范围。
图9是根据本公开的实施方式的扩展神经网络的架构的方法的流程图。
参照图9,电子设备在包括在神经网络中的神经元中选择目标产生器神经元(S900)。
这里,神经网络可以是经训练的神经网络。
目标产生器神经元接收来自前一层中的神经元的输入。目标产生器神经元对输入执行仿射变换,并根据给定的裁剪范围来裁剪仿射变换结果。目标产生器神经元输出裁剪的激活。
电子设备将给定的裁剪范围划分为多个分段(S902)。
多个分段中的至少两个可具有不同的尺寸。否则,多个分段可以具有不同的边界值但具有相同的尺寸。
电子设备用与分段相对应的多个产生器神经元来替换目标产生器神经元(S904)。
每个产生器神经元根据多个分段中的对应分段的范围输出裁剪的激活。
根据本公开的实施例,由多个产生器神经元输出的多个输出的激活具有与由目标产生器神经元输出的裁剪的激活的精度相同的精度。因此,多个产生器神经元可以在与目标产生器神经元的裁剪范围相同的范围内呈现具有更高精度的激活。
根据本公开的实施例,电子设备可以将多个分段转换成具有与给定裁剪范围相同的尺寸并且不重叠的分段。因此,多个产生器神经元可以在比目标产生器神经元的裁剪范围更宽的范围中呈现激活。
根据本发明的另一实施例,所述电子设备可调整或转换每一产生器神经元的每一分段的范围。具体地,电子装置可以考虑每个产生器神经元的可计算操作范围来调整每个分段的范围。这里,经调整的分段的范围的总和可以不同于给定的裁剪范围,并且经调整的分段的范围的边界值可以不匹配。例如,在将裁剪范围划分为第一分段和第二分段,并且分别调整第一分段的范围和第二分段的范围的情况下,第一调整的分段范围的最大值和第二调整的分段范围的最小值可能不匹配。每一产生者神经元根据每一调整的分段范围输出裁剪的激活。
为此,电子设备设置每个产生器神经元的参数,使得每个产生器神经元处理目标产生器神经元的输入(S906)。
电子设备设置被连接到目标产生器神经元的消耗器神经元的参数,使得消耗器神经元处理多个产生器神经元的输出(S908)。
根据本公开的实施例,可以设置每个产生器神经元的参数,使得每个产生器神经元使用与目标产生器神经元的参数相同的参数来处理输入。另外,消耗器神经元的参数可以被设置成使得消耗器神经元使用与应用于目标产生器的输出的参数相同的参数和根据多个分段的偏移来处理多个产生器神经元的输出。因此,多个产生器神经元和被连接到多个产生器神经元的消耗器神经元具有与目标产生器神经元和被连接到目标产生器神经元的消耗器神经元的参数相同的参数。然而,多个产生器神经元具有不同的裁剪范围。
根据本公开的另一实施例,电子设备可以考虑每个产生器神经元的可计算的分段范围来调整每个产生器神经元的多个分段。电子设备基于与每个产生器神经元相对应的分段的范围和经调整的分段的范围来设置每个产生器神经元的参数。另外,所述电子设备基于与每个产生器神经元相对应的分段的范围和经调整的分段的范围来设置应用于每个产生器神经元的输出的参数。因此,多个产生器神经元和被连接到所述多个产生器神经元的消耗器神经元具有与目标产生器神经元和被连接到目标产生器神经元的消耗器神经元的参数不同的参数。然而,多个产生器神经元都具有相同的裁剪范围。
图10是根据本公开的实施例的电子设备的配置图。
参考图10,电子设备1000可以包括系统存储器1010、处理器1020、存储装置1030、输入/输出接口1040和通信接口1050中的一些或全部。
系统存储器1010可以存储允许处理器1020执行根据本公开的实施例的范围确定方法的程序。例如,程序可以包括可由处理器1020执行的多个指令,并且神经网络的架构可以通过执行多个指令的处理器1020来扩展。
系统存储器1010可以包括易失性存储器和非易失性存储器中的至少一个。易失性存储器包括静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM),非易失性存储器包括闪存。
处理器1020可以包括能够执行至少一个指令的至少一个核。处理器1020可以执行存储在系统存储器1010中的指令。
即使提供给电子设备1000的电源被阻断,存储装置1030也保持所存储的数据。例如,存储装置1030可以包括非易失性存储器,诸如电可擦除可编程只读存储器(EEPROM)、闪存、相变随机存取存储器(PRAM)、电阻随机存取存储器(RRAM)或纳米浮栅存储器(NFGM),或者可以包括存储介质,诸如磁带、光盘和磁盘。在一些实施例中,存储装置1030可以从电子设备1000移除。
根据本公开的实施例,存储装置1030可以存储用于扩展神经网络的架构的程序。存储在存储器1030中的程序可以在由处理器1020执行该程序之前被加载到系统存储器1010。存储装置1030可以存储以程序语言编写的文件,并且可以将由编译器等从文件生成的程序加载到系统存储器1010。
存储装置1030可以存储要由处理器1020处理的数据和由处理器1020处理的数据。
输入/输出接口1040可以包括诸如键盘、鼠标等的输入设备,并且可以包括诸如显示设备和打印机的输出设备。
用户可以通过输入/输出接口1040触发处理器1020执行程序。此外,用户可通过输入/输出接口1040设置目标饱和率。
通信接口1050提供对外部网络的访问。例如,电子设备1000可以通过通信接口1050与其他设备通信。
同时,电子设备1000可以是诸如膝上型计算机或智能电话之类的移动计算设备,以及诸如台式计算机、服务器或AI加速器之类的固定计算设备。
包括在电子设备1000中的观测器和控制器可以是作为由处理器执行的多个指令的集合的过程,并且可以存储在可由处理器访问的存储器中。
尽管图9示出了顺序地执行处理S900至处理S908,但是这仅仅是本公开的实施例的技术思想的示例。换句话说,本领域技术人员在不脱离本公开的实施例的基本特征的情况下,可以通过改变图9所示的顺序或者并行执行处理S900至S908中的一个或多个来以各种方式修改和应用处理,因此图9不限于时间顺序。
同时,图9所示的处理可以被实现为计算机可读记录介质中的计算机可读代码。计算机可读记录介质包括存储计算机系统可读的数据的所有种类的记录设备。即,这样的计算机可读记录介质包括非暂态性介质,诸如ROM、RAM、CD-ROM、磁带、软盘和光学数据存储设备。另外,计算机可读记录介质可以被分布到经由网络连接的计算机系统,并且计算机可读代码可以以分布式方式被存储和执行。
尽管为了说明的目的已经描述了本公开的示例性实施例,但是本领域技术人员将理解,在不脱离要求保护的本发明的思想和范围的情况下,各种修改、添加和替换是可能的。因此,为了简洁和清楚起见,已经描述了本公开的示例性实施例。本实施方式的技术思想的范围不受图示的限制。因此,本领域普通技术人员将理解,所要求保护的发明的范围不受上述明确描述的实施例的限制,而是由权利要求及其等同物限制。
这项工作在韩国由科学部的ICT&未来计划(MSIP)(2020-0-01305,开发了2000TFLOPS服务器人工智能深度学习处理器和模块)部分得到支持。
(附图标记
1000:电子设备 1010:系统存储器
1020:处理器 1030:存储器
1040:输入/输出接口 1050:通信模块)
相关申请的交叉参考
本申请要求于2021年9月15日提交的申请号为10-2021-0123351的韩国专利申请的优先权,其公开内容通过引用整体并入本文。
Claims (10)
1.一种用于扩展神经网络的架构的计算机实现的方法,所述方法包括:
从包括在所述神经网络中的神经元中选择目标产生器神经元,所述目标产生器神经元输出根据给定的裁剪范围裁剪的激活;
将所述给定的裁剪范围划分为多个分段;
用与所述分段对应的多个产生器神经元替换所述目标产生器神经元;
设置每个产生器神经元的参数,使得每个产生器神经元处理所述目标产生器神经元的输入;以及
设置被连接到所述目标产生器神经元的消耗器神经元的参数,使得所述消耗器神经元处理所述多个产生器神经元的输出。
2.根据权利要求1所述的方法,其中每个产生器神经元输出根据所述多个分段中的对应分段的范围裁剪的激活。
3.根据权利要求1所述的方法,其中由所述多个产生器神经元输出的多个输出的激活具有与由所述目标产生器神经元输出的所述裁剪的激活的精度相同的精度。
4.根据权利要求1所述的方法,还包括将所述多个分段转换成具有与所述给定的裁剪范围相同的尺寸且不重叠的分段。
5.根据权利要求1所述的方法,其中所述多个分段中的至少两者具有不同的尺寸。
6.根据权利要求1所述的方法,还包括考虑每个产生器神经元的计算范围来调整每个分段的所述范围。
7.根据权利要求6所述的方法,其中每个产生器神经元的参数的所述设置包括:基于与每个产生器神经元相对应的所述分段的所述范围和所调整的所述分段的范围来设置每个产生器神经元的参数,以及
所述消耗器神经元的参数的所述设置包括:基于与每个产生器神经元相对应的所述分段的所述范围和所调整的所述分段的范围来设置应用于每个产生器神经元的所述输出的参数。
8.根据权利要求1所述的方法,其中每个产生器神经元使用与所述目标产生器神经元的参数相同的参数来处理所述输入,并且所述消耗器神经元使用与应用于所述目标产生器神经元的所述输出的参数相同的参数以及根据所述多个分段的偏移来处理所述多个产生器神经元的所述输出。
9.一种计算设备,包括:
存储器,其中存储指令;以及
至少一个处理器,
其中所述至少一个处理器被配置为通过执行所述指令:
从包括在神经网络中的神经元中选择目标产生器神经元,所述目标产生器神经元输出根据给定的裁剪范围裁剪的激活;
将所述给定的裁剪范围划分为多个分段;
用与所述分段相对应的多个产生器神经元替换所述目标产生器神经元;
设置每个产生器神经元的参数,使得每个产生器神经元处理所述目标产生器神经元的输入;以及
设置被连接到所述目标产生器神经元的消耗器神经元的参数,使得所述消耗器神经元处理所述多个产生器神经元的输出。
10.一种计算机可读记录介质,记录用于执行权利要求1至8中任一项所述的方法的计算机程序。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210123351A KR102687479B1 (ko) | 2021-09-15 | 2021-09-15 | 아키텍처 확장을 통한 신경망의 유효 정밀도 향상 방법 및 장치 |
KR10-2021-0123351 | 2021-09-15 | ||
PCT/KR2022/013335 WO2023043108A1 (ko) | 2021-09-15 | 2022-09-06 | 아키텍처 확장을 통한 신경망의 유효 정밀도 향상 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117980919A true CN117980919A (zh) | 2024-05-03 |
Family
ID=85603130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280062444.0A Pending CN117980919A (zh) | 2021-09-15 | 2022-09-06 | 用于通过架构延伸提高神经网络的有效精度的方法及装置 |
Country Status (3)
Country | Link |
---|---|
KR (1) | KR102687479B1 (zh) |
CN (1) | CN117980919A (zh) |
WO (1) | WO2023043108A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018193354A1 (en) | 2017-04-17 | 2018-10-25 | Cerebras Systems Inc. | Wavelet representation for accelerated deep learning |
KR20200100302A (ko) * | 2019-02-18 | 2020-08-26 | 삼성전자주식회사 | 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들 |
US11604987B2 (en) | 2019-03-22 | 2023-03-14 | Qualcomm Incorporated | Analytic and empirical correction of biased error introduced by approximation methods |
US12099930B2 (en) | 2019-12-12 | 2024-09-24 | Texas Instruments Incorporated | Parametric power-of-2 clipping activations for quantization for convolutional neural networks |
KR102572437B1 (ko) * | 2020-02-26 | 2023-08-29 | 동아대학교 산학협력단 | 유전알고리즘에 기초한 최적화된 학습 모델 결정 장치 및 방법 |
-
2021
- 2021-09-15 KR KR1020210123351A patent/KR102687479B1/ko active IP Right Grant
-
2022
- 2022-09-06 WO PCT/KR2022/013335 patent/WO2023043108A1/ko active Application Filing
- 2022-09-06 CN CN202280062444.0A patent/CN117980919A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023043108A1 (ko) | 2023-03-23 |
KR102687479B1 (ko) | 2024-07-22 |
KR20230040126A (ko) | 2023-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Martínez et al. | A methodology for applying k-nearest neighbor to time series forecasting | |
KR102415508B1 (ko) | 컨볼루션 신경망 처리 방법 및 장치 | |
US20180181858A1 (en) | Convolutional neural network (cnn) processing method and apparatus | |
CN111950718A (zh) | 利用存算一体芯片实现递进式cnn运算的方法 | |
KR20210043295A (ko) | 뉴럴 네트워크의 데이터를 양자화하는 방법 및 장치 | |
JP2017049907A (ja) | ニューラルネットワーク、その学習方法、及びコンピュータプログラム | |
WO2023030230A1 (en) | Using a machine learning module to determine a group of execution paths of program code and a computational resource allocation to use to execute the group of execution paths | |
Evermann et al. | XES tensorflow-Process prediction using the tensorflow deep-learning framework | |
Gajowniczek et al. | Generalized entropy cost function in neural networks | |
CN111587441B (zh) | 使用以比特值为条件的回归神经网络生成输出示例 | |
Kružík et al. | Active set expansion strategies in MPRGP algorithm | |
US20220092387A1 (en) | Systems and Methods for Producing an Architecture of a Pyramid Layer | |
CN117980919A (zh) | 用于通过架构延伸提高神经网络的有效精度的方法及装置 | |
CN111860838A (zh) | 一种神经网络的全连接层计算方法和装置 | |
CN114830137A (zh) | 用于生成预测模型的方法和系统 | |
CN113887721B (zh) | 一种语音识别任务中的训练后量化压缩方法及系统 | |
KR20200072308A (ko) | 뉴럴 네트워크에서 컨볼루션 연산을 수행하는 방법 및 장치 | |
Park et al. | Videomamba: Spatio-temporal selective state space model | |
KR102384588B1 (ko) | 신경망 연산방법 및 신경망 가중치 생성방법 | |
KR102441442B1 (ko) | 그래프 컨볼루션 네트워크 학습 방법 및 장치 | |
CN117836778A (zh) | 用于确定用于神经网络的量化的基于饱和比率的量化范围的方法及设备 | |
CN113779498A (zh) | 离散傅里叶矩阵重构方法、装置、设备和存储介质 | |
CN107291439A (zh) | 一种目标增量数据构建方法及装置 | |
Torres-Barrán et al. | Nesterov acceleration for the smo algorithm | |
JP6994572B2 (ja) | データ処理システムおよびデータ処理方法 |
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 |