Posts Tagged ‘с изображениями’
Самый большой банк в мире, наркотики и убийства
Среда, Июнь 30th, 2010Самый крупный банк в мире – HSBC. Как он неразрывно связан с наркотиками – чуть ниже. Чтобы масштаб убийств был нагляднее, вначале эту статью планировалось назвать «Какая страна убила больше – Гитлеровская Германия или Великобритания?»
Начнем с Германии. Вторая Мировая Война. Возьмем потери всех сторон, в том числе Германские. http://ru.wikipedia.org/wiki/Вторая_мировая_война
«Общие людские потери достигли 50-55 млн чел., из них убито на фронтах 27 млн чел». Добавим сюда Первую Мировую Войну – Англия и Германия отличились примерно поровну, менее 10 млн. убитых.
Теперь возьмем Великобританию. Для начала только лишь Опиумные Войны. http://ru.wikipedia.org/wiki/Первая_Опиумная_война
Более 100 млн. убитых в одностороннем порядке людей. «Так в 1842 г. население Китая составляло 416 118 200 человек, из них 2 млн. — наркоманов, в 1881 — 369 183 000 человек, из них 120 млн. — наркоманов».
Современный самый крупный банк в мире – http://ru.wikipedia.org/wiki/HSBC – был создан для ведения торговли наркотиками во время Опиумных войн, для массовых убийств. (Вот статья Сергея Голубицкого про этот банк – «Невидимка» http://www.business-magazine.ru/mech_new/experience/pub317400).
Продолжаются ли эти традиции массовой торговли наркотиками и сейчас? Для ответа на этот вопрос взглянем на современный Афганистан: http://ru.wikipedia.org/wiki/Афганистан
«В конце августа 2008 Управление ООН по наркотикам и преступности (UNODC) опубликовал свой ежегодный доклад о производстве опиумного мака в Афганистане, в котором утверждается: «Ещё ни одна страна в мире, кроме Китая середины XIX века, не производила столько наркотиков, сколько современный Афганистан». После вторжения войск США и НАТО [в Афганистан], производство наркотиков увеличилось в несколько раз[27]. Сегодня именно Россия и страны ЕС являются главными жертвами героина, поступающего из Афганистана[28]. Отмечают, что бурный рост потребления наркотиков в России в последние десять лет произошёл именно за счет наркотрафика из Афганистана[28]».
Именно после ввода войск США и Англии, Афганистан стал наркогигантом. Что начали говорить на западе, когда в этом году плантации мака в Афганистане поразил грибок? Конечно же, они выражают обеспокоенность – под прикрытием ложного гуманизма. «Поразивший плантации мака грибок грозит талибам обнищанием»
http://www.news2.ru/story/239202/
«В Афганистане плантации опийного мака в провинциях Гильменд и Кандагар поразил грибок, заявляет глава Управления по наркотикам и преступности ООН Антонио Марко Коста.
В этом году урожай опия может быть меньше прошлогоднего на четверть, заявил Коста в интервью ВВС. По его данным, грибок поразил почти половину всех плантаций страны. Поскольку на Афганистан приходится 92% мирового оборота опия, неурожай спровоцирует рост цены на наркотик. По мнению Косты, цены вырастут вдвое.
Также в ООН озабочены тем, что из-за грибка могут упасть доходы повстанческих группировок, которые живут на торговле опием»
Что мы видим? Военные США и Англии знают, сколько и на каких полях растет мака. Знают вид поразившего грибка. Знают процентное падение ожидаемых прибылей. Вопрос – можно ли экспортировать гигантские количества наркотиков (из оккупированной страны с небольшим количеством населения и без сложной природы типа джунглей) без ведома оккупационных войск? Конечно же нельзя. Наиболее вероятные пути доставки наркотиков в Европу – через военные авиабазы США (базы в Афганистане на одном конце и в мафиозном Косово на другом конце. В Косово, созданном при помощи бомбардировок тех же США). В Россию и Китай – через авиабазу «Манас» в Киргизии, вокруг которой и крутятся последние беспорядки в Киргизии. При таком обороте невозможно, чтобы на военных базах самих США периодически не заводились наркоманы. Поэтому закономерно, что даже в обычные новости прорываются скандалы с наркотиками на американских военных базах. Итого, талибы до прихода США успешно боролись с наркоторговцами, а военные Англии и Америки наркоторговцев крышуют. Как видим, традиции запада в торговле наркотиками остаются неизменными.
Что произошло, когда российские военные предложили американсцам и англичанам уничтожить мак в Афганистане? http://www.aif.ru/politic/news/50607
«Американские военные отказались уничтожить посевы опийного мака под тем предлогом, что это лишит средств к существованию «простых афганских крестьян». МИД России назвал «вопиющим случаем» отказ командования американского контингента уничтожить посевы опийного мака в Афганистане и считает это свидетельством потакания производителям наркотиков, пишет РИА Новости.»
Наблюдаемая в этом ответе неприкрытая циничность англосаксов – их типичное качество, которое воспитывается их культурой с самого детства (http://emdrone.livejournal.com/147529.html «Отчего гадит англичанка: к вопросам национального характера»).
Продолжим сравнение Англии с Гитлеровской Германией. Разве Англия ограничивалась только Китаем? Или только десятилетиями опиумных войн? Нет – англичане столетиями убивали десятки миллионов людей по всему миру. Взгляните на карту массовых убийств и преступлений против человечества, которые устраивала Англия, на карты человеческих страданий http://ru.wikipedia.org/wiki/Файл:The_British_Empire.png (отсюда: http://ru.wikipedia.org/wiki/Колонии_и_зависимые_территории_Великобритании). Англичане уничтожали миллионы людей в Америке, Индии, Африке, Европе, Китае, на Ближнем Востоке, на бесчисленных островах. Уничтожали и превращали в колонии десятки государств. В Америке они убивали не только индейцев, но воевали даже с будущими США, когда те захотели стать независимыми. Достижения в научно-техническом прогрессе незамедлительно использовались англичанами для массовых убийств. Например, http://ru.wikipedia.org/wiki/Пулемёт_Максима «В Судане 2 сентября 1898 года в битве при Омдурмане 10-тысячное англо-египетское войско вело бой с 100-тысячной армией Судана, состоявшей, в основном, из нерегулярной конницы. Массированным пулеметным огнем эти атаки были отбиты. Английские части понесли незначительные потери». Несколько раз Англия провоцировала войны против России, и в некоторых из них участвовала самостоятельно. Причем всегда – не в одиночку, а с оравой других европейских стран (например, http://ru.wikipedia.org/wiki/Крымская_война). Цивилизованные европейцы при подстрекательстве англичан любили убивать сообща. Англичане не только убивали, но и строили концентрационные лагеря (например, во время Англо-Бурской войны). В своих колониях, ради лучшей управляемости, англичане провоцировали разделение общества на «элиту», приближенную к англичанам, и «быдло». Особенно легко это удалось сделать в Индии, учитывая кастовое общество. Англичане широко и творчески применяли метод «разделяй и властвуй». Как на уровне диверсификации национального состава (http://ru.wikipedia.org/wiki/Рабочие-кули), так и на уровне территориального разделения. Например, от Индии они искусственно выделили и отчленили современный Пакистан, чем спровоцировали ведущуюся до сих пор войну в тех краях. Англичане грабили и вывозили все доступные ресурсы – от руды и тканей до произведений искусств и людей. Даже при вынужденном уходе из колоний англичане делали все возможное, чтобы ухудшить положение оставляемых стран. Например, уходя из Индии, они не только расчленили ее на Пакистан и Индию, а и разбирали железные дороги. Сравните с Россией, которая после распада СССР оставила после себя многочисленные заводы, школы и предприятия, не разбирала железных дорог и не вывозила заводов.
Нет и не было в истории более кровавой и недемократичной страны, чем Англия. Английский тоталитарный режим умело маскируется массовой ложью. Жестокость к колониям со стороны Англии есть закономерное следствие жестокости к собственному населению. Массовые убийства даже своего населения во время различных (сельскохозяйственных и промышленных) революций они в современных фильмах замещают сказочками о «свободных людях в свободной стране». В разные периоды времени с английским населением поступали типично: безземельные бедняки сгонялись в «рабочие дома» или шахты на принудительные работы. Не желающих работать за еду вешали «за бродяжничество». Это тогда появилось выражение «овцы съели людей» – нефти тогда не было, вместо них были поля и шерсть. Из википедии про английское крепостное право: http://ru.wikipedia.org/wiki/Крепостное_право : «Так, из законодательных актов 1488 года видно, что где прежде жили 200 крестьян, там осталось 2—3 пастуха». Освободившихся голодных бедняков направляли убивать других бедняков по всему миру.
Банк HSBC – прекрасная иллюстрация под слова «первоначальное накопление капитала». http://ru.wikipedia.org/wiki/Первоначальное_накопление_капитала «Англия — классическая страна промышленного капитализма. Осуществила наиболее полное развитие всех форм и источников первоначального накопления капитала: колониальный грабёж, пиратство, работорговля, государственный долг, протекционизм, купеческие компании (Ост-Индская, Московская) и т. д. Формирование капитала; «огораживание» и «чистка» земель, разорение цехов и т. д Революция 1642-60 г.г., «славная» революция 1688-89 г.г., установление политического господства буржуазии в союзе с «новым» дворянством».
На основе примеров Британской и Голандской Ост-Индской кампании были заложены традиции современных Транснациональных Корпораций. ( http://ru.wikipedia.org/wiki/Британская_Ост-Индская_компания «Агрессивная политика Компании выразилась в провоцировании голода в Бенгалии, разрушении монастырей в Тибете, и ведении Опиумных войн в Китае»). Основные цели ТНК остались неизменными со времен их основания – уничтожение независимости всех стран для более свободной торговли под лозунгами «открытых границ» и глобализации. Ради этих целей современные корпорации не брезгуют ничем. Что уж говорить о какой-то экологии. Варварское отношение к природе в традициях у современных ТНК еще со времен жестокого отношения к людям.

Элитные группы, сформированные и разбогатевшие на слезах и крови бедняков – банковские, военно-промышленные, властные – продолжают зарабатывать на крови и сейчас. Они используют не только наркотики, но и многие другие методы. Например, продажа оружия в воюющие страны. В том числе – в свои страны. Например, большая часть военных кампаний в США – частные. На войнах в Ираке и Афганистане они получают несметные прибыли. Достаточно напомнить, что военный бюджет США – более 500 миллиардов долларов. Почти столько же, сколько во всем остальном мире. Поэтому войны на Земле никогда не прекратятся – это выгодно со всех сторон: наркотики, военные заказы (не только промышленные заказы, но и частные военный кампании), нефть, восстановление инфраструктуры своими кампаниями, вывоз ценных произведений искусств (грабеж музеев), проституция, торговля органами, тренировка террористов для отправки в Чечню/Пакистан и т. п. Среди других способов обогащения – печатание долларов. Федеральная Резервная Система США – частная структура. Если попытаться отследить, кто владеет ФРС, то окажется, что ею владеют какие-то непонятные многочисленные фирмы, которыми – другие фирмы, и так по кругу, пока тот не замыкается. Таким образом происходит распределение контроля и сокрытие истинных владельцев самой прибыльной фирмы в мире.
Метрические пространства и ИНС
Среда, Февраль 10th, 2010Читал в википедии новый стандарт С++, и по ссылкам плавно перешел к определению метрического пространства. В целях креативного продуктивного развлечения, решил скрестить образы метрического пространства и ИНС.
Сначала возникло: «Элементы множества – нейроны, расстояние между нейронами определяется как сила некоторого коэффициента в межнейронной связи… ». Но это в каком году надо было такое писать? Явно не в 2010. Поэтому вторая попытка:
Элементам метрического пространства ставятся в соответствие отдельные кластеры нейросети. Можно ставить не отдельные кластеры, а отдельные нейронные цепочки – так как последний кластер такой цепочки будет соответствовать все тому же «один кластер».
Расстояние между элементами пространства задается при помощи нейронных цепочек из одного или более кластеров
Архитектура цепочки, которая хранит информацию о расстоянии между объектами, может быть различной. Пусть А и Б – нейронные кластеры, соответствующие некоторым элементам множества, на котором определено метрическое пространство. Тогда расстояние может сохраняться (см. рисунок, нейроны на рисунке обозначают кластеры):

Варианты хранения информации о расстоянии между А и Б
Вариант 1. Есть кластер с тремя связями: от А, Б и от кластера с информацией о расстоянии. Для того, чтобы оперировать с информацией о расстоянии, могут применяться различные механизмы. Но для начала, кластер, обозначенный как «d=1.7», нужно активировать. В схеме 1 – активировать А и Б, далее служебный кластер частично активируется (нечеткое распознавание), на нем концентрируется внимание, он распознается полностью, и активирует кластер «d=1.7». Чтобы убрать нечеткое распознавание, можно пойти другим путем – снизить порог срабатывания.
Вариант 2. Чтобы убрать стадию нечеткого распознавания, добавлен отдельный кластер. Связь «вперед» должна также полностью активировать следующий кластер. Как видно, во всех этих вариантах соблюдается условие симметрии А и Б – так как они должны активироваться одновременно.
Вариант 3. В многозадачной ИНС кластеры, объединяющие А и Б, могут хранить не только информацию о расстоянии. Чтобы не путать такие кластеры, в данном случае добавлен кластер вопроса «d?». Для того, чтобы узнать расстояние, нужно активировать кластеры обоих объектов и кластер вопроса о расстоянии. Нечеткое распознавание не нужно.
Вариант 4. То же, что и в пункте 3, но расстояние хранится не в одном кластере, а в цепочке – в данном случае, цепочке знаков, которые можно преобразовать в число.
В вариантах 1-2-3 кластер «d=1.7» мог соответствовать последнему кластеру цепочки, похожей на вариант 4, которая кодировала расстояние побуквенно. Для обработки такой цепоки нужно умение счета, умение сравнивать числа на величину и т. д. А можно добавить такую возможность в ИНС на базовом уровне, где за операции с числами будет отвечать интерфейс к калькулятору. Тогда нужно меньше нейронов (один кластер вместо цепочки), и вариант 4 не нужен.
Кстати, между нейронами показываются стрелочки – эту функцию можно отключать через контекстное меню ради ускорения прорисовки больших количеств нейронов.
История навигации
Пятница, Январь 22nd, 2010Чтобы не сохранять (в другой программе типа текстового редактора) идентификаторы нейронов и кластеров, к которым нужно будет еще раз вернуться при отладке, в Нейролабораторию добавлено ведение истории навигации. Идея – та же, что и в Visual Studio, когда ведется история перехода курсором по файлам и строкам внутри файла.
Следующие события сохраняются:
* Выделение и снятие выделения с нейронов
* Выделение текущей связи
* Подсветка циклов
* Копирование текста
Для всех из списка возможна отмена и повтор действия. Для того, чтобы отмена приводила к как можно более похожему состоянию, введены такие дополнения. Информация о выделении нейронов содержит два списка – с выделенными и погашенными нейронами. При отмене, списки меняются местами – исходно выделенные нейроны гасятся, погашенные – выделяются.
Некоторое действие (например, выделение цикла) может привести к множеству действий (например – к выделению нейронов, созданных в том цикле). Спровоцированное действие также попадет в историю навигации. Но отменять и повторять их по одиночке неправильно, нужно обрабатывать их вместе. Для автоматизации группировки используется создание объекта NLUndoLock. При создании, этот объект регистрируется. (Соответственно, и при уничтожении этого объекта, он также оповещает свое хранилище). Если других аналогичных живых объектов нету, то начинается новый блок действий, иначе используется старый. В таблице истории навигации, группировка в блоки показывается стандартными скобками. Красным маркером показывается текущая позиция курсора отмены/повторения, а по совместительству – и курсора занесения истории новых команд.
Понимание структуры ИНС-2
Четверг, Январь 21st, 2010Продолжение.
С ростом сложности ИНС, рассмотренных способов ориентирования в структуре ИНС становится недостаточно. Желательно визуально отображать структуру. Визуальное отображение на двухмерной карте ИНС мало помогает. Решение:
1) Применять дополнительную карту для отображения структуры
2) На этой дополнительной карте отображать не все нейроны, а только выбранного кластера и всех его признаков – рекурсивно. (Если не повезет, то из-за рекурсии на карту может попасть слишком много нейронов).
3) Вместо отображения каждого нейрона кластера, отображать кластеры высокоуровнево – одним квазинейроном на кластер. Для ИНС Б2 экономия в площади – девятикратная.
4) Вместо отображения кластеров в порядке создания, использовать двухмерную сортировку – по уровню иерархии и очередности срабатывания

