Наука за невронните данни: как и защо

Грубото ръководство за правене на научни данни за невроните

Мозък, който прави наука за данни. Кредит: Мозък от Мат Уасър от проекта за съществителни

Тихо, крадешком се оформя нов тип невролози. От безбройните редици теоретици са се издигнали екипи от невролози, които правят наука с данни за нервната активност, за оскъдното разпръскване на стотици неврони. Не е създаването на методи за анализ на данни, въпреки че всички също правят това. Не събирането на тези данни, защото това изисква друг, страхотен набор от умения. Но невролозите използват пълната гама от съвременни изчислителни техники на тези данни, за да отговорят на научните въпроси за мозъка. Появи се наука за невронните данни.

Оказва се, че съм един от тях, този клан от учени по неврални данни. Случайно. Доколкото мога да разбера, така се раждат всички научни области: случайно. Изследователите следват носовете си, започват да правят нови неща и изведнъж откриват, че има малка тълпа от тях в кухнята на партита (защото там са напитките, в хладилника - учените са умни). И така, ето един малък манифест за науката за невралните данни: защо се появява и как бихме могли да започнем да го правим.

Причината е същата като всички области на науката, които са изплюли наука за данни: количеството данни излиза от употреба. За науката за записването на много неврони, този поток от данни има научно обосновка. Мозъците работят чрез предаване на съобщения между невроните. Повечето от тези съобщения са под формата на малки импулси на електричество: шипове, ние ги наричаме. За мнозина изглежда логично, че ако искаме да разберем как работят мозъците (и кога те не работят), трябва да уловим всички съобщения, които се предават между всички неврони. А това означава да запишете колкото се може повече шипове от възможно най-много неврони.

Мозъкът на бебешки зебрафини има около 130 000 неврона и най-малко 1 милион връзки между тях; мозък на пчела има около един милион неврони. Можете да видите как това би излязло от употреба много бързо. В момента записваме някъде между десетки до няколкостотин неврона едновременно със стандартен комплект. В границите са хората, които записват няколко хиляди и дори няколко, получаващи десетки хиляди (макар че тези записи улавят активността на невроните със скорости много по-бавни, отколкото невроните могат да изпращат своите шипове).

Ние наричаме тази система на лудостта невронауката: невронауката, за изследване на невроните; системи, за да смеете да записвате от повече от един неврон наведнъж. И данните са сложно огъващи ума. Това, което имаме, са десетки до хиляди едновременно записани времеви серии, всеки поток от шипкови събития (действителни шипове или някаква непряка мярка от тях) от един неврон. По дефиниция те не са неподвижни, статистиката им се променя с течение на времето. Тяхната активност се разпростираше в много порядки, от тихо съзерцание, подобно на монаха, до „комплект барабани във вятърен тунел“. И моделите им на дейност варират от редовност на часовника, до заекване и разпръскване, до редуване между пристъпи на мания и пристъпи на изтощение.

Сега се оженете за това поведението на животното, от което сте записали невроните. Това поведение е стотици изпитания на избор; или движения на ръката; или маршрути, предприети през среда. Или движението на сетивен орган, или цялата стойка на мускулатурата. Повторете за няколко животни. Вероятно множество мозъчни региони. И понякога цели мозъци.

Нямаме основна истина. Няма правилен отговор; няма данни за етикети за обучение, освен поведението. Не знаем как мозъците кодират поведението. Така че можем да правим неща с поведенчески етикети, но почти винаги знаем, че това не е отговорът. Те са само улики в „отговора“.

Системната невронаука е след това богата площадка за онези, които могат да се оженят за познанията си по невронаука с тяхното ноу-хау за анализ на данни. Ражда се наука за невронните данни.

Как се прави или може да бъде направено? Ето грубо ръководство. Причината за неврологичните данни е да задава научни въпроси на данни от системната невронаука; да попитам: как всички тези неврони работят заедно, за да свършат своята работа?

