This repository is supposed to contain all my GNU Guile or Scheme machine learning algorithm implementations.
zelphir.kaltstahl ce9d3d306d add FP to approach | %!s(int64=4) %!d(string=hai) anos | |
---|---|---|
test | %!s(int64=4) %!d(string=hai) anos | |
utils | %!s(int64=4) %!d(string=hai) anos | |
.gitignore | %!s(int64=5) %!d(string=hai) anos | |
LICENSE | %!s(int64=7) %!d(string=hai) anos | |
Makefile | %!s(int64=4) %!d(string=hai) anos | |
README.org | %!s(int64=4) %!d(string=hai) anos | |
columns.csv | %!s(int64=7) %!d(string=hai) anos | |
data-point.scm | %!s(int64=5) %!d(string=hai) anos | |
data_banknote_authentication.csv | %!s(int64=7) %!d(string=hai) anos | |
dataset.scm | %!s(int64=4) %!d(string=hai) anos | |
decision-tree.scm | %!s(int64=4) %!d(string=hai) anos | |
metrics.scm | %!s(int64=5) %!d(string=hai) anos | |
notes.org | %!s(int64=4) %!d(string=hai) anos | |
parallelism.scm | %!s(int64=4) %!d(string=hai) anos | |
prediction.scm | %!s(int64=5) %!d(string=hai) anos | |
pruning.scm | %!s(int64=4) %!d(string=hai) anos | |
run.scm | %!s(int64=4) %!d(string=hai) anos | |
split-quality-measure.scm | %!s(int64=5) %!d(string=hai) anos | |
todo.org | %!s(int64=4) %!d(string=hai) anos | |
tree.scm | %!s(int64=4) %!d(string=hai) anos | |
utils.scm | %!s(int64=5) %!d(string=hai) anos |
(This readme file might not render 100% precisely on many git host websites. If something seems strange, you can look at the raw version of this file.)
This is a collection of machine learning algorithms implemented in GNU Guile. Currently implemented algorithms are:
Nope, sorry, currently that is it.
The decision tree algorithm is implemented in a purely functional way, which helps immensely with parallelization of the algorithm and unit testing the code. My vision for this repository is, that more purely functional machine learning algorithms are added later. My preference is strongly for purely functional algorithms.
Feel free to report bugs, report possible improvements, contribute machine learning algorithms in GNU Guile or standard Scheme runnable in GNU Guile (perhaps even non-purely functional, so that we can later on transform them into purely functional ones), fork or use this code in any license adhering way.
There are many things, that could be done. A few will be listed here, in a non-comprehensive list:
You can run the tests by using the make file as follows:
# from the root directory of this project:
make test
In general, the idea is to implement machine learning algorithms in a purely functional way, which will help with parallelization, testability and avoiding bugs due to mutable state.