roboforum.ru

Технический форум по робототехнике.

 

Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Обсуждаем рождающиеся мысли и результаты экспериментов.

Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 29 ноя 2009, 20:57

Вводный пост для тех, кто хочет присоединиться к обсуждению проблемы:

Мысль №1.

Масса подходов к созданию элементов ИИ и неких подобий ИИ затыкается на самых первых шагах - что же есть этот самый ИИ и как понять, что мы его создали. Я считаю, что создание даже подобия ИИ - это прежде всего проект. Теория управления проектами гласит, что прежде чем начинать проект мы должны иметь критерии оценки, что проект завершен успешно, чтобы 100% понимать, куда мы идём.

Чтобы выполнить это требование я предлагаю изначально сформулировать набор требований к создаваемому подобию ИИ (далее "ПИИ", чтобы не путаться с замороченным понятием ИИ) и уже в дальнейшем проектировать его исходя из поставленной задачи.

Мысль №2.

В качестве основного свойства, которое мы хотели бы получить от нашего ПИИ - способность самостоятельно обучаться и адаптироваться к среде в которой он действует (считаем, что среда по физическим законам и структуре близка к нашему реальному миру).

Чтобы нам не пришлось придумывать хитрых способов определения целей существования робота - мы сделаем просто, зададим ему базовые мотиваторы типа боль (уровень повреждений), голод/сытость(уровень заряда батарей) и т.п.

Критерии оценки успеха проекта:

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

Один из типовых тестов может быть таким - робот находится в комнате, в которой кормушка закрыта воротами, которые открываются при нажатии на кнопку, кнопку можно придавить находящимся в комнате предметом Х, который робот может двигать. Либо кнопка открывает ворота на какое-то время. Роботу могут показать что кнопка открывает ворота или он может попробовать сам догадаться потыкаться во все предметы и понять что делает кнопка и что он может двигать предмет Х.

Первичные мысли по решению задачи проекта

Одной из основных проблем при построении робота с элементами ИИ является создание новых образов, такими какими их будет "видеть" это самый элемент ИИ :) то есть никаких явных программирований, пусть даже показываний пальцем, система должна иметь возможность самостоятельно без всяких подсказок разобраться в окружении что и как связано и какие действия вызывает.

Для этого надо какую-то распознавалку, которая будет иметь возможность кластеризации полученных данных в предполагаемые образы. Это в базовом варианте :)

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

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

Если даже в базовом варианте это реализовать и робот сможет разбираться в каких-то простых окружениях - думаю уже будет интересно :)

Ну и наконец - какие базовые проблемы нужно решить изначально для этого базового варианта:

Надо какую-то распознавалку совмещенную с кластеризатором, которая сможет отрабатывать инфу с камеры, правда видимо сразу надо будет её делать с обработкой серии кадров и движения. Даже не движения робота при статичном окружении, а при движении объектов относительно окружения, иначе особых способов выделить объекты я не особо вижу. Ну кроме тупого "по расстоянию", но это не выделить двери комнаты относительно стены, кнопку относительно панели вокруг неё и т.п. Короче ничего интересного кластеризация по расстоянию сама по себе не даст.

Мысли возникшие в ходе обсуждения

1. Надо какое-то подобие пространственного мышления, в котором ПИИ сможет строить модели развития событий и выбирать свои действия.

2. Чтобы унифицированно подходить к распознаванию образов предлагается всю информацию со всех сенсоров после обработки препроцессорами скидывать в единое информационное пространство восприятия (далее ЕПВ), из которого уже в унифицированном формате модуль формирования и распознавания образов будет пытаться извлечь кандидаты в образы и распознать уже запомненные образы.

3. Надо как-то работать с составными образами, для этого предлагается выход с разпознавателя образов через так же препроцессор завернуть в часть ЕПВ.

4. Чтобы действовать на разных уровнях планирования ПИИ может строить несколько планов из цепочек образов, например, уровня стратегического плана, тактического, оперативного.

Мысли возникшие в ходе обсуждения. Часть 2
1. Надо решать задачу целиком, пусть и "худо-бедно" и только потом заниматься улучшением её отдельных блоков, поэтому если задачу разбили на блоки и какой-то блок понятно как решить хоть в базовом простейшем варианте - пока его бросаем, пока не будет ясно как решить в базовом варианте все блоки и как они между собой будут работать.

2. Чтобы не возникло ощущение, что обсуждается сферический конь в вакууме - предлагаю "худо-бедное" решение формирователя и распознавателя образов с визуальных данных. Прежде всего будем выделять области с единым или близким к единому цвету. Если какой-то контрастный к этому цвету объект будет окружен такой областью - это кандидат на будущий образ, который мы просто сохраним с маской чтобы выделить его в дальнейшем из фона. Кроме того отличным вариантом выбора кандидата на образ - будет область находящаяся в движении на неподвижном фоне. Собственно хороший способ привлечь внимание человека к какому-то предмету - помахать им у него перед глазами.

