2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение06.04.2015, 23:28 


25/02/15
38
Здравствуйте!
Наткнулся на интересную задачку по применению нейронных сетей.

Есть переходный процесс, описанный известным выражением:
$f(t)=e^{-bt}$
Требуется, имея $t_1$ и значение $f(t_1)$ (одну точку из переходного процесса) определить коэффициент затухания $b$

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

Получается, требуется сеть с двумя входами (для $t_1$ и $f(t_1)$) и одним выходом ($b$). Я создал многослойный перцептрон с одним скрытым слоем (функция активации - сигмоид) и одним нейроном в выходном слое (линейная функция активации). Литература гласит, что подобный персептрон может аппроксимировать любую непрерывную функцию, но я, видимо, что-то делаю не так.

Помогите разобраться, как правильно построить структуру сети для решения подобной задачи (если она вообще решаема).

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение06.04.2015, 23:39 
Аватара пользователя


12/01/14
1127
Truedoday в сообщении #1001009 писал(а):
Здравствуйте!
Наткнулся на интересную задачку по применению нейронных сетей.

Есть переходный процесс, описанный известным выражением:
$f(t)=e^{-bt}$
Требуется, имея $t_1$ и значение $f(t_1)$ (одну точку из переходного процесса) определить коэффициент затухания $b$

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


Использовать нейронные сети целесообразно, если нет аналитического решения.
Truedoday в сообщении #1001009 писал(а):
Получается, требуется сеть с двумя входами (для $t_1$ и $f(t_1)$) и одним выходом ($b$). Я создал многослойный перцептрон с одним скрытым слоем (функция активации - сигмоид) и одним нейроном в выходном слое (линейная функция активации). Литература гласит, что подобный персептрон может аппроксимировать любую непрерывную функцию, но я, видимо, что-то делаю не так.

Помогите разобраться, как правильно построить структуру сети для решения подобной задачи (если она вообще решаема).

Может, с любой заданной точностью, если число скрытых нейронов достаточно велико...
Для начала нужно определиться в каком диапазоне входных сигналов будем работать и сформировать обучающую выборку... точек так 100... а число нейронов скрытого слоя взять 10 :)

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение07.04.2015, 01:28 


25/02/15
38
prof.uskov в сообщении #1001011 писал(а):
Может, с любой заданной точностью, если число скрытых нейронов достаточно велико...
Взял обучающую выборку в 100 точек, как Вы повосетовали:

На вход подавал.
$t=0.05$ $f(t)=e^{-20\cdot0.05}$
$t=0.05$ $f(t)=e^{-21\cdot0.05}$
$t=0.05$ $f(t)=e^{-22\cdot0.05}$
$t=0.05$ $f(t)=e^{-23\cdot0.05}$
...
$t=0.05$ $f(t)=e^{-120\cdot0.05}$

Должно быть на выходе
$d=-20$
$d=-21$
$d=-22$
$d=-23$
...
$d=-120$

На графике красной линией то, что должно быть, синей линией ответ нейронной сети. Увеличение числа нейронов в скрытом слое до 100 изменило форму кривой, но точности не прибавило.
Изображение
И структура сети (да, в этом пакете доступна только такая структура - 3 входа, 1 выход):
Изображение

Может это как то влияет? Или структура нужна еще сложнее, больше чем 1 скрытый слой?

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение07.04.2015, 17:12 
Аватара пользователя


31/10/08
1244
Truedoday
Хороший показатель.
Как вариант линеаризовать функцию $f(t)$. Тогда будет гораздо лучше.
А так практически придел. Есть много факторов которые сказываются негативно:
1) У вас функция нелинейная, а у НС линейная.
2) В компьютере числа ограниченные и не хватает точности. Число нейронов в скрытом слое советую снизить до 5 шт. 100 это перебор.
3)
Truedoday в сообщении #1001036 писал(а):
Может это как то влияет?

Конечно влияет думаю в вашем случае сильнее всего. А также способ обучения НС.

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение07.04.2015, 17:36 


25/02/15
38
prof.uskov в сообщении #1001011 писал(а):
Pavia в сообщении #1001236 писал(а):
Повторил эксперимент с некоторыми изменениями в матлабе - аппроксимирует даже сложные функции с высокой точностью. Есть мысль, что это из за отсутствия нормализации входных параметров в прошлом пакете. Спасибо за Вашу помощь!

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение02.05.2015, 21:52 


24/01/09
1091
Украина, Днепропетровск
prof.uskov в сообщении #1001011 писал(а):
Использовать нейронные сети целесообразно, если нет аналитического решения.

Може задача станет интереснее при добавлении к сигналу шума?

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение03.05.2015, 15:35 
Аватара пользователя


12/01/14
1127
Theoristos в сообщении #1010542 писал(а):
prof.uskov в сообщении #1001011 писал(а):
Использовать нейронные сети целесообразно, если нет аналитического решения.

Може задача станет интереснее при добавлении к сигналу шума?

К чему и с какой целью добавлять шум?

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение03.05.2015, 16:31 


24/01/09
1091
Украина, Днепропетровск
prof.uskov: к входным данным. Чтоб не было "аналитически решаемым по двум отсчетам".

 Профиль  
                  
 
 Re: Нейронная сеть. Аппроксимация многослойным перцептроном.
Сообщение03.05.2015, 18:16 
Аватара пользователя


12/01/14
1127
Theoristos в сообщении #1010762 писал(а):
prof.uskov: к входным данным. Чтоб не было "аналитически решаемым по двум отсчетам".

В "игрушечных" (учебных) задачах так и делают. :)

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



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

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


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group