神经网络是怎么工作的?从神经元到多层感知机

🎯 博主简介

你好,我是安逸,CSDN「人工智能技术领域新星创作者」,码龄 6 年。博客总访问量 31万+,博客粉丝 1.2万+。

我长期关注人工智能技术与工程实践,主要研究和分享 AI Agent、RAG 系统、MCP 协议、OpenClaw、AI 编程工具以及大模型工程化落地。同时也持续输出 Java / Spring、Transformer、机器学习、深度学习与计算机视觉等方向的学习笔记和项目经验。

📚 推荐系列合集

目前已经整理了 生产级 RAG 系统实战Agent 记忆系统MCP 协议深度解析OpenClaw 系列Hermes Agent + Obsidian图解机器学习Claude Code 系列Agent 经典面试题等系列合集,涵盖 AI 应用开发、智能体实践、知识管理、机器学习与 AI 编程工具。

📱GZH:安逸Ai (科技前沿新闻,Github热门项目,最新免费资料...)

网页观看完整系列合集:🌐 Anyi AI 学习资源站


上篇我们聊了深度学习是什么、能做什么。你可能还记得它的核心就是"从数据中自动学习规律"。但问题是:它到底是怎么学的?怎么从一堆乱七八糟的图片里,认出哪只是猫哪只是狗?

答案就在神经网络里。这名字听着玄乎,但其实原理没那么复杂。今天我们就把它拆开来看,一层层扒干净。

神经网络本质上就是个数学公式

别被"人工智能"、"深度学习"这些词吓到。

说白了,神经网络就是一道数学题。

你给它一个输入,它给你一个输出。图片进去,标签出来。语音进去,文字出来。不管多花哨的应用,底层都是"输入→处理→输出"这一套。

但这道题和我们数学课上的不一样。它有成千上万个参数,就像一个超级复杂的公式。这些参数决定了输入怎么变成输出。

数据流转图,展示输入(图片/语音/文字)经过神经网络黑箱处理后输出(识别结果/翻译内容)的完整流程

打个比方。神经网络就像一个巨型工厂。原材料进去(数据),流水线处理(神经网络),成品出来(预测结果)。

工厂里的每个工人都记着自己的小任务。所有工人配合起来,就能完成单独一个人根本搞不定的事。

单个神经元长什么样?

工厂由工人组成,神经网络由神经元组成。

一个神经元长这样:

它左边有好多输入。每个输入都带个数字,叫权重。权重越大,这个输入越重要。

神经元把所有的输入乘以对应权重,加起来。再加上一个偏置,就像微调螺丝。

最后过一道激活函数,出来一个输出。

听起来复杂?做个决定就懂了。

比如你决定今天中午吃什么。考虑因素:钱包鼓不鼓(输入1)、饿不饿(输入2)、想不想吃辣(输入3)。

钱包影响大,你就给它高权重。想不想吃辣无所谓,权重就低。

这就是神经元在做的事:加权求和 + 微调

单个神经元结构图,展示X1、X2、X3输入,W1、W2、W3权重,求和、偏置b、激活函数f到输出y的完整路径

每个神经元的输出,又可以成为下一个神经元的输入。一层一层传下去,信息就这样被处理了。

激活函数是干啥的?

刚才说神经元最后要过激活函数。这步到底有什么用?

没激活函数的话,神经网络就是个线性公式。输入放大两倍,输出就放大两倍。永远学不会复杂的东西。

激活函数负责打破线性

它让网络能够处理"不是A就是B"这种情况,也能处理"在A和B之间徘徊"的模糊地带。

常见的激活函数有三种:

Sigmoid:输出在0到1之间,适合做概率预测。但梯度容易消失,深层网络不好用。

ReLU:大于0输出原值,小于0输出0。简单高效,是现在的主流。

Tanh:输出在-1到1之间,中心是0。比Sigmoid好用一点。

怎么选?先记住ReLU最常用就行。后面我们专门讲激活函数的选择。

三种激活函数曲线对比图,左上是Sigmoid曲线呈S形,右上是ReLU函数曲线,左下是tanh双曲正切曲线

多层结构:从看局部到看全局

一个神经元能做的事很有限。把很多神经元堆成层,层再堆成网络,能力就上来了。

典型的多层感知机长这样:输入层 接收数据,几个隐藏层 处理数据,输出层给出结果。

各层学的东西不一样。

底层学边缘、纹理这些简单特征。中层把它们组合成局部模式。高层最终识别出整体是什么。

就像你认识一个人。

你先看到他的眼睛、鼻子、嘴巴。然后组合起来知道这是个"人脸"。最后和记忆对比,发现"哦,这是老王"。

