可切换深度学习网络结构的方法与终端与流程

文档序号:17848923发布日期:2019-06-11 22:02阅读:222来源:国知局

本发明涉及通讯技术领域,尤其涉及一种可切换深度学习网络结构的方法与终端。



背景技术:

深度学习网络是机器学习中一个非常接近人工智能的领域,其目的在于建立、模拟人脑进行分析学习的神经网络。

当前,深度学习网络已在诸多领域中取得了一系列惊人的成绩,例如:在视频、语音识别领域、辨识可用于制药的新分子领域等等。在现有技术中,深度学习网络的基本网络结构为卷积神经网络(Convolutional Newral Network,简称:CNN)结构和深度置信网络(Deep Belief Network,简称:DBN)结构。

以CNN网络结构为例进行说明,该网络结果多应用于图像处理领域。CNN网络结构用一个或多个滤波器(该滤波器也即是卷积模版)对图像中提取的输入特征矩阵进行卷积运算,得到与输入特征矩阵对应的输出特征矩阵。

CNN网络结构的卷积模板为:其中,wk为给定的卷积模板的权值矩阵,xk为输入特征矩阵的特征变量,函数f(·)为激活函数,一般选择sigmoid函数。

具体过程为:输入特征矩阵通过和多个训练的滤波器和可加偏置进行卷积运算,在C1层生成多个特征映射图;将特征映射图中每组的4个像素再进行求和、与权值矩阵、偏置相加运算,通过sigmoid函数得到多个S2层的特征映射图;将特征映射图再次进行滤波处理,得到C3层;将C3层的特征映射图中每组的4个像素再进行求和、与权值矩阵、偏置相加运算,通过sigmoid函数得到多个S4层的特征映射图;最后,将各层的特征映射图连接为一个向量输入到传统的神经网络中,得到与输入特征矩阵对应的输出特征矩阵。

但是,现有技术中利用CNN网络结构以及传统的神经网络在处理图像业务时暴露出以下缺陷:该多个网络结构的计算过程复杂、计算量大且单独使用CNN网络结构无法简单快速的获取到输出特征矩阵。



技术实现要素:

本发明实施例提供了一种可切换深度学习网络结构的方法与终端,解决了现有技术中CNN网络结构计算过程复杂、计算量大单独使用该网络结构无法简单快速的获取到输出特征矩阵的问题。

在第一方面,本发明实施例提供了一种可切换深度学习网络结构的方法,所述方法包括:

获取表示物体特征的一个或多个第一输入特征矩阵;

根据每个所述第一输入特征矩阵,确定与所述第一输入特征矩阵对应的多个显著特征矩阵的值和与每个所述显著特征矩阵对应的一个切换变量的估计值;

根据所述显著特征矩阵的值,分别将每个所述第一输入特征矩阵中的对应元素与对应的多个所述显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵;

将每个所述第一结果矩阵与预设的或训练得到的第一参数矩阵进行相乘运算,得到多个第二结果矩阵;

将每个所述第二结果矩阵与预设的或训练得到的第一偏移量矩阵进行相加运算,得到多个第三结果矩阵;

根据激活函数,对每个所述第三结果矩阵进行激活处理,得到多个激活矩阵;

将每个所述激活矩阵中的每个元素与对应的一个所述切换变量的估计值进行相乘运算,得到多个切换矩阵;

将多个所述切换矩阵中的对应元素进行累加求和运算,得到第一输出矩阵。

在第一种可能的实现方式中,所述确定与每个所述显著特征矩阵对应的一个切换变量的估计值具体包括:

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述为初始的第k个第一参数矩阵的第j行的转置;所述bkj为初始的第k个第一偏移量矩阵的第j个元素;所述k、j为正整数,所述为初始的第k个第一隐藏矩阵的转置。

在第二种可能的实现方式中,所述确定与每个所述显著特征矩阵对应的一个切换变量的估计值具体包括:

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述y为预设的第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为第四隐藏矩阵的第k个元素;所述d为第三隐藏矩阵。

在第三种可能的实现方式中,所述显著特征矩阵的值由所述显著特征矩阵中各元素的概率值组成;

所述显著特征矩阵中各元素的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为所述第一输入特征矩阵;所述hk为预设的第k个第二隐藏矩阵;所述为初始的第k个第一参数矩阵的转置;所述ck为初始的第k个第一隐藏矩阵;所述k为正整数;所述τ(·)为所述激活函数。

在第四种可能的实现方式中,所述激活函数具体包括:双曲正切函数的绝对值、双曲正切函数、双切正弦函数、双切余弦函数、sigmoid函数中的任一函数。

在第五种可能的实现方式中,所述方法还包括:确定所述第一参数矩阵、所述第一偏移矩阵和第一隐藏矩阵。

结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述确定所述第一参数矩阵、所述第一偏移矩阵和第一隐藏矩阵具体包括:

获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数、所述切换变量的个数相同;

获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移矩阵。

结合第一方面的第六种可能的实现方式,在第七种可能的实现方式中,任意一次所述迭代的运算方式具体包括:

根据所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值,确定与每个所述第二输入特征矩阵对应的所有所述切换变量的估计值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值,确定所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值和第二隐藏矩阵的概率值;

根据所述切换变量的估计值、所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值和所述第二隐藏矩阵的概率值,以随机生成的方式确定所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值和第二隐藏矩阵的第一值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值和所述第二隐藏矩阵的第一值,以确定第一值同样的方法,确定所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值和所述显著特征矩阵的第二值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述第二隐藏矩阵的第一值、所述显著特征矩阵的第一值、所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值和所述显著特征矩阵的第二值,确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移量矩阵,并根据预设条件进入下一次所述迭代的运算方式或者退出所述迭代的运算方式。

结合第一方面的第六种可能的实现方式,在第八种可能的实现方式中,所述获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值具体包括:

随机获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值;或者,

通过限制波尔兹曼机RBM训练模型,获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

结合第一方面的第七种可能的实现方式,在第九种可能的实现方式中,所述确定与每个所述训练样本的第二输入特征矩阵对应的所有所述切换变量的估计值具体包括:

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为预设的所述第二输入特征矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k、j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置。

结合第一方面的第七种可能的实现方式,在第十种可能的实现方式中,所述确定所述第二输入特征矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第一方面的第七种可能的实现方式,在第十一种可能的实现方式中,所述确定所述显著特征矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第一方面的第七种可能的实现方式,在第十二种可能的实现方式中,所述确定所述第二隐藏矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

结合第一方面的第七种可能的实现方式,在第十三种可能的实现方式中,所述确定所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵具体为通过

计算;

其中,所述θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

结合第一方面的第十三种可能的实现方式,在第十四种可能的实现方式中,所述方法还包括:

通过更新所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值;

其中,θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述η为预设的学习率。

在第十五种可能的实现方式中,所述得到所述第一输出矩阵之后还包括:

将所述第一输出矩阵矩阵与预设的或训练得到的第二参数矩阵进行相乘运算,得到第二输出矩阵。

结合第一方面的第十五种可能的实现方式,在第十六种可能的实现方式中,所述方法还包括:

确定所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、第一隐藏矩阵和第三隐藏矩阵。

结合第一方面的第十六种可能的实现方式,在第十七种可能的实现方式中,所述确定所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、第一隐藏矩阵和所述第三隐藏矩阵具体包括:

获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数相同;

获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移矩阵和所述第三隐藏矩阵。

结合第一方面的第十七种可能的实现方式,在第十八种可能的实现方式中,任意一次所述迭代的运算方式具体包括:

