Telegram Group & Telegram Channel
Tailoring: encoding inductive biases by optimizing unsupervised objectives at prediction time
Ferran Alet, Kenji Kawaguchi, Tomas Lozano-Perez, Leslie Pack Kaelbling
Статья: https://arxiv.org/abs/2009.10623

Очередная прикольная работа из серии “а что, так можно было?”.

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

Этот метод возвращается в новой ипостаси — Tailoring! Не знаю, как лучше по-русски назвать, пусть будет “подгонка”.

В чём суть?

В основе успеха многих решений лежит правильный inductive bias. Обычный классический подход подразумевает добавление inductive bias в архитектуру или через дополнительные лоссы. Первый подход неуниверсальный, а второй как и обучение с обычным лоссом приводит к generalization gap между данными обучения и предсказания, а также уводит objective в сторону от того, который нам реально важен.

Проблема здесь в том, что когда поступают запросы на инференс, модель уже не может использовать знание об этой новой конкретной точке, она “заморожена”. А собственно кто нам запретил воспользоваться этой новой информацией?

Вапник в своё время предложил подход под названием transductive learning (в противовес обычному inductive learning), где алгоритм получает не только обучающие данные, но и набор точек, на которых потом надо будет сделать предсказания, то есть делает предсказание от частного к частному без перехода к общему. Кстати, есть мнение, что Бертран Рассел сделал это ещё раньше, https://www.cs.bham.ac.uk/~jdk/transductive.html — не прогуливайте философию, в ML она тоже полезна!

