Skip to content

flxai/soft-brownian-offset

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

soft-brownian-offset

Soft Brownian Offset (SBO) defines an iterative approach to translate points by a most likely distance from a given dataset. It can be used for generating out-of-distribution samples.

Installation

This project is hosted on PyPI and can therefore be installed easily through pip:

pip install sbo

Dependending on your setup you may need to add --user after the install.

Usage

For brevity's sake here's a short introduction to the library's usage:

from sklearn.datasets import make_moons
from sbo import soft_brownian_offset

X, _ = make_moons(n_samples=60, noise=.08)
X_ood = soft_brownian_offset(X, d_min=.35, d_off=.24, n_samples=120, softness=0)

For more details please see the documentation.

Background

The technique allows for trivial OOD generation -- as shown above -- or more complex schemes that apply the transformation of learned representations. For an in-depth look at the latter please refer to the paper that is available as open access from the CVF. For citations please see cite.

Demonstration

See the following plot to gain intuition on the approach's results:

demonstration

Please see the documentation for the source code to recreate the plot.

Cite

Please cite SBO in your paper if it helps your research:

@inproceedings{MBH21,
  author    = {Möller, Felix and Botache, Diego and Huseljic, Denis and Heidecker, Florian and Bieshaar, Maarten and Sick, Bernhard},
  booktitle = {{Proc. of CVPR SAIAD Workshop}},
  title     = {{Out-of-distribution Detection and Generation using Soft Brownian Offset Sampling and Autoencoders}},
  year      = 2021
}