BloodMNIST数据集在vgg网络下的表现
一、获取数据集
下载和读取数据集
在MedMNIST网站中的zenodo数据库中下载BloodMNIST数据集,该数据集是在显微镜下得到的,数据集有八种标签,因此可以用于多分类任务。
下载数据集后可以发现数据集格式是.npz,其是一个numpy格式的压缩文件,将文件放于项目文件同一文件夹中,使用np.load()加载数据集。
datas = np.load('bloodmnist.npz')
print(datas.files)
[‘train_images’, ‘train_labels’, ‘val_images’, ‘val_labels’, ‘test_images’, ‘test_labels’]
数据集已经被分成相应的文件,声明变量获取所需文件(这里只简单使用了训练集和测试集)
train_images = (datas['train_images'])
train_labels = (datas['train_labels'])
......
创建训练数据和测试数据迭代器
首先查看train_X 就是训练数据的大小形状
为了让数据在网络中传递更有效和方便计算,将数据表示范围限制在0到1之间。正确的操作方法应该是我们首先将数据类型转化为float,再将其/255。
之后使用Dataset里面的from_tensor_slieces()
函数创建迭代器。
train_X=train_images
train_y=train_labels
train_X = train_X.astype(np.float)
train_X /= 255.0
train_iter = tf.data.Dataset.