roboforum.ru

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

Нейронные сети

Re: Нейронные сети

zubr » 03 фев 2009, 19:07

Виталий писал(а):
изучаем матчасть..

Так и не понял к чему это? Что-то не так?

Все в порядке. Изучать-полезно. Констатировал.

Виталий писал(а):
есть еще топологии с обратной связью.

А есть более сильные и менее ресурсоемкие методы чем НС.

Они уже оффтоп :)

Re: Нейронные сети

EIN_ENGEL » 04 фев 2009, 13:04

Автору темы:
в Матлабе, в симулинке генерируешь простейшую нейронную сеть из нескольких нейронов. Там основные детали - массив весовых коэффициентов, массив смещений, умножитель, сумматор и функция активации. В симулинке показываются все связи между ними. Функцию активации можно задать как таблицу значений, или для начала использовать простейшую пороговую (простое сравнение).
В алгоритме всё выглядит:
1. составляешь массив входных значений. (сигналы с датчиков, например....)
2. Каждому входному значению соответствует своё значение в массиве весов (массив может быть сколько угодно мерным, это зависит от входов и архитектуры сети) Умножаешь каждый вход на соответствующее значение веса.
(пишешь результат, например, в ещё один массив)
3. Суммируешь результаты умножения из п.2.
4. сравниваешь результат п.3. с порогом и получаешь выход нейрона.
5. если сеть двух и более слойная, то теперь вычисленные выходы нейронов первого слоя являются входами для нейронов следующего слоя. Т.е. возвращаемся к п.1.
В атмегу вполне можно впихнуть.
Проблема даже не в том, как сделать сеть в железе, а в том, как её использовать. Что подавать на вход и что снимать с выхода.

Добавлено спустя 3 минуты:
Очень много информации на эту тему в статьях IEEE. И очень много инфы можно найти в пиринговых сетях.

Re: Нейронные сети

Alexandr14 » 17 фев 2009, 12:01

Приветик!
Случайно залез на этот форум и увидел обсуждение создания нейронной сети в железе :).
Лет так 6 назад я занимался нейросетями. Мой проект был программного обеспечения и делал небольшую задачу в виде распознавания образов.
В отношении сколько связей должно быть тут большой вопрос. В моей задаче строилось случайным образом несколько десятков вариантов сетевых структур, потом делалась попытка каждую из них обучить, после чего выбирались лучшие, после чего они объединялись спец. образом и создавались из лучших новые сети и т.д.. Т.е. была создана попытка поиска оптимальной сети.

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

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

Не критикуйте сильно, пишу то чем занимался 6 лет назад.
И так имеется узел, который должен реализовать скажем функцию гиперболы, думаю для микроконтроллера забить формулу не проблема.
Имеем несколько входов на которые подается сигнал в аналоговом виде, для каждого входа есть коэффициент. Подставляем с входов сигналы с коэффициентами в формулу, получаем уровень сигнала, который идет на другие узлы.
Наша задача это подбор коэффициентов, это и будет обучение.
теперь по поводу связей, можно для начала определится так есть входные датчики, которые воспринимают сигнал. Скажем если взять их 16х16 - 256 штук, и чтобы сильно не мучаться 4 - 6 радов по 10 узлов в каждом, причем каждый ряд соединяется с предыдущим. Т.е. каждый узел следующего ряда соединен со всеми узлами предыдущего ряда.

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

Чуть позже найду свои записи :)

Re: Нейронные сети

Angel71 » 19 апр 2009, 21:18

АлексAVR писал(а):нет схем. я нигде не встречал примеры принципиальных схем на основе НС. Принципы панимаю, но это абстракция. Нужны реальные примеры. Такое ощущение , как будто люди, которые пишут про НС никогда не реализовывали на практике это. Я конечно обязатель гляну ту книгу , что EdGull вы мне рекомендовали, если найду конечно. Если же вы компитентны в этой практике, скиньте ссылочку на схемку или выдложите. Буду благодарен

АлексAVR писал(а):Ну как зачем? Ну я дума принципы нейросетей можно реализовать как минимум на трех МК. ...

АлексAVR писал(а): Думаю ,что теории я накушался в доволь, чтобы приступить к практике.