根据所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值和所述第三隐藏矩阵的初始值和所述第四隐藏矩阵的初始值,确定与每个所述第二输入特征矩阵对应的所述所有切换变量的估计值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二隐藏矩阵的初始值、所述第三隐藏矩阵的初始值和所述第四隐藏矩阵的初始值,确定所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值、第二隐藏矩阵的概率值和所述第二输出矩阵的概率值;

根据所述切换变量的估计值、所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值、所述第二隐藏矩阵的概率值和所述第二输出矩阵的概率值,以随机生成的方式确定所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值、所述第二隐藏矩阵的第一值和所述第二输出矩阵的第一值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第三隐藏矩阵的初始值、所述第四隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值、所述第二隐藏矩阵的第一值和所述第二输出矩阵的第一值,以确定第一值同样的方法确定所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值、所述显著特征矩阵的第二值和所述第二输出矩阵的第二值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第三隐藏矩阵的初始值、所述第四隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述第二隐藏矩阵的第一值、所述显著特征矩阵的第一值、所述第二输出矩阵的第一值、所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值、所述显著特征矩阵的第二值和所述第二输出矩阵的第二值,确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵和所述第三隐藏矩阵,并根据预设条件进入下一次所述迭代的运算方式或者退出所述迭代的运算方式。

结合第一方面的第十七种可能的实现方式,在第十九种可能的实现方式中,所述获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值具体包括:

随机获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和所述第四隐藏矩阵的初始值;或者,

随机获取所述第二参数矩阵、所述第三隐藏矩阵和所述第四隐藏矩阵的初始值,通过限制波尔兹曼机RBM训练模型,获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

结合第一方面的第十八种可能的实现方式,在第二十种可能的实现方式中,所述确定与每个所述第二输入特征矩阵对应的所有所述切换变量的估计值具体包括:

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的所述第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为不大于所述K的正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为所述第四隐藏矩阵的第k个元素;所述d为所述第三隐藏矩阵。

结合第一方面的第十八种可能的实现方式,在第二十一种可能的实现方式中,所述确定所述第二输入特征矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第一方面的第十八种可能的实现方式,在第二十二种可能的实现方式中,所述确定所述显著特征矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第一方面的第十八种可能的实现方式,在第二十三种可能的实现方式中,所述确定所述第二隐藏矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述UT为初始的所述第二参数矩阵的转置;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

结合第一方面的第十八种可能的实现方式,在第二十四种可能的实现方式中,所述确定所述输出特征矩阵的概率值具体为通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述hk为预设的第k个所述第二隐藏矩阵;所述U为初始的所述第二参数矩阵;所述d为所述第三隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第一方面的第十八种可能的实现方式,在第二十五种可能的实现方式中,所述确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵和所述第三隐藏矩阵具体为通过计算;

其中,所述θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵和所述第三隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置,所述U为初始的所述第二参数矩阵;所述yT为预设的所述第二输出矩阵的转置;所述dT为所述第三隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述y0为所述第二输出矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二输出矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为所述显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号。表示矩阵对应元素相乘。

结合第一方面的第二十五种可能的实现方式,在第二十六种可能的实现方式中,所述方法还包括:

通过更新所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值和所述第三隐藏矩阵的初始值;

其中,θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵中的任意一个;所述η为预设的学习率;

通过更新所述第四隐藏矩阵的初始值;

其中,所述sk第k个所述切换变量的估计值;所述λk为所述第四隐藏矩阵的第k个元素;所述k为不大于所述K的正整数;所述n为正整数。

在第二方面,本发明实施例提供了一种终端,所述终端包括:

获取单元,用于获取表示物体特征的一个或多个第一输入特征矩阵;

第一确定单元,用于根据每个所述第一输入特征矩阵,确定与所述第一输入特征矩阵对应的多个显著特征矩阵的值和与每个所述显著特征矩阵对应的一个切换变量的估计值;

运算单元,用于根据所述显著特征矩阵的值,分别将每个所述第一输入特征矩阵中的对应元素与对应的多个所述显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵;

所述运算单元还用于,将每个所述第一结果矩阵与预设的或训练得到的第一参数矩阵进行相乘运算,得到多个第二结果矩阵;

所述运算单元还用于,将每个所述第二结果矩阵与预设的或训练得到的第一偏移量矩阵进行相加运算,得到多个第三结果矩阵;

所述运算单元还用于,根据激活函数,对每个所述第三结果矩阵进行激活处理,得到多个激活矩阵;

所述运算单元还用于,将每个所述激活矩阵中的每个元素与对应的一个所述切换变量的估计值进行相乘运算,得到多个切换矩阵;

所述运算单元还用于,将多个所述切换矩阵中的对应元素进行累加求和运算,得到第一输出矩阵。

在第一种可能的实现方式中,所述第一确定单元确定的与每个所述显著特征矩阵对应的一个切换变量的估计值具体为,

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述为初始的第k个第一参数矩阵的第j行的转置;所述bkj为初始的第k个第一偏移量矩阵的第j个元素;所述k、j为正整数,所述为初始的第k个第一隐藏矩阵的转置。

在第二种可能的实现方式中,所述第一确定单元确定的与每个所述显著特征矩阵对应的一个切换变量的估计值具体包括:

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述y为预设的第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的所述第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为不大于所述K的正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为所述第四隐藏矩阵的第k个元素;所述d为所述第三隐藏矩阵。

在第三种可能的实现方式中,所述第一确定单元确定的所述显著特征矩阵的值由所述显著特征矩阵中各元素的概率值组成;

所述显著特征矩阵中各元素的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为所述第一输入特征矩阵;所述hk为预设的第k个第二隐藏矩阵;所述为初始的第k个第一参数矩阵的转置;所述ck为初始的第k个第一隐藏矩阵;所述k为正整数;所述τ(·)为所述激活函数。

在第四种可能的实现方式中,所述运算单元使用的所述激活函数具体包括:双曲正切函数的绝对值、双曲正切函数、双切正弦函数、双切余弦函数、sigmoid函数中的任一函数。

在第五种可能的实现方式中,所述终端还包括:第二确定单元,用于确定所述第一参数矩阵、所述第一偏移矩阵和第一隐藏矩阵。

结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第二确定单元具体用于,获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数、所述切换变量的个数相同;

获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移矩阵。

结合第二方面的第六种可能的实现方式,在第七种可能的实现方式中,所述第二确定单元使用的任意一次所述迭代的运算方式具体包括:

根据所述第二输入特征矩阵、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值,确定与每个所述第二输入特征矩阵对应的所有所述切换变量的估计值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值,确定所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值和第二隐藏矩阵的概率值;

根据所述切换变量的估计值、所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值和所述第二隐藏矩阵的概率值,以随机生成的方式确定所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值和第二隐藏矩阵的第一值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值和所述第二隐藏矩阵的第一值,以确定第一值同样的方法,确定所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值和所述显著特征矩阵的第二值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述第二隐藏矩阵的第一值、所述显著特征矩阵的第一值、所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值和所述显著特征矩阵的第二值,确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移量矩阵,并根据预设条件进入下一次所述迭代的运算方式或者退出所述迭代的运算方式。

结合第二方面的第六种可能的实现方式,在第八种可能的实现方式中,所述第二确定单元具体用于,随机获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值;或者,

通过限制波尔兹曼机RBM训练模型,获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

结合第二方面的第七种可能的实现方式,在第九种可能的实现方式中,所述第二确定单元确定的与每个所述训练样吧的第二输入特征对应的所有所述切换变量的估计值具体为,

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为预设的所述第二输入特征矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k、j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置。

