使用MNIST数据集的转移学习代码中的“文件名”是什么?

时间:2018-08-23 07:46:28

标签: python csv keras classification mnist

链接https://www.analyticsvidhya.com/blog/2017/06/transfer-learning-the-art-of-fine-tuning-a-pre-trained-model/

中给出了使用Transfer Learning对MNIST数据集进行分类的代码。

我无法理解代码中的“文件名”是什么?另外,为什么在代码中两次加载数据集。

我已经看到了使用load_img()函数的代码,但是仍然无法正确运行给定代码,因为'filename'是未知的,因为它未在链接中定义。

MNIST数据集由两个文件“ mnist_train.csv”和“ mnist_test.csv”组成。有一些代码将.csv文件转换为图像,但是每个图像都有一个.csv文件。在这里,训练和测试中存在的所有图像只有两个.csv文件。

谢谢!

1 个答案:

答案 0 :(得分:1)

数据集采用csv格式,并具有列filename,其中包含图像名称。 我认为该文件具有以下结构:

   filename    label
0  file1.jpg    1
1  file2.jpg    8
2  file3.jpg    5
....

他们将csv文件读入train

train=pd.read_csv("R/Data/Train/train.csv")

,然后使用循环打开数据框中给出的每个文件

for i in range(len(train)):
temp_img=image.load_img(train_path+train['filename'][i],target_size=(224,224))

使用上述代码,图像被加载并调整大小

train_data = pd.read_csv('train.csv')
labels = []
pixels =[]
for index, row in train_data.iterrows():
    label=np.zeros(10)
    label[row["label"]]=1
    labels.append(label)
    pixels.append(row[1:])
labels = np.array(labels)
pixels = np.array(pixels)

我添加了用于从注释中发布的csv文件加载数据的代码