首页 > 其他分享 >Pytorch_深度学习概念(一)

Pytorch_深度学习概念(一)

时间:2023-02-08 16:02:02浏览次数:39  
标签:归一化 函数 卷积 torch 概念 Pytorch 参数 深度 like

AI-ML——Deep learning

机器学习 支持向量机:特征提取,特征工程
深度学习
 人工神经网络:卷积神经网络和循环神经网络   
 卷积神经网络: 对图像的空间具有不变性--旋转-放缩-远近
 端到端的学习
  梯度消失  梯度爆炸:激活函数以及当前权重耦合产生的综合结
  最大池化技术

pytorch

功能: 图像处理,矩阵运算 
      深度学习 --自动求导系统 自动微分系统
    TF:动态图 在运行过程中定义
        静态图
pip install pytorch	
pytorch

import torch

Tensors-- Math operations and Matrix operations

 Data types   device  item  shape  size  numel
 01. is 是不是:
   >>> x=torch.tensor([1,2,3])
   >>> torch.is_tensor(x)
 02. set_default_dtype 和 get_default_dtype 
 
 03.转换 as 	  from  to
     from_numpy   frombuffer
     asarray   as_tensor  as_strided
 03. Creation create torch.Tensor
   torch.rand() torch.rand_like() torch.randn() torch.randn_like() torch.randint() torch.randint_like() torch.randperm() 
   torch.empty()  empty_like empty_strided eye  full  full_like
   zeros zeros_like
   ones ones_like
   range arange  linspace logspace
 04.Indexing, Slicing, Joining, Mutating Ops
 05.Serialization
     load   save
 06.Pointwise Reduction Comparison  Spectral   BLAS and LAPACK 
