当前位置:网站首页>人工神经网络
人工神经网络
2022-08-02 05:14:00 【无咎.lsy】
目录
1 背景
从人工智能的学科诞生以来,就有两种学派此消彼长。
第一种学派认为人工智能模拟的是人类大脑对于世界的认识,我们把这一学派叫做人工智能的仿生学派。这一学派认为只有深入研究大脑认知机理和总结大脑处理信息的方式,才能实现人工智能。
而另一种学派认为,在现在以及可预见的未来,我们无法完全了解人脑的认知机理,另一方面,计算机与人脑具有截然不同的物理属性和体系结构,因此片面强调计算机对人脑的模仿既不可能也不必须。这一学派认为,对于人工智能的研究应该立足于现代计算机的物理属性和体系结构,用数学和逻辑推理的方法从现有的计算机中获得确定性的知识,而不是一味的强调对人脑的模仿,这一学派是人工智能的数理学派,比如支持向量机就是这一学派的典型代表,而马上要学到的人工神经网络就是仿生学派的典型代表。
这两种学派在历史上存在冲突和斗争,主导了神经网络的起伏涨跌。
2 人工神经网络
2.1 MP模型
受到生物神经网络的启发,科学家构造了一种模仿人脑神经网络的数学模型,称为人工神经网络。

人工神经网络由美国科学家在1943年首次提出,被称为“MP模型”,该模型结构比较简单,如下图所示:

x:输入 w: 权重 b: 偏置 y:输出

MP模型已经具有了神经元的基础构架,也就是先加权求和再激活,然而该激活中的参数是固定不变的,所以该模型不能从数据中"学习"到知识。
2.2 感知机模型
到了1957年,康奈尔大学的科学家提出了“感知机模型”的概念,从此才真正意义上产生了“人工神经网络”。感知机模型由“输入层,隐藏层,输出层”组成。

本质上,“感知机模型”就是MP模型的改进和累加,然而单层的感知机无法解决异或问题,也就是线性不可分问题,为了解决这个问题,科学家们提出了多层感知机模型。

与单层的感知机相比,多层感知机的隐藏层数量大大增加,这看起来,就像是网络的深度增加了。因此人们把这种隐藏层数量很多的网络叫做“深度神经网络”,也就是当前人工智能的核心技术。
3.反向传播算法
定义
首先来一个反向传播算法的定义(转自维基百科):反向传播(英语:Backpropagation,缩写为BP)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。 该方法对网络中所有权重计算损失函数的梯度。 这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数。
首先明确,“正向传播”求损失,“反向传播”回传误差。同时,神经网络每层的每个神经元都可以根据误差信号修正每层的权重


上面的计算过程并不难,只要耐心一步步的拆开式子,逐渐分解即可。现在还有两个问题需要解决:
误差E有了,怎么调整权重让误差不断减小?
E是权重w的函数,何如找到使得函数值最小的w。
解决上面问题的方法是梯度下降算法

4 基于人工神经网络的其他网络
随着人工神经网络的不断发展,越来越多的网络模型被创造出来。其中,具有代表性的有:前馈神经网络;反馈神经网络;图神经网络。
4.1前馈神经网络
在前馈网络当中,各个神经元按接受信息的先后分为不同层,每一层中的神经元接收前一层神经元的输出,经过计算后,输出到下一层神经元,整个网络中的信息是朝一个方向传播的,没有反向的信息。比如,全连接网络;卷积神经网络(CNN)

4.2 反馈神经网络
反馈网络也称为记忆网络,在反馈网络中,神经元不但可以接收其他神经元的信息,也可以接收自己的历史信息。与前馈神经网络相比,反馈神经网络具有记忆功能。典型代表有循环神经网络(RNN)等

4.3 图神经网络
图神经网络是定义在图结构上的神经网络,在图神经网络中,每一个节点都由每一个或一组神经元构成,每一个节点可以接收来自相邻节点或自身的信息。
图神经网络是前馈神经网络和记忆网络的泛化,包含很多种不同实现的方式,比如:图卷积网络(GCN);图注意力网络(GAT)等
5代码
5.1全连接网络实现手写数字识别
数据集:MNIST
介绍:有60 000行。对应60 000幅训练图像。同时,每行有785个值,每一行的第一个值是每一行图像所表示的数字
数据集下载官方网站 MNIST handwritten digit database, Yann LeCun, Corinna Cortes and Chris Burges
代码实现链接:
手写数字代码识别(pytorch)实现_无咎.lsy的博客-CSDN博客
边栏推荐
- Differences between i++ and ++i in loops in C language
- How Navicat Connects to MySQL
- 51单片机外设篇:点阵式LCD
- Redis集群模式
- Home NAS server (4) | MergerFS and SnapRaid data backup
- [PSQL] window function, GROUPING operator
- 家用 NAS 服务器(4)| MergerFS和SnapRaid数据定时备份
- 【解决】RESP.app 连接不上redis
- About the directory structure of the web application
- kubernetes affinity, anti-affinity, taint, tolerance
猜你喜欢

Meta公司内部项目-RaptorX:将Presto性能提升10倍

上海交大牵手淘宝成立媒体计算实验室:推动视频超分等关键技术发展

goroutine (coroutine) in go language

Double for loop case (use js jiujiu printing multiplication table)

BGP实验(路由反射器,联邦,路由优化)

程序员最重要的能力是什么?

在腾讯做外包测试的那些日子.....

Navicat cannot connect to mysql super detailed processing method

测试环境要多少?从成本与效率说起

classSR论文阅读笔记
随机推荐
Google notes cut hidden plug-in installation impression
目标检测重要概念——IOU、感受野、空洞卷积、mAP
Introduction to Grid Layout
Home NAS server (4) | MergerFS and SnapRaid data backup
说好的女程序员做测试有优势?面试十几家,被面试官虐哭~~
Meta公司新探索 | 利用Alluxio数据缓存降低Presto延迟
虚拟现实房产展示系统提前预见未来装修效果
PSQL function, predicate, CASE expression and set operations
How Navicat Connects to MySQL
golang's time package: methods for time interval formatting and output of timestamp formats such as seconds, milliseconds, and nanoseconds
The advantages of making web3d dynamic product display
Three methods of importing sql files in MySQL
提高软件测试能力的方法有哪些?看完这篇文章让你提升一个档次
How much does a test environment cost? Start with cost and efficiency
Install and use Google Chrome
C语言小游戏——扫雷小游戏
洛谷小游戏大全(用洛谷的人都得知道)
There are more and more talents in software testing. Why are people still reluctant to take the road of software testing?
Timing task library in the language use Cron, rounding
Redis(十二) - Redis消息队列
