【2020中国华录杯】吸烟打电话检测Baseline

2020中国华录杯·数据湖算法大赛—定向算法赛(吸烟打电话检测)

!pip install paddlex
!pip install imgaug
# 设置工作路径
import os
os.chdir('/home/aistudio/work/')
os.mkdir('./raw_data')
os.mkdir('./new_data')
os.mkdir('./new_data/train/')
os.mkdir('./new_data/test/')
# 解压代码
!unzip /home/aistudio/data/data49342/data.zip -d /home/aistudio/work/raw_data/
import cv2
import numpy as np

count = 0

def PaddlingImage(path):
    global count
    img = cv2.imread(path)
    h, w = img.shape[:2]
    if h > w * 1.5:
        f = img[:int(w*1.2), :]
        count += 1
    else:
        f = img
    return f
labels = sorted(os.listdir('raw_data/train'))
with open('labels.txt', 'w') as f:
    for v in labels:
        f.write(v.split('_')[0]+'\n')
print(labels)
['calling_images', 'normal_images', 'smoking_images']
from tqdm import tqdm

base = 'raw_data/train'

datas = []

for i, cls_fold in enumerate(labels):
    cls_base = os.path.join(base, cls_fold)
    files = os.listdir(cls_base)
    for pt in tqdm(files):
        img = os.path.join(cls_base, pt)
        pad = PaddlingImage(img)
        new_pt = os.path.join('train/', pt)
        cv2.imwrite('new_data/'+new_pt, pad)
        info = new_pt + ' ' + str(i) + '\n'
        datas.append(info)

print(info)
print('{}/{}'.format(count, len(datas)))

split = 0.9
train_num = int(len(datas) * split)
eval_num = len(datas) - train_num
print('train:', train_num)
print('eval:', eval_num)

np.random.seed(120)
np.random.shuffle(datas)

with open('train_list.txt', 'w') as f:
    for v in datas[:train_num]:
        f.write(v)

with open('eval_list.txt', 'w') as f:
    for v in datas[train_num:]:
        f.write(v)
100%|██████████| 1227/1227 [00:04<00:00, 268.45it/s]
100%|██████████| 166/166 [00:00<00:00, 861.11it/s]
100%|██████████| 2168/2168 [00:12<00:00, 168.20it/s]

train/2141.jpg 2

622/3561
train: 3204
eval: 357
from paddlex.cls import transforms
import paddlex as pdx
import imgaug.augmenters as iaa

train_transforms = transforms.Compose([
    transforms.ResizeByShort(short_size=230),
    transforms.RandomCrop(224),
    transforms.RandomHorizontalFlip(),
    transforms.RandomDistort(),
    transforms.Normalize()
])

eval_transforms = transforms.Compose([
    transforms.ResizeByShort(short_size=224),
    transforms.CenterCrop(224),
    transforms.Normalize()
])
base = 'new_data'

train_dataset = pdx.datasets.ImageNet(
    data_dir=base,
    file_list='train_list.txt',
    label_list='labels.txt',
    transforms=train_transforms,
    shuffle=True)

eval_dataset = pdx.datasets.ImageNet(
    data_dir=base,
    file_list='eval_list.txt',
    label_list='labels.txt',
    transforms=eval_transforms,
    shuffle=False)
2020-08-14 15:11:32 [INFO]	Starting to read file list from dataset...
2020-08-14 15:11:32 [INFO]	3204 samples in file train_list.txt
2020-08-14 15:11:32 [INFO]	Starting to read file list from dataset...
2020-08-14 15:11:32 [INFO]	357 samples in file eval_list.txt
model_name = 'ResNet101_vd'
num_classes = len(train_dataset.labels)
model = pdx.cls.ResNet101_vd(num_classes=num_classes)
model.train(num_epochs=100,
            train_dataset=train_dataset,
            eval_dataset=eval_dataset,
            train_batch_size=64,
            lr_decay_epochs=[40, 80],
            learning_rate=2e-4,
            save_dir='model',
            log_interval_steps=100,
            save_interval_epochs=20)
2020-08-14 15:11:42 [INFO]	Connecting PaddleHub server to get pretrain weights...
2020-08-14 15:11:45 [INFO]	Load pretrain weights from model/pretrain/ResNet101_vd.
2020-08-14 15:11:45 [WARNING]	[SKIP] Shape of pretrained weight model/pretrain/ResNet101_vd/fc_0.w_0 doesn't match.(Pretrained: (2048, 1000), Actual: (2048, 3))
2020-08-14 15:11:45 [WARNING]	[SKIP] Shape of pretrained weight model/pretrain/ResNet101_vd/fc_0.b_0 doesn't match.(Pretrained: (1000,), Actual: (3,))


