SlideShare a Scribd company logo
1 of 53
Download to read offline
Deep Learning
Ivaylo Popov
13/02/2017
Защо дълбоки невронни мрежи?
● По-добри резултати от предишните методи:
○ Изображения, говорима и писмена реч
○ Роботика, автономни автомобили, управление на системи
● Голям интерес в много индустрии: VW, Google, ...
● Подобен начин на работа с човешкия кортекс
● Artificial general intelligence (AGI)
● Нови технологии с динамично развитие
С две думи за мен:
Високо-честотно търгуване
Хедж фонд, Германия (2010-)
Роботика, научни изледвания
DeepMind, Лондон (2015-)
С две думи за DeepMind
DeepMind Research
● Reinforcement learning
● Роботика и контрол
● Памет, генеративни модели
● Starcraft
DeepMind Applied
● Здравеопазване и за Google продукти
Разпознаване на изображения
Сегментация, оцветяване, ...
Генериране на изображения
Говорима реч: разпознаване и синтезиране
Писмена реч: генериране, превод и диалогови системи
Мултимодални: от изображение до заглавие
Reinforcement learning: игри
DQN playing Atari Breakout AlphaGo playing vs. Lee Sedol
Reinforcement learning: роботика и контрол
Хващане на обекти с роботизирана ръка (Google)
Огромен интерес в ИТ и други индустрии
Връзки с начина на работа на мозъка
Универсалност на мозъчната кора
Backpropagation в мозъка:
G. Hinton, Y. Bengio, T. Lillicrap
Backpropagation - STDP
(spike-time dependent plasticity,
пластичност на синапсите)
Допамин - reinforcement сигнал
Слоеве и филтри
Съответствие на зрителните слоеве с
определени зони на мозъчната кора
Габор-филтри в невронни мрежи и
неврони реагиращи на ориентация в мозъка
История
1960’ Поредица от нелинейни операции; chain rule
Kelley, 1960; Bryson, 1961; Bryson and Denham, 1961;
Pontryagin et al., 1961; Dreyfus, 1962; Bryson and Ho, 1969
1980’ Популяриция на backpropagation за невронни мрежи
Rumelhart, D. E., Hinton, G. E., and Williams, R. J., 1986
1990’ Конволюционни мрежи и LSTM рекурентни невронни мрежи
LeCun et al., 1989, 1990, 1998, Hochreiter and Schmidhuber, 1997
2000’ Deep learning
Пред-трениране на дълбоки мрежи със стек от RBM, Hinton and Salakhutdinov, 2006
Режим на количеството данни
Малко теория
● Типове машинно обучение
● Невронни мрежи
● Графове
● Трениране
Типове машинно обучение
Тип машинно обучение Данни Целеви стойности
Supervised learning Фиксирани Зададени
Unsupervised learning Фиксирани Не са зададени
Reinforcement learning Динамични Reward
Reinforcement learning
Невронни мрежи - класически поглед
Невронни мрежи - генерализация
Директен ацикличен граф (DAG) от
● Входни данни (зададени стойности)
● Диференцируеми операции
○ Матрично умножение
○ Нелинейни операции
○ Гейтинг (умножение точка по
точка)
○ Dropout, batch нормализация, ...
● Целева фунция (MSE, cross-entropy)
● Параметри (променливи)
Платформи
Трениране
1. Граф от деференцируеми операции
2. Backpropagation (chain rule) - обратно разпространение на грешката
Mетод за изразяване на градиента на съставна функция по отношение на аргумените
… целевата функция по отношение на параметрите
3. Stochastic gradient descent (SGD)
Итеративен алгоритъм за оптимизация (с мини-батчове)
4. Adam, Rmsprop
По-ефективни (+ статистики от първи и втори ред)
Всичко това получаваме наготово в TensorFlow
Преизвикателства в тренирането
1. Локални минимуми
2. Седловининни точки
3. Overfitting
4. Изчезване на градиента (diminishing gradients)
5. Дългосрочна памет (също long term credit assignment)
Седловинни точки
Предизвикателства в тренирането
1. Локални минимуми
2. Седловининни точки
3. Overfitting
4. Изчезване на градиента (diminishing gradients)
5. Дългосрочна памет (също long term credit assignment)
Overfitting
Методи за регуляризация
● Ранно спиране на тренирането
● Рекурентни и конволюционни слове
● Dropout
● Batch нормализация
● Добавяне на шум в данните
● Генереране на данни
● Използване на допълнителни данни
● Стохастични слоеве
Всички промени по архитектурата и тренирането - регуляризация или prior
Регулярицация с валидация и ранно спиране
*Слоеве - съвкупност от няколко операции
● Конволюционни (convolutional)
● Секвенционни / рекурентни (recurrent)
● Batch нормализация, dropout и много други
Специални слоеве и операции
Конволюционни слоеве
Секвенциални / рекурентни слоеве (recurrent)
Примерни приложения
● Residual networks
● Sequence-to-sequence модел за превод на текст
● Generative adversarial networks (GAN)
● PixelCNN
● WaveNet
● Tree search + policy / value мрежи (AlphaGo)
● Контрол с дискретни действия (DQN)
Все по-дълбоки мрежи за изображения
Residual мрежи за класификация
Deep Residual Learning for Image Recognition, He et al., 2015
Sequence-to-sequence модел за превод
Generative adversarial networks (GAN)
Generative adversarial networks (GAN)
PixelCNN - генериране на изображения
PixelCNN - генериране на изображения
WaveNet - генериране на говорима реч
Контрол с дискретни действия (DQN)
● Конволюционна Q-мрежа
● Памет с предишен опит
● Q-reinforcement learning
● Target мрежи
AlphaGo - policy/value мрежи
Работен процес на научно изследване
1. Начална версия на модел и метода за трениране - baseline
2. Малки и изолирани промени
3. Дефиниране на очакваните резултати
4. Експерименти (тестове)
a. Бързи експерименти (малък брой вариации, <1 ден)
b. Широки експерименти (голям брой вариации, 1-30 дни)
5. Визуализиране и анализиране резултатите
6. Обясняване на резултатите и търсене на грешките навреме
7. Запазване и документиране на нови baselines
Визуализиране на резултати с IPython
Самообучение
● Основи линейна алгебра и анализ
● Книги:
a. Deep Learning, Goodfellow et al. 2016
b. Машинно обучение: C. Bishop, K. Murphy, Hastie and Tibshirani, и други
c. Reinforcement learning: R. Sutton
● Онлайн курсове и лекции:
d. Machine learning course, Andrew Ng (Coursera)
e. Machine learning lectures, Nando de Freitas (University of Oxford)
f. Reinforcement learning lectures, David Silver (UCL)
Самообучение - продължение...
● Статии:
○ Следване на новостите в arxiv и google (автори, катедри, компании, ...)
○ Конференции
■ NIPS - Neural Information Processing Systems
■ ICML - International Conference on Machine Learning
■ ICLR - International Conference on Learning Representations
● Експериментиране с последни модели от статии (github)
● Kaggle - успешни решения и практики
Хардуеър
● CPU - евтино и достатъчно бързи за non-CNN*
● GPU - изкючително бързи за CNN
● Специализирани - напр. Google TPU
● Локална машина - бързи експерименти
● Cloud - широки експерименти
Настояще и бъдеще
Deep learning вече революционира:
● Oбработка на изображения, видео, писмена и говорима реч
● Автономно управление на автомобили и дронове
● Автоматизация в маркетинг, продажби и доставки
● Здравеопазване
● Виртуални асистенти и чатботове
● Автоматизация и роботика
Автоматизация и роботика в Ocado Technology
Системи за контрол
Роботика
Маршрутизиращи системи
Машинно обучение CRM и SCM
Симулатори
Международни компании
shivonzilis.com
Thank you!
Ivaylo . popov @ hotmail . com
LinkedIn | Facebook

