Список форумов neuroproject.ru neuroproject.ru
Форум сайта компании НейроПроект
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Подскажите пожалуйста... что делать??

 
Начать новую тему   Ответить на тему    Список форумов neuroproject.ru -> Нейронные сети
Предыдущая тема :: Следующая тема  
Автор Сообщение
evgesha
Новый посетитель
Новый посетитель


Зарегистрирован: 13 Авг 2007
Сообщения: 5
Откуда: г. Саратов

СообщениеДобавлено: Пт Авг 17, 2007 11:52 am    Заголовок сообщения: Ответить с цитатой

Люди я не пойму, то ли этот форум мертвый, то ли ни кто не знает ответ на мой вопрос. Поясните пожалуйста. Кто-то же заходит сюда и навернека сталкивался с алгоритмом обратного распространения. Exclamation
_________________
Бог слепил человека из глины
и остался у него неиспользованный кусок
что еще слепить тебе? - спросил бог
слепи мне счастье - попросил человек
ничего не ответил бог
только положил человеку в ладонь
оставшийся кусочек глины
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Victor G. Tsaregorodtsev
Эксперт
Эксперт


Зарегистрирован: 28 Июн 2005
Сообщения: 114
Откуда: Красноярск

СообщениеДобавлено: Пт Авг 17, 2007 12:50 pm    Заголовок сообщения: Ответить с цитатой

Данные надо отмасштабировать в тот интервал, который сетка может выдать. Насчет работы с бесконечностью - это вы загнули, а вот любой отрезок можно спроецировать на выдаваемый сигмоидой интервал (-1,1), а потом значение выхода сети по обратной формуле можно будет перевести опять в исходную шкалу измерений.
_________________
www.neuropro.ru - нейросети, анализ данных, прогнозирование
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
evgesha
Новый посетитель
Новый посетитель


Зарегистрирован: 13 Авг 2007
Сообщения: 5
Откуда: г. Саратов

СообщениеДобавлено: Пт Авг 17, 2007 2:11 pm    Заголовок сообщения: Ответить с цитатой

Всмысле если я применяю сигмоидную функцию. То для требуемые результаты мне нужно тоже через сигмоид вычислить, затем вычислить ошибку между требуемым и полученным?
_________________
Бог слепил человека из глины
и остался у него неиспользованный кусок
что еще слепить тебе? - спросил бог
слепи мне счастье - попросил человек
ничего не ответил бог
только положил человеку в ладонь
оставшийся кусочек глины
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Victor G. Tsaregorodtsev
Эксперт
Эксперт


Зарегистрирован: 28 Июн 2005
Сообщения: 114
Откуда: Красноярск

СообщениеДобавлено: Пт Авг 17, 2007 3:35 pm    Заголовок сообщения: Ответить с цитатой

Ничё не понял... (конец рабочей недели и рабочего дня). Опишите плиз предполагаемый план действий или другими словами, или поподробнее.
_________________
www.neuropro.ru - нейросети, анализ данных, прогнозирование
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
evgesha
Новый посетитель
Новый посетитель


Зарегистрирован: 13 Авг 2007
Сообщения: 5
Откуда: г. Саратов

СообщениеДобавлено: Пт Авг 17, 2007 3:55 pm    Заголовок сообщения: Ответить с цитатой

У меня сеть генерирует многочлен k-степени. Как мне нормировать выходную область значения если я не знаю интервал значений этого многочлена. Мне нужно нормировать входные сигналы тоже или нет?
_________________
Бог слепил человека из глины
и остался у него неиспользованный кусок
что еще слепить тебе? - спросил бог
слепи мне счастье - попросил человек
ничего не ответил бог
только положил человеку в ладонь
оставшийся кусочек глины
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Victor G. Tsaregorodtsev
Эксперт
Эксперт


Зарегистрирован: 28 Июн 2005
Сообщения: 114
Откуда: Красноярск

СообщениеДобавлено: Сб Авг 18, 2007 11:57 am    Заголовок сообщения: Ответить с цитатой

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

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

В общем, курите нейросетевые учебники в плане нормировки (масштабирования, предобработки) данных и описаний плохих эффектов от возникновения насыщения нелинейных функций нейронов.
_________________
www.neuropro.ru - нейросети, анализ данных, прогнозирование
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
DmitryShm
Участник форума
Участник форума


Зарегистрирован: 09 Апр 2006
Сообщения: 33
Откуда: Россия, Казань

СообщениеДобавлено: Сб Авг 18, 2007 5:48 pm    Заголовок сообщения: вот еще вопрос Ответить с цитатой

