有没有用 Julia 编写的用于机器学习的本地库?

Is there a native library written in Julia for Machine Learning?

我已经开始使用 Julia.I 读到它比 C 快。 到目前为止,我已经看到了一些库,如 KNET 和 Flux,但它们都是用于深度学习的。 还有一个命令 "Pycall" tu use Python inside Julia.

但我对机器学习也很感兴趣。所以我想在 Julia 中使用 SVM、随机森林、KNN、XGBoost 等。

是否有用 Julia 编写的用于机器学习的本机库?

谢谢

很多算法都可以使用专用包轻松获得。喜欢BayesNets.jl

"classical machine learning"MLJ.jl是一个纯Julia机器学习框架,由Alan Turing Institute编写,开发非常活跃

对于神经网络 Flux.jl is the way to go in Julia. Also very active, GPU-ready and allow all the exotics combinations that exist in the Julia ecosystem like DiffEqFlux.jl 结合了 Flux.jl 和 DifferentialEquations.jl 的包。

只需等待 Zygote.jl 一个源到源的自动区分包,它将成为 Flux.jl

的某种后端

当然,如果您对 Python ML 工具更有信心,您仍然可以使用 TensorFlow.jl and ScikitLearn.jl,但 OP 要求纯 Julia 包,而这些只是 Python 的 Julia 包装器包裹。

看看this kNN implementation and this for XGboost

有 SVM 实现,但已过时且无人维护(搜索 SVM .jl)。但是,实际上,考虑其他算法以获得更好的预测质量和模型构建性能。查看 OLS(正交最小二乘法)和 OFR(正交前向回归)算法系列。你会很容易找到详细的算法描述,很容易用任何合适的语言编写代码。但是,我目前还没有 Julia 实现。几年前,我只找到了 Matlab 实现并制作了自己的 java 实现。我计划将其移植到 julia,但目前没有优先考虑,可能会持续几年。同时——为什么不自己编码呢?您找不到任何其他语言可以更轻松地编写原型代码并将其转化为高效的生产算法 运行 在启用 CUDA 的 GPGPU 上重载。

我推荐这本相当新的出版物,首先是:Nonlinear identification using orthogonal forward regression with nested optimal regularization