Има приблизително три начина да отговорим на този въпрос. Можем да видим тези три начина, като разгледаме съответствието между установените класове проблеми в машинното обучение и изчислителните предизвикателства в системната невронаука. Нека започнем, като разгледаме с какво трябва да работим.

Имаме някои данни от n неврони, които сме събрали във времето. Ще ги съберем в матрица, която ще наречем X - толкова колони, колкото неврони, и толкова редове, колкото времеви точки, които сме записали (където зависи от колко време трае „времевата точка“: може да направете го кратко и просто трябва всеки запис да запише 1 за шип и 0 в противен случай. Или може да го направим дълъг и всеки запис записва броя на шиповете през изминалото време). През това време в света се случват неща - включително това, което тялото прави. Така че нека да съберем всичко това в матрица, която ще наречем S - толкова колони, колкото има функции в света, който ни интересува, и толкова редове, колкото времеви точки сме записали за тези функции.

По традиция машинното обучение включва изграждането на три класа модели за състоянието на света и наличните данни: генеративни, дискриминационни и плътност. Като грубо ръководство тази таблица показва как всеки клас отговаря на основен въпрос в системната невронаука:

1 / Модели на плътност P (X): има ли структура в шиповете? Звучи скучно. Но всъщност това е от ключово значение за големи изследвания на невронаучните изследвания, в които искаме да знаем ефекта на нещо (лекарство, поведение, сън) върху мозъка; в което се питаме: как се е променила структурата на невралната активност?

Със запис на куп неврони можем да отговорим на това по три начина.

Първо, можем да определим количествено шиповия влак на всеки неврон, чрез измерване на статистиката на всяка колона от X, като скоростта на шиповете. И тогава попитайте: какъв е моделът P (X) за тези статистически данни? Можем да групираме тези статистически данни, за да намерим „видове” неврони; или просто да приспособите модели към цялостното им съвместно разпространение. Така или иначе, ние имаме някакъв модел на структурата на данните при гранулирането на единичните неврони.

Второ, можем да създадем генеративни модели на активността на цялото население, използвайки редовете X - векторите на активността на момента към момента на цялото население. Такива модели обикновено имат за цел да разберат каква част от структурата на X може да бъде пресъздадена само от няколко ограничения, независимо дали те са разпределението на колко вектори имат колко шипове; или двойните корелации между невроните; или комбинации от тях. Те са особено полезни за разработване, ако има някакъв специален сос в дейността на населението, ако това е нещо повече от колективната дейност на набор от независими или скучно прости неврони.

Трето, можем да вземем позицията, че невронната активност в X е някаква високомерна реализация на нискомерно пространство, където броят на размерите D << n. Обикновено имаме предвид под това: някои неврони в X са свързани, така че не е необходимо да използваме целия X, за да разберем популацията - вместо това можем да ги заменим с много по-просто представяне. Можем да групираме директно времевата серия, така че декомпозирането на X в набор от N по-малки матрици X_1 до X_N, всяка от които има (относително) силни корелации в него и така може да се третира независимо. Или бихме могли да използваме някакъв подход за намаляване на измерението като анализ на основните компоненти, за да получим малък набор от времеви серии, всеки от които описва една доминираща форма на промяна в активността на населението във времето.

Ние можем да направим повече от това. Горното предполага, че искаме да използваме намаляване на размерите за свиване на невроните - че прилагаме редукция към колоните на X. Но бихме могли също толкова лесно да свием времето, като приложим намаляване на размерите към редовете на X. Вместо да питаме дали нервната активност е излишна , това е въпросът дали различните моменти във времето имат сходни модели на неврална активност. Ако има само шепа от тях, очевидно динамиката на записаните неврони е много проста.

