HLearn - 高性能机器学习库


BSD
跨平台
Haskell

软件简介

HLearn 是采用 Haskell 语言编写的高性能机器学习库,它对任意维度空间有着最快最近邻的实现算法。

HLearn 同样也是一个研究型项目。该项目的研究目标是为机器学习发掘“最佳可能”的接口。这就涉及到了两个相互冲突的要求:该库应该像由
C/C++/Fortran/Assembly 开发的底层库那样运行快速;同时也应该像由 Python/R/Matlab
开发的高级库那样灵活多变。Julia
在这个方向上取得了惊人的进步,但是 HLearn “野心”更大。更值得注意的是,HLearn 的目标是比低级语言速度更快,比高级语言更加灵活。

为了实现这一目标,HLearn 采用了与标准学习库完全不同的接口。HLearn 中 H 代表三个独立的概念,也是 HLearn 设计的基础:

  • 一个 H 代表 Haskell。通过采用 Haskell 中的 SubHask 库获得快速数值计算能力;

  • 一个 H 代表 Homomorphisms 。这是是抽象代数的基本概念,HLearn 将该代数结构应用于学习系统中;

  • 一个 H 代表 History monad 。可在整个线程优化代码的过程中无需修改原代码,减轻调试过程的工作量。