人工神经网络(Artificial Neural Network,ANN)

目录

1.第一次寒冬

2.多层神经网络定义

3.三层神经网络可以实现所有决策面

3.1两层神经网络示例

3.2三层神经网络

4.总结

4.1非线性激活函数

4.2理论与应用


1.第一次寒冬

感知器算法)只能处理线性可分的问题,但是现实中大多数分类问题都是线性不可分的。于是该算法被认为没有实际性的应用,1969年~1980年,是历史上人工网络研究的第一次寒冬。

2.多层神经网络定义

人工神经网络又名神经网络(NN),是一种模仿生物神经网络的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。它由节点层组成,包含一个输入层、一个或多个隐藏层和一个输出层。

结构图示例:

首先进行线性计算,有: ,i=1~3,

随后经过非线性激活函数变为,有: ,i=1~3,

最终输出为:

根据以上式子可以发现,如果不加非线性函数,那么多层网络就会退化到一个神经元的感知器模型状态。

3.三层神经网络可以实现所有决策面

3.1两层神经网络示例

先看两层神经网络,前面的结构图示例就是一个两层神经网络。并且是一个在二维空间里三角形决策面的神经网络结构。

如图:假如有一个分类问题用以下三角形决策面进行分类,假设在决策面里面的为一类,三角形外面为另一类。

三条边的方程分别如图所示,根据前面的描述,设三角形内部边的方程大于0,外部方程边的方程小于0:

假设非线性函数采用的是阶跃函数(如图):

现在模拟样本被分类的情况:假设一个样本在决策面内部,那么根据网络结构有都大于0。再分别经过阶跃函数之后,都为1。此时,最终输出对应为,代入的值有

同样地,假设一个样本在决策面外部,最终输出

假设,则根据假设有,则可取b=-1,使得当样本在决策面内部时y>0,在外部时y<0。

如果是一个二维空间中的四边形的决策面,结构图类似,只是隐藏层的神经元个数增加:

3.2三层神经网络

假设在一个二维空间中有两个嵌套的三角形决策面:

两层神经网络结构并不能模拟出来,如图:

假设一个样本在c1里面,那么都大于0,都小于0。经过阶跃函数后,都为1,都为0,最终输出为

假设在c1之外的区域,那么有都大于0或者都小于0,那么最终输出为或者

以上分析看似没有问题,但是有一个关键点:我们擅自将认为是大三角形的三条边,是小三角形的三条边。但是对于计算机来说,这6个神经元都是独立且平等的,这种结构并不能让它知道哪三个神经元对应的是哪个三角形。虽然可以通过手动设置权重值实现表面上的"分组",但是在解决实际问题时毫无意义,原因会在最后一小节说明。

对应三层网络结构如下:

对上述情况重新讨论,如果样本在c1里面,那么,经过阶跃函数后,

同时,经过阶跃函数后,。那么最终输出为

如果不在c1里面,那么有两种情况:1. 都小于0,则最终输出

  1. 都大于0,则最终输出。为了统一约束,让这两情况输出一样,可以设一个限制条件:

由此就可以令=1,则=-1。

最后做总结:通过上面两个网络结构对比可以发现,三层网络结构在两层网络结构的基础上实现了分组,创造了"逻辑门"。使得成为了独立的区域检测。

4.总结

4.1非线性激活函数

上述示例非线性函数都用的是阶跃函数,事实上常用的非线性函数有:Sigmoid、Tanh、ReLU、Leaky ReLU等。

回想感知机算法步骤,我们期望能通过机器学习自动寻找到最优的w和b。而这个实现过程有前向传播和后向传播的操作。在后向传播中还有求导运算,而阶跃函数大部分时候导数几乎全为0,这样网络就没有办法自动学习,所以该函数的实际应用意义不大。

4.2理论与应用

其次,在前面的示例中,一些w和b都是手动设置的固定的值,不符合机器学习"从数据中自主学习"的核心思想。所以以上只能是理论上的讨论,在现实生活中大部分问题甚至都无法得知决策面的具体形态,但是通过这些示例可以更深刻的理解神经网络的原理。

相关推荐
向量引擎几秒前
AI Agent 安全元年:OpenClaw 投毒事件如何改变整个生态安全标准,
运维·人工智能·安全·自动化·aigc·api调用
Kel5 分钟前
从Prompt到Response:大模型推理端到端核心链路深度拆解
人工智能·算法·架构
亦暖筑序8 分钟前
Message 四分天下:Spring AI 如何统一消息格式
java·人工智能
tinygone11 分钟前
OpenClaw通过ACPX调用Claude Code实现飞书操作CC
人工智能·飞书·ai编程
2501_9333295514 分钟前
AI驱动媒介宣发:Infoseek舆情系统的技术架构与公关实战
数据仓库·人工智能·重构·数据库开发
云栖梦泽24 分钟前
【AI】AI安全工具:常用AI安全检测工具的使用教程
大数据·人工智能·安全
海兰34 分钟前
【AI网关】阿里开源的Higress(OpenAPI-to-MCP工具)
人工智能·架构·开源·银行系统
凤山老林34 分钟前
Java 开发者零成本构建 RAG 知识库:Spring AI Alibaba + Ollama 搭建本地 RAG 知识库
java·人工智能·知识库·rag·spring ai
独断万古他化35 分钟前
AI 赋能自动化测试实战:从用例生成到 CI/CD 全流程落地
人工智能·ci/cd·测试
笨笨饿35 分钟前
34_数据结构_栈
c语言·开发语言·数据结构·人工智能·嵌入式硬件·算法