Тук можем да включим и подходите на динамичните системи. Тук се опитваме да приспособим прости модели към промените в X с течение на времето (т.е. картографиране от един ред в следващия) и използваме тези модели за количествено определяне на типовете динамика, която X съдържа - използвайки термини като „аттрактор“, „сепатрикс“, „ седловиден възел “,„ бифуркация на вилата “и„ сривът на Арсенал “(само едно от тях не е истинско нещо). Човек би могъл да спори с така приспособените динамични модели всички модели на плътност P (X), тъй като те описват структурата на данните.

По дяволите, дори бихме могли да опитаме да поставим цял динамичен модел на невронна верига, куп диференциални уравнения, описващи всеки неврон, до X, така че нашият модел P (X) след това да бъде изваден всеки път, когато стартираме модела от различни начални условия ,

С тези модели на плътност можем да ги приспособим отделно към нервната активност, която регистрирахме в куп различни състояния (S1, S2, ..., Sm) и да отговорим на въпроси като: как се променя структурата на популация от неврони между спящи и събуждане? Или по време на развитието на животното? Или в процеса на усвояване на задача (където S1 може да бъде пробен 1 и S2 пробен 2; или S1 е сесия 1 и S2 сесия 2; или много комбинации от тях). Можем също да попитаме: в колко измерения се обхваща активността на невроните? Различни ли са размерите между различните области на кората? А някой виждал ли е моите ключове?

2 / Генеративни модели P (X | S): какво причинява шип? Сега говорим. Неща като линейни нелинейни модели или обобщени линейни модели. Обикновено тези модели се прилагат към единични неврони, към всяка колона от X. С тях ние монтираме модел, който използва състоянието на света S като вход и изплюва серия от невронни активности, която съответства максимално на активността на неврона. След това инспектирайки претеглянето, дадено на всяка характеристика на S при възпроизвеждането на активността на неврона, можем да разберем какво изглежда този неврон дава проклятие.

Може би бихме искали да изберем модел, който има известна гъвкавост в това, което се счита за „състоянието на света“. Можем да включим собствената минала дейност на неврона като функция и да видим дали се интересува от това, което е правил в миналото. За някои видове неврони отговорът е „да“. Спукването може да отнеме много от неврона и трябва да си легне за почивка в уикенд, преди да може да премине отново. Можем също да мислим по-широко и да включим останалата част от населението - останалата част от X - като част от състоянието на света S, докато невронът стреля. В края на краищата, невроните повлияват от време на стрелба един на друг, или поне така ме кара да вярвам. Така че има малък шанс реакцията на неврон във визуалната кора да не се движи само от ориентацията на ръба във външния свят, но може да зависи и от това, което правят и 10000 кортикалните неврони, които се свързват с него. Това, което след това научаваме, са приблизително най-влиятелните неврони в популацията.

Не е нужно да прилагаме тези генеративни модели към единични неврони. Можем да ги прилагаме еднакво към нашите модели на плътност; можем да попитаме какво клъстер или измерение кодира за света. Или, както някои хора направиха тук, ние можем да използваме самия модел на плътност като състояние на света и да попитаме какви характеристики на този модел надолу по течението на невроните са по дяволите.

Видовете въпроси, на които можем да отговорим с тези генеративни модели, са доста очевидни: каква комбинация от характеристики най-добре предсказва отговора на неврона? Има ли неврони селективни само за едно нещо? Как невроните влияят един на друг?

3 / Дискриминационни модели P (S | X): каква информация носят шиповете? Това е основен въпрос в системната невронаука, тъй като това е предизвикателството, пред което са изправени всички неврони, които са надолу по веригата от регистрираната ни популация - всички неврони, които получават вход от невроните, от които сме записали и пълнени в нашата матрица X. За тези неврони надолу по веригата трябва да се направи заключение за това, което те трябва да знаят за външния свят, основан единствено на шипове.