More Related Content

Viewers also liked

Powerpoint for Dummies
Powerpoint for DummiesPowerpoint for Dummies
Powerpoint for DummiesLukas Masuch
 
SparkX - Enterprise Crowdfunding
SparkX - Enterprise CrowdfundingSparkX - Enterprise Crowdfunding
SparkX - Enterprise CrowdfundingLukas Masuch
 
Interpretable machine learning
Interpretable machine learningInterpretable machine learning
Interpretable machine learningSri Ambati
 
Refactoring to Java 8 (Devoxx BE)
Refactoring to Java 8 (Devoxx BE)Refactoring to Java 8 (Devoxx BE)
Refactoring to Java 8 (Devoxx BE)Trisha Gee
 
Deep Neural Networks 
that talk (Back)… with style
Deep Neural Networks 
that talk (Back)… with styleDeep Neural Networks 
that talk (Back)… with style
Deep Neural Networks 
that talk (Back)… with styleRoelof Pieters
 
Trend detection and analysis on Twitter
Trend detection and analysis on TwitterTrend detection and analysis on Twitter
Trend detection and analysis on TwitterLukas Masuch
 
Growth Hacking 101
Growth Hacking 101Growth Hacking 101
Growth Hacking 101Lukas Masuch
 
Enterprise Knowledge Graph
Enterprise Knowledge GraphEnterprise Knowledge Graph
Enterprise Knowledge GraphLukas Masuch
 
