首页 / 专利库 / 动物学 / / 以自适应学习率学习神经网络的方法及装置

以自适应学习率学习神经网络的方法及装置

阅读:315发布:2020-10-28

专利汇可以提供以自适应学习率学习神经网络的方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 涉及以自适应学习率学习神经网络的方法及装置、利用其测试神经网络的方法及装置。所述学习方法包括:(a)学习装置在预设了作为用于调整学习率变更比例的常数的第一伽 马 的状态下,(i)在所述 迭代 累积次数在第一特定值以下期间,执行利用 训练数据 中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的步骤;(b)所述学习装置在将k从2增大到(n-1)的过程中,(b1)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行反复所述神经网络的所述学习的第k学习过程等过程的步骤。本发明能够最小化学习神经网络所需的时间。,下面是以自适应学习率学习神经网络的方法及装置专利的具体信息内容。

1.一种学习方法,用于每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以学习神经网络,其特征在于,包括:
a:学习装置在预设了作为用于调整学习率变更比例的常数的第一伽的状态下,i:在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,ii:参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的步骤;
b:所述学习装置在将k从2增大到n-1的过程中,b1:在所述迭代累积次数超过第k-1特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,b2)i:参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第k+1伽马,ii:利用所述第k+1伽马将第k学习率变更为第k+1学习率,b3:所述迭代累积次数超过第k特定值且在第k+1特定值以下期间,执行利用所述训练数据中的一部分以第k+1学习率反复所述神经网络的所述学习的第k+1学习过程的步骤。
2.根据权利要求1所述的学习方法,其特征在于:
在所述b步骤,
所述学习装置参照第k损失梯度将所述第k伽马变更为第k+1伽马,参照所述神经网络的i:所述第k损失及ii:第k-1损失算出所述第k损失梯度,通过在所述迭代累积次数超过第k-2特定值且在第k-1特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第k-1学习过程获得所述第k-1损失。
3.根据权利要求2所述的学习方法,其特征在于:
所述学习装置在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第k+1伽马。
4.根据权利要求2所述的学习方法,其特征在于:
所述学习装置在所述第k损失梯度小于预设的最小损失梯度的情况下,将所述第k+1伽马确定为所述第k伽马。
5.根据权利要求2所述的学习方法,其特征在于:
所述学习装置将所述第k损失的和相对于所述第k-1损失的和的比确定为所述第k损失梯度。
6.根据权利要求1所述的学习方法,其特征在于:
在所述b步骤,
所述学习装置将对所述第k学习率与所述第k+1伽马进行乘法运算算出的结果确定为所述第k+1学习率。
7.根据权利要求1所述的学习方法,其特征在于:
所述训练数据中的所述一部分分别为批数据,
将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,
将所述迭代累积次数超过所述第k特定值且在第k+1特定值以下期间被使用的所述批数据的数确定为与所述第k+1学习过程期间的迭代次数相同。
8.根据权利要求7所述的学习方法,其特征在于:
所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数与所述迭代累积次数超过所述第k特定值且在所述k+1特定值以下期间被使用的批数据的数相同。
9.根据权利要求1所述的学习方法,其特征在于:
所述神经网络包括i:对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层、ii:对合并所述特征图上的对应于感兴趣区域的区域算出的至少一个特征向量适用至少一个全连接运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层及iii:算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层
所述学习装置利用参照所述输出层的至少一个算出结果和与之对应的基础事实GT算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
10.根据权利要求9所述的学习方法,其特征在于:
i:所述训练数据中的所述一部分分别为批数据,ii:将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,iii:将所述迭代累积次数超过所述第k特定值且在第k+1特定值以下期间被使用的所述批数据的数确定为与所述第k+1学习过程期间的迭代次数相同的情况下,所述学习装置利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
11.一种测试方法,用于每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以测试神经网络,其特征在于,包括:
a:学习装置经过I:在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,i:在所述迭代累积次数满足第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,ii:参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程;II:所述学习装置在将k从2增大到n-1的过程中,i:在所述迭代累积次数超过第k-1特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,ii)ii-1:参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第k+1伽马,ii-2:利用所述第k+1伽马将第k学习率变更为第k+1学习率,iii:在所述迭代累积次数超过第k特定值且在第k+1特定值以下期间,利用所述训练数据中的一部分以第k+1学习率反复所述神经网络的所述学习的第k+1学习过程,获得了所述学习装置的参数的状态下,利用所述学习装置的参数的测试装置向所述神经网络输入测试数据的步骤;以及
b:所述测试装置使所述神经网络输出利用根据第一学习率至第k+1学习率学习的参数对测试数据进行运算得到的结果的步骤。
12.根据权利要求11所述的测试方法,其特征在于:
在所述II过程中,
所述学习装置参照第k损失梯度将所述第k伽马变更为第k+1伽马,参照所述神经网络的i:所述第k损失及ii:第k-1损失算出所述第k损失梯度,通过在所述迭代累积次数超过第k-2特定值且在第k-1特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第k-1学习过程获得所述第k-1损失。
13.根据权利要求12所述的测试方法,其特征在于:
所述学习装置在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第k+1伽马。
14.根据权利要求11所述的测试方法,其特征在于:
所述神经网络包括i:对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层、ii:对合并所述特征图上的对应于感兴趣区域的区域算出的至少一个特征向量适用至少一个全连接运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层及iii:算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层,
利用参照所述输出层的至少一个算出结果和与之对应的基础事实GT算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置可参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
15.根据权利要求14所述的测试方法,其特征在于:
i:所述训练数据中的所述一部分分别为批数据,ii:将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,iii:将所述迭代累积次数超过所述第k特定值且在第k+1特定值以下期间被使用的所述批数据的数确定为与所述第k+1学习过程期间的迭代次数相同的情况下,所述学习装置利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
16.一种学习装置,用于每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以学习神经网络,其特征在于,包括:
通信部,其获取训练数据;以及
处理器,其执行I:在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,i:在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,ii:参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程;II:在将k从
2增大到n-1的过程中,II-1:在所述迭代累积次数超过第k-1特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,II-2)i:参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第k+1伽马,ii:利用所述第k+1伽马将第k学习率变更为第k+1学习率,II-3:在所述迭代累积次数超过第k特定值且在第k+1特定值以下期间,执行利用所述训练数据中的一部分以第k+1学习率反复所述神经网络的所述学习的第k+1学习过程。
17.根据权利要求16所述的学习装置,其特征在于:
在所述II过程中,
所述处理器参照第k损失梯度将所述第k伽马变更为第k+1伽马,参照所述神经网络的i:所述第k损失及ii:第k-1损失算出所述第k损失梯度,通过在所述迭代累积次数超过第k-
2特定值且在第k-1特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第k-1学习过程获得所述第k-1损失。
18.根据权利要求17所述的学习装置,其特征在于:
所述处理器在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第k+1伽马。
19.根据权利要求17所述的学习装置,其特征在于:
所述处理器在所述第k损失梯度小于预设的最小损失梯度的情况下,将所述第k+1伽马确定为所述第k伽马。
20.根据权利要求17所述的学习装置,其特征在于:
所述处理器将所述第k损失的和相对于所述第k-1损失的和的比确定为所述第k损失梯度。
21.根据权利要求16所述的学习装置,其特征在于:
在所述II过程中,
所述处理器将对所述第k学习率与所述第k+1伽马进行乘法运算算出的结果确定为所述第k+1学习率。
22.根据权利要求16所述的学习装置,其特征在于:
所述训练数据中的所述一部分分别为批数据,
将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,
将所述迭代累积次数超过所述第k特定值且在第k+1特定值以下期间被使用的所述批数据的数确定为与所述第k+1学习过程期间的迭代次数相同。
23.根据权利要求22所述的学习装置,其特征在于:
所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数与所述迭代累积次数超过所述第k特定值且在所述k+1特定值以下期间被使用的批数据的数相同。
24.根据权利要求16所述的学习装置,其特征在于:
所述神经网络包括i:对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层、ii:对合并所述特征图上的对应于感兴趣区域的区域算出的至少一个特征向量适用至少一个全连接运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层及iii:算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层,
所述处理器利用参照所述输出层的至少一个算出结果和与之对应的基础事实GT算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述处理器参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
25.根据权利要求24所述的学习装置,其特征在于:
i:所述训练数据中的所述一部分分别为批数据,ii:将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,iii:将所述迭代累积次数超过所述第k特定值且在第k+1特定值以下期间被使用的所述批数据的数确定为与所述第k+1学习过程期间的迭代次数相同的情况下,所述处理器利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
26.一种测试装置,用于每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以测试神经网络,其特征在于,包括:
通信部,其获取训练数据;以及
处理器,其执行经过I:在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,i:在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,ii:参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程,II:在将k从2增大到n-1的过程中,i:在所述迭代累积次数超过第k-1特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,ii)ii-1:参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第k+1伽马,ii-2:利用所述第k+1伽马将第k学习率变更为第k+1学习率,iii:在所述迭代累积次数超过第k特定值且在第k+1特定值以下期间,执行利用所述训练数据中的一部分以第k+1学习率反复所述神经网络的所述学习的第k+1学习过程的过程,获得了所述学习装置的参数的状态下,利用所述学习装置的参数向所述神经网络输入测试数据的过程;以及使所述神经网络输出利用根据第一学习率至第k+1学习率学习的参数对测试数据进行运算得到的结果的过程。
27.根据权利要求26所述的测试装置,其特征在于:
在所述II过程中,
所述处理器参照第k损失梯度将所述第k伽马变更为第k+1伽马,参照所述神经网络的i:所述第k损失及ii:第k-1损失算出所述第k损失梯度,通过在所述迭代累积次数超过第k-
2特定值且在第k-1特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第k-1学习过程获得所述第k-1损失。
28.根据权利要求27所述的测试装置,其特征在于:
所述处理器在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第k+1伽马。
29.根据权利要求26所述的测试装置,其特征在于:
所述神经网络包括i:对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层、ii:对合并所述特征图上的对应于感兴趣区域的区域算出的至少一个特征向量适用至少一个全连接运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层及iii:算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层,
利用参照所述输出层的至少一个算出结果和与之对应的基础事实GT算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置可参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
30.根据权利要求29所述的测试装置,其特征在于:
i:所述训练数据中的所述一部分分别为批数据,ii:将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,iii:将所述迭代累积次数超过所述第k特定值且在第k+1特定值以下期间被使用的所述批数据的数确定为与所述第k+1学习过程期间的迭代次数相同的情况下,所述学习装置利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。