2020-08-14 15:11:45,378-WARNING: model/pretrain/ResNet101_vd.pdparams not found, try to load model file saved with [ save_params, save_persistables, save_vars ]


2020-08-14 15:11:46 [INFO]	There are 530 varaibles in model/pretrain/ResNet101_vd are loaded.
2020-08-14 15:12:10 [INFO]	[TRAIN] Epoch 1 finished, loss=0.872781, acc1=0.593437, acc3=1.0, lr=0.0002 .
2020-08-14 15:12:32 [INFO]	[TRAIN] Epoch=2/100, Step=50/50, loss=0.775406, acc1=0.484375, acc3=1.0, lr=0.0002, time_each_step=0.37s, eta=0:39:16
2020-08-14 15:12:32 [INFO]	[TRAIN] Epoch 2 finished, loss=0.798228, acc1=0.609062, acc3=1.0, lr=0.0002 .
2020-08-14 15:13:01 [INFO]	[TRAIN] Epoch 3 finished, loss=0.787145, acc1=0.613125, acc3=1.0, lr=0.0002 .
2020-08-14 15:13:25 [INFO]	[TRAIN] Epoch=4/100, Step=50/50, loss=0.639058, acc1=0.65625, acc3=1.0, lr=0.0002, time_each_step=0.37s, eta=0:47:15
2020-08-14 15:13:25 [INFO]	[TRAIN] Epoch 4 finished, loss=0.774129, acc1=0.614688, acc3=1.0, lr=0.0002 .
2020-08-14 15:13:49 [INFO]	[TRAIN] Epoch 5 finished, loss=0.77001, acc1=0.618438, acc3=1.0, lr=0.0002 .
2020-08-14 15:14:12 [INFO]	[TRAIN] Epoch=6/100, Step=50/50, loss=0.684268, acc1=0.671875, acc3=1.0, lr=0.0002, time_each_step=0.39s, eta=0:37:45
2020-08-14 15:14:12 [INFO]	[TRAIN] Epoch 6 finished, loss=0.76205, acc1=0.619375, acc3=1.0, lr=0.0002 .
2020-08-14 15:14:36 [INFO]	[TRAIN] Epoch 7 finished, loss=0.762282, acc1=0.61125, acc3=1.0, lr=0.0002 .
2020-08-14 15:15:01 [INFO]	[TRAIN] Epoch=8/100, Step=50/50, loss=0.655588, acc1=0.609375, acc3=1.0, lr=0.0002, time_each_step=0.4s, eta=0:36:54
2020-08-14 15:15:01 [INFO]	[TRAIN] Epoch 8 finished, loss=0.750704, acc1=0.6275, acc3=1.0, lr=0.0002 .
2020-08-14 15:15:25 [INFO]	[TRAIN] Epoch 9 finished, loss=0.753532, acc1=0.624375, acc3=1.0, lr=0.0002 .
2020-08-14 15:15:51 [INFO]	[TRAIN] Epoch=10/100, Step=50/50, loss=0.71359, acc1=0.640625, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:36:28
2020-08-14 15:15:51 [INFO]	[TRAIN] Epoch 10 finished, loss=0.747947, acc1=0.629062, acc3=1.0, lr=0.0002 .
2020-08-14 15:16:15 [INFO]	[TRAIN] Epoch 11 finished, loss=0.749648, acc1=0.626562, acc3=1.0, lr=0.0002 .
2020-08-14 15:16:39 [INFO]	[TRAIN] Epoch=12/100, Step=50/50, loss=0.771269, acc1=0.65625, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:35:38
2020-08-14 15:16:39 [INFO]	[TRAIN] Epoch 12 finished, loss=0.742428, acc1=0.6325, acc3=1.0, lr=0.0002 .
2020-08-14 15:17:02 [INFO]	[TRAIN] Epoch 13 finished, loss=0.741229, acc1=0.627813, acc3=1.0, lr=0.0002 .
2020-08-14 15:17:25 [INFO]	[TRAIN] Epoch=14/100, Step=50/50, loss=0.783685, acc1=0.59375, acc3=1.0, lr=0.0002, time_each_step=0.39s, eta=0:33:40
2020-08-14 15:17:25 [INFO]	[TRAIN] Epoch 14 finished, loss=0.738079, acc1=0.644687, acc3=1.0, lr=0.0002 .
2020-08-14 15:17:53 [INFO]	[TRAIN] Epoch 15 finished, loss=0.739008, acc1=0.626562, acc3=1.0, lr=0.0002 .
2020-08-14 15:18:19 [INFO]	[TRAIN] Epoch=16/100, Step=50/50, loss=0.648112, acc1=0.640625, acc3=1.0, lr=0.0002, time_each_step=0.4s, eta=0:39:21
2020-08-14 15:18:19 [INFO]	[TRAIN] Epoch 16 finished, loss=0.730248, acc1=0.640312, acc3=1.0, lr=0.0002 .
2020-08-14 15:18:44 [INFO]	[TRAIN] Epoch 17 finished, loss=0.725165, acc1=0.6475, acc3=1.0, lr=0.0002 .
2020-08-14 15:19:10 [INFO]	[TRAIN] Epoch=18/100, Step=50/50, loss=0.647713, acc1=0.65625, acc3=1.0, lr=0.0002, time_each_step=0.39s, eta=0:35:14
2020-08-14 15:19:10 [INFO]	[TRAIN] Epoch 18 finished, loss=0.720243, acc1=0.653437, acc3=1.0, lr=0.0002 .
2020-08-14 15:19:34 [INFO]	[TRAIN] Epoch 19 finished, loss=0.727277, acc1=0.6375, acc3=1.0, lr=0.0002 .
2020-08-14 15:19:58 [INFO]	[TRAIN] Epoch=20/100, Step=50/50, loss=0.719195, acc1=0.65625, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:32:53
2020-08-14 15:19:58 [INFO]	[TRAIN] Epoch 20 finished, loss=0.721341, acc1=0.63125, acc3=1.0, lr=0.0002 .
2020-08-14 15:19:58 [INFO]	Start to evaluating(total_samples=357, total_steps=6)...


  0%|          | 0/6 [00:00<?, ?it/s]share_vars_from is set, scope is ignored.