结合第二方面的第七种可能的实现方式,在第十种可能的实现方式中,所述第二确定单元确定的所述第二输入特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第二方面的第七种可能的实现方式,在第十一种可能的实现方式中,所述第二确定单元确定的所述显著特征矩阵中各元素的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第二方面的第七种可能的实现方式,在第十二种可能的实现方式中,所述第二确定单元确定的所述第二隐藏矩阵的概率值具体为,

通过p(hk=1|x,s,m)=τ(sk(Wk(xοmk)+bk))计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

结合第二方面的第七种可能的实现方式,在第十三种可能的实现方式中,所述第二确定单元确定的所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵具体为

通过计算;

其中,所述θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

结合第二方面的第十三种可能的实现方式,在第十四种可能的实现方式中,所述终端还包括:

第一更新单元,用于通过更新所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值;

其中,θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述η为预设的学习率。

在第十五种可能的实现方式中,所述运算单元还用于,将所述第一输出矩阵矩阵与预设的或训练得到的第二参数矩阵进行相乘运算,得到第二输出矩阵。

结合第二方面的第十五种可能的实现方式,在第十六种可能的实现方式中,所述终端还包括:第三确定单元,用于确定所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、第一隐藏矩阵和第三隐藏矩阵。

结合第二方面的第十六种可能的实现方式,在第十七种可能的实现方式中,所述第三确定单元具体用于,获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数相同;

获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移矩阵和所述第三隐藏矩阵。

结合第二方面的第十七种可能的实现方式,在第十八种可能的实现方式中,所述第三确定单元使用的任意一次所述迭代的运算方式具体包括:

根据所述第二输入特征矩阵、所述第二输出矩阵、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值和所述第三隐藏矩阵的初始值和所述第四隐藏矩阵的初始值,确定与每个所述第二输入特征矩阵对应的所述所有切换变量的估计值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二隐藏矩阵的初始值、所述第三隐藏矩阵的初始值和所述第四隐藏矩阵的初始值,确定所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值、所述第二隐藏矩阵的概率值和所述第二输出矩阵的概率值;

根据所述切换变量的估计值、所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值、所述第二隐藏矩阵的概率值和所述第二输出矩阵的概率值,以随机生成的方式确定所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值、第二隐藏矩阵的第一值和所述第二输出矩阵的第一值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第三隐藏矩阵的初始值、所述第四隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值、所述第二隐藏矩阵的第一值和所述第二输出矩阵的第一值,以确定第一值同样的方法确定所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值、所述显著特征矩阵的第二值和所述第二输出矩阵的第二值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第三隐藏矩阵的初始值、所述第四隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述第二隐藏矩阵的第一值、所述显著特征矩阵的第一值、所述第二输出矩阵的第一值、所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值、所述显著特征矩阵的第二值和所述第二输出矩阵的第二值,确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵和所述第三隐藏矩阵,并根据预设条件进入下一次所述迭代的运算方式或者退出所述迭代的运算方式。

结合第二方面的第十七种可能的实现方式,在第十九种可能的实现方式中,所述第三确定单元具体用于,随机获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和所述第四隐藏矩阵的初始值;或者,

随机获取所述第二参数矩阵、所述第三隐藏矩阵和所述第四隐藏矩阵的初始值,通过限制波尔兹曼机RBM训练模型,获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

结合第二方面的第十八种可能的实现方式,在第二十种可能的实现方式中,所述第三确定单元确定的与每个所述第二输入特征矩阵对应的所有所述切换变量的估计值具体为,

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为预设的所述第二输入特征矩阵;所述y为预设的所述输出特征矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的所述第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为不大于所述K的正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为所述第四隐藏矩阵的第k个元素;所述d为所述第三隐藏矩阵。

结合第二方面的第十八种可能的实现方式,在第二十一种可能的实现方式中,所述第三确定单元确定的所述第二输入特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第二方面的第十八种可能的实现方式,在第二十二种可能的实现方式中,所述第三确定单元确定的所述显著特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第二方面的第十八种可能的实现方式,在第二十三种可能的实现方式中,所述第三确定单元确定的所述第二隐藏矩阵的概率值具体为,

通过p(hk=1|x,y,s,m)=τ(sk(Wk(xοmk)+bk+UTy))计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述UT为初始的所述第二参数矩阵的转置;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

结合第二方面的第十八种可能的实现方式,在第二十四种可能的实现方式中,所述第三确定单元确定的所述输出特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述hk为预设的第k个所述第二隐藏矩阵;所述U为初始的所述第二参数矩阵;所述d为所述第三隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

结合第二方面的第十八种可能的实现方式,在第二十五种可能的实现方式中,所述第三单元确定的所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵和所述第三隐藏矩阵具体为,

通过计算;

其中,所述θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵和所述第三隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置,所述U为初始的所述第二参数矩阵;所述yT为预设的所述第二输出矩阵的转置;所述dT为所述第三隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述y0为所述第二输出矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二输出矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为所述显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

结合第二方面的第二十五种可能的实现方式,在第二十六种可能的实现方式中,所述终端还包括:

第二更新单元,用于通过更新所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值和所述第三隐藏矩阵的初始值;

其中,θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵中的任意一个;所述η为预设的学习率;

所述第二更新单元还用于,通过更新所述第四隐藏矩阵的初始值;

其中,所述sk第k个所述切换变量的估计值;所述λk为所述第四隐藏矩阵的第k个元素;所述k为不大于所述K的正整数;所述n为正整数。

通过应用本发明实施例提供的可切换深度学习网络结构的方法与终端,终端获取表示物体特征的1个或多个第一输入特征矩阵,通过获取第一输入特征矩阵的第一输出矩阵。解决了现有技术中CNN网络结构计算过程复杂、计算量大单独使用该网络结构无法简单快速的获取到输出特征矩阵的问题,实现了简化计算过程,降低计算量,可快速地获取输入图像的输出矩阵。

附图说明

图1为本发明实施例一提供的可切换深度学习网络结构的方法流程图;

图2为本发明实施例二提供的可切换深度学习网络结构的方法流程图;

图3为本发明实施例三提供的一种终端结构示意图;

图4为本发明实施例三提供的另一种终端结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。

实施例一

下面以图1为例详细说明本发明实施例一提供的可切换深度学习网络结构的方法,图1为本发明实施例一提供的可切换深度学习网络结构的方法流程图,在本发明实施例中实施主体为具有处理器且该处理器可对获取、收集的图像进行处理的终端,所述终端具体为个人电脑(Personal Computer,简称:PC)、台式电脑等等。

本发明实施例提供的可切换深度学习网络结构的方法应用于图像处理领域。如图1所示,该实施例具体包括以下步骤:

步骤110、获取表示物体特征的一个或多个第一输入特征矩阵。

具体地,在公共场所安装摄像头,摄像头通过有线、无线网络的连接方式与终端连接。摄像头实时拍摄现场图片,通过有线、无线网络将图像传输至终端,终端获取输入图像,输入图像的存储格式由Y,U,V分量组成。

终端将输入图像进行缩放处理,例如:将输入图像缩放值640×480比例。并将输入图像进行划分,得到多个108×36的窗口,每个窗口表示输入图像的一部分,并从每个窗口中提取6个不同的输入特征,将6个不同的输入特征形成6通道的2维特征矩阵。

从窗口中提取6个不同的输入特征,形成6通道的2维特征矩阵具体为:提取窗口中的Y分量(图像存储格式YUV中的Y分量),将Y分量作为第一输入特征;将窗口缩放至原尺寸的4/5(缩放比例可根据实际情况改变)大小,提取窗口缩放至原尺寸的4/5时的Y′分量,并将Y′分量作为第二输入特征;将窗口缩放至原尺寸的3/5(缩放比例可根据实际情况改变)大小,提取窗口缩放至原尺寸的3/5时的Y″分量,并将Y″分量作为第三输入特征;提取窗口中的边特征A,将A作为第四输入特征;将窗口缩放至原尺寸的4/5(缩放比例可根据实际情况改变)大小,提取窗口缩放至原尺寸的4/5时的边特正A′,并将A′作为第五输入特征;将窗口缩放至原尺寸的3/5(缩放比例可根据实际情况改变)大小,提取窗口缩放至原尺寸的3/5时的边特征A″,并将A″作为第六输入特征;将6个不同的输入特征形成6通道的2维特征矩阵。