Сравнение нового и старого способа просмотра цепочек
Чтобы было понятнее, зачем все это городить, можно взглянуть на фрагмент ИНС чуть посложнее:

Пример двухмерной сортировки – синие линии отделяют уровни иерархии
Детали устройства со стороны разработчика ИНС:
1) Если ИНС сообщает, что в ней есть кластеры, то при загрузке окон окружения ИНС создается и окно для отображения структуры нейронных цепочек
2) Каждый нейрон может переопределить функцию INeuroCluster* cluster()
3) В своей реализации INeuroCluster, зависящем от ИНС, можно возвращать список кластеров-признаков и кластера, предыдущего в цепочке памяти. Для ИНС Б2 используются кластеры нейронов всех связей с nEn и nIn.
Детали устройства со стороны разработчика интерфейса Нейролаборатории:
1) Для двухмерной сортировки и отображения структуры используется служебная ИНС. ИНС этого типа нельзя создать через интерфейс в качестве самостоятельной ИНС для исследований в НЛ.
2) Каждый нейрон этой ИНС соответствует кластеру главной ИНС.
3) Команду отображения цепочки можно вызвать несколькими способами: выбором кластера в таблице кластеров, двойным щелчком по идентификатору кластера в таблице нейронов, связей или нейронных цепочек, путем ввода идентификатора кластера в окне для отображения цепочек
4) После получения команды отображения цепочки по кластеру, у заданного кластера рекурсивно получаются все признаки и все кластеры, предшествующие в цепочках. Для них создаются соответствующие нейроны и связи между ними. Связи строятся двух типов – «признак обобщения» и «следствие».
5) Производится двухмерная сортировка. Все квазинейроны вначале имеют один и тот же уровень иерархии и время срабатывания. Начиная с кластера-инициатора, рекурсивно распространяется информация о том, что кластер-признак – ниже по иерархии. У заданного кластера, кластеры-признаки вместе с кластерами, предыдущими в цепочке, получают также информацию о том, что они должны сработать как минимум на цикл раньше, чем заданный кластер. В смысле реализации, вычисления производятся итеративно, а не рекурсивно – чтобы не переполнить стек. Если за всю итерацию ни один квазинейрон не получил инфорамцию о том, что его уровень иерархии надо еще более понизить, а максимальное время срабатывания – еще более отсрочить, то вычисления прекращаются. Если количество итераций превысило количество нейронов, это значит, что в данном фрагменте ИНС наблюдается зацикливание, и вычисления прекращаются.
6) Полученные относительные числа нормализуются: уровни иерархии и время срабатывания индексируются от нуля и выше, последовательно. По этим индексам строится отображение. В каждом столбце заносятся квазинейроны с одним и тем же интервалом максимального первого срабатывания. Уровни иерархии заносятся как отдельные строки и выделяются синими линиями. Выделение линий важно, так как в одном столбце могут быть несколько квазинейронов и несколько уровней, как на втором рисунке.
Понимание структуры ИНС в Нейролаборатории
Четверг, Январь 21st, 2010В Нейролаборатории, перед вами нейрон цепочки памяти. Как понять, что именно он запоминал? Вариантов много.
Можно сделать двойной щелчок в строке этого нейрона по ячейке с циклом создания нейрона. Тогда по всем окнам пройдет сообщение «подсветить цикл №Х». В окне истории ввода/вывода будет подсвечена та строка с вводом/выводом, цикл создания которой наиболее близок к подсвечиваемому. Наиболее вероятно – что будет подсвечен тот ввод/вывод, который и был связан с данным нейроном и кластером. Можно будет сориентироваться, что за текст обрабатывался системой в момент создания кластера.

