发布日期:2024-11-08 22:51 点击次数:93
非打算机专科、神经网罗小白,爆肝六个月 —— 在《我的宇宙》里搭建一个卷积神经网罗人妖 小说,这是什么神操作?
最近,来自B站up 主 @辰占鳌头的作品真实火了一把。
他和一又友们配合完成的这个堪称“宇宙首个纯红石神经网罗”,神经元、卷积层、全纠合层、激活函数、乘法器、输入、输出…… 样样俱全、蔚为壮不雅,而况不错果然终了手写数字识别,准确率还达到了 80%。
这波,妥妥即是如网友所说:
几乎是实力与耐性作念出来的超凡恶果。
当前,这个视频的播放量如故上了一百万,在外网,它以致还引起了 LeCun 的禁锢:不仅转发了他们的作品,还给出了“Very meta”的评价。
红石是我的宇宙里一种不错传递信号的矿石资源,不错用来制作红石电路,进而完成小到如自动门、光开关、频闪电源的简便机械,大到电梯、自动农场、盾构机、小游戏平台以致打算机的复杂器具。
本次作家们搭建的这个神经网罗的架构,基于 LeCun 于 1998 年建议的经典卷积结构 LeNet-5,它即是用来终了手写数字识别的。
比拟传统的全精度打算(乘法器和加法器),作家经过一番念念考和估算,决定接纳马上打算的方式来终了这个神经网罗,这么不错让想象和布局齐简便一些。
毕竟对于用马上打算终了乘法来说,只需一个与门就不错默示单极,一个同或就能默示双极。
由于在我的宇宙中进行反向传播不太可能,网罗的权重齐是先在 Pytorch 中测验好,然后平直搬进去。
为了生成由马上串组成的权重,作家驾御“投掷器投掷物品是马上的”这一旨趣造了一个马上数生成器。
总的来说,他们接纳的是一个压缩的 LeNet-5,先使用一个带权重的窗口(卷积核)逐次扫描图像并索求笔画特征,然后将这些笔画特征馈入到深度神经网罗(全纠合层)进行分类识别。
具体来说:
首先由输入建树:一个单脉冲式压力板手写板和 15×15 坐标屏,产生坐标信号,并在屏幕上绘画出字迹。
然后手写数字参预卷积层,累加卷积核被遮掩的部分,并将纵脱输出到下一层。
其中:
(1)在卷积层,作家莫得使用马上打算,而是使用我的宇宙中的模拟信号进行加法运算;
(2)为了保证输入数据不错非线性地映射到高维度特征空间然后进行线性分类,输出经过了激活函数 ReLU;
(3)由于卷积无法摧折出动,是以接纳平直堆叠的方式,再通过硬连线纠合得手写板输入上。
随后,是全纠合层。每层由多少神经网罗组成,每个神经元齐纠合多个输入,并产生一个输出。神经元将每个输入加权累加,然后带入一个激活函数输出。
全纠合层使用的是马上打算,激活函数用的黑白线性的 tanh。本色的神经元电路如下:
终末一层的输出使用一个模电计数器,用来统计 5Hz 串中“1”的数目,容量则为 1024。
最终,输出部分,计数器的高 4 位被纠合到计数板上,然后电路登科最大的值并在面板上娇傲纵脱。
结构总览:
网罗架构总览:
作家先容,该神经网罗在 MNIST 数据集上约终明晰 80% 的准确率,当作对比,同权重的全精度网罗的准确率为 88%。
另外,它的单次表面识别时辰约为 5 分钟,但没猜测 Minecraft 的运算智商实在有限 —— 在本色测试中,可能要 40 分钟以上。
由此作家得出,Minecraft 马上打算神经网罗在时辰支出上未必优于全精度网罗。不外全精度网罗当前还莫得东谈主作念出来。
“责任量和难度齐很大”在这个作品的评述区,齐是一水儿的颂赞有加与跪拜(连大 V 籽岷齐冒泡了)——
看完大佬的巨作,有网友以致启动怀疑我方和 up 主们玩的不是一个游戏。(手动狗头)
还有东谈主指出,别看最终终了的功能仅仅相称于机器学习中的“hello world”,但用游戏中提供的红石元件复现出来,不错说是“责任量和难度齐很大”。
因为“这条款作家对算法的底层终了偶而硬件引申旨趣(肖似 cuda 编程)有深远的交融,还能使用游戏机制来优化引申流程以及完成并行打算”。
天然最终识别速率比较慢,但“在这里探讨服从的兴味不大”。
言外之音,它本人就很有价值,“咱们不可拿 cpu 的两个线程经过大批层模拟器嵌套后的识别服从去跟显卡识别服从比较”。
终末,还有东谈主惊奇:好了,当今红石神经网罗有了,硬盘、CPU、娇傲器也早就有了,红石超等电脑是不是也不远了?
“说不定到时咱们就能在 MC 里玩 MC 了~”
这个红石卷积神经网罗一共有 5 位作家,up 主 @辰占鳌头是主要孝顺者,厚爱电路的总体想象、搭建和调试。
他和另外一位作家 @学杂不善(GitHub@leamoon)齐是香港科技大学的学生,当今永别攻读表面物理学博士和电子工程学博士。
其他 3 位配合者中,有一位高中刚毕业(@NKID00),另外两位(@enadixxoOxoxO 和 @爱红石的小章鱼)莫得显现我方的身份。
@辰占鳌头在 2014 年的本事就启动战役《我的宇宙》这款游戏了,曾作念过一个编码汉字的娇傲器和一个 8 位的 CPU。
问及为什么一个非打算机专科的学生想要搭建一个神经网罗时,他告诉咱们,其实我方参加过信息竞赛,由于之前战役过马上打算(stochastic computing),当先是想展示一下马上打算在特定任务下的优胜性是以启动了这个花样。
最终为了搭建好意思满的神经网罗,他看了 50 + 页英文文件,写了 1000 多行代码。
要说最难 / 耗时最久的部分,他回复:是全纠合层调试,因为运行速率很慢而况使用马上打算很难找到问题场地。
对于异日,up 主默示,他正在研讨搭建一台相沿 RISC-V 辅导集的红石 CPU。
查了一下,当前似乎还没东谈主作念出来,值得期待~
B站视频:
https://www.bilibili.com/video/BV1yv4y1u7ZX?vd_source=6eb6d925760348954531a2288dcd74be
旨趣先容:
https://www.bilibili.com/video/BV1wF411F7PU/?spm_id_from=333.788&vd_source=6eb6d925760348954531a2288dcd74be
告白声明:文内含有的对外跳转连气儿(包括不限于超连气儿、二维码、口令等方式)人妖 小说,用于传递更多信息,从简甄选时辰,纵脱仅供参考,IT之家悉数著作均包含本声明。