郭震 AI公众号:郭震AI

5 神经网络基础之神经网络的结构

发布日期:

最近更新:

分类: 深度学习小白

预计阅读: 4 分钟

阅读次数: 0

系列进度

深度学习入门 · 第 5 / 24

预计阅读4 分钟
结构重点6 个
图文要点6 张
正文规模1.7k 字

整理说明

这篇内容怎么整理

郭震 · 2026-06-04

独立整理围绕 6 个结构重点拆成环境、步骤、验证点和常见误区,尽量让读者能照着复现。
图文对照保留 6 张和配置、流程、判断结果有关的图片,方便快速定位正文重点。
持续校对工具、模型和命令变化较快,后续优先修正入口、参数和风险提醒。

阅读路线

先按这条路线读

先抓住主线,再回到代码、配置和图文细节,读起来会更稳。

图文要点

先看本文图文节点

按图先建立主线,再跳回正文核对步骤、配置和判断标准。

神经网络基础之神经网络的结构结构图查看大图
神经网络基础之神经网络的结构结构图

神经网络结构要和任务匹配。图像、文本、表格数据进入网络的形状不同,输出层也要根据分类、回归或生成任务来设计。

结构决定信息怎么流动核对图查看大图
结构决定信息怎么流动核对图

画一个最小网络时,先标输入维度和输出维度,再决定中间隐藏层。不要一开始就追求层数多。

在上一篇中,我们对人工神经元的概念进行了深入探讨,理解了它们的基本构成和功能。在这一篇中,我们将把注意力转向一个更复杂的概念:神经网络的结构。神经网络不仅仅是单个的人工神经元,它们是由多个神经元以特定结构组合在一起的,这种结构使我们能够处理更复杂的问题。

神经网络的基本结构

一个神经网络的基本组成部分包括:

神经网络结构判断卡查看大图
神经网络结构判断卡

理解神经网络结构时,先看数据如何从输入层流到隐藏层,再到输出层。每一层的形状和作用都要服务任务。

  1. 输入层(Input Layer)

    • 这是网络的第一层,负责接收输入数据。每个输入特征对应于输入层中的一个神经元。
    • 例如,对于一张28x28的手写数字图像,输入层将包含784个神经元(28*28)。
  2. 隐藏层(Hidden Layers)

    • 输入层之后的一层或多层称为隐藏层。这些层不是直接与输入或输出相连的,它们的主要作用是对输入进行特征提取和转换。
    • 网络的复杂度和学习能力通常由隐藏层的数量和每层的神经元数量决定。
    • 隐藏层可以有多层,每层可以有不同数量的神经元,形成多层感知机(MLP)结构。
  3. 输出层(Output Layer)

    • 这是网络的最后一层,负责输出模型的预测。
    • 输出层的神经元数量通常取决于具体的任务,比如二分类问题可以用一个神经元,而多分类任务则需要与类别数相等的神经元。

神经网络示意图

我们可以用一个简单的示意图来说明神经网络的结构。假设我们有一个简单的前馈神经网络:

输入层      隐藏层      输出层
(x1)        (h1)        (o1)
(x2) ----> (h2) ----> (o2)
(x3) ----> (h3)

在这个示意图中,x表示输入特征,h表示隐藏层神经元,而o表示输出层神经元。每层之间通过权重连接。

神经网络的连接

在神经网络中,各层之间的连接是通过加权和来实现的。每个连接都有一个权重,表示其重要性。对于隐层和输出层,神经元的输出通常是通过将输入加权求和,并应用激活函数进行转换。

深度学习实践复盘卡查看大图
深度学习实践复盘卡

读完《神经网络基础之神经网络的结构》不要只停在“看懂了”。回头挑一个步骤动手做一遍,再记录哪里卡住,后面的学习会更稳。

对于每个神经元,其输出可以表示为:

hj=f(i=1nwijxi+bj)h_j = f\left( \sum_{i=1}^{n} w_{ij} x_i + b_j \right)

其中:

  • hjh_j 是隐藏层或输出层的神经元输出。
  • wijw_{ij} 是输入神经元 ii 到隐藏层或输出层神经元 jj 的权重。
  • xix_i 是输入层神经元的输入。
  • bjb_j 是偏置项,用于调整输出。
  • ff 是激活函数(如ReLU、sigmoid等)。

案例分析:图像分类任务

让我们通过一个实际的案例来更好地理解神经网络的结构。假设我们要构建一个神经网络来进行手写数字的分类(比如MNIST数据集)。

  • 输入层:我们的输入层将包含784个神经元(28x28的图像)。
  • 隐藏层:我们可以设计两个隐藏层,第一个隐藏层有128个神经元,第二个隐藏层有64个神经元。
  • 输出层:输出层将包含10个神经元,分别对应数字0到9。

代码示例

以下是用TensorFlow/Keras构建该神经网络的示例代码:

import tensorflow as tf
from tensorflow.keras import layers, models

# 创建模型
model = models.Sequential()

# 添加输入层和第一个隐藏层
model.add(layers.Flatten(input_shape=(28, 28)))  # 将28x28的图像展平
model.add(layers.Dense(128, activation='relu'))   # 第一个隐藏层

# 添加第二个隐藏层
model.add(layers.Dense(64, activation='relu'))     # 第二个隐藏层

# 添加输出层
model.add(layers.Dense(10, activation='softmax'))  # 输出层,10个神经元

# 编译模型
model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

# 打印模型摘要
model.summary()

在这段代码中,我们使用Sequential模型构建了含有两层隐藏层和一层输出层的神经网络。我们可以看到,每层的神经元数量、激活函数的应用以及输入数据的形状都被明确表示。

神经网络基础之神经网络的结构应用复盘卡查看大图
神经网络基础之神经网络的结构应用复盘卡

复习《神经网络基础之神经网络的结构》时,建议把关键概念、操作步骤和可见结果放在同一页里回看。

神经网络基础之神经网络的结构应用检查卡查看大图
神经网络基础之神经网络的结构应用检查卡

练习《神经网络基础之神经网络的结构》时,建议把输入条件、处理动作和可见结果写在一起,方便下次复查。

小结

在本篇中,我们详细探讨了神经网络的结构。理解输入层、隐藏层和输出层的构成及其作用是构建和训练有效神经网络的关键。下一篇将继续讨论激活函数,这是连接神经网络结构与实际输出的关键组件,扮演着重要角色。通过理解激活函数,我们能更好地调整网络以适应特定的任务挑战。

继续阅读

从这篇继续找到相关教程

AI 教程总索引

常见问题

读前先确认这三点

神经网络基础之神经网络的结构适合谁读?

这是 深度学习入门 系列第 5 / 24 篇,适合正在学习深度学习入门,并且需要把概念落到操作步骤或判断标准里的读者。

读这篇深度学习入门教程要多久?

按中文技术文章阅读速度估算,通读大约 4 分钟;如果要跟着复现,建议把命令、配置和结果检查分开做。

这篇文章里的图文节点怎么用?

正文里有 6 个图文节点,可以先用它们抓住流程、配置和判断点,再回到对应段落细读。

分享文章

转发到常用平台

微信/朋友圈可先复制链接

相关教程

AI 教程总索引

继续阅读

继续找到相关 AI 教程

返回栏目

Reader Messages

读者留言

有问题、补充资料或实测结果,可以直接留下。这里不需要登录。

最多 800 字

为了防刷,每条留言会做长度、链接数量和提交频率限制。

0/800

留言列表

0
正在加载留言...