Summary

A Visual Guide to Sortering Elektro Recordings Bruke 'SpikeSorter'

Published: February 10, 2017
doi:

Summary

The article shows how to use the program SpikeSorter to detect and sort spikes in extracellular recordings made with multi-electrode arrays.

Abstract

Few stand-alone software applications are available for sorting spikes from recordings made with multi-electrode arrays. Ideally, an application should be user friendly with a graphical user interface, able to read data files in a variety of formats, and provide users with a flexible set of tools giving them the ability to detect and sort extracellular voltage waveforms from different units with some degree of reliability. Previously published spike sorting methods are now available in a software program, SpikeSorter, intended to provide electrophysiologists with a complete set of tools for sorting, starting from raw recorded data file and ending with the export of sorted spikes times. Procedures are automated to the extent this is currently possible. The article explains and illustrates the use of the program. A representative data file is opened, extracellular traces are filtered, events are detected and then clustered. A number of problems that commonly occur during sorting are illustrated, including the artefactual over-splitting of units due to the tendency of some units to fire spikes in pairs where the second spike is significantly smaller than the first, and over-splitting caused by slow variation in spike height over time encountered in some units. The accuracy of SpikeSorter’s performance has been tested with surrogate ground truth data and found to be comparable to that of other algorithms in current development.

Introduction

Alle som registrerer ekstracellulære signaler fra hjernen ved hjelp av metoder mer sofistikerte enn enkel online-terskling og vindus står overfor oppgaven med å identifisere og skille signalene fra ulike nerveceller fra støyende spenningssignaler registrert av elektroden. Denne oppgaven er vanligvis kjent som pigg sortering. Vanskeligheten med pigg sortering er forsterket av ulike faktorer. Nerveceller kan være svært tett sammen slik at signalene registrert fra dem ved en nærliggende elektrode er sannsynlig å være lik og vanskelig å skille. De signaler som produseres av en enkelt neuron kan variere over tid, kanskje på grunn av bevegelser av elektroden, variable natriumkanalkinetikk i løpet av perioder med høy skuddtakt, varierende grader av aktivering av spennings conductances i dendritter som er nær elektroden, eller muligens så et resultat av endringer i hjernens tilstand. Disse problemene kan reduseres ved hjelp av multi-elektrode matriser (måle) med mange tett linjeavstand (20-100 mikrometer) r ecording kanaler som tillater bedre romlig definisjon av signalene fra enkeltnerveceller siden de er vanligvis spredt over flere kanaler 1, 2. Men dette, kombinert med det faktum at signaler fra nerveceller fordelt langs hele lengden av elektroden overlapper hverandre i rommet, resulterer i en potensielt meget høy dimensjonsområder innen hvilke grupper svarende til spesielle nerveceller må bli identifisert. Dette problemet blir beregningsmessig vanskelige for mer enn et lite antall elektrode kanaler. Til dags dato er det ingen regel avtalt beste metoden for pigg sortering, selv om mange løsninger er foreslått 3, 4, 5, 6, 7, 8 og opptak fra MEAs blir stadig vanligere 9,ass = "xref"> 10. Fordi spike sortering er ikke et mål i seg selv, men er rett og slett et nødvendig innledende skritt før videre analyse av data, er det behov for en lett anvendelig pakke som vil lese i RAW-opptak datafiler og konvertere dem til sorterte pigg tog med så lite bruker innspill, og som raskt og pålitelig som mulig.

