机器学习的实现(语言及库的选择)

来源:互联网 发布:学seo有用吗 编辑:程序博客网 时间:2024/05/12 21:27

Machine learning and Programming Languages

  • Python 下的 TensorFlow 以及 torch 底层都是通过 C++ 实现的,考虑到性能的需要;
  • Java:Weka
  • C/C++:regression(Liblinear),SVM(Libsvm)

  • Eric Yuan’s Blog(C++ 实现各种算法,以 OpenCV 作为矩阵运算的库)

1. C++开源库


矩阵运算库:

  • light-matrix

  • JMLR Machine Learning Open Source Software
  • mlpack :C++ machine learning library.
  • SHARK :a modular C++ library for the design and optimization of adaptive systems. It provides methods for :

    • linear and nonlinear optimization, in particular evolutionary and gradient-based algorithms,
    • kernel-based learning algorithms and neural networks, and various other machine learning techniques.

    SHARK serves as a toolbox to support real world applications as well as research in different domains of computational intelligence and machine learning. The sources are compatible with: Windows, Solaris, MacOS X, and Linux.

  • Dlib-ml:an open source library, targetedat both engineers and research scientists, which aims to provide a similarly rich environment fordeveloping machine learning software in the C++ language.

    Which machine learning library to use

  • Eblearn:an object-oriented C++ library that implements various machine learning models, including:

    • energy-based learning,
    • gradient-based learning for machine composed of multiple heterogeneous modules.
    • In particular, the library provides a complete set of tools for building, training, and running convolutional networks.

2. 机器学习的开源软件

MLOSS:Machine Learning Open Source Software

C++的机器学习开源库

3. 机器学习知识框架图


这里写图片描述

0 0