Building a Deep Learning (Dream) Machine
Building a Deep Learning (Dream) MachineBuilding a Deep Learning (Dream) Machine
Building a Deep Learning (Dream) MachineRoelof Pieters
 
Spark machine learning & deep learning
Spark machine learning & deep learningSpark machine learning & deep learning
Spark machine learning & deep learninghoondong kim
 
Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!Roelof Pieters
 
Top 5 Deep Learning Stories 2/24
Top 5 Deep Learning Stories 2/24Top 5 Deep Learning Stories 2/24
Top 5 Deep Learning Stories 2/24NVIDIA
 
孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)
孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)
孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)台灣資料科學年會
 

Viewers also liked (14)

Powerpoint for Dummies
Powerpoint for DummiesPowerpoint for Dummies
Powerpoint for Dummies
 
Introduction to Deep learning
Introduction to Deep learningIntroduction to Deep learning
Introduction to Deep learning
 
SparkX - Enterprise Crowdfunding
SparkX - Enterprise CrowdfundingSparkX - Enterprise Crowdfunding
SparkX - Enterprise Crowdfunding
 
Interpretable machine learning
Interpretable machine learningInterpretable machine learning
Interpretable machine learning
 
Refactoring to Java 8 (Devoxx BE)
Refactoring to Java 8 (Devoxx BE)Refactoring to Java 8 (Devoxx BE)
Refactoring to Java 8 (Devoxx BE)
 
Deep Neural Networks 
that talk (Back)… with style
Deep Neural Networks 
that talk (Back)… with styleDeep Neural Networks 
that talk (Back)… with style
Deep Neural Networks 
that talk (Back)… with style
 
Trend detection and analysis on Twitter
Trend detection and analysis on TwitterTrend detection and analysis on Twitter
Trend detection and analysis on Twitter
 
Growth Hacking 101
Growth Hacking 101Growth Hacking 101
Growth Hacking 101
 
Enterprise Knowledge Graph
Enterprise Knowledge GraphEnterprise Knowledge Graph
Enterprise Knowledge Graph
 
Building a Deep Learning (Dream) Machine
Building a Deep Learning (Dream) MachineBuilding a Deep Learning (Dream) Machine
Building a Deep Learning (Dream) Machine
 
Spark machine learning & deep learning
Spark machine learning & deep learningSpark machine learning & deep learning
Spark machine learning & deep learning
 
Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!Deep Learning & NLP: Graphs to the Rescue!
Deep Learning & NLP: Graphs to the Rescue!
 
Top 5 Deep Learning Stories 2/24
Top 5 Deep Learning Stories 2/24Top 5 Deep Learning Stories 2/24
Top 5 Deep Learning Stories 2/24
 
孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)
孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)
孔令傑 / 給工程師的統計學及資料分析 123 (2016/9/4)
 

Similar to Deep learning (20170213)

Memory problems in .NET apps
Memory problems in .NET appsMemory problems in .NET apps
Memory problems in .NET appsBorislav Ivanov
 
НАУКА ЗА ДАННИТЕ.pptx
НАУКА ЗА ДАННИТЕ.pptxНАУКА ЗА ДАННИТЕ.pptx
НАУКА ЗА ДАННИТЕ.pptxAntonPetrov49
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical DebtAdrian Mitev
 
High Quality Code Introduction
High Quality Code IntroductionHigh Quality Code Introduction
High Quality Code IntroductionSvetlin Nakov
 
Nakov High Quality Code
Nakov High Quality CodeNakov High Quality Code
Nakov High Quality CodeSvetlin Nakov
 
Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)
Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)
Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)Lubomir Chorbadjiev
 
Cloud computing course overview
Cloud computing course overviewCloud computing course overview
Cloud computing course overviewMiroslav Lessev
 
Google Cloud Natural Language for SEO
Google Cloud Natural Language for SEO  Google Cloud Natural Language for SEO
Google Cloud Natural Language for SEO Netpeak
 

