资源说明:虽然用C++实现神经网络会比较麻烦,不过如果注意到以下下的trick, 在用C++实现神经网络时会舒服很多,代码也会非常简明,核心代码在百行左右也不是问题。
C++没有内置的向量,矩阵库,可以自己先轮几个Vector, Matrix类以及各种数学运算操作,最好搞成链式操作。
不要用index form来推导和实现BP算法,个人比较喜欢matrix form, 公式会非常紧凑,实现起来也不太容易出错
顶层框架设计,比如先设计几个基类Model类,数据库类,定义几个通用的接口。实现具体的算法时,只要实现特定接口即可。
我最近实现了一把基本的神经网络,包括LR和多层NN模型, 使用C++11, Visual Studio 2017开发
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。