Интересный отчет об участии в соревновании NIPS 2017: Learning to Run (авторы заняли 22 место)
https://medium.com/mlreview/our-nips-2017-learning-to-run-approach-b80a295d3bb5
https://medium.com/mlreview/our-nips-2017-learning-to-run-approach-b80a295d3bb5
Medium
Our NIPS 2017: Learning to Run approach
For 3 months, from July to 13 November, me and my friend Piotr Jarosik participated in the NIPS 2017: Learning to Run competition. In this…
Шок! Сенсация! (на самом деле нет)
Многие опубликованные результаты по "улучшению" GAN-ов ненадежны.
Ребята из Google Brain протестировали 7 популярных вариантов GAN-ов и им не удалось найти алгоритм, который однозначно "лучше" остальных. Все они очень сильно зависят от выбора гиперпараметров. При достаточном вычислительном бюджете разницы между ними почти нет.
https://arxiv.org/pdf/1711.10337.pdf
Многие опубликованные результаты по "улучшению" GAN-ов ненадежны.
Ребята из Google Brain протестировали 7 популярных вариантов GAN-ов и им не удалось найти алгоритм, который однозначно "лучше" остальных. Все они очень сильно зависят от выбора гиперпараметров. При достаточном вычислительном бюджете разницы между ними почти нет.
https://arxiv.org/pdf/1711.10337.pdf
В тф добавили мини-фреймворк для обучения ганов. Там и разные лоссы, и всякие фишечки, вроде Virtual Batch Normalization, и визуализации, и примеры. И его даже планируют развивать.
https://research.googleblog.com/2017/12/tfgan-lightweight-library-for.html
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/gan
https://github.com/tensorflow/models/tree/master/research/gan
https://research.googleblog.com/2017/12/tfgan-lightweight-library-for.html
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/gan
https://github.com/tensorflow/models/tree/master/research/gan
Googleblog
TFGAN: A Lightweight Library for Generative Adversarial Networks
Доклад Ali Rahimi (Google) на NIPS (https://www.youtube.com/watch?v=ORHFOnaEzPc), в котором он сравнивает машинное обучение с алхимией (все что-то делают и даже получают какие-то результаты, но не всегда понимают, почему), вызвал бурную реакцию сообщества.
Первым ответил Лекун (https://www.facebook.com/yann.lecun/posts/10154938130592143 (1.9к лойсов, между прочим)). Он говорит, что из-за таких же настроений в 80-е сообщество игнорировало нейронные сети, несмотря на их эффективность, и вообще, использовать только полностью теоретически обоснованные методы непродуктивно.
Тут описание событий и точек зрения:
https://syncedreview.com/2017/12/12/lecun-vs-rahimi-has-machine-learning-become-alchemy/
А тут еще одно мнение о состоянии исследований в этом нашем диплернинге.
http://www.inference.vc/my-thoughts-on-alchemy/
И дополнения самого Али: http://www.argmin.net/2017/12/11/alchemy-addendum/
Очень интересное обсуждение состояния индустрии и исследований.
Первым ответил Лекун (https://www.facebook.com/yann.lecun/posts/10154938130592143 (1.9к лойсов, между прочим)). Он говорит, что из-за таких же настроений в 80-е сообщество игнорировало нейронные сети, несмотря на их эффективность, и вообще, использовать только полностью теоретически обоснованные методы непродуктивно.
Тут описание событий и точек зрения:
https://syncedreview.com/2017/12/12/lecun-vs-rahimi-has-machine-learning-become-alchemy/
А тут еще одно мнение о состоянии исследований в этом нашем диплернинге.
http://www.inference.vc/my-thoughts-on-alchemy/
И дополнения самого Али: http://www.argmin.net/2017/12/11/alchemy-addendum/
Очень интересное обсуждение состояния индустрии и исследований.
YouTube
Ali Rahimi - NIPS 2017 Test-of-Time Award presentation
"Let's take machine learning from alchemy to electricity."
The Test-of-Time Award was granted for the paper "Random Features for Large-Scale Kernel Machines", NIPS 2007, by Ali Rahimi and Benjamin Recht.
The Test-of-Time Award was granted for the paper "Random Features for Large-Scale Kernel Machines", NIPS 2007, by Ali Rahimi and Benjamin Recht.
А это заметки участника NIPS о представленных докладах (43 страницы!)
https://cs.brown.edu/~dabel/blog/posts/misc/nips_2017.pdf
https://cs.brown.edu/~dabel/blog/posts/misc/nips_2017.pdf
Рубрика #лайфхак
В статье про Cyclical Learning Rates (раздел 3.3) есть интересный метод выбора learning rate: надо запустить обучение с линейно увеличивающимся lr и построить график зависимости validation accuracy от lr. Момент, когда accuracy начинает расти - минимальный lr, когда accuracy начинает колбасить - максимальный.
https://arxiv.org/pdf/1506.01186.pdf
Также они ссылаются на старую статью Бенжио, в которой много советов, один из которых - если что-то из гиперпараметров и тюнить, то learning rate: Practical Recommendations for Gradient-Based Training of Deep Architectures https://arxiv.org/pdf/1206.5533.pdf
В статье про Cyclical Learning Rates (раздел 3.3) есть интересный метод выбора learning rate: надо запустить обучение с линейно увеличивающимся lr и построить график зависимости validation accuracy от lr. Момент, когда accuracy начинает расти - минимальный lr, когда accuracy начинает колбасить - максимальный.
https://arxiv.org/pdf/1506.01186.pdf
Также они ссылаются на старую статью Бенжио, в которой много советов, один из которых - если что-то из гиперпараметров и тюнить, то learning rate: Practical Recommendations for Gradient-Based Training of Deep Architectures https://arxiv.org/pdf/1206.5533.pdf
И второй #лайфхак
(когда сделал монструозную архитектуру, которая незначительно увеличила качество, но снизил производительность в 5 раз и надо что-то придумывать)
Можно, например, встроить batchnorm в веса конволюционного слоя.
https://arxiv.org/pdf/1701.06659.pdf (Раздел 4. Inference Time)
(когда сделал монструозную архитектуру, которая незначительно увеличила качество, но снизил производительность в 5 раз и надо что-то придумывать)
Можно, например, встроить batchnorm в веса конволюционного слоя.
https://arxiv.org/pdf/1701.06659.pdf (Раздел 4. Inference Time)
Вторая версия style2paints (style transfer раскрашивалка аниме-скетчей)
https://github.com/lllyasviel/style2paints
Это еще более прекрасно.
https://github.com/lllyasviel/style2paints
Это еще более прекрасно.
GitHub
GitHub - lllyasviel/style2paints: sketch + style = paints (TOG2018/SIGGRAPH2018ASIA)
sketch + style = paints :art: (TOG2018/SIGGRAPH2018ASIA) - GitHub - lllyasviel/style2paints: sketch + style = paints (TOG2018/SIGGRAPH2018ASIA)
Очень нравится, как в последнее время лаборатории представляют работы. Просто выложить статью на arxiv уже недостаточно, т.к. их выходит по 100 штук в день, поэтому компании пишут понятным языком красивые статьи с картинками в свои блоги.
Одна из таких статей из Беркли AI:
http://bair.berkeley.edu/blog/2017/12/20/reverse-curriculum/
О решении проблемы с reward function, которая постоянно возникает в reinforcement learning. Хочется описать задание простой функцией, вроде "получи reward, когда достиг конечной цели". Но оказывается, что такая функция даёт очень разреженный полезный сигнал, потому что при использовании random exploration доходить до цели мы будем очень редко. Поэтому приходится заниматься reward shaping, т.е настраивать reward function так, чтобы агент получал награду за какие-то промежуточные полезные состояния.
В статье предлагают решение, которое укладывается в подход к обучению агента под названием curriculum learning. Идея в том, чтобы вместо настройки reward function более правильно выбирать "ситуации", на которых обучается агент. Самый простой пример такого подхода - постепенное усложнение задачи.
Авторы предлагают строить "ситуации" наизнанку. Т.е начинать с состояний, когда цель почти достигнута и постепенно от неё удаляться, и описывают алгоритм, который позволяет находить "ситуации" нужной сложности.
И всё это с гифками с глазастым роботом. Прекрасно.
Одна из таких статей из Беркли AI:
http://bair.berkeley.edu/blog/2017/12/20/reverse-curriculum/
О решении проблемы с reward function, которая постоянно возникает в reinforcement learning. Хочется описать задание простой функцией, вроде "получи reward, когда достиг конечной цели". Но оказывается, что такая функция даёт очень разреженный полезный сигнал, потому что при использовании random exploration доходить до цели мы будем очень редко. Поэтому приходится заниматься reward shaping, т.е настраивать reward function так, чтобы агент получал награду за какие-то промежуточные полезные состояния.
В статье предлагают решение, которое укладывается в подход к обучению агента под названием curriculum learning. Идея в том, чтобы вместо настройки reward function более правильно выбирать "ситуации", на которых обучается агент. Самый простой пример такого подхода - постепенное усложнение задачи.
Авторы предлагают строить "ситуации" наизнанку. Т.е начинать с состояний, когда цель почти достигнута и постепенно от неё удаляться, и описывают алгоритм, который позволяет находить "ситуации" нужной сложности.
И всё это с гифками с глазастым роботом. Прекрасно.
The Berkeley Artificial Intelligence Research Blog
Reverse Curriculum Generation for Reinforcement Learning Agents
The BAIR Blog
Всех с наступившим 2018. FAIR открыл код для speech recognition - https://github.com/facebookresearch/wav2letter
GitHub
GitHub - flashlight/wav2letter: Facebook AI Research's Automatic Speech Recognition Toolkit
Facebook AI Research's Automatic Speech Recognition Toolkit - GitHub - flashlight/wav2letter: Facebook AI Research's Automatic Speech Recognition Toolkit
Вы наверняка уже слышали про уязвимости Meltdown и Spectre, которые, по некоторым оценкам, являются самыми крупными проблемами ИТ индустрии за все время и повлияют на нее самым существенным образом. В этих статьях https://geektimes.ru/post/297029/ https://geektimes.ru/post/297031/ на доступном языке рассказывается про них, и становится понятно почему при попытке их исправить будет неизбежна существенная просадка производительности. Встретил на просторах фэйсбука такое высказывание, что мы все это время жили хорошо по производительности взаймы у безопасности.
Хабр
Новогодние подарки, часть первая: Meltdown
Да, я знаю, что это уже третий материал на GT/HH по данной проблеме. Однако, к сожалению, до сих пор я не встречал хорошего русскоязычного материала — да в общем и с англоязычными, чего уж тут греха...
Mikel Bober-Irizar протестировал производительность ML библиотек после PTI патча
https://medium.com/implodinggradients/meltdown-c24a9d5e254e
TL;DR: производительность в среднем падает на 5-10%, но для некоторых задач (факторизации матриц) достигает 40%
https://medium.com/implodinggradients/meltdown-c24a9d5e254e
TL;DR: производительность в среднем падает на 5-10%, но для некоторых задач (факторизации матриц) достигает 40%
Medium
The Meltdown bug and the KPTI patch: How does it impact ML performance?
A comprehensive benchmark analysis of how much the KAISER/KPTI Linux patch affects machine learning and data science performance.
Японские ученые реконструировали картинки из мозговой активности человека. Они обучили генерационную модель на паре “активность-картинка”, получилось довольно симпатично. Мозговая активность считывалась с помощью магнитного резонанса во время показа картинки человеку. https://www.biorxiv.org/content/biorxiv/early/2017/12/30/240317.full.pdf
Классная статья про решение задачи поиска одежды по фотографии https://medium.com/@movchan74/how-to-apply-distance-metric-learning-for-street-to-shop-problem-d21247723d2a
https://github.com/movchan74/street_to_shop_experiments
Александр описывает все этапы решения и проблемы, с которыми он столкнулся: сбор данных (скрейпинг Aliexpress), чистка, разделение на выборки, triplet loss, анализ результатов.
Ёмко и жизненно, ставлю класс.
Еще и демку сделал http://vps389544.ovh.net:5555/
https://github.com/movchan74/street_to_shop_experiments
Александр описывает все этапы решения и проблемы, с которыми он столкнулся: сбор данных (скрейпинг Aliexpress), чистка, разделение на выборки, triplet loss, анализ результатов.
Ёмко и жизненно, ставлю класс.
Еще и демку сделал http://vps389544.ovh.net:5555/
Medium
How to Apply Distance Metric Learning to Street-to-Shop Problem
Let’s start with a definition of street-to-shop problem — identifying a fashion item in a user image and finding it in an online shop. Have…
Еще одна статья на медиуме, где автор в форме комиксов постарался объяснить метод обучения с подкреплением Actor-Critic. https://medium.com/@rudygilman/intuitive-rl-intro-to-advantage-actor-critic-a2c-4ff545978752
Medium
Intuitive RL: Intro to Advantage-Actor-Critic (A2C)
Reinforcement learning (RL) practitioners have produced a number of excellent tutorials. Most, however, describe RL in terms of…
Бенчмарк tf на GPU с архитектурой Volta.
https://medium.com/initialized-capital/benchmarking-tensorflow-performance-on-next-generation-gpus-e68c8dd3d0d4
Paperspace Volta (16GB — $2.30/hour)
Amazon EC2 p3.2xlarge Volta (16GB— $3.06/hour)
Я как-то упустил момент, когда Volta теслы появились у облачных провайдеров.
https://medium.com/initialized-capital/benchmarking-tensorflow-performance-on-next-generation-gpus-e68c8dd3d0d4
Paperspace Volta (16GB — $2.30/hour)
Amazon EC2 p3.2xlarge Volta (16GB— $3.06/hour)
Я как-то упустил момент, когда Volta теслы появились у облачных провайдеров.
Medium
Benchmarking Tensorflow Performance on Next Generation GPUs
As machine learning (ML) researchers and practitioners continue to explore the bounds of deep learning, the need for powerful GPUs to both…
FAIR выпустил реализации Mask R-CNN и RetinaNet (и еще несколько сортов R-CNN) на caffe2
https://github.com/facebookresearch/Detectron
Интересно, что general purpose фреймворки (caffe2, tf (https://github.com/tensorflow/models/tree/master/research/object_detection)) внедряют object detection примитивы глубоко внутрь себя.
https://github.com/facebookresearch/Detectron
Интересно, что general purpose фреймворки (caffe2, tf (https://github.com/tensorflow/models/tree/master/research/object_detection)) внедряют object detection примитивы глубоко внутрь себя.
GitHub
GitHub - facebookresearch/Detectron: FAIR's research platform for object detection research, implementing popular algorithms like…
FAIR's research platform for object detection research, implementing popular algorithms like Mask R-CNN and RetinaNet. - facebookresearch/Detectron