tensorflow学习笔记(3)

这篇博客记录了21年9月8日关于使用TensorFlow进行卷积神经网络(CNN)的学习。内容涉及数据集重塑、64个3x3滤波器的应用以及最大池化层的实现。提供了详细代码链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

21年9月8日——CNN

import tensorflow as tf
print(tf.__version__)
mnist = tf.keras.datasets.fashion_mnist
(training_images, training_labels), (test_images, test_labels) = mnist.load_data()
training_images = training_images.reshape(60000, 28, 28, 1)
training_images = training_images / 255.0
test_images = test_images.reshape(10000, 28, 28, 1)
test_images = test_images / 255.0

model = tf.keras.models.Sequential([
  tf.keras.layers.Conv2D(64, (3, 3), activation = 'relu', input_shape = (28, 28, 1)),
  tf.keras.layers.MaxPooling2D(2, 2),
  tf.keras.layers.Conv2D(64, (3, 3), activation = 'relu',),
  tf.keras.layers.MaxPooling2D(2, 2),
  tf.keras.layers.Flatten(input_shape = (28, 28)),
  tf.keras.layers.Dense(128, activation = tf.nn.relu),
  tf.keras.layers.Dense(10, activation = tf.nn.softmax)]
)

model.compile(optimizer = tf.optimizers.Adam(),
              loss = 'sparse_categorical_crossentropy')
model.fit(training_images, training_labels, epochs = 5)
test_loss = model.evaluate(test_images, test_labels)
print(tf.__version__)

指的是显示tensorflow的版本。

training_images = training_images.reshape(60000, 28, 28, 1)

将数据集reshape为60000个训练集,28*28,灰度图像。

  tf.keras.layers.Conv2D(64, (3, 3), activation = 'relu', input_shape = (28, 28, 1)),
  tf.keras.layers.MaxPooling2D(2, 2),

64指的是64个滤波器,每个滤波器都是33的。池化层是取22, 4个当中取最大的(MAX)

代码:https://colab.research.google.com/drive/1tY8u4L1Yl-cHD5au7mccQxYHFhGyy4_s#scrollTo=ja317SIWUiZY

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值