2014 dxdy logo

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

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





Начать новую тему Ответить на тему На страницу 1, 2, 3  След.
 
 И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 13:48 


23/12/07
1519
Построение и настройка нейронной сети, как я понимаю, может рассматриваться как построение специфического вида (из суперпозиции и суммирования конечного числа функций одного аргумента) аппроксимации для нужной функции-классификатора.
Вопрос, почему именно такого рода аппроксимация успешно выдержала естественный отбор в животном мире и вот теперь и в цифровом набирает популярность? В чем принципиальное преимущество перед теми же полиномами Бернштейна?

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 14:19 
Аватара пользователя


18/06/12

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

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 14:32 


23/12/07
1519
Eimrine в сообщении #1147329 писал(а):
Прошу прощения за глупый (потому что я теряюсь в вашей терминологии) вопрос, но как вы себе представляете вид с полиномом Бернштейна?

как полином Бернштейна для нужного классификатора :) А именно, если рассматривается одномерное пространство входных данных, и нужно аппроксимировать классификатор $f = f(x), x \in [0,1]$, то для него можно использовать аппроксимацию:
$$B_n(x) = \sum_{k = 0}^{n}f\Big(\dfrac{k}{n}\Big)b_{k,n}(x),$$
где $b_{k,n}(x)$ - базисный полином Бернштейна [см. 1]

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 15:24 
Заслуженный участник
Аватара пользователя


16/07/14
1403
Москва
А как вы будете представлять такой же классификатор для функции многих аргументов? Нейросети обычно используются для классификации объектов из пространств довольно большой размерности.

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

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 15:51 


23/12/07
1519
mihaild в сообщении #1147346 писал(а):
А как вы будете представлять такой же классификатор для функции многих аргументов? Нейросети обычно используются для классификации объектов из пространств довольно большой размерности.

есть многомерные аналоги полиномов Бернштейна

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

Ну так обучающая выборка - это же пары $(x_i, f(x_i)), i = 1..N$. Для полинома Бернштейна нужны $\big(k/n, f(k/n)\big), k = 1..n$. Поэтому можно путем подбора $n$ и выбора из выборки подходящих пар, получить нужную аппроксимацию :)

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 16:33 
Заслуженный участник
Аватара пользователя


16/07/14
1403
Москва
Во-первых, в реальной жизни мы обычно не можем выбирать $x_i$.
Во-вторых, если я правильно понимаю, там для обучения нужна сетка по всем координатам - а число точек в такой сетке растет экспоненциально с размерностью. А теперь представьте, что мы хотим анализировать картинку размера хотя бы $20 \times 20$.

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 17:17 


23/12/07
1519
mihaild в сообщении #1147359 писал(а):
Во-первых, в реальной жизни мы обычно не можем выбирать $x_i$.

Ну, навскидку, можно сделать так: расширим возможные значения функции-классификатора за счет нового значения $y_{\circ}$. Например, если все значения исходного классификатора строго больше нуля, то можно положить $y_{\circ} = 0$.
Теперь, пусть нам дали обучающую выборку $(x_i, f(x_i)), i = 1..N.$ Подберем за счет выбора большого значения $n$ равномерную сетку $x_k = k/n$, $k = 1.. n$ так, чтобы все точки $x_i$ (с учетом точности округления) попадали в узлы этой сетки. Всем остальным узлам припишем значение классификатора $y_{\circ}$.
Как бы все. Образовалась новая обучающая выборка, которая в точности подходит для построения аппроксимации полиномом Бернштейна $B_n$.

mihaild в сообщении #1147359 писал(а):
Во-вторых, если я правильно понимаю, там для обучения нужна сетка по всем координатам - а число точек в такой сетке растет экспоненциально с размерностью. А теперь представьте, что мы хотим анализировать картинку размера хотя бы $20 \times 20$.

С учетом подхода с $y_{\circ}$ нам нужны только точки сетки, на которую можно положить все точки исходной выборки. Не знаю, насколько это будет много.
Возможно, действительно, собака зарыта именно в этих моментах (меня подсознательно гложет мысль, что успех нейронных сетей и "метода отжига" базируется на одном и том же эффекте, наблюдающемся при больших размерностях. Но я все никак не могу уловить, что за он.)

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

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 17:36 
Заслуженный участник
Аватара пользователя


06/10/08
5865
_hum_ в сообщении #1147381 писал(а):
Ну, навскидку, можно сделать так: расширим возможные значения функции-классификатора за счет нового значения $y_{\circ}$. Например, если все значения исходного классификатора строго больше нуля, то можно положить $y_{\circ} = 0$.
Теперь, пусть нам дали обучающую выборку $(x_i, f(x_i)), i = 1..N.$ Подберем за счет выбора большого значения $n$ равномерную сетку $x_k = k/n$, $k = 1.. n$ так, чтобы все точки $x_i$ (с учетом точности округления) попадали в узлы этой сетки. Всем остальным узлам припишем значение классификатора $y_{\circ}$.
Как бы все. Образовалась новая обучающая выборка, которая в точности подходит для построения аппроксимации полиномом Бернштейна $B_n$.
И в итоге у Вас в большом количестве точек многочлен будет выдавать значение $y_{\circ}$ или близкое к нему. Мы ведь хотим угадывать значения в еще неизвестных нам точкам, а Ваша процедура эти значения специально забивает нулями.

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 17:55 


