SlideShare a Scribd company logo
1 of 20
Download to read offline
Landscape of IoT and
Machine Learning Patterns
Hironori Washizaki
IoT Pattern Survey with Nobukazu Yoshioka, Atsuo
Hazeyama, Takehisa Kato, Haruhiko Kaiya, Shinpei Ogata,
Takao Okubo and Eduardo B. Fernandez
ML Pattern Survey with Yasuhiro Watanabe,
Foutse Khomh and Yann-Gael Gueheneuc
Smart SE Seminar, Tokyo, Sep 9th, 2019
Agenda
• Landscape of IoT patterns
• (Partial) Landscape of ML patterns
2
Landscape of IoT Patterns
• IoT architecture and design patterns at different
abstraction levels are not well classified and
studied.
• RQ1. What are the publication trends of IoT
patterns?
– We identified the publication years and venues of the
33 papers surveyed.
• RQ2. Are all existing IoT patterns really IoT
patterns?
– We confirmed whether or not each proposed or used
pattern the IoT context is actually a pattern
addressing specific problems and solutions in IoT.
3
H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
IoT Pattern Classification
• Abstraction level
– High: Reference architectures
– Middle: Architecture patterns
– Low: Design patterns
• Domain specificity
– Any: General architecture/design patterns that can be
adopted to design IoT systems and software
– General IoT: Applicable to any IoT systems and software.
– Specific IoT: Addressing specific problem/technical
domains
• Quality characteristic
– All quality characteristics except for functional suitability in
ISO/IEC 25010
– + Emerging characteristics common in IoT such as
scalability and privacy
4
H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
Systematic literature review (SLR)
• Initial Search: 63 papers 2014–2018 in Scopus
– “IoT” AND ( “design pattern” OR “architecture pattern” )
• Impurity Removal: 56
• Inclusion and Exclusion Criteria: 33
– Inclusion: Addressing patterns for designing IoT systems
and software, and papers written in English
• Data Extraction
– Publication title, publication year, publication venue
– Types of patterns proposed or used, pattern names
– Domain names in the case of Specific IoT patterns
– Quality characteristics addressed
5
Scopus
Initial
Search
63
Impurity
Removal
56
Inclusion and
Exclusion Criteria
33
TotalH. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
Publication (RQ1)
• The high numbers of conference papers and
journal papers suggest IoT architecture and
design patterns are maturing.
• Since 2016, IoT patterns have become an
important and eye-catching aspect of research,
and interest has been expanding each year.
6
Workshop Symposium Conference Book chapter Journal Total
2014 1 1
2015 1 1
2016 1 3 2 6
2017 1 1 7 3 12
2018 4 5 1 3 13
Total 5 2 17 1 8 33
H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
IoT Patterns (RQ2)
• 136 patterns mentioned in 33 papers
• 75 general (non-IoT) patterns
– Incl. 8 non-IoT patterns appeared in multiple papers:
Publish-Subscribe, Client-Server, Peer-to-Peer, REST,
SOA, RBAC, MVC and Reflection
– 14 papers used such non-IoT patterns only. IoT
systems and software are often designed via
conventional architecture and design patterns.
• 61 IoT patterns in 19 papers
7
Any General IoT Specific IoT Total
High 20 3 2 25
Middle 14 14 15 43
Low 41 24 3 68
Total 75 41 20 136
Domain specificityAbstraction
level
H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
E.g. Reference Architecture
8
鄭顕志,”アーキテクチャ・品質エンジニアリング”, スマートエスイー, 2018
E.g. Lambda-style architecture
H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
IoT Pattern Classification (RQ3)
• IoT patterns are not recognized by different research groups
– Only Operator-Controller-Module mentioned in multiple papers
– Pattern authors are encouraged to carefully check existing IoT
patterns
• Combinations of abstraction level and domain specificity
– Most of IoT design patterns are applicable to any domain.
– Many IoT architecture patterns exist for specific domains. Unique
nature of IoT adoption in specific domains appears at the
architecture level.
• Quality characteristics: Performance efficiency, usability,
reliability, and maintainability are commonly addressed.
9
Any General IoT Specific IoT Total
High 20 3 2 25
Middle 14 14 15 43
Low 41 24 3 68
Total 75 41 20 136
Domain specificityAbstraction
level
H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
Agenda
• Landscape of IoT patterns
• (Partial) Landscape of ML patterns
• Attribute-Driven Design integrating IoT/ML
patterns
10
Landscape of ML Patterns
• ML system architecture and design patterns at
different abstraction levels are not well classified
and studied.
• RQ1. What are common issues and practices in
ML system development?
– We identified issues and practices aligned with ML
development process.
• RQ2. What are the publication trends of ML
architecture and design patterns?
– We identified 10 papers and 28 gray documents
surveyed.
• RQ3. What kind of ML architecture and design
patterns are identified?
– (TBD!) 11
ML development & operation process
12
Data Cleaning
Data collection
Data labeling
Feature Engineering
Model Requirement
Model Deployment
Model Evaluation
Model monitoring
Cross cutting
Model Training
Trials and tribulations of developers of intelligent systems: A field study, VL/HCC 2016
The emerging role of data scientists on software development teams, ICSE 2016
Ux design innovation: Challenges for working with machine learning as a design material, CHI 2017
Human model evaluation in interactive supervised learning, CHI 2011
Professional Identity and Information Use: On Becoming a Machine Learning Developer, iConference 2019
A methodology to involve domain experts and machine learning techniques in the design of human-centered algorithms, HWID 2019
Silly lamp: Study of a relationship with engaging machine learning artefacts, CHI 2018
Software engineering for machine learning: A case study, ICSE 2019.
Rules of machine learning: Best practices for ml engineering, http://martin.zinkevich.org/rules of ml/rules of ml.pdf 2017
RQ1. Issues (excerpt)
• We identified around 25 issues in 9 papers.
• Model Requirement
– Difficult to understand ML algorithm and its potential
– Lack of Ethical Considerations
• Data Collection
– Difficult to understand data from third party
– Difficult to understand data format
• Data Cleaning
– The method to preprocess data is not mentioned
• Data Labeling
– Strain on resources for labeling
• Feature Engineering
– Difficult to measure the effect of feature
– Important features affect the result 13
JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
RQ1. Issues (excerpt)(cont.)
• Model Training
– Ad-hoc algorithm selection based on past experience
– Difficult to reuse the model for other domains or data
formats
• Model Evaluation
– Difficult to understand the results
– Frequent revisions initiated by model changes,
parameter tuning, and data updates
• Model Deployment
– Copy pipeline and drop necessary data
– Concerned with other modules
• Cross-Cutting
– Highly dependent on individuals
– Lack of collaboration between developers and other
roles 14
JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
RQ1. Practice categories
• We identified around 25 practices in 9 papers.
– Some of them can be categorized into the followings:
• Start with small: Practices to start with simplified issues.
• Goal-Oriented: Practices to focus on a goal of the project
• Data Concerns: Practices to deal with issues related to data
• Separation of Concerns: Practices to identify sub issues and
deal with them step-by-step
• Measure: Practices to measure uncertainty in developments
• Heuristic: Practices which rely on developers' experiences
• Traditional Practice: Practices employed even in traditional
software developments
– Requirement elicitation from users, traceability management,
refactoring, and testing
15
JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
Practice categories aligned with phases
16
Practice
category
Model
requir
ement
Data
collec
tion
Data
cleani
ng
Data
labeling
Feat
ure
engi
neeri
ng
Model
trainin
g
Mode
l
evalu
ation
Mode
l
deplo
ymen
t
Model
monitori
ng
Start small ○ ○ ○ ○
Goal-
oriented
○ ○
Data
concern
○ ○ ○ ○ ○
Separation
of concerns
○ ○ ○
Measureme
nt
○ ○ ○
Heuristic ○ ○
Traditional
practices
○ ○ ○
JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
RQ2. Publication trends of ML architecture and
design patterns
• 10 papers by using Engineering Village
– Developing Machine Learning Products Better and Faster at Startups
– Hidden technical debt in machine learning systems
– Applied Machine Learning at Facebook: A Datacenter Infrastructure
Perspective
– Continuous Integration of Machine Learning Models with ease.ml/ci:
Towards a Rigorous Yet Practical Treatment
– Uncertainty in machine learning applications: A practice-driven
classification of uncertainty
– Software Architecture of a Learning Apprentice System in Medical
Billing
– ClearTK 2.0: Design patterns for machine learning in UIMA
– Solution patterns for machine learning
– A Survey on Security Threats and Defensive Techniques of Machine
Learning: A Data Driven View Learning
– Machine Learning System Architectural Pattern for Improving
Operational Stability 17
RQ2. Publication trends of ML architecture and
design patterns (cont.)
• 28 gray documents by using Google
• Collection of patterns
– Design Patterns for Deep Learning
– Solution Patterns for Machine Learning
– Design Patterns for Machine Learning in Production
– Patterns (and Anti-Patterns) for Developing Machine Learning
Systems
– Design Patterns for Deep Learning Architectures
– Exploring Development Patterns in Data Science
• Individual pattern
– The MVC for Machine Learning: Data-Model-Learner (DML)
– Closed-Loop Intelligence
– Daisy Architecture
– Event-Driven Architecture
– Data Lake Architecture 18
E.g. Multi-Layer architecture pattern
19Haruki Yokoyama, Machine Learning System Architectural Pattern for Improving Operational Stability, ICSA-C, 2019
https://ieeexplore.ieee.org/document/8712157
Summary
• Landscape of IoT patterns
– IoT systems and software are often designed via
conventional architecture and design patterns.
– IoT patterns may not be recognized by different
research groups.
– Unique nature of IoT adoption in specific domains
appears at the architecture level.
• (Partial) Landscape of ML patterns
– We identified issues and practices aligned with ML
development process.
– We identified 10 papers and 28 gray documents
surveyed.
20

