什么是"参数"咖啡层?

时间:2017-01-10 21:14:12

标签: machine-learning neural-network deep-learning caffe

最近我在caffe中遇到了"Parameter"层 看起来这个图层将其内部参数blob暴露给" top"。

这层用于什么?
你能举个例子吗?

1 个答案:

答案 0 :(得分:3)

此图层是在拉取请求#2079中引入的,其中包含以下说明:

  

此图层只保存用户定义形状的参数blob,并将其作为单个顶部共享。

这正是您的预期。这是在问题#1474的背景下引入的,它基本上建议处理像普通底部斑点这样的参数。要说明为什么这有用,请考虑以下示例(取自问题#1474@longjon):

内部产品图层计算C = A * B,其中C是顶部blob(输出),B是底部blob,A 必须是一个参数blob。这是非常严格的限制,因为这使得不可能使用内部产品层来增加两个底部斑点之间的内部产品,例如,乘以两个输入矩阵。问题#1474建议做出根本改变:使参数独立于图层。相反,将它们视为正常的底部斑点。

作为朝这个方向迈出的第一步,引入了Parameter layer。这允许您定义一个新参数,然后可以将其输入另一个图层的底部。 2017年1月,在拉动请求#2166中提出了对应物 - 一种将参数作为底部斑点提供给图层的方法 - 尚未合并。 虽然尚未合并,但您仍然可以使用Parameter图层来定义新的可学习参数,以作为底部blob提供给其他图层。