Pull to refresh

Comments 20

Самый интересный вопрос — передается ли по наследству «предустановленная» нейронная сеть или каждая муха начинает обучение с нуля.

В первом случае: как передается информация о структуре (и это не гены)?

Гены задают топологию мозга - грубое пространственное расположение отделов, первичную концентрацию нейронов в этих отделах. Все остальное, а именно конкретное соединение конкретных нейронов с помощью синапсов, осуществляется уже частично случайно, частично под влиянием восприятия (опыта)

В посте, кстати, автор об этом же говорит

Тогда как муха генетически знает, какой запах — еды, а какой — самки? Она же не пытается наугад спариваться с едой и есть самок, и исходя из успеха обучаться. Муха сразу это знает.

Разумеется, не пытается. Грубой топологии вполне хватает, чтобы инстинкты были «запрограммированы» исключительно при помощи «дальности-близости» мозговых отделов в пространстве (или во времени — как пример, гормональный брачный режим действует не сразу после рождения). Все остальное «доделывает» теория вероятности при иннервации.

помимо структуры мозга, тут еще играет кодирование олфактори-рецпторов (те которые специфические молекулы запахов считывают). то куда идут сигналы от каких рецепторов "из коробки" тоже играет роль.

На данный момент я работаю над развитием подобных сетей, прежде всего над задачей создания «глубоких», многослойных сетей. Подобные модели должны обучаться по принципу «снизу вверх», а не «сверху вниз» как это происходит при обратном распространении ошибки.

а можно про это тоже статью, даже если пока не получается, все очень недооценивают важность способ как это не работает. Было бы оччччень интересно почитать как именно у вас не работает.

UFO just landed and posted this here
Дрозофила однозначно определяет более 20 запахов (Есть статьи, где их учили распознавать более 70 разных запахов, например www.pnas.org/content/104/13/5614). Фактическое число разных запахов, которое может быть закодировано, скорее всего близко к тысяче (https://www.ncbi.nlm.nih.gov/pmc/articles/PMC311238/) К тому же может разными способами реагировать не только на вид запаха, но и на его интенсивность.

Кроме того, в грибовидное тело поступает еще немного визуальной информации, и еще нарушения в нем вызывают тонкие нарушения в моторной активности. Так что все сложнее, исходная посылка про 20 запахов не верна, а значит вероятно есть проблемы и с остальными рассуждениями.
Самый сложный эксперимент по оценки динамики поведенческой реакции выявил лишь четыре класса реакции(!).

Цитата из статьи из предложенной вами статьи:
dors induced responses with different temporal dynamics, which we divide into four classes (Fig. 4 A). Most odorants (55%) elicited a response similar to that of ethyl acetate (Fig. 1 C) where activity peaked in the first 30 sec after odor onset and then plateaued to a level above the pre-odor activity. For 9% of the odors, activity peaked in the first 30 sec but then returned to baseline, whereas for 27% of the odors, including carbon dioxide, activity remained near the peak throughout odor exposure. Finally, another 9% of the odors induced a constant increase in activity throughout the experiment. All four odors in this last class are aldehydes, but not all aldehydes elicited this constantly increasing activity (SI Table 1).


Я не писал что муха различает лишь 20 запахов, она выделяет из всех запахов только 4 класса (возможно немного больше), я заключил, что потенциал клеток Кеньона лишь 20 классов. В статье они применяли только 70 запахов, и максимальное число реакций 4, они могли применить и миллион запахов, но реакций больше не получится. Не вижу здесь противоречий.
потенциал клеток Кеньона лишь 20 классов
Посчитаем.

Размер хеш-пространства 2000 нейронов. Плотность SDR-кодов 5%, что равно 2000 * 0.05 = 100 нейронам на код.

Итого, количество возможных уникальных хеш-кодов равно числу сочетаний из 2000 по 100. Не могу сравнить такую огромную величину с количеством кодов входного пространства (2^50), но она всё рано явно больше заявленных 20.
Рад, что наконец присоединился к мушиному лагерю ))

