All Projects → CYHSM → Deepinsight

CYHSM / Deepinsight

Licence: mit
A general framework for interpreting wide-band neural activity

Projects that are alternatives of or similar to Deepinsight

Data Science
Toda semana um novo material estará disponível para guiar no estudo de ciência de dados =)
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Software Training
RoboJackets Software Training
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Nb2mail
Send a notebook as an email
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Flask Rest Setup
Notes on Flask REST API and tutorial
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Rl Quadcopter
Teach a Quadcopter How to Fly!
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Carnd Lenet Lab
Implement the LeNet deep neural network model with TensorFlow.
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Mnist Coreml Training
Training MNIST with CoreML on Device
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
100 Days Of Nlp
Stars: ✭ 125 (+0%)
Mutual labels:  jupyter-notebook
Simplegesturerecognition
A very simple gesture recognition technique using opencv and python
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Gdeltpyr
Python based framework to retreive Global Database of Events, Language, and Tone (GDELT) version 1.0 and version 2.0 data.
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Off Nutrition Table Extractor
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Pygru4rec
PyTorch Implementation of Session-based Recommendations with Recurrent Neural Networks(ICLR 2016, Hidasi et al.)
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Jupyterlab Demo
Demonstrations of JupyterLab
Stars: ✭ 122 (-2.4%)
Mutual labels:  jupyter-notebook
Oc Nn
Repository for the One class neural networks paper
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Ipyvolume
3d plotting for Python in the Jupyter notebook based on IPython widgets using WebGL
Stars: ✭ 1,696 (+1256.8%)
Mutual labels:  jupyter-notebook
Pytorch Computer Vision Cookbook
PyTorch Computer Vision Cookbook, Published by Packt
Stars: ✭ 122 (-2.4%)
Mutual labels:  jupyter-notebook
Predictive Maintenance
Data Wrangling, EDA, Feature Engineering, Model Selection, Regression, Binary and Multi-class Classification (Python, scikit-learn)
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Huggingtweets
Tweet Generation with Huggingface
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook
Dash Sample Apps
Open-source demos hosted on Dash Gallery
Stars: ✭ 2,090 (+1572%)
Mutual labels:  jupyter-notebook
Error Detection
A Baseline for Detecting Misclassified and Out-of-Distribution Examples in Neural Networks
Stars: ✭ 124 (-0.8%)
Mutual labels:  jupyter-notebook

license py36 status Build Status

DeepInsight: A general framework for interpreting wide-band neural activity

DeepInsight is a toolbox for the analysis and interpretation of wide-band neural activity and can be applied on unsorted neural data. This means the traditional step of spike-sorting can be omitted and the raw data can be used directly as input, providing a more objective way of measuring decoding performance. Model Architecture

Google Colaboratory

We created a Colab notebook to showcase how to analyse your own two-photon calcium imaging data. We provide the raw as well as the preprocessed dataset as downloads if you just want to train the model. You can replace the code which loads the traces with your own data handling and directly train it to decode your behaviour or stimuli in the browser.

Two-Photon Imaging
Colab Walkthrough

Example Usage

import deepinsight

# Load your electrophysiological or calcium-imaging data
(raw_data,
 raw_timestamps,
 output,
 output_timestamps,
 info) = deepinsight.util.tetrode.read_tetrode_data(fp_raw_file)

# Transform raw data to frequency domain
deepinsight.preprocess.preprocess_input(fp_deepinsight, raw_data, sampling_rate=info['sampling_rate'],
                                        channels=info['channels'])

# Prepare outputs
deepinsight.util.tetrode.preprocess_output(fp_deepinsight, raw_timestamps, output, output_timestamps,
                                           sampling_rate=info['sampling_rate'])

# Train the model
deepinsight.train.run_from_path(fp_deepinsight, loss_functions, loss_weights)

# Get loss and shuffled loss for influence plot
losses, output_predictions, indices = deepinsight.analyse.get_model_loss(fp_deepinsight, stepsize=10)
shuffled_losses = deepinsight.analyse.get_shuffled_model_loss(fp_deepinsight, axis=1, stepsize=10)

# Plot influence across behaviours
deepinsight.visualize.plot_residuals(fp_deepinsight, frequency_spacing=2)

See also the jupyter notebook for a full example for decoding behaviours from tetrode CA1 recordings. Note that the static notebook does not include interactive plots as shown in the above Colab notebook. The expected run time for a high sampling rate dataset (e.g. tetrode recordings) is highly dependend on the number of channels and duration of experiment. Preprocessing can take up to one day for a 128 channel - 1 hour experiment, while training the model takes between 6 and 12 hours. For calcium recordings the preprocessing time is shrunk down to minutes.

Following Video shows the performance of the model trained on position (left), head direction (top right) and speed (bottom right): Model Performance

Installation

Install DeepInsight with the following command (Installation time ~ 2 minutes, depending on internet speed):

pip install -e git+https://github.com/CYHSM/DeepInsight.git#egg=DeepInsight

If you prefer to use DeepInsight from within your browser, we provide Colab-Notebooks to guide you through how to use DeepInsight with your own data.

  • How to use DeepInsight with two-photon calcium imaging data Two-Photon Imaging

  • How to use DeepInsight with electrophysiology data Ephys Data

System Requirements

Hardware requirements

For preprocessing raw data with a high sampling rate it is recommended to at least use 4 parallel cores. For calcium recordings one core is enough. For training the model it is recommended to use a GPU with at least 6Gb of memory.

Software requirements

The following python dependencies are being automatically installed when installing DeepInsight (specified in requirements.txt):

tensorflow-gpu
numpy
pandas
joblib
seaborn
matplotlib
h5py
scipy
ipython

The framework is extensively tested on Linux 16.04 but should run on all OS (Windows, Mac, Linux) supporting a Python version >3.6 and pip. It is recommended to install the framework and dependencies in a virtual environment (e.g. conda).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].