在本发明实施例中,以终端获取多个第一输入特征矩阵为例进行说明。

对于每一个窗口的2维特征矩阵,终端使用64个训练的9*9*6的滤波器进行滤波处理,得到滤波矩阵,所述滤波矩阵的个数为64个,并分别对64个滤波矩阵再次使用训练的2*2*64的滤波器进行处理,该2*2*64的滤波器进行处理对滤波矩阵的处理具体为:从每个滤波矩阵中的每4个像素中选取像素最大值,并将选取后的像素最大值组成第一输入特征的矩阵,本发明实施例中,所述第一输入特征矩阵的个数为64个。

终端获取表示物体特征的第一输入特征矩阵。

步骤120、根据每个所述第一输入特征矩阵,确定与所述第一输入特征矩阵对应的多个显著特征矩阵的值和与每个所述显著特征矩阵对应的一个切换变量的估计值。

具体地,终端针对每个第一输入特征矩阵,确定出与第一输入特征矩阵对应的多个显著特征矩阵的值,并根据确定出的多个显著特征矩阵的值,确定与每个显著特征矩阵的值对应的1个切换变量的估计值。

进一步地,确定的显著特征矩阵的个数为预设的数值,例如,终端预设每个第一输入特征矩阵对应的显著特征矩阵的个数为10。可以理解的是,终端确定的切换变量的个数也为10个。

在本发明实施例中,所述显著特征矩阵的值由所述显著特征矩阵中各元素的概率值组成,也即是,终端通过确定显著特征矩阵中各元素的概率值进而确定显著特征矩阵的值,也就是确定显著特征矩阵。

更进一步地,终端先通过下述公式一确定多个切换变量的估计值。

公式一

终端通过公式一计算多个切换变量的概率值,保留概率值最大的切换变量的值,将除概率值最大的切换变量之外的其他切换变量置0,并将保留的切换变量的值和置0后的切换变量的值作为切换变量的估计值;

或者,终端通过公式一计算多个切换变量的概率值,将概率值最大的切换变量置1,将除概率值最大的切换变量之外的其他切换变量置0,并将置1后的切换变量的值和置0后的切换变量的值作为切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述为初始的第k个第一参数矩阵的第j行的转置;所述bkj为初始的第k个第一偏移量矩阵的第j个元素;所述k、j为正整数,所述为初始的第k个第一隐藏矩阵的转置。

更进一步地,终端确定显著特征矩阵中各元素的概率值具体通过下述公式二计算,

公式二

其中,所述sk为第k个所述切换变量的估计值;所述x为所述第一输入特征矩阵;所述hk为预设的第k个第二隐藏矩阵;所述为初始的第k个第一参数矩阵的转置;所述ck为初始的第k个第一隐藏矩阵;所述k为正整数;所述τ(·)为所述激活函数。

步骤130、根据所述显著特征矩阵的值,分别将每个所述第一输入特征矩阵中的对应元素与对应的多个所述显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵。

具体地,根据步骤120确定的显著特征矩阵的值,终端分别将每个第一输入特征矩阵中的对应元素与对应的多个显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵。

根据前述的例子,终端将第一输入特征矩阵中的对应元素分别与对应的10个显著特征过矩阵中的每一个显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵。

进一步地,第一结果矩阵通过下述公式三计算,

公式三

其中,所述x为所述第一输入特征矩阵;所述为所述显著特征矩阵;所述k、l为正整数,所述符号ο表示矩阵对应元素相乘。

步骤140、将每个所述第一结果矩阵与预设的或训练得到的第一参数矩阵进行相乘运算,得到多个第二结果矩阵。

具体地,第二结果矩阵通过下述公式四计算,

公式四

其中,所述fk为所述第一结果矩阵;所述为第k个第一参数矩阵;所述k、l为正整数。

步骤150、将每个所述第二结果矩阵与预设的或训练得到的第一偏移量矩阵进行相加运算,得到多个第三结果矩阵。

具体地,第三结果矩阵通过下述公式五计算,

公式五

其中,所述gk为所述第二结果矩阵;所述为第k个第一偏移量矩阵;所述k、l为正整数。

步骤160、根据激活函数,对每个所述第三结果矩阵进行激活处理,得到多个激活矩阵。

具体地,激活矩阵通过下述公式六计算,

nk=tanhabs(ik) 公式六

其中,所述tanhabs(·)为所述激活函数;所述k为正整数。所述激活函数具体包括:双曲正切函数的绝对值、双曲正切函数、双切正弦函数、双切余弦函数、sigmoid函数中的任一函数。还可根据实际情况,使用任何现有技术中的激活函数。

步骤170、将每个所述激活矩阵中的每个元素与对应的一个所述切换变量的估计值进行相乘运算,得到多个切换矩阵。

具体地,切换矩阵通过下述公式七计算,

公式七

其中,所述为第k个所述切换变量的估计值;所述k、l为正整数。

步骤180、将多个所述切换矩阵中的对应元素进行累加求和运算,得到第一输出矩阵。

具体地,第一输出矩阵通过下述公式八计算,

公式八

其中,所述为第k个所述切换变量的估计值。

可选地,在本发明实施例中,还包括终端对前述公式中涉及的第一参数矩阵、第一偏移量矩阵进行训练的步骤,通过对各个参数矩阵的训练,可快速、准确地获取第一输出矩阵,进而获取标识物体特征的输出矩阵,提高检测的准确率。具体步骤如下:

可以理解的是,在对上述参数矩阵进行训练的同时,终端还对第一隐藏矩阵也进行训练。

获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数、所述切换变量的个数相同;

获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移矩阵。

具体地,终端获取训练样本的第二输入特征矩阵,终端对训练样本进行聚类处理,得到K个类,所述K的值与显著特征矩阵的个数、切换变量的个数相同,在本发明实施例中以10个类为例,终端可通过现有技术中的k-means方法对训练样本进行聚类处理,得到K个类。

终端获取第一参数矩阵、第一偏移量矩阵和第一隐藏矩阵的初始值。可以理解的是,所述矩阵的初始值具体为矩阵中各元素的初始值。

在一种实现方式中,终端随机获取第一参数矩阵、第一偏移量矩阵和第一隐藏矩阵的初始值;或者,

在另一种实现方式中,终端通过限制波尔兹曼机(Restricted Boltzmann Machine,简称:RBM)训练模型,获取第一参数矩阵、第一偏移量矩阵和第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

RBM预训练技术是一种用来预训练深度网络参数的现有技术,该技术首先随即初始化网络参数,然后把训练样本输入网络,计算隐藏层的节点出现1的概率值,然后利用吉布斯(gibbs)采样的原理按概率值随机生成隐藏层的节点的值,再根据隐藏层的值反向计算可见层的节点出现1的概率,再利用这个概率随机生成可见层的节点的值,最后通过比较节点的期望值之间的差值估计出参数更新大小,从而更新网络参数。

终端根据第一参数矩阵、第一偏移量矩阵和第一隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定第一隐藏矩阵、第一参数矩阵和第一偏移矩阵。

进一步地,在本发明实施例中,任意一次所述迭代的运算方式具体包括:

