Sally

A Tool for Embedding Strings in Vector Spaces

Packages

Homebrew Formula

Sally can be installed easily using the package manager Homebrew for OS X. Once the package manager has been setup, run the following two commands:

  $ brew tap homebrew/science
  $ brew install sally

Debian/Ubuntu packages

There are pre-compiled packages of Sally available for users of Debian and Ubuntu Linux. Simply run the following commands:

   $ sudo add-apt-repository ppa:mlsec/sally
   $ sudo apt-get update 
   $ sudo apt-get install sally

Building Sally

Dependencies

The following libraries are required for building Sally from source code. These libraries are available as packages with many operating system distributions, e.g. Debian Linux and MacPorts (see detailed list of dependencies).

   >= zlib-1.2.1          http://www.zlib.net
   >= libconfig-1.3.2     http://www.hyperrealm.com/libconfig/      
   >= libarchive-3.1.2    http://libarchive.github.com/

Compilation

Sally follows the standard compilation procedure of GNU software. It has been successfully compiled on Linux, Mac OS X and OpenBSD.

  $ ./configure [options]
  $ make
  $ make check
  $ make install

Configuration options

  --prefix=PATH           Set directory prefix for installation

By default Sally is installed into /usr/local. If you prefer a different location, use this option to select an installation directory.

  --enable-md5hash        Enable MD5 as alternative hash

Sally uses a hash function for mapping different features to different dimensions in the vector space. By default the very efficient Murmur hash is used for this task. In certain critical cases, however, it may be useful to use a cryptographical hash as MD5.