SlideShare a Scribd company logo
1 of 13
Download to read offline
1
MLSE夏合宿2020
パターン(ランゲージ)による
Know-Why/What/How
の言語化・文書化と発展
鷲崎 弘宜
早稲田大学ほか
2020年 7月3日
v20200703
2
https://en.wikipedia.org/wiki/Coffeehouse#/media/File:Caf%C3%A9_de_Flore.jpg
https://ja.wikipedia.org/wiki/%E3%82%AB%E3%83%95%E3%82%A7#/media/%E3%83%95%E3%82
%A1%E3%82%A4%E3%83%AB:Former_Foreign_Settlement_of_Kobe_Hyogo_Japan_A55_03s3.jpg
3
建築におけるパターンの構成と例
◼ パターンのタイトル、別名
◼ 絵や写真
◼ 他のパターンとの関係、適
用条件
◼ 問題提起と検討
◼ 解決法の説明とその図解
名前: 路上カフェ
問題:
忙しい都会において、衆目の中で合法的に腰
を下ろし、移りゆく世界をノンビリと眺められる
場所がほしい。
解決:
各近隣にカフェが開かれるよう促すこと。カフェ
にはいくつかの部屋を設け、にぎやかな歩行
路に向けて解放し、座ってコーヒーなどの飲み
物を取りながら、移りゆく世界を眺められるよう
な親しみのある場所に仕立てること。カフェの
前面は、室内からテーブル・セットが街路にそ
のまま張り出すような作りとすること。
“それぞれのパターンは、我々の身の回
りで何回もおきる問題、および、それぞれ
の問題に対する解法ポイントを記述して
いる。我々は、これらの解法を何回でも
使うことができる。同じ問題に対する同じ
解法を、何度も何度も最初から考え直さ
ずにすむというわけだ” -- C. Alexander
[Alexander77] C. Alexander他著, 平田翰那訳, “パタン・ラ
ンゲージ”, 鹿島出版, 1977
Alexander, Christopher, et al. A Pattern Language.
Oxford University Press, 1977.
4
建築におけるパターンランゲージ
◼ 粒度をまたいだ繋がり
◼ 街の中心部には 活動の拠点 として 小さな広
場 を設けよう。その広場には、訪問者や近隣
の人々が気軽に集い落ち着けるように、いくつ
かの 路上のカフェ が集まってひらかれるよう
に奨励しよう。それぞれのカフェは、オープン
エアで楽しめるように 街路への開口 を持たせ
られるとよい ・・・
◼ 同一粒度における繋がり
◼ 快適に暮らせるためには 屋内の陽光 は不可
欠なので、 南向きの屋外 に庭をおきたいな。
さらに、部屋の陽光をたくさんとって快適にす
るために どの部屋も二面採光 にしたい。そう
そう、お客さんにも来てほしいから、 街路への
開口 をもうけて、玄関から寝室までうまく 親
密度の変化 をもたせたいね ・・・
玄関
居間
寝室
庭
建物 口
街
路
街路
広場
カフェ
5
パターンランゲージとソフトウェア
◼ ソフトウェアコミュニティが学んだこと
◼ 文脈(Know-Why)、問題(What)、解決(How)の言語化・文書化形式
◼ 抽象的なビジョンと、具体的なライブラリ・指示の間の抽象度
◼ 対話の手段、問題・解決の再利用、非機能要求満足とアーキテクチャ一貫
◼ 特にソフトウェア設計、開発プロセス・組織構造
◼ ソフトウェアコミュニティが(あまり)学ばなかったこと [羽生田]
◼ 利害関係者間の合意形成のための共通言語
◼ 利用者参加型の仕組み、生成的
成功事例
文脈: こういうときに
問題: こうしたかったら・こう困っていたら
フォース: こういうことを考慮して
解決: こうしなさい
結果: こうなるでしょう
新たな状況
解決 解決
抽象化 具象化
類似
抽象化
羽生田栄一 監修, パターンワーキンググループ著, "ソフトウェアパターン入門~基礎から応用へ~", ソフトリサーチセンター, 2005.
機械学習工学とパターン
(ランゲージ)への期待
◼ 抽象と具象をつなぐ道具としての期待
◼ 文脈(Know-Why)、問題(What)、解決
(How)の言語化
◼ 問題・解決の再利用
◼ 非機能要求満足とアーキテクチャの一貫性
◼ 最初は設計、さらには要求やプロセスへ
6
ビジョン
事例
フレーム
ワーク
作業
指示
?
?
◼ 様々な関係者間の共通言語としての期待
◼ ソフトウェアエンジニア、機械学習・データエン
ジニア、ドメインエキスパート・・・
機械学習応用の設計パターン文献
7
0
1
2
3
4
5
6
7
8
9
10
2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
Scholarly
Gray
◼ Engineering VillageおよびGoogle検索エンジンによる検索
◼ 学術論文と灰色文献のいずれも概ね増加傾向
Hironori Washizaki, Hiromu Uchida, Foutse Khomh and Yann-Gael Gueheneuc, “Studying Software Engineering Patterns
for Designing Machine Learning Systems,” The 10th International Workshop on Empirical Software Engineering in
Practice (IWESEP 2019)
例: Data Lake
データレイク
◼ 問題:どのような分析を行う
のか、どのようなフレームワ
ークを用いて分析を行うの
か、見通しがつきにくい。
◼ 解決:構造化されたデータ
から非構造化されたデータ
まで、可能な限り「生」の状
態で一元化されたリポジトリ
に保存する。異なるフレーム
ワークを用いた並列分析を
可能にする。
8
非構造化デ
ータ
構造化データ
データ
ソース
ML framework
MLフレーム
ワーク ML framework
他のデータ解
析
挿入のみのデータストレージ
変換ツール
データウェア
ハウス
Hironori Washizaki, Foutse Khomh, Yann-Gael Gueheneuc, “Software Engineering Patterns for Machine Learning
Applications (SEP4MLA),” 9th Asian Conference on Pattern Languages of Programs (AsianPLoP 2020)
例: Distinguish Business Logic from ML Models
MLモデルからのビジネスロジック分離
◼ 問題:推論エンジンにおける変化が他に大きく影響してしまう。
◼ 解決:ビジネスロジックと推論エンジンを分離し、ビジネスロジックとML固
有のデータフローを疎結合する。
9
Haruki Yokoyama, Machine Learning System Architectural Pattern for Improving Operational Stability, ICSA-C, 2019
Hironori Washizaki, Foutse Khomh, Yann-Gael Gueheneuc, “Software Engineering Patterns for Machine Learning
Applications (SEP4MLA),” 9th Asian Conference on Pattern Languages of Programs (AsianPLoP 2020)
データレイヤロジックレイヤプレゼンテーションレイ
ヤ
ユーザイン
タフェース
データベー
ス
データ収集
データレイ
ク
Business
Logic
データ処理
推論エンジ
ン
実世界
ビジネスロジ
ック固有
ML固有
Architectural Layers
Deployed as ML System
Business Logic Data Flow
ML Runtime Data Flow
ML Development Data Flow
Legend
パターン間の関係からランゲージへ
10
Data Lake
Distinguish Business
Logic from ML Models
Uses
Separation of Concerns
and Modularization of
ML Components
Handshake
Test the infrastructure independently
from the machine learning
Reuse Code between Training
Pipeline and Serving Pipeline
Data-Algorithm-
Serving-Evaluator
Closed-Loop Intelligence
Canary Model
Daisy Architecture
Event-driven ML Microservices
Microservice Architecture
Data Lake
Kappa Architecture
Lambda Architecture
Parameter-Server
Abstraction
Decouple Training Pipeline
from Production Pipeline
ML Versioning pattern
Distinguish Business
Logic from ML
Models
Gateway Routing
Architecture
Undeclared
Consumers
Abstraction Debt
Pipeline Jungles
Glue Code
Big Ass Script
Architecture
Design Holistically about Data
Collection and Feature Extraction
Federated Learning
Secure Aggregation
Architecture
pattern
Design
pattern
Wrap Black-Box Packages
into Common APIs
Isolate and Validate
Output of Model
パターンは身近に新たに見いだせる 11
通勤時間は誰にも
邪魔されないから、
好きな勉強ができる。
ちょっとした時間に
読める論文をいつも
持ち歩く。
空き時間に
スマホで・・・
夜はコミュニティの
集まりに出て・・・
早起きして・・・
社内で勉強会
を企画・・・
1,5,10年後にこ
うなりたいという
目標を持つ。
行き帰りの積み重ね
・文脈: 業務で忙しくしている。知
識の範囲が狭く広げたいと思って
いる。
・問題: 忙しく対象外の学習に時
間を割きにくい。
・フォース:余分な時間は取れな
いが、行き帰りのちょっとした時
間はある。
・解決: 通勤のちょっとした時間に
本を読むなどして知識を無理なく
積み重ねる。
・結果: 忙しい中でも知識の範囲
が無理なく広がっている。
通勤の
一工夫
みんなで成長
本を持ち歩く
・文脈
・問題
・解決
・結果
電子書籍を持ち歩く
・文脈
・問題
・解決
・結果
機械学習工学こそ、パターン(ランゲージ)が必要!
◼ JST未来社会 eAIプロジェクトでMLパターン調査中
◼ 将来的にプロセス組み入れ、新パターンの特定、言語化へ
◼ 参考: PLoP パターンランゲージの国際会議
◼ Hillside Group 主催 http://www.hillside.net/
◼ アジア地域版 AsianPLoP http://asianplop.org/
12
• Hironori Washizaki, Hiromu Uchida, Foutse Khomh and Yann-Gael Gueheneuc, “Studying Software Engineering
Patterns for Designing Machine Learning Systems,” The 10th International Workshop on Empirical Software
Engineering in Practice (IWESEP 2019)
• Hironori Washizaki, Foutse Khomh, Yann-Gael Gueheneuc, “Software Engineering Patterns for Machine Learning
Applications (SEP4MLA),” 9th Asian Conference on Pattern Languages of Programs (AsianPLoP 2020)
• 鷲崎 弘宜, 名取 直毅, 竹内 広宜, 奥田 聡, 本田 澄, 土肥 拓生, 内平 直志, “機械学習応用システムのアーキテクチャ・デ
ザインパターンの体系化に向けて”, ポスター, 第3回機械学習工学研究会(MLSE夏合宿2020)
7月13日セミナー
「IoT・機械学習応用ソフトウェアの設計とパターン」
http://smartse.jp
13
参考: より深めるために
◼ パターンの原典をあたる
◼ C. Alexander他著, 平田翰那訳, “パタン・ランゲージ”, 鹿島出版,
1977
◼ ソフトウェアパターンの広がり全体を掴む
◼ 深澤監修, 鷲崎, 丸山, 山本, 久保, “ソフトウェアパターン”, 近代科
学社, 2007.
◼ 羽生田栄一 監修, パターンワーキンググループ著, "ソフトウェアパ
ターン入門~基礎から応用へ~", ソフトリサーチセンター, 2005.
◼ ソフトウェアパターンとパターンランゲージの最先端を知る
◼ 鷲崎, 江渡, 吉岡, 位野木, 本橋, 羽生田, 懸田, 井庭, “ソフトウェア
パターン - 時を超えるソフトウェアの道", 情報処理, 情報処理学会,
Vol.52, No.9, 2011.