3. Распознавать при этом мы можем достаточно тупым способом - почти перебором. Если очень не верится, что это реально - могу накидать примеры, хотя я считаю, что у нас полно других проблем и не гоже тут заниматься изобретением веосипедов :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24053
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: Pascal / C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение flyroman » 04 дек 2009, 00:50

flyroman писал(а):пока временами сижу у подруги

в интернете всмысле...

Добавлено спустя 7 минут 51 секунду:
вообще, думается мне., навскидку...(я пока всю ветку не прочитал).....
нужно подсоеденить к компу микрофон и видеокамеру......

И думаю, пока на настольном КОМПЬЮТЕРЕ не будут решены такие проблеммы:
- добиться хоть какого-либо приемлемого распознования видеообразов и их классификации по признакам...
- добиться хоть какого-либо приемлемого распознования звукообразов....

, то никуда дальше двигаться нельзя, и переходить на платформы МК и т.п. рано...

Вспомните маленьких детей, они видят и слышат....а соотнося изображение - звуку, или звук-изображению...они учатся...и строят матрицу знаний...
«Это невозможно» — сказала Причина. «Это безрассудно!» — заметил Опыт. «Это бесполезно!» — отрезала Гордость.
«Попробуй» — шепнула Мечта…
Аватара пользователя
flyroman
 
Сообщения: 1266
Зарегистрирован: 12 янв 2009, 21:39
Откуда: Чебоксары, Чувашская Республика
Skype: roman.buhalov
прог. языки: Basic, VisualBasic,Pascal, Delphi, ASM
ФИО: Роман Сергеевич

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Angel71 » 04 дек 2009, 03:40

flyroman писал(а):И думаю, пока на настольном КОМПЬЮТЕРЕ не будут решены такие проблеммы:
- добиться хоть какого-либо приемлемого распознования видеообразов и их классификации по признакам...
- добиться хоть какого-либо приемлемого распознования звукообразов....
, то никуда дальше двигаться нельзя, и переходить на платформы МК и т.п. рано...

:) половина форумчан тоже так считает
Аватара пользователя
Angel71
 
Сообщения: 9231
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 04 дек 2009, 09:45

flyroman писал(а):- добиться хоть какого-либо приемлемого распознования видеообразов и их классификации по признакам...

1. А кто сказал что то, что есть сейчас - не приемлимо? Вы разработку EDV'а видели? Пробовали в работе? Я пробовал. Вполне себе распознавалка хорошего качества и скорости.

flyroman писал(а):- добиться хоть какого-либо приемлемого распознования звукообразов...

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

flyroman писал(а):, то никуда дальше двигаться нельзя, и переходить на платформы МК и т.п. рано...

Я не объявлял задачей переход на платформу МК вроде?

flyroman писал(а):Вспомните маленьких детей, они видят и слышат....а соотнося изображение - звуку, или звук-изображению...они учатся...и строят матрицу знаний...

Какое отношение это имеет к поставленной в первом посте задаче? Повторюсь - я не собираюсь здесь создавать ИИ в сильном смысле. Я хочу решить интересную задачу (надеюсь не только мне интересную), объявленную в первом посте. Если хочется поменять задачу - предложите свою. Говорить про ИИ вообще нет никакого желания, для этого есть отдельный раздел на форуме, там как раз цели не объявлены - хоть про что можно перетереть :).
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24053
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: Pascal / C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 06 дек 2009, 03:24

Подниму-ка темку :)

А вот и реализация "мозга" нашлась... :)

Кратко суть:
Моделирует динамическое поведение нейросети
(БЕЗ моделей отдельных нейронов, как я понял) -
автоматически получаем "понятие времени", "уровни "абстракции"...

http://www.numenta.com/about-numenta/nu ... nology.php

Вроде как халявная рисёч-версия пока (?) доступна
(требуется регистрация на сайте).
Описан API.
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Angel71 » 06 дек 2009, 03:46

:oops: стрёмно как-то время на него тратить, закрытый проект однако.
Аватара пользователя
Angel71
 
Сообщения: 9231
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 06 дек 2009, 04:22

Ну... принципы там более-менее описаны, я правда математику уже лет 15 как перестал понимать :(
Мне показалось, что это что-то вроде многомерной HMM с контролем устойчивости.

Фичи:
- входные данные (для одной сети) могут иметь разную природу и физический смысл
- входные данные анализируются во времени
- оно не столько "классифицирует", сколько "выдвигает гипотезы"
- вроде как может учиться "без учителя"

Добавлено спустя 27 минут 1 секунду:
закрытый проект однако

А "распознавалка EDVa" открытая что-ли?
Тут хоть формУлы какие-то нарисованы :)
Последний раз редактировалось Michael_K 06 дек 2009, 04:46, всего редактировалось 1 раз.
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Angel71 » 06 дек 2009, 04:28

