Pull to refresh

Comments 49

Перцептроны слишком статичны чтобы служить моделью сознания. Статичны в том смысле, что они как комбинаторные схемы показывают выходной сигнал (паттерн) в ответ на входной. А как быть с динамикой — временем, последовательностью событий, узнаванием мелодий? Или вот зрение: известно, что движения зрачка как-бы обшаривают поле зрения. Допустим, в каждый момент времени какой-то перцептрон будет классифицировать объект в фокусе внимания. Но сознание (или подсознание?) объединяет фрагменты в целостную картину. Эта картина формирует в сознании 3-мерную сцену, да еще с учетом времени. Например, я вижу улицу, по ней идут люди и едут машины. Я осознаю их скорости, ожидаю, в какой точке окажется объект в каждый момент времени. Это только маленький кусочек задач, решаемых сознанием. Какие подходы к динамике вы предполагаете?
Существуют перцептроны с обратными связями.
И потом заметьте тонкую разницу. Я не предполагал, что перцептроны могут служить моделью сознания. Перцептроны — это модель памяти. А под сознанием я скорее склонен понимать — определенный описанный в статье эффект, возникающий во время работы памяти.

При этом, когда в предварительной статье я говорил "Свое мнение появляется когда за основу выбирается некоторое общее положение, которое в принципе объединяет два или более мнения учителей хотя бы в ограниченной области. Т.е. происходит подмена стимулов инициированных учителями на собственные стимулы, которые и берутся за основу." — то как раз такую подмену можно осуществить только через обратные связи.
Меня интересует, моделировал ли кто-нибудь обратные связи от «генераторов тактовых частот», чтобы получить перцептрон, работающий во времени. В иерархической темпоральной модели Хокинс приводит пример узнавания мелодии по набору первых нот — предсказывается следующая. Но ведь мелодия — это не только последовательность нот, но и определенная длительность каждой ноты. Та же ситуация с восприятием движущихся объектов, управлением движениями собственного тела и т.п.
В этом нет особой проблемы, дело техники, что называется. Хокинс тут ничего нового не придумал, сам Розенблатт писал о таких экспериментах, но с поправкой «на ветер» :)

В частности я тоже этим баловался Использование принципа рекуррентности Джордана в перцептроне Розенблатта + Исследование принципа рефрактерности в рекуррентных нейронных сетях. У меня более четко видно где тактовая частота. Ваш вопрос, конечно, содержит подвох, т.к. у меня например, тактовая частота выбрана константой в 9. Но вопрос модальности (а «но и определенная длительность каждой ноты», это вопрос модальности на другой частоте) решен. Единственно, чтобы это заработало на практике нужно иметь разные задержки… прописать жестко — довольно легко и заработает, другое дело подключить обучение — но тоже не вижу принципиальной проблемы, нужно лишь потратить время на доведение теории к практике.

В то время, как в данной статье я говорю о такой проблематике для которой пока нет теории.
Т.е. вы говорите о т.н. асинхронных нейронных сетях. Действительно их исследовали меньше и серьезных работ об этом мне не известно.
Если можно, то добавьте рисунки структур сетей или хотябы формулы хоть примерные, а то голый текст очень трудно представить в практической реализации
В основе структура перцептрона Розенблатта, если вы ее знаете думаю модификацию можно понять из текста. Если нет то спрашивайте. Если не знаете о структуре перцептрона Розенблатта, то есть пару статей Запрограммируем перцептрон Розенблатта?.

Это называется «нейроны в точках данных» и очень часто применяется для инициализации самых разных нейронных сетей. Один из основных подходов, собственно. Хорошая идея, короче, но её придумали до вас.

Кстати, заменять им обучение полностью нет смысла, именно потому, что забывание в общем случае функционально оправдано (и часто даже вводится принудительно). Особенно для столь любимых вами динамических сетей.
Можете дать ссылки на того кто это придумал, хотелось бы сравнить.
Даже никогда не интересовался, честно говоря. Все ссылаются на Zahirniak D.R., Chapman R., Rogers S.K., Suter B.W., Kabrisky M. and Pyati V., «Pattern Recognition using Radial Basis Function Networks,» Conf. Aerospace Application of Al, Dayton, 1990, но я это не читал. Это всё-таки общее место и принцип объясним в двух строчках, часто идёт без ссылки вообще.

