Skip to content

Latest commit

 

History

History
65 lines (43 loc) · 3.02 KB

README.md

File metadata and controls

65 lines (43 loc) · 3.02 KB

Kernalytics: kernel methods for data analysis

Kernel methods are versatile, and Kernalytics exploits this property through a generic data analysis framework. It allows for easy extension: new algorithms, data types, kernels and optimizations are easily compatible with each other. This is possible through the Gram matrix computation which acts as an abstraction linking every module. Heterogeneous data sets are supported through linear combination of kernels.

Current implementations cover:

  • algorithms: k-means, offline change point detection, regression, support vector machine, two sample test
  • data types: real, vector, matrix
  • kernel families: linear, polynomial, gaussian, laplacian
  • Gram matrix optimization: direct computation, cached computation, low rank approximation

For easier use, Kernalytics is provided with kernalyzr, a (very shallow) R wrapper.

Kernalytics has been built and run on Windows, macOS and Linux.

Licence

Kernalytics is distributed under the AGPL 3.0 licence.

Credits

The following people contributed to the development of Kernalytics: Vincent Kubicki, Alain Celisse.

Copyright Inria - Université de Lille - CNRS

Quick start for kernalyzr

Install sbt on your machine (see Build instructions). Open the kernalyzr directory in RStudio, then press CRTL + SHIFT + B.

To create and run some working examples in the (preferably empty) current directory, type the following commands in the R console:

library(kernalyzr) # load kernalyzr
copyTest() # generate the test cases
runTest() # run kernalyz algorithms on each test case

For more details on the data format, see the documentation on input / output format.

Technology Readiness Level

Kernalytics is at the moment a proof of concept which has been used on a few real data sets. A lot of things are missing, as indicated in the list of things to do. However, the modular architecture can be considered stable and functional.

The Technology Readiness Level could be considered 4 or 5: feasibility has been proven, and demonstration must be carried out.

Internal links

External links

  • Sernel: initial project on which Kernalytics is based
  • kernlab: a package with similar goals, written in R
  • RScala: the gateway between Scala and R, used in kernalyr