/jklol

Jayant Krishnamurthy's (machine) Learning and Optimization Library

Primary LanguageJavaBSD 2-Clause "Simplified" LicenseBSD-2-Clause

jklol

Jayant Krishnamurthy's (Machine) Learning and Optimization Library

A machine learning library with many different kinds of models, such as:

These models are built using useful core primitives for learning and inference:

  • Optimization -- stochastic gradient, Adagrad, LBFGS, and Expectation Maximization.
  • Tensor math -- supports both sparse and dense tensors.

Installation

Git

Get jklol by cloning the git repository:

git clone https://github.com/jayantk/jklol.git

The preferred way to build jklol is using sbt. In the root directory, run:

cd jklol
sbt package

This command will compile the source and produce target/jklol-(version).jar. If you don't have sbt, you can also build jklol using ant:

cd jklol
ant jar

This command will produce jklol.jar in the root directory.

Central Repository

If you wish to use jklol as a library, you can get jklol through the Maven central repository. The group id is "com.jayantkrish.jklol" and the artifact id is "jklol". The latest version can be found by searching the central repository. Maven users can add the following to the dependency section of pom.xml:

<dependency>
  <groupId>com.jayantkrish.jklol</groupId>
  <artifactId>jklol</artifactId>
  <version>1.2</version>
</dependency>

Sbt users can add the following to their library dependencies:

"com.jayantkrish.jklol" % "jklol" % "1.2"