Coder Social home page Coder Social logo

jsat's Introduction

Java Statistical Analysis Tool

JSAT is a library for quickly getting started with Machine Learning problems. It is developed in my free time, and made available for use under the GPL 3. Part of the library is for self education, as such - all code is self contained. JSAT has no external dependencies, and is pure Java. I also aim to make the library suitably fast for small to medium size problems. As such, much of the code supports parallel execution.

The current master branch of JSAT is going through a larger refactoring as JSAT moves to Java 8. This may cause some examples to break if used against the head version, but they should be fixible with minimal changes.

Get JSAT

Ther current release of JSAT is version 0.0.9, and supports Java 6. The current master branch is now Java 8+.

You can download JSAT from maven central, add the below to your pom file

<dependencies>
  <dependency>
    <groupId>com.edwardraff</groupId>
    <artifactId>JSAT</artifactId>
    <version>0.0.9</version>
  </dependency>
</dependencies>

If you want to use the bleeding edge, but don't want to bother building yourself, I recommend you look at jitpack.io. It can build a POM repo for you for any specific commit version. Click on "Commits" in the link and then click "get it" for the commit version you want.

If you want to read the javadoc's online, you can find them hosted on my website here.

Why use JSAT?

For research and specialized needs, JSAT has one of the largest collections of algorithms available in any framework. See an incomplete list here.

Additional, there are unfortunately not as many ML tools for Java as there are for other languages. Compared to Weka, JSAT is usually faster.

If you want to use JSAT and the GPL is not something that will work for you, let me know and we can discuss the issue.

See the wiki for more information as well as some examples on how to use JSAT.

Note

Updates to JSAT may be slowed as I begin a PhD program in Computer Science. The project isn’t abandoned! I just have limited free time, and will be balancing my PhD work with a full time job. If you discover more hours in the day, please let me know! Development will be further slowed due to some health issues. I'll continue to try and be prompt on any bug reports and emails, but new features will be a bit slower. Please use the github issues first for contact.

Citations

If you use JSAT and find it helpful, citations are appreciated! Please cite the JSAT paper published at JMLR. If you're feeling a little lazy, the bibtex is below:

@article{JMLR:v18:16-131,
author = {Raff, Edward},
journal = {Journal of Machine Learning Research},
number = {23},
pages = {1--5},
title = {JSAT: Java Statistical Analysis Tool, a Library for Machine Learning},
url = {http://jmlr.org/papers/v18/16-131.html},
volume = {18},
year = {2017}
}

jsat's People

Contributors

edwardraff avatar tklerx avatar melantronic avatar pedromdrp avatar alexb2539 avatar egor18 avatar vocatan avatar joebillingsley avatar martinseeler avatar briancecker avatar blacelle avatar fabianp avatar fkleon avatar schrieveslaach avatar gitter-badger avatar thomas-bombrun avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.