Ссылки по теме:

Sparse Hash — проект хеш-нейронов мухи и модель колонки на их основе.
Sparse Hash AI — тг-канал с дополнительными статьями проекта.
Sparse Hash — тг-группа для обсуждения.

...факт: Мозг – это не нейронная сеть! Мозг – это множество нейронных сетей!!!

Не совсем верно. Мозг, действительно, состоит из нейронных "подсетей". Но так как эти "подсети" между собой связаны, то и мозг является нейронной сетью, которую можно назвать "гиперсетью". Пока понятие "нейронная гиперсеть" трактуется авторами тех или иных "концепций" по-разному. Но исходя из универсальных принципов материальной и информационной гиперобъектности, гиперобъект - это просто связанная совокупность субобъектов...

Для того, чтобы увидеть результат работы слоя в режиме выполнения, делаем следующее: во-первых, определяем уровень активности каждого нейрона в слое Кохонена по формуле описанной выше, во-вторых, определяем максимальные и минимальные значения активности в слое. Далее вычисляем для каждого нейрона значение отношения к максимальному и минимальному значениям, по формуле (факт — min)/(max — min). Тем самым минимальное значение приравнивается к 0, а максимальное к 1. Уже так мы наглядно видим, какие нейроны максимально близки к входному вектору, а какие максимально удалены. Так как полученные значения находятся в интервале от 0 до 1, мы можем сделать эту картину еще острее, контрастнее просто возведя это значение в определённую степень (у меня в примерах степень 15).

Перечитал много раз но так и не понял, что тут происходит. При конкретном входе есть один нейрон Кохонена — победитель по метрике. На потоке входов вы еще считаете активность — как часто нейрон был активен за последнее время. Как это дает "карту победителей" на конкретном входе, не понятно.

В целом, мне кажется, ваша биологическая сеть будет учиться очень медленно, особенно на большой размерности.

Хотя некоторые опорные вектора запахов должны быть «зарезервированы» на уровне ДНК

Как именно? Это каким-то образом зашито в топологию декодера?

Хотелось бы сравнить результаты данной работы с другими схожими работами, где отказываются от бэкпропа и также сравнить, что будет, если обучить стандарнтую сеть с схожим кол-вом параметров на 2к данных, а потом протестить на 10к
сравнить, что будет, если обучить стандарнтую сеть с схожим кол-вом параметров на 2к данных, а потом протестить на 10к

Решение «на коленке» за пару минут:
Model: "model"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
input (InputLayer)           [(None, 28, 28, 1)]       0         
_________________________________________________________________
flatten (Flatten)            (None, 784)               0         
_________________________________________________________________
kohonen (Dense)              (None, 1024)              803840    
_________________________________________________________________
hebb (Dense)                 (None, 10)                10250     
=================================================================
Total params: 814,090
Trainable params: 814,090
Non-trainable params: 0

Обучение на 2300 изображений с размером батча 1 одну эпоху, по пяти запускам дает среднее значение accuracy на тестовых данных ~83% (минимальное 79% максимальное — 86%)
Кстати, при уменьшении размера выхода слоя «kohonen», соответствующего карте Кохонена в исходной модели, до 256 (16 * 16), систематически получаются более высокие значения точности: ~86% (минимум 83%, максимум 88%).
Вопрос к автору статьи: чем обуславливается выбор размера карты Кохонена и проводились ли эксперимены по анализу влияния этого параметра на точность сети?

При уменьшении слоя Кохонена до 16*16 (такая версия была) уменьшается итоговое качество на 10-20%. Это связанно с тем, что нейроны этого слоя как бы специализируются на определённых эталонах начертания цифры, чем меньше таких эталонов тем меньше шансов найти подходящий при сравнении со входом. Соответственно чем больше больше размер слоя Кохонена тем выше будет итоговое качество сети, но при этом будет требоваться больше примеров для обучения.

Sign up to leave a comment.

Articles