Skip to content

Latest commit

 

History

History

04-neural-network

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

04-neural-network: 手撸神经网络

手撸神经网络感受深度学习,理解神经元、隐藏层、前向传播和反向传播的完整过程。

📖 本节内容

1. 神经网络架构

  • 输入层、隐藏层、输出层
  • 神经元和连接权重
  • 偏置项的作用

2. 前向传播

h = activation(W₁x + b₁)  # 隐藏层
y = W₂h + b₂              # 输出层

3. 反向传播

  • 计算输出层梯度
  • 梯度反向传播到隐藏层
  • 链式法则的应用
  • 参数更新

4. 网络设计

  • 隐藏层数量 vs 每层神经元数量
  • 宽度和深度的权衡
  • 过拟合和正则化

🚀 运行代码

jupyter notebook tutorial.ipynb

📂 文件说明

04-neural-network/
├── tutorial.ipynb          # 主教程
├── README.md               # 本文件
└── images/                 # 神经网络结构图
    ├── ML04_1.png
    ├── ML04_2.png
    ├── ML04_3.png
    └── ML04_4.png

🎯 课后练习

  1. 修改网络结构(层数、神经元数),观察效果
  2. 实现 Dropout 正则化
  3. 尝试不同的初始化方法
  4. 可视化训练过程中的损失变化
  5. 实现一个能识别手写数字的简单网络

💡 关键理解

神经网络的本质是:通过多层非线性变换,将输入数据映射到输出空间。每一层提取不同层次的特征,深层网络能够学习更抽象、更复杂的模式。

🎉 基础篇完成!

完成本章后,你已经:

  • ✅ 理解了机器学习的核心原理
  • ✅ 掌握了梯度下降和反向传播
  • ✅ 能够手写简单的神经网络

接下来可以:


Previous ← 03-activation | Next → 02-llm-from-scratch