1. backbone主干网络。
backbone这个单词原意指的是人的脊梁骨,后来引申为支柱,核心的意思。
在神经网络中,尤其是CV领域,一般先对图像进行特征提取(常见的有vggnet,resnet,谷歌的inception),这一部分是整个CV任务的根基,因为后续的下游任务都是基于提取出来的图像特征去做文章(比如分类,生成等等)。
所以将这一部分网络结构称为backbone十分形象,仿佛是一个人站起来的支柱。 PS: 作者:Jacky.C;链接:https://www.zhihu.com/question/399611596/answer/1273044749;来源:知乎
2. 关于def __init__(self):
Q: 为什么要定义init方法,直接定义不好吗?
A: 定义完init()后,创建的每个实例都有自己的属性,也方便直接调用类中的函数。
详细解释:https://blog.csdn.net/qq_43504939/article/details/90815211
Q: super().__init__()是什么意思?
A: super().__init__(),就是继承父类的init方法,同样可以使用super()的其他方法名,去继承其他方法。
扩展:
3. 如何自定义一个模型?
通过继承nn.Module类来实现,
在__init__构造函数中申明各个层的定义;
在forward中实现层之间的连接关系,实际上就是前向传播的过程。
详细:https://blog.csdn.net/qq_27825451/article/details/90705328
4. torch.load()函数不懂是什么意思。
解释:torch.save 和 torch.load调用的应该是 pickle库,用 pickle.load() 要求python能够找到类的定义。
pickle库:提供了一个简单的持久化功能。可以将对象以文件的形式存放在磁盘上。
作用:torch.load()从文件中加载一个用torch.save()保存的对象。
5. @DataProvider的应用
代码中经常有一些数据需要维护,但是每次都写在一个class或者methods中,维护起来是个麻烦事;
这里引入@DataProvider的思想,建一个DataProvider的方法,让我们需要维护的数据都写到这个方法中来。
详细:https://www.cnblogs.com/nieliangcai/p/8118355.html
6. 目前代码遇到的bug是:FileNotFoundError: [Errno 2] No such file or directory: '/data/model/resnet50_fbaug.pth'
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。