终端根据第一参数矩阵的初始值、第一偏移量矩阵的初始值和第一隐藏矩阵的初始值,确定与每个第二输入特征矩阵对应的所有切换变量的估计值;

终端通过下述公式九,计算多个切换变量的概率值,保留概率值最大的切换变量的值,将除概率值最大的切换变量之外的其他切换变量置0,并将保留的切换变量的值和置0后的切换变量的值作为切换变量的估计值;

或者,通过下述公式九,计算多个切换变量的概率值,将概率值最大的切换变量置1,将除概率值最大的切换变量之外的其他切换变量置0,并将置1后的切换变量的值和置0后的切换变量的值作为切换变量的估计值。

公式九

其中,所述x为预设的所述第二输入特征矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k、j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置。

终端根据切换变量的估计值、第一参数矩阵的初始值、第一偏移量矩阵的初始值和第一隐藏矩阵的初始值,确定第二输入特征矩阵的概率值、显著特征矩阵的概率值和第二隐藏矩阵的概率值;在本发明实施例中,各矩阵的概率值具体是指各矩阵中每个元素的概率值。

第二输入特征矩阵的概率值通过下述公式十计算,

公式十

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

显著特征矩阵的概率值通过下述公式十一计算,

公式十一

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

第二隐藏矩阵的概率值通过下述公式十二计算,

公式十二

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

终端根据切换变量的估计值、第二输入特征矩阵的概率值、显著特征矩阵的概率值和第二隐藏矩阵的概率值,以随机生成的方式确定第二输入特征矩阵的第一值、显著特征矩阵的第一值和第二隐藏矩阵的第一值。在本发明实施例中,各矩阵的第一值具体是指各矩阵中每个元素的第一值。

所述随机生成方式,也即是终端利用概率随机规则,确定第二输入特征矩阵的第一值、显著特征矩阵的第一值和第二隐藏矩阵的第一值。

概率随机规则具体为指在抽样时排除主观上有意识地抽取调查单位,每个受试单位以概率均等的原则,随机地分配到实验组与对照组,使每一个单位都有一定的机会被抽中。

终端根据切换变量的估计值、第一参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值、第二输入特征矩阵的第一值、显著特征矩阵的第一值和第二隐藏矩阵的第一值,以确定第一值同样的方法,确定第二输入特征矩阵的第二值、第二隐藏矩阵的第二值和显著特征矩阵的第二值。在本发明实施例中,各矩阵的第二值具体是指各矩阵中每个元素的第二值。

在本发明实施例中,终端再次通过前述公式十、公式十一、公式十二,确定各参数矩阵的概率值,利用概率随机规则确定第二输入特征矩阵的第二值、第二隐藏矩阵的第二值和显著特征矩阵的第二值,其过程与前述相同,在此不再复述。

终端根据切换变量的估计值、第一参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值、第二输入特征矩阵的第一值、第二隐藏矩阵的第一值、显著特征矩阵的第一值、第二输入特征矩阵的第二值、第二隐藏矩阵的第二值和显著特征矩阵的第二值,确定第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵,并根据预设条件进入下一次迭代的运算方式或者退出迭代的运算方式。

终端将确定的第一参数矩阵和第一偏移量矩阵进行存储,进而在步骤140、步骤150中使用。

第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵通过下述公式十三计算,

公式十三

其中,所述θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

前文所描述的为1次或多次迭代的运算方式中任意一次迭代的运算方式,迭代的运算方式可根据预设条件停止迭代运算或退出迭代运算。

在本发明实施例中,预设条件包括:终端在先已预设迭代运算的次数,当迭代运算已达到预设次数时,终端不再进行迭代运算,第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵为最后进行迭代运算的矩阵;或者,终端在先已预设参数阈值,当连续两次迭代运算后的第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵的变化范围小于参数阈值时,则终端不再进行迭代运算,第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵为最后进行迭代运算的矩阵。

可选地,在本发明实施例中,还包括终端对第一参数矩阵、第一偏移量矩阵和第一隐藏矩阵的初始值进行更新的步骤。通过该步骤,可使得终端在根据第一参数矩阵、第一偏移量矩阵得到第一输出矩阵的准确性,提高检测的准确率。

终端通过下述公式十四,更新第一参数矩阵的初始值、第一偏移量矩阵的初始值和第一隐藏矩阵的初始值,

公式十四

其中,θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述η为预设的学习率。

可以理解的是,终端还可设置对第一参数矩阵、第一偏移量矩阵、第一隐藏矩阵的初始值进行更新的更新条件,例如,终端设置更新次数,当达到更新次数时,终端不再进行更新,第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵的初始值为最后更新的矩阵;或者,终端设置更新阈值,当连续两次更新后的第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵的初始值的变化范围小于更新阈值时,则终端不再进行更新,第一隐藏矩阵、第一参数矩阵和第一偏移量矩阵的初始值为最后更新的矩阵。

通过应用本发明实施例提供的可切换深度学习网络结构的方法,终端获取表示物体特征的1个或多个第一输入特征矩阵,通过获取第一输入特征矩阵的第一输出矩阵。解决了现有技术中CNN网络结构计算过程复杂、计算量大单独使用该网络结构无法简单快速的获取到输出特征矩阵的问题,实现了简化计算过程,降低计算量,可快速地获取输入图像的输出矩阵。

再者,在本发明实施例中,终端在先对所需的参数进行训练、更新,也使得根据训练、更新的参数可快速、准确地获取输入图像的输出矩阵,提高了检测的准确率。

实施例二

为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。

下面以图2为例详细说明本发明实施例二提供的可切换深度学习网络结构的方法,图2为本发明实施例二提供的可切换深度学习网络结构的方法流程图,在本发明实施例中实施主体为具有处理器且该处理器可对获取、收集的图像进行处理的终端,所述终端具体为个人电脑(Personal Computer,简称:PC)、台式电脑等等。

本发明实施例提供的可切换深度学习网络结构的方法应用于图像处理领域。如图2所示,该实施例具体包括以下步骤:

步骤210、获取表示物体特征的一个或多个第一输入特征矩阵。

具体地,前述实施例一中步骤110已详细描述了终端获取表示物体特征的一个或多个输入特征矩阵的过程,在此不再复述。

步骤220、根据每个所述第一输入特征矩阵,确定与所述第一输入特征矩阵对应的多个显著特征矩阵的值和与每个所述显著特征矩阵对应的一个切换变量的估计值。

具体地,终端针对每个第一输入特征矩阵,确定出与第一输入特征矩阵对应的多个显著特征矩阵的值,并根据确定出的多个显著特征矩阵的值,确定与每个显著特征矩阵的值对应的1个切换变量的估计值。

进一步地,确定的显著特征矩阵的个数为预设的数值,例如,终端预设每个第一输入特征矩阵对应的显著特征矩阵的个数为10。可以理解的是,终端确定的切换变量的个数也为10个。

在本发明实施例中,所述显著特征矩阵的值由所述显著特征矩阵中各元素的概率值组成,也即是,终端通过确定显著特征矩阵中各元素的概率值进而确定显著特征矩阵的值,也就是确定显著特征矩阵。

更进一步地,终端先通过下述公式十四确定多个切换变量的估计值。

公式十四

终端通过公式十四计算多个切换变量的概率值,保留概率值最大的切换变量的值,将除概率值最大的切换变量之外的其他切换变量置0,并将保留的切换变量的值和置0后的切换变量的值作为切换变量的估计值;

或者,终端通过公式十四计算多个切换变量的概率值,将概率值最大的切换变量置1,将除概率值最大的切换变量之外的其他切换变量置0,并将置1后的切换变量的值和置0后的切换变量的值作为切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述y为预设的第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为第四隐藏矩阵的第k个元素;所述d为第三隐藏矩阵。

