2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Упаковка данных автокодировщиком
Сообщение27.02.2017, 16:46 


23/12/07
1757
mihaild в сообщении #1195732 писал(а):
Обоснование. Если бы произвольное вложение $\mathbb{R^n} \to \mathbb{R}$, приближенное нейросетью, давало то же качество - то было бы странно, что находится не оно, а какое-то "полезное".

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

вы писали
mihaild в сообщении #1195732 писал(а):
one hot encoding всегда можно сделать из двоичной кодирования заменой последнего слоя, обратное, вообще говоря, требует добавления нового слоя.

я могу точно так же, убрав последний слой one hot encoding и заменив его на двичное кодлирование, переобучить сеть. поэтому я, во-первых, не понял, что означает "обратное, вообще говоря, требует добавления нового слоя", а во-вторых, каким боком это вообще к вопросу о приоритетности выбора one hot encoding для построения качественного классификатора?

mihaild в сообщении #1195732 писал(а):
Ее нет в том числе потому, что непонятно, как хотя бы сформулировать утверждение "нейросети работают".

нет. тут вопрос проще - почему с one hot encoding качество распознавания (процент ошибок) в общем случае получается меньше, чем с двоичным.

mihaild в сообщении #1195732 писал(а):
Могу в ответ спросить вас, что значит "нейрон реагирует на несколько признаков"

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

mihaild в сообщении #1195732 писал(а):
и чем вообще несколько признаков отличается от одного признака "их конъюнкции".

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

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение27.02.2017, 17:12 
Заслуженный участник
Аватара пользователя


16/07/14
8347
Цюрих
_hum_ в сообщении #1195779 писал(а):
обоснование должно выглядеть как рассуждения, отталкивающиеся от более простых обоснованных суждений и приводящие к выводу, что именно "полезное" должно находиться, а не какое-то другое.
Это два разных вопроса: почему что-то происходит, и почему мы думаем, что это происходит. На второй ответ выше. На первый хорошего ответа неизвестно (т.к. для него необходимо как минимум гораздо лучше сформулировать вопрос).

_hum_ в сообщении #1195779 писал(а):
тут вопрос проще - почему с one hot encoding качество распознавания (процент ошибок) в общем случае получается меньше, чем с двоичным
Тут нужно учитывать, что качество можно считать для сети (лучший возможный результат), а можно для пары "сеть + метод обучения".
Для первого. Вот у нас есть две сети с архитектурами, отличающимися только выходным слоем: в сети А бинарное кодирование, в сети Б унарное. Для любого набора весов в сети А можно подобрать набор весов в сети Б, дающий ту же точность. Обратное, вообще говоря, неверно - и непонятно, почему оно должно быть верно для какой-то нашей конкретной задачи.
(при этом всегда можно получить ту же точность с бинарным кодированием, что дает сеть Б, сетью вида "сеть Б + дополнительный слой")

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

_hum_ в сообщении #1195779 писал(а):
когда на входе нейросети присутствует данный признак
А что такое "признак"?

_hum_ в сообщении #1195779 писал(а):
давайте для простоты вести речь про конволюционные сети
Можете сразу сказать, что вам тут нужно от сверточности, чего не обеспечивают полносвязные сети?

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение27.02.2017, 18:07 


23/12/07
1757
mihaild в сообщении #1195785 писал(а):
Это два разных вопроса: почему что-то происходит, и почему мы думаем, что это происходит. На второй ответ выше. На первый хорошего ответа неизвестно (т.к. для него необходимо как минимум гораздо лучше сформулировать вопрос).

куда уж лучше: почему при построении автокодировщика предполагается, что он не будет строить внутри себя биективное отображение $\mathbb{N}^n \rightarrow \mathbb{N}$ наподобие $f: (x_1, x_2,\dots,  x_n) \mapsto 111111...x_1111111...x_2\dots 111111...x_n$, а будет строить отбрасывающее незначительные признаки отображение.

mihaild в сообщении #1195785 писал(а):
_hum_ в сообщении #1195779 писал(а):
тут вопрос проще - почему с one hot encoding качество распознавания (процент ошибок) в общем случае получается меньше, чем с двоичным
Тут нужно учитывать, что качество можно считать для сети (лучший возможный результат), а можно для пары "сеть + метод обучения".
Для первого. Вот у нас есть две сети с архитектурами, отличающимися только выходным слоем: в сети А бинарное кодирование, в сети Б унарное. Для любого набора весов в сети А можно подобрать набор весов в сети Б, дающий ту же точность. Обратное, вообще говоря, неверно - и непонятно, почему оно должно быть верно для какой-то нашей конкретной задачи.
(при этом всегда можно получить ту же точность с бинарным кодированием, что дает сеть Б, сетью вида "сеть Б + дополнительный слой")

будем считать, вам дали возможность выбирать только структуру нейросети (связи между нейронами) и всё (количество нейронов заранее фиксировано). при этих ограничениях можете объяснить, почему выбор архитектуры с one hot encoding даст (или может, по-вашему, не даст) лучший результат по проценту ошибок?
mihaild в сообщении #1195785 писал(а):
А что такое "признак"?

см. wiki/Feature_(machine_learning)
mihaild в сообщении #1195785 писал(а):
Можете сразу сказать, что вам тут нужно от сверточности, чего не обеспечивают полносвязные сети?

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

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение27.02.2017, 18:33 
Заслуженный участник
Аватара пользователя


16/07/14
8347
Цюрих
_hum_ в сообщении #1195795 писал(а):
почему при построении автокодировщика предполагается, что он не будет строить внутри себя биективное отображение
Потому что практика показывает, что обычно не строит (а в задачах, где строит - мы этот метод не используем).
_hum_ в сообщении #1195795 писал(а):
а будет строить отбрасывающее незначительные признаки отображение
Это очень нестрогая формулировка - что такое "признаки", что такое "существенные признаки", и т.д.?

