⏱️ 预计阅读时间:30-40分钟
🎯 学习目标:学会怎么设计像大脑一样学习的计算模型,怎么用感知器自动学习分类边界
📚 核心结论(塔尖):神经元模型+网络结构+学习法则+感知器,像大脑一样学习
人工神经网络解决的核心问题是怎么设计一个能够像大脑一样学习的计算模型。这需要解决三个核心问题:
首先,怎么设计单个处理单元?就像大脑中的神经元,人工神经元也需要接收多个输入信号,每个信号有不同的重要性(权重),然后把它们加起来,再通过激活函数决定是否"激活"(输出)。比如,你想判断一张图片是不是猫,神经元会接收"有胡须"、“有尖耳朵”、"有尾巴"等特征,每个特征有不同的权重,加起来后如果超过某个阈值,就判断是猫。
其次,怎么组织神经元之间的连接?就像大脑中神经元之间有不同的连接方式,人工神经网络也有不同的网络结构。
- 前馈网络就像流水线,信息从输入层流向输出层,适合分类、识别等任务;
- 循环网络有反馈连接,能记住之前的信息,适合处理序列数据,比如理解一句话的前后关系。
最后,怎么调整连接权重来学习?就像大脑通过调整神经元之间的连接强度来学习,人工神经网络也需要调整权重。
- 有监督学习就像有老师指导,给你正确答案,你根据错误调整;
- 强化学习就像通过试错学习,做对了有奖励,做错了有惩罚;
- 无监督学习就像自己探索,发现数据中的模式。
通过这三个要素的组合,就能设计出像感知器这样的自动学习分类器。感知器使用最简单的神经元模型,通过错误驱动的学习算法,在线性可分条件下(比如能用一条直线分开两类数据)自动找到分类边界,就像自动学会区分猫和狗。
那么,怎么设计单个处理单元?怎么组织神经元之间的连接?怎么调整连接权重来学习?怎么设计一个能够自动学习的分类器?这些正是本文要解决的核心。
一、人工神经网络的三要素:构建学习系统的基础
首先需要明确三个核心要素:
- 神经元模型决定基本计算能力(就像单个处理单元),
- 网络结构决定信息流动方式(就像组织连接方式)
- 学习法则决定怎么调整权重来学习(就像学习方法)。
1. 神经元模型:输入加权求和加激活函数,决定是否激活
模拟生物神经元的工作方式,设计人工神经元模型,包括输入加权求和(接收多个输入,每个输入有不同权重)和激活函数(对求和结果进行非线性变换)。就像大脑中的神经元接收来自其他神经元的信号,加权求和后决定是否激活。
神经元模型包括输入加权求和(将多个输入信号按权重相加,权重表示连接的重要性,就像每个信号的重要性不同)和激活函数(对加权求和结果进行非线性变换,决定神经元的输出,如阈值函数、Sigmoid函数、ReLU函数,就像决定是否激活)。
- M-P模型是最简单的神经元模型,使用阈值函数,能够实现线性分类,就像简单的开关;
- 扩展模型通过选择不同的激活函数,可以扩展神经元的表达能力,就像更复杂的处理方式。
2. 网络结构:前馈网络单向流动,循环网络有记忆,图网络任意连接
通过不同的连接方式组织神经元,形成不同的网络结构,如前馈网络(信息单向流动,就像流水线)、循环网络(有反馈连接,就像有记忆的系统)、图网络(任意连接结构,就像复杂的网络)。就像不同的组织结构有不同的信息流动方式。
-
前馈网络信息从输入层流向输出层,单向流动,适合分类、回归等静态任务,就像流水线;单层前馈网络只有输入层和输出层,表达能力有限,就像简单的处理;多层前馈网络有隐藏层,能够学习复杂的非线性映射,就像多层处理;
-
循环网络有反馈连接,能够处理序列数据,具有记忆能力,就像有记忆的系统;
-
图网络任意连接结构,适合处理图结构数据,就像复杂的网络。
3. 学习法则:监督学习有标签指导,强化学习有奖励反馈,无监督学习自己探索
通过不同的学习法则来调整神经元之间的连接权重,包括监督学习(有标签指导,就像有老师指导)、强化学习(有奖励反馈,就像通过试错学习)、无监督学习(无外部指导,就像自己探索)。就像不同的学习方式。
监督学习有明确的标签指导,通过最小化预测误差来调整权重,适合分类、回归任务,就像有老师指导;强化学习有奖励信号反馈,通过最大化累积奖励来调整权重,适合序贯决策任务,就像通过试错学习;无监督学习没有外部指导,通过发现数据的内在结构来调整权重,适合聚类、降维任务,就像自己探索。
通用学习法则:权重调整 = 学习率 × 学习信号 × 输入,学习信号根据学习范式不同而不同,就像不同的学习方式有不同的信号。
二、感知器:从理论到实践
1. 单层感知器:只能解决线性可分问题,用一条线把两类点分开
使用M-P神经元模型,输入加权求和后通过阈值函数激活,输出二分类结果(0或1)。就像用一个超平面将空间分成两部分,超平面的一侧输出1,另一侧输出0,就像用一条线把两类点分开。
单层感知器只能解决线性可分问题(可以用一条直线或超平面分开的两类数据),使用硬阈值函数,输出是离散的(0或1)。权重决定分类超平面的方向,偏置决定超平面的位置,就像决定这条线怎么画。
单层感知器只能表示线性函数,无法表示非线性函数(如异或问题),就像只能用直线,不能用曲线。
2. 感知器学习算法:做错了才改,做对了就不改,根据错误方向调整权重
根据错误的方向调整权重,使模型逐渐接近正确的分类边界。就像学生做错题后,根据正确答案调整自己的理解,逐步接近正确答案。
感知器学习算法是错误驱动的,只有当分类错误时才调整权重,分类正确时不调整,就像做错了才改,做对了就不改。权重更新根据错误的方向和输入值调整权重,使模型更接近正确答案,就像根据错误的方向调整。学习率控制每次调整的步长,影响学习速度和稳定性,就像每次改多少。在线学习每次处理一个样本就更新权重,不需要存储所有样本,就像边学边改。
3. 收敛性保证:如果数据线性可分,算法一定能在有限步内找到分类线
感知器学习算法能够在有限步内收敛到正确的分类边界。就像如果问题有解,算法一定能找到解,一定能找到那条分类线。
线性可分条件表示两类数据可以用一个超平面完全分开,这是感知器能够学习的前提条件,就像必须能用一条线分开。算法在有限步内停止,找到正确的分类边界,就像一定能找到那条线。如果数据线性可分,一定存在一个权重向量能够正确分类所有样本。当所有样本都分类正确时,算法停止,就像所有题目都做对了就停止。
4. 多层感知器:通过增加隐藏层,用多条线组合成曲线,解决非线性问题
通过增加隐藏层,多层感知器能够学习非线性分类边界,解决单层感知器无法解决的复杂问题。就像用多个简单的分类器组合成复杂的分类器,就像用多条线组合成曲线。
多层感知器通过隐藏层使网络能够学习更复杂的映射,使用非线性激活函数(如Sigmoid),使网络能够表示非线性函数,就像用多条线组合成曲线。多层感知器能够近似任意连续函数,但需要更复杂的学习算法(如反向传播)来训练多层网络,就像需要更复杂的学习方法。
三、方法选择:根据问题特点权衡
神经元模型、网络结构和学习法则需要协同设计,才能构建出既具有强大表达能力,又能够有效学习的神经网络。
从生物到计算:生物神经元(复杂的生物学机制)→ 人工神经元(简化的数学模型)→ 网络结构(组织方式)→ 学习法则(权重调整)。从简单到复杂:M-P模型(最简单的阈值神经元,就像简单的开关)→ 扩展模型(不同的激活函数,就像更复杂的处理)→ 单层感知器(线性分类,就像用一条线分开)→ 多层感知器(非线性分类,就像用曲线分开)→ 循环网络(序列处理,就像有记忆)。
从固定到学习:固定规则分类器(人工设计规则)→ 单层感知器(自动学习线性边界)→ 多层感知器(自动学习非线性边界)。从有限到通用:单层感知器(只能解决线性可分问题,就像只能用直线)→ 多层感知器(能够解决任意连续函数近似问题,就像能用曲线)。
在实际选择时,你需要在几个方面权衡:在表达能力和计算效率之间找到平衡(能力强但可能算得慢),在模型简单性和表达能力之间找到平衡(简单但能力有限,复杂但能力强),在学习速度和稳定性之间找到平衡(学得快但可能不稳定,学得慢但更稳定)。单层感知器简单但能力有限,多层感知器能力强但更复杂。学习率的选择也需要在速度和稳定性之间权衡(学得快但可能不稳定,学得慢但更稳定)。
2311

被折叠的 条评论
为什么被折叠?