Similar to Deep learning (20170213) (9)

Memory problems in .NET apps
Memory problems in .NET appsMemory problems in .NET apps
Memory problems in .NET apps
 
НАУКА ЗА ДАННИТЕ.pptx
НАУКА ЗА ДАННИТЕ.pptxНАУКА ЗА ДАННИТЕ.pptx
НАУКА ЗА ДАННИТЕ.pptx
 
Managing Technical Debt
Managing Technical DebtManaging Technical Debt
Managing Technical Debt
 
High Quality Code Introduction
High Quality Code IntroductionHigh Quality Code Introduction
High Quality Code Introduction
 
Nakov High Quality Code
Nakov High Quality CodeNakov High Quality Code
Nakov High Quality Code
 
Excel Formula and Functions
Excel Formula and FunctionsExcel Formula and Functions
Excel Formula and Functions
 
Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)
Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)
Enterprise Content Management with Nuxeo EP 5.3.0 (in bulgarian)
 
Cloud computing course overview
Cloud computing course overviewCloud computing course overview
Cloud computing course overview
 
Google Cloud Natural Language for SEO
Google Cloud Natural Language for SEO  Google Cloud Natural Language for SEO
Google Cloud Natural Language for SEO
 

Deep learning (20170213)

  • 2. Защо дълбоки невронни мрежи? ● По-добри резултати от предишните методи: ○ Изображения, говорима и писмена реч ○ Роботика, автономни автомобили, управление на системи ● Голям интерес в много индустрии: VW, Google, ... ● Подобен начин на работа с човешкия кортекс ● Artificial general intelligence (AGI) ● Нови технологии с динамично развитие
  • 3. С две думи за мен: Високо-честотно търгуване Хедж фонд, Германия (2010-) Роботика, научни изледвания DeepMind, Лондон (2015-)
  • 4. С две думи за DeepMind DeepMind Research ● Reinforcement learning ● Роботика и контрол ● Памет, генеративни модели ● Starcraft DeepMind Applied ● Здравеопазване и за Google продукти
  • 9. Писмена реч: генериране, превод и диалогови системи
  • 11. Reinforcement learning: игри DQN playing Atari Breakout AlphaGo playing vs. Lee Sedol
  • 12. Reinforcement learning: роботика и контрол Хващане на обекти с роботизирана ръка (Google)
  • 13. Огромен интерес в ИТ и други индустрии
  • 14. Връзки с начина на работа на мозъка Универсалност на мозъчната кора Backpropagation в мозъка: G. Hinton, Y. Bengio, T. Lillicrap Backpropagation - STDP (spike-time dependent plasticity, пластичност на синапсите) Допамин - reinforcement сигнал
  • 15. Слоеве и филтри Съответствие на зрителните слоеве с определени зони на мозъчната кора Габор-филтри в невронни мрежи и неврони реагиращи на ориентация в мозъка
  • 16. История 1960’ Поредица от нелинейни операции; chain rule Kelley, 1960; Bryson, 1961; Bryson and Denham, 1961; Pontryagin et al., 1961; Dreyfus, 1962; Bryson and Ho, 1969 1980’ Популяриция на backpropagation за невронни мрежи Rumelhart, D. E., Hinton, G. E., and Williams, R. J., 1986 1990’ Конволюционни мрежи и LSTM рекурентни невронни мрежи LeCun et al., 1989, 1990, 1998, Hochreiter and Schmidhuber, 1997 2000’ Deep learning Пред-трениране на дълбоки мрежи със стек от RBM, Hinton and Salakhutdinov, 2006
  • 18. Малко теория ● Типове машинно обучение ● Невронни мрежи ● Графове ● Трениране
  • 19. Типове машинно обучение Тип машинно обучение Данни Целеви стойности Supervised learning Фиксирани Зададени Unsupervised learning Фиксирани Не са зададени Reinforcement learning Динамични Reward
  • 21. Невронни мрежи - класически поглед
  • 22. Невронни мрежи - генерализация Директен ацикличен граф (DAG) от ● Входни данни (зададени стойности) ● Диференцируеми операции ○ Матрично умножение ○ Нелинейни операции ○ Гейтинг (умножение точка по точка) ○ Dropout, batch нормализация, ... ● Целева фунция (MSE, cross-entropy) ● Параметри (променливи)
  • 24. Трениране 1. Граф от деференцируеми операции 2. Backpropagation (chain rule) - обратно разпространение на грешката Mетод за изразяване на градиента на съставна функция по отношение на аргумените … целевата функция по отношение на параметрите 3. Stochastic gradient descent (SGD) Итеративен алгоритъм за оптимизация (с мини-батчове) 4. Adam, Rmsprop По-ефективни (+ статистики от първи и втори ред) Всичко това получаваме наготово в TensorFlow
  • 25. Преизвикателства в тренирането 1. Локални минимуми 2. Седловининни точки 3. Overfitting 4. Изчезване на градиента (diminishing gradients) 5. Дългосрочна памет (също long term credit assignment)
  • 27. Предизвикателства в тренирането 1. Локални минимуми 2. Седловининни точки 3. Overfitting 4. Изчезване на градиента (diminishing gradients) 5. Дългосрочна памет (също long term credit assignment)
  • 29. Методи за регуляризация ● Ранно спиране на тренирането ● Рекурентни и конволюционни слове ● Dropout ● Batch нормализация ● Добавяне на шум в данните ● Генереране на данни ● Използване на допълнителни данни ● Стохастични слоеве Всички промени по архитектурата и тренирането - регуляризация или prior
  • 30. Регулярицация с валидация и ранно спиране
  • 31. *Слоеве - съвкупност от няколко операции ● Конволюционни (convolutional) ● Секвенционни / рекурентни (recurrent) ● Batch нормализация, dropout и много други Специални слоеве и операции
  • 34. Примерни приложения ● Residual networks ● Sequence-to-sequence модел за превод на текст ● Generative adversarial networks (GAN) ● PixelCNN ● WaveNet ● Tree search + policy / value мрежи (AlphaGo) ● Контрол с дискретни действия (DQN)
  • 35. Все по-дълбоки мрежи за изображения
  • 36. Residual мрежи за класификация Deep Residual Learning for Image Recognition, He et al., 2015
  • 40. PixelCNN - генериране на изображения
  • 41. PixelCNN - генериране на изображения
  • 42. WaveNet - генериране на говорима реч
  • 43. Контрол с дискретни действия (DQN) ● Конволюционна Q-мрежа ● Памет с предишен опит ● Q-reinforcement learning ● Target мрежи
  • 45. Работен процес на научно изследване 1. Начална версия на модел и метода за трениране - baseline 2. Малки и изолирани промени 3. Дефиниране на очакваните резултати 4. Експерименти (тестове) a. Бързи експерименти (малък брой вариации, <1 ден) b. Широки експерименти (голям брой вариации, 1-30 дни) 5. Визуализиране и анализиране резултатите 6. Обясняване на резултатите и търсене на грешките навреме 7. Запазване и документиране на нови baselines
  • 47. Самообучение ● Основи линейна алгебра и анализ ● Книги: a. Deep Learning, Goodfellow et al. 2016 b. Машинно обучение: C. Bishop, K. Murphy, Hastie and Tibshirani, и други c. Reinforcement learning: R. Sutton ● Онлайн курсове и лекции: d. Machine learning course, Andrew Ng (Coursera) e. Machine learning lectures, Nando de Freitas (University of Oxford) f. Reinforcement learning lectures, David Silver (UCL)
  • 48. Самообучение - продължение... ● Статии: ○ Следване на новостите в arxiv и google (автори, катедри, компании, ...) ○ Конференции ■ NIPS - Neural Information Processing Systems ■ ICML - International Conference on Machine Learning ■ ICLR - International Conference on Learning Representations ● Експериментиране с последни модели от статии (github) ● Kaggle - успешни решения и практики
  • 49. Хардуеър ● CPU - евтино и достатъчно бързи за non-CNN* ● GPU - изкючително бързи за CNN ● Специализирани - напр. Google TPU ● Локална машина - бързи експерименти ● Cloud - широки експерименти
  • 50. Настояще и бъдеще Deep learning вече революционира: ● Oбработка на изображения, видео, писмена и говорима реч ● Автономно управление на автомобили и дронове ● Автоматизация в маркетинг, продажби и доставки ● Здравеопазване ● Виртуални асистенти и чатботове ● Автоматизация и роботика
  • 51. Автоматизация и роботика в Ocado Technology Системи за контрол Роботика Маршрутизиращи системи Машинно обучение CRM и SCM Симулатори
  • 53. Thank you! Ivaylo . popov @ hotmail . com LinkedIn | Facebook