More Related Content

What's hot

世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
オーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiAオーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiAOre Product
 
負荷試験ツールlocustを使おう
負荷試験ツールlocustを使おう負荷試験ツールlocustを使おう
負荷試験ツールlocustを使おうiRidge, Inc.
 
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】MOCKS | Yuta Morishige
 
マインドフルネスと人工知能
マインドフルネスと人工知能マインドフルネスと人工知能
マインドフルネスと人工知能Youichiro Miyake
 
見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版MOCKS | Yuta Morishige
 
ユーザーインタビューするときは、どうやらゾンビのおでましさ
ユーザーインタビューするときは、どうやらゾンビのおでましさユーザーインタビューするときは、どうやらゾンビのおでましさ
ユーザーインタビューするときは、どうやらゾンビのおでましさYoshiki Hayama
 
エンジニアという仕事を楽しみ続けるためのキャリア戦略
エンジニアという仕事を楽しみ続けるためのキャリア戦略エンジニアという仕事を楽しみ続けるためのキャリア戦略
エンジニアという仕事を楽しみ続けるためのキャリア戦略Shuichi Tsutsumi
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門増田 亨
 
魅せるPowerPointビジネスプレゼン【実践編】 
魅せるPowerPointビジネスプレゼン【実践編】 魅せるPowerPointビジネスプレゼン【実践編】 
魅せるPowerPointビジネスプレゼン【実践編】 schoowebcampus
 
