roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 14:18

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 173 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 12  След.
Автор Сообщение
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 25 авг 2012, 23:04 
Не в сети
Аватара пользователя

Зарегистрирован: 26 янв 2012, 03:59
Сообщения: 1341
Откуда: Казань
прог. языки: LabVIEW
ФИО: Никита Есенин
самая флеймовая тема. еще законы Азимова вспомните.
"хорошо", "плохо" как и "вред", "безопасность" понятия растяжимые. зависят от среды,ситуации,взаимодействующих объектов и собственно самого субъекта, делающего определения (_______добавить условие)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 25 авг 2012, 23:19 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
Dead, имхо, тут все куда интереснее. Например, зарядка в среде где плохо (сыро/жарко/итд), и хорошо и с некоторых уровней заряда АКБ необходимо.. что в случае просто хорошо может легко быть отвергнуто по причине сыро/жарко/итд..


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

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 25 авг 2012, 23:36 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Duhas, может оно конечно и "куда интересней", только если есть нормально определенное "плохо", то хорошо можно определить по указанной мной формуле. То что ты описываешь - это уже попытка разобрать причинно-следственную связь. А с точки зрения "хорошо-плохо" для обучения нейросети нужно лишь оценивать "отработанный промежуток времени" на предмет комфортности (там нет планирования - что будет хорошо, а что будет плохо, там только постфактум корректировка связей).

Добавлено спустя 1 минуту 47 секунд:
Nesenin писал(а):
самая флеймовая тема. еще законы Азимова вспомните.

Вот этого не надо. Тут надо будет разбирать причинно-следственные связи.
Топикстартеру для обучений нейронки всего лишь надо проинтегрировать показания датчиков "плохости" за нужный интервал и выдать интегральный показатель "плохости" на вход обучалки.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 26 авг 2012, 00:06 
Не в сети

Зарегистрирован: 16 окт 2009, 02:57
Сообщения: 11
Откуда: Биробиджан
=DeaD= писал(а):
gar_anat, ну вы даёте, если у вас известно, что "плохо" от 0% до 100%, то очевидно, что "хорошо" можно определить так: хорошо=100%-плохо.


С формулой не согласен. Если объект будет находится в пустом помещении и сработает нейрон, отвечающий за команду...допустим захватить предмет, сеть решить что решение 100% правильное. Плохого же ничего не произошло, следовательно 100%-0=100%. Так он и будет стоять и хватать воздух, думая, что все правильно делает :) Верный ответ: Хорошего - 0, Плохого - 0. Реакция - ослабить весовое значение.

Что-то я уже сам понял, что какую-то философскую тему запустил, а не предметную. Придется искусственно стимулировать.

Всем большое спасибо, не ожидал столько внимания и такой оперативности.

_________________
Дорогу осилит идущий.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 26 авг 2012, 01:16 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Неверно. Если он будет стоять и хватать воздух просто так, значит через некоторое время у него кончится питание, а значит это плохо. Вопрос лишь в том, какой прошедший интервал вы оцениваете при обучении.

Добавлено спустя 23 минуты 54 секунды:
gar_anat писал(а):
Так он и будет стоять и хватать воздух, думая, что все правильно делает :) Верный ответ: Хорошего - 0, Плохого - 0. Реакция - ослабить весовое значение.

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

Добавлено спустя 1 минуту 37 секунд:
И еще - когда вы перегружаете робота заранее определенным безумно длинным списком "это хорошо, это плохо" - считайте, что вы уже занимаетесь его прямым программированием, зачем вам нейросеть - становится не совсем ясно, берите тогда нечеткую логику и вперед ;)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 26 авг 2012, 03:14 
Не в сети

Зарегистрирован: 15 дек 2010, 16:43
Сообщения: 118
Откуда: Тверь
прог. языки: С++
gar_anat писал(а):
И вот на этой самой бумажке у меня возникло требование: для обучения гипотетического нейрона необходимо подкреплять действия нейрона положительным/отрицательным стимулом. По принципу, получилось хорошо – закрепить рефлекс, нехорошо – ослабить.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 26 авг 2012, 07:55 
Не в сети
Аватара пользователя

Зарегистрирован: 13 июл 2012, 05:07
Сообщения: 220
Откуда: Челябинск
прог. языки: C++
ФИО: Дмитрий Толмачёв
Жить - хорошо (а хорошо жить - ещё лучше). Отсюда следует, что наоборот - плохо.
Казалось бы - чистая философия (да ещё в несколько юмористической форме). Но на практике применется элементарно:

