图像分类_02神经网络(NN)简介:定义+ 感知机+历史

2.2.1 什么是神经网络

人工神经网络( Artificial Neural Network, 简写为ANN)也简称为神经网络(NN)。是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)结构和功能的 计算模型。经典的神经网络结构包含三个层次的神经网络。分别输入层,输出层以及隐藏层。

其中每层的圆圈代表一个神经元,隐藏层和输出层的神经元有输入的数据计算后输出,输入层的神经元只是输入。

  • 神经网络的特点

    • 1、每个连接都有个权值
    • 2、同一层神经元之间没有连接
    • 3、最后的输出结果对应的层也称之为全连接层
  • 组成:

    • 输入层:神经网络的第一层,原始的样本数据
    • 输出层:神经网络的最后一层,最终的计算结果
    • 隐藏层:其余的中间层都被称为隐藏层(hidden layer)
    • 权重(weight):就是之前所说的参数,这里被称为一个神经节点的权重。
    • 激活函数(activation function):激活函数是两层神经元之间的映射函数,是一种输出到输入的转换,一般是非线性的,而且是单调可微函数(因为优化方法是基于梯度的)。常见的激活函数有:sigmoid,tanh

那么为什么设计这样的结构呢?首先从一个最基础的结构说起,神经元。以前也称之为感知机。神经元就是要模拟人的神经元结构。

一个神经元通常具有多个树突,主要用来接受传入信息;而轴突只有一条,轴突尾端有许多轴突末梢可以给其他多个神经元传递信息。轴突末梢跟其他神经元的树突产生连接,从而传递信号。这个连接的位置在生物学上叫做“突触”。

要理解神经网络,先解释一种叫做感知机(perceptron)的人工神经元。感知机由科学家Frank Rosenblatt发明于1950至1960年代,他受到了来自Warren McCulloch 和Walter Pitts的更早工作的启发。

注:我们通常使用其它种类的人工神经元模型,主要使用的是一种叫做sigmoid神经元(sigmoid neuron)的神经元模型。

2.2.1.1 感知机(PLA: Perceptron Learning Algorithm))

感知机就是模拟这样的大脑神经网络处理数据的过程。感知机模型如下图:

感知机是一种最基础的分类模型,前半部分类似于回归模型。感知机最基础是这样的函数,而逻辑回归用的sigmoid。这个感知机具有连接的权重和偏置

2.2.3 神经网络发展史

  • 1、深度学习其实并不是新的事物,深度学习所需要的神经网络技术起源于20世纪50年代,那个时候叫做感知机。当时也通常使用单层感知机,尽管结构简单,但是能够解决相当复杂的问题。
  • 2、后来感知机被证明存在严重的问题,因为只能学习线性可分函数,连简单的异或(XOR)等线性不可分问题都无能为力,1969年Marvin Minsky写了一本叫做《Perceptrons》的书,他提出了著名的两个观点:1.单层感知机没用,我们需要多层感知机来解决复杂问题 2.没有有效的训练算法。
  • 3、1974年哈佛大学博士毕业生Paul J. Werbos首次提出反向传播算法应用在神经网络的可能,The Roots of Backpropagation: From Ordered Derivatives to Neural Networks and Political Forecasting,但并未得到学术界的重视。直到1986年BP算法才真正开始流行起来,主要是因为Rumelhart、Hinton、Williams合著的《Learning representations by back-propagating errors》
  • 4、 虽然训练算法有了突破,但是还存在很多问题,比如以当时计算机的计算能力,训练一次神经网络耗时太久,不具备实际使用价值。同时还会存在过拟合以及梯度消失等问题。而90年代中期,由Vapnik等人发明的支持向量机(Support Vector Machines,SVM)算法诞生,它同样解决了线性不可分问题,但是对比神经网络有全方位优势:
    • 1、高效,可以快速训练;
    • 2、无需调参,没有梯度消失问题;
    • 3、高效泛化,全局最优解,不存在过拟合问题,几乎全方位的碾压神经网络。
  • 5、几乎在这10几年的时间,只有Hinton等几位学者在研究神经网络。直到2006年,提出了"深度置信网络"概念,有一个预训练的过程。使用微调技术作为反向传播和调优手段。减少了网络训练时间,并且提出了一个新的概念叫做"深度学习"
  • 6、直到2012年,在ImageNet竞赛中,Hinton教授的团队,使用以卷积神经网络为基础的深度学习方案,他们训练的模型面对15万张测试图像时,预测的头五个类别的错误率只有 15.3%,而排名第二的日本团队,使用的SVM方法构建的模型,相应的错误率则高达 26.2%。从此一战成名!2012年后深度学习就成为主流。

2.2.4 总结

  • 神经网络的定义
  • 感知机与神经网络的联系
  • 神经网络的发展历史

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/469481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Github教程】史上最全github使用方法:github入门到精通

原文 http://www.eoeandroid.com/thread-274556-1-1.html 【初识Github】 首先让我们大家一起喊一句“Hello Github”。YEAH!就是这样。Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其…

图像分类_03分类器及损失:线性分类+ SVM损失+Softmax 分类+交叉熵损失

2.3.1 线性分类 2.3.1.1 线性分类解释 上图图中的权重计算结果结果并不好,权重会给我们的猫图像分配⼀个⾮常低的猫分数。得出的结果偏向于狗。 如果可视化分类,我们为了⽅便,将⼀个图⽚理解成⼀个⼆维的点,在下⾯坐标中显示如下…

数据结构之图:加权无向图与寻找最小生成树,Python——27