100%|██████████| 6/6 [00:07<00:00,  1.28s/it]


2020-08-14 15:20:05 [INFO]	[EVAL] Finished, Epoch=20, acc1=0.571429, acc3=1.0 .
2020-08-14 15:20:10 [INFO]	Model saved in model/best_model.
2020-08-14 15:20:14 [INFO]	Model saved in model/epoch_20.
2020-08-14 15:20:14 [INFO]	Current evaluated best model in eval_dataset is epoch_20, acc1=0.5714285714285714
2020-08-14 15:20:38 [INFO]	[TRAIN] Epoch 21 finished, loss=0.723029, acc1=0.633125, acc3=1.0, lr=0.0002 .
2020-08-14 15:21:04 [INFO]	[TRAIN] Epoch=22/100, Step=50/50, loss=0.687961, acc1=0.625, acc3=1.0, lr=0.0002, time_each_step=0.39s, eta=0:32:47
2020-08-14 15:21:04 [INFO]	[TRAIN] Epoch 22 finished, loss=0.716516, acc1=0.639375, acc3=1.0, lr=0.0002 .
2020-08-14 15:21:31 [INFO]	[TRAIN] Epoch 23 finished, loss=0.712265, acc1=0.655625, acc3=1.0, lr=0.0002 .
2020-08-14 15:21:56 [INFO]	[TRAIN] Epoch=24/100, Step=50/50, loss=0.694507, acc1=0.703125, acc3=1.0, lr=0.0002, time_each_step=0.4s, eta=0:34:52
2020-08-14 15:21:56 [INFO]	[TRAIN] Epoch 24 finished, loss=0.71152, acc1=0.649375, acc3=1.0, lr=0.0002 .
2020-08-14 15:22:20 [INFO]	[TRAIN] Epoch 25 finished, loss=0.708778, acc1=0.659063, acc3=1.0, lr=0.0002 .
2020-08-14 15:22:45 [INFO]	[TRAIN] Epoch=26/100, Step=50/50, loss=0.736247, acc1=0.625, acc3=1.0, lr=0.0002, time_each_step=0.4s, eta=0:30:44
2020-08-14 15:22:45 [INFO]	[TRAIN] Epoch 26 finished, loss=0.706432, acc1=0.654375, acc3=1.0, lr=0.0002 .
2020-08-14 15:23:09 [INFO]	[TRAIN] Epoch 27 finished, loss=0.705779, acc1=0.657188, acc3=1.0, lr=0.0002 .
2020-08-14 15:23:33 [INFO]	[TRAIN] Epoch=28/100, Step=50/50, loss=0.578104, acc1=0.734375, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:30:10
2020-08-14 15:23:33 [INFO]	[TRAIN] Epoch 28 finished, loss=0.703974, acc1=0.645938, acc3=1.0, lr=0.0002 .
2020-08-14 15:23:57 [INFO]	[TRAIN] Epoch 29 finished, loss=0.701964, acc1=0.653437, acc3=1.0, lr=0.0002 .
2020-08-14 15:24:21 [INFO]	[TRAIN] Epoch=30/100, Step=50/50, loss=0.698784, acc1=0.59375, acc3=1.0, lr=0.0002, time_each_step=0.39s, eta=0:29:4
2020-08-14 15:24:21 [INFO]	[TRAIN] Epoch 30 finished, loss=0.7014, acc1=0.649688, acc3=1.0, lr=0.0002 .
2020-08-14 15:24:46 [INFO]	[TRAIN] Epoch 31 finished, loss=0.692884, acc1=0.663437, acc3=1.0, lr=0.0002 .
2020-08-14 15:25:10 [INFO]	[TRAIN] Epoch=32/100, Step=50/50, loss=0.684466, acc1=0.65625, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:29:46
2020-08-14 15:25:10 [INFO]	[TRAIN] Epoch 32 finished, loss=0.691334, acc1=0.6575, acc3=1.0, lr=0.0002 .
2020-08-14 15:25:38 [INFO]	[TRAIN] Epoch 33 finished, loss=0.685955, acc1=0.65875, acc3=1.0, lr=0.0002 .
2020-08-14 15:26:04 [INFO]	[TRAIN] Epoch=34/100, Step=50/50, loss=0.726775, acc1=0.625, acc3=1.0, lr=0.0002, time_each_step=0.4s, eta=0:31:46
2020-08-14 15:26:04 [INFO]	[TRAIN] Epoch 34 finished, loss=0.683902, acc1=0.656563, acc3=1.0, lr=0.0002 .
2020-08-14 15:26:31 [INFO]	[TRAIN] Epoch 35 finished, loss=0.678338, acc1=0.66625, acc3=1.0, lr=0.0002 .
2020-08-14 15:26:57 [INFO]	[TRAIN] Epoch=36/100, Step=50/50, loss=0.76315, acc1=0.59375, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:29:47
2020-08-14 15:26:57 [INFO]	[TRAIN] Epoch 36 finished, loss=0.686147, acc1=0.658437, acc3=1.0, lr=0.0002 .
2020-08-14 15:27:23 [INFO]	[TRAIN] Epoch 37 finished, loss=0.678183, acc1=0.664375, acc3=1.0, lr=0.0002 .
2020-08-14 15:27:48 [INFO]	[TRAIN] Epoch=38/100, Step=50/50, loss=0.742874, acc1=0.609375, acc3=1.0, lr=0.0002, time_each_step=0.39s, eta=0:28:23
2020-08-14 15:27:48 [INFO]	[TRAIN] Epoch 38 finished, loss=0.676832, acc1=0.666875, acc3=1.0, lr=0.0002 .
2020-08-14 15:28:12 [INFO]	[TRAIN] Epoch 39 finished, loss=0.681132, acc1=0.654063, acc3=1.0, lr=0.0002 .
2020-08-14 15:28:36 [INFO]	[TRAIN] Epoch=40/100, Step=50/50, loss=0.641157, acc1=0.6875, acc3=1.0, lr=0.0002, time_each_step=0.38s, eta=0:24:59
2020-08-14 15:28:36 [INFO]	[TRAIN] Epoch 40 finished, loss=0.681135, acc1=0.6675, acc3=1.0, lr=0.0002 .
2020-08-14 15:28:36 [INFO]	Start to evaluating(total_samples=357, total_steps=6)...


