如何使用Tensorflow为MNIST数据集定义模型?


Tensorflow是由Google提供的机器学习框架。它是一个开源框架,与Python结合使用,用于实现算法、深度学习应用程序等等。它拥有优化技术,可以帮助快速执行复杂的数学运算。这是因为它使用了NumPy和多维数组。这些多维数组也称为“张量”。该框架支持使用深度神经网络。

可以使用以下代码行在Windows上安装“tensorflow”包:

pip install tensorflow

张量是TensorFlow中使用的数据结构。它有助于连接流图中的边。这个流图被称为“数据流图”。张量不过是多维数组或列表。

Keras是一个用Python编写的深度学习API。它是一个高级API,具有高效的接口,可以帮助解决机器学习问题。它运行在Tensorflow框架之上。它的构建是为了帮助快速进行实验。Keras已经存在于Tensorflow包中。可以使用以下代码行访问它。

import tensorflow
from tensorflow import keras

我们使用Google Colaboratory运行以下代码。Google Colab或Colaboratory有助于在浏览器上运行Python代码,无需任何配置,并且可以免费访问GPU(图形处理单元)。Colaboratory构建在Jupyter Notebook之上。以下是代码片段:

示例

print("Defining a sequential model")
def create_model():
   model = tf.keras.models.Sequential([
      keras.layers.Dense(512, activation='relu', input_shape=(784,)),
      keras.layers.Dropout(0.2),
      keras.layers.Dense(10)
   ])

   model.compile(optimizer='adam',
      loss=tf.losses.SparseCategoricalCrossentropy(from_logits=True),
      metrics=[tf.metrics.SparseCategoricalAccuracy()])

   return model

print("Creating a model instance")
model = create_model()

print("Displaying the architecture of the sequential model")
model.summary()

代码来源 - https://tensorflowcn.cn/tutorials/keras/save_and_load

输出

解释

  • 使用Keras创建一个顺序模型。

  • 创建“密集”层。

  • 编译此模型。

  • 创建此模型的实例。

  • 使用“summary”方法在屏幕上显示有关此模型的详细信息。

更新于: 2021年1月20日

122次查看

开启你的职业生涯

通过完成课程获得认证

开始学习
广告