Skip to main content

Library of transfer learning and domain adaptation classifiers.

Project description

[![BuildStatus](https://travis-ci.org/wmkouw/libTLDA.svg?branch=master)](https://travis-ci.org/wmkouw/libTLDA)
## libTLDA: library of transfer learning and domain adaptation classifiers.

This package contains the following classifiers:
- Importance-weighted classifier, with weight estimators:<br>
- Kernel density estimation <br>
- Ratio of Gaussians [(Shimodaira, 2000)](https://www.sciencedirect.com/science/article/pii/S0378375800001154) <br>
- Logistic discrimination [(Bickel et al., 2009)](http://www.jmlr.org/papers/v10/bickel09a.html) <br>
- Kernel Mean Matching [(Huang et al., 2006)](https://papers.nips.cc/paper/3075-correcting-sample-selection-bias-by-unlabeled-data) <br>
- Nearest-neighbour-based weighting [(Loog, 2015)](http://ieeexplore.ieee.org/document/6349714/) <br>
- Transfer Component Analysis [(Pan et al, 2009)](http://ieeexplore.ieee.org/document/5640675/) <br>
- Subspace Alignment [(Fernando et al., 2013)](https://dl.acm.org/citation.cfm?id=1610094) <br>
- Structural Correspondence Learning [(Blitzer et al., 2006)](https://dl.acm.org/citation.cfm?id=1610094) <br>
- Robust Bias-Aware [(Liu & Ziebart, 2014)](https://papers.nips.cc/paper/5458-robust-classification-under-sample-selection-bias) <br>
- Feature-Level Domain Adaptation [(Kouw et al., 2016)](http://jmlr.org/papers/v17/15-206.html) <br>

## Python
Python versions 2.7, 3.4, 3.5 and 3.6.

### Installation
First clone and enter the repository:
```
sudo apt-get install git
git clone https://github.com/wmkouw/libTLDA
cd libTLDA/
```

Conda environments take care of all dependencies. If you don't have conda installed already, you can set it up through:
```
wget http://repo.continuum.io/miniconda/Miniconda2-latest-$(uname)-x86_64.sh -O ~/miniconda.sh
bash ~/miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"
```
Then, create and activate a new environment:
```
conda env create -f environment.yml
source activate libtlda
```

Afterwards, the package can be installed by running the following setup script:
```
python setup.py install
```

### Usage
The script in `example.py` shows a simple example of importing one of the adaptive classifiers and applying them to your data set.
```
cd python/
python example.py
```

<!-- ### Python-specific classifiers
- dann: Domain-Adversarial Neural Network (Ganin et al., 2015) (TODO) -->

## Matlab
Version: 9.2.0.556344 (R2017a) <br>

### Installation:
First clone the repository and change directory to matlab:
```
sudo apt-get install git
git clone https://github.com/wmkouw/libTLDA
cd libTLDA/matlab/
```

In the matlab command window, call the installation script. It downloads all dependencies ([minFunc](https://www.cs.ubc.ca/~schmidtm/Software/minFunc.html), [libsvm](https://www.csie.ntu.edu.tw/~cjlin/libsvm/)) and adds them - along with libTLDA - to your path:
```
install.m
```

### Usage
There is an example script that can be edited to test the different classifiers:
```
example.m
```

### Matlab-specific classifiers:
- Geodesic Flow Kernel [(Gong et al., 2012)](https://dl.acm.org/citation.cfm?id=1610094) <br>

## Contact:
Questions, comments and bugs can be submitted in the [issues tracker](https://github.com/wmkouw/libTLDA/issues).


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libtlda-0.1.1.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

libtlda-0.1.1-py2.py3-none-any.whl (26.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file libtlda-0.1.1.tar.gz.

File metadata

  • Download URL: libtlda-0.1.1.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for libtlda-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ec80d8c0e201df4f8473fd80744b4b591c79c4aebc44d43c9e26b9d699a4c3fb
MD5 a70b53cb6e0808db4a87b7b9f3c86101
BLAKE2b-256 ace2791db6fcae6f44f3588404ea27368540689a9b139328659ce58bcf727ea3

See more details on using hashes here.

Provenance

File details

Details for the file libtlda-0.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for libtlda-0.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b5bb5229f0a66076e9dcd7cc5df36e71ca98429a7b160939e8dc1d18c7bfcbd0
MD5 115c3a3605edd0877eb003188121a0e7
BLAKE2b-256 6482246fbd4b8ec4d6d2cf55dbceda9d6b7e23117f87aee2994c102d7631fb30

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page