Dette papir gir en veiledning for bruk av SpikeSorter – et program som er utviklet med sikte på å møte disse behovene. Programmet er basert på algoritmer som er beskrevet i tidligere publiserte artikler 11, 12, 13. Målene i utformingen av programmet var at a) den bør ha et brukervennlig grensesnitt som krever lite eller ingen forkunnskaper i programmering eller pigg sortering metodikk; b) få eller ingen andre spesialiserte programvarekomponenter utover standard Windows eller Linux operativsystemer bør være nødvendig; c </em>) Et bredt spekter av opptaksdataformater for data import og eksport bør støttes; d) behovet for brukerundersøkelser i løpet av sortering bør minimaliseres, og e) sortering ganger bør skalere på en fornuftig måte, ideelt sett lineært, med opptak varighet og antall kanaler på elektroden. Algoritmene implementert i programmet inkluderer a) et fleksibelt sett av pre-prosessering og event gjenkjenning strategier; b) en automatisert splitt og hersk strategi for dimensjon reduksjon som klynger spenningsbølgeformer basert på de viktigste komponentene (PC) distribusjoner hentet fra undergrupper av kanaler tilordnet bestemte klynger; c) automatisert gruppering av PC-fordelinger med en rask clustering prosedyre basert på den midlere forskyvnings algoritme 3, 14, og d) delvis automatisert parvis sammensmelting og splitting av klynger for å sikre at hver enkelt er så forskjellig som mulig fra alle andre. i this, har et sett av prosedyrer er lagt som tillater manuell splitting eller sammenslåing av klynger basert på inspeksjon av PC fordelinger, kryss og auto-correlograms av pigg tog og tids amplitude plott av pigg bølgeformer. Opptak fra tetrodes, tetrode arrays, Utah matriser samt single og multi-tange MEAs kan leses og sortert. Den nåværende grense på antall kanaler er 256, men dette kan økes i fremtiden.

Enda et kryss-plattform open-source implementering, "Spyke" (http://spyke.github.io), er også tilgjengelig. Skrevet av en av oss (MS) i Python og Cython bruker Spyke samme generelle tilnærming som SpikeSorter, med noen forskjeller: å redusere minne krav, er rådata lagt i små blokker, og bare når det er absolutt nødvendig, klynger er utelukkende vises, manipuleres, og sortert i 3D; og hovedkomponent og uavhengig komponentanalyse er begge brukes som utfyllende dimensjon reduksjon metoder. Spyke krever mer brukervennlig isamhandlingen, men er sterkt avhengig av tastatur og mus snarveier og en angre / gjenta kø for å raskt undersøke effekten av ulike faktorer på gruppering av enhver undergruppe av toppene. Disse faktorene omfatter pigg kanal og tid områdevalg, pigg justering, clustering dimensjoner og romlig båndbredde (sigma) 11.

Følgende er en kort beskrivelse av algoritmer og strategier som brukes for sortering. Mer fullstendige beskrivelser kan finnes i tidligere publikasjoner 11, 12, 13 og i kommentarer som kan nås via hjelpeknapper (identifisert med et "?") Innen SpikeSorter. Etter lasting av en rå ekstracellulære spenning fil og filtrere ut de lavere frekvenskomponenter, en innledende fase av hendelsen gjenkjenning resultater i et sett av hendelser, som hver består av en kort spenning øyeblikksbilde før og etter hendelsen tid. Hvis de utvalgtered områdene er tilstrekkelig tett linjeavstand (<100 mm), én enhet signaler vil vanligvis vises på flere nabokanaler. En sentral kanal er automatisk velges for hver hendelse, som svarer til den kanal på hvilken topp-til-topp spenning av hendelsen er størst. Automatisert sortering starter ved å danne en enkelt innledende klynge for hver elektrode kanal, som består av alle de hendelsene som ble lokalisert til den kanalen. En enhet lokalisert midtveis mellom kanalene kan gi opphav til pigger som er lokalisert (kanskje tilfeldig) til forskjellige kanaler: klyngene fra disse to settene med pigger vil bli identifisert som lignende og slått sammen på et senere tidspunkt. Den gjennomsnittlige bølgeform av hendelsene i hvert innledende klynge blir deretter beregnet. Dette er referert til som den klyngen templat. Datter kanaler tilordnes hver klynge basert på amplitudene og standardavvik av malen bølgeformer på hver kanal. Hovedkomponentverdier blir så beregnet for hver klynge basert on kurvene på den tildelte kanalsettet. Brukeren kan velge antall hovedkomponentdimensjoner å bruke: vanligvis 2 er tilstrekkelig. Hver klynge blir deretter delt inn i et ytterligere sett av klynger, og dette gjentas inntil ingen kan være ytterligere splittet ved automatisert gruppering.

På dette punktet, et første sett av si 64 klynger fra en 64-kanals elektrode, kan deles opp i to eller tre ganger så mange, avhengig av hvor mange enheter som var til stede i opptaket. Men på grunn av den variable tildeling av hendelser fra enkle enheter til forskjellige kanaler, er antall klynger funnet på dette stadiet nesten helt sikkert større enn den burde være. Den neste fasen av sortering er å korrigere oversplitting ved å sammenligne par av klynger og sammenslåing lignende par eller gjenanvise hendelser fra en til en annen. Denne fasen av sorteringen blir referert til som "slå sammen og dele '.

Sammenslåing og Splitting

For N klynger, er N * (N-1) / 2 par og følgelig antall par vokser som N2, noe som er uønsket. Imidlertid kan mange par utelukkes fra sammenligning fordi de to elementene i paret er fysisk langt fra hverandre. Dette reduserer avhengigheten til noe som er mer lineært relatert til det antall kanaler. På tross av denne snarveien, kan flettingen og delt scene fortsatt være ganske tidkrevende. Det fungerer på følgende måte. Hver klynge par som skal sammenlignes (de som er fysisk nær hverandre, som bedømt ved overlappingen i kanalsett er tilordnet hver) blir midlertidig slås sammen, men å holde identiteten til piggene i de to medlems klynger kjent. Hovedkomponentene i den sammenslåtte paret blir deretter beregnet. Et mål på overlapping mellom punktene i de to klyngene er beregnet basert på fordelingen av de to første hovedkomponenter.

Måten ov erlap mål beregnes er beskrevet i nærmere detalj et annet sted 11. Dens verdi er null hvis klyngene ikke overlapper hverandre i det hele tatt, dvs. at den nærmeste nabo til hvert punkt er i det samme område. Dens verdi er nær en hvis klyngene overlapper hverandre fullstendig, dvs. sannsynligheten for nærmeste nabo å være i det samme område er den samme som den som forutsies fra en ensartet blanding av punkter.

Ulike beslutninger fattes som tar overlapp tiltaket i betraktning. Ved overlappingen er større enn en viss verdi, kan klynger bli slått sammen. Ved overlappingen er meget liten, kan det hende at klynge paret defineres som distinkte og igjen alene. Mellomliggende verdier, noe som indikerer ufullstendig separasjon av klyngen pair, kan tyde på at paret bør slås sammen og deretter re-split, det ønskede resultatet er et par av klynger med mindre overlapping. Disse prosedyrene er drevet først i en automatisert trinn og deretter i en manuelt styrt fase.

telt "> I automatisert scenen, er klase par med en høy overlapping verdi fusjonert,. deretter klase parene med middels til lav overlappingsverdier er slått sammen og re-split I den andre, brukerstyrt scenen, blir brukeren presentert med alle resterende tvetydige klase par (dvs. de med overlapp verdier i et definert mellomdistanse) i rekkefølge og blir bedt om å velge om a) å fusjonere de to, b) slå sammen og resplit paret, c) å erklære paret å være tydelig (som vil overstyre betydningen av overlapp mål), eller d) for å definere forholdet mellom paret som "tvetydig" indikerer at piggene i paret er usannsynlig å være godt sortert. Ulike verktøy er gitt for å hjelpe med disse beslutningene, inkludert automatisk – og kryss correlograms og tidsserie plott av spike høyde og PC-verdier.

Ideelt på slutten av sammenslåing og splitting etapper, bør hver klynge være forskjellig fra alle andre,enten fordi den har få eller ingen kanaler til felles med andre klynger, eller fordi overlapp indeksen er mindre enn en definert verdi. Denne verdien er valgbar, men er vanligvis 0,1. Klynger (enheter) som passerer denne testen, er definert som "stabil", de som ikke gjør det (fordi den overlapper med en eller flere andre klynger er større enn terskelen) er definert som "ustabil". I praksis er det store flertall av enheter ender opp med å bli definert som "stabil" på slutten av sortering, slik at resten til enten kastes eller behandles som potensielt multi-enhet.

Krav til programvare

SpikeSorter er kompatibel med 64-biters versjoner av Windows 7 og Windows 10, og har også blitt kjøres under Linux ved hjelp av Wine emulator. Datafiler er lastet helt inn i minnet (for hastighet) dermed tilgjengelig RAM trenger å skalere med størrelsen på opptaket (tillate omtrent 2 GB for selve programmet). elektrofysiologiskeal datafiler som er større enn 130 GB i størrelse har blitt sortert i både Windows og Linux-miljøer. Alternativer er tilgjengelige via standard Windows-menyer, en verktøylinje og dialoger. Utformingen av elementene på menyen matcher omtrent den rekkefølgen av operasjoner i sortering, som begynner med "Fil" menyen til venstre for data input og "eksport" menyen til høyre åpner for eksport av sorterte data. Disse knappene gir deg snarveier til ofte brukte menyelementer.

The Channel konfigurasjonsfil

Mange opptak dataformater lagrer ikke kanal steder. Men vet disse er avgjørende for pigg sortering. Kanaler kan også være nummerert på ulike måter etter oppkjøpet programvare: SpikeSorter krever at kanalene er nummerert i rekkefølge, begynner med kanal 1. Dermed en hjelpeelektrode konfigurasjonsfilen må være opprettet som kan tilordne kanalnummer å følge sekvensielle regelen, og til butikken kanal locsjoner. Kanalen konfigurasjonsfilen er en tekstfil med en enkelt rad med tekst for hver kanal. Den første linjen i filen lagrer et tekst navn, opp til 16 tegn, som identifiserer elektroden. Tallene i etterfølgende linjer kan separeres ved tappene, en enkelt komma, eller mellomrom. Det er fire tallene i hver rad, ved å gi (i rekkefølge): kanalnummeret i filen, kanalnummer som det er å bli kartlagt (dvs. antall som vil bli brukt av SpikeSorter), og x og y koordinatene til kanal, i mikrometer. X-koordinaten normalt ville bli tatt som vinkelrett på retningen av elektroden innsetting og y-koordinaten følgelig ville være dybde inn i vevet. Konfigurasjonsfilen må plasseres i samme katalog som opptaksfilen. Det er en viss fleksibilitet i hvordan det kan bli navngitt. Programmet vil først søke etter en fil som har samme navn som den rå datafil, men med en .cfg forlengelse. Hvis den filen jegs ble ikke funnet, vil den søke etter filen 'electrode.cfg'. Hvis denne filen på sin side ikke er funnet en feilmelding genereres for å indikere en mangel på kanal layout informasjon.

Protocol

1. Program Setup Gå til http://www.swindale.ecc.ubc.ca/SpikeSorter å laste ned programmet. Kopier leveres kjørbare filen til katalogen du ønsker. Les den medfølgende dokumentasjonen. MERK: Ingen formell installasjon eller samling kreves. Før du åpner en fil som skal sorteres, sikre at det er nok ledig RAM til å inneholde hele varigheten av opptaket. Pass også på at en gyldig kanal konfigurasjonsfil, som beskrevet i dokumentasjonen, er til stede i samme katalog som datafilen. <l…

Representative Results

Figur 7 viser displayet (erholdt ved å gå til "Vis – Sorter bølgeformer ') for en typisk sortert opptak. Alternativet standardvisningen er bare for å vise kurvene på senterkanalen for hver klynge. En felles erfaring er at bølgeformer for en klynge par på samme kanal ser identiske ut, men når 'Sammenlign parene' dialogen brukes for å undersøke de to klyngene er det tydelige klynger i PC-projeksjon, oftest som følge av kurve forskjeller på tils…

Discussion

filformater

Foreløpig støttes filformater inkluderer Neuralynx (.ntt og .ncs), Plexon (.plx), Neuroscope (XML + DAT), flerkanalsystemer (.mcd), Blackrock (.nev) og Intan (.rhd). For formater som ikke støttes, er det to alternativer. Det ene er å be om tillegg av filformatet til en kommende versjon (en e-post linken til utvikleren er gitt i "Hjelp – Om 'dialog). Den andre er å konvertere filen til et format som støttes. En enkel mulighet er å bruke tid-spike-format '.tsf'…

Declarações

The authors have nothing to disclose.

Acknowledgements

We thank those individuals and groups who have used SpikeSorter and who have provided requests for file format support and suggestions and feedback on how to improve it. These include Youping Xiao, Felix Fung, Artak Khachatryan, Eric Kuebler, Curtis Baker, Amol Gharat and Dongsheng Xiao. We thank Adrien Peyrache for the false positive and negative figures given in ‘Representative Results’.

Materials

spikesorter.exe N/A program file currently available through invited dropbox link

Referências

  1. Buzsáki, G. Large-scale recording of neuronal ensembles. Nat. Neurosci. 7, 446-451 (2004).
  2. Blanche, T. J., Spacek, M. A., Hetke, J. F., Swindale, N. V. Polytrodes: High Density Silicon Electrode Arrays for Large Scale Multiunit Recording. J. Neurophys. 93, 2987-3000 (2005).
  3. Lewicki, M. S. A review of methods for spike sorting: the detection and classification of neuronal action potentials. Network. 9, R53-R78 (1998).
  4. Letelier, J. C., Weber, P. P. Spike sorting based on discrete wavelet transform coefficients. J. Neurosci. Methods. 101, 93-106 (2000).
  5. Quiroga, R. Q., Nadasdy, Z., Ben-Shaul, Y. Unsupervised spike detection and sorting with wavelets and superparamagnetic clustering. Neural Computation. 16, 1661-1687 (2004).
  6. Franke, F., Natora, M., Boucsein, C., Munk, M., Obermayer, K. An online spike detection and spike classification algorithm capable of instantaneous resolution of overlapping spikes. J. Comput. Neurosci. 29, 127-148 (2010).
  7. Jäckel, D., Frey, U., Fiscella, M., Franke, F., Hierlemann, A. Applicability of independent component analysis on high-density microelectrode array recordings. J. Neurophysiol. 108, 334-348 (2012).
  8. Rossant, C., et al. Spike sorting for large, dense electrode arrays. Nature Neuroscience. 19, 634-641 (2016).
  9. Vandecasteele, M., et al. Large-scale recording of neurons by movable silicon probes in behaving rodents. JoVE. (61), e3568 (2012).
  10. Schjetnan, A. G. P., Luczak, A. Recording large-scale neuronal ensembles with silicon probes in the anesthetized rat. JoVE. (56), e3282 (2011).
  11. Swindale, N. V., Spacek, M. A. Spike sorting for polytrodes: a divide and conquer approach. Frontiers in Systems Neuroscience. 8, 1-21 (2014).
  12. Swindale, N. V., Spacek, M. A. Spike detection methods for polytrodes and high density microelectrode arrays. J. Comput. Neurosci. 38, 249-261 (2015).
  13. Swindale, N. V., Spacek, M. A. Verification of multichannel electrode array integrity by use of cross-channel correlations. J. Neurosci. Meth. 263, 95-102 (2016).
  14. Fukunaga, K., Hostetler, L. D. The estimation of the gradient of a density function, with applications in pattern recognition. IEEE Transactions on Information Theory (IEEE). 21, 32-40 (1975).
  15. Mitelut, C., et al. Standardizing spike sorting: an in vitro, in silico and in vivo study to develop quantitative metrics for sorting extracellularly recorded spiking activity. Soc. Neurosci. Abstr. 598 (10), (2015).
  16. Hazan, L., Zugaro, M., Buzsáki, G. Klusters, NeuroScope, NDManager: A free software suite for neurophysiological data processing and visualization. J. Neurosci. Meth. 155, 207-216 (2006).
  17. Harris, K. D., Henze, D. A., Csicsvari, J., Hirase, H., Buzsáki, G. Accuracy of tetrode spike separation as determined by simultaneous intracellular and extracellular measurements. J. Neurophysiol. 84, 401-414 (2000).
  18. Anastassiou, C. A., Perin, R., Buzsáki, G., Markram, H., Koch, C. Cell-type and activity dependent extracellular correlates of intracellular spiking. J. Neurophysiol. 114, 608-623 (2015).
  19. Wohrer, A., Humphries, M. D., Machens, C. K. Population-wide distributions of neural activity during perceptual decision-making. Prog. Neurobiol. 103, 156-193 (2013).
  20. Mizuseki, K., Buzsáki, G. Preconfigured, skewed distribution of firing rates in the hippocampus and entorhinal cortex. Cell Reports. 4, 1010-1021 (2013).
  21. Schmitzer-Torbert, N., Jackson, J., Henze, D., Harris, K., Redish, A. D. Quantitative measures of cluster quality for use in extracellular recordings. Neurociência. 131, 1-11 (2005).
  22. Barnett, A. H., Magland, J. F., Greengard, L. F. Validation of neural spike sorting algorithms without ground-truth information. J. Neurosci. Meth. 264, 65-77 (2016).

Play Video

Citar este artigo
Swindale, N. V., Mitelut, C., Murphy, T. H., Spacek, M. A. A Visual Guide to Sorting Electrophysiological Recordings Using ‘SpikeSorter’. J. Vis. Exp. (120), e55217, doi:10.3791/55217 (2017).

View Video