:crazy: так я и "ассоциативную память EDV`а" (Navigation ToolKit или как это еще можно назвать) не планирую использовать. кто хочет, пусть и использует. во первых закрыто всё и разработчик всего-лишь 1. запарки на работе и проект приостоновится на неизвестое время + куча других нюансов.
:) максимум из закрытого (и без разницы, платного или нет), это если очень крупная контора на подобии микромягких (интела,...) что-то выпустят
Аватара пользователя
Angel71
 
Сообщения: 9231
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 06 дек 2009, 12:34

Ну я считаю, что нужно делать открытый для нас (возможно с нуля свой писать) модуль, но по максимуму использовать все что есть уже из идей. Иерархические классификаторы - это очевидное решение. А вот что они там со временем замутили я не понял - распознает оно образы движений или нет? Ну и вообще могли бы пачку примеров с видеороликами выложить - что их HTM хвалёная может делать :)

Добавлено спустя 1 минуту 24 секунды:
Пока похоже, что у них просто экстраполятор какой-то написан.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24053
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: Pascal / C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 06 дек 2009, 13:18

Ну, примеров и пдф-ок там довольно много... пошарьтесь, если интересно.

Там по иерархии распространяется как бы "волна" во времени,
таким образом по мере перехода от слоя к слою теряется
детализация как во времени так и в "пространстве".

Ребята в общем и не утверждают, что они придумали что-то ПРИНЦИПИАЛЬНО новое.
Просто это хорошая реализация нескольких идей из нейросетей.
При этом производительность (по сравнению с прямым моделированием нейронов)
вроде как лучше.
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 06 дек 2009, 23:28

Ок... почитал повнимательнее про HTM от Нументы...
Что-то не вдохновило, хотя как распознавалка она может и неплохая...

Следующая попытка найти кандидата на "моСк" - CTRNN :)
Вложения
mikeblow_fcs.pdf
(201.79 КиБ) Скачиваний: 16
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 06 дек 2009, 23:31

А графики там специально запоганены? :)

И в целом - что там за фишка? Я что-то про нейросети опять увидел только при беглом обзоре :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24053
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: Pascal / C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 07 дек 2009, 01:18

Фишка все та же:
- автономное динамическое поведение
(то есть голова "думает" даже когда нет входных сигналов
входные сигналы лишь "модулируют" и без того происходящий процесс
"думанья")
- ввод временных понятий.

Кстати, попадалось что-то про сравнение
CTRNN c GasRNN и еще какими-то модификациями нейросетей
в задаче автономного обучения четырехногой ходьбе...

Добавлено спустя 2 минуты 3 секунды:
Кстати, идея давнишняя, есть много модификаций и исходников

Добавлено спустя 2 минуты 15 секунд:
А нейросети... ну можно считать, что это мои тараканы :)
Я вовсе не настаиваю именно на нейросетевой реализации,
просто не вижу подобных свойств у других реализаций...
(GA - не в счет, это совсем в сторону)

Добавлено спустя 1 час 7 минут 37 секунд:
Пара десятков нейронов в CTRNN-сетке
самообучается поднять и удержать маятник вертикально,
не имея информации об угловой скорости:
Вложения
AR2487.pdf
(779.51 КиБ) Скачиваний: 13
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 07 дек 2009, 17:55

Сложу сюда пока...
Эволюция фотоворов (CTRNN 5 нейронов + GA)
mikeblow_alife.pdf
(246.1 КиБ) Скачиваний: 17
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение EDV » 08 дек 2009, 10:13

Michael_K писал(а):А "распознавалка EDVa" открытая что-ли?
Тут хоть формУлы какие-то нарисованы :)


Технология AVM не открытая, но коммерческая. Если на её основе получится сделать успешное решение в области робототехники, тогда будет возможным сотрудничество на коммерческой основе (исходные тексты алгоритма AVM можно купить). А пока что алгоритм AVM можно использовать как SDK, в придачу я могу обеспечить всестороннюю поддержку пользователей желающих программировать под AVM SDK (разъяснить что как работает, поменять программные интерфейсы так как удобно пользователю, обеспечить документацию и комментарии в исходниках на русском языке).

А может ли обеспечить вас всем этим компания «Numenta»?
Последний раз редактировалось EDV 08 дек 2009, 13:34, всего редактировалось 1 раз.
Аватара пользователя
EDV
 
Сообщения: 1009
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина (Донбасс), Лисичанск
ФИО: Дмитрий Еремеев

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Michael_K » 08 дек 2009, 12:23

У компании нумента УЖЕ хорошо описан _принцип_ работы.
Может быть в конкретной реализации он и оптимизирован,
но данных вполне достаточно, чтобы повторить формальный алгоритм.
(Например, чтобы оценить требования к вычислительной мощности,
портировать на другой проц, ось, язык программирования и т.д. и т.п.)

Впрочем, я уже писал, что сейчас просто распознавалки лично меня не интересуют.

А так, безусловно, кого-то может привлекать возможность пообщаться с разработчиком,
почитать "документацию и комментарии на русском языке"... Я ж не против...
Флаг им в руки.
Аватара пользователя
Michael_K
 
Сообщения: 6034
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Пред.След.

Вернуться в Идеи

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Mail.ru counter