diff --git a/dataset/flowers102/generate_flowers102_list.py b/dataset/flowers102/generate_flowers102_list.py deleted file mode 100644 index 0867a3166..000000000 --- a/dataset/flowers102/generate_flowers102_list.py +++ /dev/null @@ -1,38 +0,0 @@ -""" -.mat files data format -imagelabel.mat -jpg_name 1 2 3 ... -label 32 12 66 ... - -setid.mat -jpg_name(10 records in a class) 24 6 100 65 32 ... -label 4 ... -""" -""" -Usage: - python generate_flower_list.py prefix_folder mode - python generate_flower_list.py jpg train > train_list.txt - python generate_flower_list.py jpg valid > val_list.txt -""" - -import scipy.io -import numpy as np -import os -import sys - -data_path = sys.argv[1] -imagelabels_path = './imagelabels.mat' -setid_path = './setid.mat' - -labels = scipy.io.loadmat(imagelabels_path) -labels = np.array(labels['labels'][0]) -setid = scipy.io.loadmat(setid_path) - -d = {} -d['train'] = np.array(setid['trnid'][0]) -d['valid'] = np.array(setid['valid'][0]) -d['test'] = np.array(setid['tstid'][0]) - -for id in d[sys.argv[2]]: - message = str(data_path) + "/image_" + str(id).zfill(5) + ".jpg " + str(labels[id - 1] - 1) - print(message) diff --git a/deploy/slim/quant/export_model.py b/deploy/slim/quant/export_model.py index 2e332c079..3c92a7cef 100644 --- a/deploy/slim/quant/export_model.py +++ b/deploy/slim/quant/export_model.py @@ -21,7 +21,7 @@ sys.path.append(os.path.abspath(os.path.join(__dir__, '..', '..', '..'))) sys.path.append( os.path.abspath(os.path.join(__dir__, '..', '..', '..', 'tools'))) -from ppcls.modeling import architectures +from ppcls.arch import backbone from ppcls.utils.save_load import load_dygraph_pretrain import paddle import paddle.nn.functional as F @@ -63,7 +63,7 @@ class Net(paddle.nn.Layer): def main(): args = parse_args() - net = architectures.__dict__[args.model] + net = backbone.__dict__[args.model] model = Net(net, args.class_dim, args.model) # get QAT model diff --git a/docs/zh_CN/faq_series/faq_2020_s1.md b/docs/zh_CN/faq_series/faq_2020_s1.md index c74435a58..796c1fd2c 100644 --- a/docs/zh_CN/faq_series/faq_2020_s1.md +++ b/docs/zh_CN/faq_series/faq_2020_s1.md @@ -136,7 +136,7 @@ ResNet系列模型中,相比于其他模型,ResNet_vd模型在预测速度 **A**: -* 可以使用自动混合精度进行训练,这在精度几乎无损的情况下,可以有比较明显的速度收益,以ResNet50为例,PaddleClas中使用自动混合精度训练的配置文件可以参考:[ResNet50_fp16.yml](../../../configs/ResNet/ResNet50_fp16.yml),主要就是需要在标准的配置文件中添加以下几行 +* 可以使用自动混合精度进行训练,这在精度几乎无损的情况下,可以有比较明显的速度收益,以ResNet50为例,PaddleClas中使用自动混合精度训练的配置文件可以参考:[ResNet50_fp16.yml](../../../ppcls/configs/ResNet/ResNet50_fp16.yml),主要就是需要在标准的配置文件中添加以下几行 ``` use_fp16: True diff --git a/docs/zh_CN/feature_visiualization/get_started.md b/docs/zh_CN/feature_visiualization/get_started.md index e63c08b84..4deb46cec 100644 --- a/docs/zh_CN/feature_visiualization/get_started.md +++ b/docs/zh_CN/feature_visiualization/get_started.md @@ -6,7 +6,7 @@ ## 二、准备工作 -首先需要选定研究的模型,本文设定ResNet50作为研究模型,将resnet.py从[模型库](../../../ppcls/modeling/architecture/)拷贝到当前目录下,并下载预训练模型[预训练模型](../../zh_CN/models/models_intro), 复制resnet50的模型链接,使用下列命令下载并解压预训练模型。 +首先需要选定研究的模型,本文设定ResNet50作为研究模型,将resnet.py从[模型库](../../../ppcls/arch/architecture/)拷贝到当前目录下,并下载预训练模型[预训练模型](../../zh_CN/models/models_intro), 复制resnet50的模型链接,使用下列命令下载并解压预训练模型。 ```bash wget The Link for Pretrained Model diff --git a/tools/export_model.py b/tools/export_model.py index 5d6b338db..c3a06fac0 100644 --- a/tools/export_model.py +++ b/tools/export_model.py @@ -19,7 +19,7 @@ __dir__ = os.path.dirname(os.path.abspath(__file__)) sys.path.append(__dir__) sys.path.append(os.path.abspath(os.path.join(__dir__, '..'))) -from ppcls.modeling import architectures +from ppcls.arch import backbone from ppcls.utils.save_load import load_dygraph_pretrain import paddle import paddle.nn.functional as F @@ -64,7 +64,7 @@ class Net(paddle.nn.Layer): def main(): args = parse_args() - net = architectures.__dict__[args.model] + net = backbone.__dict__[args.model] model = Net(net, args.class_dim, args.model) load_dygraph_pretrain( model.pre_net, diff --git a/tools/export_serving_model.py b/tools/export_serving_model.py index e6e4472cd..6bf7cbe9b 100644 --- a/tools/export_serving_model.py +++ b/tools/export_serving_model.py @@ -14,7 +14,7 @@ import argparse import os -from ppcls.modeling import architectures +from ppcls.arch import backbone import paddle.fluid as fluid import paddle_serving_client.io as serving_io @@ -49,7 +49,7 @@ def create_model(args, model, input, class_dim=1000): def main(): args = parse_args() - model = architectures.__dict__[args.model]() + model = backbone.__dict__[args.model]() place = fluid.CPUPlace() exe = fluid.Executor(place) diff --git a/tools/infer/infer.py b/tools/infer/infer.py index 87fe9f320..241cb3c3a 100644 --- a/tools/infer/infer.py +++ b/tools/infer/infer.py @@ -26,7 +26,7 @@ sys.path.append(os.path.abspath(os.path.join(__dir__, '../..'))) from ppcls.utils.save_load import load_dygraph_pretrain from ppcls.utils import logger -from ppcls.modeling import architectures +from ppcls.arch import backbone from utils import parse_args, get_image_list, preprocess, postprocess, save_prelabel_results @@ -36,7 +36,7 @@ def main(): place = paddle.set_device('gpu' if args.use_gpu else 'cpu') multilabel = True if args.multilabel else False - net = architectures.__dict__[args.model](class_dim=args.class_num) + net = backbone.__dict__[args.model](class_dim=args.class_num) load_dygraph_pretrain(net, args.pretrained_model, args.load_static_weights) image_list = get_image_list(args.image_file) batch_input_list = [] diff --git a/tools/program.py b/tools/program.py index 72e68823f..731aa0444 100644 --- a/tools/program.py +++ b/tools/program.py @@ -16,24 +16,22 @@ from __future__ import absolute_import from __future__ import division from __future__ import print_function -import os import time import datetime from collections import OrderedDict import paddle from paddle import to_tensor -import paddle.nn as nn import paddle.nn.functional as F from ppcls.optimizer import LearningRateBuilder from ppcls.optimizer import OptimizerBuilder -from ppcls.modeling import architectures -from ppcls.modeling.loss import MultiLabelLoss -from ppcls.modeling.loss import CELoss -from ppcls.modeling.loss import MixCELoss -from ppcls.modeling.loss import JSDivLoss -from ppcls.modeling.loss import GoogLeNetLoss +from ppcls.arch import backbone +from ppcls.arch.loss import MultiLabelLoss +from ppcls.arch.loss import CELoss +from ppcls.arch.loss import MixCELoss +from ppcls.arch.loss import JSDivLoss +from ppcls.arch.loss import GoogLeNetLoss from ppcls.utils.misc import AverageMeter from ppcls.utils import logger from ppcls.utils import profiler @@ -57,7 +55,7 @@ def create_model(architecture, classes_num): """ name = architecture["name"] params = architecture.get("params", {}) - return architectures.__dict__[name](class_dim=classes_num, **params) + return backbone.__dict__[name](class_dim=classes_num, **params) def create_loss(feeds, diff --git a/tools/static/program.py b/tools/static/program.py index 3e38fcdfe..f50d7b5d0 100644 --- a/tools/static/program.py +++ b/tools/static/program.py @@ -16,7 +16,6 @@ from __future__ import absolute_import from __future__ import division from __future__ import print_function -import os import time import numpy as np @@ -27,11 +26,11 @@ import paddle import paddle.nn.functional as F from ppcls.optimizer.learning_rate import LearningRateBuilder -from ppcls.modeling import architectures -from ppcls.modeling.loss import CELoss -from ppcls.modeling.loss import MixCELoss -from ppcls.modeling.loss import JSDivLoss -from ppcls.modeling.loss import GoogLeNetLoss +from ppcls.arch import backbone +from ppcls.arch.loss import CELoss +from ppcls.arch.loss import MixCELoss +from ppcls.arch.loss import JSDivLoss +from ppcls.arch.loss import GoogLeNetLoss from ppcls.utils.misc import AverageMeter from ppcls.utils import logger, profiler @@ -95,7 +94,7 @@ def create_model(architecture, image, classes_num, config, is_train): params["input_image_channel"] = input_image_channel if "is_test" in params: params['is_test'] = not is_train - model = architectures.__dict__[name](class_dim=classes_num, **params) + model = backbone.__dict__[name](class_dim=classes_num, **params) out = model(image) return out