1.一种系统,包括:
存储器,所述存储器存储计算机可执行组件;以及
处理器,所述处理器执行存储在所述存储器中的所述计算机可执行组件,其中所述计算机可执行组件包括:
初始化组件,所述初始化组件选择输出限制的值,其中所述输出限制包括神经网络的激活函数的输出的范围,所述输出限制的值经由训练来确定;以及
激活函数组件,所述激活函数组件在给定所述输出限制的值作为所述激活函数的参数的情况下确定所述激活函数的输出。
2.如权利要求1所述的系统,其中:
所述初始化组件选择输出限制的初始值,所述计算机可执行组件还包括:
训练组件,所述训练组件在训练期间将所述输出限制的初始值修改为所述输出限制的第二值,所述输出限制的第二值被提供为所述激活函数的参数。
3.如权利要求1所述的系统,其中,所述激活函数的输出的范围在零与所述输出限制之间,包括零与所述输出限制;并且其中,所述激活函数的输出是基于所述激活函数的输出在零与所述输出限制之间的线性函数。
4.如权利要求2所述的系统,其中,所述训练组件采用比所述激活函数组件的精确度更大的精确度。
5.如权利要求4所述的系统,其中,所述训练组件采用具有比所述激活函数组件的精确度更大的精确度的分辨率参数,并且其中所述训练组件采用指示亚分辨率范围内的斜率的分辨率斜率参数。
6.如权利要求5所述的系统,其中,所述训练组件在训练期间朝向无穷大增加所述分辨率斜率参数的值。
7.如权利要求2所述的系统,其中,所述计算机可执行组件还包括:
裁剪组件,所述裁剪组件在利用所述训练组件进行训练期间执行裁剪,以减少由于量化而导致的精确度劣化。
8.如权利要求2所述的系统,其中,所述计算机可执行组件还包括:
反向传播组件,所述反向传播组件在利用所述训练组件进行训练期间执行反向传播。
9.如权利要求2所述的系统,其中,所述计算机可执行组件还包括:
激活函数选择组件,所述激活函数选择组件确定在全精确度的情况下使用修正线性单元作为所述激活函数,并且其中交叉熵损失随着所述输出限制的增加而收敛。
10.如权利要求2所述的系统,其中,所述计算机可执行组件还包括:
激活函数选择组件,所述激活函数选择组件确定随着所述输出限制增加,损失函数也随着量化而增加,并且确定使用除了修正线性单元之外的激活函数类型的激活函数。
11.一种计算机实现的方法,包括:
由能操作地耦合到处理器的系统来初始化输出限制的值,其中所述输出限制包括神经网络的激活函数的输出的范围,所述输出限制的值经由训练来确定;以及
由所述系统在给定所述输出限制的值作为所述激活函数的参数的情况下确定所述激活函数的输出。
12.如权利要求11所述的计算机实现的方法,还包括:
由所述系统在所述训练期间应用随机梯度下降法。
13.如权利要求11所述的计算机实现的方法,还包括:
由所述系统基于利用所述输出限制的初始值执行所述训练来确定所述输出限制的值。
14.如权利要求11所述的计算机实现的方法,还包括:
由所述系统在所述训练期间将所述输出限制正则化。
15.如权利要求11所述的计算机实现的方法,还包括:
由所述系统在所述训练期间进行裁剪,以减少由于量化而导致的准确度劣化。
16.如权利要求11所述的计算机实现的方法,还包括:
由系统在所述训练期间采用反向传播。
17.如权利要求11所述的计算机实现的方法,还包括:
由所述系统确定在全精确度的情况下使用修正线性单元作为所述激活函数,并且其中交叉熵损失随着所述输出限制增加而收敛。
18.如权利要求11所述的方法,还包括:
由所述系统确定随着所述输出限制增加,损失函数也随着量化而增加,并且确定使用除了修正线性单元之外的激活函数类型的激活函数。
19.一种计算机程序产品,所述计算机程序产品促进训练量化激活以用于高效地实现深度学习,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有体现于其中的程序指令,所述程序指令能由处理器执行以使所述处理器至少执行根据权利要求11至18中任一项所述的方法。
20.如权利要求19所述的计算机程序产品,其中,所述输出限制被表达为α,并且其中,所述激活函数利用包括以下各项的方程来表达:
和
21.如权利要求19所述的计算机程序产品,其中,所述输出限制的值大于所述输出限制的第二值,并且其中训练包括将所述输出限制设置为小于所述输出限制的值并且大于所述输出限制的第二值的多个连续值。