fastai案例学习(1)——实现猫狗分类

本文主要介绍fastai自带的例子,即使用fastai实现猫狗分类。

1、导入包

from fastai import *
from fastai.vision import *

2、下载数据

# 导入数据
path = untar_data(URLs.DOGS)
path
Output: PosixPath('/home/cc/.fastai/data/dogscats')

3、显示一张训练数据图片

data = ImageDataBunch.from_folder(path, ds_tfms=get_transforms(), size=224).normalize(imagenet_stats)
img,label = data.valid_ds[-1]
img.show(title=label)

fastai案例学习(1)——实现猫狗分类_第1张图片

4、使用resnet34进行训练:

learn = create_cnn(data, models.resnet34, metrics=accuracy)
learn.fit_one_cycle(1)

Output:

Total time: 50:37
epoch  train_loss  valid_loss  accuracy
1      0.047413    0.024584    0.991000  (50:37)
learn.unfreeze()
learn.fit_one_cycle(6, slice(1e-5,3e-4), pct_start=0.05)

Ouput:

accuracy(*learn.TTA())

Output:

5、使用restnet50进行训练:

learn = create_cnn(data, models.resnet50, metrics=accuracy)
learn.fit_one_circle(6)

Output:

learn.unfreeze()
learn.fit_one_circle(6,slice(1e-5, 3e-4), pct_start=0.05)

Output:

准确率:

accuracy(*learn.TTA())

Output:

注:由于时间关系其他的训练结果不再给出。

欢迎关注我的公众号:

编程技术与生活(ID:hw_cchang)

 

你可能感兴趣的:(Fast.ai)