Pull to refresh

Comments 65

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


Нет никакого дуализма у элементарных частиц. Это понятие было в самом начале квантовой механике введено, а потом быстро быстро забыто.

Печально мне.

До сих пор упоминание электрон мол проявлять себя может и частица и иной раз как волна. Что-то поменялось с тех давних пор?
До сих пор упоминание электрон мол проявлять себя может и частица и иной раз как волна. Что-то поменялось с тех давних пор?


Физики быстро осознали что это не так. Переименовали «Волновую Механику» в «Квантовую механику», а «Волновую функцию» в «Амплитуда вероятности» — но было уже… поздно. "Волна-частица" ушла в народ и там продолжает жить, кочуя по учебникам и статьям википедии.

Физики же этим понятием не пользуются уже давным давно.
UFO just landed and posted this here
Не печальтесь. Я с вами согласен :)


Вы единственный. ;)
Достаточно немного отложить момент запоминания новой волны. Вместо запоминания узора в тот момент, когда новая волна подошла к элементу, можно дать волне немного распространиться дальше и запомнить узор, получившийся вокруг элемента. В результате элементы автомата становятся инвариантны к направлению распространения волн. То есть один и тот же узор волны воспроизводится одинаково, независимо от того откуда пришел фронт этой волны.


Не могу сообразить почему это работает. Понимаю, что для вас все это соверщенно очевидно, но для меня — нет.
В таком виде это и не работает. Если точка запомнит паттерн после прохождения, то в следующий раз в полном виде она паттерн увидит, только когда волна пройдет дальше через точку (т.е. точка как участница волны должна с соседями уже быть активна к тому моменту). Но раз точка будет неактивной, то и волна дальше не пойдет, т.к. этот момент касается всех точек-участниц волн.
Предположим, волна пришла ко мне слева. Если в этот момент запомнить узор волны, то в нем будут активны только левые от меня элементы. Когда такая же волна придет опять слева я без труда ее узнаю. Но если эта же волна придет справа, то окажется, что узор из правых от меня элементов я не запоминал и значит и узнать волну не смогу. Я восприму ее как новую незнакомую мне и буду вести себя соответсвенно.
Как выход, можно запоминать волну не сразу, когда узор еще не полон, а немного подождав. Когда волна пройдет чуть дальше я увижу ее со всех сторон от себя. Запомнив такой полный узор, я теперь без труда смогу узнать эту волну с какой стороны она бы ко мне не пришла.
Но если волна шла первый раз слева, а второй раз идёт справа — то узор будет перевёрнут на 180 градусов, или же зеркально отражён, по сравнению с первым разом, разве нет?
У узора нет симметрии, как и нет упорядоченной внутренней структуры. В каждом месте он изначально создается случайным образом. Слева волна одного узора, справа другого. Но справа она всегда такого узора и тоже самое слева. Представьте, что вам показывают картинку, открывая ее постепенно слева на право. Дойдя до середины останавливаются. Если вы запомните только открытую левую часть картинки, то только по этой части вы и сможите узнать ее в следующий раз. Если эту же картинку будут открывать справа на лево, то дойдя до середины вы не узнаете ее. Но если вы подождете пока картинка откроется полностью и только тогда запомните ее, то затем вы сможете узнать ее по любой половинке.
Это все понятно, мне непонятно, почему картинка всегда приходит в одной и той же ориентации, независимо от того, с какой стороны был эпиценрт волны? Или имеется в виду, что эти две волны вообще разные, просто так случается, что в какие-то моменты времени в каком-то конкретном месте какой-то конкретный кусочек фронта каждой из двух волн образует идентичный паттерн? При этом остальные части фронта этих волн могут не совпадать, совпадают именно эти их кусочки именно в этом месте? И исходная активность (в эпицентрах), вызывающая эти волны, тоже совершенно разная?
К сожалению, понятнее не становится(( Хорошо, мы дождались момента, когда область слежения элемента окажется в глубине фронта волны, где-то между передним и задним его краями, и запомнили активность в ней. Но ведь даже если в следующий раз паттерн начальной активности возникнет на другом расстоянии от нашего элемента, то локальный узор дошедшей до него волны будет совсем другой, и элемент его не вспомнит. То же самое, если паттерн был слева, а в следующий раз стал справа от элемента. Разве паттерн распространяет один узор во всех направлениях и на все расстояния?
Вот возьмем правую часть последнего рисунка перед завершающим статью видео. Если то, что обведено окружностью с цифрой 1, и есть область слежения элемента, а дуга из белых точек и есть фронт волны, то я не понимаю как элемент узнает паттерн, если в следующий раз последний возникнет в другом месте. Кажется очевидным, что в этом случае к элементу придет совсем другой узор фронта волны.
Я понял в чем недопонимание. Когда воспроизводится узор волны, то это не узор из одного места воспроизводится в другом. Это в другом месте воспроизводится тот паттерн, что появлялся там когда проходила соответствующая волна. На картинке два места. Цифры обозначают эти места. Волна одна и та же. В первом месте она дает один узор во втором другой. Узоры разные и в разных местах. Но один всегда вызывает другой не важно кто из них начал первый.
Видимо, учитывая условность аналогии и приведённую выше визуализацию, просто стоит отметить, что сам «элемент» напрямую не влияет на воспринимаемый им «узор».
Во второй раз (и все последующие) волна активности бежит не по пустому месту, а по элементам, которые находятся в релаксации. Случайным образом узор выстраивается только в самый первый раз, а в дальнейшем решётка элементов уже, как бы, обучена ловить ту волну, которая прошла по ней в первый раз и породила определённый рисунок релаксирующих элементов. Таким образом, когда волна подходит справа, её можно узнать по правой части запомненного паттерна, а когда она подходит слева, то по левой части того же паттерна.
Поправлю. Релаксация у элементов продолжается недолго. Она нужна, чтобы волне не побежала обратно. Правильнее сказать волна бежит по элементам у которых есть в памяти этот узор.
Я просто не понимаю как волна может приходить справа от элемента, если паттерн начальной активности находится слева? Либо паттерн — это не то же самое, что некий образ на сетчатке глаза, например (который может менять положение, оставаясь собой), и возникает всегда в одном и том же месте, либо объясните дураку вопрос из первого предложения этого комментария.
Для простоты перейдём от двумерной решётки к одномерной. Допустим, наша область слежения состоит из 100 элементов, пронумерованных от 1 до 100. Мы находимся посередине — в элементе 50. Допустим, наш порог активации — 5. Т.е. когда мы видим, что уже активированы хотя бы пять наших соседей, за которыми мы следим, мы тоже активируемся. Из предыдущего прохода волны активации мы запомнили, что мы были активированы тогда, когда были активированы элементы 2, 15, 27, 42, 49, 54, 67, 71, 89 и 97 (десять штук… пять слева от нас и пять справа). Ситуация, когда волна идёт слева, будет выглядеть так: сначала активируется элемент 2, затем 15, затем 27, затем 42… мы терпеливо ждём, ничего не делаем, просто следим… затем вдруг видим, что активировался элемент 49. Всё! Бинго! У нас есть пять элементов, совпавших с запомненным ранее паттерном. Активируемся тоже. Если же волна идёт справа, то мы видим следующую картину: сначала активируется элемент 97, затем 89 и 71… мы равнодушно смотрим… но затем активируются 67 и 54. Всё! Тоже есть совпадение с пятью элементами паттерна. Пусть и с другой его частью. Тоже активируемся. Причём точно так же ведут себя все другие элементы. Тот же элемент с номером 54, который заставил нас активироваться, сам активировался не просто так, а потому что у него был запомненный паттерн типа: 15, 27, 42, 49, 50 (это мы), 67, 71, 89, 97 и, допустим, 102 (мы этот элемент не видим). Когда в нашем поле видимости было только четыре активированных элемента, в его поле их уже было пять, поэтому он активировался раньше и активировал нас. Когда же волна идёт слева, мы активируем его, поскольку он не видит элемент 2, а мы видим. Мы активируемся, когда активируется 49… 54-й же в этот момент видит только четыре активированных элемента. Пять у него будет лишь тогда, когда активируемся мы.
Спасибо за хорошее объяснение.
Обновите, пожалуйста, текст соответствующим образом. Из него непонятно, что клетка активируется не при наблюдении полного задержанного паттерна, а при наблюдении только его части (порог срабатывания упоминается, но далеко выше по тексту).
И остается ещё открытым вопрос, что делать, если частичный паттерн наблюдается не с одной стороны, а с разных. Технически, если фронт подходит с какой-то стороны, то с той стороны должны быть активированы все клетки-предшественницы, а при срабатывании только по пороговому кол-ву у нас возможна ситуация, что неполная часть будет активирована слева, неполная — справа, и в итоге клетка посчитает, что видит фронт волны, хотя его не будет.
В статье есть ссылка на текст программы. Если возникает желание разобраться детально, то можно посмотреть код.
А ещё коментарии можно почитать, но согласитесь, для целостности восприятия стоит такие моменты уточнять сразу.
Я, например, читая текст статьи, укладывал её себе в голову в соответствующую модель, постоянно контролируя все ли я понял и согласованна ли модель. И тут встречается абзац, который согласованность ломает и как дальше читать?
Поправил текст. Возможно, стало понятнее.
Если причина непонимания та же, что была у меня — то ответ кроется в картинках, в частности в этом описании двух картинок:
Новая волна запускается из области (2) узором, который был частью исходной волны. Фронт волны, дойдя до области (1), создает там узор аналогичный исходному

То есть, новая волна запускается из другого места не первоначальным паттерном, а тем паттерном, который был запомнен в этом месте после прохождения первой волны.
Извиняюсь за оффтоп, но можете предоставить реализацию модели в коде(!) хотя бы для MNIST (было в одной из предыдущих статей)? Что бы пощупать можно было. А то всё статьи, статьи…
Да, обязательно. Код будет и его будет достаточно много. Он будет выкладываться по мере того, как в статьях будет даваться соответсвующее описание.
Спасибо. Ждём продолжения!
Вы хотя бы скриншоты новые выложите. А то одни и те же картинки и код на VB гуляют из статьи к статье, что заставляет думать что нового кода нет, либо он еще не готов. Слишком уж много нынче людей которые «обещают», хочется таки пощупать что-то реальное.

Или уже самому брать и делать. Вот только большой вопрос вызывает то, как организовать память отдельного элемента. Он ведь должен хранить не одну волну, а несколько. В самом суровом варианте если область слежения это матрица n×n и элемент может запомнить k разных волн, то получается, что нам надо хранить где-то n² × k бит информации в минимальном варианте, когда считаем что сосед или активен или нет.

Если хранить с потерями, то объем можно конечно уменьшить, но все равно нужна оценка на нижнюю границу.

P.S.: Никто не пробовал делать клеточные автоматы с памятью на GPU? Хотя бы простейшие.
Это только начало. Код программы, показывающий распространение волн, не менялся. Далее он не используется. Там будут совсем другие алгоритмы.
Как организована память и оценки объема будет дальше.
Касательно «устройства Вселенной» в этом аспекте интересна гипотеза из статьи. Если само пространство-время формируется из связного графа частиц, то вся Вселенная по сути огромная нейронная сеть и клеточный автомат одновременно.

Да, и спасибо за новую статью, смотрю подход к проблеме несколько расширен по сравнению с предыдущим циклом статей, прошлый раз было интересно прочесть, но и сейчас интересно «освежить» детали уже зная к чему ведёт сюжет.
Это будет совсем другой сюжет. Предыдущий сюжет — это только маленькая затравка.
А что если каждому паттерну сопоставить число, разным понятиям — разные числа. Тогда, вместо определения знаком ли паттерн, каждая клетка будет смотреть знакомое ли число сквозь нее проходит. Несколько сигналов — через клетку проходит несколько чисел. Не будет ли такой алгоритм полностью аналогичен вашему, но с гораздо более простыми и вычислениями?
Да, будет аналогичен. Но что будет «нести» число. Ячейки могут принимать только два состояния и все. Все, что они видят — это состояние соседей. Чтобы понять, какое число передается его придется закодировать узором активности.
Я так понимаю, вопрос просто в архитектуре приложения (в части хранения/вычисления данных).
Либо ячейка хранит только состояние и видит (= вычисляет при необходимости) состояние соседей, либо на каждом такте видимому состоянию соседей (паттерну) сопоставялется число и хранится в ячейке вместе с состоянием. Но что-то практической пользы от такого подхода мне пока не видится
Пока тут практической пользы и нет. Просто, нужна модель, которую можно будет сопоставить с работой нейронов. Польза начнется несколько позже.
Не совсем понятно, предвидится ли «польза» в рамках данного «сюжета». Наблюдая за развитием Ваших «Логик», не покидает ощущение, что Вы переоцениваете значимость подобия искусственного интеллекта естественному. По всей видимости, «сюжет» уже предусматривает и «логику Вселенной». Будем надеяться, что обещанная Вами «польза» не растворится в «гиперпространстве»…
Естественный интеллект умеет оперировать со смыслом. Это необходимо и сильному искусственному интеллекту. Я вполне конкретно покажу, как это делает мозг и приведу код, который воспроизводит это на компьютере для решения прикладных задач. Я сознательно не рассказываю ничего, может быть и интересного, но без чего можно обойтись. Поверьте, со времнем станет понятно зачем нужны все эти волновые штуки.
Ну тут уже на данном этапе можно сделать какие-то выводы. «Нейрон бабушки» трансформируется в «волну бабушки», и теперь о бабушке могут напоминать какие-то внезапные стечения импульсов (паттерны). Что-то вроде ассоциативной связи между различными понятиями на основе этих волн вырисовывается.
Нет, все сосвсем не так. Все гораздо интереснее. Правда, сложнее. Наберитесь терпения.
UFO just landed and posted this here
Естественный интеллект мало чем отличается от искусственного.


Хм, как устроен естественный никому пока не ведомо.

Понятия типа "логика вселенной" может быть и не несут в себе практической ценности — а лишь чисто философскую. Однако изучение практической реализации естественного интеллекта неоспоримо представляет из себя практическую ценность, в том числе и для создания интеллекта искусственного.


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

о клеточных автоматах и о том, как они могут быть связаны с устройством вселенной

А как же парадокс демона Лапласа. Показано, что даже имея бесконечную вычислительную мощность невозможно составить точную модель вселенной.
Таким образом, если предположить, что время существования Вселенной бесконечно, то демон Лапласа должен либо не учитывать себя в предсказании будущего (а для этого он должен быть нематериальным, что уже противоречит условиям, либо существовать вне изучаемой Вселенной, как вариант), либо принципиально (даже в идеализированном гипотетическом мире) быть невозможным. Однако же если предположить, что время существования Вселенной конечно (то есть она замкнута в будущем и каким либо образом прекратит существование в определённый момент), то демон Лапласа всё же потенциально возможен.
Поместите демона в чёрную дыру, тогда его собственное состояние можно не учитывать в общих вычислениях и проблема исчезнет.
Мы — нет, а демон — может там быть, в этом и суть, когда он оставаясь материальным может не учитывать себя в предсказаниях будущего за горизонтом событий и парадокс разрешается.
а демон — может там быть, в этом и суть, когда он оставаясь материальным может не учитывать себя в предсказаниях будущего за горизонтом событий и парадокс разрешается.


Демон из чёрной дыры управляет нашей Вселенной? — Это круто!
Звучит как диагноз сюжет для рентв :) Забыли только добавить что-то вроде: «Шок! Ученые доказали, что…».
> то демон Лапласа должен либо не учитывать себя в предсказании будущего
Но он может пойти другим путем. Ведь он такой супер-точный и супер-быстрый, значит и решения он может принимать и выполнять так-же быстро и точно.

В таком случае он может в процессе просчета на каждом «кванте времени» выбирать и запоминать свое решение заранее, и затем уже в будущем его применять. Если в процессе просчета он дойдет до момента когда ему не понравится результат, он может откатываться в расчетах на N шагов назад, менять решение, и считать остаток заново.
он может откатываться в расчетах на N шагов назад


Это слишком расточительно. Откатывать то!

Вы написали что статья описывает всего лишь клеточный автомат, а никак не сам мозг — и более подробные описания вашей теории устройства мозга будут позже. Однако всё равно мне кажется в данном автомате есть серьёзная проблема, если представить что он хоть как-то относится к вашей модели самого мозга:


Если я правильно понимаю, то для функционирования волн, каждая клетка должна помнить определённый паттерн активирования для каждой волны в которой она участвует. То есть информация о том какой именно узор должен эту клетку активировать — должна сохраняться в каджой клетке для каждой волны…
Насколько я помню из прошлого цикла статей, каждая отдельная волна — используется в вашей модели как идентификатор, отличный для каждого явления которое мозг способен воспринимать. Мысли, объекты, ощущения, вообще любой кусочек воспринимаемой реальности будет иметь свой идентификатор волны. То есть этих идентификаторов нужно огромное множество.


И каждый из этих идентификаторов должен будет распознаваться мозгом. Однако в вашей модели, это распознавание должно работать не просто на пределах всего мозга, используя любые из его миллиардов нейронов — а на КАЖДОМ маленьком участке в мозге — участке который каждый нейрон способен воспринимать непосредственно. (То есть его непосредственное физическое окружение.) Это логически исходит из того что если волна распространяется — то значит что она должна узнаваться каждым маленьким участком всего "эфира" по которому она распространяется.


Те есть получается что ваша модель говорит что каждый маленький участок мозга, ограниченный по размеру полем непосредственного восприятия (очевидно химического и электрического) одного нейрона (или даже в 2-3 раза больше такого участка, что достаточно для распознавания) — должен в себе хранить информацию о том как распознавать все идентификаторы волн которые вообще могут быть в мозге. И это как минимум — если не учитывать что кроме распознавания у нейронов может быть ещё какая-то функция которая также требует ресурсов памяти.


Возможно ли это физически? Производили ли вы какую-то количественную оценку того сколько такой маленький участок на деле может распознавать различных волн?

Да. Биологически достоверная модель создана. Вычисления проделаны. Моделирование проведено. Далее я напишу об этом подробнее.
Ключевые слова для попытки доказательства могут быть такими: «увеличение инвариантности представления» (при удаления от точки события).
По подсчётам некоторых других специалистов (Джеффа Хокинса), каждые несколько слоёв нейронов увеличивают инвариантность раза в 2-4. То есть, в среднем, если у вас волны отличались на 100 нейронов на одном уровне, В СРЕДНЕМ они будут отличаться на 40 на следующем уровне (впрочем, иногда на 20, иногда на 400), итп. — и на каком-то расстоянии все сигналы будут укладываться в какие-то слабо пересекающиеся или не непересекающиеся классы.
Если предположительно взять 10000 нейронов, и 100 совсем непересекающихся классов по 100 нейронов, то вы получаете всего 1 класс на активный нейрон, 100 бит и мощность представления на уровне 2^100 — т.е. даже всего 1 возможный запоминаемый сигнал на нейрон не мешает представлять сложные знания.
UFO just landed and posted this here
Ага, ещё фракталы приплетите


Ждём. :)
Очень часто модели мозга начинаются с какой-либо интересной идеи, затем говорится, что если это усложнить и количественно навернуть, то будет что-то очень сложное и непонятно как себя ведущее. Затем делается предположение, что в этой сложности и непонятности может рождаться мышление. Я описываю клеточные автоматы не для того, чтобы навернуть на них фракталы или что-то еще и затем сослаться на полученный бульен, как на источник мышления. Поверьте, будет описана очень логичная, реально работающая конструкция. Я не буду описывать ничего без надобности, только то, что критически необходимо для пониания модели.
UFO just landed and posted this here
А можно где то прочитать Абстракт на всю Логику сознания? Что хотите сказать — кратко в одном абзаце как это делают к научным статьям в уважаемых журналах? Или это невыразимо и надо обязательно читать весь цикл, чтобы узнать, что же Вы хотели сказать?
Абстракт внятно можно сделать для статьи. Для значительно большего объема можно дать аннотацию. Вступление и служило для этой роли.
В вступлении ничего нет о том, как вы собираетесь решить поставленную задачу, только обозначили, в чем она по вашему состоит. Это не абстракт и не аннотация. Как мне решить, стоит ли читать все это в таком объеме, особенно если на 90% это давно известные факты и теории.
Sign up to leave a comment.

Articles

Change theme settings