更近一步地,终端还通过前述实施例一中的公式三确定显著特征矩阵中各元素的概率值,在此不再复述。

步骤230、根据所述显著特征矩阵的值,分别将每个所述第一输入特征矩阵中的对应元素与对应的多个所述显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵。

具体地,前述实施例一中步骤130已详细描述了终端根据显著特征矩阵的值,分别将每个第一输入特征矩阵中的对应元素与对应的多个显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵的过程,在此不再复述。

步骤240、将每个所述第一结果矩阵与预设的或训练得到的第一参数矩阵进行相乘运算,得到多个第二结果矩阵。

具体地,前述实施例一中步骤140已详细描述了终端将每个第一结果矩阵与预设的或训练得到的第一参数矩阵进行相乘运算,得到多个第二结果矩阵的过程,在此不再复述。

步骤250、将每个所述第二结果矩阵与预设的或训练得到的第一偏移量矩阵进行相加运算,得到多个第三结果矩阵。

具体地,前述实施例一中步骤150已详细描述了终端将每个第二结果矩阵与预设的或训练得到的第一偏移量矩阵进行相加运算,得到多个第三结果矩阵的过程,在此不再复述。

步骤260、根据激活函数,对每个所述第三结果矩阵进行激活处理,得到多个激活矩阵。

具体地,前述实施例一中步骤160已详细描述了终端根据激活函数,对每个第三结果矩阵进行激活处理,得到多个激活矩阵的过程,在此不再复述。

步骤270、将每个所述激活矩阵中的每个元素与对应的一个所述切换变量的估计值进行相乘运算,得到多个切换矩阵。

具体地,前述实施例一中步骤170已详细描述了终端将每个激活矩阵中的每个元素与对应的一个切换变量的估计值进行相乘运算,得到多个切换矩阵的过程,在此不再复述。

步骤280、将多个所述切换矩阵中的对应元素进行累加求和运算,得到第一输出矩阵。

具体地,前述实施例一中步骤180已详细描述了终端将多个切换矩阵中的对应元素进行累加求和运算,得到第一输出矩阵的过程,在此不再复述。

步骤290、将所述第一输出矩阵矩阵与预设的或训练得到的第二参数矩阵进行相乘运算,得到第二输出矩阵。

具体地,第二输出矩阵通过下述公式十五计算,

公式十五

其中,所述U为第二参数矩阵。

可选地,在本发明实施例中,还包括终端对前述公式中涉及的第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵进行训练的步骤,通过对各个参数矩阵的训练,可快速、准确地获取第二输出矩阵,进而获取标识物体特征的输出矩阵,提高检测的准确率。具体步骤如下:

可以理解的是,在对上述参数矩阵进行训练的同时,终端还对第一隐藏矩阵和第三隐藏矩阵也进行训练。

获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数相同;

获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移矩阵和所述第三隐藏矩阵。

具体地,前述实施例一中已详细描述了终端获取训练样本的第二输入特征矩阵、对训练样本进行聚类处理的过程,在此不再复述。

终端获取第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值。可以理解的是,所述矩阵的初始值具体为矩阵中各元素的初始值。

在一种实现方式中,终端随机获取第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值;或者,

在另一种实现方式中,终端随机获取第二参数矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值,通过限制波尔兹曼机RBM训练模型,获取第一参数矩阵、第一偏移量矩阵和第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵

终端根据第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定第一隐藏矩阵、第一参数矩阵、第二参数矩阵、第一偏移矩阵和第三隐藏矩阵。

进一步地,在本发明实施例中,任意一次所述迭代的运算方式具体包括:

终端根据第一参数矩阵的初始值、第二参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值和第三隐藏矩阵的初始值和第四隐藏矩阵的初始值,确定与每个第二输入特征矩阵对应的所有切换变量的估计值;

终端通过下述公式十六,计算多个切换变量的概率值,保留概率值最大的切换变量的值,将除概率值最大的切换变量之外的其他切换变量置0,并将保留的切换变量的值和置0后的切换变量的值作为切换变量的估计值;

或者,通过下式公式十六,计算多个切换变量的概率值,将概率值最大的切换变量置1,将除概率值最大的切换变量之外的其他切换变量置0,并将置1后的切换变量的值和置0后的切换变量的值作为切换变量的估计值。

公式十六

其中,所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的所述第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为不大于所述K的正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为所述第四隐藏矩阵的第k个元素;所述d为所述第三隐藏矩阵。

终端根据切换变量的估计值、第一参数矩阵的初始值、第二参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值、第二隐藏矩阵的初始值、第三隐藏矩阵的初始值和第四隐藏矩阵的初始值,确定第二输入特征矩阵的概率值、显著特征矩阵的概率值、第二隐藏矩阵的概率值和第二输出矩阵的概率值;在本发明实施例中,各矩阵的概率值具体是指各矩阵中每个元素的概率值。

第二输入特征矩阵的概率值通过公式十计算;显著特征矩阵的概率值通过公式十一计算

第二隐藏矩阵的概率值通过下述公式十七计算,

p(hk=1|x,y,s,m)=τ(sk(Wk(xοmk)+bk+UTy)) 公式十七

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述UT为初始的所述第二参数矩阵的转置;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

输出特征矩阵的概率值通过下述公式十八计算,

公式十八

其中,所述sk为第k个所述切换变量的估计值;所述hk为预设的第k个所述第二隐藏矩阵;所述U为初始的所述第二参数矩阵;所述d为所述第三隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

终端根据切换变量的估计值、第二输入特征矩阵的概率值、显著特征矩阵的概率值、第二隐藏矩阵的概率值和第二输出矩阵的概率值,以随机生成的方式确定第二输入特征矩阵的第一值、显著特征矩阵的第一值、第二隐藏矩阵的第一值和第二输出矩阵的第一值。在本发明实施例中,各矩阵的第一值具体是指各矩阵中每个元素的第一值。

前述实施例一中已详细说明随机生成方式,在此不再复述。

终端根据切换变量的估计值、第一参数矩阵的初始值、第二参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值、第三隐藏矩阵的初始值、第四隐藏矩阵的初始值、第二输入特征矩阵的第一值、显著特征矩阵的第一值、第二隐藏矩阵的第一值和第二输出矩阵的第一值,以确定第一值同样的方法,确定第二输入特征矩阵的第二值、第二隐藏矩阵的第二值、显著特征矩阵的第二值和第二输出矩阵的第二值。在本发明实施例中,各矩阵的第二值具体是指各矩阵中每个元素的第二值。

在本发明实施例中,终端再次通过前述公式十、公式十一、公式十七、公式十八,确定各参数矩阵的概率值,利用概率随机规则确定第二输入特征矩阵的第二值、第二隐藏矩阵的第二值、显著特征矩阵的第二值和第二输出矩阵的第二值,其过程与前述相同,在此不再复述。

终端根据切换变量的估计值、第一参数矩阵的初始值、第二参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值、第三隐藏矩阵的初始值、第四隐藏矩阵的初始值、第二输入特征矩阵的第一值、第二隐藏矩阵的第一值、显著特征矩阵的第一值、第二输出矩阵的第一值、第二输入特征矩阵的第二值、第二隐藏矩阵的第二值、显著特征矩阵的第二值和第二输出矩阵的第二值,确定第一隐藏矩阵、第一参数矩阵、第二参数矩阵、第一偏移量矩阵和第三隐藏矩阵,并根据预设条件进入下一次迭代的运算方式或者退出迭代的运算方式。

终端将确定的第一参数矩阵、第二参数矩阵和第一偏移量矩阵进行存储,进而在步骤240、步骤250、步骤290中使用。

