老饼讲解:一步一步上手学习
好了,在Part-1的时候,我们已经大概地了解了BP神经网络是个什么东西,有些什么内容,在matlab中怎么简单地使用。在Part-2我们就来正式地说说如何使用BP神经网络来建模,以及解决建模中经常遇到的问题。
如果说,在Part-1入门内容中,我们聚焦于理解BP神经网络是"what",那么 Part-2建模部分我们就更注重why了。本来建模是很简单的事,根据流程来构建BP神经网络就可以了,但是许多同学建模之后,会发现效果没有想象中那么好,这时候就措手无策、瞎调乱搞了,这就是因为对BP神经网络以及matlab工具箱理解不够深刻的原因。所以我们这里,整理出基本的建模流程,以及相关理论知识,让大家对BP的建模一清二楚。
在这里我们主要有四部分:

《matlab-BP工具箱说明》:这里我们展示matlab的BP神经网络的说明,这是基础内容。
《BP神经网络-建模代码》:这里用例子一步一步展示BP的建模的方法和流程,以及实现代码。
《BP神经网络-深入理解》:这里加深大家对BP神经网络的理解,避免大家调参时乱调。
《BP神经网络-效果不佳》:这里给大家分析效果不佳时应该怎么办,以及如何分析原因。
《工具箱说明》大家随便看看就可以了,只是作为查阅资料。而《建模代码》主要给大家讲一些建模时的基本流程和操作,大家建模时对着代码一步一步操作就好了。最重要的是《深入理解》,在建模时我们讲的更做是如何做,只有看完《深入理解》的内容,才会明白为什么是这样做,如果不这样做会怎么样。最后,《效果不佳》是建立在对BP有深入理解的基础上,在效果不好时的一些思路和参考意见。
其实只不过是建个模而已,我也不想写这么多内容,把大家搞得这么复杂,但没办法,太多同学因为理解不到位,建模时遇到这样、那样的问题,完全措手无策,所以不得不渐渐的把BP神经网络的原理讲得更深入一些,让大家理解透这个东西,这样才能“玩转”它,而不是被它玩,看完这部分内容,基本大部分问题也能够自己去思考和分析了。
下面都是我曾经被问过的问题:
"BP神经网络能解决我的这个问题吗?"
"我的误差特别大,怎么办?"
"数据要不要做归一化?"
"lr设为0.1可以吗?"
"BP神经网络设多少层?"
"隐节点要设多少个?"
"我要怎么看BP神经网络的结果?"
"怎么关掉validation Check?"
"模型训练好后,怎么拿到别的地方去使用?"
自从课程完善后,基本就再也没有同学问过这些问题了,这些问题都特别难回答,主要还是靠各位提升对BP的基础认识、以及熟悉一些基础操作,自然就能治百病了~只有懂了,才明白上面的问题多难回答~
例如在他不了解validation check的情况下,你只告诉他关validation check的方法,这不是坑他吗?回答不全面又没用,回答全面又太费时间,还不如整体先学一学基础的知识和理论。
大家看的时候,一步一步来,尽量把内容看完,因为这是一个由"上手"到"严谨"的过程,我觉得自己最正确的事情就是以网页的形式来做课程,这样可以根据大家的反馈来不断的修改和完善,现在基本没什么同学提问题了,这个课程也差不多算是完善了,大家只要跟着一步一步看完就可以了,看完基本也就"真正"弄懂这个东西,以及如何使用它了。
评论