单层网络做不到这个。它只能看局部,或者只能看整体,没有层次。

多层结构让网络真正"看懂"了东西。

多层感知机网络架构图,从左到右依次是输入层(圆形节点)、三个隐藏层(方形节点)、输出层,并标注各层提取的特征类型

训练过程:神经网络是怎么学习的?

现在有个问题:网络参数一开始是随机的,乱七八糟的。它怎么变成能正确认猫认狗的?

训练

训练分两步:前向传播反向传播

前向传播很简单。数据从左边进去,一层层计算,最后出来一个预测结果。

问题来了:第一次预测肯定不准。错多少?怎么改?

这就需要损失函数。它能量化预测和真实答案之间的差距。差距越大,损失越高。

然后是反向传播。网络从右往左看:输出错了很多,那倒数第二层责任多大?倒数第三层呢?一层层算下来,每个参数都知道自己该背多少锅。

最后根据这个"锅"来调整参数。调整完了,再来一轮前向传播,看看损失有没有下降。

反复几千几万次,损失越来越低,网络越来越准。

这就好比你学投篮。投一个,偏了。看看偏了多少,调整力度和角度。再投,还偏。继续调。直到投进。

训练过程流程图,左半部分是前向传播(输入→隐藏层→输出→计算损失),右半部分是反向传播(损失→反向计算梯度→更新参数→循环)

整个训练过程就是:前向计算→算损失→反向传播→更新参数→再来一遍。周而复始,直到满意为止。

手写数字识别:MLP的实战

说这么多,来个实际例子。

MNIST数据集是深度学习的"Hello World"。

它包含上万张手写数字图片。每张是28×28像素,灰度图。

任务是让网络学会识别这些数字是0到9中的哪一个。

输入层有784个神经元(28×28=784)。每个像素一个输入。

输出层有10个神经元,分别代表0到9。哪个输出值最高,预测就是哪个数字。

中间加几个隐藏层,网络就能学得很好。

训练完成后,你随便写个"3",网络能认出来。就算你写的歪歪扭扭,和训练集里的都不一样,它也能认出来。

这就是泛化能力。学会了规律,就能处理没见过的数据。

MNIST手写数字识别应用图,左侧是四张手写数字图片,中间是简化的神经网络图标,右侧是识别结果"3"、"7"、"1"、"9"

最后

现在你应该清楚了。

神经网络从单个神经元开始,每个神经元做加权求和、加偏置、过激活函数。把很多神经元堆成多层,网络就能提取层级特征。看局部、看整体,全部搞定。

训练则是前向传播和反向传播的循环。数据进去,算损失,反向调整参数,一遍遍迭代,直到网络学会。

说起来好像挺简单?但这只是基础。

真实的深度学习网络动不动几百层,参数几十亿。训练时还有各种技巧:怎么防止过拟合、怎么加速收敛、怎么选择优化器......

就拿激活函数来说,我们今天只是简单提了一下。Sigmoid、ReLU、Tanh各有各的特点,不同场景选错了,性能能差好几倍。

所以下篇我们就来细聊:激活函数到底怎么选?

相关推荐
ovO3 分钟前
DeepSeek Harness 源码解读(九):它适合什么场景,应该从哪里扩展
开源·agent
用户938515635078 分钟前
大模型记忆指南:从短时缓存到永久记忆,手把手带你吃透 LangChain Memory 管理
javascript·人工智能
ovO10 分钟前
DeepSeek Harness 源码解读(七):会话日志为何是唯一真相源
开源·agent
武子康11 分钟前
机器人策略 90% 与 92%:为什么两个百分点通常不足以证明更
人工智能·llm·agent
ovO12 分钟前
DeepSeek Harness 源码解读(十):六条设计纪律如何约束可替换运行时
开源·agent
阿里云大数据AI技术14 分钟前
PAI支持一键部署Qwen3.8-Flash-Next、GLM-5.3等最新开源模型
人工智能·开源·llm
SleepNW_POV15 分钟前
家居科普|床垫溜边塌陷成因解析与边缘加固床垫选购指南
人工智能·科技·智能家居·睡眠
ovO15 分钟前
DeepSeek Harness 源码解读(八):文件、命令、审批与沙箱如何协作
开源·agent
FII工业富联科技服务15 分钟前
从 Vera Rubin NVL72 拆解高密度 AI 液冷:GPU 的热到底怎么被带走?
大数据·人工智能
西索斯coding16 分钟前
doubao-seed-2.1-turbo 调用一直 401 怎么办?pro 版同样的 Key 却正常——5 分钟排查定位指南
java·服务器·数据库·ai