Last Terran! 2021-05-02 22:32 采纳率: 0%
浏览 143

tenserflow fashion-mnist中训练数目和训练集数目不符

import tensorflow as tf
import matplotlib.pyplot as plt

fashion_mnist = tf.keras.datasets.fashion_mnist
(train_images,train_labels),(test_images,test_labels) = fashion_mnist.load_data()  #导入数据

plt.imshow(train_images[0])
#print(train_images[0])
#print(train_labels[0])
plt.show()
print(train_images.shape)
print(test_images.shape)

train_images = train_images/255.0
test_images = test_images/255.0

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

model.compile(optimizer = 'Adam',loss='sparse_categorical_crossentropy')
model.fit(train_images,train_labels,epochs=5)
model.evaluate(test_images,test_labels)

如下是我的结果: 

 

用shape测试过训练集是60000和验证集是10000,但最后训练数目和验证数目为1875和313,为原来的1/32,为啥???? 

 

  • 写回答

1条回答 默认 最新

  • GitCode 官方 企业官方账号 2021-05-04 18:47
    关注

    先说训练集,这里需要引入batch_size的概念,意思就是每次训练的批次大小为多少,60000 = 1875 x 32(这个就是batch_size),意思就是每次训练的批次大小为32,那么60000大小的数据集,总共就是1875个批次

    再说验证集,312 x 32(这个就是batch_size) + 16(最后一个批次的大小) = 10000,意思就是每次验证的批次大小为32,那么10000大小的数据集,总共就是312+1个批次,最后一个批次大小为16(tensorflow有两种选择,通过设置参数选择是否丢弃这个批次)

    评论

报告相同问题?

悬赏问题

  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题
  • ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档
  • ¥50 C++五子棋AI程序编写
  • ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。