SlideShare a Scribd company logo
1 of 63
Artisto: опыт запуска
нейросетей в production
Тянтов Эдуард, Mail.ru Group
Artisto
1-е мобильное приложение стилизации видео в мире
Уникальная технология стабилизации видео
Приложение с технологией разработаны за 1 месяц
Кратко про нейронные сети
1. Многослойный
персептрон, 1960
2. Обратное распространение
ошибки, 1974
3. Сверточная сеть,
1990-е
Нейронные сети
Color image (RGB) Feature maps3 channels
Convolutions
Input
output
Операция свертки
Профит:
• уменьшение кол-ва вычислений
• относительная устойчивость к сдвигу и повороту изображения
Операция pooling
edges object parts (combination of edges) object models
ImageNet Challenge
Архитектура
популярной
VGG-сети
Архитектура сверточной сети
Перенос стиля на фото
Изображение Стиль
Стилизованное
изображение
+ =
Перенос стиля: цель
Перенос стиля: история
A Neural Algorithm of Artistic Style
Texture Networks: Feed-forward Synthesis of Textures and Stylized Images
Perceptual Losses for Real-Time Style Transfer and Super-Resolution
Запуск Prisma
Vinci
Artisto
Sept 2015
10 Mar 2016
27 Mar 2016
11 June 2016
28 Jul 2016
29 Jul 2016
t
в
Используем VGG-сеть как feature extractor
x
c
Feature maps
Feature maps
Восстановление контента
Target
output
Error back propagation
Оптимизируем изображение x по целевой функции L(x,c).
x
x
Восстановление контента
Различные
итерации
слой: conv4_2
Восстановление контента
• Первые слои хорошо восстанавливают изображение
• На более глубоких:
• нечеткие линии, т.к. меньше информации о пространственных координатах
• теряются цвета
conv1_1 conv2_1 conv3_1 conv4_1 conv5_1
Восстановление контента
• Надо избавиться от пространственного положения фич
• Простое решение: посчитать среднее
• Сложное: матрица ковариации между картами признаков
Feature maps
Попарные ковариации
F
Width
Height
Depth
Ковариационная
матрица
Feature maps
F
Width
Height
Depth
Среднее по
Width&Height
Mean vector
Восстановление стиля
Error back propagation
Feature maps
Feature maps
Восстановление стиля
Различные итерации
Восстановление стиля
• Получился шум в стиле Ван Гога: цвета, мазки
• Пространственные координаты полностью потеряны
conv1_1
conv1_1
conv2_1
conv1_1
conv2_1
conv3_1
conv4_1
conv1_1
conv2_1
conv3_1
conv4_1
conv5_1
conv1_1
conv2_1
conv3_1
Восстановление стиля
Комбинированный loss
s
c
x
Error back propagation
Детали контента сохраняют позицию, но перерисовываются нужным стилем.
Комбинированный loss: результат
+ Мерджит две любые картинки
+ Не требует обучения сети
+ Код на различных DL-библиотеках: TensorFlow, Torch, Theano
- Долгая работа алгоритма для онлайна
• CPU: 5min
• GPU: 10-15 sec
Artistic Style: резюме
Вместо оптимизации изображения
обучаем сеть, которая трансформирует его в стилизованное.
Real-Time Style Transfer
Обучение сети-генератора
s
X
«Пирамида»: сеть видит исходное изображение в разных
разрешениях.
Convolution
block
Join block
Структура сети-генератора
+ Скорость: можно сделать онлайн-обработку фото/видео
• Inference: 20-100 ms на GPU
- Требует обучения модели под каждый стиль.
- Длительность: 1-4h (GPU, Titan X)
- Тяжело экспериментировать
- Код только на Torch (на момент разработки приложения)
Real-Time Style Transfer: резюме
Эксперименты
«Жертва» экспериментов
Artistic style: из коробки
• Хорошо передает стиль (мазки, цвета)
• Трудно добиться «чистых» изображений
• Удалось оптимизировать до 100 мс/фото под один из стилей
Итог: не подходит из-за скорости.
Artistic style: резюме
Content Style Expected result
+ =
Ожидание
Real-Time Style Transfer
Реальность
Style
Real-Time Style Transfer: из коробки
• Из коробки плохая стилизация
• Трудно экспериментировать из-за долгих итераций обучения
• Хороший результат:
• код на Torch Ульянова
• + модель генератора Johnson’а
• + патчи
Real-Time Style Transfer: результат
Стиль
Результат
Real-Time Style Transfer: результат
Улучшения алгоритма для видео
Недостатки решения: лица
• Алгоритму выгодно накладывать текстуру
на «пустые» области
• Рябь сильно ухудшает качество видео
Недостатки решения: рябь на видео
Heatmap loss
То, что не может математика, может дизайнер.
Designer loss
Zoom интересной
области
Designer loss
Можно изменять исходные изображения при обучении, чтобы сеть
была устойчива к освещению/шуму/…
+noise
Augmentation
Super-resolution – улучшение разрешения фото.
+ Отлично подходит, чтобы убрать мелкий шум
+ Есть предобученная сеть waifu2x
- Скорость: дополнительный прогон через сеть
Super-resolution
Super-resolution: waifu
1. Heatmap loss
2. Designer loss
3. Augmentation
4. Super-resolution
Стабилизация видео: резюме
Генерация стилей
• Большое кол-во параметров и их значений
• слои, веса, размеры картинок, …
• Оценка результата – «на глаз»
• Loss плохо коррелирует с качеством выходного изображения
• алгоритмы итеративны – много результатов => «глаз замыливается»
Итерация обучения
Красота
Сложности подбора стиля
• Обратный брутфорс проще,
чем прямой
• Надо найти несколько
наборов «рабочих»
параметров
• Дотюнивать кандидатов
руками
• Коробочное решение – FGLab
Интерфейс подбора стиля
Интерфейс подбора стиля
1. Берем много стилевых картинок
2. Рабочие сеты гипер-параметров
3. Много GPU
4. Redbull/Monster
5. ???
6. PROFIT
Штамповка стилей
Результаты
• Пользователям легче работать с фото, чем с видео
• Больше нравятся лайт трансформации
User experience
• Пользователи юзали MSQRD/Snapchat + Artisto
• Добавили такой функционал из ICQ
• Перерисованные маски гармоничнее выглядят
Маски
Спасибо за внимание!
Вопросы?
Appendix
• Нейросети на Torch (LUA)
• Пробовали переписать на TensorFlow (Python)
• наткнулись на баг с выделением памяти на GPU
• Backend
• Docker-контейнер Ubuntu на centos7
• C + luajit
• Быстродействие на GPU
• 24ms, видео 350x350
• 75ms, фото 1024x1024
Технические детали
• Игровые карты Geforce Titan X и 1080
• серверные значительно дороже
• amazon: дорого, слабые карты (на момент запуска)
• На launch’е ставили PC из-за отсутствия серверов в продаже
• Большинство GPU-карт требуют особую материнскую плату
• Сервера: 4 x Titan X
Сервера
руководит процессом
Бэкенд
Модель генератора Johnson’а

