vsha96 / mllib

Machine Learning in Haskell
BSD 3-Clause "New" or "Revised" License
29 stars 1 forks source link
haskell machine-learning

Mllib: Machine learning library in Haskell

ANNOUNCEMENT FROM THE AUTHOR

The collection of machine learning algorithms that allows developers to stay within the Haskell language.

Documentation will be available soon!

Installation and run

  1. Download and install the Haskell Tool Stack
    curl -sSL https://get.haskellstack.org/ | sh
  2. Clone the repository to download the latest version of this library
    git clone git@github.com:vsha96/mllib.git
  3. First things to try out:
    • try to use available models in app/Main.hs
    • in the directory of package stack run

See troubleshooting installation issues

Available models

The models are divided by tasks or by structure (see src/Mllib). There are also support modules.

Clustering:

Classification:

Trees:

Example of usage:

-- file app/Main.hs
import Mllib.Types
import Mllib.Tree.Decision

main :: IO ()
main = do 
  let
    x = [[1], [2], [3], [4]]
    y = [0, 0, 2, 2]
    x_train = map vector x
    x_test  = map vector [[0], [1.8], [3.3], [10]]
    modelDTree = fitDecisionTree treeSetup x_train y
  putStr "Predict: "
  print $ predict modelDTree x_test

Output:
Predict: [0,0,2,2]

See more examples in app/Main.hs

Contributing

Any help is welcome! Please make sure to read the contributor guidelines before opening a new issue.