深度学习
01.自动微分 梯度
 torch.no_grad(), torch.enable_grad(), and torch.set_grad_enabled()  is_grad_enabled()
 requires_grad=True
 
 张量计算 和自动求导机制
   张量计算引擎(tensor computation
   自动求导机制(autograd):定制反传或修改梯度
 
 
 02.torch.nn
   卷积层 池化层 激活函数 循环层 全连接层
   自定义 Module
     forward 和 backward 的输入和输出都是 Tensor 对象
   
   
 03.损失函数-目标函数-代价函数
   torch.nn 
      标准损失函数
	  自定义损失函数
 
 04.优化方法 和学习率
     torch.optim 
	     
	 
 05.网络参数初始化
 
###数据操作和预处理
  Dataset  DataLoader
数据增强 

具体应用

图像检测
    backbone neck  head
    分类-回归	
指标
   mAP、mAP50、mAP75后面的数字表示NMS过程中设定IoU阈值的参数
训练
  learning rate	

原理

图像:
 卷积计算规则
 卷积层:
   输入:  W H C
    核尺寸
      filter(大小和个数) filter 的权值
      S Stride  P pading
	   卷积核高度、卷积核宽度、输入通道数、输出通道数(卷积核个数) 步长
	    每个卷积核都还有一个 Bias 参数
   输出: W  H  Depth
   局部连接和权值共享--参数数量
 Pooling 层-下采样
    通过去掉 Feature Map 中不重要的样本,进一步减少参数数量
     Max Pooling。Max Pooling 实际上就是在 n*n 的样本中取最大值,作为采样后的样本值
	  3×3 或 2×2,步长为 1 或 2
 激活函数 非线性-单调-可微性
    用非线性来逼近任意函数
    激活函数可以把当前特征空间通过一定的线性映射转换到另一个空间,让数据能够更好的被分类
	  (0,1)  sigmoid 
	  (-1,1) tanh
	  [0,+∞) Relu  单侧抑制,稀疏激活性 相对宽阔的兴奋边
	   (0,+∞) SoftPlus 
	   (-∞,+∞) Leak Relu
	   归一化指数函数,或称Softmax函数-将多分类的结果以概率的形式展现出来
 
 超参数
    学习率(learning rate)、梯度下降法迭代的数量(iterations)、
	 隐藏层数目(hidden layers)、隐藏层单元数目、
	 激活函数( activation function)
	 
Batch_Size 	 
参数重写(Reparameterization) 归一化 局部响应归一化 Batch Normalization
   批量归一化(Batch Normalization,以下简称 BN) Batch Normalization 是对网络某一层输入数据进行 normalization
   群组归一化 Group Normalization (简称 GN)
   
用别人的参数、修改后的网络和自己的数据进行训练,使得参数适应自己的数据,这样一个过程,通常称之为微调(fine tuning)
   finetune 的过程相当于继续训练,跟直接训练的区别是初始化的时候,直接训练是按照网络定义指定的方式初始化,直接训练是按照网络定义指定的方式初始化
偏差初始化陷阱 
正则化 Dropout: Dropout可以随机删除网络中的神经单元 dropout率 
随机丢弃技术(dropout)选择性地忽略训练中的单个神经元,避免模型的过拟合

 梯度下降法是一个广泛被用来最小化模型误差的参数优化算法。梯度下降法通过多次迭代,并在每一步中最小化成本函数	
    learning_rate end_learning_rate alpha
	decay_rate  decay_steps
	分段常数衰减   指数衰减   自然指数衰减  多项式衰减 余弦衰减

数据增强

	Color Jittering 
    Random Scale  Random Crop	
    Label Shuffle		

训练

 学习率、初始化权重、以及尽可能细致的参数更新策略

标签:归一化,函数,卷积,torch,概念,Pytorch,参数,深度,like
From: https://www.cnblogs.com/ytwang/p/17102127.html

相关文章

  • 【CCCC】L2-026 小字辈 (25分),求多叉树的深度和底层叶节点
    problemL2-026小字辈(25分)本题给定一个庞大家族的家谱,要请你给出最小一辈的名单。输入格式:输入在第一行给出家族人口总数N(不超过100000的正整数)——简单起见,我们......
  • 阿里IM技术分享(十):深度揭密钉钉后端架构的单元化演进之路
    本文由钉钉技术专家啸台、万泓分享,为了获得更好的阅读效果,本文已对内容进行少修订和重新排版。1、引言钉钉后端架构的单元化工作从2018年开始到今年,已经是第五个年头了。......
  • Rancher Prime 2.7:向企业级容器管理平台深度进化
    一直以来,在众多Kubernetes开源管理平台选项中,Rancher深受社区用户的青睐。SUSE在确保开源产品持续灵活演进的同时,也致力于满足企业用户的使用场景,为此SUSE正式推出Ra......
  • maven生命周期、maven概念模型图
    maven生命周期图解maven概念模型图......
  • maven概念、maven项目的一键构建
    maven概念一个对Maven比较正式的定义是这么说的:Maven是一个项目管理工具它包含了一个项目对象模型(POM:OrihectObjectModel)一组标准集合一个项目生命周期(ProjectLifec......
  • 深度学习基础-机器学习基本原理
    本文大部分内容参考《深度学习》书籍,从中抽取重要的知识点,并对部分概念和原理加以自己的总结,适合当作原书的补充资料阅读,也可当作快速阅览机器学习原理基础知识的参考资料......
  • pytorch学习笔记2
    pytorch学习笔记2   RNN结构图pytorch保存模型方法Pytorch有两种保存模型的方式,都是通过调用pickle序列化方法实现的。第一种方法只保存模型参数。第二种方法......
  • AJAX概念以及原生JS方式
    ------------恢复内容开始------------AJAX概念概念:ASynchronous JavaScriptAndXML (异步的JacaScript和XML)异步和同步:客户端和服务器端相互通信的基础上......
  • 深度学习之GRU网络
    https://www.cnblogs.com/jiangxinyang/p/9376021.html 1、GRU概述GRU是LSTM网络的一种效果很好的变体,它较LSTM网络的结构更加简单,而且效果也很好,因此也是当前非常......
  • 高层次综合器Vivado HLS的概念与特点[原创www.cnblogs.com/helesheng]
    最近在写一本Xilinx的FPGA方面的书,现将HLS部分内容在这里分享给大家,希望大家喜欢,也欢迎批评指正。在可编程逻辑器件被用于电子系统设计的前期,由于所含的逻辑资源较少,绝大......