Применение глубоких сверточных нейронных сетей для

advertisement
Применение глубоких сверточных
нейронных сетей для семантического
кодирования изображений
Нестеров Павел
18 апреля 2015 г.
План
О Mail.Ru сегодня
Постановка задачи
Глубокие нейронные сети
Соревнования ImageNet и Kaggle.com
Семантическое хеширование
1 / 44
2 / 44
Доходы компании
Рис.: Распределение доходов на I квартал 2014 года1
1 IVAS
- Internet Value-Added Services
3 / 44
Реклама
У нас показывается реклама:
I
контекстна;
I
медийная;
I
таргетинговая;
Рекламные метрики:
I
клики/закачки/любые полезные действия, clicks: Nclc
I
показы, impressions: Nimp
I
Click-through rate, CTR =
I
Cost per click, CPC: устанавливается пользователем
I
Cost per mile, цена за 1000 показов: CPM = 1000 × CPC × CTR
Nclc
Nimp
4 / 44
Проблема
I
Цель: заработать денег, естественно.
I
Как: показывать те объявления, у которых самый большой CPM.
CPM = 1000 × CPC × CTR:
I
I
CPC априорно задан пользователям
clc
известен только после
CTR в формулировке вида NNimp
некоторого количества показов
I
выгодно использовать свой CTR для каждого объявления
(категория, изображение, текст, ...), человека (пол, возраст,
интересы, ...), времени суток/недели/месяца и других
показателей
I
пространство экспоненциально большое, статистику для оценки
CTR собрать не реально
5 / 44
Пример2
При использовании таргетирования, оказалось, что нужно обеим
группам показывать одну рекламу; в то время как при анализе все
выборки в целом, расчет показывает, что вторая реклама
эффективнее.
CPC = 10$
Группа 1
Группа 2
Сумма
CPC = 10$
Группа 1
Группа 2
Сумма
2 парадокс
clc
81
192
273
Реклама андройдофона
imp CTR
CPM
Доход
87
0.931 9310$
16610$
263 0.73
7300$
350 0.78
7800$ 7800$
clc
224
55
289
Реклама айфона
imp CTR
CPM
270 0.829 8290$
80
0.687 6870$
350 0.825 8250
Доход
15160$
8250$
Симпсона
6 / 44
Решение
Рассмотрим CTR как случайную величину - вероятность того, что
пользователь кликнет по рекламе. Тогда CTR можно смоделировать
некоторой функцией f : {X } → [0, 1], где X - это множество
параметров характеризующее показ рекламы пользователю, туда
могут входить:
I
пол, возраст, образование, интересы и категория (в данный
период времени) пользователя
I
текст объявления, изображение, размеры
I
история просмотров рекламы за последнее время
I
история посещенных сайтов
I
технические детали оборудования, используемого для выхода в
интернет
I
политическая ситуация в мире, погода, время года и время дня
I
...
7 / 44
Изображение
Рис.: Пример рекламы формата текст+изображение из vk.com
8 / 44
Читеры
Рис.: Рекламные места и обман банерной системы
9 / 44
Семантический код
Семантический кодирование - это такое кодирование, при котором
для каждого объекта из исходного пространства (высокой
размерности), ставится в соответствие объект (код) из нового
пространства (меньшей размерности), такой, что семантически
похожие объекты имеют похожие коды (в смысле некоторой меры).
Рис.: Схематическое представление семантического кодирования3
3 Semantic
Hashing (Salakhutdinov, Hinton)
10 / 44
Извлечение признаков
Рис.: Классический подход к извлечению признаков
11 / 44
Извлечение признаков, история
Рис.: Глубокое обучение4
4 Learning
visual representations (Andrea Vedaldi)
12 / 44
Нейрон МакКаллока-Питтса, 1943 год
Рис.: Схема искусственного нейрона5
5 Neural
Networks and Learning Machines (3rd Edition), Simon O. Haykin
13 / 44
Персептрон Розенблатта, 1958 год
Рис.: Схема реализации модели МакКаллока-Питтса в персептроне
14 / 44
Универсальный аппроксиматор
Рис.: Нейронная сеть с одним скрытым слоем с нелинейной функцией
активации
15 / 44
Алгоритм обратного распространения ошибки, 1986 год
Рис.: Многослойная сеть прямого распространения6
6 Neural
Networks and Learning Machines (3rd Edition), Simon O. Haykin
16 / 44
Глубокие нейронные сети, 2005+
Рис.: Глубокая нейронная сеть7
7 Scale
Deep Learning (Jeff Dean)
17 / 44
Мультимодальное обучение #1
Рис.: Explain Images with Multimodal Recurrent Neural Networks8
8 Junhua
Mao, Wei Xu, Yi Yang, Jiang Wang, Alan L. Yuille
18 / 44
Мультимодальное обучение #2
Рис.: Представление изображений и текста в одном пространстве9
9 Ryan
Kiros, 2014
19 / 44
Мультимодальное обучение #3
Рис.: Генерация текста по изображениям10
10 A picture is worth a thousand (coherent) words: building a natural description of
images (Oriol Vinyals, Alexander Toshev, Samy Bengio, and Dumitru Erhan)
20 / 44
Мультимодальное обучение #4
Рис.: ИИ?11
11 http://videolectures.net/kdd2014_salakhutdinov_deep_learning/
21 / 44
ImageNet, описание
I
1000 классов
около 1000 изображений в каждом классе
I
около 1 000 000 изображений всего
I
22 / 44
ImageNet, правила
Рис.: Примеры прогнозов
23 / 44
ImageNet, победители
2014
2013
2012
Classification
1st
2nd
GoogLeNet
VGG
Clarifai13
NUS14
16
SuperVision
ISI
3rd
MSRA12
ZF15
VGG
Рис.: Прогресс в конкурсе по распознаванию
12 Spatial
Pyramid Pooling in Deep Convolutional Networks
deep convolutional network
14 SVM+DCNN (AlexNet based)
15 ensemble of large CNN
16 AlexNet
13 large
24 / 44
Сверточная нейронная сеть
Рис.: LeNet, свертка и пулинг
25 / 44
AlexNet
Рис.: ImageNet Classification with Deep Convolutional Neural Networks17
I
5 сверточных и 3 полносвязных слоя
I
60М параметров, 650к нейрнов
I
эффективное распараллеливание на 2 GPU/CUDA
I
свёртки 11x11, 5x5, 3x3
17 Alex
Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton
26 / 44
VGG
I
VGG-19 (E):
144М
параметров
I
Very Deep
Convolutional
Networks for
Large-Scale
Image
Recognitiona
a K.
Simonyan, A. Zisserman
27 / 44
Выученные признаки, #1
Рис.: Visualizing and Understanding Convolutional Networks18
18 Matthew
D. Zeiler and Rob Fergus
28 / 44
Выученные признаки, #2
Рис.: Visualizing and Understanding Convolutional Networks19
19 Matthew
D. Zeiler and Rob Fergus
29 / 44
Выученные признаки, #3
Рис.: Visualizing and Understanding Convolutional Networks20
20 Matthew
D. Zeiler and Rob Fergus
30 / 44
Соревнования на Kaggle.com
I
Детектирование диабетической ретинопатии
(100k$)
I
Классификация морского планктона (175k$)
I
Классификация галактик
Поиск темной материи (NASA and the Royal
Astronomical Society)
I
Рис.: Распределение участников
31 / 44
Transfer learning
Рис.: Трансфер между двумя глубокими сетями21
21 Learning
visual representations (Andrea Vedaldi)
32 / 44
RBM и AE
33 / 44
DBN (Deep RBM) и Deep AE
Рис.: Глубокий автоенкодер22
22 Semantic
Hashing (Salakhutdinov, Hinton)
34 / 44
Итоговая модель
35 / 44
Инструменты
I
Caffe: http://caffe.berkeleyvision.org/
I
cudamat: https://github.com/cudamat/cudamat
36 / 44
Визуализация, #1
37 / 44
Визуализация, #2
38 / 44
Визуализация, #3
39 / 44
Визуализация, #4
40 / 44
Визуализация, #5
41 / 44
Визуализация, #6
42 / 44
Визуализация, #7
43 / 44
Вопросы
Download