-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the NeuralEmbedding wiki!
NeuralEmbedding is a MATLAB library designed to provide a set of tools for analyzing neural dynamics. This library includes various dimensionality reduction techniques tailored for spiking neural data, along with useful metrics to evaluate the quality of the generated embeddings as well as plotting methods to visualize data.
The toolbox is mainly divided in four modules (each with a dedicated wiki page):
- Data loading and preprocessing: Import data in the toolbox and perform standard preprocessing methods
- Dimensionality Reduction Techniques: Apply various algorithms to reduce the dimensionality of spiking neural data, uncovering underlying neural dynamics.
- Metrics evaluation: Utilize built-in metrics to assess the effectiveness and quality of the generated embeddings.
- Visualization and plotting: The library is designed to be flexible, allowing for easy integration with existing workflows and extending with new methods.
To use NeuralEmbedding, clone the repository and add it to your MATLAB path:
repositoryURL("https://github.com/yourusername/NeuralEmbedding.git",folder)
addpath(fullfile(folder,"NeuralEmbedding"));
Here’s a simple example of how to use the library to perform dimensionality reduction on spiking neural data. For details on input data formats, the available dimensionality reduction methods, and evaluation metrics, please refer to the wiki.
% Load your neural data
load('neural_data.mat');
NE = NeuralEmbedding(data,...
"fs",fs,...
"time",T,...
"area",A,...
"condition",C,);
% Apply a dimensionality reduction technique
NE.findEmbedding("PCA");
% Evaluates trajectory length
NE.computeMetrics("arc");