AnoushkaJain3's picture
Update README.md
fcd083f verified
|
raw
history blame
1.95 kB
metadata
language:
  - en
pipeline_tag: tabular-classification
tags:
  - computational neuroscience

To reduce the effort in manual curation, we developed a machine learning approach using Neuropixels probes, incorporating quality metrics to automatically identify noise clusters and isolate single-cell activity. Compatible with the Spikeinterface API, our method generalizes across various probes and speices.

The we generated a machine learning model that is trained on 11 mice in V1, SC and ALM using Neuropixels on mice. Each recording was labelled by at least two people, and in different combinations. The agreement amongst labellers is 80%. You can use the models "noise_meuron_model.skops" that is used to identify noise and "sua_mua_model.skops" that is used to isolate SUA.

There are two tutorial notebooks:

  1. Model_based_curation.ipynb

    If you already have fitted models, you can use this notebook to predict on new recordings.

     from spikeinterface.curation import auto_label_units
     labels = auto_label_units(
     sorting_analyzer = sorting_analyzer,
     model_folder = “SpikeInterface/a_folder_for_a_model”,
     trusted = [‘numpy.dtype’])
    
  2. Train_new_model.ipynb

    If already have your own manually curated on other species you can use this notebook to create your own model.

     from spikeinterface.curation.train_manual_curation import train_model
    
     trainer = train_model(mode = "analyzers",
     labels = labels,
     analyzers = [labelled_analyzer, labelled_analyzer],
     output_folder = str(output_folder), 
     imputation_strategies = None, 
     scaling_techniques = None,
     classifiers = None, # Default to Random Forest only. Other classifiers you can try [ "AdaBoostClassifier","GradientBoostingClassifier",
                                                                 # "LogisticRegression","MLPClassifier","XGBoost","LightGBM", "CatBoost"]
     )