OpenMMLab寒假AI实战营(CV)--day1

计算机视觉与OpenMMLab

计算机视觉

1.概念(是什么)
让计算机会“看”的学科,让计算机看懂并理解图片、视频等(e.x.微信扫一扫识物,人脸识别、自动驾驶)
OpenMMLab寒假AI实战营(CV)--day1_第1张图片
OpenMMLab寒假AI实战营(CV)--day1_第2张图片
(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)
2.发展历史
1964, Larry Roberts: Machine perception of 3d solids
1982, David Marr: 三维的视觉计算理论(input image(2D)–edge image–sketch(2.5D)–model(3D))
1991, Turk & Pentland: Eigen Face
2001, Viola & Jones: VJ人脸检测(Harr小波检测 & Adaboost级联分类器)
2006, 李飞飞(斯坦福大学): ImageNet项目
2010——,AlexNet, Fast R-CNN

OpenMMLab

1.总体架构概览
OpenMMLab寒假AI实战营(CV)--day1_第3张图片
(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)
2.算法框架介绍
MMDetection: 目标检测、实例分割、全景分割
MMDetection3D: 3D目标检测
MMClassification
MMSegmention: 无人驾驶汽车、遥感、医疗影像分析
MMPose & MMHuman3D
MMTracking: 目标跟踪
MMAction2: 行为识别、时序动作检测、时空动作检测
MMOCR: 文本检测、文本识别、关键信息提取
MMEditing: 图像修复、抠图、超分辨率、图像生成

机器学习和神经网络简介

机器学习是什么

问题——数据收集——拟合模型(让计算机从数据中学习解决问题)

机器学习典型范式
  • 监督学习(数据之间存在某种映射关系)
  • 无监督学习(数据自身是否存在某种规律)
  • 强化学习
    (个人理解:监督学习是在大量样本中寻找自变量x与因变量y之间的关系,而无监督学习是寻找自变量x1,x2之间的相关性进而得到样本之间的相关关系)
感知器(Perceptron)

1958年Frank Rosenblatt在康奈尔大学航空实验室发明,用来求解线性二分类问题。

机器学习的基本流程
  • 训练
  • 采集需要数据,标注类别,选取一部分用于训练分类器
  • 验证
  • 从采集、标注的数据中另外选取一部分测试所得分类器的分类精度,验证所用数据不能和训练重合,以保证分类器的泛化性能,防止过拟合。
    3.应用
  • 将分类器集成到实际业务系统,实现对应功能。

神经网络

OpenMMLab寒假AI实战营(CV)--day1_第4张图片
(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)
权重weight: 连接线上的值,即图中w1,w2,…,wd
偏置值bias: 线性回归方程中偏置项,只改变函数位置,不改变其方向。
OpenMMLab寒假AI实战营(CV)--day1_第5张图片
(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)
激活函数

  • 给神经网络加入非线性变换,使其能解决非线性分类的问题
  • 不包含学习参数
  • 常见的激活函数有:Sigmoid、ReLU函数等
    OpenMMLab寒假AI实战营(CV)--day1_第6张图片
    (图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)
多层感知器

OpenMMLab寒假AI实战营(CV)--day1_第7张图片
(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)

多分类任务

神经网络的输出层

  • 如果是多分类任务,那么神经网络的输出就有多个y1,y2,y3,…
  • 每个输出介于0~1之间,且所有输出之和为1
  • 通常使用softmax激活函数*softmax*激活函数
    OpenMMLab寒假AI实战营(CV)--day1_第8张图片
    (图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)
神经网络的训练

神经网络性能的衡量

  • 错误率越低越好
  • 定义连续的损失函数作为媒介(交叉熵损失Cross-Entropy Loss

训练方法梯度下降算法
关于具体的梯度下降算法的讲解可以参考大佬的文章:

https://blog.csdn.net/qq_41800366/article/details/86583789?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167531950516800192254180%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=167531950516800192254180&biz_id=0&spm=1018.2226.3001.4187

训练流程

  1. 前向传播计算样本损失
  2. 反向传播计算样本损失梯度,更新参数
    OpenMMLab寒假AI实战营(CV)--day1_第9张图片
    (图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)

卷积神经网络(CNN)

卷积神经网络相对深度神经网络的优势

  1. 局部连接
  2. 共享权重
整体结构

OpenMMLab寒假AI实战营(CV)--day1_第10张图片
(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)

卷积层

卷积核扫描整张输入图像输出特征图(卷积核的通道数需与输入图像的通道数相同,通常使用多个卷积核)

激活层

激活层基于一个非线性函数对输入特征图进行逐元素变换,激活层通常不包含学习参数OpenMMLab寒假AI实战营(CV)--day1_第11张图片

(图片来源:通用视觉框架OpenMMLab计算机视觉与OpenMMLab开源算法体系–张子豪PPT)

池化层(Pooling Layer)

池化层在特征图的局部区域内计算最大值或者平均值,从而降低特征图分辨率,节省计算量,提高特征的空间鲁棒性。

全连接层(Full Connected Layer)

全连接层通过矩阵乘法将输入特征映射为输出特征

概率输出层

将网络输出转换为概率向量

你可能感兴趣的:(人工智能,深度学习,计算机视觉)