gar_anat писал(а):
Если объект будет находится в пустом помещении и сработает нейрон, отвечающий за команду...допустим захватить предмет, сеть решить что решение 100% правильное. Плохого же ничего не произошло, следовательно 100%-0=100%. Так он и будет стоять и хватать воздух, думая, что все правильно делает :) Верный ответ: Хорошего - 0, Плохого - 0. Реакция - ослабить весовое значение.

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

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 27 авг 2012, 16:22 
Не в сети

Зарегистрирован: 23 июл 2012, 15:24
Сообщения: 1480
Э... По поводу ресурсов. Без специализированного "железа" в нейросетях ИМХО ловить нечего. Писал такую штуку для обработки видеоизображений. Трёхслойная нейросеть 25-25-1 (для матрицы 5Х5) обучалась на 2ГГц проце НЕДЕЛЮ круглосуточной непрерывной работы, чтобы отслеживать края букв. В принципе работает. Но...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 27 авг 2012, 16:48 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Нейросети вроде неплохо должны реализовываться на OpenCL или CUDA.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 27 авг 2012, 18:15 
Не в сети

Зарегистрирован: 15 дек 2010, 16:43
Сообщения: 118
Откуда: Тверь
прог. языки: С++
esisl писал(а):
Э... По поводу ресурсов. Без специализированного "железа" в нейросетях ИМХО ловить нечего. Писал такую штуку для обработки видеоизображений. Трёхслойная нейросеть 25-25-1 (для матрицы 5Х5) обучалась на 2ГГц проце НЕДЕЛЮ круглосуточной непрерывной работы, чтобы отслеживать края букв. В принципе работает. Но...


Процесс обучения может быть существенно более ресурсоемким чем функционирование уже обученной сети.. все это очень вареабельно, можно и один нейрон неделю общитывать.. и да, CUDA сейчас в моде


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 27 авг 2012, 22:41 
Не в сети

Зарегистрирован: 23 июл 2012, 15:24
Сообщения: 1480
Дело в том, что математика там:
а) в принципе нехитрая
б) в чистом виде ни каких параллелирующих хитростей не допускающая
Потому, ядро алгоритма, будет отличаться у разных систем категорически непринципиально и занимать пару экранов текста :)
Возможны однако хитрости типа включения в библиотеки предобученных на типовые задачи сетей. Но их можно использовать только именно в таком качестве. Например, для предварительной "очистки" сигнала от типовых типов шума.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 28 авг 2012, 00:14 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Нейросеть не допускает распараллеливания? Круто.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 28 авг 2012, 01:42 
Не в сети
Аватара пользователя

Зарегистрирован: 16 мар 2011, 01:23
Сообщения: 45
Откуда: Тверь
прог. языки: C/С++ Java
gar_anat писал(а):
моя цель сделать сеть из нескольких штук нейронов, не более 10.

Немого странно: обычно рассматривают сеть нейронов. Сам по себе нейрон - это некий триггер с определенным пороговым значением. И интересен результат срабатывания именно сети (комбинации), причем из довольно большого количества нейронов.
Если вы имеете в виду другое - используйте, пожалуйста, иную терминологию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 28 авг 2012, 06:30 
Не в сети

Зарегистрирован: 19 май 2006, 18:30
Сообщения: 25
Откуда: Великие Луки
Если более обобщить всё, то хорошо это выжить\функционировать для робота =) + припоять ему какую нить цель, дурацкую какую нибудь, но цель. Начинать можно и с 1го нейрона, какой будет 1й такой будет и миллионный. Сам этим занимаюсь и это очень интересно и весело. Желаю всяческих успехов автору


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Что такое хорошо, а что такое плохо?
СообщениеДобавлено: 28 авг 2012, 18:34 
Не в сети

Зарегистрирован: 23 июл 2012, 15:24
Сообщения: 1480
Реализация нейросети на Фон-Неймановской машине параллелить не позволяет. Во всяком случае на классических, даже вот многоядерных машинках ничего не распараллелишь. Там считат особо нечего, там надо данные постоянно передовать по "все-ко-всем".
Для параллеки городят всякие эрзацы типа "неполносвязных графов". Оно работает, но это не для самодельщиков. Пока :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 173 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 12  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO