Skip to content

Kernel-based adaptive linear-time independence test

License

Notifications You must be signed in to change notification settings

Renelvon/fsic

 
 

Repository files navigation

The Finite Set Independence Criterion (FSIC)

Build Status License: MIT Code style: Black

This repository contains a Python 3.5 implementation of the normalized FSIC (NFSIC) test as described in the paper:

  • Wittawat Jitkrittum, Zoltán Szabó and Arthur Gretton. An Adaptive Test of Independence with Analytic Kernel Embeddings. arXiv, 2016.

Installation

Dependencies

fsic requires the following dependencies to run:

numpy and scipy will be automatically installed if you obtain fsic from PyPi.

Note that theano has some dependencies not contained within PyPi; see this page for how to install it properly.

Installing fsic from PyPI

To install the package through PyPI, type:

$ pip3 install fsic --user

It is recommended that version 10 or later of pip is used; newer versions of pip can handle missing dependencies better, by automatically downloading and installing them together with fsic. To see which version of pip is installed, type:

$ pip3 --version

If you are using an older version, you can locally upgrade pip by typing:

$ python3 -m pip install --user --upgrade-pip

before attempting the fsic installation.

Build-Installing fsic from main repository

Alternatively, the package can be downloaded from source as follows:

  1. Download the latest source code from GitHub (please only use the master branch when doing so, other branches are not guaranteed to contain a correct build):
$ git clone https://github.com/Renelvon/fsic.git
  1. Install the package for this user only (showed by --user; installing the package system-wide might require sudo -H):
$ python3 setup.py install --user

Confirming installation

Check that the package installed successfully by openning a new Python shell, and issuing import fsic. If there is no import error, the installation has completed successfully.

Usage

The tutorial folder contains Jupyter notebooks that should help you start using the package. First, check demo_nfsic.ipynb; it will guide you through from the beginning. There are Jupyter notebooks in tutorial folder that you can explore to understand the software better.

License

MIT license.

If you have questions or comments about anything regarding this work or code, please do not hesitate the maintainer of this package (Nikolaos Korasidis) or the original author (Wittawat Jitkrittum).

About

Kernel-based adaptive linear-time independence test

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 86.5%
  • Python 13.4%
  • Makefile 0.1%