CN111868754A - 信息处理装置和信息处理方法 - Google Patents
信息处理装置和信息处理方法 Download PDFInfo
- Publication number
- CN111868754A CN111868754A CN201880091319.6A CN201880091319A CN111868754A CN 111868754 A CN111868754 A CN 111868754A CN 201880091319 A CN201880091319 A CN 201880091319A CN 111868754 A CN111868754 A CN 111868754A
- Authority
- CN
- China
- Prior art keywords
- information processing
- optimized
- optimization
- processing apparatus
- user
- 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
- 230000010365 information processing Effects 0.000 title claims abstract description 128
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000004590 computer program Methods 0.000 title description 10
- 238000005457 optimization Methods 0.000 claims abstract description 118
- 238000013528 artificial neural network Methods 0.000 claims abstract description 49
- 238000012545 processing Methods 0.000 claims abstract description 31
- 238000004364 calculation method Methods 0.000 claims description 51
- 238000010606 normalization Methods 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 2
- 238000013461 design Methods 0.000 abstract description 31
- 238000010586 diagram Methods 0.000 description 45
- 230000006870 function Effects 0.000 description 44
- 238000004891 communication Methods 0.000 description 23
- 238000011176 pooling Methods 0.000 description 14
- 230000000007 visual effect Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000012886 linear function Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 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 2
- 238000010276 construction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007935 neutral effect Effects 0.000 description 2
- 230000001151 other effect Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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/10—Interfaces, programming languages or software development kits, e.g. for simulating neural networks
- G06N3/105—Shells for specifying net layout
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- 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
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Neurology (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
[问题]为神经网络的硬件实现提供有用的设计帮助。[解决方案]提供了一种信息处理装置,该信息处理装置设置有控制单元,所述控制单元在为硬件处理优化所设计的神经网络的网络结构的至少一部分的情况下,控制提供关于优化结构的信息。此外,提供了一种信息处理方法,包括在为硬件处理优化所设计的神经网络的网络结构的至少一部分的情况下,使处理器控制提供关于优化结构的信息。
Description
技术领域
本公开涉及一种信息处理装置和一种信息处理方法。
背景技术
近年来,已经开发了使用神经网络的各种功能。此外,已经提出了各种方法来提高神经网络的开发效率。例如,非专利文献1公开了与可用于开发神经网络的软件库相关的信息。
引用列表
非专利文献
非专利文献1:谷歌搜索,“TensorFlow:Large-ScaleMachine Learning onHeterogeneous Distributed Systems”,2015年11月9日,[在线],[2016年1月12日搜索],互联网<http://download.tensorflow.org/paper/whitepaper2015.pdf>
发明内容
技术问题
同时,近年来,还提出了一种方法,其中,通过将神经网络作为硬件来实现,而不是将神经网络作为处理器上的软件来操作,从而以低成本实现高速度。然而,在非专利文献1中公开的软件库中,考虑到神经网络的硬件实现的设计支持可能是不够的。
在这方面,本公开提出了新颖且改进的信息处理装置和信息处理方法,其能够提供对神经网络的硬件实现有用的设计支持。
问题的解决方案
根据本公开,提供了一种信息处理装置,包括:控制单元,控制单元控制呈现与优化结构相关的信息,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
此外,根据本公开,提供了一种信息处理方法,包括:由处理器控制呈现与优化结构相关的信息的步骤,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
发明的有益效果
如上所述,根据本公开,可用提供对神经网络的硬件实现有用的设计支持。
注意,上述效果并不总是限制性的,除了或代替上述效果,可以获得本说明书中描述的任何效果或可以从本说明书理解的其他效果。
附图说明
图1是示出根据本公开的实施方式的信息处理系统的配置示例的框图;
图2是示出根据实施方式的信息处理终端的功能配置示例的框图;
图3是示出根据实施方式的信息处理服务器的功能配置示例的框图;
图4是示出根据实施方式的表单的显示示例的示图;
图5是用于说明根据实施方式的网络结构的状态转变的示图;
图6是用于说明根据实施方式的为了消除划分的目的的优化的示图;
图7是用于说明根据实施方式的为了应用移位计算的目的的优化的示图;
图8是用于说明根据实施方式的为了应用移位计算的目的的优化的示图;
图9是用于说明根据实施方式的为了应用移位计算的目的的优化的示图;
图10是用于说明根据实施方式的为了应用移位计算的目的的优化的示图;
图11是用于说明根据实施方式的为了应用移位计算的目的的优化的示图;
图12是用于说明根据实施方式的为了应用移位计算的目的的优化的示图;
图13是用于说明根据实施方式的块结构的通用化的示图;
图14是用于说明根据实施方式的在相同类型的层之间使用的组件的通用化的示图;
图15是用于说明根据实施方式的为了提高与积和计算以及批量归一化相关的计算处理的效率的目的的优化的示图;
图16是用于说明根据实施方式的偏置优化的示图;
图17是用于说明根据实施方式的为了消除需要查找表参照的非线性函数的目的的优化的示图;
图18是用于说明根据实施方式的为了消除填充的目的的优化的示图;
图19是用于说明根据实施方式的为了将跨步的宽度抑制为2或更小的目的的优化的示图;
图20是用于说明根据实施方式的为了消除池化区域的重叠的目的的优化的示图;
图21是用于说明根据实施方式的为了构造层中使用的内核的目的的优化的示图;
图22是用于说明根据实施方式的用于执行代码描述的编程工具中的优化结构的信息呈现的示图;
图23是示出根据实施方式的与优化结构相关的信息的呈现的示例的示图;
图24是用于说明根据实施方式的基于用户选择的硬件的特征和用户设置的优化设定的信息呈现的示图;
图25是示出根据本公开的实施方式的信息处理服务器的硬件配置示例的示图。
具体实施方式
在下文中,将参考附图详细描述本公开的优选实施方式。注意,在本说明书和附图中,具有基本上相同功能配置的组件由相同的附图标记表示,并且为了避免冗余,将省略其描述。
注意,将按以下顺序给出描述。
1.实施方式
1.1概述
1.2系统配置示例
1.3信息处理终端10的功能配置
1.4信息处理服务器20的功能配置
1.5与优化结构相关的信息的呈现
1.6与优化结构相关的信息的呈现的示例
2.硬件配置示例
3.总结
<1.实施方式>
<<1.1概述>>
首先,将描述根据本公开的实施方式的概述。如上所述,近年来,已经提出了各种方法来提高神经网络的开发效率。另一方面,还提出了一种方法,其中,通过将神经网络实现为硬件来实现高速处理。
然而,在非专利文献1等中公开的软件库中,通常,考虑神经网络的硬件实现的设计支持是不够的。因此,当神经网络被实现为硬件时,硬件设计者需要为硬件调整神经网络,通过软件设计者基于输入数据重复设计、学习和评估而构建该神经网络。
在上述工作中,硬件设计者基于输入数据和由软件设计者构建的神经网络重复神经网络的硬件的调整、学习和评估,从而实现神经网络的硬件实现。
然而,硬件设计者的调整、学习和评估工作需要大量时间。特别地,由于学习需要大约一天到一个月的时间,因此需要一种方法来提高硬件设计者的上述工作的效率。
鉴于上述观点而构思根据本公开的实施方式的技术思想,并且可以提供对神经网络的硬件实现有用的设计支持。根据本公开的实施方式的用于实现信息处理方法的信息处理装置的一个特征在于,该信息处理装置包括控制单元,控制单元控制呈现与优化结构相关的信息,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
即,根据本公开的实施方式的信息处理装置允许向用户呈现与网络结构的优化相关的各种建议,其中,软件设计者可以预先设计专用于硬件的神经网络。
按照根据本公开的实施方式的信息处理装置的前述功能,软件设计者可以考虑硬件实现来容易地设计神经网络,使得可以消除硬件设计者的双重努力,并且显著提高将神经网络实现为硬件的工作效率。
在下文中,将详细描述根据本公开的实施方式的信息处理装置的功能特征以及由这些特征产生的效果。
<<1.2系统配置示例>>
接下来,将描述根据本公开的实施方式的信息处理系统的配置示例。图1是示出根据本实施方式的信息处理系统的配置示例的框图。参考图1,根据本实施方式的信息处理系统包括信息处理终端10和信息处理服务器20。此外,信息处理终端10和信息处理服务器20经由网络30连接,使得可以彼此通信。
(信息处理终端10)
根据本实施方式的信息处理终端10是用于编程神经网络的客户端终端。根据本实施方式的信息处理终端10在信息处理服务器20的控制下显示用于编程的表单,并且向信息处理服务器20发送与用户对表单的输入操作相关的信息。根据本实施方式的信息处理终端10可以是例如个人计算机(PC)等。如下所述,根据本实施方式的信息处理终端10也可以用作具有与信息处理服务器20相同功能的信息处理装置。
(信息处理服务器20)
根据本实施方式的信息处理服务器20是实现根据本实施方式的信息处理方法的信息处理装置。根据本实施方式的信息处理服务器20控制呈现与优化结构相关的信息,该优化结构是已经为硬件处理优化了神经网络时的优化结构。例如,根据本实施方式的信息处理服务器20基于从信息处理终端10输入的网络结构的至少一部分,向信息处理终端10发送与优化结构相关的信息。
(网络30)
网络30具有连接信息处理终端10和信息处理服务器20的功能。网络30可以包括诸如互联网、电话网络和卫星通信网络的公共网络、包括以太网(注册商标)、广域网(WAN)的各种局域网(LAN)等。此外,网络30可以包括专用网络,例如,互联网协议虚拟专用网络(IP-VPN)。此外,网络30可以包括无线通信网络,例如,Wi-Fi(注册商标)和蓝牙(注册商标)。
到目前为止,已经描述了根据本公开的实施方式的信息处理系统的配置示例。注意,上面参考图1描述的配置仅仅是示例,并且根据本实施方式的信息处理系统的配置不限于这样的示例。可以根据规范和操作灵活地修改根据本实施方式的信息处理系统的配置。
<<1.3信息处理终端10的功能配置>>
接下来,将描述根据本公开的实施方式的信息处理终端10的功能配置示例。图2是示出根据本实施方式的信息处理终端10的功能配置示例的框图。参考图2,根据本实施方式的信息处理终端10包括显示单元110、输入单元120、控制单元130和服务器通信单元140。
(显示单元110)
根据本实施方式的显示单元110具有输出诸如图像和文本的视觉信息的功能。例如,根据本实施方式的显示单元110在信息处理服务器20的控制下显示与中立网络的视觉编程相关的表单。
因此,根据本实施方式的显示单元110包括呈现视觉信息的显示器。显示器的示例包括液晶显示器(LCD)、有机发光二极管(OLED)显示器、触摸屏显示器等。此外,根据本实施方式的显示单元110可以使用投影功能输出视觉信息。
(输入单元120)
根据本实施方式的输入单元120具有检测用户的输入操作的功能。根据本实施方式的输入单元120检测例如表单上的组件或单元的排列操作。因此,根据本实施方式的输入单元120包括键盘、触摸屏、鼠标、各种按钮等。
(控制单元130)
根据本实施方式的控制单元130具有控制信息处理终端10中包括的每个组件的功能。控制单元130控制例如每个组件的激活和去激活。此外,控制单元130将信息处理服务器20生成的控制信号输入到显示单元110。此外,根据本实施方式的控制单元130可以具有与下面将描述的信息处理服务器20的表单控制单元210相同的功能。
(服务器通信单元140)
根据本实施方式的服务器通信单元140具有经由网络30执行与信息处理服务器20的信息通信的功能。具体地,服务器通信单元140从信息处理服务器20接收与表单控制相关的控制信号。此外,服务器通信单元140将与由输入单元120检测到的用户输入操作相关的信息发送到信息处理服务器20。
到目前为止,已经描述了根据本公开的实施方式的信息处理终端10的功能配置示例。注意,以上参考图2描述的配置仅仅是示例,并且根据本实施方式的信息处理终端10的功能配置不限于这样的示例。例如,如上所述,根据本实施方式的控制单元130可以具有与信息处理服务器20的表单控制单元210相同的功能。可以根据规范和操作灵活地修改根据本实施方式的信息处理终端10的功能配置。
<<1.4信息处理服务器20的功能配置>>
接下来,将描述根据本公开的实施方式的信息处理服务器20的功能配置。图3是示出根据本实施方式的信息处理服务器20的功能配置示例的框图。参考图3,根据本实施方式的信息处理服务器20包括表单控制单元210、生成单元220和终端通信单元230。
(表单控制单元210)
根据本实施方式的表单控制单元210作为控制单元操作,该控制单元控制呈现与优化结构相关的信息,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
与根据本实施方式的优化结构相关的信息可以包括例如与当前网络结构和优化后的网络结构之间的差异相关的信息。当已经优化了当前网络结构的一些层时,表单控制单元210可以向用户建议替换后的层信息等。
此外,此时,根据本实施方式的表单控制单元210可以通过允许向用户呈现需要执行优化的原因以及与差异相关的信息,来改善用户关于考虑神经网络的硬件实现的设计的知识。
此外,与根据本实施方式的优化结构相关的信息也可以是优化网络结构本身。在这种情况下,表单控制单元210能够向用户呈现网络结构,在该网络结构中,已经为硬件优化了输入网络结构。此时,实际优化处理也可以由生成单元220执行。
到目前为止,已经描述了根据本实施方式的表单控制单元210的功能的概述。下面将分别描述根据本实施方式的表单控制单元210的功能的细节。
(生成单元220)
根据本实施方式的生成单元220具有基于以由表单控制单元210控制的表单输入的信息生成与中立网络相关的源代码的功能。此外,根据本实施方式的生成单元220具有为硬件处理优化输入网络结构的功能。
(终端通信单元230)
根据本实施方式的终端通信单元230经由网络30执行与信息处理终端10的信息通信。具体地,终端通信单元230将与表单控制单元210生成的优化结构相关的信息和与表单控制相关的控制信号发送到信息处理终端10。此外,终端通信单元230从信息处理终端10接收与用户在表单上的输入操作等相关的信息。
到目前为止,已经描述了根据本公开的实施方式的信息处理服务器20的功能配置示例。注意,上面参考图3描述的配置仅仅是示例,并且根据本实施方式的信息处理服务器20的功能配置不限于这样的示例。例如,上述配置可以通过分布到多个装置来实现。此外,如上所述,表单控制单元210的功能也可以实现为信息处理终端10的控制单元130的功能。可以根据规范和操作灵活地修改根据本实施方式的信息处理服务器20的功能配置。
<<1.5与优化结构相关的信息的呈现>>
接下来,将详细描述根据本实施方式的与优化结构相关的信息呈现的控制。在下文中,将描述作为根据本公开的控制单元的示例的表单控制单元210允许在用于设计神经网络的编程工具上呈现与优化结构相关的信息的情况,作为示例。另一方面,根据本实施方式的控制单元也可以用作例如批处理程序的一部分,该批处理程序相对于输入网络结构输出与优化结构相关的信息。
此外,在以下描述中,作为主要示例,将描述在用于实现神经网络的视觉编程的工具中,根据本实施方式的表单控制单元210控制用户执行视觉编程的表单的情况。
此处,视觉编程是指在软件开发中通过使用视觉对象生成计算机程序的方法,而不用以文本形式编写程序代码。例如,在视觉编程中,可以通过在图形用户界面(GUI)上操作对象来生成计算机程序。
在下文中,将描述根据本实施方式的由表单控制单元210控制的表单的显示示例。图4是示出根据本实施方式的表单的显示示例的示图。如图4所示,根据本实施方式的表单F1包括例如窗格P1到P3。
窗格P1可以是显示用于配置网络的层列表的区域。如图4所示,对于每个分类,可以在窗格P1中显示各种层。此外,通过点击分类名称,可以控制开发每个分类的层列表。此外,在窗格P1中显示所选层的属性信息LP。通过编辑属性信息LP,用户可以设置例如每个层的输出大小、内核形状、有无偏差等。
窗格P2是用于排列层和构建神经网络的区域。用户可以通过移动、添加或删除每一层来可视地构建神经网络。在图4所示的示例的情况下,在窗格P2中可视地显示由层L1至L13组成的网络结构。例如,用户可以通过拖放在窗格P1中显示的组件来向窗格P2添加任何组件。
窗格P3是显示与正在构建的神经网络相关的各种类型信息的区域。在窗格P3中,例如,可以显示指示网络结构的整体图像的概观OV、与神经网络相关的统计信息ST等。
注意,根据本实施方式的统计信息ST包括例如诸如输出大小、用于参数的存储量和各种计算量的信息。此外,根据本实施方式的表单控制单元210可以具有比较由用户在每一层的包括在统计信息ST中的上述组件中选择的组件的值并呈现比较值的功能。此时,根据本实施方式的表单控制单元210可以将例如每一层的组件的值和指示组件的值的大小的指示符与每一层相关联,并且呈现相关联的结果。
在图4所示的示例的情况下,基于用户对输出大小的选择,表单控制单元210允许显示每一层的输出大小的值和对应于该值的指示符。按照根据本实施方式的表单控制单元210的上述功能,用户可以直观地感知每一层的输出大小和计算量,并且在网络结构改变等时使用所感知的信息,作为参照。
到目前为止,已经描述了根据本实施方式的表单的显示示例。随后,将描述根据本实施方式的网络结构的状态转变。图5是用于说明根据本实施方式的网络结构的状态转变的示图。
图5的左侧示出了当打开与本实施方式的优化结构相关的信息的呈现功能时的状态转变,而图5的右侧示出了当关闭呈现功能时的状态转变。
在图5中,“NN”表示神经网络,并且“NN*”表示处于未针对硬件优化网络并且呈现与优化结构相关的信息(显示建议、警告等)的状态的神经网络。
当启用与优化结构相关的信息的呈现功能时,用户首先添加层,以开始网络结构的构建。此后,用户重复执行层的添加、改变、删除等。此时,当生成单元220检测到未针对硬件优化网络的状态“NN*”时,通过前述操作,在表单控制单元210的控制下,动态呈现与优化结构相关的信息。
此后,用户重复执行层的添加、改变、删除等,从而通过在“NN”和“NN*”之间移动来完成网络构建。
另一方面,当禁用与优化结构相关的信息的呈现功能时,即使没有针对硬件优化网络,“NN”也不会转变为“NN*”,即,在没有呈现与优化结构相关的信息的情况下,网络构建完成。
到目前为止,已经描述了根据本实施方式的网络结构的状态转变。注意,即使在执行编程期间,与优化结构相关的信息的呈现功能也可以在任何时间切换为启用或禁用。例如,通过在编程期间禁用前述呈现功能,并且例如通过在编程已经完成的时间点按下检查按钮来启用呈现功能,用户可以享受与优化结构相关的信息。
接下来,将描述根据本实施方式的硬件处理的优化的详细示例。根据本实施方式的表单控制单元210可以控制呈现与硬件处理的各种类型的优化相关的信息。
例如,根据本实施方式的优化可以包括为了消除划分的目的而改变网络结构。图6是用于说明根据实施方式的为了消除划分的目的的优化的示图。图6的左侧示出了由用户设计的网络结构,而图6的右侧示出了为硬件优化后的网络结构。
当两个网络结构相互比较时,在设计时包含在网络配置中的“平均池化(AveragePooling)”改变为优化后的“总池化(SumPooling)”。因此,根据本实施方式的表单控制单元210可以向用户建议使用不使用划分的“总池化”,而不是使用具有高计算成本的划分的“平均池化”。
此外,根据本实施方式的优化可以包括为了应用移位计算的目的而改变网络结构。图7至图12是用于说明为了应用根据本实施方式的移位计算的目的的优化的示图。图7至图12的左侧示出了由用户设计的网络结构,且图7至图12的右侧示出了为硬件优化后的网络结构。
例如,在图7所示的示例的情况下,在优化之后,在设计时网络配置中的“平均池化”的输出大小“64,6,6”变为“64,8,8”。这是因为当“平均池化”的输出大小不是2的幂时,不可能执行移位计算。因此,根据本实施方式的表单控制单元210可以向用户建议“平均池化”的输出大小应该被设置为2的幂,使得可以以比划分的情况更低的计算成本来执行移位计算。例如,可以通过调整前一个“卷积”层的填充来改变输出大小。
此外,在图8所示的示例的情况下,在优化之后,在设计时网络配置中的“RDiv标量(RDivScalar)”的值“6”变为“8”。这是因为用于划分的值是应用移位计算的2的幂。因此,根据本实施方式的表单控制单元210可以向用户建议划分的值应该被设置为2的幂,使得可以以比划分的情况更低的计算成本来执行移位计算。
此外,在图9所示的示例的情况下,在优化之后,在设计时网络配置中的“RDiv标量”的值“255”变为“256”。在许多情况下,在图像归一化中,通常使用“0到255”的分布,但是不可能执行移位计算,因为“255”不是2的幂。因此,根据本实施方式的表单控制单元210可以向用户建议通过使用“256”而不是“255”来降低计算成本,其中,“256”是2的幂。注意,实验上已知,即使“0到256”的分布用于图像归一化,对学习几乎没有影响。
此外,在图10所示的示例的情况下,在优化之后,在设计时网络配置中的“卷积_2(Convolution_2)”的输出大小“70,32,32”变为“62,32,32”。执行该操作,用于将内存对齐调整为2的幂,并且由于扭曲(warp)为32,因此输出大小也优化为32的倍数。以这种方式,根据本实施方式的表单控制单元210可以向用户建议改变“卷积”等的输出大小,使得内存对齐变成2的幂。
此外,在图11所示的示例的情况下,在优化之后,在设计时网络配置中的每个“卷积”变为“Pow2卷积(Pow2Convolution)”。“Pow2卷积”是一种“卷积”,其通过使用以2的幂量化的权重、偏差等来执行内积计算。利用这种层,可以仅通过移位计算和加法来执行内积计算,从而可以显著降低计算成本。以这种方式,根据本实施方式的表单控制单元210可以向用户建议使用量化层,例如,“Pow2卷积”,而不是正常的积和计算层。注意,量化方法不限于上述示例,也可以使用二进制或定点。
此外,在图12所示的示例的情况下,在优化之后,设计时的网络配置中的每个“批量归一化(BatchNormalization)”变为“Pow2批量归一化(Pow2BatchNormalization)”。“Pow2批量归一化”是“批量归一化”,其通过使用由2的幂表示的值来执行归一化计算。利用这种层,通常由浮点执行的处理可以通过移位计算来实现,从而可以有效地降低计算成本。因此,根据本实施方式的表单控制单元210可以向用户建议使用“Pow2批量归一化”,而不是正常的“批量归一化”。
到目前为止,已经描述了根据本实施方式的用于应用移位计算的目的的优化。接下来,将描述根据本实施方式的块结构的通用化。图13是用于说明根据本实施方式的块结构的通用化的示图。图13的左侧示出了由用户设计的网络结构,且图13的右侧示出了为硬件优化之后的网络结构。
参考图13,在设计时的网络配置包括两层配置,这两层配置以“卷积”、“批量归一化”、“ReLU”和“最大池化(MaxPooling)”的顺序连接。在本实施方式中,包括以相同顺序如上所述的相同层的配置被定义为块。即,在图13所示的示例中,在设计时的网络配置包括两个块B1和B2。
另一方面,块B1和B2具有与“卷积”相关的不同内核形状,因此具有不同的输入输出大小。在这种情况下,即使层配置相同,也不可能通用化和使用相同的计算电路。
因此,根据本实施方式的表单控制单元210可以向用户建议“卷积”的内核形状应该被通用化为“3,3”,并且输入输出大小是相同的,使得块B1和B2可以通用化并使用公共计算电路。通过这样的优化,可以通过使计算电路通用化来节省硬件电路的面积。
此外,除了块之外,根据本实施方式的优化还可以包括用于使网络结构中包括的相同类型的多个层之间的参数通用化的变化。上述变化包括例如在相同类型的层之间使滤波器大小和输出大小等通用化的变化。
图14是用于说明根据本实施方式在相同类型的层之间使用的组件的通用化的示图。图14的左侧示出了由用户设计的网络结构,且图14的右侧示出了为硬件优化之后的网络结构。
参考图14,可以看出,在设计时的网络配置包括三个“卷积”层,但是输出大小和内核形状没有通用化。在这种情况下,根据本实施方式的表单控制单元210可以向用户建议三个“卷积”层应该使用公共参数。在图14所示的示例的情况下,表单控制单元210可以建议输出大小和滤波器大小(内核形状)应该在三个“卷积”层中通用。
此时,为了实现上述通用化,在优化之后的网络结构中删除了“最大池化”。以这种方式,在使用根据本实施方式的公共组件的优化中,可以建议层的删除、插入、替换、顺序改变等。此外,上述块可以被定义为包括至少一层。在这种情况下,图14所示的三个“卷积”层可以均称为块。
按照根据本实施方式的前述优化,用于块和层的参数等通用化,从而可以减少网络使用的参数的数量,并有效地降低内存负载的功耗。
接下来,将描述根据本实施方式的为了提高与积和计算以及批量归一化相关的计算处理的效率的目的的优化。根据本实施方式的优化可以包括为了提高上述计算处理的效率的目的而改变网络结构。图15是用于说明根据本实施方式的为了提高与积和计算以及批量归一化相关的计算处理的效率的目的的优化的示图。图15的左侧示出了由用户设计的网络结构,且图15的右侧示出了为硬件优之后的网络结构。
参考图15,在设计时的网络配置中,“最大池化”设置在“卷积_2”和“批量归一化_2”之间。然而,在学习之后,“批量归一化”层的参数可以合并到积和计算层的参数中。
因此,根据本实施方式的表单控制单元210可以建议“批量归一化”层应该紧接在积和计算层之后。在图15所示的示例的情况下,表单控制单元210可以向用户建议切换设置在积和计算层和“批量归一化”层之间的“卷积_2”和“最大池化”的顺序。
此外,当存在这样的层配置时,其中,偏置是连续的,使得“批量归一化”层紧接在积和计算层之后,根据本实施方式的表单控制单元210也可以建议仅将偏置施加到设置在后续阶段的层。
图16是用于说明根据本实施方式的偏置优化的示图。图16的左侧示出了在图15所示的设计时网络结构中的“卷积_2”的属性信息LP1b,而图16的右侧示出了在图15所示的优化之后网络结构中的“卷积_2”的属性信息LP1a。
当属性信息LP1b和属性信息LP1a相互比较时,可以看出,在优化之后,属性信息LP1b中的偏置设定变为“假”。以这种方式,根据本实施方式的表单控制单元210建议仅向设置在后续阶段中的层施加偏置,从而可以防止计算成本不必要地增加。
此外,根据本实施方式的优化还可以包括为了消除需要查找表参照的非线性函数的目的而改变网络结构。图17是用于说明根据本实施方式的为了消除需要查找表参照的非线性函数的目的的优化的示图。图17的左侧示出了由用户设计的网络结构,且图17的右侧示出了为硬件优化之后的网络结构。
当两个网络结构相互比较时,在优化之后,在设计时包含在网络配置中的“双曲正切(Tanh)”和“S形(Sigmoid)”变为“ReLU”。以这种方式,根据本实施方式的表单控制单元210可以向用户建议使用诸如“ReLU”的线性函数,而不是需要查找表参照的非线性函数。通过这种控制,可以有效地减少不必要的内存消耗和功耗。
此外,根据本实施方式的优化还可以包括为了消除填充的目的而改变网络结构。图18是用于说明根据本实施方式的为了消除填充的目的的优化的示图。图18的左侧示出了在设计时包含在网络结构中的“卷积”的属性信息LP2b,而图18的右侧示出了在优化之后包含在网络结构中的“卷积”的属性信息LP2a。
当属性信息LP2b和属性信息LP2a相互比较时,设定已经改变,使得在优化之后在网络中不执行填充。以这种方式,根据本实施方式的表单控制单元210向用户建议,不应该执行对于硬件来说是低效处理的填充,从而可以提高处理效率。
此外,根据本实施方式的优化还可以包括为了将跨步的宽度抑制为2或更小的目的而改变网络结构。图19是用于说明根据本实施方式的为了将跨步的宽度抑制为2或更小的目的的优化的示图。图19的左侧示出了在设计时包括在网络结构中的“卷积”的属性信息LP3b,而图19的右侧示出了在优化之后包括在网络结构中的“卷积”的属性信息LP3a。
当属性信息LP3b和属性信息LP3a相互比较时,在优化之后,网络结构中的跨步变为“2,2”。以这种方式,根据本实施方式的表单控制单元210向用户建议,由于跨步而导致的处理负荷不应过度增加,从而可以提高处理效率。
此外,根据本实施方式的优化还可以包括为了消除池化区域的重叠的目的而改变网络结构。图20是用于说明根据本实施方式的为了消除池化区域的重叠的目的的优化的示图。图20的左侧示出了在设计时包括在网络结构中的“最大池化”的属性信息LP4b,而图20的右侧示出了优化之后包括在网络结构中的“最大池化”的属性信息LP4a。
当属性信息LP4b和属性信息LP4a相互比较时,可以看出,在优化之后的网络结构中,内核形状和跨步的值被通用化为“2,2”,并且池化区域变为不重叠。在跨步时,需要保留一次读取的数据或再次读取数据。因此,通过优化池化区域,以使其不重叠,可以减少对应于要保留的数据的内存或对数据的访问次数。
此外,根据本实施方式的优化还可以包括为了构造层中使用的内核的目的而改变网络结构。图21是用于说明根据本实施方式的为了构造层中使用的内核的目的的优化的示图。图21的上部示出了设计时的内核的示例,且图21的下部示出了在优化之后的内核的示例。
当在硬件中执行卷积计算时,如图所示,执行在深度方向上将内核K部分读取到SRAM中的处理。注意,在图21中,Kh表示内核的高度,且Kw表示内核的宽度。此外,N表示要输入的特征图在深度方向上的长度,而M表示要输出的特征图。
在这种情况下,如图21的上部所示,内核K1至K5的结构没有通用化,导致内核读入SRAM的次数增加。另一方面,如图21的下部所示,当内核K1至K4的结构通用化时,可以减少内核读入SRAM的次数。
到目前为止,已经用详细的示例描述了根据本实施方式的优化。在上面,已经描述了根据本实施方式的表单控制单元210提供实现神经网络的视觉编程的表单的情况。另一方面,根据本实施方式的编程工具不限于这些示例。根据本实施方式的表单控制单元210可以控制呈现与执行正常代码描述的编程工具中的优化结构相关的信息。
图22是用于说明根据本实施方式的用于执行正常代码描述的编程工具中的优化结构的信息呈现的示图。图22的上部示出了设计时的代码示例,而图22的下部示出了优化之后的代码示例。
当两个代码相互比较时,优化之后的代码改变,从而在图像归一化中执行使用“256”的移位计算。此外,可以看出,“卷积”和“仿射”改变为量化层。此外,可以看出,“平均池化”变为不需要划分的“总池化”。
以这种方式,按照根据本实施方式的信息处理服务器20,可以提供对神经网络的硬件实现有用的设计支持,而不管编程的类型。
<<1.6与优化结构相关的信息的呈现的示例>>
接下来,将描述根据本实施方式的与优化结构相关的信息的呈现的示例。如上所述,根据本实施方式的表单控制单元210可以通过向用户建议与各种类型的优化相关的信息来帮助用户设计为硬件优化的神经网络。
此时,例如,表单控制单元210可以基于用户的设定来控制是否呈现信息。图23是示出根据本实施方式的与优化结构相关的信息的呈现的示例的示图。
例如,图23示出了当在窗格P2中执行右击时显示的窗口W1。窗口W1可以显示用于执行或控制包括功能F1和F2的多个功能的列表。
功能F1可以是用户设置呈现与优化结构相关的信息的必要性的功能。在图23所示的示例的情况下,对应于功能F1的“HW仿射性”具有指示启用该功能的复选标记。
在这种情况下,当生成单元220在用户执行编程期间检测到能够优化生成单元的网络结构时,表单控制单元210允许例如显示如图23所示的消息Msg,从而向用户呈现与优化结构相关的信息。注意,如上所述的信息呈现可以通过语音来实现。此外,例如,可以控制仅在图标I上点击鼠标时显示消息Msg。
注意,当用户批准如上所述的信息呈现时,表单控制单元210允许向用户呈现由生成单元220优化的网络。即,表单控制单元210可以在生成的网络配置中反映优化的网络结构。注意,例如,可以通过按下按钮或使用语音来执行用户的批准。
此外,可以在没有信息呈现的情况下自动执行如上所述的优化网络结构的反映。可以通过用户的设定来执行如上所述的自动反射。
此外,功能F2可以是用于立即执行与优化结构相关的信息的呈现的功能,而不管功能F1对信息呈现的必要性的设置。例如,即使当功能F1将动态信息呈现设置为禁用时,用户也可以通过在任何时间(例如,在编程完成之后)点击对应于功能F2的“冗余检查”,来享受与优化结构相关的信息的呈现。
此外,根据本实施方式的表单控制单元210还可以控制表单,使得不执行不适于硬件的编程。在图23所示的示例的情况下,表单控制单元210控制需要划分的“平均池化”,以便用户首先不在窗格P1中设置。按照根据本实施方式的表单控制单元210的上述功能,还可以控制不适合用户不执行的硬件的设计。
此外,根据本实施方式的表单控制单元210还使得能够基于用户选择的硬件的特征和用户设置的优化设定,向用户呈现与优化后的优化结构相关的信息。
图24是用于说明根据本实施方式的基于用户选择的硬件的特征和用户设置的优化设定的信息呈现的示图。
图24示出了包括图23所示的窗口W1的菜单的分层结构的示例。用户可以通过在对应于功能F1的“HW仿射性”上点击鼠标来显示窗口W2。
窗口W2可以是用于选择用于呈现与优化结构相关的信息的硬件类型的窗口。在图24所示的示例的情况下,窗口W2显示硬件类型的列表,例如,“通用”、“DSP”、“FPGA”和“ASIC”。用户从上述硬件类型中选择要进行硬件实现的硬件类型,从而享受专门为该硬件类型设置的优化结构的信息。
此外,在窗口W2中,为用户显示菜单“定制”,以选择用于接收信息呈现的优化方法。当用户点击菜单“定制”上的鼠标时,可以显示用于选择要启用的优化方法的窗口W3。注意,图24中所示的“特征1”至“特征n”可以是对应于参考图6至图21描述的各种优化方法的项目。
以这种方式,按照根据本实施方式的信息处理服务器20,可以基于用户选择的硬件的特征和用户设置的优化设定来实现更有效的信息呈现。
<2.硬件配置示例>
接下来,将描述根据本公开的实施方式的信息处理服务器20的硬件配置示例。图25是示出根据本公开的实施方式的信息处理服务器20的硬件配置示例的示图。参考图25,信息处理服务器20包括例如处理器871、ROM 872、RAM 873、主机总线874、桥接器875、外部总线876、接口877、输入装置878、输出装置879、存储器880、驱动器881、连接端口882和通信装置883。注意,附图中示出的硬件配置是示例,并且可以省略一些组件。此外,硬件配置还可以包括除了附图中示出的组件之外的组件。
(处理器871)
处理器871用作例如计算处理装置或控制装置,并且基于记录在ROM872、RAM 873、存储器880或可移动记录介质901上的各种计算机程序来控制每个组件的全部或一些操作。
(ROM 872、RAM 873)
ROM 872是在其中存储由处理器871读取的计算机程序、用于计算的数据等的装置。在RAM 873中临时或永久地存储例如由处理器871读取的计算机程序、当执行计算机程序时适当改变的各种参数等。
(主机总线874、桥接器875、外部总线876、接口877)
处理器871、ROM 872和RAM 873经由例如能够执行高速数据传输的主机总线874相互连接。另一方面,例如,主机总线874经由桥接器875连接到具有较低的数据传输速率的外部总线876。此外,外部总线876通过接口877连接到各种组件。
(输入装置878)
作为输入装置878,例如,使用鼠标、键盘、触摸屏、按钮、开关、杠杆等。此外,作为输入装置878,可以使用能够通过使用红外线或其他无线电波来发送控制信号的遥控器(以下称为remocon)。此外,输入装置878包括语音输入装置,例如,麦克风。
(输出装置879)
输出装置879例如是能够视觉地或听觉地通知用户所获取的信息的装置,例如,诸如阴极射线管(CRT)显示器、LCD或有机EL显示器的显示装置、诸如扬声器或耳机的音频输出装置、打印机、蜂窝电话或传真机。此外,根据本公开的输出装置879包括能够输出触觉刺激的各种振动装置。
(存储器880)
存储器880是用于存储各种数据的装置。作为存储器880,例如,使用诸如硬盘驱动器(HDD)的磁存储装置、半导体存储装置、光存储装置、磁光存储装置等。
(驱动器881)
驱动器881例如是读取记录在诸如磁盘、光盘、磁光盘或半导体内存的可移动记录介质901上的信息或者在可移动记录介质901上写入信息的装置。
(可移动记录介质901)
可移动记录介质901例如是DVD介质、蓝光(注册商标)介质、HD-DVD介质、各种半导体存储介质等。当然,可移动记录介质901可以是例如配备有非接触型IC芯片的IC卡、电子设备等。
(连接端口882)
连接端口882例如是用于连接外部连接装置902的端口,例如,通用串行总线(USB)端口、IEEE 1394端口、小型计算机系统接口(SCSI)、RS-232C端口或光学音频终端。
(外部连接装置902)
外部连接装置902例如是打印机、便携式音乐播放器、数码相机、数码摄像机、IC记录器等。
(通信装置883)
通信装置883是用于连接到网络的通信装置,并且例如是用于有线或无线LAN、蓝牙(注册商标)或无线USB(WUSB)的通信卡、用于光通信的路由器、用于非对称数字用户线路(ADSL)的路由器、各种通信调制解调器等。
<3.总结>
如上所述,根据本公开的实施方式的信息处理服务器20包括表单控制单元210,该表单控制单元210控制呈现与优化结构相关的信息,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。通过这种配置,可以提供对神经网络的硬件实现有用的设计支持。
到目前为止,尽管已经参考附图详细描述了本公开的优选实施方式,但是本公开的技术范围不限于这些示例。显然,本公开技术领域的普通技术人员可以在权利要求中描述的技术思想的范畴内得出各种修改示例或校正示例,并且应当理解,修改示例和校正示例自然包括在本公开的技术范围内。
此外,本说明书中描述的效果仅仅是说明性的或示例性的,而不是限制性的。即,除了上述效果之外或替代上述效果,根据本公开的技术可以从本说明书的描述中获得本领域技术人员清楚的其他效果。
此外,还可以生成计算机程序,用于使计算机中包括的诸如CPU、ROM和RAM的硬件显示与信息处理服务器20的配置相同的功能,并且还可以提供在其中记录计算机程序的计算机可读记录介质。
注意,以下配置也属于本公开的技术范围。
(1)一种信息处理装置,包括:
控制单元,控制单元控制呈现与优化结构相关的信息,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
(2)根据(1)所述的信息处理装置,其中,
与优化结构相关的信息包括与当前网络结构和优化后的网络结构之间的差异相关的信息,并且
控制单元允许向用户呈现与差异相关的信息。
(3)根据(1)或(2)所述的信息处理装置,其中,
与优化结构相关的信息包括需要执行优化的原因,并且
控制单元允许向用户呈现需要执行优化的原因。
(4)根据(1)至(3)中任一项所述的信息处理装置,其中,
与优化结构相关的信息包括优化的网络结构,并且
控制单元允许向用户呈现优化的网络结构。
(5)根据(1)至(4)中任一项所述的信息处理装置,其中,控制单元允许在用于设计神经网络的编程工具上呈现与优化结构相关的信息。
(6)根据(5)所述的信息处理装置,其中,所述控制单元允许在用户编程期间向用户动态呈现与优化结构相关的信息。
(7)根据(6)所述的信息处理装置,其中,当在用户编程期间检测到可能优化的网络结构时,控制单元允许向用户动态呈现与优化结构相关的信息。
(8)根据(5)至(7)中任一项所述的信息处理装置,其中,基于已经确认与优化结构相关的信息的用户的批准,控制单元允许向用户呈现优化的网络结构。
(9)根据(5)至(8)中任一项所述的信息处理装置,其中,控制单元允许向用户呈现与优化结构相关的信息,该优化结构是已经基于用户选择的硬件的特征执行了优化时的优化结构。
(10)根据(5)至(9)中任一项所述的信息处理装置,其中,控制单元允许向用户呈现与优化结构相关的信息,该优化结构是当已经基于用户设置的优化设定执行了优化时的优化结构。
(11)根据(5)至(10)中任一项所述的信息处理装置,其中,控制单元控制编程工具,使得不执行不适于硬件处理的编程。
(12)根据(1)至(11)中任一项所述的信息处理装置,其中,优化包括为了消除划分的目的而改变网络结构。
(13)根据(1)至(12)中任一项所述的信息处理装置,其中,所述优化包括为了应用移位计算的目的而改变网络结构。
(14)根据(1)至(13)中任一项所述的信息处理装置,其中,
优化包括为了使网络结构中包括的多个块之间的输入大小和输出大小通用化的目的而改变网络结构,并且
每个块包括至少一层。
(15)根据(14)所述的信息处理装置,其中,优化包括为了使执行与块相关的处理的计算电路通用化的目的而改变网络结构。
(16)根据(1)至(15)中任一项所述的信息处理装置,其中,优化包括为了使网络结构中包括的相同类型的多个层之间的参数通用化的目的而改变网络结构。
(17)根据(1)至(16)中任一项所述的信息处理装置,其中,优化包括为了使网络结构中包括的相同类型的多个层之间的滤波器或输出大小通用化的目的而改变网络结构。
(18)根据(1)至(17)中任一项所述的信息处理装置,其中,优化包括为了提高与积和计算以及批量归一化相关的计算处理的效率的目的而改变网络结构。
(19)根据(1)至(18)中任一项所述的信息处理装置,其中,优化包括为了消除需要查找表参照的非线性函数的目的而改变网络结构。
(20)一种信息处理方法,包括:
由处理器控制呈现与优化结构相关的信息的步骤,该优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
附图标记列表
10 信息处理终端
110 显示单元
120 输入单元
130 控制单元
140 服务器通信单元
20 信息处理服务器
210 表单控制单元
220 生成单元
230 终端通信单元。
Claims (20)
1.一种信息处理装置,包括:
控制单元,所述控制单元控制呈现与优化结构相关的信息,所述优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
2.根据权利要求1所述的信息处理装置,其中,
与所述优化结构相关的所述信息包括与当前网络结构和优化后的网络结构之间的差异相关的信息,并且
所述控制单元允许向用户呈现与所述差异相关的信息。
3.根据权利要求1所述的信息处理装置,其中,
与所述优化结构相关的所述信息包括需要执行优化的原因,并且
所述控制单元允许向用户呈现需要执行优化的所述原因。
4.根据权利要求1所述的信息处理装置,其中,
与所述优化结构相关的所述信息包括优化的网络结构,并且
所述控制单元允许向用户呈现所述优化的网络结构。
5.根据权利要求1所述的信息处理装置,其中,所述控制单元允许在用于设计神经网络的编程工具上呈现与所述优化结构相关的所述信息。
6.根据权利要求5所述的信息处理装置,其中,所述控制单元允许在用户编程期间向所述用户动态呈现与所述优化结构相关的所述信息。
7.根据权利要求6所述的信息处理装置,其中,当在所述用户编程期间检测到能够优化的网络结构时,所述控制单元允许向所述用户动态呈现与所述优化结构相关的所述信息。
8.根据权利要求5所述的信息处理装置,其中,基于已经确认与所述优化结构相关的所述信息的用户的批准,所述控制单元允许向所述用户呈现优化的网络结构。
9.根据权利要求5所述的信息处理装置,其中,所述控制单元允许向用户呈现与所述优化结构相关的所述信息,所述优化结构是已经基于所述用户选择的硬件的特征执行了优化时的优化结构。
10.根据权利要求5所述的信息处理装置,其中,所述控制单元允许向用户呈现与所述优化结构相关的所述信息,所述优化结构是已经基于所述用户设置的优化设定执行了优化时的优化结构。
11.根据权利要求5所述的信息处理装置,其中,所述控制单元控制所述编程工具,使得不执行不适于所述硬件处理的编程。
12.根据权利要求1所述的信息处理装置,其中,所述优化包括为了消除划分的目的而改变网络结构。
13.根据权利要求1所述的信息处理装置,其中,所述优化包括为了应用移位计算的目的而改变网络结构。
14.根据权利要求1所述的信息处理装置,其中,
所述优化包括为了使网络结构中包括的多个块之间的输入大小和输出大小通用化的目的而改变所述网络结构,并且
每个块包括至少一层。
15.根据权利要求14所述的信息处理装置,其中,所述优化包括为了使执行与所述块相关的处理的计算电路通用化的目的而改变网络结构。
16.根据权利要求1所述的信息处理装置,其中,所述优化包括为了使网络结构中包括的相同类型的多个层之间的参数通用化的目的而改变所述网络结构。
17.根据权利要求1所述的信息处理装置,其中,所述优化包括为了使网络结构中包括的相同类型的多个层之间的滤波器或输出大小通用化的目的而改变所述网络结构。
18.根据权利要求1所述的信息处理装置,其中,所述优化包括为了提高与积和计算以及批量归一化相关的计算处理的效率的目的而改变网络结构。
19.根据权利要求1所述的信息处理装置,其中,所述优化包括为了消除需要查找表参照的非线性函数的目的而改变网络结构。
20.一种信息处理方法,包括:
由处理器控制呈现与优化结构相关的信息的步骤,所述优化结构是已经为硬件处理优化所设计的神经网络的网络结构的至少一部分时的优化结构。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018-056468 | 2018-03-23 | ||
JP2018056468 | 2018-03-23 | ||
PCT/JP2018/048288 WO2019181137A1 (ja) | 2018-03-23 | 2018-12-27 | 情報処理装置および情報処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111868754A true CN111868754A (zh) | 2020-10-30 |
Family
ID=67987616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880091319.6A Pending CN111868754A (zh) | 2018-03-23 | 2018-12-27 | 信息处理装置和信息处理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11768979B2 (zh) |
EP (1) | EP3770775A4 (zh) |
JP (1) | JPWO2019181137A1 (zh) |
CN (1) | CN111868754A (zh) |
WO (1) | WO2019181137A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020080665A1 (en) | 2018-10-19 | 2020-04-23 | Samsung Electronics Co., Ltd. | Methods and apparatuses for performing artificial intelligence encoding and artificial intelligence decoding on image |
WO2020080765A1 (en) | 2018-10-19 | 2020-04-23 | Samsung Electronics Co., Ltd. | Apparatuses and methods for performing artificial intelligence encoding and artificial intelligence decoding on image |
US11720997B2 (en) * | 2018-10-19 | 2023-08-08 | Samsung Electronics Co.. Ltd. | Artificial intelligence (AI) encoding device and operating method thereof and AI decoding device and operating method thereof |
WO2020080873A1 (en) | 2018-10-19 | 2020-04-23 | Samsung Electronics Co., Ltd. | Method and apparatus for streaming data |
WO2021079763A1 (ja) * | 2019-10-21 | 2021-04-29 | ソニー株式会社 | 情報処理方法、情報処理装置、及びプログラム |
KR20210056179A (ko) * | 2019-11-08 | 2021-05-18 | 삼성전자주식회사 | Ai 부호화 장치 및 그 동작방법, 및 ai 복호화 장치 및 그 동작방법 |
CN111311327A (zh) * | 2020-02-19 | 2020-06-19 | 平安科技(深圳)有限公司 | 基于人工智能的服务评价方法、装置、设备及存储介质 |
EP4113388A1 (en) * | 2021-06-30 | 2023-01-04 | Samsung Electronics Co., Ltd. | Method of optimizing neural network model and neural network model processing system performing the same |
WO2023135790A1 (ja) * | 2022-01-17 | 2023-07-20 | 楽天モバイル株式会社 | ネットワーク管理装置、ネットワーク管理方法およびネットワーク管理システム |
Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0461902A2 (en) * | 1990-06-14 | 1991-12-18 | Canon Kabushiki Kaisha | Neural networks |
JP2003317073A (ja) * | 2002-04-24 | 2003-11-07 | Fuji Xerox Co Ltd | ニューラルネットワーク処理装置 |
US20070094168A1 (en) * | 2005-07-29 | 2007-04-26 | The Florida International University Board Of Trustees | Artificial neural network design and evaluation tool |
CN101122973A (zh) * | 2007-09-13 | 2008-02-13 | 北京航空航天大学 | 一种基于现场可编程门阵列的蚁群算法仿生硬件 |
CN101588392A (zh) * | 2008-05-19 | 2009-11-25 | 索尼株式会社 | 信息处理设备、信息处理方法以及程序 |
JP2013088924A (ja) * | 2011-10-14 | 2013-05-13 | Toshiba Digital Media Engineering Corp | 画像処理方法及び装置 |
US20130304682A1 (en) * | 2012-05-09 | 2013-11-14 | International Business Machines Corporation | Optimally Configuring an Information Landscape |
CN105847968A (zh) * | 2016-03-21 | 2016-08-10 | 京东方科技集团股份有限公司 | 基于深度学习的解像方法和系统 |
US20160350649A1 (en) * | 2015-05-26 | 2016-12-01 | Qiang Zhang | Method and apparatus of learning neural network via hierarchical ensemble learning |
CN106203619A (zh) * | 2015-05-29 | 2016-12-07 | 三星电子株式会社 | 数据优化的神经网络遍历 |
US20170116498A1 (en) * | 2013-12-04 | 2017-04-27 | J Tech Solutions, Inc. | Computer device and method executed by the computer device |
CN106796668A (zh) * | 2016-03-16 | 2017-05-31 | 香港应用科技研究院有限公司 | 用于人工神经网络中比特深度减少的方法和系统 |
CN106934426A (zh) * | 2015-12-29 | 2017-07-07 | 三星电子株式会社 | 基于图像信号处理的神经网络的方法和设备 |
CN107016175A (zh) * | 2017-03-23 | 2017-08-04 | 中国科学院计算技术研究所 | 适用神经网络处理器的自动化设计方法、装置及优化方法 |
CN107103113A (zh) * | 2017-03-23 | 2017-08-29 | 中国科学院计算技术研究所 | 面向神经网络处理器的自动化设计方法、装置及优化方法 |
CN107273784A (zh) * | 2016-04-01 | 2017-10-20 | 富士施乐株式会社 | 图像模式识别装置和方法 |
WO2017187798A1 (ja) * | 2016-04-28 | 2017-11-02 | ソニー株式会社 | 情報処理装置、及び情報処理方法 |
WO2017216976A1 (en) * | 2016-06-17 | 2017-12-21 | Nec Corporation | Information processing method and device for neural network |
US20180018555A1 (en) * | 2016-07-15 | 2018-01-18 | Alexander Sheung Lai Wong | System and method for building artificial neural network architectures |
CN107657316A (zh) * | 2016-08-12 | 2018-02-02 | 北京深鉴科技有限公司 | 通用处理器与神经网络处理器的协同系统设计 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2862337B2 (ja) * | 1990-06-19 | 1999-03-03 | キヤノン株式会社 | ニューラルネットワークの構築方法 |
CN104519509A (zh) * | 2013-09-29 | 2015-04-15 | 索尼公司 | 无线通信系统中的无线网络监控装置、方法和装置 |
-
2018
- 2018-12-27 CN CN201880091319.6A patent/CN111868754A/zh active Pending
- 2018-12-27 WO PCT/JP2018/048288 patent/WO2019181137A1/ja active Application Filing
- 2018-12-27 US US16/981,289 patent/US11768979B2/en active Active
- 2018-12-27 EP EP18910335.1A patent/EP3770775A4/en active Pending
- 2018-12-27 JP JP2020507362A patent/JPWO2019181137A1/ja active Pending
Patent Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0461902A2 (en) * | 1990-06-14 | 1991-12-18 | Canon Kabushiki Kaisha | Neural networks |
JP2003317073A (ja) * | 2002-04-24 | 2003-11-07 | Fuji Xerox Co Ltd | ニューラルネットワーク処理装置 |
US20070094168A1 (en) * | 2005-07-29 | 2007-04-26 | The Florida International University Board Of Trustees | Artificial neural network design and evaluation tool |
CN101122973A (zh) * | 2007-09-13 | 2008-02-13 | 北京航空航天大学 | 一种基于现场可编程门阵列的蚁群算法仿生硬件 |
CN101588392A (zh) * | 2008-05-19 | 2009-11-25 | 索尼株式会社 | 信息处理设备、信息处理方法以及程序 |
JP2013088924A (ja) * | 2011-10-14 | 2013-05-13 | Toshiba Digital Media Engineering Corp | 画像処理方法及び装置 |
US20130304682A1 (en) * | 2012-05-09 | 2013-11-14 | International Business Machines Corporation | Optimally Configuring an Information Landscape |
US20170116498A1 (en) * | 2013-12-04 | 2017-04-27 | J Tech Solutions, Inc. | Computer device and method executed by the computer device |
US20160350649A1 (en) * | 2015-05-26 | 2016-12-01 | Qiang Zhang | Method and apparatus of learning neural network via hierarchical ensemble learning |
CN106203619A (zh) * | 2015-05-29 | 2016-12-07 | 三星电子株式会社 | 数据优化的神经网络遍历 |
CN106934426A (zh) * | 2015-12-29 | 2017-07-07 | 三星电子株式会社 | 基于图像信号处理的神经网络的方法和设备 |
CN106796668A (zh) * | 2016-03-16 | 2017-05-31 | 香港应用科技研究院有限公司 | 用于人工神经网络中比特深度减少的方法和系统 |
CN105847968A (zh) * | 2016-03-21 | 2016-08-10 | 京东方科技集团股份有限公司 | 基于深度学习的解像方法和系统 |
CN107273784A (zh) * | 2016-04-01 | 2017-10-20 | 富士施乐株式会社 | 图像模式识别装置和方法 |
WO2017187798A1 (ja) * | 2016-04-28 | 2017-11-02 | ソニー株式会社 | 情報処理装置、及び情報処理方法 |
WO2017216976A1 (en) * | 2016-06-17 | 2017-12-21 | Nec Corporation | Information processing method and device for neural network |
US20180018555A1 (en) * | 2016-07-15 | 2018-01-18 | Alexander Sheung Lai Wong | System and method for building artificial neural network architectures |
CN107657316A (zh) * | 2016-08-12 | 2018-02-02 | 北京深鉴科技有限公司 | 通用处理器与神经网络处理器的协同系统设计 |
CN107016175A (zh) * | 2017-03-23 | 2017-08-04 | 中国科学院计算技术研究所 | 适用神经网络处理器的自动化设计方法、装置及优化方法 |
CN107103113A (zh) * | 2017-03-23 | 2017-08-29 | 中国科学院计算技术研究所 | 面向神经网络处理器的自动化设计方法、装置及优化方法 |
Non-Patent Citations (3)
Title |
---|
NAVEEN SUDA: "Throughput-optimized OpenCL-based FPGA accelerator for large-scale convolutional neural networks,Naveen Suda", FPGA’16, pages 16 - 25 * |
夏红霞;王惠营;胡磊;: "基于粗糙集的神经网络结构优化方法", 计算机与数字工程, no. 05 * |
郭伟;: "基于互信息的RBF神经网络结构优化设计", 计算机科学, no. 06 * |
Also Published As
Publication number | Publication date |
---|---|
US11768979B2 (en) | 2023-09-26 |
JPWO2019181137A1 (ja) | 2021-03-25 |
US20210042453A1 (en) | 2021-02-11 |
EP3770775A1 (en) | 2021-01-27 |
EP3770775A4 (en) | 2021-06-02 |
WO2019181137A1 (ja) | 2019-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111868754A (zh) | 信息处理装置和信息处理方法 | |
US9395959B2 (en) | Integrated workflow visualization and editing | |
US7019757B2 (en) | Changing the alpha levels of an application window to indicate a status of a computing task | |
KR102131646B1 (ko) | 디스플레이장치 및 그 제어방법 | |
JP4812337B2 (ja) | フォームタイプを使用してフォームを生成する方法および装置 | |
US9857955B2 (en) | Dynamic, optimized placement of computer-based windows | |
KR20190039564A (ko) | 동적 기능 열 맞춤화 | |
US20130055058A1 (en) | Animation for Recalculating Formulas, Sparklines and Conditional Formatting in an Electronic Document | |
CN102567010A (zh) | 用于个性化内容布局的系统和方法 | |
US10073604B2 (en) | UI-driven model extensibility in multi-tier applications | |
CN100437478C (zh) | 交互式无线应用程序系统和方法 | |
CN110413276A (zh) | 参数编辑方法及装置、电子设备、存储介质 | |
EP3230895A1 (en) | Presentation of content from within spreadsheet application | |
CN108139895A (zh) | 字体字型预览 | |
CN114239524A (zh) | 问卷生成方法、装置、计算机设备及存储介质 | |
CN112817582B (zh) | 代码处理方法、装置、计算机设备和存储介质 | |
US8769169B2 (en) | Assistive buffer usage techniques | |
CN113536755A (zh) | 用于生成海报的方法、装置、电子设备、存储介质及产品 | |
JP7279705B2 (ja) | 情報処理方法、情報処理装置、およびプログラム | |
WO2017079353A1 (en) | Extensibility of compound data objects | |
US10628179B2 (en) | Universal graphical user interface objects | |
JP2017102872A (ja) | 開発装置、開発システム、およびプログラム | |
JP7258234B2 (ja) | ソフトキーボード・アプリケーションを介したタスク管理 | |
KR20230052459A (ko) | 아바타 콘텐츠 생성 방법 및 시스템 | |
CN111191795A (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 |