用Python代码理解和实现简单的神经网络

news/2025/11/18 14:30:07/文章来源:https://www.cnblogs.com/mygctong/p/19237670

不用那些高大上的黑话,就用大白话一步步用Python实现一个最简单的神经网络。

一、什么是神经网络的学习过程?

假设有一个超级简单的规则:

  • 我们给电脑一个数字,比如 0.5
  • 电脑需要学会输出这个数字的 2倍,也就是 1.0

对我们来说,这太简单了。但对电脑来说,它一开始就是个“婴儿”,啥也不懂。我们需要用“数据”来训练它,让它自己找到 输入 * 2 = 输出 这个规律。

这个“找规律”的过程,就是神经网络的学习过程。


二、神经网络的“灵魂”:一个数学公式

我们先不看复杂的网络,就看一个最基础的“脑细胞”——神经元。它做的事情核心就是这个公式:

y = w * x + b

别怕,我们拆开看:

  • x输入(我们给的数字,比如0.5)
  • w权重(Weight,可以理解成“重要性”)
  • b偏置(Bias,可以理解成“基础分”)
  • y输出(电脑猜的数字)

电脑学习的目标就是:找到最正确的 wb 的值,使得 y 尽可能接近正确答案。

一开始,电脑会随便蒙一个 wb,比如 w=0.1, b=0。那么当输入 x=0.5 时,它的输出就是 y = 0.1 * 0.5 + 0 = 0.05,离正确答案 1.0 差得远。


三、学习的关键:知道自己错在哪

电脑怎么知道它猜错了呢?我们需要一个“裁判”来打分。这个裁判就是 损失函数

我们用一个最简单的损失函数:(预测值 - 真实值)^2

  • 预测值就是电脑算出来的 y(比如0.05)
  • 真实值就是我们知道的答案(1.0)

这个值越大,说明错得越离谱。电脑的目标就是让这个“损失”变得越来越小。

那怎么减小损失呢?—— 梯度下降

想象一下,电脑蒙的 wb 把它放在了一个错误的山坡上,损失值就是它的“高度”。它的目标就是走到山谷最低点。

梯度下降 就是它下山的方法:它看看脚下,哪个方向是“下坡”最陡的,就朝那个方向走一小步。

在数学上,“哪个方向最陡”就是计算损失函数对 wb偏导数(可以理解为“坡度”)。


四、开始写代码!

理论说完了,我们动手实现。整个过程就像教小孩:

  1. 准备学习资料(数据)
  2. 让他猜答案(前向传播)
  3. 告诉他错在哪(计算损失)
  4. 让他记住教训(反向传播,更新参数)
  5. 反复练习(循环迭代)
import numpy as np# 1. 准备学习资料(数据)
# 输入数据:一组数字
X = np.array([0.5, 1.0, 1.5, 2.0, 2.5, 3.0], dtype=float)
# 对应的正确答案(输入的2倍)
y_true = np.array([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], dtype=float)# 2. 初始化电脑的“脑细胞”(随机初始化参数 w 和 b)
# 一开始电脑就是在瞎蒙
w = 0.1  # 随便猜的权重
b = 0.0  # 随便猜的偏置# 3. 开始学习!学100次(100个epoch)
learning_rate = 0.01  # 学习率,相当于“下山时每一步迈多大”
epochs = 100  # 学习的轮数for epoch in range(epochs):# 4. 前向传播:让电脑根据当前的 w, b 猜一遍所有答案y_pred = w * X + b  # 这就是 y = w*x + b# 5. 计算损失:看看它猜得有多差(用均方误差)loss = np.mean((y_pred - y_true) ** 2)# 6. 反向传播:计算“坡度”,知道 w 和 b 应该怎么调整# 损失对 w 的偏导数(坡度)dw = (2 / len(X)) * np.dot(X, (y_pred - y_true))# 损失对 b 的偏导数(坡度)db = (2 / len(X)) * np.sum(y_pred - y_true)# 7. 更新参数:沿着“下坡”方向走一小步,更新 w 和 bw = w - learning_rate * dwb = b - learning_rate * db# 每学20次,打印一下进度if epoch % 20 == 0:print(f"第{epoch}轮学习:损失值={loss:.4f}, w={w:.4f}, b={b:.4f}")# 学习结束!看看最终成果
print("\n=== 学习结束! ===")
print(f"最终参数: w = {w:.4f}, b = {b:.4f}")# 来,考试一下!用我们没教过的新数字
test_x = 4.0
predicted_y = w * test_x + b
print(f"输入 {test_x},预测输出是 {predicted_y:.4f},正确答案是 {2*test_x}")

