我正在尝试使用深度信念网络进行面部识别。但我在这方面是个初学者,我已经阅读了网上可用的研究论文和文档,理解了二值图像的基本概念。但当我坐下来开始编程时,我发现非常困难,因为从程序员的角度来看没有任何解释,你能找到的只是能量函数之类的东西。能有人帮我设计(编写代码)灰度面部图像的隐藏层吗?(更具体地说,我的隐藏层应该是什么样的?应该是一组不同的过滤器还是其他什么东西?)
回答:
我对神经网络和自组织映射图的经验可以追溯到1980年代末,但我同样觉得基于能量的受限玻尔兹曼机难以直接坐下来实现。我找到了以下几个网站,上面有Matlab代码(Octave?)和C语言代码。这些来自Netflix竞赛(多伦多大学的获胜者),但这是一个很好的获胜例子,应该能提供一些见解。
http://imonad.com/rbm/restricted-boltzmann-machine/
https://code.google.com/p/nprizeadditions/source/browse/trunk/rbm.c
我还建议参加斯坦福大学Andrew Ng在Coursera上的机器学习课程(它是免费的,新一期课程将于2015年1月19日开始)。我已经观看了许多讲座,它们非常好。希望这对你有帮助。