Да, и кстати, это совершенно естественный принцип инициализации, когда нейроны существуют в том же пространстве, что и стимулы (сети Кохонена, радиально-базисные и т.п. и т.д.). Но в случае персептронов и пр. эти пространства мягко говоря разные и даже не однозначно отобразимые. То есть существует намного больше одного способа получить нужный отклик на данный стимул. Не слишком ясно, какой из них предпочесть и почему.
Да, на гуглили мы одинаково. Но саму статью «Pattern Recognition using Radial Basis Function Networks,» найти мне не удалось. Но судя по описанию из этой статьи, это как я написал что-то близкое но не то —

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

У меня же речь о другом. Все проще — дополнительные элементы в среднем слое = выходы (на этапе обучения).
> =выходы

в том смысле, что дают уже нужную реакцию изнутри на выходы. На самом же деле так ведут себя нейроны Иерархической Темпоральной Памяти от Хокинса — пытаясь сделать прогноз какой будет выход за такт то формирования реального выхода.
То есть оптимальная стратегия для персептрона — обнулить все веса, кроме тех, которые ведут от «дополнительных элементов» к выходам. Отличный план.
теперь когда поняли это читайте дальше.
Спасибо, мне хватило одного раза.
Боюсь вы тогда ничего не поняли.
Зря боитесь, я вообще понятливый.
Вы дочитали до, и не поняли видимо, что я сам указал то над чем вы иронизируете

Следует отметить, что представленный здесь прием “ускоренного обучения” имеет существенный недостаток – такая модель практически исключает возможность обобщения и последующего прогнозирования на экзаменационном множестве. Это ставит под сомнение, в таком случае, вообще применение перцептрона.


Но дальше Вы похоже не пошли, а стоило бы

Но это, естественно, вырожденный пример. Стоит лишь изменить некоторые детали и тогда такой прием “ускоренного обучения” будет обладать существенными преимуществами перед любой нейронной сетью по ряду параметров.
Да, и для этого вы предложили мутации. Что не решает проблему вообще никак, потому что оптимальное поведение персептрона — всё ещё просто напросто вернуть мутировавший вес назад.
Именно так. Оптимальное поведение персептрона — это получить правильный выход. А если для этого ему надо устранить шум в сенсорной активности или в предсказательной активности — он это и будет делать.

И только при этом можно регулировать степень обобщения которую перцептрон выполняет на неизвестном множестве.
Только зачем здесь персептрон? С тем же успехом можно заменить нечётким поиском по базе данных обучающей выборки. Будет быстрее и проще. Обучать-то тут уже нечего.
Можно и на коне поскакать — будет весело, но к делу не относится.
Действительно, имеет место «оптимальная стратегия для персептрона — обнулить все веса, кроме тех, которые ведут от «дополнительных элементов» к выходам.» Видимо со стороны кажется странно. Но если учесть, что на дополнительных элементах и есть то, что требуется на выходе — нет ничего удивительного, что «мозг» должен оптимизировать это так, чтобы исключить сенсорную активность, т.к. она ничего не добавляет нового.

Именно так в мозгу и происходит, когда мозг с уверенностью предсказывает, что вы увидите или в какую ситуцию попадете в следующий момент времени. А то что он такое делает — это нейрофизиологический факт.

Теперь далее когда вы что-то не очень хорошо предсказываете, мозгу это надо с другой стороны опимизировать — убрать шум из вашего неточного предсказания, используя сенсорную активность.

Вот что тут на самом деле написано. Стучащему да откроется :)
Тут написано «давайте не будем ничего делать с данными, а просто запишем их в нейроны». Лучше запишите в базу данных, толка больше будет.
Нет не так, думайте… я и так все разжевал.
Я заметил, что вы отвечаете так каждому, кто пытается говорить о ваших идеях конкретно. Вероятно, если вас никто не понимает, то дело в вас, а не во всех остальных. Думайте.
В ваших словах нет конкретики. Вы читаете по диагонали? Зачем мне тогда писать, когда вы пришли сюда не понять, а высказать свое фи. Мне это не нужно, тем более такое фи, которое идет от непонимания о чем речь.

Читайте еще раз:

Теперь далее когда вы что-то не очень хорошо предсказываете, мозгу это надо с другой стороны опимизировать — убрать шум из вашего неточного предсказания, используя сенсорную активность.

это совершенно противоречит вашему «давайте не будем ничего делать с данными»
Вы осознаёте, что у вашей сети нет режима обучения? Внедрение ответов в структуру — это не «ускорение обучения». С этим вы ничего никогда не предскажете и не соптимизируете. Это вообще не сеть, это даже не база данных, это словарь. И вы никак, просто никак не используете данные. Какая может быть конкретика, если это неработоспособно?
Вы читаете или как? У такой сети есть режим обучения.

