Vowpal Wabbit Wrapper

Vowpal wabbit is a very effective machine learning library (https://github.com/JohnLangford/vowpal_wabbit/wiki). It implements several state of art algorithms in a very efficient way. This java library provides a JNI OOP interface to vowpal wabbit. It depends only on log4j and guava. You don't need vowpal wabbit to be installed if you use this wrapper.

License

License

GroupId

GroupId

com.indeed
ArtifactId

ArtifactId

vw-wrapper
Last Version

Last Version

5.1.6
Release Date

Release Date

Type

Type

jar
Description

Description

Vowpal Wabbit Wrapper
Vowpal wabbit is a very effective machine learning library (https://github.com/JohnLangford/vowpal_wabbit/wiki). It implements several state of art algorithms in a very efficient way. This java library provides a JNI OOP interface to vowpal wabbit. It depends only on log4j and guava. You don't need vowpal wabbit to be installed if you use this wrapper.
Project URL

Project URL

http://github.com/indeedeng
Source Code Management

Source Code Management

https://github.com/indeedeng/vowpal-wabbit-java

Download vw-wrapper

How to add to project

<!-- https://jarcasting.com/artifacts/com.indeed/vw-wrapper/ -->
<dependency>
    <groupId>com.indeed</groupId>
    <artifactId>vw-wrapper</artifactId>
    <version>5.1.6</version>
</dependency>
// https://jarcasting.com/artifacts/com.indeed/vw-wrapper/
implementation 'com.indeed:vw-wrapper:5.1.6'
// https://jarcasting.com/artifacts/com.indeed/vw-wrapper/
implementation ("com.indeed:vw-wrapper:5.1.6")
'com.indeed:vw-wrapper:jar:5.1.6'
<dependency org="com.indeed" name="vw-wrapper" rev="5.1.6">
  <artifact name="vw-wrapper" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.indeed', module='vw-wrapper', version='5.1.6')
)
libraryDependencies += "com.indeed" % "vw-wrapper" % "5.1.6"
[com.indeed/vw-wrapper "5.1.6"]

Dependencies

compile (2)

Group / Artifact Type Version
com.google.guava : guava jar 16.0.1
log4j : log4j jar 1.2.17

provided (1)

Group / Artifact Type Version
com.google.code.findbugs : jsr305 jar 1.3.9

test (2)

Group / Artifact Type Version
junit : junit-dep jar 4.8.2
commons-io : commons-io jar 1.4

Project Modules

There are no modules declared in this project.

Vowpal Wabbit Wrapper

OSS Lifecycle

A java wrapper and friendly API for the Vowpal wabbit machine learning package.

Background

The Vowpal Wabbit (VW) package is very production friendly and it implements the state of the art in modern machine learning research.

The existing java binding for VW has drawbacks:

  • Because of a bug, saved models may have incorrect weights
  • It requires the boost library to be installed on every machine where the wrapper is used, which is not always feasible
  • its API is low-level, requiring you to operate with strings instead of providing a more convenient domain abstraction

This project addresses these drawbacks.

Building the library

To build this library run the following command:

mvn clean install

Dependencies

  • guava
  • log4j

Rebuilding C++ binaries

This distribution includes pre-built C++ binaries along with the code. You can rebuild the binaries from source if necessary. Refer to build-jni/README.md for instructions.

Using the library

Refer to the official vowpal wabbit wiki for general instructions and advice on training the Vowpal Wabbit model.

Refer to API javadocs for instructions specific to this wrapper and java API.

The following integration tests provide references for using the API.

Reporting issues

Create an issue in this project if you encounter issues or need help.

Tested platform

We have tested this wrapper on the following platforms:

  • OS X Yosemite
  • Ubuntu 14
  • Enterprise Linux 5
  • Enterprise Linux 6
  • CentOS 5
  • CentOS 6
  • CentOS 7

Code of Conduct

This project is governed by the Contributor Covenant v 1.4.1

License

com.indeed

Indeed Engineering

Versions

Version
5.1.6
5.1.3
5.1.2
5.1.1
1.0.2
1.0.1
1.0.0