说明书全文

以自适应学习率学习神经网络的方法及装置

技术领域

[0001] 本发明涉及以自适应学习率学习神经网络的方法及装置、利用其测试神经网络的方法及装置。具体来讲,涉及具有以下特征的学习方法及装置、利用其的测试方法及装置,即,所述学习方法是在每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率学习神经网络(neural net work)的方法,其特征在于,包括:(a)学习装置在预设了作为用于调整学习率变更比例的常数的第一伽的状态下,(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的步骤;(b)所述学习装置在将k从2增大到(n-1)的过程中,(b1)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(b2)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(b3)所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程的步骤。

背景技术

[0002] 近来在研究利用机器学习识别物体等的方法。深度学习作为这种机器学习之一,是利用输入层输出层之间具有多个隐藏层的神经网络的机器学习,具有高识别性能。
[0003] 并且,这种利用深度学习的神经网络一般通过利用一个以上的损失的反向传播进行学习。
[0004] 但是,通过反向传播学习神经网络的情况下使学习率,即向一个以上的参数反映损失的比例越小,则越能够更精密地学习,但具有学习上耗费大量时间的问题。
[0005] 因此,以往通过执行预定次数的反复学习后将学习率减小预定量的方式学习神经网络。即,初始学习时采用大的学习率使得参数的变动幅度大,以使得能够快速学习,之后阶段性地减小学习率以缩小参数的变动幅度,以使得能够微调。
[0006] 参见图1a及图1b对这种现有的学习神经网络的方法进行说明。
[0007] 首先,设定关于神经网络的学习率的初始常数值。
[0008] 在此,初始常数值可包括(i)作为初始学习率的基本学习率(lr)、(ii)作为用于变更学习率的迭代(iteration)单位的步(step)及(iii)作为用于调整学习率变更比例的常数的伽马(gamma)。在此,迭代可以是利用一个批数据的学习的反复次数。
[0009] 此时,学习率可用如下数学式1表示。
[0010] [数学式1]
[0011]
[0012] 图1a例示性地示出设定基本学习率(lr)为0.01、步为100,000,伽马为0.1的状态下学习率变更的状态,图1b示出利用图1a的变更的学习率学习神经网络的状态下损失的变更状态。
[0013] 参见图1a,从初始到100,000迭代为止利用作为基本学习率的0.01的学习率,每迭代时通过参照各自损失的反向传播学习神经网络。并且,迭代累积次数达到100,000时,通过数学式1将学习率变更为0.001后学习至200,000迭代。并且,迭代累积次数达到200,000时通过数学式1将学习率变更为0.0001,利用变更至下一步,即,300,000迭代的学习率0.0001学习神经网络。用相同的方法在每步通过数学式1变更学习率,并且反复利用变更至下一步的学习率学习神经网络的过程。
[0014] 但是如图1b所示,可知这种现有的学习方法是和损失无关地将学习率减小至预定量,其难点在于需要通过多次实验找到作为确定学习率的常数的步或伽马的最佳值。
[0015] 并且,还存在即使找到了步或伽马的最佳值,当用于学习的学习数据发生变更或神经网络的网络结构变更的情况下,需要重新找到学习好的步或伽马的最佳值的问题。
[0016] 并且,还存在为了找到步或伽马的最佳值,需要经过多次执行错误,因此直到学习一个神经网络找到最佳的结果为止需要大量的时间与努的问题。

发明内容

[0017] 技术问题
[0018] 本发明的目的是解决如上所述的问题。
[0019] 本发明的另一目的是使得能够通过反映学习情况将学习率调整为最佳。
[0020] 并且,本发明的又一目的是参照学习情况中的损失调整学习率,使得能够通过一次学习过程将学习率调整为最佳。
[0021] 并且,本发明的又一目的是参照关于学习情况的损失梯度调整作为用于调整学习率变更比例的常数的伽马,通过调整的伽马调整学习率,使得能够通过一次学习过程调整为最佳的学习率。
[0022] 技术方案
[0023] 用于达成本发明的上述目的,实现本发明的特征性效果的技术方案如下。
[0024] 根据本发明的一个方面,提供一种每当学习的迭代(iteration)累积次数达到第一至第n特定值中的一个时调整学习率以学习神经网络(neural net work)的学习方法,其特征在于,包括:(a)学习装置在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的步骤;(b)所述学习装置在将k从2增大到(n-1)的过程中,(b1)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(b2)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(b3)所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,执行利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程的步骤。
[0025] 根据一个实施例提供的学习方法,其特征在于,在所述(b)步骤,所述学习装置参照第k损失梯度将所述第k伽马变更为第(k+1)伽马,参照所述神经网络的(i)所述第k损失及(ii)第(k-1)损失算出所述第k损失梯度,通过在所述迭代累积次数超过第(k-2)特定值且在第(k-1)特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第(k-1)学习过程获得所述第(k-1)损失。
[0026] 根据一个实施例提供的学习方法,其特征在于,所述学习装置在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第(k+1)伽马。
[0027] 根据一个实施例提供的学习方法,其特征在于,所述学习装置在所述第k损失梯度小于预设的最小损失梯度的情况下,将所述第(k+1)伽马确定为所述第k伽马。
[0028] 根据一个实施例提供的学习方法,其特征在于,所述学习装置将所述第k损失的和相对于所述第(k-1)损失的和的比确定为所述第k损失梯度。
[0029] 根据一个实施例提供的学习方法,其特征在于,在所述(b)步骤,所述学习装置将对所述第k学习率与所述第(k+1)伽马进行乘法运算算出的结果确定为所述第(k+1)学习率。
[0030] 根据一个实施例提供的学习方法,其特征在于,所述训练数据中的所述一部分分别为批数据,将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,将所述迭代累积次数超过所述第k特定值且在第(k+1)特定值以下期间被使用的所述批数据的数确定为与所述第(k+1)学习过程期间的迭代次数相同。
[0031] 根据一个实施例提供的学习方法,其特征在于,确定所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数与所述迭代累积次数超过所述第k特定值且在所述(k+1)特定值以下期间被使用的批数据的数相同。
[0032] 根据一个实施例提供的学习方法,其特征在于,所述神经网络包括(i)对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层(convolutional layer)、(ii)对合并所述特征图上的对应于感兴趣区域(Region Of Interest,ROI)的区域算出的至少一个特征向量适用至少一个全连接(Fully connected,FC)运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层(FC layer)及(iii)算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层(output layer),所述学习装置利用参照所述输出层的至少一个算出结果和与之对应的基础事实(Ground Truth,GT)算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
[0033] 根据一个实施例提供的学习方法,其特征在于,(i)所述训练数据中的所述一部分分别为批数据,(ii)将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,(iii)将所述迭代累积次数超过所述第k特定值且在第(k+1)特定值以下期间被使用的所述批数据的数确定为与所述第(k+1)学习过程期间的迭代次数相同的情况下,所述学习装置利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
[0034] 根据本发明的另一方面,提供一种每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以测试神经网络(neural network)的测试方法,其特征在于,包括:(a)学习装置经过(I)在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,(i)在所述迭代累积次数满足第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程;(II)所述学习装置在将k从2增大到(n-1)的过程中,(i)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(ii)(ii-1)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii-2)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(iii)在所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程,获得了所述学习装置的参数的状态下,利用所述学习装置的参数的测试装置向所述神经网络输入测试数据的步骤;以及(b)所述测试装置使所述神经网络输出利用根据第一学习率至第(k+1)学习率学习的参数对测试数据进行运算得到的结果的步骤。
[0035] 根据一个实施例提供的测试方法,其特征在于,在所述(II)过程中,所述学习装置参照第k损失梯度将所述第k伽马变更为第(k+1)伽马,参照所述神经网络的(i)所述第k损失及(ii)第(k-1)损失算出所述第k损失梯度,通过在所述迭代累积次数超过第(k-2)特定值且在第(k-1)特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第(k-1)学习过程获得所述第(k-1)损失。
[0036] 根据一个实施例提供的测试方法,其特征在于,所述学习装置在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第(k+1)伽马。
[0037] 根据一个实施例提供的测试方法,其特征在于,所述神经网络包括(i)对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层(convolutional layer)、(ii)对合并所述特征图上的对应于感兴趣区域(Region Of Interest,ROI)的区域算出的至少一个特征向量适用至少一个全连接(Fully connected,FC)运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层(FC layer)及(iii)算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层(output layer),利用参照所述输出层的至少一个算出结果和与之对应的基础事实(Ground Truth,GT)算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置可参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
[0038] 根据一个实施例提供的测试方法,其特征在于,(i)所述训练数据中的所述一部分分别为批数据,(ii)将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,(iii)将所述迭代累积次数超过所述第k特定值且在第(k+1)特定值以下期间被使用的所述批数据的数确定为与所述第(k+1)学习过程期间的迭代次数相同的情况下,所述学习装置利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
[0039] 根据本发明的又一方面,提供一种每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以学习神经网络(neural network)的学习装置,其特征在于,包括:通信部,其获取训练数据;以及处理器,其执行(I)在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程;(II)在将k从2增大到(n-1)的过程中,(II-1)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(II-2)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(II-3)在所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,执行利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程。
[0040] 根据一个实施例提供的学习装置,其特征在于,在所述(II)过程中,所述处理器参照第k损失梯度将所述第k伽马变更为第(k+1)伽马,参照所述神经网络的(i)所述第k损失及(ii)第(k-1)损失算出所述第k损失梯度,通过在所述迭代累积次数超过第(k-2)特定值且在第(k-1)特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第(k-1)学习过程获得所述第(k-1)损失。
[0041] 根据一个实施例提供的学习装置,其特征在于,所述处理器在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第(k+1)伽马。
[0042] 根据一个实施例提供的学习装置,其特征在于,所述处理器在所述第k损失梯度小于预设的最小损失梯度的情况下,将所述第(k+1)伽马确定为所述第k伽马。
[0043] 根据一个实施例提供的学习装置,其特征在于,所述处理器将所述第k损失的和相对于所述第(k-1)损失的和的比确定为所述第k损失梯度。
[0044] 根据一个实施例提供的学习装置,其特征在于,在所述(II)过程中,所述处理器将对所述第k学习率与所述第(k+1)伽马进行乘法运算算出的结果确定为所述第(k+1)学习率。
[0045] 根据一个实施例提供的学习装置,其特征在于,所述训练数据中的所述一部分分别为批数据,将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,将所述迭代累积次数超过所述第k特定值且在第(k+1)特定值以下期间被使用的所述批数据的数确定为与所述第(k+1)学习过程期间的迭代次数相同。
[0046] 根据一个实施例提供的学习装置,其特征在于,确定所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数与所述迭代累积次数超过所述第k特定值且在所述(k+1)特定值以下期间被使用的批数据的数相同。
[0047] 根据一个实施例提供的学习装置,其特征在于,所述神经网络包括(i)对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层(convolutional layer)、(ii)对合并所述特征图上的对应于感兴趣区域(Region Of Interest,ROI)的区域算出的至少一个特征向量适用至少一个全连接(Fully connected,FC)运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层(FC layer)及(iii)算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层(output layer),所述处理器利用参照所述输出层的至少一个算出结果和与之对应的基础事实(Ground Truth,GT)算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述处理器参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
[0048] 根据一个实施例提供的学习装置,其特征在于,(i)所述训练数据中的所述一部分分别为批数据,(ii)将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,(iii)将所述迭代累积次数超过所述第k特定值且在第(k+1)特定值以下期间被使用的所述批数据的数确定为与所述第(k+1)学习过程期间的迭代次数相同的情况下,所述处理器利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
[0049] 根据本发明的又一方面,提供一种每当学习的迭代累积次数达到第一至第n特定值中的一个时调整学习率以学习神经网络(neural network)的测试装置,其特征在于,包括:通信部,其获取训练数据;以及处理器,其执行经过(I)在预设了作为用于调整学习率变更比例的常数的第一伽马的状态下,(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程,(II)在将k从2增大到(n-1)的过程中,(i)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(ii)(ii-1)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii-2)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(iii)在所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,执行利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程的过程,获得了所述学习装置的参数的状态下,利用所述学习装置的参数向所述神经网络输入测试数据的过程;以及使所述神经网络输出利用根据第一学习率至第(k+1)学习率学习的参数对测试数据进行运算得到的结果的过程。
[0050] 根据一个实施例提供的测试装置,其特征在于,在所述(II)过程中,所述处理器参照第k损失梯度将所述第k伽马变更为第(k+1)伽马,参照所述神经网络的(i)所述第k损失及(ii)第(k-1)损失算出所述第k损失梯度,通过在所述迭代累积次数超过第(k-2)特定值且在第(k-1)特定值以下期间利用所述训练数据中的一部分反复所述神经网络的所述学习的第(k-1)学习过程获得所述第(k-1)损失。
[0051] 根据一个实施例提供的测试装置,其特征在于,所述处理器在所述第k损失梯度为预设的最小损失梯度以上的情况下,参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第(k+1)伽马。
[0052] 根据一个实施例提供的测试装置,其特征在于,所述神经网络包括(i)对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层(convolutional layer)、(ii)对合并所述特征图上的对应于感兴趣区域(Region Of Interest,ROI)的区域算出的至少一个特征向量适用至少一个全连接(Fully connected,FC)运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层(FC layer)及(iii)算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层(output layer),利用参照所述输出层的至少一个算出结果和与之对应的基础事实(Ground Truth,GT)算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置可参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
[0053] 根据一个实施例提供的测试装置,其特征在于,(i)所述训练数据中的所述一部分分别为批数据,(ii)将所述迭代累积次数在所述第一特定值以下期间被使用的所述批数据的数确定为与所述第一学习过程期间的迭代次数相同,(iii)将所述迭代累积次数超过所述第k特定值且在第(k+1)特定值以下期间被使用的所述批数据的数确定为与所述第(k+1)学习过程期间的迭代次数相同的情况下,所述学习装置利用参照对应于各所述批数据的所述输出层的至少一个的各算出结果及与之对应的所述GT算出的损失进行反向传播以学习所述全连接层及所述卷积层。
[0054] 技术效果
[0055] 本发明通过反映学习情况将学习率调整为最佳,从而能够最小化学习神经网络所需的时间。
[0056] 并且,本发明参照学习情况中的损失调整学习率,因此能够通过一次学习过程将学习率调整为最佳,从而能够最小化学习神经网络以找到最佳结果所需的时间及努力。
[0057] 并且,本发明参照关于学习情况的损失梯度调整作为用于调整学习率变更比例的常数的伽马,通过调整的伽马调整学习率,因此能够通过一次学习过程调整为最佳的学习率,从而能够最小化学习神经网络所需的时间及努力。附图说明
[0058] 为了用于说明本发明的实施例而所附的以下附图只是本发明的实施例中的一部分而已,本发明所属技术领域的一般技术人员(以下“普通技术人员”)在未经过创造性劳动的情况下可基于这些附图得到其他附图。
[0059] 图1a是简要示出根据现有的学习方法变更学习率的状态的示意图;
[0060] 图1b是简要示出利用根据现有的学习方法变更的学习率学习神经网络时损失变更的状态的示意图;
[0061] 图2是简要示出本发明的一个实施例的学习神经网络的学习装置的示意图;
[0062] 图3是简要示出本发明的一个实施例的学习神经网络的状态的示意图;
[0063] 图4a是简要示出本发明的一个实施例的学习率的变动状态的示意图;
[0064] 图4b是简要示出本发明的一个实施例的损失的变更状态的示意图;
[0065] 图5是简要示出本发明的一个实施例的学习能够执行客体检测的神经网络的状态的示意图;
[0066] 图6是简要示出本发明的一个实施例的测试神经网络的测试装置的示意图。