まじめに!できる!LT
まじめに!できる!LT まじめに!できる!LT
まじめに!できる!LT Akabane Hiroyuki
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)Yoshitaka Kawashima
 
プレゼンの技術
プレゼンの技術プレゼンの技術
プレゼンの技術心 谷本
 
Linked Open Data(LOD)の基本的な使い方
Linked Open Data(LOD)の基本的な使い方Linked Open Data(LOD)の基本的な使い方
Linked Open Data(LOD)の基本的な使い方Kouji Kozaki
 
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達Yusuke Wada
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴Takuto Wada
 
リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方Recruit Lifestyle Co., Ltd.
 
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門泰 増田
 
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019Tokoroten Nakayama
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugItsuki Kuroda
 

What's hot (20)

世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
オーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiAオーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiA
 
負荷試験ツールlocustを使おう
負荷試験ツールlocustを使おう負荷試験ツールlocustを使おう
負荷試験ツールlocustを使おう
 
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
 
マインドフルネスと人工知能
マインドフルネスと人工知能マインドフルネスと人工知能
マインドフルネスと人工知能
 
見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版
 
ユーザーインタビューするときは、どうやらゾンビのおでましさ
ユーザーインタビューするときは、どうやらゾンビのおでましさユーザーインタビューするときは、どうやらゾンビのおでましさ
ユーザーインタビューするときは、どうやらゾンビのおでましさ
 
