深入浅出Pytorch之机器视觉案例,学习总结

本文深入解析深度学习四大核心任务:图像分类、目标检测、图像分割与图像生成,涵盖神经网络结构、损失函数、数据集及工程实践,为深度学习研究者提供全面指南。

图像分类任务简介

图像分类神经网络基本结构就是:

  • 卷积层
  • 线性层
  • Softmax层
    在这里插入图片描述

目标检测任务简介

  1. 回归框(Bounding Box)
  2. 分类(Classification)

根据两个小任务的同步异步来分:

One-stage Two-stage
SSD/ YOLO/ Retinanet R-CNN
速度快,精度稍低 速度慢,精度高
  • 分别用什么损失函数
    在这里插入图片描述
  • 目标检测网络基本结构
    在这里插入图片描述

总的方法论:

不同级别的卷积神经网络中提取不同尺寸的目标的特征信息

图像分割任务简介

  1. 分割是针对 像素分类, 每一个像素分批一个类别
  2. 转置卷积进行上采样,得到最后和原图大小一致的输出张量

在这里插入图片描述

图像生成任务简介

  • 这次属于无监督任务!
  • 给定图像数据集,通过深度学习模型训练,产生服从这些图像数据集分布的图像。

神经网络生成图像的先验分布,使用分布生成张量,然后通过转置卷积生成目标图像.

如何训练?

VAE GAN
MSE(输入,输出) 交替输入真实图像和生成网络生成的图像,使得输出概率接近0.5

p=0.5等于判别器已经分不出来是真还是假了。

常用深度学习数据集

1 VOC

  • 20 类

2 COCO

  • 80 类

3 ImageNet

  • 1000类

深度学习工程的结构

project/
	csrc/
	data.py
	utils.py
	model.py
	train,py
	inference.py
  • csrv文件夹: 存放c/c++编写的库
  • data.py: 数据载入包括Dataset和DataLoader类
  • utils.py: 模型模块的预处理工具
  • model.py
  • train.py
  • inference.py: 测试,推理

LeNet手把手

1 建立模型

import pytorch
import torch.nn as nn

class LeNet(nn.Module):
	def __init__(self):
		super().__init__()
		self.conv1= self.Sequential(
			nn.Conv2d(1,6,3),
			#nn.BatchNorm2d(6)
			nn.ReLu(inplace=True),
			nn.MaxPool2d(2,2))
			
		self.conv1= self.Sequential(
			nn.Conv2d(6,16,3),
			
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

万物琴弦光锥之外

给个0.1,恭喜老板发财

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值