找回密码
 立即注册
查看: 17789|回复: 5

LeNet5的MATLAB代码反馈

[复制链接]

1

主题

2

回帖

27

积分

新手上路

积分
27
发表于 2023-5-26 10:00:54 | 显示全部楼层 |阅读模式
1.代码run.m中最后打印函数fprintf('第%d幅图片, 标签为%d, 推理结果为%d, 准确率为%f...\n',i,p-1,labels(i),acc/10000);中将标签和推理结果写反了,
应该为fprintf('第%d幅图片, 标签为%d, 推理结果为%d, 准确率为%f...\n',i,labels(i),p-1,acc/10000);



2.最终代码运行结果的准确率比应该得到的准确率差距较大,不知道是否和网络训练有关,参数值是否精确?


1

主题

2

回帖

27

积分

新手上路

积分
27
 楼主| 发表于 2023-5-27 19:12:34 | 显示全部楼层
还没有反馈吗?  
发邮件说是会让这部分的作者在论坛答疑的。

15

主题

115

回帖

792

积分

管理员

积分
792
发表于 2023-5-29 14:55:25 | 显示全部楼层
Ivan 发表于 2023-5-27 19:12
还没有反馈吗?  
发邮件说是会让这部分的作者在论坛答疑的。

我在催他了

0

主题

3

回帖

20

积分

版主

积分
20
发表于 2023-5-30 11:48:45 | 显示全部楼层
感谢读者的指正。
1. 标签和推理结果在代码中写反了,后续在gitee上修改。
2. 读者所指的应该得到的准确率是指用fp32训练得到得到的准确率,大概在98%以上。代码运行的准确率在80%左右,这里的误差来源可能有多个,1,LeNet5并没有训练完全,2,FP32->Fixed Point 16带来误差,3,Matlab代码有bug。作者并没有对这个误差深入了解,读者有兴趣可以去发现一下。本章的主要讲述的是如何把一个算法转换成FPGA实现,至于CNN中的权重值都是可以变化,读者可以自行训练一个网络权重然后看准确率怎么样。

1

主题

2

回帖

27

积分

新手上路

积分
27
 楼主| 发表于 2023-5-31 09:52:47 | 显示全部楼层
流心 发表于 2023-5-30 11:48
感谢读者的指正。
1. 标签和推理结果在代码中写反了,后续在gitee上修改。
2. 读者所指的应该得到的准确率 ...

您的意思是MATLAB中的代码是Fixed Point 16?

0

主题

3

回帖

20

积分

版主

积分
20
发表于 2023-6-6 15:02:20 来自手机 | 显示全部楼层
你可以具体查看.weights文件,用的是定点Fixed point 16
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|CrazyFPGA ( 粤ICP备2023025753号 )

GMT+8, 2024-7-27 19:07 , Processed in 0.048335 second(s), 18 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表