:) да нет, из теории вы как раз почти ничего не поняли. простенькую нейросеть можно и на тиньке сделать, а для большой нейросети может и кластера из тысяч "нейрочипов" нехватить. всё от задачи зависит. прислушайся к неоднократным советам почитать теорию и попробовать сначала на компе поэксперементировать с нейросетями, зачем вам именно на контролёре сразу? поймёте что это, зачем и вообще, а нужно ли оно вам в принципе.
то что вы читали НС похоже к чистой теории относится, а там и смысла нет практические задачи на примерах реализовывать.
8) лан, лирика всё это. вопросс стоял в том что именно в железе делают. автоматические системы распознования номеров движущихся машин например. во всё мире уже давно полно таких приборов. самообучающиеся системы прокладки маршрута. разрабатывают системы для распознование агрессивного поведения (драки,... доделали или нет, незнаю, давно это было). в военной промышленности тоже куча всего: распознование объектов, например в области действия появляется объект, робот активируется, распознаёт что едет (танк, грузовик, БМП, легковушка, ...), потом смотрит свой/чужой и принимает решение атаковать или нет, если данный тип объекта его вообще интересует. у амеров одна фирма разработала обучаемый детектор оружия - с почти сто процентной точностью расспознаёт на рассояии конкретный тип оружия (ножи, пистолеты, автоматы, ...) и его количества. делали специально для полицейских. и еще куча всего, бпла, развед боты, роботы эвакуации,... чушь/фантастика/не может быть/... (нужное подчеркнуть). давно реальность. мало? у иностранцев есть куча конкурсов и соревнований, где автономные роботы должны чтот нетривиальное делать. например небольшой вертолёт вылетает в заданные координаты, пытается определить что там происходит и сообщает нужную информацию. на одном из таких турниров была задача вылететь в определённое место, определить есть ли пожар, найти есть ли в том месте люди и распознать в каком состоянии (подвижны или нет), сообщить на базу данные и вернутся. + по мелочам: не врезатся никуда, не зацепить кучу свисающих проводов,...
и это далеко не все, в железе ой как много чего уже сделано и не только на одних нейронках

Re: Нейронные сети

Anubis » 05 июн 2009, 09:37

Почитайте после про нейрокомпьютеры. Есть реальные устройства реализующие принципы нейронных сетей.
Вот здесь http://www.chipinfo.ru/literature/chipnews/200101/24.html

Re: Нейронные сети

=DeaD= » 05 июн 2009, 09:45

Дабл некро!
1. Некропост :P
2. Некролинк - статье уже 10 лет скоро, наверняка за эти годы что-то поменялось :wink:

Re: Нейронные сети

Lockdog » 12 окт 2009, 21:00

Есть прогресс в этом направлении, или тема заглохла?) Заинтересовался, хочу своих "муравьёв" программить на нейронных сетях. Возможно робота обучить, например, ездить, объезжать прпятствия и не падать с края стола? (естественно соответствующие датчики стоят)

Re: Нейронные сети

EdGull » 12 окт 2009, 21:03

лучше уж тогда на генетических алгоритмах...

Re: Нейронные сети

=DeaD= » 12 окт 2009, 21:05

А слабо на своих муравьях реализовать муравьинные алгоритмы? Чтобы они балончиками с краской брызгали и потом по цвету краски понимали что там такое - еда или что :)

Re: Нейронные сети

executer » 12 окт 2009, 21:14

слишком умный робот решит что безопаснее стоять на месте)

Re: Нейронные сети

Lockdog » 12 окт 2009, 21:16

EdGull писал(а):лучше уж тогда на генетических алгоритмах...

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

А слабо на своих муравьях реализовать муравьинные алгоритмы? Чтобы они балончиками с краской брызгали и потом по цвету краски понимали что там такое - еда или что

Боюсь, что я потом квартиру не отмою)))))

Re: Нейронные сети

=DeaD= » 12 окт 2009, 21:19

Дык не надо их в квартиру выпускать - сделать им "вольер" 1х2м - пусть там бегают :)
А чтобы не так очевидно было - дать им краску светящуюся в УФ и УФ-оптопару :)

Re: Нейронные сети

Lockdog » 12 окт 2009, 21:27

Не усложняй пока задачу, мне бы разобраться с тем, что есть, а потом уже буду фичи добавлять)

Re: Нейронные сети

=DeaD= » 12 окт 2009, 21:32

Ездить не падая, избегая препятствий конечно можно научить - вопрос только в том - есть ли смысл всё обучение проводить в реале? Там же итераций 200 может понадобиться, например? Это же запаришься + как обратную связь? Поднимаешь с полу и вводишь ему кнопкой "больно!" ?

Re: Нейронные сети

Lockdog » 12 окт 2009, 21:54

Я пока не сильно разбираюсь в этом, учу матчасть, потому не глубоко понимаю процесс обучения


Rambler\'s Top100 Mail.ru counter