tensorflow - Julia - tf.layers.dense 的等价物
问题描述
Julia 中是否存在创建密集层的函数?
相当于 Python 中的函数tf.layers.dense?
tf.layers.dense(
inputs,
units,
activation=None,
use_bias=True,
kernel_initializer=None,
bias_initializer=tf.zeros_initializer(),
kernel_regularizer=None,
bias_regularizer=None,
activity_regularizer=None,
kernel_constraint=None,
bias_constraint=None,
trainable=True,
name=None,
reuse=None
)
解决方案
不,python tensorflow 中的Layers 模块是一个contrib模块。这意味着(除其他外),它通常不会在 TensorFlow 绑定中用于除 Python 之外的任何语言(因为它不对应于 . 中的操作libtensorflow.so
。)
然而,密集层可以从 tensorflow 中的第一原则轻松实现。
一个简单的密集层是:
using TensorFlow
@tf begin
X=placeholder(Float32; shape=[-1, 10])
W = get_variable((10, 100), Float32)
b = get_variable(100, Float32)
Y = nn.relu(X*W + b)
end
因此,您可以从那里构建自己的 Dense 函数来帮助您入门,例如
using TensorFlow: get_shape
function dense(inputs::Tensor, units::Int, activation=identity, name=randstring())
in_dims = get_shape(inputs, 2)
W = get_variable("W_$name", (in_dims, units), Float32)
b = get_variable("b_$name", units, Float32)
activation(inputs*W + b)
end
这可以很容易地扩展到做任何你需要的事情。
推荐阅读
- python - 在神经网络中获取维度错误
- firebase - 在服务器端的 Firebase 上注册设备(Firebase Admin API)
- javascript - 如何使用javascript中的时区检查打开到关闭时间是否已经过去
- linux - 使用 chmod 400 时无法访问文件
- mysql - 错误 1054 - where 子句中的未知列
- ios - 使用与 App ID 相同的服务 ID 标识符
- amazon-web-services - 当 AWS 胶水 ETL 作业中的 glueContext.write_dynamic_frame.from_jdbc_conf 返回错误时会发生什么?
- css - 图标应右对齐且响应迅速
- javascript - 如何从字符串中删除除第一个字符外的特殊字符集
- python - 对列表中的相似元素进行分组