А что, ведь можно посторить сеть, которая будет генерировать именно функции из H^n(K), где K-компакт, естественно. В качестве выхода просто давать коэффициенты полинома. Коэффициенты, как функции от свободных параметров. Разве не так?

Вот мне другой вопрос мучает... Если мы приближаем функцию на бесконечном множестве... Можно ее разложить по базису Эрмита (пространство функций X=L_(2,\sqrt{1-t^2})(U), где U не ограниченное множество). Базис эрмита --- это, помнится, бесконечное семейство ортогональных функций на Х. Является базисом Хаара. Т.е. по нему можно хорошо интегрполировать.

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

Меня на это натолкнула тема с многочленами. Например, приближать не искомую функцию, а ее (n+1)-ый отрезок разложения по базису (т.е. полином n-ой степени не по x^j, а, скажем, по T_j(x) [полином Чебышева]).

Также известны архитектуры WaveNet, т.е. на вейвлетах. Тема тесно перекликается с мультиразрешающим анализом.

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

Просто говоря про нейронные сети многие опускаются до примитивной, вообще говоря, задачи распознования. Примитивной, т.к. не требующей точности, где и сходимость по вероятности даст хороший результат. А вот в деле приближения функций, похоже, таких же хороших результатов нет.
_________________
знаю, что не знаю
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Eugeen
Эксперт
Эксперт


Зарегистрирован: 15 Ноя 2005
Сообщения: 66
Откуда: Москва

СообщениеДобавлено: Вс Авг 19, 2007 8:57 am    Заголовок сообщения: Re: вот еще вопрос Ответить с цитатой

[quote="DmitryShm"]
Цитата:
А что, ведь можно посторить сеть, которая будет генерировать именно функции из H^n(K), где K-компакт, естественно. В качестве выхода просто давать коэффициенты полинома. Коэффициенты, как функции от свободных параметров. Разве не так?

Нарисовать на бумаге НС - это 1% всей работы. Дальше ведь нужно ее обучить - это оставшиеся 99%. Ясно что для обучения нужно подготовить обучающее множество и критерии контроля обучения.
Вот Вам и единственный ответ на Ваш вопрос - сеть генерит только то чему ее обучили (это конечно при условии успешного обучения!).

Цитата:
Вот мне другой вопрос мучает... Если мы приближаем функцию на бесконечном множестве... Можно ее разложить по базису Эрмита (пространство функций X=L_(2,\sqrt{1-t^2})(U), где U не ограниченное множество). Базис эрмита --- это, помнится, бесконечное семейство ортогональных функций на Х. Является базисом Хаара. Т.е. по нему можно хорошо интегрполировать.

Вы только не забывайте при этом, что на функцию накладывается довольно жесткое ограничение - непрерывность и наличие непрерывных производных высших порядков!
Цитата:
Внимание вопрос. Как можно хорошо сочетать то многое, что уже достигнуто в классической теории приближения, и теорию нейронных сетей, довольно мутную, если честно?

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

Цитата:
Меня на это натолкнула тема с многочленами. Например, приближать не искомую функцию, а ее (n+1)-ый отрезок разложения по базису (т.е. полином n-ой степени не по x^j, а, скажем, по T_j(x) [полином Чебышева]).

Вспомните теорию, напр.:
http://matlab.exponenta.ru/spline/book1/10.php
И не забудьте, что узлы для Чебышеского приближения расположены не произвольно!

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

Именно это и меня очень интересует. Вот некий опыт применения НС для приближения сложной функции совместно с решением дифференциальных уравнений термодинамики:
http://neuralnetwork.narod.ru/besucher.html (ст. №2)
Результаты и точность приближения меня полностью устроили.
Цитата:
Просто говоря про нейронные сети многие опускаются до примитивной, вообще говоря, задачи распознования. Примитивной, т.к. не требующей точности, где и сходимость по вероятности даст хороший результат. А вот в деле приближения функций, похоже, таких же хороших результатов нет.

И распознание и прогнозирование и приближение функций - практически значимые задачи. Напр. валютному брокеру нужно сиюминутное указание: покупать или продавать, а для этого требуется лишь качественный результат работы НС. А вот хозяин брокерской конторы, подводя месячный (квартальный, годовой) итог работы каждого брокера сможет апостериори построить НС для точного анализа эффективности работы всех и каждого и выявить наиболее ценных сотрудников конторы.
Еще по поводу приближения функций.
Теория НС как компас, дает направление куда двигаться. Конкретные дороги до цели мы должны выбирать сами и как правило это путь проб и ошибок, с частыми возвратами к исходному пункту.
Особый вред делу наносят популяризаторы НС своими статьями и рекламными роликами в масс-медиа.
Когда человек начинает сам решать свою проблему с НС часто наступает разочарование и даже злость. Все оказывается непросто. Конфетка в рот сама не лезет.
Таким мой совет - начните с простого. Напр. приблизьте Yx)=sin(x) НС на отрезке {-1;+1}. Пройдите всю цепочку необходимых действий для простого, а уж потом замахивайтесь на более сложное. Иного пути нет!
_________________
Мелочи не играют решающей роли. Они решают все.
"Жизнь среди акул", Х. Маккей.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
DmitryShm
Участник форума
Участник форума


