• yolov3源码解读--未上传


    yolov3源码解读--未上传

    https://blog.csdn.net/qq_24739717/article/details/92399359

    hyperparams = module_defs.pop(0)
    这里的pop的意思是基础参数都在第一个字典字典段字典段里

    self.yolo_layers = [layer[0] for layer in self.module_list if hasattr(layer[0], "metrics")]
    为什么要这行代码的yolo层?

    self.modules()和和self.children()的区别
    https://blog.csdn.net/dss_dssssd/article/details/83958518
    一个是遍历所有(深度优先方式),一个只遍历第一代children()
    model.apply(weight_init),将weight_init初始化方式应用到submodels上

    1. # 1. 根据网络层的不同定义不同的初始化方式  
    2. def weight_init(m): 
    3. if isinstance(m, nn.Linear): 
    4. nn.init.xavier_normal_(m.weight) 
    5. nn.init.constant_(m.bias, 0) 
    6. # 也可以判断是否为conv2d,使用相应的初始化方式  
    7. elif isinstance(m, nn.Conv2d): 
    8. nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu') 
    9. # 是否为批归一化层 
    10. elif isinstance(m, nn.BatchNorm2d): 
    11. nn.init.constant_(m.weight, 1) 
    12. nn.init.constant_(m.bias, 0) 
    13. # 2. 初始化网络结构  
    14. model = Net(in_dim, n_hidden_1, n_hidden_2, out_dim) 
    15. # 3. 将weight_init应用在子模块上 
    16. model.apply(weight_init) 

    此种初始化方式采用的递归,而在python中,对递归层数是有限制的,所以当网络结构很深时,可能会递归层数过深的错误

    锁页内存,不能用于虚拟内存的内存交换
    https://blog.csdn.net/tsq292978891/article/details/80454568

    dataset.collate_fn

    https://blog.csdn.net/weixin_42028364/article/details/81675021

  • 相关阅读:
    Notification的使用
    Spring面向切面之AOP深入探讨
    使用注解配置Spring框架自动代理通知
    回顾Spring框架
    Spring利器之包扫描器
    Spring 核心概念以及入门教程
    Struts 2之动态方法调用,不会的赶紧来
    Struts2之过滤器和拦截器的区别
    Struts 2开讲了!!!
    Mybatis开篇以及配置教程
  • 原文地址:https://www.cnblogs.com/miaozhijuan/p/12454184.html
Copyright © 2020-2023  润新知