Двойной щелчок по циклу создания нейронов
Можно иначе. В кластере этого нейрона, выбрать нейрон контура nIn, и в окне с таблицей связей посмотреть на все его признаки и, таким образом, увидеть, что именно запоминал данный кластер (или что он распознает). Можно перейти на запомненные признаки по двойному щелчку их идентификатора в таблице связей – но если нужно только узнать, что за буквы были запомнены, то достаточно посмотреть комментарий нейрона, на который указывает связь, в той же таблице связей, в столбце правее.
Обычно достаточно выделить нейрон контура nIn в таблице связей. Если уже выбран нейрон другого контура, и нужно выбрать nIn, то, чтобы не переключать внимание на таблицу нейронов, не открывать ее, не искать визуально границ кластера и nIn в нем, можно в окне с таблицей связей выбрать из выпадающего списка нейрон нужного типа – там все нейроны кластера того нейрона, связи которого уже отображаются.
Вариант с подсветкой цикла проще. Однако, он не подходит, если нейрон был создан во время обобщения других нейронных цепочек – так как никакого ввода/вывода и обмена с внешней средой в тот момент не было, а если и был – то не относится к обобщению. Не проблема. В ИНС обычно есть окно с логированием. В информацию каждой строки лога входит и цикл логирования. Хороший тон – заносить в лог информацию о том, что за цепочки выбраны для обобщения. В ответ на глобальное сообщение о подсветке цикла, таблица логов также подсвечивает строку с циклом, наиболее близком к циклу сообщения. Там будет текст типа «сон 2ВЦ обобщение: выбраны н-ы 901 и 869». Можно ввести идентификатор одного из нейронов в поле ввода идентификатора в таблице связей, и далее применять просмотр связей. Но вводить вручную долго. Вместо этого можно сделать щелчек средней кнопкой мыши в любой ячейке таблицы. Из текста в ячейке таблицы будут выделены числа, и показано окно с выбором, что сделать с любым из чисел – подсветить нейрон с таким идентификатором или цикл с таким номером. После нажатия на кнопку действия, окно само закроется.