More Related Content

Similar to IoT and ML Landscape

Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Analysis of IoT Pattern Descriptions (SERP4IoT 2021)
Analysis of IoT Pattern Descriptions (SERP4IoT 2021)Analysis of IoT Pattern Descriptions (SERP4IoT 2021)
Analysis of IoT Pattern Descriptions (SERP4IoT 2021)Hironori Washizaki
 
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...Hironori Washizaki
 
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Hironori Washizaki
 
Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Lionel Briand
 
CSE320 SOFTWARE ENGINEERING Lecture01 (1).ppt
CSE320  SOFTWARE ENGINEERING Lecture01 (1).pptCSE320  SOFTWARE ENGINEERING Lecture01 (1).ppt
CSE320 SOFTWARE ENGINEERING Lecture01 (1).pptDHIRENDRAHUDDA
 
Automatic Classification of Springer Nature Proceedings with Smart Topic Miner
Automatic Classification of Springer Nature Proceedings with Smart Topic MinerAutomatic Classification of Springer Nature Proceedings with Smart Topic Miner
Automatic Classification of Springer Nature Proceedings with Smart Topic MinerFrancesco Osborne
 
information system analysis and design
information system analysis and designinformation system analysis and design
information system analysis and designEndalkachewYazie1
 
Past and Future of Software Testing and Analysis
Past and Future of Software Testing and AnalysisPast and Future of Software Testing and Analysis
Past and Future of Software Testing and AnalysisLionel Briand
 
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...Lionel Briand
 
Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...
Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...
Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...CaaS EU FP7 Project
 
IEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK GuideIEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK GuideHironori Washizaki
 

Similar to IoT and ML Landscape (20)

Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Analysis of IoT Pattern Descriptions (SERP4IoT 2021)
Analysis of IoT Pattern Descriptions (SERP4IoT 2021)Analysis of IoT Pattern Descriptions (SERP4IoT 2021)
Analysis of IoT Pattern Descriptions (SERP4IoT 2021)
 
Iwesep19.ppt
Iwesep19.pptIwesep19.ppt
Iwesep19.ppt
 
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
SWEBOK Guide Evolution and Its Emerging Areas including Machine Learning Patt...
 
JCDL 2013 DOCTORAL CONSORTIUM
JCDL 2013 DOCTORAL CONSORTIUMJCDL 2013 DOCTORAL CONSORTIUM
JCDL 2013 DOCTORAL CONSORTIUM
 
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
 
Data-X-v3.1
Data-X-v3.1Data-X-v3.1
Data-X-v3.1
 
Data-X-Sparse-v2
Data-X-Sparse-v2Data-X-Sparse-v2
Data-X-Sparse-v2
 
00 intro
00 intro00 intro
00 intro
 
Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.
 
CSE320 SOFTWARE ENGINEERING Lecture01 (1).ppt
CSE320  SOFTWARE ENGINEERING Lecture01 (1).pptCSE320  SOFTWARE ENGINEERING Lecture01 (1).ppt
CSE320 SOFTWARE ENGINEERING Lecture01 (1).ppt
 
Automatic Classification of Springer Nature Proceedings with Smart Topic Miner
Automatic Classification of Springer Nature Proceedings with Smart Topic MinerAutomatic Classification of Springer Nature Proceedings with Smart Topic Miner
Automatic Classification of Springer Nature Proceedings with Smart Topic Miner
 
information system analysis and design
information system analysis and designinformation system analysis and design
information system analysis and design
 
