Zing 论坛

正文

Noesis:一个可实时观察神经网络「思考」过程的3D可视化工具

Noesis 是一个开源的神经网络可视化项目,让用户能够实时观察前馈神经网络的前向传播过程。它结合了纯 TypeScript 实现的神经网络引擎和 Three.js 3D 渲染,为理解深度学习提供了直观的视觉体验。

神经网络可视化深度学习Three.jsTypeScriptMNIST教育工具
发布时间 2026/06/05 17:13最近活动 2026/06/05 17:20预计阅读 3 分钟
Noesis:一个可实时观察神经网络「思考」过程的3D可视化工具
1

章节 01

导读:Noesis——实时观察神经网络「思考」的3D可视化工具

Noesis是一个开源神经网络可视化项目,通过纯TypeScript实现的神经网络引擎与Three.js 3D渲染结合,让用户能实时观察前馈神经网络的前向传播过程,为理解深度学习提供直观视觉体验。它基于MNIST数据集训练的多层感知机,支持用户选择或手绘数字,观察信号逐层传递、神经元激活及预测结果产生,兼具技术演示与教育工具价值。

3

章节 03

技术架构与实现方法

引擎层:纯TypeScript实现(src/core/),无外部依赖,可单元测试;网络结构为28×28输入层→64神经元隐藏层→32神经元隐藏层→10输出层(0-9)。

可视化层:Three.js(src/viz/),用实例化渲染高效展示神经元与连接;激活神经元发光,连接亮度反映权重大小,Bloom效果增强科技感。

训练:离线Node.js训练,AdamW优化器+小批量梯度下降+轻度数据增强,MNIST测试集准确率约98%;权重序列化为JSON供前端加载。

4

章节 04

核心功能详解

  1. 实时数字识别:支持预设数字样本或手绘输入,经MNIST预处理后推理。

  2. 信号传播可视化:播放按钮触发信号逐层传播,激活神经元发光展示。

  3. 训练状态对比:可切换训练好的模型与随机权重模型,直观显示训练对性能的影响。

  4. 交互式信息面板:右侧折叠面板提供网络架构、实时统计、图例及数学原理说明。

5

章节 05

使用场景与教育价值

教学演示:帮助教育者将抽象概念(权重、激活函数等)转化为视觉体验,降低理解门槛。

自学辅助:自学者可观察输入对激活模式的影响,理解数字混淆原因及特征表示学习。

技术展示:展示TypeScript、Three.js、Vite结合的现代化Web应用开发方式。

6

章节 06

技术亮点与最佳实践

零依赖核心引擎:可在浏览器、Node.js等环境运行,含完整单元测试。

关注点分离:严格区分业务逻辑(神经网络计算)与表现层(3D渲染),便于独立开发测试。

性能优化:Three.js实例化渲染确保流畅动画。

开源友好:MIT许可证,含贡献指南,ESLint静态检查+Vitest单元测试保证代码质量。

7

章节 07

未来方向与总结

未来计划:浏览器内实时训练、神经元级检查(权重与感受野)、探索可解释性(决策树/符号模式)、支持自定义网络架构。

总结:Noesis通过可视化让深度学习更易理解,是优秀教育工具;其架构设计(关注点分离、可测试代码)为开发者提供参考。可访问在线演示(https://chemaclass.github.io/noesis/)体验或克隆仓库本地运行。