Coder Social home page Coder Social logo

jinyu0310 / dynaml Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tailhq/dynaml

0.0 2.0 0.0 178.53 MB

Scala Library/REPL for Machine Learning Research

Home Page: https://mandar2812.github.io/DynaML

License: Apache License 2.0

Scala 97.62% R 0.29% Java 2.08%

dynaml's Introduction

DynaML

Codewake Join the chat at https://gitter.im/mandar2812/DynaML Build Status

Aim

DynaML is a scala library/repl for implementing and working with general Machine Learning models. Machine Learning/AI applications make heavy use of various entities such as graphs, vectors, matrices etc as well as classes of mathematical models which deal with broadly three kinds of tasks, prediction, classification and clustering.

The aim is to build a robust set of abstract classes and interfaces, which can be extended easily to implement advanced models for small and large scale applications.

But the library can also be used as an educational/research tool for data analysis.

Currently DynaML supports.

  • Regularized Ordinary Least Squares
  • Logistic and Probit Models for binary classification
  • Regression and Classification with kernel based Dual LS-SVM
  • Regression and Classification with Gaussian Processes
  • Feed forward Neural Networks
  • Committee Models
    • Neural Committee Models
    • Gaussian Process Committee Models
  • Model Learning and Optimization
    • Gradient Descent
    • Conjugate Gradient
    • Committee Model Solver
    • Back propogation with momentum
    • LSSVM linear solver
  • Model tuning
    • Grid Search
    • Maximum Likelihood (ML-II)
    • Coupled Simulated Annealing
  • Model validation metrics (RMSE, Area under ROC)
  • Entropy based data subset selection
  • Data Pipes for configurable workflows

Include

To include DynaML in your maven JVM project edit your pom.xml file as follows

<repositories>
		<repository>
		    <id>jitpack.io</id>
		    <url>https://jitpack.io</url>
		</repository>
</repositories>
<dependency>
    <groupId>com.github.mandar2812</groupId>
    <artifactId>DynaML</artifactId>
    <version>v1.4</version>
</dependency>

for sbt projects edit your build.sbt (see JitPack for more details)

    resolvers += "jitpack" at "https://jitpack.io"
    libraryDependencies += "com.github.User" % "Repo" % "Tag"

Installation

Platform Compatibility

Currently DynaML installs and runs on *nix platforms, though it is possible to build the project on windows, running the generated .bat file might not work and one would need to resort to using the java -jar command.

Pre-requisites

  • sbt

  • A modern HTML5 enabled browser (to view plots generated by Wisp)

  • BLAS, LAPACK and ARPACK binaries for your platform. In case they are not installed, it is possible to disable this feature by commenting out (//) the section of the build.sbt file given below.

      "org.scalanlp" % "breeze-natives_2.11" % "0.11.2" % "compile",

Steps

  • Clone this repository
  • Run the following.
  sbt

The sbt shell will open

 [info] Loading project definition from ~/DynaML/project
 [info] Set current project to DynaML (in build file:~/Development/DynaML/)
 >

Now enter the following commands

>stage
>console

After the project builds, you should get the following prompt.

       _        _        _          _             _                  _   _         _
      /\ \     /\ \     /\_\       /\ \     _    / /\               /\_\/\_\ _    _\ \
     /  \ \____\ \ \   / / /      /  \ \   /\_\ / /  \             / / / / //\_\ /\__ \
    / /\ \_____\\ \ \_/ / /      / /\ \ \_/ / // / /\ \           /\ \/ \ \/ / // /_ \_\
   / / /\/___  / \ \___/ /      / / /\ \___/ // / /\ \ \         /  \____\__/ // / /\/_/
  / / /   / / /   \ \ \_/      / / /  \/____// / /  \ \ \       / /\/________// / /
 / / /   / / /     \ \ \      / / /    / / // / /___/ /\ \     / / /\/_// / // / /
/ / /   / / /       \ \ \    / / /    / / // / /_____/ /\ \   / / /    / / // / / ____
\ \ \__/ / /         \ \ \  / / /    / / // /_________/\ \ \ / / /    / / // /_/_/ ___/\
 \ \___\/ /           \ \_\/ / /    / / // / /_       __\ \_\\/_/    / / //_______/\__\/
  \/_____/             \/_/\/_/     \/_/ \_\___\     /____/_/        \/_/ \_______\/

Welcome to DynaML v1.4.1-beta.3 
Interactive Scala shell for Machine Learning Research
(Scala 2.11.8 Java 1.8.0_101)
DynaML> 

Getting Started

Refer to the user guide for a more detailed introduction, for contributing; refer to the wiki.

dynaml's People

Contributors

mandar2812 avatar amitkumarj441 avatar ahoy196 avatar gitter-badger avatar

Watchers

jinyu avatar  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.