エンジニアという仕事を楽しみ続けるためのキャリア戦略
エンジニアという仕事を楽しみ続けるためのキャリア戦略エンジニアという仕事を楽しみ続けるためのキャリア戦略
エンジニアという仕事を楽しみ続けるためのキャリア戦略
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
 
魅せるPowerPointビジネスプレゼン【実践編】 
魅せるPowerPointビジネスプレゼン【実践編】 魅せるPowerPointビジネスプレゼン【実践編】 
魅せるPowerPointビジネスプレゼン【実践編】 
 
まじめに!できる!LT
まじめに!できる!LT まじめに!できる!LT
まじめに!できる!LT
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
 
プレゼンの技術
プレゼンの技術プレゼンの技術
プレゼンの技術
 
Linked Open Data(LOD)の基本的な使い方
Linked Open Data(LOD)の基本的な使い方Linked Open Data(LOD)の基本的な使い方
Linked Open Data(LOD)の基本的な使い方
 
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴SQLアンチパターン - 開発者を待ち受ける25の落とし穴
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
 
リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方リクルートライフスタイル流!分析基盤との賢い付き合い方
リクルートライフスタイル流!分析基盤との賢い付き合い方
 
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
 
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
 

Similar to パターン(ランゲージ)によるKnow Why/What/How の言語化・文書化と発展, MLSE夏合宿

機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観Hironori Washizaki
 
機械学習システムの33のアーキテクチャパターンおよびデザインパターン
機械学習システムの33のアーキテクチャパターンおよびデザインパターン機械学習システムの33のアーキテクチャパターンおよびデザインパターン
機械学習システムの33のアーキテクチャパターンおよびデザインパターンHironori Washizaki
 
機械学習アーキテクチャ・デザインパターン
機械学習アーキテクチャ・デザインパターン機械学習アーキテクチャ・デザインパターン
機械学習アーキテクチャ・デザインパターンHironori Washizaki
 
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))HironoriTAKEUCHI1
 
コンピュータの整列処理で正解との距離は単調に減少するか?
コンピュータの整列処理で正解との距離は単調に減少するか?コンピュータの整列処理で正解との距離は単調に減少するか?
コンピュータの整列処理で正解との距離は単調に減少するか?yamahige
 
パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度Hironori Washizaki
 
