Вышла наша статья на хабре про то, как научить ИИ шутить. https://habrahabr.ru/company/funcorp/blog/351428/
Habr
Можно ли научить искусственный интеллект шутить?
В последнее время машины одержали ряд убедительных побед над людьми: они уже лучше играют в го, шахматы и даже в Dota 2. Алгоритмы сочиняют музыку и пишут стихи.
Печальное событие для индустрии self-driving cars и, конечно, для семьи погибшей. Машина убер в режиме автоматической езды сбила насмерть велосипедистку. Водитель, который должен перехватывать управление в трудных ситуациях не успел среагировать. http://kdvr.com/2018/03/19/woman-killed-after-after-being-hit-by-self-driving-uber-vehicle-in-arizona/
FOX31 Denver
Woman killed after after being hit by self-driving Uber vehicle in Arizona
TEMPE, Ariz. — A woman was killed after being hit by a self-driving vehicle operated by Uber in what is believed to be the first known death of a pedestrian struck by an autonomous vehicle on…
Apple и IBM представили совместное решение по взаимодействию между Apple CoreML и IBM Watson. Идея в том, чтобы сделать более легкое обновление моделей в приложении на Iphone/Ipad. Модель загружается в приложение непосредственно из IBM, там же обучается/дообучается. https://developer.apple.com/ibm/
https://twimlai.com/twiml-talk-119-adversarial-attacks-reinforcement-learning-agents-ian-goodfellow-sandy-huang/
Ian Goodfellow и Sandy Huang рассказывают о статье, в которой они ломают сеть, обученную играть в Atari, объясняют, что такое adversarial attacks, какие они бывают и стоит ли их бояться уже сейчас.
Из интересных примеров:
* добавляем в обучающую выборку всего одну картинку, которая приводит к тому, что собаки начинают определяться как рыбы
* атака моделей с памятью, цель которой - изменить поведение агента так, чтобы в будущем он сделал то, что хочет от него атакующий
P.S.
В комментариях к подкасту можно почитать о несправедливости академического мира
Ian Goodfellow и Sandy Huang рассказывают о статье, в которой они ломают сеть, обученную играть в Atari, объясняют, что такое adversarial attacks, какие они бывают и стоит ли их бояться уже сейчас.
Из интересных примеров:
* добавляем в обучающую выборку всего одну картинку, которая приводит к тому, что собаки начинают определяться как рыбы
* атака моделей с памятью, цель которой - изменить поведение агента так, чтобы в будущем он сделал то, что хочет от него атакующий
P.S.
В комментариях к подкасту можно почитать о несправедливости академического мира
The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence)
Adversarial Attacks Against Reinforcement Learning Agents - Talk #119
Sam Charrington is joined by Ian Goodfellow, Staff Research Scientist at Google Brain and Sandy Huang, Phd Student in the EECS department at UC Berkeley, to discuss their work on the paper Adversarial Attacks on Neural Network Policies.
Новая работа от авторов Face2Face - FaceVR.
Создает 3d-аватар реального человека, который может использовать другой человек. Выглядит криповато, но это дело времени.
https://www.youtube.com/watch?v=jIlujM5avU8
Создает 3d-аватар реального человека, который может использовать другой человек. Выглядит криповато, но это дело времени.
https://www.youtube.com/watch?v=jIlujM5avU8
YouTube
FaceVR: Real-Time Facial Reenactment and Eye Gaze Control in Virtual Reality
ACM Transactions on Graphics 2018 (ToG)
Project Page: http://niessnerlab.org/projects/thies2018facevr.html
Paper Abstract
We propose FaceVR, a novel image-based method that enables video teleconferencing in VR based on self-reenactment. State-of-the-art…
Project Page: http://niessnerlab.org/projects/thies2018facevr.html
Paper Abstract
We propose FaceVR, a novel image-based method that enables video teleconferencing in VR based on self-reenactment. State-of-the-art…
Проект Стенфорда для агрегации медицинских радиологических данных. Это то, чего действительно не хватает. http://langlotzlab.stanford.edu/projects/medical-image-net/
Radiology Informatics
Medical Image Net
cloud-based medical image analysis
Израильский премьер заявил о старте проекта по открытию медицинских данных, и государство вкладывает в это больше 250 млн долларов. Пациенты, которые не захотят раскрытия своей медицинской истории, смогут отказаться. https://www.reuters.com/article/us-israel-health/israel-to-launch-big-data-health-project-idUSKBN1H10LW
Очень интересная статья в первую очередь про GPU на Apple и использованию его для ML задач, а так же про историю GPU. Легко и понятно. https://habrahabr.ru/company/jugru/blog/352192/
Хабр
Как стать GPU-инженером за час
Нужно ли iOS-разработчику, не занимающемуся играми, уметь работать с GPU? Нужно ли ему вообще знать о том, что в айфоне есть GPU? Многие успешно работают в iOS-р...
Тут Google Brain описывает несколько новых оптимизаторов для нейронных сетей, собранных автоматически из кусочков с помощью RL:
https://research.googleblog.com/2018/03/using-machine-learning-to-discover.html
По мотивам статьи:
https://arxiv.org/abs/1709.07417
Этот метод работает лучше, чем https://arxiv.org/abs/1707.07012 (1 день на 100 CPU против недель на 800 GPU).
Чтобы получить +0.4% accuracy на ImageNet не надо думать, как более эффективно использовать данные или анализировать архитектуру, надо просто добавить обучаемых компонент в пайплайн обучения, запустить на сотнях серверов и надеяться, что оно там само разберётся, как лучше. Что же с нами стало.
https://research.googleblog.com/2018/03/using-machine-learning-to-discover.html
По мотивам статьи:
https://arxiv.org/abs/1709.07417
Этот метод работает лучше, чем https://arxiv.org/abs/1707.07012 (1 день на 100 CPU против недель на 800 GPU).
Чтобы получить +0.4% accuracy на ImageNet не надо думать, как более эффективно использовать данные или анализировать архитектуру, надо просто добавить обучаемых компонент в пайплайн обучения, запустить на сотнях серверов и надеяться, что оно там само разберётся, как лучше. Что же с нами стало.
Google AI Blog
Using Machine Learning to Discover Neural Network Optimizers
Posted by Irwan Bello, Research Associate, Google Brain Team Deep learning models have been deployed in numerous Google products, such as S...
pytorch на ubuntu теперь можно устанавливать из pypi
pip install torch
feelsgood
А еще caffe2 переехал в репозиторий pytorch
pip install torch
feelsgood
А еще caffe2 переехал в репозиторий pytorch
Triplet loss не так прост, как может показаться из его формулы.
Статья о разных реализациях и их особенностях с кодом на tensorflow https://omoindrot.github.io/triplet-loss
Статья о разных реализациях и их особенностях с кодом на tensorflow https://omoindrot.github.io/triplet-loss
Olivier Moindrot blog
Triplet Loss and Online Triplet Mining in TensorFlow
Triplet loss is known to be difficult to implement, especially if you add the constraints of TensorFlow.
Красивенький дашборд, показывающий загрузку GPU, в т.ч с нескольких машин: https://github.com/msalvaris/gpu_monitor
И nvidia-smi для кластера:
https://github.com/PatWie/cluster-smi
И nvidia-smi для кластера:
https://github.com/PatWie/cluster-smi
GitHub
msalvaris/gpu_monitor
Monitor your GPUs whether they are on a single computer or in a cluster - msalvaris/gpu_monitor
Forwarded from addmeto
OpenAI проводит совершенно гениальный в своей простоте конкурс - на лучшую самообучаюущуюся систему, играющую в первые три игры Sonic The Hedgehot для Sega Genesis. Причем имплементация настолько технически простая, что прямо так и тянет потратить на это все выходные. Присоединяйтесь, конкурс крутой!
https://contest.openai.com/
https://contest.openai.com/
SqueezeNext: Hardware-Aware Neural Network Design
https://arxiv.org/pdf/1803.10615.pdf
Несколько новых версий SqueezeNet, одна из которых при в 2 раза меньшем количестве операций даёт схожее accuracy на ImageNet, а в более глубокой версии, работает столько же, но с лучшим accuracy.
Отличие от mobilenet в том, что не используются depthwise separable convolutions, эффективной реализации которых пока нигде нет (https://www.reddit.com/r/MachineLearning/comments/8a7sf6/d_mobilenet_v2_paper_said_depthwise_separable/). Вместо них - обычные separable convolution, как в inception-ах. И переделанный SqueezeNet блок, в котором сжатие каналов теперь идёт в 2 этапа.
В статье можно почитать про виды архитектуры ускорителей нейронных сетей. Авторы добивались максимальной производительности для Intel Knights Landing (Xeon Phi) и на них же обучали.
Возможно, из-за сложности реализации из аугментаций для обучения использовался только random crop.
https://arxiv.org/pdf/1803.10615.pdf
Несколько новых версий SqueezeNet, одна из которых при в 2 раза меньшем количестве операций даёт схожее accuracy на ImageNet, а в более глубокой версии, работает столько же, но с лучшим accuracy.
Отличие от mobilenet в том, что не используются depthwise separable convolutions, эффективной реализации которых пока нигде нет (https://www.reddit.com/r/MachineLearning/comments/8a7sf6/d_mobilenet_v2_paper_said_depthwise_separable/). Вместо них - обычные separable convolution, как в inception-ах. И переделанный SqueezeNet блок, в котором сжатие каналов теперь идёт в 2 этапа.
В статье можно почитать про виды архитектуры ускорителей нейронных сетей. Авторы добивались максимальной производительности для Intel Knights Landing (Xeon Phi) и на них же обучали.
Возможно, из-за сложности реализации из аугментаций для обучения использовался только random crop.
reddit
[D] Mobilenet v2 paper said Depthwise Separable convolution...
What about spatial separable filter?
Deep Extreme Cut
http://www.vision.ee.ethz.ch/~cvlsegmentation/dextr/
Модель, которая делает сегментацию объекта по четырём точкам. В статье описана куча экспериментов, если кратко - сейчас это лучший инструмент для human-guided сегментации.
Работает интересно - на вход сети подается кусочек изображения, вырезанный вокруг отмеченных точек с небольшим зазором + дополнительным каналом размытые по гауссову распределению области точек. Именно такая конфигурация работает лучше всего.
Есть код с демо:
https://github.com/scaelles/DEXTR-PyTorch/
http://www.vision.ee.ethz.ch/~cvlsegmentation/dextr/
Модель, которая делает сегментацию объекта по четырём точкам. В статье описана куча экспериментов, если кратко - сейчас это лучший инструмент для human-guided сегментации.
Работает интересно - на вход сети подается кусочек изображения, вырезанный вокруг отмеченных точек с небольшим зазором + дополнительным каналом размытые по гауссову распределению области точек. Именно такая конфигурация работает лучше всего.
Есть код с демо:
https://github.com/scaelles/DEXTR-PyTorch/
www.vision.ee.ethz.ch
Deep Extreme Cut
DEXTR
This media is not supported in your browser
VIEW IN TELEGRAM
Я его попробовал, работает вот так. На объектах, которые были в обучающей выборке (машины и люди) работает практически идеально. На невыпуклых объектах работает так себе. Точки ставить непривычно.
И на тему уменьшения усилий, необходимых для разметки данных и ускорения этого процесса можно послушать подкаст https://twimlai.com/twiml-talk-125-human-loop-ai-emergency-response-robert-munro/ с CTO сервиса Figure Eight (бывший Crowd Flower).
Полезной информации немного, зато история у дядьки интересная: он устанавливал солнечные батареи в больнице для беженцев в Сьерра-Леоне, и там осознал проблему того, что никто не занимается применением ML для разработки базовых сервисов работающих с текстом, вроде спам-фильтров, для редких языков, на которых там говорят. Об этом он и написал PhD в Стэнфорде.
Полезной информации немного, зато история у дядьки интересная: он устанавливал солнечные батареи в больнице для беженцев в Сьерра-Леоне, и там осознал проблему того, что никто не занимается применением ML для разработки базовых сервисов работающих с текстом, вроде спам-фильтров, для редких языков, на которых там говорят. Об этом он и написал PhD в Стэнфорде.
The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence)
Human-in-the-Loop AI for Emergency Response & More with Rob Munro
Sam Charrington is joined by Rob Munro, CTO of the newly branded Figure Eight, to discuss some of the work he’s previously done applying machine learning to disaster response and epidemiology, technical challenges that he’s encountered in trying to scale…
Rethinking Atrous Convolution for Semantic Image Segmentation
https://arxiv.org/pdf/1706.05587.pdf
Статья от гугла про использование atrous convolutions в сегментации и модель DeepLabv3. В статье есть неплохой обзор разных способов добиваться более точных масок и много результатов экспериментов с atrous convolution.
Интересные моменты:
1) Оказывается (простите за англорусский), если при обучении не ресайзить вниз ground truth мапу, а ресайзить вверх выходы сети, результат получается точнее.
2) Батч нормализация ОЧЕНЬ чувствительна к раазмеру батча в этой архитектуре (разница между лучшим и худшим результатом - 13 mIOU)
3) Atrous convolution дают использовать интересную фишку - можно сначала обучать модель с более большими дырками в конволюциях, так получаются меньшие по разрешению фичемапы и обучение работает быстрее, а потом уменьшать дырки и дообучать модель для лучшей точности.
Atrous convolutions дают возможность делать маленький stride на выходе, сохраняя нужную глубину и не раздувая количество параметров.
https://arxiv.org/pdf/1706.05587.pdf
Статья от гугла про использование atrous convolutions в сегментации и модель DeepLabv3. В статье есть неплохой обзор разных способов добиваться более точных масок и много результатов экспериментов с atrous convolution.
Интересные моменты:
1) Оказывается (простите за англорусский), если при обучении не ресайзить вниз ground truth мапу, а ресайзить вверх выходы сети, результат получается точнее.
2) Батч нормализация ОЧЕНЬ чувствительна к раазмеру батча в этой архитектуре (разница между лучшим и худшим результатом - 13 mIOU)
3) Atrous convolution дают использовать интересную фишку - можно сначала обучать модель с более большими дырками в конволюциях, так получаются меньшие по разрешению фичемапы и обучение работает быстрее, а потом уменьшать дырки и дообучать модель для лучшей точности.
Atrous convolutions дают возможность делать маленький stride на выходе, сохраняя нужную глубину и не раздувая количество параметров.
Вышел pytorch 0.4.0 с кучей изменений.
https://github.com/pytorch/pytorch/releases/tag/v0.4.0
Из приятного:
1) Больше нет Variable
2) dtype в тензорах и более похожий на numpy интерфейс
3) Полная поддержка advanced indexing
4) Новый checkpoint контейнер, который позволяет экономить память за счет пересчета нужных для расчета градиентов выходов
5) Встроенный профайлер torch.utils.bottleneck
6) Новые генераторы случайных распределений
7) Официальная поддержка Windows
И еще много мелких изменений и улучшений.
Из не очень понятного:
1) Вместо volatile теперь есть контестные менеджеры для выключения расчета градиентов.
Изменения Variable ломающие, поэтому нужно будет переписать свой код до релиза 0.5.0 http://pytorch.org/2018/04/22/0_4_0-migration-guide.html
https://github.com/pytorch/pytorch/releases/tag/v0.4.0
Из приятного:
1) Больше нет Variable
2) dtype в тензорах и более похожий на numpy интерфейс
3) Полная поддержка advanced indexing
4) Новый checkpoint контейнер, который позволяет экономить память за счет пересчета нужных для расчета градиентов выходов
5) Встроенный профайлер torch.utils.bottleneck
6) Новые генераторы случайных распределений
7) Официальная поддержка Windows
И еще много мелких изменений и улучшений.
Из не очень понятного:
1) Вместо volatile теперь есть контестные менеджеры для выключения расчета градиентов.
Изменения Variable ломающие, поэтому нужно будет переписать свой код до релиза 0.5.0 http://pytorch.org/2018/04/22/0_4_0-migration-guide.html
GitHub
Release Trade-off memory for compute, Windows support, 24 distributions with cdf, variance etc., dtypes, zero-dimensional Tensors…
PyTorch 0.4.0 release notes
Table of Contents
Major Core Changes
Tensor / Variable merged
Zero-dimensional Tensors
dtypes
migration guide
New Features
Tensors
Full support for advanced indexi...
Table of Contents
Major Core Changes
Tensor / Variable merged
Zero-dimensional Tensors
dtypes
migration guide
New Features
Tensors
Full support for advanced indexi...