More Related Content

What's hot

NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
Ontico
 
Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...
Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...
Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...
Ontico
 
10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...
10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...
10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...
Ontico
 
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
Ontico
 
Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)
Ontico
 
Java Platform Performance BoF
Java Platform Performance BoFJava Platform Performance BoF
Java Platform Performance BoF
Dmitry Buzdin
 

What's hot (20)

Multithreading in JS. Myth or reality?
Multithreading in JS. Myth or reality?Multithreading in JS. Myth or reality?
Multithreading in JS. Myth or reality?
 
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
 
Вебинар: Основы распараллеливания С++ программ при помощи OpenMP
Вебинар: Основы распараллеливания С++ программ при помощи OpenMPВебинар: Основы распараллеливания С++ программ при помощи OpenMP
Вебинар: Основы распараллеливания С++ программ при помощи OpenMP
 
Вячеслав Бахмутов
Вячеслав БахмутовВячеслав Бахмутов
Вячеслав Бахмутов
 
Константин Осипов
Константин ОсиповКонстантин Осипов
Константин Осипов
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
 
Денис Иванов
Денис ИвановДенис Иванов
Денис Иванов
 
Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...
Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...
Chronicle Map — key-value хранилище для трейдинга на Java / Левентов Роман (C...
 
Андрей Акиньшин
Андрей АкиньшинАндрей Акиньшин
Андрей Акиньшин
 
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
 
10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...
10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...
10 способов достижения HighLoad'а и BigData на ровном месте / Илья Космодемья...
 
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
 
Ровная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластереРовная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластере
 
Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)
 
libfpta — обгоняя SQLite и Tarantool / Леонид Юрьев (Positive Technologies)
libfpta — обгоняя SQLite и Tarantool / Леонид Юрьев (Positive Technologies)libfpta — обгоняя SQLite и Tarantool / Леонид Юрьев (Positive Technologies)
libfpta — обгоняя SQLite и Tarantool / Леонид Юрьев (Positive Technologies)
 
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
 