新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて
新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて
新しいソフトウェアエンジニアリングのためのパターンランゲージに向けてHironori Washizaki
 
スマートエスイーセミナー:機外学習応用システムパターンの例
スマートエスイーセミナー:機外学習応用システムパターンの例スマートエスイーセミナー:機外学習応用システムパターンの例
スマートエスイーセミナー:機外学習応用システムパターンの例HironoriTAKEUCHI1
 
クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作
クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作
クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作yamahige
 
機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design Patterns機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design PatternsHironori Washizaki
 
Shared Questionnaire System Development Project
Shared Questionnaire System Development ProjectShared Questionnaire System Development Project
Shared Questionnaire System Development Projecthiroya
 
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平Preferred Networks
 
基礎演習V 河野ゼミ紹介20161025
基礎演習V 河野ゼミ紹介20161025基礎演習V 河野ゼミ紹介20161025
基礎演習V 河野ゼミ紹介20161025義広 河野
 
深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについてMasahiro Suzuki
 
広島画像情報学セミナ 2011.9.16
広島画像情報学セミナ 2011.9.16広島画像情報学セミナ 2011.9.16
広島画像情報学セミナ 2011.9.16Akisato Kimura
 
機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクルHironori Washizaki
 
Feature Store in DRIVE CHART
Feature Store in DRIVE CHARTFeature Store in DRIVE CHART
Feature Store in DRIVE CHARTemakryo
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供Masayuki Ozawa
 
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発Tomoharu ASAMI
 
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編Daiyu Hatakeyama
 

Similar to パターン(ランゲージ)によるKnow Why/What/How の言語化・文書化と発展, MLSE夏合宿 (20)

機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観
 
機械学習システムの33のアーキテクチャパターンおよびデザインパターン
機械学習システムの33のアーキテクチャパターンおよびデザインパターン機械学習システムの33のアーキテクチャパターンおよびデザインパターン
機械学習システムの33のアーキテクチャパターンおよびデザインパターン
 
機械学習アーキテクチャ・デザインパターン
機械学習アーキテクチャ・デザインパターン機械学習アーキテクチャ・デザインパターン
機械学習アーキテクチャ・デザインパターン
 
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
 
コンピュータの整列処理で正解との距離は単調に減少するか?
コンピュータの整列処理で正解との距離は単調に減少するか?コンピュータの整列処理で正解との距離は単調に減少するか?
コンピュータの整列処理で正解との距離は単調に減少するか?
 
パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度パターンのつながりとAI活用成熟度
パターンのつながりとAI活用成熟度
 
新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて
新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて
新しいソフトウェアエンジニアリングのためのパターンランゲージに向けて
 
スマートエスイーセミナー:機外学習応用システムパターンの例
スマートエスイーセミナー:機外学習応用システムパターンの例スマートエスイーセミナー:機外学習応用システムパターンの例
スマートエスイーセミナー:機外学習応用システムパターンの例
 
クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作
クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作
クラウドコンピューティング時代のタブレットコンピューター向けマトリックス型ワードプロセッシングシステムの試作
 
機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design Patterns機械学習デザインパターン Machine Learning Design Patterns
機械学習デザインパターン Machine Learning Design Patterns
 
Shared Questionnaire System Development Project
Shared Questionnaire System Development ProjectShared Questionnaire System Development Project
Shared Questionnaire System Development Project
 
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
Session4:「先進ビッグデータ応用を支える機械学習に求められる新技術」/比戸将平
 
基礎演習V 河野ゼミ紹介20161025
基礎演習V 河野ゼミ紹介20161025基礎演習V 河野ゼミ紹介20161025
基礎演習V 河野ゼミ紹介20161025
 
深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル, 深層生成モデルライブラリPixyzについて
 
広島画像情報学セミナ 2011.9.16
広島画像情報学セミナ 2011.9.16広島画像情報学セミナ 2011.9.16
広島画像情報学セミナ 2011.9.16
 
機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル機械学習デザインパターンの必要性と機械学習ライフサイクル
機械学習デザインパターンの必要性と機械学習ライフサイクル
 
Feature Store in DRIVE CHART
Feature Store in DRIVE CHARTFeature Store in DRIVE CHART
Feature Store in DRIVE CHART
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供
 
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
 
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
 