Зарегистрирован: 09 Апр 2006
Сообщения: 33
Откуда: Россия, Казань

СообщениеДобавлено: Вс Авг 19, 2007 9:03 am    Заголовок сообщения: :) Ответить с цитатой

Спасибо.

Мутными я бы назвал формулы, например, выводящие количество узлов сети в зависимости от VC-измерения исходных данных.

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

Приближать функции уже пробовал. По Хайкину написал программы. Одну на WaveNet-ах, другую на многослойном перцептроне. Данные для обучения давал равномерно распределенные на области определении искомой функции. Сходится, но оооочень медленно. И вот, как говорите, злость тут как тут. Когда при гораздо меньших затратах на производительность мы можем почти моментом получить результат, используя классическую теорию.

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

Теперь про уравнения первого рода и речи вести не хочется. Там же нет устойчивости по решению! И его может вообще не существовать! А если и существовать, то только в обобщенных функциях.

А вообще, наверное имеет смысл находить собственные вектора у исследуемых достаточно хороших операторов, и решение раскладывать по приведенному базису от векторов (по их достаточному количеству).

Вечно подстраивать НС под исходные данные жизни не хватит. Вот, может, пробовать автоматически настраиваемые НС? Посетить бы семинары по НС, пообщаться. Очень не хватает положительных опытов.

Сложно все это.
_________________
знаю, что не знаю
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Victor G. Tsaregorodtsev
Эксперт
Эксперт


Зарегистрирован: 28 Июн 2005
Сообщения: 114
Откуда: Красноярск

СообщениеДобавлено: Вс Авг 19, 2007 9:57 am    Заголовок сообщения: Re: :) Ответить с цитатой

DmitryShm

Посмотрите обзор Pinkus A. Approximation theory of the MLP model in neural networks / Acta Numerica, 1999. - pp.143-195. Он есть (или, по крайней мере, был) в инете, дает довольно хорошее описание состояния проведения параллелей между НС и классической теорией представления и приближения функций. Хоть он и для многослойных персептронов, но многое можно перенести и на сетки, например, радиальных базисных функций.
Если не найдете - мыльните мне (мыло есть в профиле и на сайте в подписи), я вышлю (вроде помню, где он у меня на компе валяется, и поэтому думаю, что найду быстро)

Цитата:
Сходится, но оооочень медленно. И вот, как говорите, злость тут как тут. Когда при гораздо меньших затратах на производительность мы можем почти моментом получить результат, используя классическую теорию.

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

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

Надо менять алгоритмы. У меня ошибка обучения не осциллирует
В общем, при обучении нейросеток от собственно нейросетевой теории (нужной в этом месте) надо брать ту часть алгоритма обратного распространения, которая отвечает за вычисление градиента. А далее этот градиент совать классическим методам градиентной оптимизации (тем из них, которые быстрые для больших размерностей пространства оптимизации, имеют сверхлинейную скорость сходимости и довольствуются только информацией о первых производных - это метод сопряженных градиентов и BFGS-квазиньютон с ограниченной памятью). И еще - вместо обычно МНК-функции в качестве целевой может быть оптимальной другая функция (а метод обратного распространения посчитает производные для любой однократно непрерывно дифференцируемой функции - непрерывность тут требую только из-за требований самих алгоритмов градиентной оптимизации)
_________________
www.neuropro.ru - нейросети, анализ данных, прогнозирование
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
evgesha
Новый посетитель
Новый посетитель


Зарегистрирован: 13 Авг 2007
Сообщения: 5
Откуда: г. Саратов

СообщениеДобавлено: Пн Авг 27, 2007 12:01 am    Заголовок сообщения: Ответить с цитатой

Вобщем, поняв как делать нормировку. Я написал программу, но почему то всё равно ответы сильно отличаются от настоящих. Подскажите пожалуйста где могут быть ошибки.
_________________
Бог слепил человека из глины
и остался у него неиспользованный кусок
что еще слепить тебе? - спросил бог
слепи мне счастье - попросил человек
ничего не ответил бог
только положил человеку в ладонь
оставшийся кусочек глины
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов neuroproject.ru -> Нейронные сети Часовой пояс: GMT + 4
Страница 1 из 1

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


Rambler's Top100 Rambler's Top100