第一隐藏矩阵、第一参数矩阵、第二参数矩阵、第一偏移量矩阵和第三隐藏矩阵通过下述公式十九计算,

公式十九

其中,所述θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵和所述第三隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置,所述U为初始的所述第二参数矩阵;所述yT为预设的所述第二输出矩阵的转置;所述dT为所述第三隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述y0为所述第二输出矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二输出矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为所述显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

前文所描述的为1次或多次迭代的运算方式中任意一次迭代的运算方式,迭代的运算方式可根据预设条件停止迭代运算或退出迭代运算。

在本发明实施例中,预设条件包括:终端在先已预设迭代运算的次数,当迭代运算已达到预设次数时,终端不再进行迭代运算,第一隐藏矩阵、第一参数矩阵、第二参数矩阵、第一偏移量矩阵和第三隐藏矩阵为最后进行迭代运算的矩阵;或者,终端在先已预设参数阈值,当连续两次迭代运算后的第一隐藏矩阵、第一参数矩阵、第二参数矩阵、第一偏移量矩阵和第三隐藏矩阵的变化范围小于参数阈值时,则终端不再进行迭代运算,第一隐藏矩阵、第一参数矩阵、第二参数矩阵、第一偏移量矩阵和第三隐藏矩阵为最后进行迭代运算的矩阵。

可选地,在本发明实施例中,还包括终端对第一参数矩阵的初始值、第二参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值、第三隐藏矩阵的初始值和第四隐藏矩阵的初始值进行更新的步骤。通过该步骤,可使得终端在根据第一参数矩阵、第一偏移量矩阵、第二参数矩阵得到第一输出矩阵的准确性,提高检测的准确率。

终端通过下述公式二十,更新第一参数矩阵的初始值、第二参数矩阵的初始值、第一偏移量矩阵的初始值、第一隐藏矩阵的初始值和第三隐藏矩阵的初始值,

公式二十

其中,θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵中的任意一个;所述η为预设的学习率。

终端通过下述公式二十一,更新第四隐藏矩阵的初始值,

公式二十一

可以理解的是,终端还可设置对第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值进行更新的更新条件,例如,终端设置更新次数,当达到更新次数时,终端不再进行更新,第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值为最后更新的矩阵;或者,终端设置更新阈值,当连续两次更新后的第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值的变化范围小于更新阈值时,则终端不再进行更新,第一参数矩阵、第二参数矩阵、第一偏移量矩阵、第一隐藏矩阵、第三隐藏矩阵和第四隐藏矩阵的初始值为最后更新的矩阵。

通过应用本发明实施例提供的可切换深度学习网络结构的方法,终端获取表示物体特征的1个或多个第一输入特征矩阵,通过获取第一输入特征矩阵的第一输出矩阵。解决了现有技术中CNN网络结构计算过程复杂、计算量大单独使用该网络结构无法简单快速的获取到输出特征矩阵的问题,实现了简化计算过程,降低计算量,可快速地获取输入图像的输出矩阵。

再者,在本发明实施例中,终端在先对所需的参数进行训练、更新,也使得根据训练、更新的参数可快速、准确地获取输入图像的输出矩阵,提高了检测的准确率。

实施例三

相应地,本发明实施例三还提供了一种终端,用以实现前述实施例一提供的可切换深度学习网络结构的方法,如图3所示,所述终端包括:获取单元310、第一确定单元320以及运算单元330。

所述终端包括的获取单元310,用于获取表示物体特征的一个或多个第一输入特征矩阵;

第一确定单元320,用于根据每个所述第一输入特征矩阵,确定与所述第一输入特征矩阵对应的多个显著特征矩阵的值和与每个所述显著特征矩阵对应的一个切换变量的估计值;

运算单元330,用于根据所述显著特征矩阵的值,分别将每个所述第一输入特征矩阵中的对应元素与对应的多个所述显著特征矩阵中的对应元素进行相乘运算,得到多个第一结果矩阵;

所述运算单元330还用于,将每个所述第一结果矩阵与预设的或训练得到的第一参数矩阵进行相乘运算,得到多个第二结果矩阵;

所述运算单元330还用于,将每个所述第二结果矩阵与预设的或训练得到的第一偏移量矩阵进行相加运算,得到多个第三结果矩阵;

所述运算单元330还用于,根据激活函数,对每个所述第三结果矩阵进行激活处理,得到多个激活矩阵;

所述运算单元330还用于,将每个所述激活矩阵中的每个元素与对应的一个所述切换变量的估计值进行相乘运算,得到多个切换矩阵;

所述运算单元330还用于,将多个所述切换矩阵中的对应元素进行累加求和运算,得到第一输出矩阵。

所述第一确定单元320确定的与每个所述显著特征矩阵对应的一个切换变量的估计值具体为,

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述为初始的第k个第一参数矩阵的第j行的转置;所述bkj为初始的第k个第一偏移量矩阵的第j个元素;所述k、j为正整数,所述为初始的第k个第一隐藏矩阵的转置。

所述第一确定单元320确定的与每个所述显著特征矩阵对应的一个切换变量的估计值具体包括:

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为所述第一输入特征矩阵;所述y为预设的第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为第四隐藏矩阵的第k个元素;所述d为第三隐藏矩阵。

所述第一确定单元320确定的所述显著特征矩阵的值由所述显著特征矩阵中各元素的概率值组成;

所述显著特征矩阵中各元素的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为所述第一输入特征矩阵;所述hk为预设的第k个第二隐藏矩阵;所述为初始的第k个第一参数矩阵的转置;所述ck为初始的第k个第一隐藏矩阵;所述k为正整数;所述τ(·)为所述激活函数。

所述运算单元330使用的所述激活函数具体包括:双曲正切函数的绝对值、双曲正切函数、双切正弦函数、双切余弦函数、sigmoid函数中的任一函数。

所述终端还包括:第二确定单元340,用于确定所述第一参数矩阵、所述第一偏移矩阵和第一隐藏矩阵。

所述第二确定单元340具体用于,获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数、所述切换变量的个数相同;

获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移矩阵。

所述第二确定单元340使用的任意一次所述迭代的运算方式具体包括:

根据所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值,确定与每个所述第二输入特征矩阵对应的所有所述切换变量的估计值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值,确定所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值和第二隐藏矩阵的概率值;

根据所述切换变量的估计值、所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值和所述第二隐藏矩阵的概率值,以随机生成的方式确定所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值和第二隐藏矩阵的第一值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值和所述第二隐藏矩阵的第一值,以确定第一值同样的方法,确定所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值和所述显著特征矩阵的第二值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述第二隐藏矩阵的第一值、所述显著特征矩阵的第一值、所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值和所述显著特征矩阵的第二值,确定所述第一隐藏矩阵、所述第一参数矩阵和所述第一偏移量矩阵,并根据预设条件进入下一次所述迭代的运算方式或者退出所述迭代的运算方式。

所述第二确定单元340具体用于,随机获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值;或者,

通过限制波尔兹曼机RBM训练模型,获取所述第一参数矩阵、所述第一偏移量矩阵和第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

所述第二确定单元340确定的与每个所述显著特征矩阵对应的一个所述切换变量的估计值具体为,

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值

其中,所述x为预设的所述第二输入特征矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k、j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置。

所述第二确定单元340确定的所述第二输入特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

所述第二确定单元340确定的所述显著特征矩阵中各元素的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

所述第二确定单元340确定的所述第二隐藏矩阵的概率值具体为,

通过p(hk=1|x,s,m)=τ(sk(Wk(xοmk)+bk))计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

所述第二确定单元340确定的所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵具体为

通过计算;

其中,所述θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

