### 数据增广
-在图像分类任务中,图像数据的增广是一种常用的正则化方法,可以有效提升图像分类的效果,尤其对于数据量不足或者模型网络较大的场景。PaddleClas支持了最新的8种数据增广算法的复现和在统一实验环境下的效果评估,如下图所示。每种数据增广方法的详细介绍、对比的实验环境以及使用正在持续更新中。
+在图像分类任务中,图像数据的增广是一种常用的正则化方法,可以有效提升图像分类的效果,尤其对于数据量不足或者模型网络较大的场景。PaddleClas支持了最新的8种数据增广算法的复现和在统一实验环境下的效果评估,下图展示了不同数据增广方式在ResNet50上的表现。每种数据增广方法的详细介绍、对比的实验环境以及使用正在持续更新中。

- [ ] 更多的优化器支持和效果验证
- [ ] 支持模型可解释性工具
+## 开始使用
+PaddleClas的安装说明、模型训练、预测、评估以及模型微调(fine-tuning)请参考文档教程中的[**初级使用章节**](https://paddleclas.readthedocs.io/zh_CN/latest/tutorials/index.html),SSLD知识蒸馏和数据增广的高阶使用正在持续更新中。
+
## 应用拓展
效果更优的图像分类网络结构和预训练模型往往有助于提升其他视觉任务的效果,PaddleClas提供了一系列在常见视觉任务中的特色方案。
diff --git a/docs/images/models/main_fps_top1.png b/docs/images/models/main_fps_top1.png
index ec221b44f63430a45a987ed6ee1d488e3dca3395..a7149d7de16c71dbd3359efdbcee519a486a2278 100755
Binary files a/docs/images/models/main_fps_top1.png and b/docs/images/models/main_fps_top1.png differ
diff --git a/docs/zh_CN/models/ResNet_and_vd.md b/docs/zh_CN/models/ResNet_and_vd.md
index 5c305b94d331a9c89bf4f33714a7b6250b67c4cf..bc2946e99bc270c084c146808188da53c475ebae 100644
--- a/docs/zh_CN/models/ResNet_and_vd.md
+++ b/docs/zh_CN/models/ResNet_and_vd.md
@@ -41,7 +41,7 @@ ResNet系列模型是在2015年提出的,一举在ILSVRC2015比赛中取得冠
| ResNet152_vd | 0.806 | 0.953 | | | 23.530 | 60.210 |
| ResNet200_vd | 0.809 | 0.953 | | | 30.530 | 74.740 |
| ResNet50_vd_ssld | 0.824 | 0.961 | | | 8.670 | 25.580 |
-| ResNet101_vd_ssld | 0.835 | 0.968 | | | 16.100 | 44.570 |
+| ResNet101_vd_ssld | 0.837 | 0.967 | | | 16.100 | 44.570 |
diff --git a/ppcls/data/reader.py b/ppcls/data/reader.py
index 70160a4d65f89a4e97049330f5cb4993dbb35d4f..e68ebd77e9d4f9c901be434e8248b57e7eb0127b 100755
--- a/ppcls/data/reader.py
+++ b/ppcls/data/reader.py
@@ -13,16 +13,15 @@
#limitations under the License.
import cv2
-
import numpy as np
import os
import signal
import paddle
-import imaug
-from imaug import transform
-from imaug import MixupOperator
+from . import imaug
+from .imaug import transform
+from .imaug import MixupOperator
from ppcls.utils import logger
trainers_num = int(os.environ.get('PADDLE_TRAINERS_NUM', 1))
@@ -190,9 +189,9 @@ def partial_reader(params, full_lines, part_id=0, part_num=1):
for line in full_lines:
img_path, label = line.split()
img_path = os.path.join(params['data_dir'], img_path)
- img = open(img_path).read()
- img = transform(img, ops)
- yield (img, int(label))
+ with open(img_path, 'rb') as f:
+ img = f.read()
+ yield (transform(img, ops), int(label))
return reader
diff --git a/ppcls/modeling/utils.py b/ppcls/modeling/utils.py
index acc4d1948264e72c3cffad52b8139331cfb28420..e7787b8122f086c44e712b46a263a37c91992e00 100644
--- a/ppcls/modeling/utils.py
+++ b/ppcls/modeling/utils.py
@@ -12,10 +12,11 @@
#See the License for the specific language governing permissions and
#limitations under the License.
-import architectures
import types
from difflib import SequenceMatcher
+from . import architectures
+
def get_architectures():
"""
diff --git a/ppcls/optimizer/__init__.py b/ppcls/optimizer/__init__.py
index 9a192d9a14182185f686dcd68506579926cc8efa..1997992293ab3e7350025c5b43e8619d139fe44f 100644
--- a/ppcls/optimizer/__init__.py
+++ b/ppcls/optimizer/__init__.py
@@ -15,5 +15,5 @@
from . import optimizer
from . import learning_rate
-from optimizer import OptimizerBuilder
-from learning_rate import LearningRateBuilder
+from .optimizer import OptimizerBuilder
+from .learning_rate import LearningRateBuilder