Некоторые люди верят, что они думают, когда они просто перестраивают свои предубеждения.
Давным-давно я написал обзорную статью об эволюции методов моделирования нейронов и забросил ее.
В описание вошли старые методы, известные всем, кто интересуется нейронами; можно сказать, это оказался обзор учебников, изданных до развала СССР.
Если кому интересно, могут пойти habrahabr.ru/post/101020 , см.
старый обзор.
Сейчас я собрал материал о нескольких, с моей точки зрения, увлекательных и более современных методах моделирования, которые заслуживают упоминания в виде структурированного обзора.
Здесь я упомяну эти методы лишь в описательной форме по той простой причине, что большинству интереснее знать, почему мы их используем, а не как они работают и как их использовать.
Объем текста значительно сократится, интерес возрастет, и каждый сможет сам узнать, как на самом деле работают эти методы.
Итак, будьте готовы.
Асинхронный распределенный стохастический градиентный спуск в мини-пакете Русский язык богат и выразителен.
Но даже его было уже недостаточно.
Ужасно непонятная мешанина умных слов.
Именно этот метод описан в статье habrahabr.ru/post/146077 где он был преобразован в менее устрашающую форму.
Там это называлось асинхронным градиентным спуском (асинхронный SGD).
Я пытался разобраться и цеплялся за английское название «асинхронный SGD».
Первое, о чем стоит упомянуть, это сам метод градиентного спуска.
Это метод нахождения локального минимума или максимума функции.
Если у вас была башня, вы должны иметь смутное представление о том, о чем мы здесь говорим.
В общем, он используется как алгоритм оптимизации, а если вы работаете с нейронными сетями, то спокойно называете его алгоритмом машинного обучения.
Теперь добавим слово «стохастик».
Зачем это необходимо для нашего метода? Какая в этом польза? Этот метод использует только один пример из обучающего набора одновременно, в отличие от других методов, которые используют весь набор сразу.
Идея состоит в том, что вы можете добавить больше данных для дополнительного обучения или прекратить обучение, если вам надоело ждать и вы хотите увидеть результаты обучения по обработанной части данных.
Между этими двумя типами градиентного спуска (традиционным и стохастическим) существует компромисс, называемый «мини-пакетным».
В этом случае используются небольшие партии обучающих выборок.
Именно этот метод небольших пакетных вычислений наиболее подходит для распределения вычислений между многими компьютерами в сети.
Теперь что касается асинхронности и распределения — используется распределенная асинхронная обработка данных (Asynchronous Peer-to-Peer).
В этом случае несколько мини-пакетов обрабатываются одновременно на своих компьютерах в одноранговой сети, что позволяет продолжить обучение с любым количеством и любой комбинацией доступных узлов.
Никто не ждет, пока все компьютеры закончат последнюю серию вычислений, чтобы обновить общую модель.
В каждой партии используются потенциально разные и обычно устаревшие параметры модели.
Это главный и главный недостаток.
Преимущество в том, что все машины, участвующие в оптимизации, постоянно заняты вычислениями, и мы можем добавлять и отключать машины в процессе обучения.
Недостаток компенсируется тем, что если данные однородны, модель все равно сходится (оптимизируется, обучается).
Я не рискнул углубляться в работы, доказывающие это утверждение.
Могу лишь поделиться ссылкой, в которой довольно просто изложен принцип асинхронного метода «интеллектуального анализа данных» в одноранговой сети.
Может кому-то это нужно, это само по себе интересно.
Теперь вам не нужен суперкомпьютер, вам нужны друзья в сети.
http://www.inf.u-szeged.hu/~ormandi/presentations/europar2011.pdf Редкие распределенные представления Если искусственный интеллект существует, то должна существовать и искусственная глупость.
На иностранном языке это звучит как «Разреженные распределенные представления».
Основная суть этого метода — хлопнуть свойствами биологических нейронных сетей.
Хотя нейроны в коре головного мозга очень тесно связаны, многочисленные тормозные нейроны обеспечивают активность лишь небольшого процента всех нейронов одновременно, и они обычно находятся на достаточном расстоянии друг от друга.
То есть информация всегда представлена в мозгу лишь небольшим количеством активных нейронов из всех присутствующих там.
Этот тип кодирования информации называется «разреженным распределенным представлением».
Существует также метод разреженного автоэнкодера «Разреженный автоэнкодер», читайте здесь.
habrahabr.ru/post/134950 , но смысл тот же, просто хлопнуть свойством биологической нейронной сети.
Вернемся к нашему методу.
«Разреженность» — это требование, чтобы только небольшой процент нейронов слоя мог быть активным одновременно.
Как вы этого достигнете, не важно.
Основной принцип остается одинаковым как в кодировщике, так и в разреженных представлениях.
Главное, что размерность входных данных для следующего слоя уменьшается, происходит сжатие данных, так как сеть обязана находить в данных скрытые связи, корреляции признаков и вообще любую часто встречающуюся структуру.
«Распределённость» — это ещё и требование, что для представления чего-либо в слое нейронной сети необходима активация того самого небольшого процента нейронов, при этом нейроны разбросаны по всему слою на удалённом расстоянии друг от друга.
Плохо также переизбыток молчащих нейронов.
Достаточное количество активных нейронов в слое позволяет избежать тривиальных закономерностей при поиске тех самых скрытых связей и корреляций.
Активность одного нейрона, конечно, тоже что-то значит, вспомните «бабушкин нейрон», но интерпретировать активность следует только в контексте множества других нейронов.
Отдельное действие не будет перемещаться вверх по иерархии слоев.
Фактически активность нейронов последнего слоя будет представлять картину мира через рецептивное поле нашей нейронной сети.
В заключение могу сказать, что такое представление информации в нейронной сети приводит к образованию пресловутых «бабушкиных нейронов».
Если вы не понимаете, о чем идет речь, взгляните на картинку, это изображение соответствует максимальному стимулу для нейрона, участвующего в распознавании морды кошки из статьи.
Чистая «концепция кошачьего лица».
Или посмотреть 5 минут выступления товарища Анохина с указанного момента 49:15 .
С его слов можно утверждать, что в вашем мозгу есть нейрон, отвечающий за концепцию гражданина Саши Грей.
Местные рецептивные поля Нет ничего настолько хорошего, чтобы не было человека, который это ненавидит. Это уже правило хорошего тона при моделировании нейронных сетей.
В зависимости от используемых методов и модели нейрона можно получить различные вкусности.
Я даже не хочу их перечислять, просто поверьте мне на слово.
Локальные рецептивные поля — это все для нас.
Конечно, стоит оговориться, что наибольшая польза от этого метода получается тогда, когда входные данные однородны.
Простой пример — визуальные данные.
Нейроны первого слоя на таких данных методом разреженных представлений научатся распознавать одни и те же простые элементы контуров под разными углами, что очень хорошо вписывается в биологию мозга.
Разделение дендритов по типу Поддайтесь искушению.
В противном случае это может не повториться.
Классификация дендритов по типам — замечательное нововведение в моделировании нейронов, открывающее безграничные возможности для экспериментов.
Этот принцип становится новым направлением в нейронном моделировании как на Западе, так и у нас, хотя пути, приведшие к этому решению, разные.
На Западе этому принципу пытаются дать биологическое обоснование; теперь они утверждают, что нейроны четвертого слоя неокортекса получают синапсы от других слоев и других частей мозга на дендриты, близкие к телу клетки, и сообщаются друг с другом в слое только через отдаленные дендриты.
У нас тоже не отказываются от такой основы, но, кроме того, критикуют гипотезу суммирования возбуждений на одном нейроне.
Теперь перейдем к открывшимся возможностям моделирования.
Мы можем задать разные правила того, как нейрон реагирует на сигналы от дендритов разных типов, и установить правила перехода дендритов из одного типа в другой.
Естественно, введение разных типов влияет на работу всей нейронной сети, поэтому многие хорошие предложения правил нежизнеспособны в рамках всей нейронной сети.
Но уже существует несколько устоявшихся и хорошо зарекомендовавших себя моделей нейронов с разделением дендритов по типам.
Ниже я расскажу о новых свойствах нейронных сетей, совпадающих со свойствами человеческой памяти и которые можно получить, разделив дендриты на типы.
В каждом конкретном случае используемого метода свойство может иметь разное имя (имя всегда произвольное автора метода) и серьезно отличаться механизмом реализации, но это не отменяет схожести основного принципа.
Для начала взглянем на блок-схему модели нейрона из метода «Иерархическая временная память».
Ассоциативная память Не все является паттерном, который активирует нейрон.
Принцип состоит в том, чтобы разделить дендриты на два типа и логически соединить сигналы на их входах.
Дендриты первого типа, которые условно можно назвать дендритами «постоянной памяти», работают по вполне привычным правилам моделирования нейронов.
Никакого новшества здесь нет, можно использовать любые известные вам старые правила, придуманные для нейронных сетей без разделения входов на типы, например что-то похожее на правило «Если на нужный набор входов поступает сигнал, нейрон активируется» ».
Чтобы такое правило сработало, нейрон должен распознать паттерн, и для удобства мы назовем это «срабатыванием постоянной памяти».
Дендриты второго типа, которые условно можно назвать дендритами «ассоциативной памяти», работают по новым, но интуитивным правилам.
Вот в этом, так сказать, и заключаются инновации в моделировании.
Основной принцип таких правил можно выразить следующими словами: «Входы ассоциативного дендрита могут вызвать активацию нейрона, если не сработала постоянная память.
Ассоциативность входа увеличивается, если он активен при срабатывании постоянной памяти».
Если кто не понял, то у нас на одном нейроне отрабатывается условный рефлекс нашего товарища академика Павлова.
При этом собаки не страдают. Не думайте, что принцип слишком прост; в зависимости от реализации вы столкнетесь со сложностью правил и множеством особенностей моделирования.
Например, ассоциативность может повышаться как от активности нейрона в целом (она уже может запускаться постоянной памятью и от ассоциативной памяти), так и от распознавания образов постоянной памятью.
Ассоциативность может уменьшаться с каждым триггером, а может сохраняться и уменьшаться в зависимости от времени.
Дендриты могут переходить из одного типа в другой, а также могут расти за счет добавления новых связей.
Могут существовать правила, налагающие пространственные ограничения.
Например, дендриты «постоянной памяти» могут общаться только с нейронами предыдущего слоя, а дендриты «ассоциативной памяти» — только с нейронами своего слоя или слоя выше по иерархии.
Осознание новой ситуации Извини, я говорю, когда ты перебиваешь.
Механизм распознавания нового можно добавить только в нейронные сети, разделяющие дендриты на типы.
Принцип механизма можно выразить следующими словами: «Нейронная сеть сталкивается с новой ситуацией, если нейрон или группа нейронов проявляет повышенную активность».
Смысл этого принципа не очевиден, так как правила срабатывания слишком сильно различаются от реализации к реализации, а общим их является лишь повышение активности нейрона после распознавания нового.
Пока нейрон проявляет повышенную активность, внутри сети выполняются правила, основная задача которых — устранить эту повышенную активность.
Начнем с преимуществ, которые новый механизм распознавания дает нейронной сети в целом.
Нейронная сеть может реализовать известный «ориентировочный рефлекс», описанный товарищем академиком Павловым.
С некоторых пор нейрофизиологи стали говорить о детекторах нового в нейронных сетях мозга, которые являются рецепторами ориентировочного рефлекса, проявляющегося при появлении существенного нового в восприятии.
Но в отличие от обычных рецепторов (сенсоров), рецепторы конкретной новой ситуации в принципе не могут быть реализованы как сенсоры определенной совокупности признаков.
Просто потому, что они одноразовые, новая ситуация не повторяется, поскольку уже встречалась и запоминалась.
И при таком механизме распознавания нового каждый нейрон сети становится детектором нового.
Это инновация.
Кроме того, узнавание чего-то нового – прекрасный повод для установления новых ассоциативных связей, то есть роста дендритов «ассоциативной памяти».
Кроме того, «контекстную память» можно реализовать либо путем добавления нового типа дендритов, либо просто путем введения правил обработки для нейронной сети в целом.
Дело в том, что мы должны помнить все новые ситуации, с которыми сталкиваемся, они становятся контекстом.
Механизм контекстной памяти неразрывно связан с механизмом узнавания нового, но будет рассмотрен ниже в отдельном разделе.
Теперь можно поговорить об особенностях реализации в зависимости от нейросети.
В нейронных сетях с постоянной и ассоциативной памятью, работающих во времени и способных запоминать последовательности, ассоциативную активацию обычно называют предсказанием.
Работа такой нейросети заключается в постоянном прогнозировании последующих событий, а событие, которое не было предсказано, считается действительно новым.
То есть правило звучит так: «Если срабатывание постоянной памяти не последовало за срабатыванием ассоциативной памяти, то мы столкнулись с новой ситуацией».
После распознавания чего-то нового к нейронной сети добавляется новая ассоциативная связь.
В нейронных сетях с постоянной и контекстной памятью используется похожее, но более интуитивное правило: «Если постоянная память сработала, а контекстная память молчит, то мы сталкиваемся с известной закономерностью в новой ситуации».
Событие, происходящее в неизвестном контексте, может считаться существенно новым и становится поводом для добавления новых контекстных связей.
В нейронных сетях с постоянной, ассоциативной и контекстной памятью (три типа дендритов) добавление механизма распознавания новой ситуации решает важную проблему разделения ассоциаций и контекста.
Пока нейрон не распознает новую ситуацию, все действия окружающих нейронов воспринимаются и запоминаются как контекст. В тот момент, когда нейрон осознает новизну ситуации, вся деятельность окружающих нейронов воспринимается и запоминается как ассоциации.
Контекстная память Каждый думал в меру своей распущенности, но все думали об одном и том же.
Механизм контекстной памяти можно получить, добавив новый тип дендритов вместе с новым механизмом распознавания.
Такая контекстуальная память фактически служит потребностям механизма узнавания нового, основанного на правиле «Если постоянная память сработала, а контекстная память молчит, то мы столкнулись с новой ситуацией».
Контекстная память хранит все ситуации, с которыми нейрон уже сталкивался, в которых сработала постоянная память, фактически позволяя ему правильно распознавать новые ситуации.
А новаторство контекстуальной памяти состоит в том, что ее основная задача заключается не в ассоциативной активации нейрона, а, наоборот, в гашении повышенной активности нейрона.
Фактически разница между некоторыми реализациями ассоциативной и контекстуальной памяти заключается лишь в воздействии на нейрон, а правила установления и регулирования ассоциативных и контекстуальных связей иногда совпадают до мельчайших деталей.
Контекстную память можно использовать и для предсказания, то есть для ассоциативной активации нейрона.
В то же время ассоциативная память может успешно использоваться в качестве контекста в последовательностях, распознавая ситуации, которые мы не могли предсказать.
Предлагаю различать их именно по влиянию на нейрон: ассоциация возбуждает, а контекст успокаивает. Основной принцип контекстной памяти можно выразить следующими словами: «Активный контекстный ввод дает понять нейрону, что постоянная память уже сработала в таких условиях.
Два нейрона становятся контекстом друг для друга, если они активны одновременно».
Контекстная память помогает выполнить условия разреженных распределенных представлений за счет действия правил внутри нейрона, а не за счет правил, влияющих на всю сеть одновременно.
Скажем так, это в основном биологически правдоподобно.
Если предположить, что во время изучения шаблона постоянной памяти нейрон активируется, и учесть, что два одновременно активных нейрона пытаются отключить друг друга.
Тогда активный сосед сигнализирует нашему необразованному нейрону: «Мальчик, я лучше тебя знаю, что сейчас происходит, определись по своей схеме в другой ситуации».
Это механизм, который заставляет нейроны выбирать для себя разные шаблоны для запуска постоянной памяти, и он расположен внутри нейрона.
Нейроны сортируются между собой; нет необходимости использовать внешний группер.
Нейрон с постоянной и ассоциативной памятью, а также с мотивационными, санкционирующими и эмоциональными входами.
Когда ты сделал что-то, чего раньше никто не делал, люди не могут оценить, насколько это было сложно.
Этот метод предполагает наличие мотивационных, санкционирующих и эмоциональных входов среди всех входов каждого нейрона.
Кроме того, она основана на теории функциональных систем Анохина и теории эмоций Симонова.
Я сам еще не до конца понял метод, но могу смело сказать следующее.
Помимо постоянной и ассоциативной памяти, мотивация также может активировать нейрон.
Мотивационные, санкционирующие и эмоциональные воздействия используются в качестве внешнего контроля и оценки активности нейронов.
Функция нейрона, с помощью которой он обучается и действует, называется «Семантический вероятностный вывод».
И о «жалком» суммировании входов речи не идет. Эта нейросеть не занимается извлечением данных, она занимается проблемой удовлетворения своих эмоциональных потребностей.
Необходимо смоделировать как саму нейронную сеть, так и среду, с которой она связана.
Выходы нейросети должны влиять на окружающий мир, иначе в ее функционировании не будет смысла.
С точки зрения внешнего наблюдателя семантический вероятностный вывод для доминирующей в данный момент эмоции можно рассматривать как вычисление истинности прогнозируемого удовлетворения эмоции с помощью нейронной сети, отражающей представление об окружающей среде.
От рецептивного поля к выходам нейронной сети сигнал молнии проходит по пути наименьшего сопротивления (на самом деле путь состоит из наибольших вероятностей), а эмоции, санкции и мотивации являются тем ключом, который позволяет или запрещает нейронам пропуская молнию.
Семантический вероятностный вывод отличается от логического вывода тем, что каждый нейрон представляет собой достоверное с некоторой вероятностью правило вывода, которое получается при наблюдении за окружающей средой, тогда как в логическом выводе все правила вывода строго заданы, абсолютно достоверны и их число неизменно.
Оказывается, нечеткая логика работает с нечеткой логикой и даже определяет вероятность.
Пример того, как работает нейронная сеть, также можно описать таким образом.
Если мы очень хотим добраться из леса к себе домой, то запрягаем (используем вероятные правила вывода) либо корову, либо лошадь и идем (вероятные результаты) либо на съемную квартиру, либо к бабушке.
С нашей точки зрения, выигрывает тот вариант, который наиболее близок к реальности (вероятен) в данной ситуации.
Работу эмоций, санкций и мотиваций в этом методе я описывать не буду, так как сам еще не до конца ее понял, и это займет много места.
Утолите здесь свою жажду знаний.
www.math.nsc.ru/AP/ScientificDiscovery/PDF/principals_anokhin_simonov.pdf Другие «современные» методы работы с нейронными сетями Мало знать себе цену — нужно еще быть востребованным.
Метод эффективной эволюции топологии в нейронных сетях — это тот же метод с эволюционным алгоритмом, только для топологии нейронной сети.
В принципе, эволюционный алгоритм в последнее время стал своеобразным спасателем.
Если у вас нет идей в вашей области научной деятельности, достаточно применить эволюционный алгоритм, бац, и «новое» научное направление у вас в кармане, если до вас его не додумал кто-то умный.
Существует универсальное решение проблем; этого достаточно, чтобы развить проблему.
http://nn.cs.utexas.edu/downloads/papers/stanley.cec02.pdf Другой способ использовать эволюционный алгоритм — заменить его алгоритмом машинного обучения в нейронной сети.
По сути ничего нового, еще более тривиальный метод, чем предыдущий.
Не заслуживает ссылки.
Литература Лучше промолчать и показаться дураком, чем открыть рот и полностью развеять сомнения.
Оригинальность – это искусство сокрытия своих источников.
- Иерархическая временная память (HTM) и ее корковые алгоритмы обучения https://www.groksolutions.com/htm-overview/education/HTM_CorticalLearningAlgorithms_ru.pdf
- Асинхронный одноранговый анализ данных с градиентным спуском http://www.inf.u-szeged.hu/~ormandi/presentations/europar2011.pdf
- Витяев Е.
Е.
Принципы работы мозга, содержащиеся в теории функциональных систем П.
К.
Анохин и теория эмоций П.
В.
Симонова http://www.math.nsc.ru/AP/ScientificDiscovery/PDF/principals_anokhin_simonov.pdf
- Жданов А.
А.
Автономный искусственный интеллект. М.
: БИНОМ.
Лаборатория знаний, 2008.
-
Члены Предложения
19 Oct, 24 -
Linux – Как Альтернатива Windows
19 Oct, 24 -
Я Просто Оставлю Это Здесь
19 Oct, 24 -
Реализация Опроса Google App Engine
19 Oct, 24