Love And Program 2021-07-07 18:42 采纳率: 77.8%
浏览 45
已采纳

python类的疑惑,为什么很多时候只调用类但不管里面其他的内容

python刚入门,在看各种类的时候发现了个问题
比如我在看别人写到EfficientNet模型中,建立一个EfficientNet类,但是调用的时候好像只用到它的初始化函数,里面写了前向传播,但我在别人提交到github里面的代码并没有调用这些函数,而是直接调这个类,对此感到很疑惑?(因为老师给我们讲的时候都要进行前向传播啥啥的,后来学tensorflow的时候也是直接调用各种层,这几天学pytorch发现这种困惑
还有好多调用个backbone网络也只是这样,难道像这样,调用的不仅仅是初始化么(EfficientDetBackbone类里面还有前向传播啊各种各样定义的函数在train里面也没有被用到)

model = EfficientDetBackbone(num_classes=len(params.obj_list), compound_coef=opt.compound_coef,
                                 ratios=eval(params.anchors_ratios), scales=eval(params.anchors_scales))

希望大佬解答

  • 写回答

1条回答 默认 最新

  • soar3033 2021-07-07 20:15
    关注

    那些函数好多都是用于内部作用的。比如,根据你的初始化传入参数将模型进行预处理。大量的函数在初始化的时候由self.init()进行调用了。只是在你的层面你好像从没用过它们。其实它们都已经在初始化的时候运行了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 overleaf中论文编辑,报错`pages' is a missing field, not a string, for entry 4
  • ¥15 vhdl+MODELSIM
  • ¥20 simulink中怎么使用solve函数?
  • ¥30 dspbuilder中使用signalcompiler时报错Error during compilation: Fitter failed,求解决办法
  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么