Тук можем да използваме стандартни класификатори, които картографират входове върху етикетирани изходи. Можем да използваме редовете от X като вход, всяка моментна снимка на активността на населението и да се опитаме да предскажем една, някои или всички характеристики в съответните редове на S. Възможно с известно закъснение, така че използваме ред X_t за прогнозираме състоянието S_t-n, което е било n стъпки в миналото, ако се интересуваме от това как кодовете на популациите състояния, които се въвеждат в мозъка; или можем да използваме ред X_t, за да прогнозираме състоянието S_t + n, което е n стъпки в бъдеще, ако се интересуваме как популациите кодират някакъв ефект на мозъка върху света. Подобно на активността в моторния кортекс, която се случва преди да напиша всяка буква в момента.

Така или иначе, вземаме някои (но не всички, тъй като не превишаваме) редове от X и обучаваме класификатора, за да намерим възможно най-доброто картографиране на X към съответния дял от S. След това тестваме класификатора за това колко добре може предскажете останалата част от S от съответната останала част от X. Ако имате изключителен късмет, вашите X и S могат да бъдат толкова дълги, че да можете да ги разделите на групи за тренировки, тестове и валидиране. Дръжте последното в заключена кутия.

Разбира се, можем да използваме толкова мощен класификатор, колкото ни харесва. От логистична регресия, през байесовски подход, до използване на 23-слойна невронна мрежа. По-скоро зависи от това, което искате да получите от отговора, и компромис между интерпретативност и власт, с които сте удобни. В моите писания другаде стана ясно коя страна на този компромис съм склонна да предпочитам. Но съм щастлив, че се оказа грешен.

Моделите за кодиране на невроните са проницателни, но се докосват до някои стари и дълбоки философски трудности. Тестване на кодирането с помощта на дискриминационен модел предполага, че нещо надолу по веригата се опитва да декодира S от невронна активност. Има два проблема с това. Невроните не декодират; невроните приемат шипове като вход и извеждат свои собствени шипове. По-скоро те прекодират, от един набор от шипове в друг набор от шипове: може би по-малко или по-бавно; може би повече или по-бързо; може би от постоянен поток в трептене. Така че по-точно дискриминационните модели питат каква информация нашите неврони прекодират. Но дори и да вземем това мнение, има по-дълбок проблем.

С много малки изключения няма такова нещо като „неврон“ надолу по веригата. Невроните, които записахме в X, са част от сложно жичния мозък, пълен с безкрайни бримки; продукцията им влияе върху собствения им принос. По-лошото е, че някои от невроните в X са по-надолу от другите: някои от тях внасят директно към другите. Защото, както бе отбелязано по-горе, невроните влияят един на друг.

Груб, може би полезен манифест за наука за невралните данни. Тя е непълна; без съмнение нещо по-горе не е наред (отговаря на пощенска картичка до обичайния адрес). Горното е опит да се синтезира работата на група лаборатории с много различни интереси, но общ стремеж да се използват тези модели на големи набори от невронни данни, за да се отговори на дълбоки въпроси за това как работят мозъците. Много от тях са лаборатории за данни, екипи, които анализират експериментални данни, за да отговорят на собствените си въпроси; да назовем няколко - възглавница Джонатан; Кристиан Маченс; Конрад Кординг; Канака Раджан; Джон Кънингам; Адриен Феърхол; Филип Беренс; Cian O'Donnell; Парк Il Memming; Якоб Макке; Гаспер Ткацик; Оливър Мар. Хм, аз. Други са експериментални лаборатории със силни наклонности към данни: Anne Churchland; Марк Чърчланд; Никол Руст; Кришна Шеной; Карлос Броуди; много други се извинявам, че не назовах.

Има конференции, на които този вид работа е добре дошла, дори се насърчава. Списание за наука за невралните данни е на път. Нещо се строи. Хайде, данните са прекрасни *.

* да, трябваше да се позова на данните като единствено число, за да успея тази глупост да свърши работа. Фактът, в който пиша тази бележка под линия, за да обясня това, ще ви даде някаква представа за по-внимателното внимание към детайлите на неврологичните данни, които учените очакват.

Искам още? Следвайте ни в The Spike

Twitter: @markdhumphries