Upload
vsevolod-rodionov
View
71
Download
0
Embed Size (px)
Citation preview
Deep Learning и нейронные сети на JSЧасть 1
ITSubbotnik SPb Fall 2016
2
"JavaScript is the world's most misunderstood programming language".
Дуглас Крокфорд
3
4
И 80%* из этого…
*все совпадения случайны
5
Что-то новое для JS: Machine learning
6
Кто я
https://github.com/Jabherhttps://vk.com/vsevolod.rodionov
Сева Родионов
7
Кто я
Lead Software Engineer
8
Кто я и почему я
Организаторhttps://vk.com/spb_frontend
Кто я
http://slack.spb-frontend.ru
10
Почему я
11
Моделировать дешевле, чем ставить эксперимент
data => information => knowledge => solution
Что такое машинное обучение (и статистика)
12
Мы обобщаем частные наблюдения в закономерности
Пример: линейная регрессия
Модели нужны, чтобы что-то понять
13
Линейная регрессия
14
Линейная регрессия
15
Линейная регрессия + обработка =
линейный перцептрон
16
Перцептрон - классификатор
17
А при чем тут нейронные сети?
А это они и есть.
https://en.wikipedia.org/wiki/Artificial_neural_network
18
Как нейронные сети учатся?
19
А можно эффективнее?
20
А можно эффективнее?
21
Зачем нужны нейронные сети?
Предсказание
22
Зачем нужны нейронные сети?Машинное зрение
23
Зачем нужны нейронные сети?Машинное зрение
24
Зачем нужны нейронные сети?
25
Зачем нужны нейронные сети?
А иногда и хуже
26
Зачем нужны нейронные сети?
Deep2ch
27
А зачем нам нейронные сети в браузере?
60 секунд на устройстве пользователя
vs
10 секунд на сервере * 10 000 загрузок в час
= 30 машино-часов в час*аренда Amazon GPU инстанса( $440 в месяц)
~ 14 000 долларов в месяц
28
А зачем нам нейронные сети в браузере?
- Люди не хотят отправлять свои данные на сервер- Офлайн-обработка- И давайте не будем забывать про
React Native и аналоги- И тем более про NodeJS
- А еще можно сделать плагин для PostCSS
29
А что дальше?
30
Другие архитектуры? Сверточная сеть
31
Другие архитектуры? Сверточная сеть
32
Другие архитектуры? Рекуррентная сеть
33
Другие архитектуры? GAN
34
А что дальше?
35
Поиграться с готовым
Synaptic http://caza.la/synaptic
36
Поиграться с готовым
Synaptic http://caza.la/synaptic
37
Поиграться с готовым
38
Изучить самому
coursera.org/learn/machine-learning
39
Изучить самому
Elements of Statistical Learning
40
Спасибо. Надеюсь, вам понравилось
https://github.com/Jabherhttps://vk.com/vsevolod.rodionov
Сева Родионов
Через 10 минут начнется вторая часть.Она будет посвящена практической реализации обучаемой сети,
умеющей распознавать, например, такие цифры - с объяснением
происходящего