Java Platform Performance BoF
Java Platform Performance BoFJava Platform Performance BoF
Java Platform Performance BoF
 
Производительность WebGL-приложений / Дмитренко Кирилл (Яндекс)
Производительность WebGL-приложений / Дмитренко Кирилл (Яндекс)Производительность WebGL-приложений / Дмитренко Кирилл (Яндекс)
Производительность WebGL-приложений / Дмитренко Кирилл (Яндекс)
 
Антон Турецкий
Антон ТурецкийАнтон Турецкий
Антон Турецкий
 
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
 

Viewers also liked

Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Ontico
 
Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)
Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)
Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)
Ontico
 
Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...
Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...
Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...
Ontico
 
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Ontico
 
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
Ontico
 
Побеждаем мейнфрейм / Андрей Николаенко (IBS)
Побеждаем мейнфрейм / Андрей Николаенко (IBS)Побеждаем мейнфрейм / Андрей Николаенко (IBS)
Побеждаем мейнфрейм / Андрей Николаенко (IBS)
Ontico
 
AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)
AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)
AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)
Ontico
 
Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...
Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...
Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...
Ontico
 
Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...
Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...
Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...
Ontico
 
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Ontico
 
Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...
Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...
Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...
Ontico
 
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Ontico
 

Viewers also liked (20)

Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
 
Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)
Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)
Нейронные сети: практическое применение / Наталия Ефремова (NTechLab)
 
Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...
Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...
Нейронные сети на страже индустриальной кибербезопасности / Павел Филонов (Ла...
 
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
 
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store / Петр Зайцев (Percona)
 
Введение в архитектуры нейронных сетей / Григорий Сапунов (Intento)
Введение в архитектуры нейронных сетей / Григорий Сапунов (Intento)Введение в архитектуры нейронных сетей / Григорий Сапунов (Intento)
Введение в архитектуры нейронных сетей / Григорий Сапунов (Intento)
 
Высокопроизводительный инференс глубоких сетей на GPU с помощью TensorRT / Ма...
Высокопроизводительный инференс глубоких сетей на GPU с помощью TensorRT / Ма...Высокопроизводительный инференс глубоких сетей на GPU с помощью TensorRT / Ма...
Высокопроизводительный инференс глубоких сетей на GPU с помощью TensorRT / Ма...
 
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
 
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
Как HeadHunter удалось безопасно нарушить RFC 793 (TCP) и обойти сетевые лову...
 
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
 
Побеждаем мейнфрейм / Андрей Николаенко (IBS)
Побеждаем мейнфрейм / Андрей Николаенко (IBS)Побеждаем мейнфрейм / Андрей Николаенко (IBS)
Побеждаем мейнфрейм / Андрей Николаенко (IBS)
 
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
 
Опыт построения СХД на базе Windows Server для использования в публичном обла...
Опыт построения СХД на базе Windows Server для использования в публичном обла...Опыт построения СХД на базе Windows Server для использования в публичном обла...
Опыт построения СХД на базе Windows Server для использования в публичном обла...
 
AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)
AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)
AWS и GCP: трудная жизнь в облаках / Максим Пугачев (IPONWEB)
 
Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...
Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...
Сайт под управлением ERP или ERP под управлением сайта / Станислав Гоц (Lamod...
 
Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...
Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...
Особенности архитектуры распределённого хранилища в Dropbox / Слава Бахмутов ...
 
Testing applications with traffic control in containers / Alban Crequy (Kinvolk)
Testing applications with traffic control in containers / Alban Crequy (Kinvolk)Testing applications with traffic control in containers / Alban Crequy (Kinvolk)
Testing applications with traffic control in containers / Alban Crequy (Kinvolk)
 
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
 
Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...
Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...
Инфраструктура распределенных приложений на nodejs / Станислав Гуменюк (Rambl...
 
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
 

Similar to Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)

Дополненная реальность через веб камеру
Дополненная реальность через веб камеруДополненная реальность через веб камеру
Дополненная реальность через веб камеру
Михаил Кокорев
 
Как мы храним 75 млн пользователей (Денис Бирюков)
Как мы храним 75 млн пользователей  (Денис Бирюков)Как мы храним 75 млн пользователей  (Денис Бирюков)
Как мы храним 75 млн пользователей (Денис Бирюков)
Ontico
 

Similar to Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group) (20)

Архитектура современного 3 d движка: Разработка Xenus: Точка кипения
Архитектура современного 3 d движка: Разработка Xenus: Точка кипенияАрхитектура современного 3 d движка: Разработка Xenus: Точка кипения
Архитектура современного 3 d движка: Разработка Xenus: Точка кипения
 