加权无向图与prim算法和Kruskal算法寻找最小生成树 加权无向图的介绍 引入 加权无向图是一种为每条边关联一 个权重值或 是成本的图模型。这种图能够自然地表示许多应用。在一副航空图中,边表示航线,权值则可以表示距离或是费用。在一副电路图中,边表示导线,权值则可能表示导…

课程简介

什么是网页布局? 网页布局是网页制作的基础。 DIVCSS布局网页 流式布局、浮动布局、绝对定位布局 相关知识点 标准文档流 盒子模型 float属性 position属性 三个案例 自动居中-列布局案例--盒子模型的使用方法 浮动布局案例--float属性 解决浮动影响的方法 绝对定位…

图像分类_04神经网络最优化过程:反向传播+代码实现

logistic模型原理与推导过程分析(1)https://blog.csdn.net/qq_39237205/article/details/121031296https://blog.csdn.net/qq_39237205/article/details/121031296 logistic模型原理与推导过程分析(2)https://blog.csdn.net/qq_3…

数据结构之图:加权有向图与dijkstra算法找到最短路径,Python——28

加权有向图与dijkstra算法找到最短路径 加权有向图的构造 最短路径问题与最短路径树 最短路径问题(The shortest path problem)定义 最短路径可以是时间花费最短,也可以是距离最短,或是花费最少在图论中,最短路径问…

【转】构建微服务架构的最佳实践2/3

本文是这一系列文章的第二篇,将介绍服务的交互。 服务的交互 微服务架构提倡有许多职责单一的小服务组成,这些服务之间互相交互。然而这就造成了一系列的问题,比如:服务之间如何发现彼此?是否采用统一的协议&#xff1…

李沐动手学深度学习pytorch :问题:找不到d2l包,No module named ‘d2l’

同学你好!本文章于2021年末编写,已与实际存在较大的偏差! 故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现, Pytorch深度学习理论篇(2023版)…

[已解决]fdfs-client-py==1.2.6安装失败

fdfs-client-py1.2.6解决方法 下载修改版的fdfs的master.zip文件到任意文件夹: https://pan.baidu.com/s/12UwP6IBqvXK9AuVt3oEuCA 提取码:fdfs 复制这段内容后打开百度网盘手机App,操作更方便哦 进入你要安装模块的目录中并激活环境&#x…

解决loaded more than 1 DLL from .libs和No metadata found in lib\site-packages两个错误

### 卸载numpy pip uninstall numpy 解决No metadata found in lib\site-packages 去这个文件夹下找到numpy的两个文件夹 删除 然后重新输入pip install numpy

解决Error #15: Initializing libiomp5.dylib, but found libomp.dylib already initialized.

解决 OMP: Error #15: Initializing libiomp5.dylib, but found libomp.dylib already initialized. OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can degrade performance or cause in…

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘

启动数据库时报错,代码ERROR 2002 (HY000) 报错截图: 原因:网络环境发生改变,mysql配置文件中绑定的IP与现在系统的IP不一致 解决:修改配置文件中绑定的IP地址为本系统的IP地址 使用命令: sudo vi /etc/…

Android 异常问题分析

1. Introduction 解决问题通常分为以下几个步骤: a) 确定问题,这是个什么样的问题,有什么外在表现; b) 分析问题,根据log里面的蛛丝马迹,定位出问题的原因; c) 对症下药,尽量用最…

图像目标分割_1 概述

6.1.1 什么是目标分割 定义:在计算机视觉领域,图像分割(Object Segmentation)指的是将数字图像细分为多个图像子区域(像素的集合)的过程。 图像分割的目的:简化或改变图像的表示形式&#xff0…

字符数组和strcpy

已知strcpy函数的原型是char *strcpy(char *strDest, const char *strSrc);,其中strDest是目的字符串,strSrc是源字符串。 (1)Write the function strcpy, dont call C/C string library.(不调用C/C的字符串库函数&…

Django开发中问题和报错集合

记录django项目开发过程中的遇到的问题,导致原因和已经奏效的解决方法 常见报错UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xbc in position 852: invalid start byte 这个问题在一些电脑上做django开发时经常出现 要么是py文件运行是就报这个类似…

图像目标分割_2 FCN(Fully Convolutional Networks for Semantic Segmentation)

6.2.1 FCN 背景介绍 图像语义分割:给定一张图片,对图片上每一个像素点进行分类!但是与图像分类目的不同,语义分割模型要具有像素级的密集预测能力才可以。 6.2.2 FCN介绍 6.2.2.1 全卷积网络 全卷积网络,模型由卷积…

Adbshell相关命令

Adb&shell相关命令 作者:韦启发 1、 过滤显示字符 adb logcat | grep MyApp adb logcat | grep -i myapp #忽略大小写。 adb logcat | grep --colorauto -i myapp #设置匹配字符串颜色。更多设置请查看 grep 帮助。 adb logcat | grep --colorauto 1679 …

求4个数字组成的不重复三位数,Python简洁解法

求4个数字组成的不重复三位数,Python解法 题目要求: 求所有由5,6,7,8组成的数字不重复的三位数 不重复的三位数,即不能出现555,566这种 通过分析,可以使用画树的方法来确定要求的三位数的值与个数 按照上图所示可以确定由5&am…

图像目标分割_3 SegNet + U-Net

6.3.1 SegNet背景 SegNet的主要动机是场景理解的应用。 难点:因此它在设计的时候考虑了要在预测期间保证内存和计算时间上的效率。分割的任务其实应用非常地广,需要理解各个像素之间的关系,比如要区分出人行道和车行道,建筑物和…