tensorflow笔记【5】深度学习-自制数据集
tensorflow笔记【5】深度学习-自制数据集
前言
自制数据集帮助了解数据集的制作过程。
一、生成数据集方法
1.准备图片数据和每张图片对应的标签数据,放在训练集和测试集文件夹
代码如下:
# 2.自制数据集---generateds(图片路径,标签文件) # 2.1加载训练集,测试集图片,标签文件;定义数据集输入特征和标签存储文件 train_path = mnist_image_label/mnist_train_jpg_11/ train_txt = mnist_image_label/mnist_train_jpg_11.txt test_path = mnist_image_label/mnist_test_jpg_3/ test_txt = mnist_image_label/mnist_test_jpg_3.txt # 2.2定义自制数据集函数----generateds(图片路径,标签文件) def generateds(path, txt): f = open(txt, r) contents = f.readlines() f.close() x, y_ = [], [] for content in contents: value = content.split( ) img_path = path + value[0] img = Image.open(img_path) img = np.array(img.convert(L)) img = img / 255 x.append(img) y_.append(value[1]) print(loading: + content) x = np.array(x) y_ = np.array(y_) y_ = y_.astype(np.int64) return x, y_ # 2.3判断数据集是否制作完成---制作:直接读取;未制作:调用generateds()制作数据集 print(---------------Generate Datasets------------) x_train, y_train = generateds(train_path, train_txt) x_test, y_test = generateds(test_path, test_txt)
2.搭建网络训练
代码如下:
# 3.搭建网络模型-----Sequential model = tf.keras.Sequential([tf.keras.layers.Flatten(), tf.keras.layers.Dense(128, activation=relu), tf.keras.layers.Dense(10, activation=softmax) ]) # 4.为网络模型配置训练方法----compile model.compile(optimizer=adam, loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False), metrics=[sparse_categorical_accuracy] ) # 5。传入数据集,训练网络----fit model.fit(x_train, y_train, batch_size=32, epochs=50, validation_data=(x_test, y_test), validation_freq=1) # 6.打印网络模型和参数----summary model.summary()
总结
图片尺寸不一致时,加上
img.resize(())
上一篇:
JS实现多线程数据分片下载
下一篇:
智能家居的发展简史,未来的发展方向有哪些