当前位置: 首页 > 知识库问答 >
问题:

keras层中的参数适用于哪里?

楚德辉
2023-03-14

我试图掌握神经网络的基础知识,并努力理解keras层。

从tensorflow的教程中获取以下代码:

model = keras.Sequential([
    keras.layers.Flatten(input_shape=(28, 28)),
    keras.layers.Dense(128, activation=tf.nn.relu),
    keras.layers.Dense(10, activation=tf.nn.softmax)
])

所以这个网络有3层?第一个只是代表像素值的28*28个节点。第二个是隐藏层,它从第一个节点中获取加权和,应用relu,然后将这些发送到10个输出层,这些输出层被软最大化?

但该模型似乎需要不同的层输入:

model = keras.Sequential([
layers.Dense(64, activation=tf.nn.relu, input_shape=[len(train_dataset.keys())]),
layers.Dense(64, activation=tf.nn.relu),
layers.Dense(1)
  ])

为什么输入层现在既有一个input\u形状,又有一个值64?我了解到第一个参数指定了第二层中的节点数,但这似乎与第一个示例中的代码不符。此外,为什么输入层有激活?这是否只是在值进入网络之前重新计算它们?

另外,关于激活函数,为什么softmax和relu被视为替代品?我认为relu适用于单个节点的所有输入,而softmax作用于跨层的所有节点的输出?

任何帮助都非常感谢!

第一个例子来自:https://www.tensorflow.org/tutorials/keras/basic_classification

第二个例子来自:https://www.tensorflow.org/tutorials/keras/basic_regression

共有1个答案

郭星文
2023-03-14

基本上,Keras中有两种类型的API:顺序API和函数APIhttps://keras.io/getting-started/sequential-model-guide/

在顺序API中,您不会明确引用输入层https://keras.io/layers/core/#input

这就是为什么需要添加一个input\u形状来指定第一层的尺寸,

更多信息,请参见https://jovianlin.io/keras-models-sequential-vs-functional/

 类似资料:
  • 所有的Keras层对象都有如下方法: layer.get_weights():返回层的权重(numpy array) layer.set_weights(weights):从numpy array中将权重加载到该层中,要求numpy array的形状与* layer.get_weights()的形状相同 layer.get_config():返回当前层配置信息的字典,层也可以借由配置信息重构 fr

  • 所有的Keras层对象都有如下方法: layer.get_weights():返回层的权重(numpy array) layer.set_weights(weights):从numpy array中将权重加载到该层中,要求numpy array的形状与* layer.get_weights()的形状相同 layer.get_config():返回当前层配置信息的字典,层也可以借由配置信息重构: l

  • The Layers API of TensorFlow.js is modeled after Keras. As you might have noticed from the tutorials and examples, we strive to make the Layers API as similar to Keras as reasonable given the differen

  • 我正试图跟随这篇关于如何计算每层参数的帖子,有人能给我一个提示吗? 这是我的的输出: 这是模型:

  • 所有 Keras 网络层都有很多共同的函数: layer.get_weights(): 以含有Numpy矩阵的列表形式返回层的权重。 layer.set_weights(weights): 从含有Numpy矩阵的列表中设置层的权重(与get_weights的输出形状相同)。 layer.get_config(): 返回包含层配置的字典。此图层可以通过以下方式重置: layer = Dense(32

  • 我试图在一个测试中模拟。我在网上找到了一些人们也这么做的例子。 一个例子来自sping-data-elasticsearch,另一个来自一些教程。 这是我自己的例子。 不幸的是,我看到了一些警告。以下是我得到的: 网络客户。RequestHeaderUrispec是原始类型。对泛型类型WebClient的引用。RequestHeaderUrispec应该参数化 当我更改代码并向添加通配符时,我会收