Выделить цикл -> окно логов -> выделить нейрон
Но что, если запомнены высокоуровневые признаки, у которых нет комментария? Если бы вы отлаживали чужую ИНС подобно коду на ассемблере в чужой программе, то можно было бы самому задавать комментарии.
Для частичного решения проблемы применяется автоматическое назначение комментариев. Алгоритм следующий.
1) У сенсорных нейронов комментарии не меняются и соответствуют воспринимаемым буквам
2) У кластеров цепочек памяти, если была изменена – добавлена или удалена – хотя бы одна связь, выставляется флаг «пересчитать комментарий»
3) Один раз на каждую высокоуровневую итерацию происходит перерасчет комментариев.
4) Всем нейронам кластера дается одинаковый для всех комментарий. Поэтому можно говорить «комментарий кластера» вместо «комментарий нейрона».
5) Комментарий у кластера берется так: в скобках перечисляются комментарии всех признаков, которые входят в nIn, а разделяются они через вертикальную черту или иной разделитель. Например, сенсорный нейрон «а» запомнен кластером, кластер принимает комментарий «(а)».
6) Каждый признак, который запомнен кластером, рассматривается как цепочка. Вся такая цепочка заносится в комментарий. Например, некоторая цепочка запомнила слог «об», двумя кластерами – которые имеют комментарии «(о)» и «(б)». Если второй кластер это цепочки будет распознан и станет признаком некоторой другой цепочки, то он войдет в нее как «((о)|(б))»
7) После того, как комментарий кластера поменялся, информация о том, что нужно обновить комментарий, выставляется для всех зависимых от него кластеров – для кластера, следующего в цепочке, и для более высокоуровневых кластеров. Их комментарии будут обновлены в следующей итерации.
Показ границ линий расположения в 2d
Воскресенье, Январь 17th, 2010В дополнение к «№93 NL UI: Выбор координат нейронов для карты нейронов» ( http://neurocod.net/blog/tag/2009/04/№93-nl-ui-выбор-координат-нейронов-для-карт ). Чтобы было легче определять границы кластеров и нейронных цепочек, при «переводе строки» (расположения новых нейронов) в память заносится верхняя граница строки, и затем всегда отображается.
Смена режимов 1ВЦ и 2ВЦ
Суббота, Январь 16th, 2010Сначала схема работы ИНС, которая просматривает все совпадения и работает без разрывов.
1ВЦ нашел позицию. Эта позиция могла быть получена только на текущем шаге (найден второй кластер, у которого более одного общего признака получено за последний шаг), или за текущий и предыдущий шаги (найдена цепочка, у которой минимум один общий признак с прошлого шага и один общий за текущий). Поэтому, после нахождения позиции в 1ВЦ, в обеих цепочках, алгоритм должен перейти на шаг назад (чтобы учесть все варианты), а затем активировать эти предыдущие кластеры и начать работу с 2ВЦ.
Теперь представьте, что возможен разрыв в 15 шагов. После нахождения кандидата в 1ВЦ, по обеим цепочкам сигнал должен вернутся на 15 шагов назад. Ждать последовательного перехода сигнала назад по цепочке в 15 итераций, а потом еще и снова 15 шагов идти вперед? Слишком расточительно.
Решение: для перехода ведущего сигнала назад по цепочкам на сравнительно большое количество шагов, использовать «перескок назад» сигнала по связям. Какую выбрать схему соединений?
Наиболее простая схема – каждой позиции на цепочке соответствует свой нейрон (контур) перехода на N шагов назад. (На рисунке – схема 1). Преимущества такого решения – высокая точность: сигнал переходит на одно и то же количество шагов назад (кроме первых N нейронов, для которых цепочка еще не достаточно длинная). Недостаток – большое количество нейронов, у которых всего одна связь. Это неэффективно и в ЕНС, и в ИНС. Для ЕНС более подходит решение с локальным «накоплением» связей и одной посылкой назад. На рисунке – схема 2. С некоторым небольшим разбросом интервалов перехода можно смириться.
Но для ИНС, в системе с виртуальными связями, объект кластера может содержать обычный указатель на кластер, к которому нужно будет вернуться. Эта схема наилучшая – меньше всего памяти, наиболее точный переход, наименьшая вычислительная емкость.
Теперь по поводу создания таких связей и указателей. Нет нужды каждый раз программно проходить всю цепочку на N шагов назад для получения нейрона возврата. Объект «цепочка памяти» должен содержать текущий курсор возврата. При росте цепочки с нулевого размера, курсор задерживается на первом кластере. Все кластеры, которые добавляются в цепочку, создают возвратные указатели на курсор – на первый кластер. После того, как размер цепочки превысит N, с каждым новым добавленным кластером, курсор сдвигается на кластер вперед.
Но что делать с удалением кластера? Если на кластер ведут возвратные связи, то их нужно перенаправить. Если кластер был первым в цепочке, то связи нужно перенаправить на следующий в цепочке кластер, иначе – на предыдущий. Но чтобы знать о входящих связях, проще всего вернутся к обычным межнейронным связям. Чтобы не тратить ресурсы попусту на проход по всем нейронам контура торможения, такую связь можно обрабатывать в стиле обычного указателя. При распараллеливании ИНС, нейрон назначения может оказаться в другом отделе памяти (другого потока) – тогда вроде бы нужен возврат к обычной схеме прохода по всем нейронам. Но это не так: учитывая, что возвратов не много – до двух, в каждом разделе каждого потока можно предусмотреть две переменный, а не проход по всем нейронам.
Группировка истории нейроконтуров по итерациям
Пятница, Январь 15th, 2010Хочу XOR Надо
Воскресенье, Октябрь 25th, 2009Обновление Нейролаборатории. Из окна истории нейроконтуров одним нажатием клавиши можно создавать точки останова, срабатывающие при переходе ИНС к тому состоянию, которое было в выделенных строках в истории нейроконтуров. Эту возможность можно использовать несколькими способами:
* Для визуального определения периода цикла
* Для визуального поиска смены режима (перестают периодически встречаться точки останова данного типа). Если точек останова несколько, то в другом режиме будет наблюдаться другой период появления, так что визуальность смены режима сохранится, хотя и в меньшей степени
* Для остановки на заданном режиме. Полезно для действия «пропустить весь шаг алгоритма до следующей итерации» – чтобы не выискивать, когда начнется следующий шаг, и чтобы попасть точно на такую же позицию. Для пропуска всего высокоуровневого шага, нужно не попасть на действие нейроконтура, которое попадается несколько раз за данный шаг (если такое найдется).

Создание точек останова на заданный шаг кода ИНС
У писателей есть правило: если ничего не пишется – писать хоть по странице в день. (далее…)






