SlideShare une entreprise Scribd logo
1  sur  25
Практики жизненного цикла
систем машинного обучения
SECR’16
28 окбяря 2016г.
Kind of Engineerings
• Mechanical engineering
• Agriculture engineering
• Aerospace engineering – aircraft architecture
• Systems engineering
• System of systems engineering
• …
• Software engineering
• Control [systems] engineering – control [system] architecture
• Knowledge engineering -- architecture
• Machine learning [system] engineering (-- architecture?)
• …
• Neural engineering
• neural network engineering -- neural [network] architecture
• Feature engineering -- ???
2
Systems, Software, Machine Learning Engineerings
• Software engineering [term appeared in 1965, boosted by
NATO as a profession in 1968]
• Systems engineering [Bell Labs in 1940s, boosted as a
profession by NCOSE 1990]
• Machine learning engineering [term appeared in 2011]
3https://www.google.com/trends/explore#q=machine%20learning%20engineering&cmpt=q&tz=Etc%2FGMT-3
Вместо «программа»
подставьте «система машинного обучения».
Why is my program
not working?
You need to know
why?
To repair compiler?
Software engineer
(systems)
To advance theory?
Computer Scientist
You need to
program working
properly?
Software engineer
(application)
4
Жизненный цикл системы – это про тех, кто её делает
5
t
Обеспечивающие
системы (их
много!),
описанные минимально
как практики-
компоненты и проекты-
модули по изменению
целевой системы
Целевая система
Эксплуатация
«Практики
жизненного
цикла
систем
машинного
обучения»
Проблемы с ЖЦ 1.0
6
• Появилась параллельная инженерия (сначала «итерации», а потом и вообще всё смешалось)
• Нельзя обсуждать «почему предпринятие вообще работает», методы работы, методологии.
Только «как собрать из кусочков во времени».
Горбатая диаграмма (hump diagram) из RUP (Rational Unified Process)
Практики,
именованные по
дисциплинам!
Какие компоненты предприятия? (как оно работает?)
Практика = дисциплина + технология
Дисциплинированные (компетентные) исполнители [все ли люди?],
обеспеченные необходимыми для поддержки дисциплины инструментами
7
Схематизация жизненного цикла:
различение дисциплины и технологии в практике
• дисциплины = мышление (операции с абстрактными типизированными объектами).
Меняются за 30 лет. Учатся в школе и ВУЗе. Практика определяется по её
дисциплине. Инвестиции в «человеческий капитал».
• технологии = инструменты и рабочие продукты (поддержка мышления в
экзокортексе). Меняются каждые 5 лет. Учатся на производстве. Проекты используют
технологии как «ресурсы». Инвестиции в традиционный капитал.
• Дисциплины тренируют на задачах (заранее поставленных)
• Понимание связи дисциплин и технологий, идеальных объектов дисциплин и
рабочих продуктов в жизни нужно ТРЕНИРОВАТЬ, для этого обычно нужен
преподаватель
• Маскировка в реальной жизни: а) задача не поставлена б) много отвлечений 8
В жизни ни одного
слова из учебника
В учебнике ни
одного слова из
жизни
=Компоненты,
функциональные
единицы,
альфы
=Модули,
конструктивные
единицы,
рабочие продукты
Системная схема проекта
9
Технологический
менеджмент и
предпринимательство
Инженерный
менеджмент
Инженерия
Технологический
менеджмент
Using system
Enabling system
System of interest
http://arxiv.org/abs/1502.00121
10
Ждём: machine learning
specific processes
Какие практики можно ожидать?!
• Специализацию практик системной инженерии
• Специализацию практик программной инженерии
• Управление жизненным циклом (методология разработки)
• Инженерия требований
• Инженерия архитектуры
• Инженерия испытаний
• Управление конфигурацией
• …
На многих уровнях технологического стека!
11
Инженерия психики Инженерия машинного
обучения
Инженерия предприятия Системная инженерия
Постановка задачи на
модернизацию (всегда
brownfield)
Замысел и требования Стратегирование Замысел и требования
Намеревание Архитектура Архитектура Архитектура и
проектирование
(выращивание субстрата) программирование
архитектуры
Постановка практик: набор
персонала, закупка технологий
Изготовление и
интеграция/сборка
Дообучение (ибо всегда
brownfield)
Обучение (training), Постановка практик в части
обучения работе
наладка
Автоматизация навыка Передача обучения (transfer
learning), сжатие сетки,
ансамблирование (но ярко
выраженной сборки нет,
плохая модульность)
Merge/aquisition на уровне
предприятий (но нет «сборки»
отдельных практик, плохая
модульность)
Модернизация заменой
модулей
Аттестация, экзамены,
освидетельствование
Проверка и приёмка Оценка, аттестация Проверка и приёмка
Жизнь Вывод (inference) Работа Эксплуатация
Жизненные циклы обучающихся систем
12
Жизненный цикл систем машинного
обучения
• Экстремальный ЖЦ: начинается много раньше, чем замысел,
заканчивается много позже вывода из эксплуатации
• Многоуровневый ЖЦ: разный на всех уровнях интеллект-стека
• Нет методологий разработки: сказать agile – это ничего не
сказать (кто признается, что он «негибкий»?), нет отдельных
практик, принципов, инструментов
• Нет учебников по практикам ЖЦ, только отдельные статьи.
13
INCOSE VISION 2025
14
Проблемы с модульностью
на высоких уровнях (где
появляются сети, люди –
непонятная связность):
переход от сборки-наладки
к «эволюции»,
«обучению»,
«системообразованию»
Метафоры жизненного цикла машинного обучения
15
часовщик лесниксадовник
инженерия
Обучение Tesla – уже сегодня
Восток: смириться и растить. Запад: добиваться модульности, растить потом.
МЕЖДИСЦИПЛИНАРНОСТЬ
Интеллект-функции + интеллект-стек + где это в мире
16
На основе
рис.3
в ISO 81346-1
-Модули
=Компоненты
+Места
Главная дисциплина: архитектура (важные решения)
17
«Логическая архитектура»
(функциональная
декомпозиция, структура
компонент) итеративно
совмещается с «физической
архитектурой» (продуктная
композиция, структура
модулей)
Модульный синтез:
• Компонуемость –
собираемость модулей
• Комозициональность –
собираемость функций
на модулях
ISO 81346-1
Figure 7
https://pages.nist.gov/cpspwg/
Малая связность: ключ к развитию и
совершенствованию
• Модульность: каждая связь имеет цену. Не было
бы цены, не было бы модулей
• http://arxiv.org/abs/1207.2743
• Меньше связность – круче улучшения!
• http://www.pnas.org/content/108/22/9008.full
18
Падение стоимости при
улучшении отдельных модулей
(n), при разном числе связей
каждого из них (d)
Чтобы изменения
улучшали дело, нужно
меньше связей!
Модульности очень разные:
• Knowledge graphs (онтологии и семантики) – структурированная память
(MemNN, differentiable neural computer)
• Embeddings – priors (замечание Nando de Freitas, http://ailev.livejournal.com/1240509.html)
• Models as modules (например, progressive networks для multitask learning,
ансаблирование и его моделирование -- https://arxiv.org/abs/1605.06431, разные виды
transfer learning)
• Learning algorithms as modules (например, frameworks), и отдельные
элементы для алгоритмов (обзор -- http://fastml.com/deep-learning-architecture-diagrams/).
• …
Серебряной пули нет, и никогда не будет.
19
Intelligence Platform Stack
20
Application (domain) Platform
Cognitive Architecture Platform
Learning Algorithm Platform
Computational library
General Computer Language
CPU
GPU/TPU/DPU/FPGA/Physical
computation Drivers
GPU/TPU/DPU/FPGA/Physical
computation Accelerator
Neurocompiler
Neuromorphic driver
Neuromorphic chip
Disruptionenablers
Disruptiondemand
Thanks for computer gamers for their disruption demand
to give us disruption enabler such as GPU!
Платформы машинного обучения
• Одной платформы не хватит
никогда!
• Master algorithm: тренд на
гибридизацию разных
подходов
• Когнитивная архитектура:
тренд на комбинирование
разных подходов
• Reinforcement learning
• Adversarial architectures
21
Shallow
Learning
Big Data
Deep
Learning
Neuro
evolution
Bayes
Army
Symbolic
Теорема бесплатного завтрака
Conversion of engineerings
and
Disruption of engineerings
22
Software
Engineering
Machine
Learning
Engineering
Janosh Szepanovits. Convergence: Model-Based
Software, Systems And Control Engineering
+
http://www.infoq.com/presentations/Model-Based-Design-Janos-Sztipanovits
Le Bottou – «Machine Learning disrupts
software engineering»
http://leon.bottou.org/slides/2challenges/2challenges.pdf
We can add:
• Machine learning disrupts systems engineering
• Machine learning disrupts control engineering
• …
• Machine learning disrupts contemporary
engineering
Литература по инженерии MLE:
больше постановки проблем, чем решения
• Leon Bottou, Two big challenges in machine learning
http://leon.bottou.org/slides/2challenges/2challenges.pdf
• D. Sculley, Gary Holt, Daniel Golovin, Eugene Davydov, Todd Phillips,
Dietmar Ebner, Vinay Chaudhary, Michael Young, Jean-Francois
Сrespo, Dan Dennison, Hidden Technical Debt in Machine Learning
Systems
http://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf
• Nando de Freitas, Learning to learn and compositionality with deep
recurrent neural networks
https://youtu.be/x1kf4Zojtb0
• Diogo Almeida, Modular in theory, inflexible in practice
http://conferences.oreilly.com/artificial-intelligence/ai-deep-learning-bots-ny/public/schedule/detail/54081
23
Can we use systems and software
engineering wisdom in MLE?
Engineering is not only about modularity and modular synthesis!
What about other aspects?!
• More attention to left part of V-diagram (as in MBSE)
• More attention to right part of V-diagram (DevOps, release early,
release often – optimizations later)
• …
• What else?
24
Спасибо за внимание!
Анатолий Левенчук,
http://ailev.ru
ailev@asmp.msk.su
TechInvestLab
25

Contenu connexe

Plus de Anatoly Levenchuk

А.Левенчук -- Практики системной инженерии
А.Левенчук -- Практики системной инженерииА.Левенчук -- Практики системной инженерии
А.Левенчук -- Практики системной инженерииAnatoly Levenchuk
 
А.Левенчук -- визуальное мышление
А.Левенчук -- визуальное мышлениеА.Левенчук -- визуальное мышление
А.Левенчук -- визуальное мышлениеAnatoly Levenchuk
 
А.Левенчук -- системное развитие личности
А.Левенчук -- системное развитие личностиА.Левенчук -- системное развитие личности
А.Левенчук -- системное развитие личностиAnatoly Levenchuk
 
А.Левенчук -- Будущее девелопмента
А.Левенчук -- Будущее девелопментаА.Левенчук -- Будущее девелопмента
А.Левенчук -- Будущее девелопментаAnatoly Levenchuk
 
А.Левенчук -- Системное мышление в инженерии предприятий
А.Левенчук -- Системное мышление в инженерии предприятийА.Левенчук -- Системное мышление в инженерии предприятий
А.Левенчук -- Системное мышление в инженерии предприятийAnatoly Levenchuk
 
А.Левенчук -- Системное мышление и управление конфигурацией
А.Левенчук -- Системное мышление и управление конфигурациейА.Левенчук -- Системное мышление и управление конфигурацией
А.Левенчук -- Системное мышление и управление конфигурациейAnatoly Levenchuk
 
А.Левенчук -- аппаратное ускорение аналитики в BigData
А.Левенчук -- аппаратное ускорение аналитики в BigDataА.Левенчук -- аппаратное ускорение аналитики в BigData
А.Левенчук -- аппаратное ускорение аналитики в BigDataAnatoly Levenchuk
 
А.Левенчук -- безлюдные (дез)организации
А.Левенчук -- безлюдные (дез)организацииА.Левенчук -- безлюдные (дез)организации
А.Левенчук -- безлюдные (дез)организацииAnatoly Levenchuk
 
А.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIAА.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIAAnatoly Levenchuk
 
Системное мышление -- непопсовый обзор курса
Системное мышление -- непопсовый обзор курсаСистемное мышление -- непопсовый обзор курса
Системное мышление -- непопсовый обзор курсаAnatoly Levenchuk
 
А.Левенчук -- системный фитнес
А.Левенчук -- системный фитнесА.Левенчук -- системный фитнес
А.Левенчук -- системный фитнесAnatoly Levenchuk
 
Безлюдные организации и их проблемы
Безлюдные организации и их проблемыБезлюдные организации и их проблемы
Безлюдные организации и их проблемыAnatoly Levenchuk
 
А.Левенчук -- автоматизация образования
А.Левенчук -- автоматизация образованияА.Левенчук -- автоматизация образования
А.Левенчук -- автоматизация образованияAnatoly Levenchuk
 
А.Левенчук -- корпоративный искусственный интеллект
А.Левенчук -- корпоративный искусственный интеллектА.Левенчук -- корпоративный искусственный интеллект
А.Левенчук -- корпоративный искусственный интеллектAnatoly Levenchuk
 
Системное мышление -- материалы курса (2016)
Системное мышление -- материалы курса (2016)Системное мышление -- материалы курса (2016)
Системное мышление -- материалы курса (2016)Anatoly Levenchuk
 
И.Беспальчук -- оценка архитектуры по ATAM
И.Беспальчук -- оценка архитектуры по ATAMИ.Беспальчук -- оценка архитектуры по ATAM
И.Беспальчук -- оценка архитектуры по ATAMAnatoly Levenchuk
 
М.Акоев -- системная динамика и мышление
М.Акоев -- системная динамика и мышлениеМ.Акоев -- системная динамика и мышление
М.Акоев -- системная динамика и мышлениеAnatoly Levenchuk
 
А.Левенчук -- преподавание системного мышления
А.Левенчук -- преподавание системного мышленияА.Левенчук -- преподавание системного мышления
А.Левенчук -- преподавание системного мышленияAnatoly Levenchuk
 
А.Левенчук -- privacy и нейронет
А.Левенчук -- privacy и нейронетА.Левенчук -- privacy и нейронет
А.Левенчук -- privacy и нейронетAnatoly Levenchuk
 

Plus de Anatoly Levenchuk (20)

А.Левенчук -- Практики системной инженерии
А.Левенчук -- Практики системной инженерииА.Левенчук -- Практики системной инженерии
А.Левенчук -- Практики системной инженерии
 
А.Левенчук -- визуальное мышление
А.Левенчук -- визуальное мышлениеА.Левенчук -- визуальное мышление
А.Левенчук -- визуальное мышление
 
А.Левенчук -- системное развитие личности
А.Левенчук -- системное развитие личностиА.Левенчук -- системное развитие личности
А.Левенчук -- системное развитие личности
 
А.Левенчук -- Будущее девелопмента
А.Левенчук -- Будущее девелопментаА.Левенчук -- Будущее девелопмента
А.Левенчук -- Будущее девелопмента
 
А.Левенчук -- Системное мышление в инженерии предприятий
А.Левенчук -- Системное мышление в инженерии предприятийА.Левенчук -- Системное мышление в инженерии предприятий
А.Левенчук -- Системное мышление в инженерии предприятий
 
А.Левенчук -- Системное мышление и управление конфигурацией
А.Левенчук -- Системное мышление и управление конфигурациейА.Левенчук -- Системное мышление и управление конфигурацией
А.Левенчук -- Системное мышление и управление конфигурацией
 
А.Левенчук -- аппаратное ускорение аналитики в BigData
А.Левенчук -- аппаратное ускорение аналитики в BigDataА.Левенчук -- аппаратное ускорение аналитики в BigData
А.Левенчук -- аппаратное ускорение аналитики в BigData
 
Future of Engineering
Future of EngineeringFuture of Engineering
Future of Engineering
 
А.Левенчук -- безлюдные (дез)организации
А.Левенчук -- безлюдные (дез)организацииА.Левенчук -- безлюдные (дез)организации
А.Левенчук -- безлюдные (дез)организации
 
А.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIAА.Левенчук -- предпринимательство: кейс NVIDIA
А.Левенчук -- предпринимательство: кейс NVIDIA
 
Системное мышление -- непопсовый обзор курса
Системное мышление -- непопсовый обзор курсаСистемное мышление -- непопсовый обзор курса
Системное мышление -- непопсовый обзор курса
 
А.Левенчук -- системный фитнес
А.Левенчук -- системный фитнесА.Левенчук -- системный фитнес
А.Левенчук -- системный фитнес
 
Безлюдные организации и их проблемы
Безлюдные организации и их проблемыБезлюдные организации и их проблемы
Безлюдные организации и их проблемы
 
А.Левенчук -- автоматизация образования
А.Левенчук -- автоматизация образованияА.Левенчук -- автоматизация образования
А.Левенчук -- автоматизация образования
 
А.Левенчук -- корпоративный искусственный интеллект
А.Левенчук -- корпоративный искусственный интеллектА.Левенчук -- корпоративный искусственный интеллект
А.Левенчук -- корпоративный искусственный интеллект
 
Системное мышление -- материалы курса (2016)
Системное мышление -- материалы курса (2016)Системное мышление -- материалы курса (2016)
Системное мышление -- материалы курса (2016)
 
И.Беспальчук -- оценка архитектуры по ATAM
И.Беспальчук -- оценка архитектуры по ATAMИ.Беспальчук -- оценка архитектуры по ATAM
И.Беспальчук -- оценка архитектуры по ATAM
 
М.Акоев -- системная динамика и мышление
М.Акоев -- системная динамика и мышлениеМ.Акоев -- системная динамика и мышление
М.Акоев -- системная динамика и мышление
 
А.Левенчук -- преподавание системного мышления
А.Левенчук -- преподавание системного мышленияА.Левенчук -- преподавание системного мышления
А.Левенчук -- преподавание системного мышления
 
А.Левенчук -- privacy и нейронет
А.Левенчук -- privacy и нейронетА.Левенчук -- privacy и нейронет
А.Левенчук -- privacy и нейронет
 

А.Левенчук -- практики ЖЦ систем машинного обучения

  • 1. Практики жизненного цикла систем машинного обучения SECR’16 28 окбяря 2016г.
  • 2. Kind of Engineerings • Mechanical engineering • Agriculture engineering • Aerospace engineering – aircraft architecture • Systems engineering • System of systems engineering • … • Software engineering • Control [systems] engineering – control [system] architecture • Knowledge engineering -- architecture • Machine learning [system] engineering (-- architecture?) • … • Neural engineering • neural network engineering -- neural [network] architecture • Feature engineering -- ??? 2
  • 3. Systems, Software, Machine Learning Engineerings • Software engineering [term appeared in 1965, boosted by NATO as a profession in 1968] • Systems engineering [Bell Labs in 1940s, boosted as a profession by NCOSE 1990] • Machine learning engineering [term appeared in 2011] 3https://www.google.com/trends/explore#q=machine%20learning%20engineering&cmpt=q&tz=Etc%2FGMT-3
  • 4. Вместо «программа» подставьте «система машинного обучения». Why is my program not working? You need to know why? To repair compiler? Software engineer (systems) To advance theory? Computer Scientist You need to program working properly? Software engineer (application) 4
  • 5. Жизненный цикл системы – это про тех, кто её делает 5 t Обеспечивающие системы (их много!), описанные минимально как практики- компоненты и проекты- модули по изменению целевой системы Целевая система Эксплуатация «Практики жизненного цикла систем машинного обучения»
  • 6. Проблемы с ЖЦ 1.0 6 • Появилась параллельная инженерия (сначала «итерации», а потом и вообще всё смешалось) • Нельзя обсуждать «почему предпринятие вообще работает», методы работы, методологии. Только «как собрать из кусочков во времени». Горбатая диаграмма (hump diagram) из RUP (Rational Unified Process) Практики, именованные по дисциплинам!
  • 7. Какие компоненты предприятия? (как оно работает?) Практика = дисциплина + технология Дисциплинированные (компетентные) исполнители [все ли люди?], обеспеченные необходимыми для поддержки дисциплины инструментами 7
  • 8. Схематизация жизненного цикла: различение дисциплины и технологии в практике • дисциплины = мышление (операции с абстрактными типизированными объектами). Меняются за 30 лет. Учатся в школе и ВУЗе. Практика определяется по её дисциплине. Инвестиции в «человеческий капитал». • технологии = инструменты и рабочие продукты (поддержка мышления в экзокортексе). Меняются каждые 5 лет. Учатся на производстве. Проекты используют технологии как «ресурсы». Инвестиции в традиционный капитал. • Дисциплины тренируют на задачах (заранее поставленных) • Понимание связи дисциплин и технологий, идеальных объектов дисциплин и рабочих продуктов в жизни нужно ТРЕНИРОВАТЬ, для этого обычно нужен преподаватель • Маскировка в реальной жизни: а) задача не поставлена б) много отвлечений 8 В жизни ни одного слова из учебника В учебнике ни одного слова из жизни =Компоненты, функциональные единицы, альфы =Модули, конструктивные единицы, рабочие продукты
  • 9. Системная схема проекта 9 Технологический менеджмент и предпринимательство Инженерный менеджмент Инженерия Технологический менеджмент Using system Enabling system System of interest http://arxiv.org/abs/1502.00121
  • 11. Какие практики можно ожидать?! • Специализацию практик системной инженерии • Специализацию практик программной инженерии • Управление жизненным циклом (методология разработки) • Инженерия требований • Инженерия архитектуры • Инженерия испытаний • Управление конфигурацией • … На многих уровнях технологического стека! 11
  • 12. Инженерия психики Инженерия машинного обучения Инженерия предприятия Системная инженерия Постановка задачи на модернизацию (всегда brownfield) Замысел и требования Стратегирование Замысел и требования Намеревание Архитектура Архитектура Архитектура и проектирование (выращивание субстрата) программирование архитектуры Постановка практик: набор персонала, закупка технологий Изготовление и интеграция/сборка Дообучение (ибо всегда brownfield) Обучение (training), Постановка практик в части обучения работе наладка Автоматизация навыка Передача обучения (transfer learning), сжатие сетки, ансамблирование (но ярко выраженной сборки нет, плохая модульность) Merge/aquisition на уровне предприятий (но нет «сборки» отдельных практик, плохая модульность) Модернизация заменой модулей Аттестация, экзамены, освидетельствование Проверка и приёмка Оценка, аттестация Проверка и приёмка Жизнь Вывод (inference) Работа Эксплуатация Жизненные циклы обучающихся систем 12
  • 13. Жизненный цикл систем машинного обучения • Экстремальный ЖЦ: начинается много раньше, чем замысел, заканчивается много позже вывода из эксплуатации • Многоуровневый ЖЦ: разный на всех уровнях интеллект-стека • Нет методологий разработки: сказать agile – это ничего не сказать (кто признается, что он «негибкий»?), нет отдельных практик, принципов, инструментов • Нет учебников по практикам ЖЦ, только отдельные статьи. 13
  • 14. INCOSE VISION 2025 14 Проблемы с модульностью на высоких уровнях (где появляются сети, люди – непонятная связность): переход от сборки-наладки к «эволюции», «обучению», «системообразованию»
  • 15. Метафоры жизненного цикла машинного обучения 15 часовщик лесниксадовник инженерия Обучение Tesla – уже сегодня Восток: смириться и растить. Запад: добиваться модульности, растить потом.
  • 16. МЕЖДИСЦИПЛИНАРНОСТЬ Интеллект-функции + интеллект-стек + где это в мире 16 На основе рис.3 в ISO 81346-1 -Модули =Компоненты +Места
  • 17. Главная дисциплина: архитектура (важные решения) 17 «Логическая архитектура» (функциональная декомпозиция, структура компонент) итеративно совмещается с «физической архитектурой» (продуктная композиция, структура модулей) Модульный синтез: • Компонуемость – собираемость модулей • Комозициональность – собираемость функций на модулях ISO 81346-1 Figure 7 https://pages.nist.gov/cpspwg/
  • 18. Малая связность: ключ к развитию и совершенствованию • Модульность: каждая связь имеет цену. Не было бы цены, не было бы модулей • http://arxiv.org/abs/1207.2743 • Меньше связность – круче улучшения! • http://www.pnas.org/content/108/22/9008.full 18 Падение стоимости при улучшении отдельных модулей (n), при разном числе связей каждого из них (d) Чтобы изменения улучшали дело, нужно меньше связей!
  • 19. Модульности очень разные: • Knowledge graphs (онтологии и семантики) – структурированная память (MemNN, differentiable neural computer) • Embeddings – priors (замечание Nando de Freitas, http://ailev.livejournal.com/1240509.html) • Models as modules (например, progressive networks для multitask learning, ансаблирование и его моделирование -- https://arxiv.org/abs/1605.06431, разные виды transfer learning) • Learning algorithms as modules (например, frameworks), и отдельные элементы для алгоритмов (обзор -- http://fastml.com/deep-learning-architecture-diagrams/). • … Серебряной пули нет, и никогда не будет. 19
  • 20. Intelligence Platform Stack 20 Application (domain) Platform Cognitive Architecture Platform Learning Algorithm Platform Computational library General Computer Language CPU GPU/TPU/DPU/FPGA/Physical computation Drivers GPU/TPU/DPU/FPGA/Physical computation Accelerator Neurocompiler Neuromorphic driver Neuromorphic chip Disruptionenablers Disruptiondemand Thanks for computer gamers for their disruption demand to give us disruption enabler such as GPU!
  • 21. Платформы машинного обучения • Одной платформы не хватит никогда! • Master algorithm: тренд на гибридизацию разных подходов • Когнитивная архитектура: тренд на комбинирование разных подходов • Reinforcement learning • Adversarial architectures 21 Shallow Learning Big Data Deep Learning Neuro evolution Bayes Army Symbolic Теорема бесплатного завтрака
  • 22. Conversion of engineerings and Disruption of engineerings 22 Software Engineering Machine Learning Engineering Janosh Szepanovits. Convergence: Model-Based Software, Systems And Control Engineering + http://www.infoq.com/presentations/Model-Based-Design-Janos-Sztipanovits Le Bottou – «Machine Learning disrupts software engineering» http://leon.bottou.org/slides/2challenges/2challenges.pdf We can add: • Machine learning disrupts systems engineering • Machine learning disrupts control engineering • … • Machine learning disrupts contemporary engineering
  • 23. Литература по инженерии MLE: больше постановки проблем, чем решения • Leon Bottou, Two big challenges in machine learning http://leon.bottou.org/slides/2challenges/2challenges.pdf • D. Sculley, Gary Holt, Daniel Golovin, Eugene Davydov, Todd Phillips, Dietmar Ebner, Vinay Chaudhary, Michael Young, Jean-Francois Сrespo, Dan Dennison, Hidden Technical Debt in Machine Learning Systems http://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf • Nando de Freitas, Learning to learn and compositionality with deep recurrent neural networks https://youtu.be/x1kf4Zojtb0 • Diogo Almeida, Modular in theory, inflexible in practice http://conferences.oreilly.com/artificial-intelligence/ai-deep-learning-bots-ny/public/schedule/detail/54081 23
  • 24. Can we use systems and software engineering wisdom in MLE? Engineering is not only about modularity and modular synthesis! What about other aspects?! • More attention to left part of V-diagram (as in MBSE) • More attention to right part of V-diagram (DevOps, release early, release often – optimizations later) • … • What else? 24
  • 25. Спасибо за внимание! Анатолий Левенчук, http://ailev.ru ailev@asmp.msk.su TechInvestLab 25