Keras有一个激活层。
似乎这段代码:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "itemRowCell", for: indexPath) as! ItemRowCell
let (description, quantity) = self.currentItems[indexPath.row]
cell.itemDescription.text = description
cell.quantity.text = String(quantity)
return cell
}
和这一个:
model.add(Convolution2D(64, 3, 3))
model.add(Activation('relu'))
产生相同的结果。
此附加激活图层的目的是什么?
[Upgr:2017-04-10]上述两种情况的表现是否存在差异?
答案 0 :(得分:8)
正如您所看到的,两种方法都是等价的。我将向您展示一些可能有助于此层的方案:
Activation
,这是不可能的。softmax
作为最终激活来训练您的网络 - 但最终 - 您希望拥有所谓的logits
- 反softmax
功能。没有可能困难的额外Activation
层。Activation
它是不可能的。正如您所看到的那样 - 缺少Activation
会在激活之前输出图层,最终激活会强烈耦合。这就是Activation
可能非常有用的原因 - 因为它打破了这种联系。