Haskell中的神经网络 - 建议

Dam*_*mir 20 haskell neural-network

任何人都可以建议我在Haskell中为神经网络提供教程,书籍,博客或共享代码示例吗?我在命令式语言中有神经网络的经验,但我想在Haskell中尝试一下.

sas*_*nin 16

Hackage上有几个库:

  • HaskellNN一个Haskell库,它使用hmatrix(以及传统上,GSL和libLBFGS C库)来进行繁重的工作(GPL).声称要快.

  • 本能一个声称快速(BSD)的纯Haskell库.

  • hnn最小的Haskell神经网络库(LGPL).

  • bindings- fann绑定到FANN库.

  • hfann与FANN库的其他绑定.

  • 应该注意这些库都是*人工*神经网络(ANNs),这确实可能是问题所在.由于人工神经网络与生物神经网络的关系很少或没有关系(模拟也是一个大的研究领域),因此应该编辑这个问题以添加人工一词. (4认同)
  • 对于安全案例:不要使用*dnngraph*,至少在作者进行大规模修改之前不要使用.我花了大约一个月的时间尝试使用它,我可以肯定地说:作者提出了一切可能的设计错误,这可能与忽视特定环境或lang有关. (2认同)

mhw*_*bat 8

您可能会发现此示例应用程序很有用 它使用反向传播.我写了一篇讨论这个例子的文章,解释了功能范式的使用如何影响设计.该文章应出现在下一期的 Monad Reader中.

  • 该链接为404,请尝试http://themonadreader.files.wordpress.com/2013/03/issue214.pdf (2认同)

unh*_*mer 5

DataHaskell社区在http://www.datahaskell.org/docs/community/current-environment.html#neural-networks上提供了最新的Hacking软件包列表

从2019-08-26开始,它推荐以下软件包:

  • 神经(仅CPU,请参阅问题10
  • backprop-learn使用backprop库(仅CPU?)
  • 手榴弹(依赖类型!舒适的API,但到目前为止仅CPU,请参阅第55期 / 第35期 / 第6期
  • hasktorch(Haskell绑定到PyTorch底层C库,早期开发,但它应该让您在GPU上进行训练)
  • tensorflow(Haskell与TF的绑定;最有可能在生产中使用,但具有令人生畏的API;可以在GPU上运行)
  • (和sibe(仅CPU),尽管在ML标题下,实现了神经网络)

有一系列关于使用TensorFlow从哈斯克尔博客文章在https://mmhaskell.com/blog/2017/8/14/starting-out-with-haskell-tensor-flow / https://mmhaskell.com/blog/ 2017/8/21 /深入研究一个真正的问题,包括哈斯克尔张量流

如果您对自动分级/可区分编程感兴趣,那么backprop-learn作者将展示如何将依赖类型添加到神经网络,以及如何从Haskell进行自动区分(如TF中一样),最终将其转变为backprop库。另请参见广告库(此处是快速演示)。