Unit 5
Unit 5Unit 5
Unit 5
 
Past and Future of Software Testing and Analysis
Past and Future of Software Testing and AnalysisPast and Future of Software Testing and Analysis
Past and Future of Software Testing and Analysis
 
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
 
Presentation1.pptx
Presentation1.pptxPresentation1.pptx
Presentation1.pptx
 
Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...
Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...
Context-oriented Knowledge Management in Production Networks @Gsom Emerging m...
 
IEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK GuideIEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
IEEE Computer Society’s Strategic Activities and Products including SWEBOK Guide
 
To Slow Down or Speed Up?
To Slow Down or Speed Up?To Slow Down or Speed Up?
To Slow Down or Speed Up?
 

More from Hironori Washizaki

IEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateIEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateHironori Washizaki
 
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会Hironori Washizaki
 
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用Hironori Washizaki
 
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225Hironori Washizaki
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureHironori Washizaki
 
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデートHironori Washizaki
 
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向Hironori Washizaki
 
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~Hironori Washizaki
 
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集Hironori Washizaki
 
スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介Hironori Washizaki
 
DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方Hironori Washizaki
 
対応性のある運用のパターン
対応性のある運用のパターン対応性のある運用のパターン
対応性のある運用のパターンHironori Washizaki
 
モデル訓練のパターン
モデル訓練のパターンモデル訓練のパターン
モデル訓練のパターンHironori Washizaki
 
パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度Hironori Washizaki
 
データ表現のパターン
データ表現のパターンデータ表現のパターン
データ表現のパターンHironori Washizaki
 
機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクルHironori Washizaki
 
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)Hironori Washizaki
 
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組みHironori Washizaki
 
Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...
Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...
Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...Hironori Washizaki
 
機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design Patterns機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design PatternsHironori Washizaki
 

More from Hironori Washizaki (20)

IEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateIEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions Update
 
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
鷲崎弘宜, "国際規格ISO/IEC 24773とその意義", 情報処理学会 第86回全国大会
 
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
TISO/IEC JTC1におけるソフトウェア工学知識体系、技術者認証および品質の標準化と研究・教育他への活用
 
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
アジャイル品質のパターンとメトリクス Agile Quality Patterns and Metrics (QA2AQ) 20240225
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about Architecture
 
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
世界標準のソフトウェア工学知識体系SWEBOK Guide最新第4版を通じた開発アップデート
 
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
デジタルトランスフォーメーション(DX)におけるソフトウェアの側面とダイバーシティ・インクルーシブに関する研究実践動向
 
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
SQuBOKガイドV3概説 ~IoT・AI・DX時代のソフトウェア品質とシステム監査~
 
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
人生100年・60年カリキュラム時代のDX人材育成: スマートエスイー 2021年度成果および2022年度募集
 
スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介スマートエスイーコンソーシアムの概要と2021年度成果紹介
スマートエスイーコンソーシアムの概要と2021年度成果紹介
 
DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方DXの推進において企業内に求められる人材やデジタル人材の育て方
DXの推進において企業内に求められる人材やデジタル人材の育て方
 
対応性のある運用のパターン
対応性のある運用のパターン対応性のある運用のパターン
対応性のある運用のパターン
 
モデル訓練のパターン
モデル訓練のパターンモデル訓練のパターン
モデル訓練のパターン
 
パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度
 
データ表現のパターン
データ表現のパターンデータ表現のパターン
データ表現のパターン
 
機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル
 
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
 
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
 
Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...
Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...
Rubric-based Assessment of Programming Thinking Skills and Comparative Evalua...
 
機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design Patterns機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design Patterns
 

Recently uploaded

Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 

Recently uploaded (20)

Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 

