利用 mnist 数据集测试对比 kan 和 cnn/mlp 的效果

你好呀,我是董董灿。

kan 模型其实火了很久了,很多人从理论的角度给出了非常专业的解读,基本结论是:从目前来看,kan 很难替代 mlp 成为一个更加经典的模型结构。

我这里就不做理论解读了,这部分在网上一搜一大堆。

我这里就直接给出一个利用 KAN / CNN / MLP 分别对 Mnist 数据集进行验证的结果,我们直接从实验的结果出发,来看看这个 KAN 模型的效果如何?

为了做实验,我分别编写了 test_with_cnn_mnist.py 、test_with_kan_mnist.py 以及 test_with_mlp_mnist.py 三个代码脚本,使用相同的数据集,都是 mnist 进行训练和测试。

CNN 的效果

使用 CNN ,经过 5 个 epoch 的训练,最终 CNN 在测试集上的预测准确率是 98.36 %.

MLP 的效果

使用同样的数据集,利用 MLP 进行训练和推理,最终的预测准确度在 93.3 % 左右。

最后看一下 KAN 的效果

使用 KAN 模型对数据集进行训练,最终得到的准确度仅为 82.04%

对比一下

相同的数据集,都是 MNIST。

CNN 预测准确度: 98%

MLP 预测准确度:93%

KAN 预测准确度:82%

说明 KAN 模型在 MNIST 这种经典任务中的表现还有待提高。

最后,以上仅为本人自己测试,可能不严谨,毕竟是在学习 KAN 的过程中做的一个测试,但也能从一定程度上说明问题。

以上三个测试的实验源码有些长,不再这里贴了,如果你对此感兴趣,可以关注我的公众号:董董灿是个攻城狮 并后台回复**"kan**"或 "KAN" 获取以上三种模型的测试源码,当然也可以加我微信(ddcsggcs)获取以上源码。

代码编写测试不易,点个赞呗~

相关推荐
Dream it possible!3 小时前
LeetCode 面试经典 150_多维动态规划_交错字符串(97_C++_中等)
算法·leetcode·面试·动态规划
心抵鹊4 小时前
算法之双指针系列(一)
算法·leetcode
十二4 小时前
【洛谷题解】P1083 [NOIP 2012 提高组] 借教室(二分答案 + 差分)
数据结构·c++·算法·蓝桥杯
小此方5 小时前
[算法实战论:动态规划]回文串问题的dp解法,回文串问题的母题,以及以此为基础的派生题
算法·动态规划
Pniubi6 小时前
力扣560.和为k的子数组
算法·leetcode·职场和发展
D e re k ZH6 小时前
C++ 从零入门(一):基础语法与程序结构
数据结构·c++·算法
Pniubi7 小时前
力扣438.找到字符串中所有字母异位词
算法·leetcode·职场和发展
東隅已逝,桑榆非晚9 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
Eyfcom9 小时前
〖物联网终端实战 01〗UWB 室内高精度定位:仓储 AGV 与人员的厘米级轨迹追踪
物联网·算法·物流系统·快递系统·跨境物流快递系统·物联网终端实战
bro_Java66610 小时前
《排序的底层逻辑:比较、交换与分治》
java·算法·排序算法