Еще раз для тех кто в танке, я же писал

Следует отметить, что представленный здесь прием “ускоренного обучения” имеет существенный недостаток – такая модель практически исключает возможность обобщения и последующего прогнозирования на экзаменационном множестве. Это ставит под сомнение, в таком случае, вообще применение перцептрона.


Если бы я на этом остановился — это и было бы ТОЛЬКО «внедрение ответов в структуру», и тогда я бы действительно «ничего никогда не предскажете».

Но я же вам выше специально выделил ЖИРНЫМ (читать пробовали?), то где уже предполагается обучение.
Давайте исходить из того, что я всё прочёл (потому что это а) вежливо б) правда). А теперь потрудитесь поразмышлять, почему мои претензии всё ещё в силе. Выясните, например, что такое обучение сети (это, например, не подавление шума, не предсказание и не инициализация) и признайте, что его у вас нет.
Читаем!

Такие детали состоят в следующем. Необходимо ввести некоторый элемент случайности (мутирования) в активацию дополнительных А-элементов, о которых говорилось выше. Например, при необходимости активировать дополнительный А-элемент мы будем в 80% (эту цифру назовем фактором внимания, или что технически точнее — точностью прогнозирования) случаев реально его активировать. Это несколько замедлит обучение, т.к. сенсорную активность уже будет не так просто нейтрализовать. А так как во внутренней активности будет потерянна 100% достоверность необходимой на выходе реакции, то процедуре настройки коэффициентов (обучению) потребуется учитывать и сенсорную информацию и согласовывать ее с внутренней.
Подавление шума — это не обучение.
Ну что за глупости, еще раз:

Такие детали состоят в следующем. Необходимо ввести некоторый элемент случайности (мутирования) в активацию дополнительных А-элементов, о которых говорилось выше. Например, при необходимости активировать дополнительный А-элемент мы будем в 80% (эту цифру назовем фактором внимания, или что технически точнее — точностью прогнозирования) случаев реально его активировать. Это несколько замедлит обучение, т.к. сенсорную активность уже будет не так просто нейтрализовать. А так как во внутренней активности будет потерянна 100% достоверность необходимой на выходе реакции, то процедуре настройки коэффициентов (обучению) потребуется учитывать и сенсорную информацию и согласовывать ее с внутренней.

Что не ясно?
Вы понимаете, какую функцию оптимизирует настройка весов? Вы понимаете, какой огромный искусственный и скорее всего, глобальный минимум вы соорудили своей инициализацией? Обучения не будет. Будет подавление случайного шума, внесённого мутацией, незначительно отклонившей сеть от экстремума. Сеть останется безальтернативно переобученной и неспособной ни на что за пределами обучающей выборки.
Я похоже говорю с глухим. Давайте спрошу еще раз вежливо: вы понять хотите или выпендриваться?
Я уже понял. А вы хотите понять, или сохранить свою непогрешимость?
Мне понимать не нужно — это проверено на экспериментах.
> неспособной ни на что за пределами обучающей выборки

Вы ошибаетесь. С чего Вы делаете такой вывод? Я вам раз пять уже указал, что обучение происходит.
А я вам ровно столько же сказал, что нет. Моё слово против вашего. Поставьте эксперимент наконец и покажите результаты.
Эксперимент давно поставлен
В студию. Уж вы-то вроде должны знать, как это в статьях делается.
А вот это я решу, надо ли мне копаться по архивам и выискивать для не благодарной булики конкретные результаты, в то время как сейчас меня интересует другое. Когда приличный человек вежливо попросит — я об этом подумаю.
> булики

публики :)
Я никак не могу понять где вы словили глюк.

Вам как я понимаю, кажется, что я ввел только дополнительные элементы, и выходы будут сводится только к ним? Нет, когда эти дополнительные элементы будут ошибаться (в 20% случаев), в этот момент, чтобы сети обучится, будет мало брать информацию с дополнительных входов, и будет происходить полноценное обучение с входов.
20% — это уровень шума. Для сети это не обучающая выборка, это выбросы.
Кстати, откуда взялось 20%? Почему не 40%, почему не 10%? Вы проверяли в экспериментах, как влияет это значение на результат?
И вообще, покажите хоть какой-то результат. Хоть процентики какие-нибудь, хоть на чём-нибудь.
«нейроны в точках данных» — возможно, это скорее близкая идея, но с другой реализацией. Что же касается «открытия» — то оно независимо :)
Sign up to leave a comment.

Articles