首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Fast Ai: AttributeError:'Learner‘对象没有属性'fine_tune’

Fast Ai: AttributeError:'Learner‘对象没有属性'fine_tune’
EN

Stack Overflow用户
提问于 2020-12-03 22:40:33
回答 2查看 1K关注 0票数 3

Fast Ai使用了一种非常非传统风格的from fastai import *等。

就我而言,我不喜欢它,所以我费力地识别chapter 2 of the fastai book中的每个导入,但却遇到了错误

代码语言:javascript
复制
AttributeError: 'Learner' object has no attribute 'fine_tune'

然而,当我随后去做

代码语言:javascript
复制
from fastbook import *

它起作用了。这是一个非常奇怪的行为,因为如果完成了上面的导入,就会对cnn_learner类或包含它的模块执行一些操作,使其具有fine_tune方法。

我想避免这种编码风格,那么我应该怎么做才能加载正确版本的Learner?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-08 21:25:37

我刚刚遇到了完全相同的问题。在看了他们的一个教程后,我发现cnn learner并不是从预期的包中导入的。

代码语言:javascript
复制
from fastai.vision.all import cnn_learner
# rather than
from fastai.vision.learner import cnn_learner

然后调用fine_tune方法即可正常工作!

票数 8
EN

Stack Overflow用户

发布于 2020-12-08 21:47:46

Fastai做了大量的猴子补丁。不仅导入到它自己的库中,还导入到其他库中,如pathlibtorch。我个人也不喜欢这种编码风格,但它就是这样。

我强烈建议创建一个单独的环境(例如通过conda),在那里安装fastai并使用他们的from ... import *。我过去曾尝试过解决这些导入问题,但由于您不知道(除非您深入研究源代码)在哪里/什么地方进行了猴子修补,因此您将会到处遇到missing attribute和类似的错误。

此外,它与其他一些库也不能很好地配合。我记得,由于软件包的依赖性,我很难让它与opencv一起工作,安装opencv破坏了fastai的一些功能(我后来才发现),因为它覆盖了一些外部库中由fastai打补丁的东西。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65128126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档