roboforum.ru

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

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




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

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

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

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


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

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

Это надо топик-стартера спросить :) я пока не оценил "вам это не надо", как попадание в тему :)

kran писал(а):
=DeaD= писал(а):
Кстати, нейросети еще кроме прямого назначения могут быть использованы как алгоритм общего назначения, где результирующая нейросеть является закодированным ответом на какую-то задачу.
Ну вот, то сами против кодирования, то соглашаетесь, что бывает и так кодируют. Кто кодирует, и действительно - чем отличается от программирования?

Закодированный - в смысле через некоторое преобразование можно из результирующей нейросети найти ответ на свою задачу.

kran писал(а):
Не знаю, как для топик-стартера, а для меня сейчас как раз это самое интересное. Я предполагаю, что обучают по эталонам. Такая-то комбинация входных сигналов - такая-то комбинация выходных.

Да, так и есть, и мера отклонения выходных сигналов от требуемых в эталоне - это и есть "плохо\хорошо".

kran писал(а):
Но это по-моему имеет смысл лишь в случае очень большого количества входных комбинаций нелинейных сигналов (фондовая биржа типа). Когда мы не можем вручную их перелопать или придумать простой алгоритм.

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

kran писал(а):
Для датчиков заряда и температуры-влажности всё настолько просто, что городить здесь ИНС совершенно не нужно. Имхо достаточно задать приоритеты и пороговые значения. Мол, если очень горячо, каштаны (т.е. батарейки) из огня не таскаем - всё равно сдохнем от перегрева, лучше уж дохнуть от голода - дольше проживём, может огонь раньше потухнет.

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

Добавлено спустя 4 минуты 15 секунд:
kran писал(а):
Ещё одну классическую задачу вспомнил. Есть коллекция фильмов. Есть юзер, который наставил оценок "нравится-не-нравится". Ну или наше "хорошо" и "плохо" возьмём, один хрен. Это эталон, готовый. И вот приходит куча новых фильмов, и надо юзеру что-то посоветовать. Всё, конец задачи, можно начинать решать.

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

kran писал(а):
Хотя порнуху так вроде и цензурят иногда.

Там всё банальней в базовом варианте. % телесного цвета и вперед ручную допроверку проводить.

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

Для любого метода можно найти задачу, где он не подходит. И что?

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


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

Зарегистрирован: 15 дек 2010, 16:43
Сообщения: 118
Откуда: Тверь
прог. языки: С++
=DeaD= писал(а):
Fayras писал(а):
как как.. с учителем или без :bad:

Учитель то что делать будет? Ручками коэффициенты назначать? :)

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


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

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

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


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

Зарегистрирован: 15 дек 2010, 16:43
Сообщения: 118
Откуда: Тверь
прог. языки: С++
=DeaD= писал(а):
А с чего вы сударь решили, что я не знаю как обучаются ИНС?

ну вы предположили что учитель должен обучать ручками и полагаете что для обучения нужно наличие хорошо\плохо..
если конечно это вы так иронизируете.. то вопросов нет


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

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

А если вы про подходы, кто определяет "хорошо\плохо", то их поболее будет, чем с учителем или без. Навскидку:
1. Пакет эталонных тестов;
2. Учитель;
3. Симулятор;
4. Реальный мир;

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


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

Зарегистрирован: 15 дек 2010, 16:43
Сообщения: 118
Откуда: Тверь
прог. языки: С++
=DeaD= писал(а):
Когда говорят про учителя или нет, вместо обсуждения главного, что считать "хорошо\плохо", то как раз у меня возникает вопрос - если учитель не сможет сказать сети "хорошо\плохо", то как он её учить то будет?

это и называется обучением без учителя..
хотя опять же хорошо\плохо для обучения сети даже с учителем ненужно.. нужен набор входных данных и соответствующих им выходных - это и есть учитель
=DeaD= писал(а):
А если вы про подходы, кто определяет "хорошо\плохо", то их поболее будет, чем с учителем или без. Навскидку:
1. Пакет эталонных тестов;
2. Учитель;
3. Симулятор;
4. Реальный мир;

ну вот это как раз велосипед


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

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

Я эту вашу фразу понял вне этой терминологии (с человеком или без).

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


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

Зарегистрирован: 15 дек 2010, 16:43
Сообщения: 118
Откуда: Тверь
прог. языки: С++
ага, есть такое дело :)


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

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

Я почему-то подумал, что эта волна по слоям идёт от каждого R-нейрона отдельно, в зависимости от его личного отклонения от его личной эталонной нормы, и единое общее "плохо" вообще никогда не подсчитывается. Но если это не так, то получается, что на предыдущий слой идёт одинаковый сигнал "вы все ошиблись вот на столько в среднем"? Хм. А точно это так работает? Что же тогда идёт на второй с конца слой, на третий?

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

=DeaD= писал(а):
Там всё банальней в базовом варианте. % телесного цвета и вперед ручную допроверку проводить.
Я бы ещё добавил характерные возвратно-поступательные ритмы, по N кадров: телесный - не телесный; телесный - не телесный... А если фрикций нет - то это уже эротика. :)

=DeaD= писал(а):
Для любого метода можно найти задачу, где он не подходит. И что?
Ну... может сказать топик-стартеру, что ему не подходит? :oops:
Вот именно под его задачу. Он похоже как раз нашёл неподходящую задачу для этого метода. Или неподходящий метод для задачи - смотря что ему больше надо. С простой ИНС поиграться или с простым роботом.


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

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

Я почему-то подумал, что эта волна по слоям идёт от каждого R-нейрона отдельно, в зависимости от его личного отклонения от его личной эталонной нормы, и единое общее "плохо" вообще никогда не подсчитывается. Но если это не так, то получается, что на предыдущий слой идёт одинаковый сигнал "вы все ошиблись вот на столько в среднем"? Хм. А точно это так работает? Что же тогда идёт на второй с конца слой, на третий?

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

kran писал(а):
Я бы ещё добавил характерные возвратно-поступательные ритмы, по N кадров: телесный - не телесный; телесный - не телесный... А если фрикций нет - то это уже эротика. :)

Гусары, хватит :ROFL:

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

Может у него цель ИНС освоить...

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


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

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


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

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Не, лучше теорию понять, практику вы как проверять будете, что у вас всё получилось? Это же не 2+2=5, или вы по виду сети и коэффициентам на глаз сможете определять, правильная сеть или нет? :)

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


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

Зарегистрирован: 13 июл 2012, 05:07
Сообщения: 220
Откуда: Челябинск
прог. языки: C++
ФИО: Дмитрий Толмачёв
Вложение:
ant_overview.png
ant_overview.png [ 144.97 КиБ | Просмотров: 1748 ]
Это диаграмма взаимодействия классов. Видно, что не 2+2. Разумеется, по ней нельзя сказать, что делает программа, правильно сделала или нет. Уж точно язык Java нельзя выучить по ней, или алгоритмы понять. Но сам характер взаимодействий просматривается отлично, на мой взгляд. Возможно, ничего столь же информационно наполненного я не увижу при отражении процесса обучения нейронной сети. Но хотелось бы посмотреть.

Как-то мне попадались параллельные графики, где видно было динамику изменения веса каждой связи (для очень небольшой сети, или лишь для части сети). Но там нельзя было понять, какой софт это нарисовал. Хотя заметно было, что это кусочек интерфейса какой-то программы, а не просто графики из книги/статьи.

Может кто-нибудь подскажет софт подходящий? Из платного я вот вижу NeuroSolutions 6.12, а из бесплатного пока нашёл FANN Library 2.2.0 с кучкой инструментария.


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

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

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


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

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


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

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


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

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