100%|██████████| 6/6 [00:06<00:00,  1.12s/it]


2020-08-14 15:28:42 [INFO]	[EVAL] Finished, Epoch=40, acc1=0.585434, acc3=1.0 .
2020-08-14 15:28:47 [INFO]	Model saved in model/best_model.
2020-08-14 15:28:51 [INFO]	Model saved in model/epoch_40.
2020-08-14 15:28:51 [INFO]	Current evaluated best model in eval_dataset is epoch_40, acc1=0.5854341736694678
2020-08-14 15:29:15 [INFO]	[TRAIN] Epoch 41 finished, loss=0.672766, acc1=0.659375, acc3=1.0, lr=2e-05 .
2020-08-14 15:29:40 [INFO]	[TRAIN] Epoch=42/100, Step=50/50, loss=0.753427, acc1=0.65625, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:23:26
2020-08-14 15:29:40 [INFO]	[TRAIN] Epoch 42 finished, loss=0.673607, acc1=0.671875, acc3=1.0, lr=2e-05 .
2020-08-14 15:30:05 [INFO]	[TRAIN] Epoch 43 finished, loss=0.657849, acc1=0.676562, acc3=1.0, lr=2e-05 .
2020-08-14 15:30:31 [INFO]	[TRAIN] Epoch=44/100, Step=50/50, loss=0.705574, acc1=0.625, acc3=1.0, lr=2e-05, time_each_step=0.4s, eta=0:24:50
2020-08-14 15:30:31 [INFO]	[TRAIN] Epoch 44 finished, loss=0.661742, acc1=0.67625, acc3=1.0, lr=2e-05 .
2020-08-14 15:30:57 [INFO]	[TRAIN] Epoch 45 finished, loss=0.66379, acc1=0.676875, acc3=1.0, lr=2e-05 .
2020-08-14 15:31:22 [INFO]	[TRAIN] Epoch=46/100, Step=50/50, loss=0.688596, acc1=0.625, acc3=1.0, lr=2e-05, time_each_step=0.4s, eta=0:24:30
2020-08-14 15:31:22 [INFO]	[TRAIN] Epoch 46 finished, loss=0.673048, acc1=0.668437, acc3=1.0, lr=2e-05 .
2020-08-14 15:31:50 [INFO]	[TRAIN] Epoch 47 finished, loss=0.66154, acc1=0.674375, acc3=1.0, lr=2e-05 .
2020-08-14 15:32:13 [INFO]	[TRAIN] Epoch=48/100, Step=50/50, loss=0.63527, acc1=0.6875, acc3=1.0, lr=2e-05, time_each_step=0.4s, eta=0:24:34
2020-08-14 15:32:13 [INFO]	[TRAIN] Epoch 48 finished, loss=0.672063, acc1=0.665313, acc3=1.0, lr=2e-05 .
2020-08-14 15:32:38 [INFO]	[TRAIN] Epoch 49 finished, loss=0.670458, acc1=0.66375, acc3=1.0, lr=2e-05 .
2020-08-14 15:33:02 [INFO]	[TRAIN] Epoch=50/100, Step=50/50, loss=0.609697, acc1=0.59375, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:20:58
2020-08-14 15:33:02 [INFO]	[TRAIN] Epoch 50 finished, loss=0.656942, acc1=0.6725, acc3=1.0, lr=2e-05 .
2020-08-14 15:33:27 [INFO]	[TRAIN] Epoch 51 finished, loss=0.665662, acc1=0.664688, acc3=1.0, lr=2e-05 .
2020-08-14 15:34:00 [INFO]	[TRAIN] Epoch=52/100, Step=50/50, loss=0.660129, acc1=0.703125, acc3=1.0, lr=2e-05, time_each_step=0.41s, eta=0:20:25
2020-08-14 15:34:00 [INFO]	[TRAIN] Epoch 52 finished, loss=0.658855, acc1=0.681562, acc3=1.0, lr=2e-05 .
2020-08-14 15:34:25 [INFO]	[TRAIN] Epoch 53 finished, loss=0.672404, acc1=0.6625, acc3=1.0, lr=2e-05 .
2020-08-14 15:34:51 [INFO]	[TRAIN] Epoch=54/100, Step=50/50, loss=0.719984, acc1=0.59375, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:20:23
2020-08-14 15:34:51 [INFO]	[TRAIN] Epoch 54 finished, loss=0.667477, acc1=0.670937, acc3=1.0, lr=2e-05 .
2020-08-14 15:35:18 [INFO]	[TRAIN] Epoch 55 finished, loss=0.659591, acc1=0.674688, acc3=1.0, lr=2e-05 .
2020-08-14 15:35:44 [INFO]	[TRAIN] Epoch=56/100, Step=50/50, loss=0.659579, acc1=0.703125, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:20:43
2020-08-14 15:35:44 [INFO]	[TRAIN] Epoch 56 finished, loss=0.666404, acc1=0.664688, acc3=1.0, lr=2e-05 .
2020-08-14 15:36:09 [INFO]	[TRAIN] Epoch 57 finished, loss=0.668373, acc1=0.669062, acc3=1.0, lr=2e-05 .
2020-08-14 15:36:35 [INFO]	[TRAIN] Epoch=58/100, Step=50/50, loss=0.700233, acc1=0.59375, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:18:15
2020-08-14 15:36:35 [INFO]	[TRAIN] Epoch 58 finished, loss=0.660507, acc1=0.666875, acc3=1.0, lr=2e-05 .
2020-08-14 15:37:01 [INFO]	[TRAIN] Epoch 59 finished, loss=0.669248, acc1=0.660625, acc3=1.0, lr=2e-05 .
2020-08-14 15:37:25 [INFO]	[TRAIN] Epoch=60/100, Step=50/50, loss=0.762097, acc1=0.625, acc3=1.0, lr=2e-05, time_each_step=0.38s, eta=0:17:46
2020-08-14 15:37:25 [INFO]	[TRAIN] Epoch 60 finished, loss=0.670401, acc1=0.67, acc3=1.0, lr=2e-05 .
2020-08-14 15:37:25 [INFO]	Start to evaluating(total_samples=357, total_steps=6)...


100%|██████████| 6/6 [00:05<00:00,  1.01it/s]


2020-08-14 15:37:30 [INFO]	[EVAL] Finished, Epoch=60, acc1=0.543417, acc3=1.0 .
2020-08-14 15:37:35 [INFO]	Model saved in model/epoch_60.
2020-08-14 15:37:35 [INFO]	Current evaluated best model in eval_dataset is epoch_40, acc1=0.5854341736694678
2020-08-14 15:37:59 [INFO]	[TRAIN] Epoch 61 finished, loss=0.674395, acc1=0.663125, acc3=1.0, lr=2e-05 .
2020-08-14 15:38:23 [INFO]	[TRAIN] Epoch=62/100, Step=50/50, loss=0.618603, acc1=0.734375, acc3=1.0, lr=2e-05, time_each_step=0.4s, eta=0:15:37
2020-08-14 15:38:23 [INFO]	[TRAIN] Epoch 62 finished, loss=0.661778, acc1=0.677813, acc3=1.0, lr=2e-05 .
2020-08-14 15:38:48 [INFO]	[TRAIN] Epoch 63 finished, loss=0.667302, acc1=0.659375, acc3=1.0, lr=2e-05 .
2020-08-14 15:39:14 [INFO]	[TRAIN] Epoch=64/100, Step=50/50, loss=0.558047, acc1=0.765625, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:15:7
2020-08-14 15:39:14 [INFO]	[TRAIN] Epoch 64 finished, loss=0.665938, acc1=0.66625, acc3=1.0, lr=2e-05 .
2020-08-14 15:39:38 [INFO]	[TRAIN] Epoch 65 finished, loss=0.658698, acc1=0.675625, acc3=1.0, lr=2e-05 .
2020-08-14 15:40:02 [INFO]	[TRAIN] Epoch=66/100, Step=50/50, loss=0.648081, acc1=0.65625, acc3=1.0, lr=2e-05, time_each_step=0.38s, eta=0:14:15
2020-08-14 15:40:02 [INFO]	[TRAIN] Epoch 66 finished, loss=0.656141, acc1=0.67875, acc3=1.0, lr=2e-05 .
2020-08-14 15:40:27 [INFO]	[TRAIN] Epoch 67 finished, loss=0.668707, acc1=0.668437, acc3=1.0, lr=2e-05 .
2020-08-14 15:40:51 [INFO]	[TRAIN] Epoch=68/100, Step=50/50, loss=0.667717, acc1=0.640625, acc3=1.0, lr=2e-05, time_each_step=0.38s, eta=0:13:51
2020-08-14 15:40:51 [INFO]	[TRAIN] Epoch 68 finished, loss=0.661782, acc1=0.669375, acc3=1.0, lr=2e-05 .
2020-08-14 15:41:16 [INFO]	[TRAIN] Epoch 69 finished, loss=0.663868, acc1=0.674375, acc3=1.0, lr=2e-05 .
2020-08-14 15:41:41 [INFO]	[TRAIN] Epoch=70/100, Step=50/50, loss=0.603587, acc1=0.703125, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:12:35
2020-08-14 15:41:41 [INFO]	[TRAIN] Epoch 70 finished, loss=0.655428, acc1=0.681875, acc3=1.0, lr=2e-05 .
2020-08-14 15:42:06 [INFO]	[TRAIN] Epoch 71 finished, loss=0.670134, acc1=0.66375, acc3=1.0, lr=2e-05 .
2020-08-14 15:42:30 [INFO]	[TRAIN] Epoch=72/100, Step=50/50, loss=0.743724, acc1=0.65625, acc3=1.0, lr=2e-05, time_each_step=0.39s, eta=0:11:58
2020-08-14 15:42:30 [INFO]	[TRAIN] Epoch 72 finished, loss=0.658607, acc1=0.665625, acc3=1.0, lr=2e-05 .
2020-08-14 15:42:56 [INFO]	[TRAIN] Epoch 73 finished, loss=0.656922, acc1=0.673437, acc3=1.0, lr=2e-05 .
2020-08-14 15:43:20 [INFO]	[TRAIN] Epoch=74/100, Step=50/50, loss=0.765042, acc1=0.671875, acc3=1.0, lr=2e-05, time_each_step=0.4s, eta=0:11:28
2020-08-14 15:43:20 [INFO]	[TRAIN] Epoch 74 finished, loss=0.660963, acc1=0.670937, acc3=1.0, lr=2e-05 .
2020-08-14 15:43:45 [INFO]	[TRAIN] Epoch 75 finished, loss=0.659783, acc1=0.675313, acc3=1.0, lr=2e-05 .
2020-08-14 15:44:09 [INFO]	[TRAIN] Epoch=76/100, Step=50/50, loss=0.675244, acc1=0.703125, acc3=1.0, lr=2e-05, time_each_step=0.38s, eta=0:10:14
2020-08-14 15:44:09 [INFO]	[TRAIN] Epoch 76 finished, loss=0.660044, acc1=0.670313, acc3=1.0, lr=2e-05 .
2020-08-14 15:44:35 [INFO]	[TRAIN] Epoch 77 finished, loss=0.664427, acc1=0.6775, acc3=1.0, lr=2e-05 .
2020-08-14 15:45:00 [INFO]	[TRAIN] Epoch=78/100, Step=50/50, loss=0.607479, acc1=0.640625, acc3=1.0, lr=2e-05, time_each_step=0.37s, eta=0:10:0
2020-08-14 15:45:00 [INFO]	[TRAIN] Epoch 78 finished, loss=0.652879, acc1=0.670625, acc3=1.0, lr=2e-05 .
2020-08-14 15:45:23 [INFO]	[TRAIN] Epoch 79 finished, loss=0.65995, acc1=0.673437, acc3=1.0, lr=2e-05 .
2020-08-14 15:45:47 [INFO]	[TRAIN] Epoch=80/100, Step=50/50, loss=0.675525, acc1=0.703125, acc3=1.0, lr=2e-05, time_each_step=0.37s, eta=0:8:5
2020-08-14 15:45:47 [INFO]	[TRAIN] Epoch 80 finished, loss=0.651336, acc1=0.679375, acc3=1.0, lr=2e-05 .
2020-08-14 15:45:47 [INFO]	Start to evaluating(total_samples=357, total_steps=6)...


