GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.6 (12)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Обучение сети
3d6
Сообщений: 325
На: Обучение сети
Добавлено: 16 янв 09 20:09
Цитата:
Автор: tac

перцептрон ВСЕГДА строит такое пространство (отображение входов), в котором образы ВСЕГДА линейно разделимы - этим и занимается первый слой перцептрона

Это происходит только если число связей достаточно, чтобы запомнить все входные примеры. И в 99% реальных задач такое поведение называется не решенной задачей, а переобученной сетью Поскольку в реальных задачах нас интересует процент правильной классификации не на обучающей выборке, а на тестовой.
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 16 янв 09 20:41
Цитата:
Автор: 3d6
Это происходит только если число связей достаточно, чтобы запомнить все входные примеры. И в 99% реальных задач такое поведение называется не решенной задачей, а переобученной сетью Поскольку в реальных задачах нас интересует процент правильной классификации не на обучающей выборке, а на тестовой.


Ну, если упрощать то да именно в этом случае, одно из самых базовых требований - это наличие столько А-элементов, сколько стимулов запоминаем. Число собственно связей здесь лишь косвенно влияет как правило 20-50 связей на один А-элементт (они обеспечивают равновероятность активации при любом размере освещенной части сетчатки) больше чем достаточно при любой размерности.

Касательно переобученности - ну это дискуссионно, но тут я удивляюсь зачем придумываю ряд бредовых идей как не переобучить сеть - берем и плавно уменьшаем число А-элементов - вот и весь алгоритм , рискуя не сойтись - на произвольном множестве как правило достаточно 60-80% от числа примеров обучения (стимулов), а вот на задаче шахматной доски - как видите хватило 1500 из необходимых 65535. И это уже не переобучение - это минимум (ваши рассуждения о 3 нейронах - найти их вероятность близка к нулю) при универсальном устройстве перцептрона.
[Ответ][Цитата]
3d6
Сообщений: 325
На: Обучение сети
Добавлено: 16 янв 09 21:30
Цитата:
Автор: tac

Касательно переобученности - ну это дискуссионно, но тут я удивляюсь зачем придумываю ряд бредовых идей как не переобучить сеть - берем и плавно уменьшаем число А-элементов - вот и весь алгоритм , рискуя не сойтись - на произвольном множестве как правило достаточно 60-80% от числа примеров обучения

Если число необходимых нейронов зависит от объема обучающей выборки - сеть не решила задачу классификации или интерполяции. Решением называется такая конфигурация сети, когда процент правильных ответов будет сохраняться при любом количестве поданных на вход сети примеров.
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 16 янв 09 21:36
Цитата:
Автор: 3d6
Если число необходимых нейронов зависит от объема обучающей выборки - сеть не решила задачу классификации или интерполяции.


Нет, эти задачи сеть решила ! Не путайте с обобщением. Да обобщение может быть слабым - но довайте к этому вернемся после экспериментов с MLP&BP, надеюсь мы с вами их закончим ... в противном случае MLP&BP не предоставляют ничего лучшего чем перцептрон ... а других конкурентов тем более нету !

Т.е. мне не известен НИ ОДИН алгоритм который обеспечивает НЕ ЗАВИСИМОСТЬ от объема обучающей выборки !!

А обобщение - стоит рядом с проблемой инвариантности, что и было основным пунктом критики Минским ВСЕХ ИНС ... и сейчас нет сетей свободных от такой критики !!! Именно поэтому задача, которая поставила тут рядом Даша о маштабировании изображений галактик - не имеет решения в ИНС, да и вообще Минский показал - что это проблемма параллельных алгоритмов ВООБЩЕ, и здесь нужно применять последовательные алгоритмы ... вот только граница остается несколько размыта, когда одна задача переходит в другую ... Ну, и конечно, желание исследователей выдать желаемое за действительное, особенно это наблюдается у теоретиков, которые сами не программируют ...
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 16 янв 09 23:00
Кстати, читаю тут Хайкина про RBF - сети ... читаю и наслаждаюсь

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

Просто мат. вычисление псевдообратной матрицы - будет очень затратно по сравнению с алгоритмом обучения, но зато будет гарантировать наилучшее прогнозирование ! Оценить количество А-элементов, нужно вычислять ранг матрицы, а это не очень просто ... вообщем тяжелая мат. процедура ... но можно проще экспериментально - уменьшил число А-элементов посмотрел сошлось-несошлось - и свободен от излишностей вычислений ... Но результат одинаков, что мат. путем применяемым в RBF сетях, что в перцептроне находя наименьшее число А-элементов при которых задача сойдется на обучающем множестве!
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 17 янв 09 0:00
*
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 17 янв 09 2:45
А вот, кстати, подтверждение моей оценки 60-80% необходимых А-элементов от общего числа стимулов (примеров обучающей выборки). Полученая на машине опорных векторов, которая по сути и есть перцептрон Розенблатта (точнее вся математика эквивалентная, несмотря на то, что ньансы разные). Хайкин пишет: "..для всех машин в качестве опорных векторов выбиралось приблизительно 60% общего объема обучающих примеров" (стр.443). Таким образом даже новейшие подходы, которые по сути являются хорошо забытыми старами - не свободны от зависимости от вличины обучающей выборки, что понятно даже чисто теоритически. А обобщать не одна ИНС так до сих пор и не умеет - в смысле чистого обобщения.

