原文地址 http://lavimo.blog.163.com/blog/static/2149411532013911115316263/
昨天的主要活动内容是找一个神经网络的包。。。。= =
这里在叙述pybrain的包前不得不吐槽一下剩下这些破包。
先说matlab, matlab是最简单的,而且很轻送的你可以用一个可视化工具来无脑学习。不过,这就是matlab的傻逼之处,我的笔记本是32位+2g内存的, 我的输入数据大概200m , 就内存不够了, 这明显是对我的电脑的一个致命的侮辱!
然后还有neurolab,这个包基本函数是和matlab一样的, 不过也带来了一样的问题, 仍然带不起来, 真是搓逼。 还报段错误, 这可是python的包啊, 你报段错误是什么意思!
fann,c语言写的,我想用python接口, 我估计能很快, 好吧, 我承认, 我跟本就没用,为什么呢, 输入数据太过于齐琶,还有根本就没有python接口的文档!大哥,你是开源软件怎么可以这样= =。
最后,在我濒临崩溃的时候pybrain出现了, 拯救了我。其实这个包也很次, 正常跑很慢, 不过能跑。
他的官方主页如下 http://www.pybrain.org/docs/ , 其实基本的工作过程在主页上就很清楚了。
这里要说明几点,每一层之间可以自定义函数,比如sigmoid什么的。
1. 建立神经网络
前四个数是各个层的数量, 可以自己定义无限多层, 不过推荐1-2 隐含层。
2. 建立数据集
数据集是有特定封装的, 100 是输入单元个数 , 24 输出单元个数,通过添加addSample来增加, 没有其他方法。其实就是封装了两个numpy的array
3.
这个是训练,将构造的神经网络和数据结构同时输入,其他参数可以调整。
训练的epochs 是迭代次数
4.
返回结果,也需要用nn跑一下,然后返回一个numpy的结果。
貌似没什么了, 如有需要可以继续参阅文档。