Красивый пример, когда трансдукция полезнее обычной индукции, реализованной в виде supervised модели, есть в английской википедии — это классификация точек (https://en.wikipedia.org/wiki/Transduction_(machine_learning)#Example_problem). Действительно, обладая полным набором точек, хоть бы большинство из них и было без разметки, сделать разумную классификацию гораздо проще, проведя сначала unsupervised кластеризацию. И вообще говоря, множество подходов с предобучением или semi-supervised подходов, по сути делают что-то подобное. Теперь мы знаем, как это называется! :)

Но проблема с этим подходом в том, что обычно заранее мы не знаем, на чём надо будет потом применять модель, и хочется подход, который умеет делать предсказания в режиме онлайн по мере поступления новых точек. А гонять на каждом предсказании полный вариант transductive learning это too much.

Авторы предлагают подход tailoring и meta-tailoring. При “подгонке” (tailoring) мы при поступлении новой точки на предсказание файн-тюним модель на специальный unsupervised tailoring loss, а затем делаем предсказание. При “мета-подгонке” у нас есть двухуровневый процесс оптимизации по типу как в мета-обучении, где по сути мы обучаем модель с учётом последующей подгонки, чтобы она прошла легче — во внешнем цикле мы оптимизируем лосс, который нам важен (например, какой-то из supervised), а во внутреннем цикле оперируем этим нашим unsupervised tailoring loss. И, кстати, широко известный MAML (https://arxiv.org/abs/1703.03400) легко транслируется в текущий сеттинг с мета-подгонкой.

Если чуть больше конкретики, то мы, например, знаем, что данные должны обладать какими-то гарантиями: гладкость, симметрия, сохранение момента или энергии, что-нибудь ещё — мы можем использовать это в tailoring loss. Можно также заюзать какой-нибудь contrastive loss.

Отдельный практический челлендж — сделать так, чтобы можно было параллельно делать подгонку одной модели для всего батча.



group-telegram.com/gonzo_ML/392
Create:
Last Update:

Tailoring: encoding inductive biases by optimizing unsupervised objectives at prediction time
Ferran Alet, Kenji Kawaguchi, Tomas Lozano-Perez, Leslie Pack Kaelbling
Статья: https://arxiv.org/abs/2009.10623

Очередная прикольная работа из серии “а что, так можно было?”.

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

Этот метод возвращается в новой ипостаси — Tailoring! Не знаю, как лучше по-русски назвать, пусть будет “подгонка”.

В чём суть?

В основе успеха многих решений лежит правильный inductive bias. Обычный классический подход подразумевает добавление inductive bias в архитектуру или через дополнительные лоссы. Первый подход неуниверсальный, а второй как и обучение с обычным лоссом приводит к generalization gap между данными обучения и предсказания, а также уводит objective в сторону от того, который нам реально важен.

Проблема здесь в том, что когда поступают запросы на инференс, модель уже не может использовать знание об этой новой конкретной точке, она “заморожена”. А собственно кто нам запретил воспользоваться этой новой информацией?

Вапник в своё время предложил подход под названием transductive learning (в противовес обычному inductive learning), где алгоритм получает не только обучающие данные, но и набор точек, на которых потом надо будет сделать предсказания, то есть делает предсказание от частного к частному без перехода к общему. Кстати, есть мнение, что Бертран Рассел сделал это ещё раньше, https://www.cs.bham.ac.uk/~jdk/transductive.html — не прогуливайте философию, в ML она тоже полезна!

Красивый пример, когда трансдукция полезнее обычной индукции, реализованной в виде supervised модели, есть в английской википедии — это классификация точек (https://en.wikipedia.org/wiki/Transduction_(machine_learning)#Example_problem). Действительно, обладая полным набором точек, хоть бы большинство из них и было без разметки, сделать разумную классификацию гораздо проще, проведя сначала unsupervised кластеризацию. И вообще говоря, множество подходов с предобучением или semi-supervised подходов, по сути делают что-то подобное. Теперь мы знаем, как это называется! :)

Но проблема с этим подходом в том, что обычно заранее мы не знаем, на чём надо будет потом применять модель, и хочется подход, который умеет делать предсказания в режиме онлайн по мере поступления новых точек. А гонять на каждом предсказании полный вариант transductive learning это too much.

Авторы предлагают подход tailoring и meta-tailoring. При “подгонке” (tailoring) мы при поступлении новой точки на предсказание файн-тюним модель на специальный unsupervised tailoring loss, а затем делаем предсказание. При “мета-подгонке” у нас есть двухуровневый процесс оптимизации по типу как в мета-обучении, где по сути мы обучаем модель с учётом последующей подгонки, чтобы она прошла легче — во внешнем цикле мы оптимизируем лосс, который нам важен (например, какой-то из supervised), а во внутреннем цикле оперируем этим нашим unsupervised tailoring loss. И, кстати, широко известный MAML (https://arxiv.org/abs/1703.03400) легко транслируется в текущий сеттинг с мета-подгонкой.

Если чуть больше конкретики, то мы, например, знаем, что данные должны обладать какими-то гарантиями: гладкость, симметрия, сохранение момента или энергии, что-нибудь ещё — мы можем использовать это в tailoring loss. Можно также заюзать какой-нибудь contrastive loss.

Отдельный практический челлендж — сделать так, чтобы можно было параллельно делать подгонку одной модели для всего батча.

BY gonzo-обзоры ML статей


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/gonzo_ML/392

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

In this regard, Sebi collaborated with the Telecom Regulatory Authority of India (TRAI) to reduce the vulnerability of the securities market to manipulation through misuse of mass communication medium like bulk SMS. On February 27th, Durov posted that Channels were becoming a source of unverified information and that the company lacks the ability to check on their veracity. He urged users to be mistrustful of the things shared on Channels, and initially threatened to block the feature in the countries involved for the length of the war, saying that he didn’t want Telegram to be used to aggravate conflict or incite ethnic hatred. He did, however, walk back this plan when it became clear that they had also become a vital communications tool for Ukrainian officials and citizens to help coordinate their resistance and evacuations. Telegram boasts 500 million users, who share information individually and in groups in relative security. But Telegram's use as a one-way broadcast channel — which followers can join but not reply to — means content from inauthentic accounts can easily reach large, captive and eager audiences. In the United States, Telegram's lower public profile has helped it mostly avoid high level scrutiny from Congress, but it has not gone unnoticed. "Like the bombing of the maternity ward in Mariupol," he said, "Even before it hits the news, you see the videos on the Telegram channels."
from kr


Telegram gonzo-обзоры ML статей
FROM American