import paddle
import paddle.nn.functional as F
import paddle.vision.transforms as transforms
import numpy as np
import matplotlib.pyplot as plt
print(paddle.__version__)
normalize = transforms.Normalize(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.120, 57.375], data_format='CHW')
transform = transforms.Compose([
transforms.RandomResizedCrop(32),
transforms.RandomHorizontalFlip(), transforms.Transpose(),
normalize,
])
cifar10_train = paddle.vision.datasets.Cifar10(mode='train', transform=transform)
cifar10_test = paddle.vision.datasets.Cifar10(mode='test', transform=transform)
print("加载完成")
net = paddle.nn.Sequential(paddle.nn.Conv2D(in_channels=3, out_channels=32, kernel_size=(3, 3)),
paddle.nn.MaxPool2D(kernel_size=2, stride=2),
paddle.nn.Conv2D(in_channels=32, out_channels=64, kernel_size=(3, 3)),
paddle.nn.MaxPool2D(kernel_size=2, stride=2),
paddle.nn.Conv2D(in_channels=64, out_channels=64, kernel_size=(3, 3)),
paddle.nn.Flatten(),
paddle.nn.Linear(in_features=1024, out_features=64),
paddle.nn.Linear(in_features=64, out_features=10)
)
paddle.summary(net, (1, 3, 32, 32))
model = paddle.Model(net)
# 为模型训练做准备,设置优化器,损失函数和精度计算方式
model.prepare(paddle.optimizer.Adam(learning_rate=0.001, parameters=model.parameters()),
paddle.nn.CrossEntropyLoss(),
paddle.metric.Accuracy())
# visualdl = paddle.callbacks.VisualDL(log_dir='visualdl_log')
model.fit(cifar10_train,
epochs=10,
shuffle=True, # 是否打乱样本集
batch_size=32,
verbose=1,
save_dir="D:/A.python文件/车辆识别", )
result = model.evaluate(cifar10_test, verbose=1)
print(result)
paddlepaddle实现Cifar10数据集分类任务
最新推荐文章于 2022-11-10 23:16:32 发布