Новый пост на distill.pub о визуализации и попытках понять, чему же все-таки научилась нейронная сеть https://distill.pub/2017/feature-visualization/
Distill
Feature Visualization
How neural networks build up their understanding of images
Автодифференцированием в современных фреймворках уже никого не удивишь. Но чтобы оно работало, надо пользоваться "родными" для фреймворка функциями, а иногда так хочется написать слой прямо на питоне или нампи...
Гугл в лице Alex Wiltschko выпустил библиотеку, которая поддерживает автодифференцирование питоновских и нампи операторов, причем генерирует читаемый код!
https://research.googleblog.com/2017/11/tangent-source-to-source-debuggable.html
Гугл в лице Alex Wiltschko выпустил библиотеку, которая поддерживает автодифференцирование питоновских и нампи операторов, причем генерирует читаемый код!
https://research.googleblog.com/2017/11/tangent-source-to-source-debuggable.html
Google AI Blog
Tangent: Source-to-Source Debuggable Derivatives
Posted by Alex Wiltschko, Research Scientist, Google Brain Team (Crossposted on the Google Open Source Blog ) Tangent is a new, free, and op...
Как сделать максимально хипстерский DL-фреймворк:
1) Написать на расте
2) Назвать героем из доты
3) Запустить в браузере
https://juggernaut.rs/demo/
http://blog.aylien.com/juggernaut-neural-networks-in-a-web-browser/
1) Написать на расте
2) Назвать героем из доты
3) Запустить в браузере
https://juggernaut.rs/demo/
http://blog.aylien.com/juggernaut-neural-networks-in-a-web-browser/
Погрузимся в грязный мир обучения с подкреплением. Статья из университета Макгила (McGill University). Ребята придумали OptionGAN - это помесь GAN и inverse RL. Идея вкратце такова: допустим есть state, action, reward от эксперта - так давайте же научим делать предсказания reward таким, чтобы дискриминатор не смог отличить от экспетного. https://arxiv.org/abs/1709.06683
просто ссылка о том, какие вакансии сейчас есть в ИИ, например. https://www.fhi.ox.ac.uk/vacancies/
Future of Humanity Institute
Jobs - Future of Humanity Institute
FHI is a multidisciplinary research institute at Oxford University studying big picture questions for human civilization.
кстати их директор является автором гипотезы симуляции, рекомендую. https://ru.wikipedia.org/wiki/Гипотеза_симуляции
Wikipedia
Гипотеза симуляции
Гипотеза симуляции (англ. simulation hypothesis) — философская гипотеза о том, что окружающая нас реальность является симуляцией (чаще всего предполагается, что это компьютерная симуляция). Чтобы симуляция выглядела реалистично для реципиента, программа подстраивается…
Ииии очередная попытка поддерживать табличку со State of the art результатами по разным задачам
https://github.com/RedditSota/state-of-the-art-result-for-machine-learning-problems
https://github.com/RedditSota/state-of-the-art-result-for-machine-learning-problems
GitHub
GitHub - RedditSota/state-of-the-art-result-for-machine-learning-problems: This repository provides state of the art (SoTA) results…
This repository provides state of the art (SoTA) results for all machine learning problems. We do our best to keep this repository up to date. If you do find a problem's SoTA result is out...
Интересный отчет об участии в соревновании 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.