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
1228
Украина, Днепр
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
1228
Украина, Днепр
prof.uskov: к входным данным. Чтоб не было "аналитически решаемым по двум отсчетам".

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


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

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

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

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



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

Сейчас этот форум просматривают: Mihaylo


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

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