深度学习
一、机器学习和深度学习
机器学习流程:
- 数据获取
- 特征工程
- 建立模型
- 评估与应用
ML机器学习(Machine Learning):更偏向于人工,传统算法
DL深度学习(Deep Learning):
- NN→CNN
- PyTorch
- 分割、检测等
DL实质:将人工的事情简单;计算复杂的事情交给计算机
优点:简洁、方便、效果好
二、知识点
1、CV 计算机视觉
CV:处理图像、视频数据
核心:提特征(提取动物、植物、物品等特征,进行分类)
传统方法:人为指定色彩、纹理、色差、饱和度等
- 图像数据——计算机处理的 向量、数值
- 输入数据——迭代、计算--输出更好呈现的信息
ImageNet 2012
- 人工:标数据 需要大量人力
- Alex CNN
深度学习算法难点:吃数据 数据量足够多
数据集不够:数据增强
一张图片 三维数组 H W C通道(RGB)
图像处理存在问题:角度背景、遮蔽
2、传播过程
前向传播
线性函数 f(x,W)=Wx+b
(1)神经网络玄学: 随机,结果并不能完全一样
**随机参数**:试探,效果不好,更新权重参数,优化、迭代
**损失函数** :量化值,衡量当前权重参数有多差
正确与错误类别值相差很小,模型没有完全分清,所以要加上Δ
(2)权重、图像真值、偏置
(3)计算得到损失
反向传播
(1)[wx+b, Y] 有监督任务 x、Y标签已知
(2)保证x,Y不变,更新偏置b和权重w
(3)让损失更小——R(W)正则化惩罚,分布在较小区域分布
3、传统网络结构
输入层
一个样本 三个特征 [1×3] [1×4] [1×4] [1×1]
w1[3×4] b1 4
w2[4×4] b2 4
w3[4×1] b3 1
大量权重参数,提特征,最终得到结果
难点:反向传播、求偏导——每个权重需要更新
隐藏层
隐藏层:输入特征做各种组合变换,从而得到更多特征,维度更大
实质:人类的数据(特征)转换为计算机更好识别的特征
目的:最好的特征提取方式
深度学习:网络层数深、每一隐藏层特征数量多(宽)
过拟合:异常点、离群点——结果有很大的改变
对于NLP
文本数据 字符串——计算机 识别的特征
语音数据
信号数据-- 特征
输出层
监督学习:需要事先通过已知的输入输出数据进行学习,对未知的输入数据进行预测
回归问题选择恒等函数作为激活函数,分类问题选择softmax函数作为激活函数
4、卷积神经网络
图像——>分成局部区域,进行特征提取
- 一个区域提取特征,每个区域获得特征值
- 得到特征矩阵
- 输入区域 → 特征值
(1)结构对比
左侧为传统网络结构,右侧为卷积神经网络结构
包括:输入层、卷积层、池化层、全连接层
(2)卷积核
内积:垂直内积为0,夹角为0内积最大
内积:对应位置相乘再求和
卷积核与不同通道内积和,最后再相加,因此卷积核个数为得到输出的通道数
一组卷积核得到一个特征图
卷积核个数(几组)为输出通道的通道数
Low-Level-Feature Mid-level-Feature High-level-Feature
(3)池化
下采样 H W 大小改变,C不变
全连接——特征组合在一起
提特征:一个区域一个区域提取
池化的作用:节省参数