IoT and ML Landscape

  • 1. Landscape of IoT and Machine Learning Patterns Hironori Washizaki IoT Pattern Survey with Nobukazu Yoshioka, Atsuo Hazeyama, Takehisa Kato, Haruhiko Kaiya, Shinpei Ogata, Takao Okubo and Eduardo B. Fernandez ML Pattern Survey with Yasuhiro Watanabe, Foutse Khomh and Yann-Gael Gueheneuc Smart SE Seminar, Tokyo, Sep 9th, 2019
  • 2. Agenda • Landscape of IoT patterns • (Partial) Landscape of ML patterns 2
  • 3. Landscape of IoT Patterns • IoT architecture and design patterns at different abstraction levels are not well classified and studied. • RQ1. What are the publication trends of IoT patterns? – We identified the publication years and venues of the 33 papers surveyed. • RQ2. Are all existing IoT patterns really IoT patterns? – We confirmed whether or not each proposed or used pattern the IoT context is actually a pattern addressing specific problems and solutions in IoT. 3 H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 4. IoT Pattern Classification • Abstraction level – High: Reference architectures – Middle: Architecture patterns – Low: Design patterns • Domain specificity – Any: General architecture/design patterns that can be adopted to design IoT systems and software – General IoT: Applicable to any IoT systems and software. – Specific IoT: Addressing specific problem/technical domains • Quality characteristic – All quality characteristics except for functional suitability in ISO/IEC 25010 – + Emerging characteristics common in IoT such as scalability and privacy 4 H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 5. Systematic literature review (SLR) • Initial Search: 63 papers 2014–2018 in Scopus – “IoT” AND ( “design pattern” OR “architecture pattern” ) • Impurity Removal: 56 • Inclusion and Exclusion Criteria: 33 – Inclusion: Addressing patterns for designing IoT systems and software, and papers written in English • Data Extraction – Publication title, publication year, publication venue – Types of patterns proposed or used, pattern names – Domain names in the case of Specific IoT patterns – Quality characteristics addressed 5 Scopus Initial Search 63 Impurity Removal 56 Inclusion and Exclusion Criteria 33 TotalH. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 6. Publication (RQ1) • The high numbers of conference papers and journal papers suggest IoT architecture and design patterns are maturing. • Since 2016, IoT patterns have become an important and eye-catching aspect of research, and interest has been expanding each year. 6 Workshop Symposium Conference Book chapter Journal Total 2014 1 1 2015 1 1 2016 1 3 2 6 2017 1 1 7 3 12 2018 4 5 1 3 13 Total 5 2 17 1 8 33 H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 7. IoT Patterns (RQ2) • 136 patterns mentioned in 33 papers • 75 general (non-IoT) patterns – Incl. 8 non-IoT patterns appeared in multiple papers: Publish-Subscribe, Client-Server, Peer-to-Peer, REST, SOA, RBAC, MVC and Reflection – 14 papers used such non-IoT patterns only. IoT systems and software are often designed via conventional architecture and design patterns. • 61 IoT patterns in 19 papers 7 Any General IoT Specific IoT Total High 20 3 2 25 Middle 14 14 15 43 Low 41 24 3 68 Total 75 41 20 136 Domain specificityAbstraction level H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 8. E.g. Reference Architecture 8 鄭顕志,”アーキテクチャ・品質エンジニアリング”, スマートエスイー, 2018 E.g. Lambda-style architecture H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 9. IoT Pattern Classification (RQ3) • IoT patterns are not recognized by different research groups – Only Operator-Controller-Module mentioned in multiple papers – Pattern authors are encouraged to carefully check existing IoT patterns • Combinations of abstraction level and domain specificity – Most of IoT design patterns are applicable to any domain. – Many IoT architecture patterns exist for specific domains. Unique nature of IoT adoption in specific domains appears at the architecture level. • Quality characteristics: Performance efficiency, usability, reliability, and maintainability are commonly addressed. 9 Any General IoT Specific IoT Total High 20 3 2 25 Middle 14 14 15 43 Low 41 24 3 68 Total 75 41 20 136 Domain specificityAbstraction level H. Washizaki, et al. “Landscape of IoT Patterns,” SERP4IoT’19 https://arxiv.org/abs/1902.09718
  • 10. Agenda • Landscape of IoT patterns • (Partial) Landscape of ML patterns • Attribute-Driven Design integrating IoT/ML patterns 10
  • 11. Landscape of ML Patterns • ML system architecture and design patterns at different abstraction levels are not well classified and studied. • RQ1. What are common issues and practices in ML system development? – We identified issues and practices aligned with ML development process. • RQ2. What are the publication trends of ML architecture and design patterns? – We identified 10 papers and 28 gray documents surveyed. • RQ3. What kind of ML architecture and design patterns are identified? – (TBD!) 11
  • 12. ML development & operation process 12 Data Cleaning Data collection Data labeling Feature Engineering Model Requirement Model Deployment Model Evaluation Model monitoring Cross cutting Model Training Trials and tribulations of developers of intelligent systems: A field study, VL/HCC 2016 The emerging role of data scientists on software development teams, ICSE 2016 Ux design innovation: Challenges for working with machine learning as a design material, CHI 2017 Human model evaluation in interactive supervised learning, CHI 2011 Professional Identity and Information Use: On Becoming a Machine Learning Developer, iConference 2019 A methodology to involve domain experts and machine learning techniques in the design of human-centered algorithms, HWID 2019 Silly lamp: Study of a relationship with engaging machine learning artefacts, CHI 2018 Software engineering for machine learning: A case study, ICSE 2019. Rules of machine learning: Best practices for ml engineering, http://martin.zinkevich.org/rules of ml/rules of ml.pdf 2017
  • 13. RQ1. Issues (excerpt) • We identified around 25 issues in 9 papers. • Model Requirement – Difficult to understand ML algorithm and its potential – Lack of Ethical Considerations • Data Collection – Difficult to understand data from third party – Difficult to understand data format • Data Cleaning – The method to preprocess data is not mentioned • Data Labeling – Strain on resources for labeling • Feature Engineering – Difficult to measure the effect of feature – Important features affect the result 13 JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
  • 14. RQ1. Issues (excerpt)(cont.) • Model Training – Ad-hoc algorithm selection based on past experience – Difficult to reuse the model for other domains or data formats • Model Evaluation – Difficult to understand the results – Frequent revisions initiated by model changes, parameter tuning, and data updates • Model Deployment – Copy pipeline and drop necessary data – Concerned with other modules • Cross-Cutting – Highly dependent on individuals – Lack of collaboration between developers and other roles 14 JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
  • 15. RQ1. Practice categories • We identified around 25 practices in 9 papers. – Some of them can be categorized into the followings: • Start with small: Practices to start with simplified issues. • Goal-Oriented: Practices to focus on a goal of the project • Data Concerns: Practices to deal with issues related to data • Separation of Concerns: Practices to identify sub issues and deal with them step-by-step • Measure: Practices to measure uncertainty in developments • Heuristic: Practices which rely on developers' experiences • Traditional Practice: Practices employed even in traditional software developments – Requirement elicitation from users, traceability management, refactoring, and testing 15 JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
  • 16. Practice categories aligned with phases 16 Practice category Model requir ement Data collec tion Data cleani ng Data labeling Feat ure engi neeri ng Model trainin g Mode l evalu ation Mode l deplo ymen t Model monitori ng Start small ○ ○ ○ ○ Goal- oriented ○ ○ Data concern ○ ○ ○ ○ ○ Separation of concerns ○ ○ ○ Measureme nt ○ ○ ○ Heuristic ○ ○ Traditional practices ○ ○ ○ JST未来社会 QAMLプロジェクト Y. Watanabe, H. Washizakiほか調査
  • 17. RQ2. Publication trends of ML architecture and design patterns • 10 papers by using Engineering Village – Developing Machine Learning Products Better and Faster at Startups – Hidden technical debt in machine learning systems – Applied Machine Learning at Facebook: A Datacenter Infrastructure Perspective – Continuous Integration of Machine Learning Models with ease.ml/ci: Towards a Rigorous Yet Practical Treatment – Uncertainty in machine learning applications: A practice-driven classification of uncertainty – Software Architecture of a Learning Apprentice System in Medical Billing – ClearTK 2.0: Design patterns for machine learning in UIMA – Solution patterns for machine learning – A Survey on Security Threats and Defensive Techniques of Machine Learning: A Data Driven View Learning – Machine Learning System Architectural Pattern for Improving Operational Stability 17
  • 18. RQ2. Publication trends of ML architecture and design patterns (cont.) • 28 gray documents by using Google • Collection of patterns – Design Patterns for Deep Learning – Solution Patterns for Machine Learning – Design Patterns for Machine Learning in Production – Patterns (and Anti-Patterns) for Developing Machine Learning Systems – Design Patterns for Deep Learning Architectures – Exploring Development Patterns in Data Science • Individual pattern – The MVC for Machine Learning: Data-Model-Learner (DML) – Closed-Loop Intelligence – Daisy Architecture – Event-Driven Architecture – Data Lake Architecture 18
  • 19. E.g. Multi-Layer architecture pattern 19Haruki Yokoyama, Machine Learning System Architectural Pattern for Improving Operational Stability, ICSA-C, 2019 https://ieeexplore.ieee.org/document/8712157
  • 20. Summary • Landscape of IoT patterns – IoT systems and software are often designed via conventional architecture and design patterns. – IoT patterns may not be recognized by different research groups. – Unique nature of IoT adoption in specific domains appears at the architecture level. • (Partial) Landscape of ML patterns – We identified issues and practices aligned with ML development process. – We identified 10 papers and 28 gray documents surveyed. 20