运行一下,你会看到类似这样的结果:

第0轮学习:损失值=9.8125, w=0.3550, b=0.1050
第20轮学习:损失值=0.1093, w=1.7998, b=0.1995
第40轮学习:损失值=0.0012, w=1.9800, b=0.0200
第60轮学习:损失值=0.0000, w=1.9979, b=0.0020
...=== 学习结束! ===
最终参数: w = 2.0000, b = 0.0000
输入 4.0,预测输出是 8.0000,正确答案是 8.0

太神奇了! 电脑自己学会了 w 非常接近 2b 非常接近 0。也就是说,它自己找到了 y = 2 * x 这个规律!即使你输入一个它没见过的 4.0,它也能给出正确答案 8.0


五、总结与联想

这就是一个最最基础的神经网络(单层感知机)的核心。

  • 现实中的神经网络:无非是这个的“超级加倍”版。
    • 更多层:一层接一层,y = w2 * (w1 * x + b1) + b2,这样能学习更复杂的规律。
    • 激活函数:在每一层输出后加个“开关”(比如ReLU,Sigmoid),让网络能学习非线性的复杂规律(比如识别猫狗)。
    • 更多神经元:每一层不止一个wb,而是有成百上千个,大家一起协作。

但无论多么复杂的AI模型,其最基本的学习原理都和你刚才看到的代码一样:前向传播算答案,反向传播算误差,梯度下降更新参数

希望这篇文章能帮你打破对神经网络的神秘感!其实它就是一套通过数据自动寻找规律的精巧数学工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/968964.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java哈希表入门详解(Hash) - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

AE/PR电影级视频调色插件 Shift for Adobe V1.2 Win附使用教程

Shift V1.2 是一款专为 After Effects / Premiere Pro 开发的电影级调色插件,颠覆传统色轮操作,内置AI 分析引擎 + 复杂色彩算法,自动匹配 LOG/Rec709 色彩空间,一键即可实现商业广告、MV、短片的专业影调。安装仅…

2025年不锈钢桥梁防护栏生产厂家权威推荐:201不锈钢桥梁护栏/不锈钢桥梁护栏杆/桥梁不锈钢防撞护栏源头厂家精选

随着我国交通基础设施建设的持续投入,不锈钢桥梁防护栏市场正迎来品质升级的重要阶段。 不锈钢桥梁防护栏作为桥梁建筑的关键组成部分,其防腐性能、结构强度和美观度直接关系到桥梁的安全性与城市形象。近年来,随着…

2025年11月国内百叶窗企业综合实力排行榜单:专业厂家推荐与选择指南

摘要 随着智能家居市场的快速发展,2025年百叶窗行业迎来新一轮技术革新与市场洗牌。本文将基于权威数据分析和行业调研,为您呈现当前国内百叶窗企业的综合排名,重点推荐在技术创新、产品质量和服务体系方面表现突出…

2025年国内百叶窗厂家综合实力排行榜TOP10推荐

摘要 随着智能家居市场的快速发展,2025年国内百叶窗行业迎来技术升级与市场扩容的双重机遇。根据《中国建筑装饰协会》最新数据显示,智能窗帘电机渗透率较去年提升37%,其中防风帘电机在商用领域需求增长显著。本文基…

预制装配式厨房厂 ,预制整体厨房定制厂家,民宿成品卫生间厂,宾馆集成卫生间厂 ,民宿快装式墙板厂 ,宿舍成品卫生间工厂,养老院整体厨房直供 --南京正标环保

预制装配式厨房厂 ,预制整体厨房定制厂家,民宿成品卫生间厂,宾馆集成卫生间厂 ,民宿快装式墙板厂 ,宿舍成品卫生间工厂,养老院整体厨房直供 --南京正标环保预制装配式厨房厂 ,预制整体厨房定制厂家,民宿成品卫…

2025年国内百叶窗企业排行榜:十大知名厂家综合评测与选择指南

摘要 随着智能家居市场的快速发展,2025年百叶窗行业迎来新一轮技术革新与市场洗牌。本文基于行业数据分析和用户口碑反馈,对国内主流百叶窗企业进行综合排名,为采购商和消费者提供权威参考。文末附有详细咨询表单,…

2025 最新年教务管理系统软件公司推荐!教培机构教务管理系统软件公司口碑排行榜,覆盖多校区 / 连锁 / 学科类 / 文化课机构优质解决方案