23/12/07
1519
Xaositect в сообщении #1147390 писал(а):
И в итоге у Вас в большом количестве точек многочлен будет выдавать значение $y_{\circ}$ или близкое к нему. Мы ведь хотим угадывать значения в еще неизвестных нам точкам, а Ваша процедура эти значения специально забивает нулями.

не совсем так. она будет давать $y_{\circ}$ ("не знаю") для точек (и близких к ним), где не было исходных данных. а для точек (и близких к ним), где исходные данные были, она будет предсказывать новые значения (то есть, предсказывать значения в промежутках сетки между данными).

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 18:03 
Заслуженный участник
Аватара пользователя


16/07/14
1403
Москва
_hum_ в сообщении #1147381 писал(а):
Подберем за счет выбора большого значения $n$ равномерную сетку $x_k = k/n$, $k = 1.. n$ так, чтобы все точки $x_i$ (с учетом точности округления) попадали в узлы этой сетки

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

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

_hum_ в сообщении #1147381 писал(а):
успех нейронных сетей и "метода отжига" базируется на одном и том же эффекте, наблюдающемся при больших размерностях. Но я все никак не могу уловить, что за он
Вообще до конца почему работают нейронные сети, видимо, никто не понимает (теоретические оценки на их качество часто гораздо хуже практических).
_hum_ в сообщении #1147381 писал(а):
рассматривать изображение как вектор width x lenght-мерного пространства нельзя
Можно. На том же MNIST, конечно, сверточные нейросети работают лучше обычных - но обычные работают гораздо лучше остальных методов.

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 18:24 


23/12/07
1519
mihaild в сообщении #1147394 писал(а):
В итоге получим многочлен очень большой степени, который в небольшом числе узлов в точности равен значению на обучающей выборке (что еще и делает его уязвимым к шуму), а в гораздо большем числе узлов равен $0$. Поскольку у него большая степень, то между узлами он будет вести себя непредсказуемо.

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

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

Насчет плохого поведения полиномов высокой степени. Так, во-первых, полиномы Бернштейна равномерно аппроксимируют функцию, а значит, нам все ранво, как они себя ведут, ведь абсолютная ошибка аппроксимации всюду меньше заданной, а во-вторых: youtube/Bernstein Approximation :)

И господа, я напоминаю, вопрос не в "почему не используют вместо нейросетей полиномы Бернштейна", а "почему сети оказываются лучше любого другого способа аппроксимации".
Цитата:
_hum_ в сообщении #1147381 писал(а):
рассматривать изображение как вектор width x lenght-мерного пространства нельзя
Можно. На том же MNIST, конечно, сверточные нейросети работают лучше обычных - но обычные работают гораздо лучше остальных методов.

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

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 19:03 
Заслуженный участник
Аватара пользователя


16/07/14
1403
Москва
_hum_ в сообщении #1147399 писал(а):
Вы наверное путаете с интерполяционными полиномами Чебышеа
Да, путаю.
_hum_ в сообщении #1147399 писал(а):
в тех областях, где данных и поблизости нет, аппроксимация будет говорить "не знаю" (давать нуль). Ну так так и нейронная будет делать
Тут вы специально сообщаете модели неверные данные. Причем, скорее всего, их получается гораздо больше, чем верных.

На том же MNIST у нас (если брать каждый пиксель как координату) мы уже с двумя точками по каждой координате получим $2^{784}$ точек в сетке - доля обучающей выборки среди них почти нулевая.

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

_hum_ в сообщении #1147399 писал(а):
И господа, я напоминаю, вопрос не в "почему не используют вместо нейросетей полиномы Бернштейна", а "почему сети оказываются лучше любого другого способа аппроксимации".
Потому что у них хорошая устойчивость к шуму во входных данных. И потому что нас по какой-то непонятной причине интересуют функции, которые хорошо приближаются нейросетями:)
"Почему это работает" - это очень хороший вопрос, и ответа на него, похоже, никто не знает. По крайней мере Миколов говорил, что он не слышал, чтобы кому-то этот ответ был известен.

_hum_ в сообщении #1147399 писал(а):
хотелось бы услышать логическое обоснование
А какое тут могло бы быть логическое обоснование? Есть конкретные результаты - http://yann.lecun.com/exdb/mnist/.

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 19:32 


20/08/14
3283
Россия, Москва
_hum_ в сообщении #1147399 писал(а):
"почему сети оказываются лучше любого другого способа аппроксимации"
Может быть потому что они универсальны и сами "выбирают" нужный "алгоритм" аппроксимации по обучающей выборке? Даже когда заранее не известен лучший метод. Не перебирать же все возможные комбинации формул. :mrgreen: И уверен, подсунув сети данные с заранее точно известным законом сеть выдаст результат хуже идеала. Зато ей не надо сообщать априорную информацию о виде зависимости. В этом и достоинство, далеко не всегда такая информация у нас есть.

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 19:34 
Заслуженный участник
Аватара пользователя


16/07/14
1403
Москва
Dmitriy40 в сообщении #1147410 писал(а):
Может быть потому что они универсальны и сами "выбирают" нужный "алгоритм" аппроксимации по обучающей выборке?
Это называется "представимые ими функции плотны в соответствующем пространстве". И это выполнено для очень многих классов функций.

 Профиль  
                  
 
 Re: И все же, почему именно аппроксимация нейронными сетями?
Сообщение29.08.2016, 19:54 
Заслуженный участник
Аватара пользователя


02/08/11
4430
_hum_, а то, что вы говорите, относится к нейтронным сетям без обратных связей или без такового ограничения?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 42 ]  На страницу 1, 2, 3  След.

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



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

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


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

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