More from Hironori Washizaki

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
 
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
 
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
 
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
 
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
 
デジタルトランスフォーメーション(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
 
データ表現のパターン
データ表現のパターンデータ表現のパターン
データ表現のパターンHironori Washizaki
 
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)Hironori Washizaki
 
Software Engineering Patterns for Machine Learning Applications
Software Engineering Patterns for Machine Learning ApplicationsSoftware Engineering Patterns for Machine Learning Applications
Software Engineering Patterns for Machine Learning ApplicationsHironori Washizaki
 
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組みHironori Washizaki
 

More from Hironori Washizaki (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
 
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回全国大会
 
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
 
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版を通じた開発アップデート
 
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...
 
デジタルトランスフォーメーション(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の推進において企業内に求められる人材やデジタル人材の育て方
 
対応性のある運用のパターン
対応性のある運用のパターン対応性のある運用のパターン
対応性のある運用のパターン
 
モデル訓練のパターン
モデル訓練のパターンモデル訓練のパターン
モデル訓練のパターン
 
データ表現のパターン
データ表現のパターンデータ表現のパターン
データ表現のパターン
 
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
青山幹雄先生を偲んで(開拓、理論、実践、コミュニティ&国際)
 
Software Engineering Patterns for Machine Learning Applications
Software Engineering Patterns for Machine Learning ApplicationsSoftware Engineering Patterns for Machine Learning Applications
Software Engineering Patterns for Machine Learning Applications
 
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
機械学習デザインパターンおよび機械学習システムの品質保証の取り組み
 

パターン(ランゲージ)によるKnow Why/What/How の言語化・文書化と発展, MLSE夏合宿

  • 3. 3 建築におけるパターンの構成と例 ◼ パターンのタイトル、別名 ◼ 絵や写真 ◼ 他のパターンとの関係、適 用条件 ◼ 問題提起と検討 ◼ 解決法の説明とその図解 名前: 路上カフェ 問題: 忙しい都会において、衆目の中で合法的に腰 を下ろし、移りゆく世界をノンビリと眺められる 場所がほしい。 解決: 各近隣にカフェが開かれるよう促すこと。カフェ にはいくつかの部屋を設け、にぎやかな歩行 路に向けて解放し、座ってコーヒーなどの飲み 物を取りながら、移りゆく世界を眺められるよう な親しみのある場所に仕立てること。カフェの 前面は、室内からテーブル・セットが街路にそ のまま張り出すような作りとすること。 “それぞれのパターンは、我々の身の回 りで何回もおきる問題、および、それぞれ の問題に対する解法ポイントを記述して いる。我々は、これらの解法を何回でも 使うことができる。同じ問題に対する同じ 解法を、何度も何度も最初から考え直さ ずにすむというわけだ” -- C. Alexander [Alexander77] C. Alexander他著, 平田翰那訳, “パタン・ラ ンゲージ”, 鹿島出版, 1977 Alexander, Christopher, et al. A Pattern Language. Oxford University Press, 1977.
  • 4. 4 建築におけるパターンランゲージ ◼ 粒度をまたいだ繋がり ◼ 街の中心部には 活動の拠点 として 小さな広 場 を設けよう。その広場には、訪問者や近隣 の人々が気軽に集い落ち着けるように、いくつ かの 路上のカフェ が集まってひらかれるよう に奨励しよう。それぞれのカフェは、オープン エアで楽しめるように 街路への開口 を持たせ られるとよい ・・・ ◼ 同一粒度における繋がり ◼ 快適に暮らせるためには 屋内の陽光 は不可 欠なので、 南向きの屋外 に庭をおきたいな。 さらに、部屋の陽光をたくさんとって快適にす るために どの部屋も二面採光 にしたい。そう そう、お客さんにも来てほしいから、 街路への 開口 をもうけて、玄関から寝室までうまく 親 密度の変化 をもたせたいね ・・・ 玄関 居間 寝室 庭 建物 口 街 路 街路 広場 カフェ
  • 5. 5 パターンランゲージとソフトウェア ◼ ソフトウェアコミュニティが学んだこと ◼ 文脈(Know-Why)、問題(What)、解決(How)の言語化・文書化形式 ◼ 抽象的なビジョンと、具体的なライブラリ・指示の間の抽象度 ◼ 対話の手段、問題・解決の再利用、非機能要求満足とアーキテクチャ一貫 ◼ 特にソフトウェア設計、開発プロセス・組織構造 ◼ ソフトウェアコミュニティが(あまり)学ばなかったこと [羽生田] ◼ 利害関係者間の合意形成のための共通言語 ◼ 利用者参加型の仕組み、生成的 成功事例 文脈: こういうときに 問題: こうしたかったら・こう困っていたら フォース: こういうことを考慮して 解決: こうしなさい 結果: こうなるでしょう 新たな状況 解決 解決 抽象化 具象化 類似 抽象化 羽生田栄一 監修, パターンワーキンググループ著, "ソフトウェアパターン入門~基礎から応用へ~", ソフトリサーチセンター, 2005.
  • 6. 機械学習工学とパターン (ランゲージ)への期待 ◼ 抽象と具象をつなぐ道具としての期待 ◼ 文脈(Know-Why)、問題(What)、解決 (How)の言語化 ◼ 問題・解決の再利用 ◼ 非機能要求満足とアーキテクチャの一貫性 ◼ 最初は設計、さらには要求やプロセスへ 6 ビジョン 事例 フレーム ワーク 作業 指示 ? ? ◼ 様々な関係者間の共通言語としての期待 ◼ ソフトウェアエンジニア、機械学習・データエン ジニア、ドメインエキスパート・・・
  • 7. 機械学習応用の設計パターン文献 7 0 1 2 3 4 5 6 7 8 9 10 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 Scholarly Gray ◼ Engineering VillageおよびGoogle検索エンジンによる検索 ◼ 学術論文と灰色文献のいずれも概ね増加傾向 Hironori Washizaki, Hiromu Uchida, Foutse Khomh and Yann-Gael Gueheneuc, “Studying Software Engineering Patterns for Designing Machine Learning Systems,” The 10th International Workshop on Empirical Software Engineering in Practice (IWESEP 2019)
  • 8. 例: Data Lake データレイク ◼ 問題:どのような分析を行う のか、どのようなフレームワ ークを用いて分析を行うの か、見通しがつきにくい。 ◼ 解決:構造化されたデータ から非構造化されたデータ まで、可能な限り「生」の状 態で一元化されたリポジトリ に保存する。異なるフレーム ワークを用いた並列分析を 可能にする。 8 非構造化デ ータ 構造化データ データ ソース ML framework MLフレーム ワーク ML framework 他のデータ解 析 挿入のみのデータストレージ 変換ツール データウェア ハウス Hironori Washizaki, Foutse Khomh, Yann-Gael Gueheneuc, “Software Engineering Patterns for Machine Learning Applications (SEP4MLA),” 9th Asian Conference on Pattern Languages of Programs (AsianPLoP 2020)
  • 9. 例: Distinguish Business Logic from ML Models MLモデルからのビジネスロジック分離 ◼ 問題:推論エンジンにおける変化が他に大きく影響してしまう。 ◼ 解決:ビジネスロジックと推論エンジンを分離し、ビジネスロジックとML固 有のデータフローを疎結合する。 9 Haruki Yokoyama, Machine Learning System Architectural Pattern for Improving Operational Stability, ICSA-C, 2019 Hironori Washizaki, Foutse Khomh, Yann-Gael Gueheneuc, “Software Engineering Patterns for Machine Learning Applications (SEP4MLA),” 9th Asian Conference on Pattern Languages of Programs (AsianPLoP 2020) データレイヤロジックレイヤプレゼンテーションレイ ヤ ユーザイン タフェース データベー ス データ収集 データレイ ク Business Logic データ処理 推論エンジ ン 実世界 ビジネスロジ ック固有 ML固有 Architectural Layers Deployed as ML System Business Logic Data Flow ML Runtime Data Flow ML Development Data Flow Legend
  • 10. パターン間の関係からランゲージへ 10 Data Lake Distinguish Business Logic from ML Models Uses Separation of Concerns and Modularization of ML Components Handshake Test the infrastructure independently from the machine learning Reuse Code between Training Pipeline and Serving Pipeline Data-Algorithm- Serving-Evaluator Closed-Loop Intelligence Canary Model Daisy Architecture Event-driven ML Microservices Microservice Architecture Data Lake Kappa Architecture Lambda Architecture Parameter-Server Abstraction Decouple Training Pipeline from Production Pipeline ML Versioning pattern Distinguish Business Logic from ML Models Gateway Routing Architecture Undeclared Consumers Abstraction Debt Pipeline Jungles Glue Code Big Ass Script Architecture Design Holistically about Data Collection and Feature Extraction Federated Learning Secure Aggregation Architecture pattern Design pattern Wrap Black-Box Packages into Common APIs Isolate and Validate Output of Model
  • 11. パターンは身近に新たに見いだせる 11 通勤時間は誰にも 邪魔されないから、 好きな勉強ができる。 ちょっとした時間に 読める論文をいつも 持ち歩く。 空き時間に スマホで・・・ 夜はコミュニティの 集まりに出て・・・ 早起きして・・・ 社内で勉強会 を企画・・・ 1,5,10年後にこ うなりたいという 目標を持つ。 行き帰りの積み重ね ・文脈: 業務で忙しくしている。知 識の範囲が狭く広げたいと思って いる。 ・問題: 忙しく対象外の学習に時 間を割きにくい。 ・フォース:余分な時間は取れな いが、行き帰りのちょっとした時 間はある。 ・解決: 通勤のちょっとした時間に 本を読むなどして知識を無理なく 積み重ねる。 ・結果: 忙しい中でも知識の範囲 が無理なく広がっている。 通勤の 一工夫 みんなで成長 本を持ち歩く ・文脈 ・問題 ・解決 ・結果 電子書籍を持ち歩く ・文脈 ・問題 ・解決 ・結果
  • 12. 機械学習工学こそ、パターン(ランゲージ)が必要! ◼ JST未来社会 eAIプロジェクトでMLパターン調査中 ◼ 将来的にプロセス組み入れ、新パターンの特定、言語化へ ◼ 参考: PLoP パターンランゲージの国際会議 ◼ Hillside Group 主催 http://www.hillside.net/ ◼ アジア地域版 AsianPLoP http://asianplop.org/ 12 • Hironori Washizaki, Hiromu Uchida, Foutse Khomh and Yann-Gael Gueheneuc, “Studying Software Engineering Patterns for Designing Machine Learning Systems,” The 10th International Workshop on Empirical Software Engineering in Practice (IWESEP 2019) • Hironori Washizaki, Foutse Khomh, Yann-Gael Gueheneuc, “Software Engineering Patterns for Machine Learning Applications (SEP4MLA),” 9th Asian Conference on Pattern Languages of Programs (AsianPLoP 2020) • 鷲崎 弘宜, 名取 直毅, 竹内 広宜, 奥田 聡, 本田 澄, 土肥 拓生, 内平 直志, “機械学習応用システムのアーキテクチャ・デ ザインパターンの体系化に向けて”, ポスター, 第3回機械学習工学研究会(MLSE夏合宿2020) 7月13日セミナー 「IoT・機械学習応用ソフトウェアの設計とパターン」 http://smartse.jp
  • 13. 13 参考: より深めるために ◼ パターンの原典をあたる ◼ C. Alexander他著, 平田翰那訳, “パタン・ランゲージ”, 鹿島出版, 1977 ◼ ソフトウェアパターンの広がり全体を掴む ◼ 深澤監修, 鷲崎, 丸山, 山本, 久保, “ソフトウェアパターン”, 近代科 学社, 2007. ◼ 羽生田栄一 監修, パターンワーキンググループ著, "ソフトウェアパ ターン入門~基礎から応用へ~", ソフトリサーチセンター, 2005. ◼ ソフトウェアパターンとパターンランゲージの最先端を知る ◼ 鷲崎, 江渡, 吉岡, 位野木, 本橋, 羽生田, 懸田, 井庭, “ソフトウェア パターン - 時を超えるソフトウェアの道", 情報処理, 情報処理学会, Vol.52, No.9, 2011.