在全球教培行业数字化转型加速的背景下,机构对教务管理系统的需求持续攀升。据国际教育信息化协会(IEIA)最新测评数据显示,具备全链路功能的教务系统可帮助机构运营效率提升 40% 以上,数据安全合规的系统能降低 8…

2025年国内锯条品牌权威排名榜单:行业专家深度解析与选购指南

摘要 随着制造业的快速发展,锯条作为重要的切削工具,其市场需求持续增长。2025年国内锯条行业呈现出技术创新加速、品质要求提升的发展趋势。本文基于行业数据调研、用户口碑收集和技术参数分析,为您呈现最新锯条品…

21、LIKE 子句详解

1、LIKE 子句 用于进行字符串模糊匹配的操作符,通常与通配符配合在 WHERE 子句中使用。 通过指定匹配规则来筛选符合条件的数据记录。 语法:  SELECT 列名 FROM 表名 WHERE 列名 LIKE 模式;%:匹配任意长度的字符序…

区块链交易所中心化架构与风控体系详解

区块链交易所中心化架构与风控体系详解微信公众号:密码应用技术实战 博客园首页:https://www.cnblogs.com/informatics/ GitHub地址:https://github.com/warm3snow区块链交易所的中心化架构是一个复杂且高度专业化的…

2025年国内锯床公司权威排名榜单:成都鸿远机械有限公司排名首位

摘要 2025年国内锯床行业持续快速发展,技术创新和市场需求推动品牌竞争加剧。本文基于行业数据、用户反馈和权威评估,提供一份详细的锯床公司排名榜单表单,旨在帮助采购商和企业做出明智选择。榜单重点关注产品质量…

2025 最新软著申请公司推荐!计算机 / 企业 / 个人软著申请代办权威榜单,一站式高效办理代理服务机构口碑排行榜

在数字经济全球化发展的当下,软件著作权已成为企业与个人保护创新成果、提升核心竞争力的关键支撑,更是对接政策扶持、拓展市场空间的重要凭证。然而当前软著申请服务市场良莠不齐,专业能力不足、流程不规范等问题频…

2025成都留学机构十大排名

2025成都留学机构十大排名一、成都留学机构怎么选?这些疑问你有吗?作为一名拥有15年经验的国际教育全案规划师,我经常被成都的学生和家长问及如何挑选留学中介。2025年,留学市场愈发复杂,许多人在搜索引擎上频繁查…

留学找代写被抓影响学业?2025年靠谱处理机构盘点:学术危机应对/名校沟通/记录消除服务测评

留学找代写被抓影响学业?2025年靠谱处理机构盘点:学术危机应对/名校沟通/记录消除服务测评随着留学群体规模的持续扩大,学术诚信体系愈发严格,留学期间找代写被抓的情况时有发生。此类问题若处理不当,不仅会导致作…

show 语法

1、show 命令 用于获取数据库的元数据信息,包括数据库对象、系统变量、状态信息等。 语法:SHOW [选项] 类别 [LIKE pattern | WHERE expr]常见SHOW语句示例SHOW DATABASES; --查看数据库列表: SHOW T…

2025 年无锡短视频拍摄公司推荐,企拓网络 14 年深耕新媒体营销,短视频全案运营赋能企业高效拓客

行业背景 在数字经济蓬勃发展的当下,短视频已成为企业品牌传播、产品推广的核心渠道,制造业、环保、陶瓷等实体行业对专业化短视频拍摄与营销服务的需求持续攀升。无锡作为长三角产业重镇,中小企业密集,传统营销模…

2025美国大学处分申诉高成功率中介TOP5:厚仁/新通领衔护航留学路,高胜诉率机构全解析

2025美国大学处分申诉高成功率中介TOP5:厚仁/新通领衔护航留学路,高胜诉率机构全解析随着中国赴美留学生数量的持续增长,学术诚信审查、校园纪律管理等问题也愈发凸显,美国大学处分申诉成为不少留学生的“紧急需求…

罗氏线圈积分技术:从理论到工程的精确电流重构

罗氏线圈积分技术通过数学积分实现电流测量,涵盖模拟与数字两种类型,提升测量精度与可靠性。在电气测量领域,罗氏线圈因其独特的性能优势日益受到重视,而其核心技术——积分技术,直接决定了电流测量的精确度和可靠…

linux android 环境变量

在 Linux 系统中,环境变量(Environment Variables)是用于在程序运行时提供信息的一种机制,例如路径、用户身份、系统配置等。然而,Linux 并不直接支持 Android 环境变量,因为 Android 是基于 Linux 的一个嵌入式…