SOINN — самообучающийся алгоритм для роботов

от автора

робот SOINN
SOINN – это самоорганизующаяся инкрементная нейронная сеть. Структура и алгоритм такой нейронной сети повидимому хорошо себя зарекомендовал в японской лаборатории Hasegawa (сайт — haselab.info), потому что он в итоге был взят за основу и дальнейшее развитие алгоритмов искусственного интеллекта шло путем небольших модификаций и надстроек к сети SOINN.

Базовая сеть SOINN состоит из двух слоев. Сеть получает входной вектор и на первом слое после обучения создает узел (нейрон) – определяющий класс для входных данных. Если входной вектор похож на существующий класс, мера похожести определяется настройками алгоритма обучения, то два самых похожих нейроны первого слоя объединяются связью, либо если входной вектор не похож не на один существующей класс, то в первом слое создается новый нейрон, определяющий текущий класс. Очень похожие нейроны первого слоя, объединенные связью, определяются как один класс. Первых слой является входным слоем для второго слоя, и по аналогичному алгоритму, с небольшим исключением, создаются классы во втором слое.

На основе SOINN созданы такие сети, как (далее представлены название сети и описание сети от ее создателей):

ESOINN — расширение нейронной сети SOINN обучается в онлайн режиме без стороннего вмешательства и без постановки задачи обучения. Это улучшенный вариант сети SOINN для on-line неконтролируемой классификации и топологии обучения. 1 – эта сеть состоит из одного слоя в отличие от двух слоев в SOINN; 2 – ее кластеры с высокой плотностью перекрытия; 3 – она использует меньшее количество параметров, чем SOINN; и 4 – она более стабильна, чем SOINN. Эксперименты на демо данных и реальных данных также показывают, что ESOINN работает лучше, чем SOINN.

ASC классификатор данных на основе SOINN. Она автоматически определяет количество опытных образцов и усваивает новую информацию, не удаляя при этом уже запомненную информацию. Она устойчива к зашумленным данным, классификация проходит очень быстро. В эксперименте, мы используем как демо данные так и реальные наборы данных для иллюстрации ASC. Кроме того, мы сравниваем ASC с другими результатами на основе классификаторов с учетом его классификации ошибок, сжатия и скорости классификации. Результаты показывают, что ASC имеет лучшую производительность и это очень эффективный классификатор (http://www.sciencedirect.com/science/article/pii/S089360800800141X).

GAM — общая ассоциативная память (GAM) это система, которая сочетает в себе функции другого типа ассоциативной памяти (AM). GAM-это сеть, состоящая из трех слоев: входной слой, слой памяти и ассоциативный слой. Входной слой принимает входные вектора. Слой памяти сохраняет входные данные в похожие классы. Ассоциативный слой строит ассоциативные связи между классами. GAM можете хранить и вызывать двоичную или не двоичную информацию, строить ассоциации многие-ко-многим, хранить и вспоминать, как статические данные, так и временную последовательность информации. Может вспоминать информацию даже если имеет неполные входные данные или зашумленные данные. Эксперименты с использованием двоичных данных в режиме реального времени получая статичные данные и данные временных последовательностей показывают, что GAM является эффективной системой. В экспериментах с использованием человекоподобных роботов демонстрирует, что GAM может решать реальные задачи и строить связи между структурами данных с различными размерами (http://www.sciencedirect.com/science/article/pii/S092523121200834X).

Новинка STAR-SOINN(STAtistical Recognition — Self-Organizing and Incremental Neural Networks) — для построения умного робота, мы должны развивать психическую систему автономного робота, которая последовательно и быстро учится у человека, его среды и Интернета. Поэтому мы предлагаем сеть STAR-SOINN — это ультрабыстрая, мультимодальная сеть обучающаяся в режиме реального времени и обладающая возможностью дополнительно обучатся через интернет. Мы провели эксперименты для оценки этого метода обучения и сравнили результаты с другими методами обучения. Результат показывает, что точность распознавания выше, чем система, которая просто добавляет условия. Кроме того, предлагаемый способ может работать очень быстро (примерно на 1 сек для изучения объекта, 25 миллисекунд, для узнавания объкта). Алгоритм смог выявить атрибуты «неизвестных» объектов путем поиска атрибутивной информации известных объектов. Наконец, мы решили, что эта система потенциально становится базовой технологией для будущих роботов.

SOIAM – модификация SOINN для ассоциативной памяти.

SOINN-PBR – модификация SOINN для создания правил с помощью условий если –> тогда (if-then)

AMD (Autonomous Mental Development) – робот с помощью этого алгоритма учиться решать различные задачи.

Блок-схема двуслойной сети SOINN:

Блок-схема двуслойной сети SOINN

Блок-схема однослойной сети SOINN:

Блок-схема однослойной сети SOINN

Ссылка на журнал в формате pdf, где дается описание нескольких разновидностей сетей SOINN на английском и где я делал пометки на русском (журнал я запаковал в архив rar, исходный размер журнала 20 мб (читать онлайн), размер архива 13 мб (скачать архив).

Ссылка на еще один журнал в формате pdf, где дается описание нескольких разновидностей сетей SOINN на английском и где я делал пометки на русском (журнал я запаковал в архив rar, исходный размер журнала 4мб (читать онлайн), размер архива 2,5мб (скачать архив).

В русскоязычном интернете про сеть SOINN есть только пару статей о том, что робот работая по этому алгоритму сам находит решения поставленных задач и если ему не объяснили как решить задачу, то он подключается к интернету и ищет решение там. Но примеров работы алгоритма и кодов я не нашел. Только была одна статья на robocraft где приведен маленький пример работы базового алгоритма сети SOINN в связке с OpenCV. Если кто-то экспериментировал с сетью SOINN было бы интересно посмотреть на код, если возможно.

ссылка на оригинал статьи http://habrahabr.ru/post/188230/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *