Skip to content

Epsilon is a library with functions for machine learning and statistics written in plain C. It is intended to run on microcontrollers.

License

Notifications You must be signed in to change notification settings

breuderink/epsilon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

211 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Epsilon

Epsilon is a minimal C library for machine learning and statistics. No dynamic memory allocation, online algorithms, easy to use and extend.

Planned:

  • CSV reading
  • Feature hashing
  • Passive-aggressive regression/classification
  • More metrics

Getting started

Build with Meson:

meson setup builddir
meson test -C builddir

See examples/ for usage.

Algorithms

  • Xorshift: PRNG
  • FNV hash: Feature hashing
  • Welford's method: Online mean/variance
  • Fast Walsh-Hadamard Transform: O(n log n) transform
  • Passive-aggressive learning (planned)
  • Online learning utilities (planned)
  • More metrics (planned)

License

BSD 3-Clause License. See LICENSE.

CI Meson

About

Epsilon is a library with functions for machine learning and statistics written in plain C. It is intended to run on microcontrollers.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published