欢迎订阅《FPGA学习入门100例教程》、《MATLAB学习入门100例教程》
本章内容主要是根据订阅《MATLAB入门100例》用户学习过程中提出的一些常规的,通用的软件操作问题,以及部分通用的编程类问题进行总结,不定期进行更新。
目录
问题2:MATLAB版本必须是2021a吗?我的matlab版本较老,可以用吗?
问题3:感觉matlab涉及面太广了,怎么也学不会,博主正确的方法应该怎么学MATLAB?
问题4:这里100个基础案例,学习后,博主是否还会写更复杂的案例?老师经常会布置复现论文的任务,感觉还是有点吃力。
问题6:编写matlab程序的时候,什么时候用工具箱合适,什么时候自己编写程序合适?
问题7:matlab课程里面有介绍FPGA相关结合的应用吗?
问题8:matlab的矩阵操作感觉很难上手,有什么学习方法吗?
问题1:教程中很多案例需要有测试样本,这些都有吗?
所有的案例,其对应的测试数据,或者测试图片,都给出的下载链接,读者可以直接下载,并用到案例中的程序中。
问题2:MATLAB版本必须是2021a吗?我的matlab版本较老,可以用吗?
每个案例,我都给出了最佳的matlab版本,大多数是2021a。这个主要是部分案例用到了matlab的工具箱,如果版本太老,特别是2019以前的版本,可能会不支持。
问题3:感觉matlab涉及面太广了,怎么也学不会,博主正确的方法应该怎么学MATLAB?
学习matlab,不要将它当做编程语言去学,这样你会发现除了写几行简单的运算程序外,很多都不会用。学习matlab,首先需要对你的算法的理论有了解,然后再去使用MATLAB去实现这个算法的理论公式。
对于matlab,我们只要掌握常用的几个基础语法,比如if-else,for,常规的矩阵操作,以及相关领域的工具箱等就可以了。剩下的就是多看理论以及对应的matlab,逐渐掌握不同的数学理论是如何通过matlab来实现的。
我这里编写了100个基础的案例,涵盖了大多数经常会用到的简单算法,方便初学者入门。
问题4:这里100个基础案例,学习后,博主是否还会写更复杂的案例?老师经常会布置复现论文的任务,感觉还是有点吃力。
目前,我有计划写复杂算法的想法,初步想通过论文写算法的方式来介绍一些复杂算法的实现过程和技巧。但是这个需要点时间。不过你如果熟悉了基础入门100例的算法,应该会对你有一定的帮助。
问题5:在深度学习的案例中,训练太慢有没有方法加快?
如果你是使用CPU训练,肯定会很慢,建议设置为GPU训练。如果电脑没GPU配置,则可以减少样本的数量。比如原来提供给你的样本100个图片,你可以减低到20张。这个对于学习的过程没任何映像,就是最后测试精度会下降点。
问题6:编写matlab程序的时候,什么时候用工具箱合适,什么时候自己编写程序合适?
这个问题没有绝对的答案,就我自己的开发经历来讲,比如我们开发一个算法的FPGA芯片,在方案确认阶段,我们可以使用工具箱的各个算法,快速仿真哪个算法比较合适。这个时候时候,使用工具箱是比较有效率的。(当然工具箱中没有的算法除外)
当方案确认之后,在实际FPGA开发阶段,对于一些算法处理的细节的把控,这个时候如果有自己编写的算法,这样对比FPGA的结果的时候则更为方便。
问题7:matlab课程里面有介绍FPGA相关结合的应用吗?
matlab课程中没有这方面应用,在FPGA课程中会有部分案例结合matlab,等完成simulink案例教程之后,未来会写FPGA/MATLAB/Simulink综合案例应用,将会大量介绍三者的混合应用。
问题8:matlab的矩阵操作感觉很难上手,有什么学习方法吗?
matlab的矩阵操作是matlab一大亮点,我们使用矩阵运算,我建议可以先从小矩阵,比如2*2,3*3的矩阵去熟悉他,比如矩阵乘法,除法,位移,旋转等等,慢慢的脱离单纯使用for循环这种低效的方式,低纬度矩阵运算熟悉之后,高纬度的矩阵运算也是通用的方法。
问题9:博客中的MATLAB程序都是完整代码吗?
matlab中的程序,都是完整的,读者可以按博客每一个案例的步骤,自己手敲代码或者直接复制博客中的代码,就可以运行出最后的结果。读者可以放心订阅和使用。部分用到的数据样本,我也上传到了CSDN,并在对应的文章下面给出了下载链接,可以下载使用。
问题10:如果不是完整版的matlab,可以学习本教程吗?
部分案例中,使用到了MATLAB工具箱。一般情况下,大多数工具箱,安装matlab时都是默认安装的。部分工具箱,如深度学习工具箱,可能没有安装。我们举个例子,比如您的matlab没有深度学习工具箱,此时,当我们需要调用一个网络,如googlenet。matlab会提示:
这个时候,我们根据提示,去安装对应的支持包,就可以了。如下图所示:
安装过程中,需要有matlab的注册邮箱。安装完成之后,重启下matlab就可以正常使用了。
问题11:MATLAB课程和Simulink有何关联?
在matlab课程中,我们主要学习以编程为主要方式的相关课程。simulink是MATLAB的一部分,我单独写了simulink课程。simulink是以建模为主要实现方式的课程。其和matlab不太一样。但两者都为matlab的一部分。
问题12:MATLAB在后面教程4中用的多吗?
matlab主要作为算法的理论仿真验证,在后续教程4中,将主要作为辅助工具,FPGA是主要工具。基本上教程4的次序是,理论,matlab仿真验证,FPGA实现,这么一个过程。在有些案例中,matlab作为辅助验证手段,方便系统的测试观察。