Вот и интересно, что дальше пишет Хайкин сравнивая с обратным распространением - он вполне справедливо отмечает, что оно вычислительнее эффективнее, но несколько проигрывает в точности. Что и понятно, т.к. не расчитывает веса математически, а иттерационно.

Сравнивая же с перцептроном Розенблатта (это уже от меня) - можно сказать, что он вычислительно эффективнее обратного распространения и по сути точен так же как машина опорных векторов - то есть совмещает в себе лучшие качества обоих ... это правда теорические выкладки, а на практике как и на практике может оказаться +/- 10% ... но как минимум перцептрон Розенблатта представляет серьезнейшую конкуренцию этим двум подходам (в смысле точности прогноза, но не в скорости обучения - тут без вариантов перцептрон все обходит, а моя модификация и подавно ) - и выигрывает уже точно по своей простоте устройства ...
[Ответ][Цитата]
3d6
Сообщений: 325
На: Обучение сети
Добавлено: 17 янв 09 11:16
Цитата:
Автор: tac
Таким образом даже новейшие подходы, которые по сути являются хорошо забытыми старами - не свободны от зависимости от вличины обучающей выборки, что понятно даже чисто теоритически. А обобщать не одна ИНС так до сих пор и не умеет - в смысле чистого обобщения.

Ok, вот реальная задача: управление системой открытия подушек безопасности в автомобиле, нужно по сигналу локаторов определить, можно их открывать или нет, в зависимости от позы пассажира (в жизни проблема в том, что в 20% случаев открытие подушек ухудшает травмы пассажира, а не ослабляет). Размер входного вектора - около 120 вещественных чисел. Выход - 2 класса, можно/нельзя открывать подушки. Размер обучающей выборки - порядка миллиона записей.

Вот ее реальное решение: целый класс 3-4-слойных MLP с числом нейронов 50-150 решает эту задачу с точностью более 95%. Лучшее решение (то, которое пошло в чипы для реальных автомобилей) - 98.2%, при размере сети порядка 100 нейронов.
98.2% точности разумеется на тестовой выборке, которую сеть не видела в процессе обучения. Размер тестовой выборки порядка 300 тысяч образов.
Так что, обобщать нейронные сети не могут?
[Ответ][Цитата]
3d6
Сообщений: 325
На: Обучение сети
Добавлено: 17 янв 09 15:00
Да, обучил свою сеть на задаче про черно-белые клетки - получается несколько хуже, но до 90% за час доходит при 700 нейронах. Возможно, это связано с тем, что у меня нет порога - а в нейрокомпьютере, на котором я проверял, есть. В любом случае, алгоритм работает. Исходники лежат тут: http://animeculture.org.ua/mlp/mlp.rar (иногда сайт лежит, т.к. хостер ненадежный, если что - попробуйте через 15-20 минут повторно). Там сам класс, подготовленный для завертывания в длл, плюс файл с утилитами - используется в малой степени, при желании от него легко отвязаться. Класс читает конфигурацию сети из файла .net, приложен там же - для конфигурации сети файл нужно прочитать в буфер, и вызвать на этот буфер функцию сети parseConfiguration(char *buf, int bufLength); Остальное вроде интуитивно понятно.
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 17 янв 09 21:47
Спасибо, попробую разобраться ...
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 19 янв 09 6:41
3d6 - А скажите, что это за Си ? Только не говорите, что Borland
[Ответ][Цитата]
3d6
Сообщений: 325
На: Обучение сети
Добавлено: 19 янв 09 9:53
Именно Борланд Но на него там завязана только отрисовка сети, все остальное не зависит от компилятора. Без нее вполне можно обойтись
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 19 янв 09 12:33
Цитата:
Автор: 3d6

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


Не так все гладко - начиная от файловых операций, нету ряда .h файлов (т.е. соответствующих функций) и заканчивая руганиной компилятора на переопределения одинаковых переменных, которые Борланд видимо разрешает ...

Ладно, будем копать ...

[Ответ][Цитата]
3d6
Сообщений: 325
На: Обучение сети
Добавлено: 19 янв 09 12:48
А, да, есть такое. Но там вроде тривиально, за полчаса можно все заменить...
[Ответ][Цитата]
tac
Сообщений: 2601
На: Обучение сети
Добавлено: 19 янв 09 13:26
Цитата:
Автор: 3d6

А, да, есть такое. Но там вроде тривиально, за полчаса можно все заменить...


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

Ничего - угроблю пару дней, зато буду знать, что там лишние ... Уже и так вы можно сказать спровоцировали меня переставить систему - просто Visual Studio 6 (с обычным си - которым я пользовался можно сказать только в студенческие годы в том числе и для перцептрона, теперь уже года 3 как все перевел на C#, а переводить вашы классы на С# я как то не рискнул ... вот Яву - да можно переводить сразу, а непонятно какой си лучше уж на си но понятный - хотя поначалу я думал просто тупо перевести дллку на exe ) не совместима с Вистой, решил поставить XP, как обычно бывает позно спохватился, что а загрузочного то диска с XP нету пришлось снова ставить Висту но зато x64 (главное что она к моему удивлению активировалась - раньше пробывал, но видно что-то вначале делал не так, а потом уже никак ), а там уже и XP x64 нашел и укомплектовал их одновременно - теперь зато доволен все как у людей - что душа желает ... этот так как парой бывают тернисты пути ...
[Ответ][Цитата]
 Стр.6 (12)1  2  3  4  5  [6]  7  8  9  10  ...  12<< < Пред. | След. > >>