tf.keras.models.Sequential() 和 tf.keras.Sequential() 有什么区别?

问题描述 投票:0回答:1

我刚刚开始使用张量流构建神经网络,不同的在线资源有不同的创建方法。我注意到的一件事是顺序 API 是如何实现的。有些使用 tf.keras.Sequential() 而另一些使用 tf.keras.models.Sequential()?谁能告诉我其中一种的区别以及何时使用另一种?

我尝试在这种模式下使用它们,但它们都提供了良好的结果。

model = tf.keras.models.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
model.fit(x_train, y_train, epochs=50)
model.evaluate(x_test, y_test)
model = tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
model.fit(x_train, y_train, epochs=50)
model.evaluate(x_test, y_test)
python tensorflow keras
1个回答
0
投票

这里有几种分析函数和类并查看它们导入来源的方法。

import tensorflow as tf

# let's analyse both classes
obj1 = tf.keras.models.Sequential
obj2 = tf.keras.Sequential

# we can check their ids - if the ids are the same than it is the same object
print (id(obj1))
print (id(obj2))

# this will print information about class origin
print (tf.keras.models.Sequential) 
# <class 'keras.src.models.sequential.Sequential'>

print (tf.keras.Sequential)
# <class 'keras.src.models.sequential.Sequential'>
© www.soinside.com 2019 - 2024. All rights reserved.