Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Практики жизненного цикла
систем машинного обучения
SECR’16
28 окбяря 2016г.
Kind of Engineerings
• Mechanical engineering
• Agriculture engineering
• Aerospace engineering – aircraft architecture
• ...
Systems, Software, Machine Learning Engineerings
• Software engineering [term appeared in 1965, boosted by
NATO as a profe...
Вместо «программа»
подставьте «система машинного обучения».
Why is my program
not working?
You need to know
why?
To repair...
Жизненный цикл системы – это про тех, кто её делает
5
t
Обеспечивающие
системы (их
много!),
описанные минимально
как практ...
Проблемы с ЖЦ 1.0
6
• Появилась параллельная инженерия (сначала «итерации», а потом и вообще всё смешалось)
• Нельзя обсуж...
Какие компоненты предприятия? (как оно работает?)
Практика = дисциплина + технология
Дисциплинированные (компетентные) исп...
Схематизация жизненного цикла:
различение дисциплины и технологии в практике
• дисциплины = мышление (операции с абстрактн...
Системная схема проекта
9
Технологический
менеджмент и
предпринимательство
Инженерный
менеджмент
Инженерия
Технологический...
10
Ждём: machine learning
specific processes
Какие практики можно ожидать?!
• Специализацию практик системной инженерии
• Специализацию практик программной инженерии
•...
Инженерия психики Инженерия машинного
обучения
Инженерия предприятия Системная инженерия
Постановка задачи на
модернизацию...
Жизненный цикл систем машинного
обучения
• Экстремальный ЖЦ: начинается много раньше, чем замысел,
заканчивается много поз...
INCOSE VISION 2025
14
Проблемы с модульностью
на высоких уровнях (где
появляются сети, люди –
непонятная связность):
перех...
Метафоры жизненного цикла машинного обучения
15
часовщик лесниксадовник
инженерия
Обучение Tesla – уже сегодня
Восток: сми...
МЕЖДИСЦИПЛИНАРНОСТЬ
Интеллект-функции + интеллект-стек + где это в мире
16
На основе
рис.3
в ISO 81346-1
-Модули
=Компонен...
Главная дисциплина: архитектура (важные решения)
17
«Логическая архитектура»
(функциональная
декомпозиция, структура
компо...
Малая связность: ключ к развитию и
совершенствованию
• Модульность: каждая связь имеет цену. Не было
бы цены, не было бы м...
Модульности очень разные:
• Knowledge graphs (онтологии и семантики) – структурированная память
(MemNN, differentiable neu...
Intelligence Platform Stack
20
Application (domain) Platform
Cognitive Architecture Platform
Learning Algorithm Platform
C...
Платформы машинного обучения
• Одной платформы не хватит
никогда!
• Master algorithm: тренд на
гибридизацию разных
подходо...
Conversion of engineerings
and
Disruption of engineerings
22
Software
Engineering
Machine
Learning
Engineering
Janosh Szep...
Литература по инженерии MLE:
больше постановки проблем, чем решения
• Leon Bottou, Two big challenges in machine learning
...
Can we use systems and software
engineering wisdom in MLE?
Engineering is not only about modularity and modular synthesis!...
Спасибо за внимание!
Анатолий Левенчук,
http://ailev.ru
ailev@asmp.msk.su
TechInvestLab
25
Upcoming SlideShare
Loading in …5
×

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

6,184 views

Published on

Доклад А.Левенчука "Практики жизненного цикла систем машинного обучения" на конференции CEE-SECR 2016, 28 октября 2016г.

Published in: Engineering
  • Dating for everyone is here: ❤❤❤ http://bit.ly/2F7hN3u ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Follow the link, new dating source: ❤❤❤ http://bit.ly/2F7hN3u ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

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

  1. 1. Практики жизненного цикла систем машинного обучения SECR’16 28 окбяря 2016г.
  2. 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. 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. 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. Жизненный цикл системы – это про тех, кто её делает 5 t Обеспечивающие системы (их много!), описанные минимально как практики- компоненты и проекты- модули по изменению целевой системы Целевая система Эксплуатация «Практики жизненного цикла систем машинного обучения»
  6. 6. Проблемы с ЖЦ 1.0 6 • Появилась параллельная инженерия (сначала «итерации», а потом и вообще всё смешалось) • Нельзя обсуждать «почему предпринятие вообще работает», методы работы, методологии. Только «как собрать из кусочков во времени». Горбатая диаграмма (hump diagram) из RUP (Rational Unified Process) Практики, именованные по дисциплинам!
  7. 7. Какие компоненты предприятия? (как оно работает?) Практика = дисциплина + технология Дисциплинированные (компетентные) исполнители [все ли люди?], обеспеченные необходимыми для поддержки дисциплины инструментами 7
  8. 8. Схематизация жизненного цикла: различение дисциплины и технологии в практике • дисциплины = мышление (операции с абстрактными типизированными объектами). Меняются за 30 лет. Учатся в школе и ВУЗе. Практика определяется по её дисциплине. Инвестиции в «человеческий капитал». • технологии = инструменты и рабочие продукты (поддержка мышления в экзокортексе). Меняются каждые 5 лет. Учатся на производстве. Проекты используют технологии как «ресурсы». Инвестиции в традиционный капитал. • Дисциплины тренируют на задачах (заранее поставленных) • Понимание связи дисциплин и технологий, идеальных объектов дисциплин и рабочих продуктов в жизни нужно ТРЕНИРОВАТЬ, для этого обычно нужен преподаватель • Маскировка в реальной жизни: а) задача не поставлена б) много отвлечений 8 В жизни ни одного слова из учебника В учебнике ни одного слова из жизни =Компоненты, функциональные единицы, альфы =Модули, конструктивные единицы, рабочие продукты
  9. 9. Системная схема проекта 9 Технологический менеджмент и предпринимательство Инженерный менеджмент Инженерия Технологический менеджмент Using system Enabling system System of interest http://arxiv.org/abs/1502.00121
  10. 10. 10 Ждём: machine learning specific processes
  11. 11. Какие практики можно ожидать?! • Специализацию практик системной инженерии • Специализацию практик программной инженерии • Управление жизненным циклом (методология разработки) • Инженерия требований • Инженерия архитектуры • Инженерия испытаний • Управление конфигурацией • … На многих уровнях технологического стека! 11
  12. 12. Инженерия психики Инженерия машинного обучения Инженерия предприятия Системная инженерия Постановка задачи на модернизацию (всегда brownfield) Замысел и требования Стратегирование Замысел и требования Намеревание Архитектура Архитектура Архитектура и проектирование (выращивание субстрата) программирование архитектуры Постановка практик: набор персонала, закупка технологий Изготовление и интеграция/сборка Дообучение (ибо всегда brownfield) Обучение (training), Постановка практик в части обучения работе наладка Автоматизация навыка Передача обучения (transfer learning), сжатие сетки, ансамблирование (но ярко выраженной сборки нет, плохая модульность) Merge/aquisition на уровне предприятий (но нет «сборки» отдельных практик, плохая модульность) Модернизация заменой модулей Аттестация, экзамены, освидетельствование Проверка и приёмка Оценка, аттестация Проверка и приёмка Жизнь Вывод (inference) Работа Эксплуатация Жизненные циклы обучающихся систем 12
  13. 13. Жизненный цикл систем машинного обучения • Экстремальный ЖЦ: начинается много раньше, чем замысел, заканчивается много позже вывода из эксплуатации • Многоуровневый ЖЦ: разный на всех уровнях интеллект-стека • Нет методологий разработки: сказать agile – это ничего не сказать (кто признается, что он «негибкий»?), нет отдельных практик, принципов, инструментов • Нет учебников по практикам ЖЦ, только отдельные статьи. 13
  14. 14. INCOSE VISION 2025 14 Проблемы с модульностью на высоких уровнях (где появляются сети, люди – непонятная связность): переход от сборки-наладки к «эволюции», «обучению», «системообразованию»
  15. 15. Метафоры жизненного цикла машинного обучения 15 часовщик лесниксадовник инженерия Обучение Tesla – уже сегодня Восток: смириться и растить. Запад: добиваться модульности, растить потом.
  16. 16. МЕЖДИСЦИПЛИНАРНОСТЬ Интеллект-функции + интеллект-стек + где это в мире 16 На основе рис.3 в ISO 81346-1 -Модули =Компоненты +Места
  17. 17. Главная дисциплина: архитектура (важные решения) 17 «Логическая архитектура» (функциональная декомпозиция, структура компонент) итеративно совмещается с «физической архитектурой» (продуктная композиция, структура модулей) Модульный синтез: • Компонуемость – собираемость модулей • Комозициональность – собираемость функций на модулях ISO 81346-1 Figure 7 https://pages.nist.gov/cpspwg/
  18. 18. Малая связность: ключ к развитию и совершенствованию • Модульность: каждая связь имеет цену. Не было бы цены, не было бы модулей • http://arxiv.org/abs/1207.2743 • Меньше связность – круче улучшения! • http://www.pnas.org/content/108/22/9008.full 18 Падение стоимости при улучшении отдельных модулей (n), при разном числе связей каждого из них (d) Чтобы изменения улучшали дело, нужно меньше связей!
  19. 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. 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. 21. Платформы машинного обучения • Одной платформы не хватит никогда! • Master algorithm: тренд на гибридизацию разных подходов • Когнитивная архитектура: тренд на комбинирование разных подходов • Reinforcement learning • Adversarial architectures 21 Shallow Learning Big Data Deep Learning Neuro evolution Bayes Army Symbolic Теорема бесплатного завтрака
  22. 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. 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. 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. 25. Спасибо за внимание! Анатолий Левенчук, http://ailev.ru ailev@asmp.msk.su TechInvestLab 25

×