Представьте, что мы строим автоэнкодер вообще без нелинейностей. Т.е. пару аффинных отображений $\mathbb{R}^2 \to \mathbb{R}$ и $\mathbb{R} \to \mathbb{R}^2$. Учим его на парах $(x_i, y_i)$, где $x$ и $y$ - независимые нормально распределенные величины с нулевым мат. ожиданием, дисперсия $x$ равна $1000$, дисперсия $y$ равна $1$. Что выучит наш энкодер?

_hum_ в сообщении #1195795 писал(а):
почему выбор архитектуры с one hot encoding даст (или может, по-вашему, не даст) лучший результат по проценту ошибок?
А вы прочитали то, что процитировали? Похоже, что нет, т.к. иначе хотя бы сказали, какую именно задачу мы ставим - оптимизацию на практике (и тогда нужно указывать метод обучения), или в теории (у нас есть оракул, который дает лучшие веса данной архитектуры).

Еще унарное и бинарное кодирование требуют разного числа нейронов хотя бы на выходе.

_hum_ в сообщении #1195795 писал(а):
чисто для того, чтоб меньше было вопросов про "что такое признак", "иерархия признаков" и т.п. в конволюционных эти понятия легко прослеживаются.
Ну так проследите и выпишите определения. Под википедийное "измеримое наблюдаемое свойство" подходит абсолютно любая функция из входных факторов в $\mathbb{R}$. И тогда можно сказать, что любой нейрон реагирует на конкретный признак (а именно - на ту функцию, которую он в итоге вычисляет).

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение27.02.2017, 19:40 


23/12/07
1757
mihaild в сообщении #1195797 писал(а):
_hum_ в сообщении #1195795 писал(а):
почему при построении автокодировщика предполагается, что он не будет строить внутри себя биективное отображение
Потому что практика показывает, что обычно не строит (а в задачах, где строит - мы этот метод не используем).

- почему самолеты, хоть и железные, но летают?
- потому что практика показывает, что обычно то, что строится на авиазаводах, способно держаться в воздухе

mihaild в сообщении #1195797 писал(а):
Это очень нестрогая формулировка - что такое "признаки", что такое "существенные признаки", и т.д.?

mihaild в сообщении #1195797 писал(а):
Под википедийное "измеримое наблюдаемое свойство" подходит абсолютно любая функция из входных факторов в $\mathbb{R}$. И тогда можно сказать, что любой нейрон реагирует на конкретный признак (а именно - на ту функцию, которую он в итоге вычисляет).

у меня создается впечатление, что вы не знакомы с работой конволюционных сетей. иначе поняти feature и feature map было бы для вас содержательным:
Изображение
Изображение

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение28.02.2017, 02:33 
Заслуженный участник
Аватара пользователя


16/07/14
8347
Цюрих
_hum_ в сообщении #1195795 писал(а):
почему при построении автокодировщика предполагается, что

mihaild в сообщении #1195785 писал(а):
Это два разных вопроса: почему что-то происходит, и почему мы думаем, что это происходит


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

Но определение "признака" как "то, на что реагирует нейрон", возвращает нас к исходному вопросу
mihaild в сообщении #1195732 писал(а):
чем вообще несколько признаков отличается от одного признака "их конъюнкции"

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение28.02.2017, 09:41 


23/12/07
1757
mihaild в сообщении #1195893 писал(а):
_hum_ в сообщении #1195795 писал(а):
почему при построении автокодировщика предполагается, что

mihaild в сообщении #1195785 писал(а):
Это два разных вопроса: почему что-то происходит, и почему мы думаем, что это происходит


меня не интересует "почему мы думаем" (это вообще философский вопрос), я на научном форуме, и рассчитываю получить ответ на "почему что-то происходит"

mihaild в сообщении #1195893 писал(а):
Для каждого нейрона в любой сети, входы которой соответствуют пикселям изображения, можно подобрать изображение, максимизирующее выход этого нейрона. Для сверточной это можно сделать разумным образом для маленького изображения (размером равным зоне, захватываемой этим нейроном).

Но определение "признака" как "то, на что реагирует нейрон", возвращает нас к исходному вопросу

да где вы нашли, что признак определяется через "то, на что реагирует нейрон"? речь шла о том, что в сети может быть ситуация, когда нейрон реагирует только на один признак (например, нейрон конечного слоя при one hot encoding регирует только на "комбинированный" признак "быть цифрой 1", тогда как при бинарной кодировке нейрон будет реагировать на признаки ", быть цифрой 1", "быть цифрой 3", и т.д.)
только, пожалуйста, не начинайте снова "что такое "комбинированный признак"? " - все пояснения с отсылками были даны выше.

 Профиль  
                  
 
 Re: Упаковка данных автокодировщиком
Сообщение28.02.2017, 12:15 
Заслуженный участник
Аватара пользователя


16/07/14
8347
Цюрих
_hum_ в сообщении #1195913 писал(а):
меня не интересует "почему мы думаем" (это вообще философский вопрос)
Нет, это вполне разумный вопрос: какие у нас основания считать, что что-то верно.
_hum_ в сообщении #1195913 писал(а):
почему что-то происходит
А что могло бы быть ответом на вопрос "почему"?
В любом случае, на этот ответ тоже можно спросить "а почему так", и в конечном итоге придется ответить, что у нас нет обоснований, кроме экспериментальных данных.

_hum_ в сообщении #1195913 писал(а):
все пояснения с отсылками были даны выше

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

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

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



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

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


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

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