100%|██████████| 6/6 [00:06<00:00,  1.02s/it]


2020-08-14 15:45:54 [INFO]	[EVAL] Finished, Epoch=80, acc1=0.557423, acc3=1.0 .
2020-08-14 15:45:58 [INFO]	Model saved in model/epoch_80.
2020-08-14 15:45:58 [INFO]	Current evaluated best model in eval_dataset is epoch_40, acc1=0.5854341736694678
2020-08-14 15:46:21 [INFO]	[TRAIN] Epoch 81 finished, loss=0.648475, acc1=0.679375, acc3=1.0, lr=2e-06 .
2020-08-14 15:46:45 [INFO]	[TRAIN] Epoch=82/100, Step=50/50, loss=0.621086, acc1=0.6875, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:7:1
2020-08-14 15:46:45 [INFO]	[TRAIN] Epoch 82 finished, loss=0.652604, acc1=0.672813, acc3=1.0, lr=2e-06 .
2020-08-14 15:47:09 [INFO]	[TRAIN] Epoch 83 finished, loss=0.660614, acc1=0.667188, acc3=1.0, lr=2e-06 .
2020-08-14 15:47:33 [INFO]	[TRAIN] Epoch=84/100, Step=50/50, loss=0.670688, acc1=0.65625, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:6:36
2020-08-14 15:47:33 [INFO]	[TRAIN] Epoch 84 finished, loss=0.656277, acc1=0.673437, acc3=1.0, lr=2e-06 .
2020-08-14 15:47:56 [INFO]	[TRAIN] Epoch 85 finished, loss=0.659031, acc1=0.66625, acc3=1.0, lr=2e-06 .
2020-08-14 15:48:20 [INFO]	[TRAIN] Epoch=86/100, Step=50/50, loss=0.594173, acc1=0.78125, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:5:39
2020-08-14 15:48:20 [INFO]	[TRAIN] Epoch 86 finished, loss=0.649567, acc1=0.69125, acc3=1.0, lr=2e-06 .
2020-08-14 15:48:43 [INFO]	[TRAIN] Epoch 87 finished, loss=0.658555, acc1=0.672813, acc3=1.0, lr=2e-06 .
2020-08-14 15:49:07 [INFO]	[TRAIN] Epoch=88/100, Step=50/50, loss=0.6663, acc1=0.671875, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:4:50
2020-08-14 15:49:07 [INFO]	[TRAIN] Epoch 88 finished, loss=0.659498, acc1=0.673125, acc3=1.0, lr=2e-06 .
2020-08-14 15:49:32 [INFO]	[TRAIN] Epoch 89 finished, loss=0.656975, acc1=0.6675, acc3=1.0, lr=2e-06 .
2020-08-14 15:49:58 [INFO]	[TRAIN] Epoch=90/100, Step=50/50, loss=0.722452, acc1=0.59375, acc3=1.0, lr=2e-06, time_each_step=0.38s, eta=0:4:19
2020-08-14 15:49:58 [INFO]	[TRAIN] Epoch 90 finished, loss=0.658413, acc1=0.675313, acc3=1.0, lr=2e-06 .
2020-08-14 15:50:21 [INFO]	[TRAIN] Epoch 91 finished, loss=0.655542, acc1=0.660625, acc3=1.0, lr=2e-06 .
2020-08-14 15:50:45 [INFO]	[TRAIN] Epoch=92/100, Step=50/50, loss=0.671113, acc1=0.671875, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:3:15
2020-08-14 15:50:45 [INFO]	[TRAIN] Epoch 92 finished, loss=0.65109, acc1=0.679688, acc3=1.0, lr=2e-06 .
2020-08-14 15:51:08 [INFO]	[TRAIN] Epoch 93 finished, loss=0.652665, acc1=0.672188, acc3=1.0, lr=2e-06 .
2020-08-14 15:51:32 [INFO]	[TRAIN] Epoch=94/100, Step=50/50, loss=0.640745, acc1=0.6875, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:2:30
2020-08-14 15:51:32 [INFO]	[TRAIN] Epoch 94 finished, loss=0.654508, acc1=0.672813, acc3=1.0, lr=2e-06 .
2020-08-14 15:51:56 [INFO]	[TRAIN] Epoch 95 finished, loss=0.658801, acc1=0.675937, acc3=1.0, lr=2e-06 .
2020-08-14 15:52:19 [INFO]	[TRAIN] Epoch=96/100, Step=50/50, loss=0.595295, acc1=0.71875, acc3=1.0, lr=2e-06, time_each_step=0.38s, eta=0:1:44
2020-08-14 15:52:19 [INFO]	[TRAIN] Epoch 96 finished, loss=0.663019, acc1=0.666875, acc3=1.0, lr=2e-06 .
2020-08-14 15:52:43 [INFO]	[TRAIN] Epoch 97 finished, loss=0.654614, acc1=0.677813, acc3=1.0, lr=2e-06 .
2020-08-14 15:53:06 [INFO]	[TRAIN] Epoch=98/100, Step=50/50, loss=0.739518, acc1=0.609375, acc3=1.0, lr=2e-06, time_each_step=0.37s, eta=0:0:57
2020-08-14 15:53:06 [INFO]	[TRAIN] Epoch 98 finished, loss=0.65545, acc1=0.665937, acc3=1.0, lr=2e-06 .
2020-08-14 15:53:30 [INFO]	[TRAIN] Epoch 99 finished, loss=0.659381, acc1=0.669688, acc3=1.0, lr=2e-06 .
2020-08-14 15:53:55 [INFO]	[TRAIN] Epoch=100/100, Step=50/50, loss=0.721837, acc1=0.609375, acc3=1.0, lr=2e-06, time_each_step=0.38s, eta=0:0:10
2020-08-14 15:53:55 [INFO]	[TRAIN] Epoch 100 finished, loss=0.658673, acc1=0.665, acc3=1.0, lr=2e-06 .
2020-08-14 15:53:55 [INFO]	Start to evaluating(total_samples=357, total_steps=6)...


