Code Monkey home page Code Monkey logo

fslm's Introduction

Feature Selection through Likelihood Marginalization (FSLM)

This repository contains an updated, refactored version of FSLM and some utils to improve the usability. The modules were structured and obsolete pieces of code were removed. If you are just looking to reproduce the results from Efficient identification of informative features in simulation-based inference, see here.

fslm is a PyTorch package for efficient feature selection in Simulation-based Inference (SBI). It builds on top of the already existing sbi library and adds additional functionality for the purpose of feature selection. Along with the main code for fslm, this repository also contains different utilities to conduct experiments. This includes a simple database to store and retrieve samples/posteriors/metadata, a small task engine to distribute function calls across a process pool, a set of tools to simulate and extract features from Hodgkin-Huxley (HH) models, solutions for using SBI in conjunction with NaN data, some toy examples, as well as functions and metrics to analyse and plot the results.

Installation

fslm requires Python 3.6 or higher. With conda installed on the system, an environment for installing fslm can be created as follows:

# Create an environment for fslm (indicate Python 3.6 or higher); activate it
$ conda create -n fslm_env python=3.8 && conda activate fslm_env

Then create a clone of the repository on your local system with:

$ pip clone https://github.com/berenslab/fslm fslm
$ cd fslm

fslm along with the included utils can then be installed via the provided setup.py by invoking:

$ pip install .

To test the installation, drop into a python prompt and run

from experiment_utils.toymodels import LGM
lgm = LGM()
lgm.sample_joint()

Getting started

To get started we have provided an example notebook.

fslm's People

Contributors

jnsbck avatar

Watchers

 avatar  avatar  avatar

Forkers

jnsbck

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.