Tensorflow Keras中的输入层是如何定义的?

Tensorflow Keras中的输入层是如何定义的?,tensorflow,keras,neural-network,Tensorflow,Keras,Neural Network,所以我的任务是训练一个非常简单的神经网络。我们的数据集有6个特征输入网络,我们需要对其进行训练,然后预测一个输出数。教授给了我们代码,基本上告诉我们自己学习lol。所以我的疑问是,在下面的代码中,定义了神经网络的层,定义的第一个密集层(有50个节点的层)是对应于输入层,还是第一个隐藏层? 如果是第一个隐藏层,如何定义输入层 提前谢谢 def get_compiled_model(): model = tf.keras.Sequential([

所以我的任务是训练一个非常简单的神经网络。我们的数据集有6个特征输入网络,我们需要对其进行训练,然后预测一个输出数。教授给了我们代码,基本上告诉我们自己学习lol。所以我的疑问是,在下面的代码中,定义了神经网络的层,定义的第一个密集层(有50个节点的层)是对应于输入层,还是第一个隐藏层? 如果是第一个隐藏层,如何定义输入层

提前谢谢

def get_compiled_model():
          model = tf.keras.Sequential([      
            tf.keras.layers.Dense(50, activation='relu', input_shape=(6,)),     
            tf.keras.layers.Dense(30, activation='relu'),     
            tf.keras.layers.Dense(30, activation='relu'),     
            tf.keras.layers.Dense(1, activation='linear'),   
   ])

它是第一个隐藏层。输入层未定义为单独的层;它只是由输入数据组成,其大小由
input\u shape=(6,)
定义。第一个密集层是第一个隐藏层。Keras自动在顺序对象中提供输入层,单位数量由
input\u shape
input\u dim
定义

还可以按如下方式显式声明输入层:

def get_compiled_model():
    model = tf.keras.Sequential([
        tf.keras.layers.InputLayer((6,)),
        tf.keras.layers.Dense(50, activation='relu'),     
        tf.keras.layers.Dense(30, activation='relu'),     
        tf.keras.layers.Dense(30, activation='relu'),     
        tf.keras.layers.Dense(1, activation='linear'),   
    ])

第一个
密集的
层是第一个隐藏层。Keras自动在
顺序
对象中提供输入层,单位数量由
input\u shape
input\u dim
定义。