1.神经网络
- 一种机器学习的算法
- 一般有输入层-->隐藏层-->输出层
- 隐藏层数量多于两个的称为深度神经网络;
- 输入的是特征向量;
- 特征向量代表的是变化的方向;
- 或者说是最能代表这个事物的特征方向;
- 权重是特征值,有正有负,加强或抑制;
- 权重的绝对值大小,代表输入信号对神经元的影响大小
什么是神经网络
- 人是怎么思考的?--生物神经网络
- 由相互联系的神经元组成;
- 神经元具有权重;
- 根据训练期间的错误更新偏差;
- 找到一个未知函数的近似解;
感知器
- 外部刺激通过神经末梢,转为电信号
- 电信号传导到神经细胞(又称神经元)
- 无数神经元构成神经中枢
- 神经中枢综合各种信号,给出判断
- 人体根据神经中枢指令,对外部刺激作出反应.
生物神经网络基本工作原理
- 一个神经元的输入端有多个树突;
- 树突主要用来接收输入信息;
- 突触累加信息;
- 累加的信息大于特定的阈值时;
- 轴突会把信息传输出去;
- 此时称为神经元被激活;
- 相反,处理后的输入信息小于阈值,神经元处于抑制状态;
人工神经网络
- 接收来自其他n个神经元传递的信号;
- 这些信号与相应的权重进行加权求和,并传递给下个阶段(预激活阶段);
- 加权结果(也称为预激活的加权)传递给激活函数;
人工神经网络与生物神经网络的不同
- 人脑中的一个神经元可连接一定距离内的任意神经元;
- 人工神经网络具有离散的层\连接和数据传播的方向
神经元
- 组成神经元网络的最基本单位;
- 起初来源于人体,模仿人体的神经元;
- 功能与人体的神经元一致;
- 对得到的信号,经数据处理;
- 给出一个结果作为输出;
- 或者作为下一个神经元的输入
- 当h大于0时输出1;
- 当h小于0时输出0;
- 实质是把特征空间一切两半;
- 每一半分属不同的类;
- 神经元的缺点:只能一刀切;
- 解决方法:多层神经网络;
人工神经网络的实现
- 神经网络是一种运算模型;
- 由大量的节点(神经元)和其间的相互连接构成;
- 两个节点之间的连接具有一个权重;
- 权重相当于人工神经网络的记忆;
- 输出依赖于网络的连接方式,权重和激励函数的不同而不同;
- 网络本身是对自然界某种算法或者函数的逼近;
- 也可能是对一种逻辑策略的表达
多层神经网络
- 由多个神经元组合而成;
- 前一个神经元的结果作为后一个神经元的输入;
- 任何多层网络可以用三层网络近似表示;
- 根据经验确定隐藏层应该有多少个节点;
- 根据测试的效果调整隐藏层节点数量;
前馈神经网络
- 也称多层感知机;
- 人工神经网络主要考虑网络链接的拓扑结构\神经元特征\学习规则等;
2.激活函数
- 神经网络设计的一个核心单元;
- 处于活跃状态的神经元成为激活态;
- 非活跃的神经元成为抑制态;
- 激活函数赋予神经元自我学习和适应的能力;
- 激活函数的作用为了在网络中引入非线性的学习和处理能力;
常用的激活函数
- sigmoid函数:
- tanh函数:
- ReLU函数:
激活函数的作用
sigmoid的主要缺点
- 梯度饱和,两边数值的梯度都为0;
- 结果的平均值不为0,会导致后层神经元输入非零均值信号,对梯度产生影响
reLU
- 起源于神经科学的研究;
- 从生物学角度模拟了脑神经接受信号更精确的激活模型
激活函数比较
神经元稀疏
- ReLU函数是分段线性函数;
- 把所有的负值变为0,正值不变;
- 这种操作称为单侧抑制;
- 因为单侧抑制,网络中的神经元具有稀疏激活性;
- 模型增加N层后,理论上ReLU神经元的激活率降低2的N次方倍;
张量
- 算法的运行依赖数据结构;
- 张量将各种数据统一封装并输入网络;
- 不同情况下有不同存在形式的张量;
- 张量的一大特征是维度;
- 0维张量是一个常量;
- python中读取ndim获取张量维度;
- 数组等价一维张量;
- 二维数组等价一个二维张量;
- n维张量本质是一维数组,数组中的元素都是n-1维张量
设计神经网络
- 确定网络的层数;
- 确定每层单元个数;
- 将特征向量归一化,加速学习过程;
- 编码离散变量,每一个输入单元对应一个可能特征值;
- 可以解决分类问题(classification)
- 也可解决回归问题(regression)
- 两分类问题的输出表示:[0,1];
- 多分类问题的输出表示:[1 0 0 0 0 0];
- 确定隐藏层的数量没有规则;
- 根据实验测试和误差精准度不断调整改进.
感性认识隐含层
- 输入层的每个节点代表图片的某一像素;
- 输入层的节点个数为像素点的个数;
- 输出层为一个单一节点,标示0和1;
- 对人脸识别的问题;
- 问题分解:
- 上方有头发;
- 左上\右上各有一个眼睛;
- 中间有鼻子
- 下方中间有嘴巴
- 左右两侧有耳朵
- 综合上述问题的结果:
- 大部分为1,判定为人脸;
- 子网络继续分解为解决更为简单的问题.
- 一层层的分解;
- 直到一个神经元能回答一个简单的问题;
3.深度学习
深度神经网络&深度学习
- 传统的神经网络发展到了多隐藏层结构
- 具有多个隐藏层的网络称为深度神经网络;
- 基于深度神经网络的机器学习称为深度学习
机器学习
- 是人工智能的核心;
- 研究如何使用机器来模拟人类学习活动的一门学科;
- 一种实现人工智能的方法;
- 是一门多领域交叉学科;
- 涉及概率论\统计学\逼近论\凸分析\算法复杂度理论等多门学科
- 使计算机具有智能的根本途径
- 应用遍及人工智能的各个领域
- 主要使用归纳\综合而不是演绎
深度学习
- 多层人工神经网络
- 是机器学习的分支
- 对数据进行表征学习的方法
- 一种实现机器学习的技术;
- 将模型处理得更加复杂;
- 使模型对数据的理解更为深入;
- 动机在于建立\模拟人脑进行分析学习的神经网络
- 模仿人脑的机制来解释数据;
- 实质是通过构建具有多隐藏层的机器学习模型;
- 以及海量的训练数据
- 学习更有用的特征
- 最终提升分类或预测的准确性
- 最重要的作用是表征学习,
- 学习层级化的特征
- 数据规模推动深度学习进步;
人工智能关系圈
文章来源:https://www.toymoban.com/news/detail-832745.html
文章来源地址https://www.toymoban.com/news/detail-832745.html
到了这里,关于计算机视觉基础知识(十二)--神经网络与深度学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!