SSD-mobilenetv1训练过程(1)

2024-02-20 04:32
文章标签 训练 过程 ssd mobilenetv1

本文主要是介绍SSD-mobilenetv1训练过程(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本次训练用了SSD模型,代码为GitHub上lufficc那一版,backbone为mobilenetv1,自己试着修改的,很艰难。完了之后感觉对网络模型的理解又深了一层。在此简要叙述遇到的问题。

1.参考资料

SSD 论文详解

VGG16结构图

VGG16模型

SSD原理解读-从入门到精通

SSD的理解及应用

我要彻底搞懂SSD网络结构(2)特征提取网络

pytorch 实现SSD详细理解 (一)vgg和特征图的提取

睿智的目标检测23——Pytorch搭建SSD目标检测平台

SSD原理及Pytorch代码解读——网络架构(二):特征提取网络及总体计算过程

pytorch-SSD在windows下训练自己的数据集

2.索引值超出范围

在这里插入图片描述
错误:索引值14超出范围,检查后发现这个索引值是按照我定义的模块来算的,比如con_bn_relu算一层而不是三层,所以self.model总共14层,索引值为0~13.
在这里插入图片描述

3.查看网络结构

想看看自己写的网络结构究竟什么样,所以用了print(model)
在这里插入图片描述

4.查看特征图大小

在这里插入图片描述
出现错误,说是输入为2×2,但卷积核为3×3,输入比卷积核小,出现错误。于是按照下图方式输出每一层的x.size()
通过type(x)得知x为tensor类型(一个多维张量或者说多维矩阵),因此可以输出其维数来查看每层的feature map大小及输出输入通道数。

pytorch中如何查看Tensor的维度
在这里插入图片描述
通过上一步操作发现,是第一层的con_bn_relu的步长设成了3,导致第一层结束后特征图减小为1/3(从320到107),后续的大小都出错了。改掉后可以正常运行。
在这里插入图片描述

5.训练迭代次数

在这里插入图片描述
在这里插入图片描述
这个代码的设置为每250次迭代就验证一次,一开始我还以为训练就结束了(loss还很高),吓我一跳,结果验证完了继续训练,虚惊一场

这篇关于SSD-mobilenetv1训练过程(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/727055

相关文章

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

作业提交过程之HDFSMapReduce

作业提交全过程详解 (1)作业提交 第1步:Client调用job.waitForCompletion方法,向整个集群提交MapReduce作业。 第2步:Client向RM申请一个作业id。 第3步:RM给Client返回该job资源的提交路径和作业id。 第4步:Client提交jar包、切片信息和配置文件到指定的资源提交路径。 第5步:Client提交完资源后,向RM申请运行MrAp

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

Solr 使用Facet分组过程中与分词的矛盾解决办法

对于一般查询而言  ,  分词和存储都是必要的  .  比如  CPU  类型  ”Intel  酷睿  2  双核  P7570”,  拆分成  ”Intel”,”  酷睿  ”,”P7570”  这样一些关键字并分别索引  ,  可能提供更好的搜索体验  .  但是如果将  CPU  作为 Facet  字段  ,  最好不进行分词  .  这样就造成了矛盾  ,  解决方法

Spark MLlib模型训练—聚类算法 PIC(Power Iteration Clustering)

Spark MLlib模型训练—聚类算法 PIC(Power Iteration Clustering) Power Iteration Clustering (PIC) 是一种基于图的聚类算法,用于在大规模数据集上进行高效的社区检测。PIC 算法的核心思想是通过迭代图的幂运算来发现数据中的潜在簇。该算法适用于处理大规模图数据,特别是在社交网络分析、推荐系统和生物信息学等领域具有广泛应用。Spa

Python:豆瓣电影商业数据分析-爬取全数据【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】

**爬取豆瓣电影信息,分析近年电影行业的发展情况** 本文是完整的数据分析展现,代码有完整版,包含豆瓣电影爬取的具体方式【附带爬虫豆瓣,数据处理过程,数据分析,可视化,以及完整PPT报告】   最近MBA在学习《商业数据分析》,大实训作业给了数据要进行数据分析,所以先拿豆瓣电影练练手,网络上爬取豆瓣电影TOP250较多,但对于豆瓣电影全数据的爬取教程很少,所以我自己做一版。 目

SigLIP——采用sigmoid损失的图文预训练方式

SigLIP——采用sigmoid损失的图文预训练方式 FesianXu 20240825 at Wechat Search Team 前言 CLIP中的infoNCE损失是一种对比性损失,在SigLIP这个工作中,作者提出采用非对比性的sigmoid损失,能够更高效地进行图文预训练,本文进行介绍。如有谬误请见谅并联系指出,本文遵守CC 4.0 BY-SA版权协议,转载请联系作者并注

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录 在深度学习项目中,目标检测是一项重要的任务。本文将详细介绍如何使用Detectron2进行目标检测模型的复现训练,涵盖训练数据准备、训练命令、训练日志分析、训练指标以及训练输出目录的各个文件及其作用。特别地,我们将演示在训练过程中出现中断后,如何使用 resume 功能继续训练,并将我们复现的模型与Model Zoo中的

ORACLE语法-包(package)、存储过程(procedure)、游标(cursor)以及java对Result结果集的处理

陈科肇 示例: 包规范 CREATE OR REPLACE PACKAGE PACK_WMS_YX IS-- Author : CKZ-- Created : 2015/8/28 9:52:29-- Purpose : 同步数据-- Public type declarations,游标 退休订单TYPE retCursor IS REF CURSOR;-- RETURN vi_co_co