Denis Perevalov -- Computer vision with OpenCV 1
Denis Perevalov -- Computer vision with OpenCV 1Denis Perevalov -- Computer vision with OpenCV 1
Denis Perevalov -- Computer vision with OpenCV 1
 
D
DD
D
 
Developing our own rendering
Developing our own renderingDeveloping our own rendering
Developing our own rendering
 
Character creation pipeline for Age of Magic (3D mobile)
Character creation pipeline for Age of Magic (3D mobile)Character creation pipeline for Age of Magic (3D mobile)
Character creation pipeline for Age of Magic (3D mobile)
 
Никита Глушков, К вопросу о реализации кроссплатформенных фреймворков
Никита Глушков, К вопросу о реализации кроссплатформенных фреймворковНикита Глушков, К вопросу о реализации кроссплатформенных фреймворков
Никита Глушков, К вопросу о реализации кроссплатформенных фреймворков
 
Видео + Конференция. Как получить правильное изображение? Константин Смирнов
Видео + Конференция. Как получить правильное изображение? Константин СмирновВидео + Конференция. Как получить правильное изображение? Константин Смирнов
Видео + Конференция. Как получить правильное изображение? Константин Смирнов
 
Denis Perevalov -- Computer Vision with OpenCV 2
Denis Perevalov -- Computer Vision with OpenCV 2Denis Perevalov -- Computer Vision with OpenCV 2
Denis Perevalov -- Computer Vision with OpenCV 2
 
Дополненная реальность через веб камеру
Дополненная реальность через веб камеруДополненная реальность через веб камеру
Дополненная реальность через веб камеру
 
Как мы храним 75 млн пользователей (Денис Бирюков)
Как мы храним 75 млн пользователей  (Денис Бирюков)Как мы храним 75 млн пользователей  (Денис Бирюков)
Как мы храним 75 млн пользователей (Денис Бирюков)
 
YaC 2013 Notes
YaC 2013 NotesYaC 2013 Notes
YaC 2013 Notes
 
SECON'2014 - Сергей Шпадырев - Разработка 3D-игры на Flash: едем с костылями...
SECON'2014 - Сергей Шпадырев -  Разработка 3D-игры на Flash: едем с костылями...SECON'2014 - Сергей Шпадырев -  Разработка 3D-игры на Flash: едем с костылями...
SECON'2014 - Сергей Шпадырев - Разработка 3D-игры на Flash: едем с костылями...
 
JavaFX 2.0 overview
JavaFX 2.0 overviewJavaFX 2.0 overview
JavaFX 2.0 overview
 
"Распознавание марки и модели автомашин на изображениях" Евгений Нижибицкий (...
"Распознавание марки и модели автомашин на изображениях" Евгений Нижибицкий (..."Распознавание марки и модели автомашин на изображениях" Евгений Нижибицкий (...
"Распознавание марки и модели автомашин на изображениях" Евгений Нижибицкий (...
 
Дополненная реальность через веб камеру
Дополненная реальность через веб камеруДополненная реальность через веб камеру
Дополненная реальность через веб камеру
 
Дополненная реальность через веб камеру
Дополненная реальность через веб камеруДополненная реальность через веб камеру
Дополненная реальность через веб камеру
 
“ComputerVision(Ruby && OpenCV)”, Людмила Дежкина ( Senior Ruby, DataArt)
 “ComputerVision(Ruby && OpenCV)”, Людмила Дежкина ( Senior Ruby, DataArt) “ComputerVision(Ruby && OpenCV)”, Людмила Дежкина ( Senior Ruby, DataArt)
“ComputerVision(Ruby && OpenCV)”, Людмила Дежкина ( Senior Ruby, DataArt)
 
Растровая и векторная графика
Растровая и векторная графикаРастровая и векторная графика
Растровая и векторная графика
 
Классификация изображений с помощью нейронных сетей. Сжатие и ускорение обуче...
Классификация изображений с помощью нейронных сетей. Сжатие и ускорение обуче...Классификация изображений с помощью нейронных сетей. Сжатие и ускорение обуче...
Классификация изображений с помощью нейронных сетей. Сжатие и ускорение обуче...
 
Modern neural net architectures - Year 2019 version
Modern neural net architectures - Year 2019 versionModern neural net architectures - Year 2019 version
Modern neural net architectures - Year 2019 version
 

More from Ontico

Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Ontico
 

More from Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)