[P] 一个从零开始用 NumPy 构建的小型 MLP,带有一个 GUI 可以在训练时查看其内部(权重分布、每层的 t-SNE、神经元消融...)[P]
摘要
一个使用 NumPy 构建的教育工具,带有 GUI 可以可视化小型 MLP 的训练过程,包括权重分布、每层的 t-SNE 和神经元消融,旨在帮助学生和教师理解神经网络。
大家好,我构建了一个教育工具,可以展示小型 MLP 在训练过程中内部发生的情况,并希望从教授机器学习的人那里得到一些反馈。一切都是纯 NumPy 实现,没有自动梯度:手动反向传播、带动量的 SGD、L2 正则化、dropout、余弦衰减和 4 种激活函数。在 MNIST 上,使用完整训练集可以达到约 98.5% 的准确率。在训练过程中,你可以看到每个小批次和每个周期的损失、每层的梯度范数及不活跃神经元的百分比、当前权重分布与初始化时的对比,以及第一层的感受野。然后有:• 一个测试集的 PCA / t-SNE(也是用 NumPy 实现),逐层进行,从每个错误预测到它被混淆的数字的聚类画一条线 • 用于噪声和旋转的鲁棒性曲线,加上一个置信度阈值,显示覆盖率与准确率的对比 • 一个实验室,在这里你可以消融或重新缩放单个神经元、修剪、向权重添加噪声或改变 softmax 温度,测试准确率会立即更新。我希望它对从高中到机器学习入门课程的学生、自学的人以及想在课堂上展示网络的教师都有用。https://github.com/dev-luigi/neural-network-digits
相似文章
GitHub - MatiwosKebede/OpenTrainDNN: OpenTrainDNN: 基于浏览器的实时神经网络可视化工具
OpenTrainDNN 是一个开源的客户端Web应用,它能在浏览器中实时可视化深度神经网络的训练过程,包括反向传播和权重更新。
以数据为中心的调试:面向训练神经网络的团队 [P]
WeightsLab 是一个开源、PyTorch 原生的工具,允许团队在训练过程中暂停、检查实时损失信号,并在数据问题(如标签错误和类别不平衡)影响模型性能之前发现它们。它专为处理图像、视频和 LiDAR 点云的计算机视觉工程师而设计。
Show HN: 观看神经网络学习玩贪吃蛇
一个基于网页的工具,可实时可视化神经网络(使用PPO算法)学习玩贪吃蛇,支持可配置参数和3D渲染。
我构建了一个开源的神经网络形状验证器 [P]
作者构建并分享了一个用于验证神经网络形状的开源工具。
Spectral Neuron - 一种用于可扩展且可解释模型的机器学习原语 [R]
本文提出了一种新的机器学习原语,称为 Spectral Neuron,提供了一个简单、可扩展且可解释的模型,并具有训练和初始化的数学基础。