所述终端还包括:第一更新单元350,用于通过更新所述第一参数矩阵的初始值、所述第一偏移量矩阵的初始值和所述第一隐藏矩阵的初始值;

其中,θ为所述第一参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵中的任意一个;所述η为预设的学习率。

进一步地,如图4所示,所述终端还可通过如图4所示的终端结构示意图实现。

所述运算单元330还用于,将所述第一输出矩阵矩阵与预设的或训练得到的第二参数矩阵进行相乘运算,得到第二输出矩阵。

第三确定单元410,用于确定所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、第一隐藏矩阵和第三隐藏矩阵。

所述第三确定单元410具体用于,获取训练样本的第二输入特征矩阵;

对所述训练样本进行聚类处理,得到K个类,所述K为预设的值,所述K的值与所述显著特征矩阵的个数相同;

获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值;

根据所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和第四隐藏矩阵的初始值,通过1次或多次迭代的运算方式确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移矩阵和所述第三隐藏矩阵。

所述第三确定单元410使用的任意一次所述迭代的运算方式具体包括:

根据所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值和所述第三隐藏矩阵的初始值和所述第四隐藏矩阵的初始值,确定与每个所述第二输入特征矩阵对应的所述所有切换变量的估计值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第二隐藏矩阵的初始值、所述第三隐藏矩阵的初始值和所述第四隐藏矩阵的初始值,确定所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值、所述第二隐藏矩阵的概率值和所述第二输出矩阵的概率值;

根据所述切换变量的估计值、所述第二输入特征矩阵的概率值、所述显著特征矩阵的概率值、所述第二隐藏矩阵的概率值和所述第二输出矩阵的概率值,以随机生成的方式确定所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值、第二隐藏矩阵的第一值和所述第二输出矩阵的第一值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第三隐藏矩阵的初始值、所述第四隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述显著特征矩阵的第一值、所述第二隐藏矩阵的第一值和所述第二输出矩阵的第一值,以确定第一值同样的方法确定所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值、所述显著特征矩阵的第二值和所述第二输出矩阵的第二值;

根据所述切换变量的估计值、所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值、所述第三隐藏矩阵的初始值、所述第四隐藏矩阵的初始值、所述第二输入特征矩阵的第一值、所述第二隐藏矩阵的第一值、所述显著特征矩阵的第一值、所述第二输出矩阵的第一值、所述第二输入特征矩阵的第二值、所述第二隐藏矩阵的第二值、所述显著特征矩阵的第二值和所述第二输出矩阵的第二值,确定所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵和所述第三隐藏矩阵,并根据预设条件进入下一次所述迭代的运算方式或者退出所述迭代的运算方式。

所述第三确定单元410具体用于,随机获取所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵和所述第四隐藏矩阵的初始值;或者,

随机获取所述第二参数矩阵、所述第三隐藏矩阵和所述第四隐藏矩阵的初始值,通过限制波尔兹曼机RBM训练模型,获取所述第一参数矩阵、所述第一偏移量矩阵和所述第一隐藏矩阵的初始值;

其中,所述第一隐藏矩阵为RBM可见层的偏移量矩阵,所述第一偏移量矩阵为RBM隐藏层的偏移量矩阵,所述第一参数矩阵为RBM的权值矩阵。

所述第三确定单元410确定的与每个所述第二输入特征矩阵对应的所有所述切换变量的估计值具体为,

通过计算多个所述切换变量的概率值,保留所述概率值最大的所述切换变量的值,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将保留的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

或者,通过计算多个所述切换变量的概率值,将所述概率值最大的所述切换变量置1,将除所述概率值最大的所述切换变量之外的其他所述切换变量置0,并将置1后的所述切换变量的值和置0后的所述切换变量的值作为所述切换变量的估计值;

其中,所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述为初始的第k个所述第一参数矩阵的第j行的转置;所述为初始的所述第二参数矩阵的第j列中所有元素形成的矩阵的转置;所述bkj为初始的第k个所述第一偏移量矩阵的第j个元素的初始值;所述k为不大于所述K的正整数,j为正整数,所述为初始的第k个所述第一隐藏矩阵的转置;所述λk为所述第四隐藏矩阵的第k个元素;所述d为所述第三隐藏矩阵。

所述第三确定单元410确定的所述第二输入特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述mk为预设的第k个所述显著特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

所述第三确定单元410确定的所述显著特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述hk为预设的第k个所述第二隐藏矩阵;所述为初始的第k个所述第一参数矩阵的转置;所述ck为初始的第k个所述第一隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

所述第三确定单元410确定的所述第二隐藏矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述x为预设的所述第二输入特征矩阵;所述y为预设的所述第二输出矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述UT为初始的所述第二参数矩阵的转置;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数;所述符号ο表示矩阵对应元素相乘。

所述第三确定单元410确定的所述输出特征矩阵的概率值具体为,

通过计算;

其中,所述sk为第k个所述切换变量的估计值;所述hk为预设的第k个所述第二隐藏矩阵;所述U为初始的所述第二参数矩阵;所述d为所述第三隐藏矩阵;所述k为不大于所述K的正整数;所述τ(·)为所述激活函数。

所述第三单元410确定的所述第一隐藏矩阵、所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵和所述第三隐藏矩阵具体为,

通过计算;

其中,所述θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵和所述第三隐藏矩阵中的任意一个;所述所述sk第k个所述切换变量的估计值;所述为预设的第k个所述第二隐藏矩阵的转置;所述x为预设的所述第二输入特征矩阵;所述mk为预设的第k个所述显著特征矩阵;所述Wk为初始的第k个所述第一参数矩阵;所述bk为初始的第k个所述第一偏移量矩阵;所述为初始的第k个所述第一隐藏矩阵的转置,所述U为初始的所述第二参数矩阵;所述yT为预设的所述第二输出矩阵的转置;所述dT为所述第三隐藏矩阵的转置;所述IE[·]为期望函数;所述x0为所述第二输入特征矩阵的第一值;所述y0为所述第二输出矩阵的第一值;所述h0为所述第二隐藏矩阵的第一值;所述m0为所述显著特征矩阵的第一值;所述为所述第二输入特征矩阵的第二值;所述为所述第二输出矩阵的第二值;所述为所述第二隐藏矩阵的第二值;所述为所述显著特征矩阵的第二值;所述k为不大于所述K的正整数;所述符号ο表示矩阵对应元素相乘。

所述终端还包括:第二更新单元420,用于通过更新所述第一参数矩阵的初始值、所述第二参数矩阵的初始值、所述第一偏移量矩阵的初始值、所述第一隐藏矩阵的初始值和所述第三隐藏矩阵的初始值;

其中,θ为所述第一参数矩阵、所述第二参数矩阵、所述第一偏移量矩阵、所述第一隐藏矩阵、所述第三隐藏矩阵中的任意一个;所述η为预设的学习率;

所述第二更新单元还用于,通过更新所述第四隐藏矩阵的初始值;

其中,所述sk第k个所述切换变量的估计值;所述λk为所述第四隐藏矩阵的第k个元素;所述k为不大于所述K的正整数;所述n为正整数。

因此,通过应用本发明实施例提供的终端,终端获取表示物体特征的1个或多个第一输入特征矩阵,通过获取第一输入特征矩阵的第一输出矩阵。解决了现有技术中CNN网络结构计算过程复杂、计算量大单独使用该网络结构无法简单快速的获取到输出特征矩阵的问题,实现了简化计算过程,降低计算量,可快速地获取输入图像的输出矩阵。

再者,在本发明实施例中,终端在先对所需的参数进行训练、更新,也使得根据训练、更新的参数可快速、准确地获取输入图像的输出矩阵,提高了检测的准确率。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1