100%|██████████| 6/6 [00:05<00:00,  1.06it/s]


2020-08-14 15:54:00 [INFO]	[EVAL] Finished, Epoch=100, acc1=0.551821, acc3=1.0 .
2020-08-14 15:54:04 [INFO]	Model saved in model/epoch_100.
2020-08-14 15:54:04 [INFO]	Current evaluated best model in eval_dataset is epoch_40, acc1=0.5854341736694678
model.evaluate(eval_dataset, batch_size=1, epoch_id=None, return_details=False)
2020-08-14 15:58:07 [INFO]	Start to evaluating(total_samples=357, total_steps=357)...


100%|██████████| 357/357 [00:07<00:00, 47.98it/s]





OrderedDict([('acc1', 0.5518207282913166), ('acc3', 1.0)])
test_base = 'raw_data/test'
test_data = []

for img in os.listdir(test_base):
    pt = os.path.join(test_base, img)
    pad = PaddlingImage(pt)
    new_pt = os.path.join('new_data/test/', img)
    cv2.imwrite(new_pt, pad)
    test_data.append(new_pt)

print(new_pt)
print('test_num:', len(test_data))
new_data/test/1444.jpg
test_num: 1752
import numpy as np
import paddlex as pdx
from tqdm import tqdm
import json

submission = []

labels = sorted(os.listdir('raw_data/train'))

for im_pt in tqdm(test_data):
    value = {
    
    "image_name":None, "category":None, "score":None}
    result = model.predict(im_pt, topk=1, transforms=eval_transforms)
    value['category'] = result[0]['category']
    value['score'] = str(result[0]['score'])
    value['image_name'] = im_pt.split('/')[-1]
    submission.append(value)
    

with open('result.json', 'w') as f:
    json.dump(submission, f)

print('done')

在这里插入图片描述

有需求的大佬欢迎加入我的接单群,需求详情请群里戳群主

在这里插入图片描述

关注我的公众号:

感兴趣的同学关注我的公众号——可达鸭的深度学习教程:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44936889/article/details/108010911