将 densenet 与 fastai 结合使用

Using densenet with fastai

我正在尝试使用 fast.ai 库训练 densenet 模型。我检查了文档,并设法让它适用于 resnet50。不过对于densenet,好像找不到模块。

我尝试按照 forum 所述使用 arch=models.dn121。但是我得到了同样的错误。

有人可以帮忙吗?

代码如下:

learn = create_cnn(data, base_arch=models.densenet201, metrics=accuracy, model_dir="/tmp/model/")

这是错误:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-23-cb9ab3a79572> in <module>()
----> 1 learn = create_cnn(data, base_arch=models.densenet201, metrics=accuracy, model_dir="/tmp/model/")

AttributeError: module 'fastai.vision.models' has no attribute 'densenet201'

根据 fast.ai 论坛上的 post,这是将 densenet 与 fast.ai 一起使用的解决方案:

from torchvision.models import densenet121

def dn121(pre): return children(densenet121(pre))[0]

learn = create_cnn(data, dn121)