具体实施方式

[0067] 参见示出能够实施本发明的特定实施例的附图对本发明进行如下详细说明。通过详细说明这些实施例使得本领域普通技术人员足以实施本发明。本发明的多种实施例虽各不相同,但无需相互排斥。例如,在此记载的特定形状、结构及特性在一个实施例中不超出本发明的技术思想及范围的前提下可以通过其他实施例实现。另外,应理解在不超出本发明的技术思想及范围的前提下,公开的各实施例内的个别构成要素的位置或配置是可以变更实施的。因此,以下具体说明并非以限定为目的,确切来讲,本发明的范围为技术方案所记载的范围及与之等同的所有范围。在附图中类似的附图标记在各方面表示相同或类似的功能。
[0068] 本发明所述的各种图像可包括铺装或非铺装道路相关图像,该情况下可想到道路环境中可能出现的物体(例如,汽车、人、动物、植物、物品、建筑物、飞机或无人机之类的飞行器、其他障碍物),但并不局限于此,本发明所述的各种图像还可以是与道路无关的图像(例如,非铺装道路、胡同、空地、大海、湖泊、河流、山川、草地、沙漠、天空、室内相关的图像),该情况下,可想到非铺装道路、胡同、空地、大海、湖泊、河流、山川、草地、沙漠、天空、室内环境中可能出现的客体(例如,汽车、人、动物、植物、物品、建筑物、飞机或无人机之类的飞行器、其他障碍物),但并不局限于此。
[0069] 并且,在本发明的具体说明及权利要求中,“包括”这一术语及其变形并非将其他技术特征、附加物、构成要素或步骤除外。显而易见地,普通技术人员能够从本说明书获知本发明的其他目的、优点及特性中的一部分,并且一部分可从本发明的实施获知。以下例示及附图作为实例提供,目的并非限定本发明。
[0070] 以下,为了使得本发明所属技术领域的普通技术人员能够轻易地实施本发明,参见关于本发明的优选实施例的附图进行具体说明。
[0071] 图2简要示出本发明的一个实施例的学习神经网络的学习装置100,参见图2,学习装置100可包括通信部110及处理器120。
[0072] 首先,通信部110可获取训练数据。
[0073] 在此,训练数据可存储于数据库130,训练数据中的一部分可以存储为批数据(batch data)。在此,可生成有对应于用于执行反复学习的迭代的个数的批数据,可存储有对应于包含于各批数据的各训练数据的GT(ground truth)。
[0074] 之后,处理器120可在预先设定了作为用于调整学习率变更比例的常数的第一伽马的状态下,(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马。并且,处理器120可以在将k从2增大到(n-1)的过程中,(I)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(II)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(III)在所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,执行利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程。
[0075] 在此,处理器120参照第k损失梯度将所述第k伽马变更为第(k+1)伽马,参照所述神经网络的(i)所述第k损失及(ii)第(k-1)损失算出所述第k损失梯度,所述第(k-1)损失可通过在所述迭代累积次数超过第(k-2)特定值且在第(k-1)特定值以下期间,利用所述训练数据中的一部分反复所述神经网络的所述学习的第(k-1)学习过程获得。并且,所述第k损失梯度为预设的最小损失梯度以上的情况下,所述处理器120可参照对所述第k伽马与所述第k损失梯度进行乘法运算算出的结果确定所述第(k+1)伽马,所述第k损失梯度小于预设的最小损失梯度的情况下,将所述第(k+1)伽马确定为所述第k伽马。
[0076] 在此,本发明的一个实施例的学习装置100为计算装置,只要是搭载处理器从而具有运算能力的装置则都可以用作本发明的学习装置100。并且,虽然图2仅示出一个学习装置100,但不限于此,学习装置可分为多个发挥作用。
[0077] 如下参见图3说明利用如上构成的本发明的一个实施例的学习装置100学习神经网络的方法。
[0078] 首先,学习装置100通过正向处理将训练数据中的一部分输入到神经网络的输入层(I)的情况下,对输入层(I)算出的值适用加权值Wij,并将适用了加权值的第一值输入到隐藏层(J)。并且,隐藏层(J)接收该第一值并执行预定运算的情况下,学习装置100向隐藏层(J)算出的值适用加权值Wjk并输入到输出层K,输出层(K)在接收后执行预定运算,学习装置100输出由输出层(K)算出的值。
[0079] 在此,示出的隐藏层(J)为一个层,但不限于此,隐藏层(J)可包括多个层。并且各加权值Wij、Wjk可以是设定有初始值的状态。
[0080] 之后,学习装置100参照神经网络的输出,即从输出层(K)输出的结果及与之对应的GT获得损失。
[0081] 并且,学习装置100利用获得的损失通过反向传播学习神经网络。
[0082] 在此,为了调整连接神经网络的各层的大纲(synopsis)的连接强度的加权值减小损失而可以执行学习过程。
[0083] 作为一例,利用随机梯度下降法(stochastic gradient descent;SGD)执行反向传播的情况下,可通过以下数学式2调整各加权值。
[0084] [数学式2]
[0085]
[0086] 在数学式2中,lr表示学习率,C表示费用函数。
[0087] 在此,费用函数可取决于地图学习、监督学习强化学习等学习的形态与激活函数(activation function)之类的要素。
[0088] 例如,对多类分类问题(multiclass classification problem)执行地图学习时,一般用柔性最大值函数(softmax function)及交叉熵函数(cross entropy function)分别确定激活函数及费用函数。
[0089] 柔性最大值函数可用数学式3示出,费用函数可用数学式4示出。
[0090] [数学式3]
[0091]
[0092] [数学式4]
[0093]
[0094] 在数学式3中,pj表示类概率(class probability),xj表示向单元j的所有输入(total input),xk表示向单元k的所有输入。
[0095] 并且,在数学式4中,dj表示对输出单元j的目标概率(target probability),pj是适用激活函数之后的对单元j的概率输出(probability output)。
[0096] 以上作为利用损失的反向传播的一例对随机梯度下降法(SGD)进行了说明,但本发明不限于此,也可以使用动量(Momentum)方式、NAG(Nesterov Accelerated Gradient)方式、Adagrad(Adaptive Gradient)方式、RMSProp方式、AdaDelta(Adaptive Delta)方式、Adam(Adaptive Moment Estimation)方式等执行用于神经网络的学习的反向传播。
[0097] 可通过一次迭代定义上述利用训练数据中的一部分的神经网络的正向处理、利用损失的反向处理及加权值更新处理。并且,训练数据中的一部分可以是各自的批数据,可生成有对应于用于执行反复学习的迭代的次数的个数的批数据。
[0098] 并且,学习装置100每当学习的迭代累积次数,即迭代达到特定值中的一个时调整学习率使得学习神经网络。
[0099] 可根据用于调整学习率的迭代单位预设特定值,将用于调整学习率的迭代单位作为步的情况下,可以在每当迭代累积次数达到设定为步的数字或步的积中的一个时调整学习率。作为一例,将步设定为10,000的情况下,10,000的倍数可被设定为第一至第n特定值,神经网络的一次学习过程期间,神经网络可学习相当于n x 10,000次的迭代。但是本发明不限于此,步也可以不是固定数字,也可以不适用步的积。
[0100] 以下具体说明每当迭代累积次数为特定值中的一个时调整学习率且学习装置100学习神经网络的过程。
[0101] 在预设有作为用于调整学习率变更比例的常数的第一伽马的状态下,学习装置100可以(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马。在此,可以将第一学习过程期间的迭代次数确定为批数据的数。后续说明将第一伽马变更为第二伽马的方法。
[0102] 之后,学习装置100在将k从2增大到(n-1)的过程中,(I)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(II)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率。
[0103] 在此,学习装置100参照第k损失梯度将所述第k伽马变更为第(k+1)伽马,参照所述神经网络的(i)所述第k损失及(ii)第(k-1)损失算出所述第k损失梯度。在此,通过所述迭代累积次数超过第(k-2)特定值且在第(k-1)特定值以下期间,利用所述训练数据中的一部分反复所述神经网络的所述学习的第(k-1)学习过程获得所述第(k-1)损失。
[0104] 即,学习装置100通过数学式5算出第(k-1)损失之和,通过数学式6算出第k损失之和。
[0105] [数学式5]
[0106]
[0107] [数学式6]
[0108]
[0109] 并且,学习装置100通过数学式7将第k损失之和相对于第(k-1)损失之和的比确定为第k损失梯度。
[0110] [数学式7]
[0111]
[0112] 之后,学习装置100在第k损失梯度和预设的最小损失梯度的比较结果为第k损失梯度在预设的最小损失梯度以上的情况下,将第k伽马更新为第(k+1)伽马。在此,如数学式8所示,乘以第k伽马与第k损失梯度确定第(k+1)伽马。然而,比较第k损失梯度与预设的最小损失梯度的结果为第k损失梯度小于预设的最小损失梯度的情况下,将第(k+1)伽马确定为第k伽马。
[0113] [数学式8]
[0114] gamma(n)=loss_gradient×gamma(n-1)
[0115] 在此,迭代的累积次数达到特定值中的一个的情况下神经网络的学习提前结束,无法充分学习,因此对学习率而言,仅在损失梯度为预设的值以上的情况下(即,最小损失梯度)减小学习率使得进行充分的学习。
[0116] 并且,学习装置100通过数学式9将对第k学习率与第(k+1)伽马进行乘法运算得到的结果确定为第(k+1)学习率。
[0117] [数学式9]
[0118] lr(n)=lr(n-1)×gamma(n)
[0119] 之后,学习装置100可以在所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程。在此,可以将所述第(k+1)学习过程期间的迭代次数确定为批数据的数。因此,在第一学习过程中使用的批数据的数等于在第(k+1)学习过程中使用的批数据的数。
[0120] 以下参照图4a及图4b说明上述本发明的一个实施例的神经网络的学习方法。
[0121] 图4a示出本发明的一个实施例的学习率的变动状态,例示设定的初始常数值中作为初始学习率的基本学习率(lr)为0.0,作为用于变更学习率的迭代单位的步为10,000,作为用于调整学习率变更比例的常数的伽马为0.9。在此,比现有学习方法的图1a的100,000减少步且使伽马比作为现有学习方法的图1a的0.1大是为了根据损失相应地频繁地一点一点减小学习率。
[0122] 因此,本发明不同于作为现有学习方法的图1,持续变更学习率。
[0123] 并且,从图4b可知,学习率随损失变更,因此不同于作为现有学习方法的损失随学习率变更的图1b,损失持续减少,因此仅需一次学习过程即可获得最佳的学习率。
[0124] 图5是简要示出本发明的一个实施例的学习能够执行客体探测的神经网络的状态的示意图。
[0125] 首先,学习装置100通过正向处理(i)使至少一个卷积层conv1、conv2、conv3、conv4、conv5对训练数据的一部分适用至少一个卷积运算输出至少一个特征图,(ii)使至少一个全连接层FC6、FC7对合并特征图上的对应于ROI的区域算出的至少一个特征向量适用至少一个FC运算,算出对应于所述训练数据中的至少一个客体的概率值,(iii)使输出层算出对应于从所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔。
[0126] 在此,学习装置100通过正向处理计算各层的各输出,最终参照GT计算损失层的损失值。
[0127] 之后,学习装置100通过反向处理利用在正向处理计算的各层的各输出值从后侧层起向反向方向传递用于减小损失值的输出值的梯度。
[0128] 在此,学习装置100使各层通过从后侧层传递过来的输出值梯度获得加权值的梯度。
[0129] 之后,学习装置100通过更新处理参照在反向处理获得的各层的加权值的梯度,更新全连接层FC7、FC6及卷积层conv5、conv4、conv3、conv2、conv1的加权值的值执行用于学习的一次迭代。
[0130] 并且,学习装置100使学习率调度器通过以上说明的方法在每当所述迭代累积次数达到第一条件至第n条件中任意一个时参照损失值变更当前的学习率,将变更的当前学习率传递到求解器(solver),使求解器参照变更的当前学习率与各层的加权值梯度更新各层的加权值。在此,求解器可以如上使用SGD(stochastic gradient descent)方式、Momentum方式、NAG(Nesterov Accelerated Gradient)方式、Adagrad(Adaptive Gradient)方式、RMSProp方式、AdaDelta(Adaptive Delta)方式、Adam(Adaptive Moment Estimation)方式等。
[0131] 图6简要示出本发明的一个实施例的对学习的神经网络进行测试的测试装置,测试装置200可包括通信部210及处理器220。
[0132] 通信部210可在预先设定了作为用于调整学习率变更比例的常数的第一伽马的状态下,通过(a)学习装置(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程;(b)所述学习装置在将k从2增大到(n-1)的过程中,(b1)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(b2)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(b3)所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程,获得了所述学习装置的参数的状态下获得测试数据。
[0133] 并且,处理器220将测试数据输入到神经网络,使神经网络输出利用根据第一学习率至第(k+1)学习率学习的参数对测试数据进行运算的结果。
[0134] 在此,神经网络可包括(i)对训练数据适用至少一个卷积运算使得输出至少一个特征图的至少一个卷积层(convolutional layer)、(ii)对合并所述特征图上的对应于感兴趣区域(Region Of Interest,ROI)的区域算出的至少一个特征向量适用至少一个全连接(Fully connected,FC)运算,算出对应于所述训练数据中的至少一个客体的概率值的至少一个全连接层(FC layer)及(iii)算出对应于所述全连接层算出的所述概率值的至少一个类得分及至少一个回归德尔塔的输出层(output layer)。并且,利用参照所述输出层的至少一个算出结果和与之对应的基础事实(Ground Truth,GT)算出的损失进行反向传播以学习所述全连接层及所述卷积层的情况下,所述学习装置可参照所述第一学习率至所述第k学习率确定所述全连接层及所述卷积层的至少一个参数的变动幅度。
[0135] 以下简要说明通过如上构成的测试装置200对学习的神经网络进行测试的方法。
[0136] 首先,神经网络可以是通过参照图2至图5说明的方法学习的状态。
[0137] 即,在预先设定了作为用于调整学习率变更比例的常数的第一伽马的状态下,(a)学习装置可以(i)在所述迭代累积次数在第一特定值以下期间,执行利用训练数据中的一部分以第一预设的学习率反复所述神经网络的所述学习的第一学习过程,(ii)参照通过所述第一学习过程获得的所述神经网络的第一损失将所述第一伽马变更为第二伽马的过程,(b)将k从2增大到(n-1)的过程中,(b1)在所述迭代累积次数超过第(k-1)特定值且在第k特定值以下期间,执行利用所述训练数据中的一部分以第k学习率反复所述神经网络的所述学习的第k学习过程,(b2)(i)参照通过所述第k学习过程获得的所述神经网络的第k损失将第k伽马变更为第(k+1)伽马,(ii)利用所述第(k+1)伽马将第k学习率变更为第(k+1)学习率,(b3)所述迭代累积次数超过第k特定值且在第(k+1)特定值以下期间,利用所述训练数据中的一部分以第(k+1)学习率反复所述神经网络的所述学习的第(k+1)学习过程。
[0138] 在如上学习了神经网络的状态下,获取到测试数据的情况下,测试装置200将测试数据输入到神经网络,使神经网络输出利用通过第一学习率至第(k+1)学习率学习的参数对测试数据适用神经网络运算得到的结果。
[0139] 并且,以上说明的本发明的实施例可实现为能够通过多种计算机构成要素执行的程序命令的形态,存储在计算机可读存储介质中。所述计算机可读存储介质可包括程序指令、数据文件、数据结构等或其组合。存储在所述计算机可读存储介质中的程序指令可以是为本发明而专设计和构成的,但也可以是计算机软件领域的技术人员公知使用的。计算机可读存储介质例如可以是硬盘软盘及磁带之类的磁介质、CD-ROM、DVD之类的光存储介质、软光盘(floptical disk)之类的磁-光介质(magneto-optical media)及ROM、RAM、闪速存储器等为了存储和执行程序命令而专门构成的硬件装置。并且,程序命令不仅包括通过编译器得到的机器代码,还包括能够通过解释器由计算机运行的高级语言代码。所述硬件装置可构成为为了执行本发明的处理而作为一个以上的软件模工作,反之相同。
[0140] 以上通过本发明的具体构成要素等特定事项与限定的实施例及附图进行了说明,但是其目的只是用于帮助更全面的理解,本发明并不限定于上述实施例,本发明所属领域的普通技术人员可根据以上记载想到多种修改及变更。
[0141] 因此本发明的思想不应局限于以上说明的实施例,应理解所述权利要求范围及与该权利要求范围等同或等价变形的所有一切都属于本发明思想的范畴。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