機械学習工学セミナ@モントリオール

2020年2月末より3月上旬までカナダ・モントリオール大学へ出張し、機械学習(ML)工学セミナーの受講とlaboセミナーでの講演、共同研究の打合せをしてきました。

モントリオール大学は国立で世界のフランス語圏におけるトップ大学です。その中でも、理工系のPolytechnique(工学系附属大学)は世界的に高い評価を得ている名門校です。私の受講したセミナーは、PolytechniqueがIVADOというデータサイエンス、運用研究、人工知能技術の学際的センターと共同して、初めて開催した人工知能(AI)の中でもディープラーニングなど最先端分野である機械学習(ML)工学のセミナーでした。(正式なセミナー名はSoftware Engineering for Machine Learning Apps: From Code to Production)。名称の通り、ユーザブルML、デザイン、テスト、ディープラーニングテストツール、パイプライン構築、リリース管理、コンテナなど幅広く、MLを工学的に扱える試みを講義とハンズオンで教えてくれるとてもいいセミナーでした。IVADOという団体がモントリオールの工科系と経営系と組んで本セミナーを主催しており、参加者の多くはデータサイエンティストの社会人技術者でした。ただし英語力にもMLの扱いにも難がある私には途方にくれるほど高度な内容であり、毎日様々な環境を構築して幅広い演習は隣席受講者の大変親切な支援を受けながらの受講でした。

スケジュールと講師は以下の通りです。

Preparation
Day 1 AM- SE Challenges of ML Apps (Foutse Khomh)
Day 1 AM- Designing Usable ML-based Apps (Jinghui Cheng)
Day 1 PM- Hands-on Session on Apps Design (Jinghui Cheng)
Day 1 PM- Software Design Patterns for ML-based Apps (Foutse Khomh)
Day 2 AM- Intro to Software Testing (Giuliano Antoniol)
Day 2 AM- Testing Self-learning Software Programs (Lei Ma and Foutse Khomh)
Day 2 PM- Hands-on Session on Testing DL Systems (Giuliano, Lei, Foutse, and Houssem)
Day 3 AM- Testing Stateful ML-based Software Systems (Lei Ma)
Day 3 PM- Hands-on session on Testing Stateful ML-based Software Systems (Giuliano, Lei, Foutse, and Houssem)
Day 4 AM- Deploying ML-based Software Systems (Bram Adams)
Day 4 AM- Deploying ML-based Software Systems (Marios-Eleftherios Fokaefs)
Day 4 PM- Hands-on Session on Apps Deployments (Bram Adams and Marios-Eleftherios Fokaefs)
Day 5 AM- Deploying ML Pipelines with Containers (William Benton and Sophie Watson)
Day 5 PM- Hands-on Session on Deploying ML Pipelines with Containers (William Benton and Sophie Watson)

セミナーの中で、ポイントとなる点は以下の通りです。

初日は主催者であるPolytechniquenのFoutse先生がセミナー全体についての講義とMLのデザインパターンを講義されました。MLシステムの技術的負債は通常のコードと機械学習、システムレベルでのすべてで問題を抱え、増加しており、それらの解決の方途として機械学習(ML)アプリのソフトウェア工学の挑戦がこのセミナーの趣旨であることを話されました。そして、その機械学習ソフトウェア工学として、セミナーでは各分野の専門家による、ビジネスロジックとMLモデルの区別、データ・レイク、パイプライン・ジャングルの課題に対して、それぞれ、ユーザブルAI、マイクロサービス・アーキテクチャ、機械学習テストツール、MLパイプラインの管理が紹介されました。初日は、Cheng先生によるユーザブルMLとチャットボットのハンズオンがありました。ユーザビリティの特性はチャットボットの回答内容を隣席者と抽出する演習、2日目は、アントニオ先生のテスト方法の講義とハンズオン。また、マー先生は2、3日目にディープラーニングのテスト基準と品質保証、分析の講義を自らの各種ツールを使って講義されました。4日目は、アダムス先生のAIのリリースエンジニアリング講義とハンズオン。そして、マリオス先生のVM環境でのMLアプリのデータバージョン管理システムハンズオンが実施されました。最終日はRedHatから来た、ソフィーさんとウィリアムさんの名コンビによるコンテナでのMLパイプラインの実装でした。

Polytechnique Laboセミナーと感想

セミナーの翌週はモントリオール大学のPolytechniqueで、私の講演のためのLaboセミナーを開催してくれました。私が子育てと仕事をしつつ、7年かけて学位を取得したことや少しでも両立しやすくするために15年前に社内にテレワーク制度を設立したことを自己紹介の中で話すと、なんと拍手喝采でした。とても温かい雰囲気の中で、産官学の様々な立場で取り組んできたことを何とか英語を伝えることでき、嬉しかったです。そしてこれからの大きな課題であり、機械学習システム工学について、様々な議論ができました。講演の冒頭、「下手な英語なので文法間違えたらごめんなさい。」と最初にお断りをすると、「(モントリオールの主要言語はフランス語であり)自分達も英語は第2外国語だから同じよ。」といわれました。博士課程学生は世界中から集まっており、イラン出身の教授、チュニジア出身の学生など初めてお会いする国の女性が多くいました。現在、日本で機械学習システムに携わる女性エンジニアは男性に比べて非常に少ないのですが、日本でも多くの女性MLエンジニアが活躍するようになってほしいと思います。

実は今回の出張は、新型コロナウイルスによる出入国検疫、初体験の-20度越えの寒さ、英語力の欠如と多難な中での参加でした。さらにそもそも私の専門の安全性分析からは異分野のセミナーの内容についていけるかが心配でした。しかし、ハンズオン中心のセミナーでまずは色々な事例にふれることができました。今後これらの実装技術をいかしつつ、今回のセミナーではあまり触れられなかった安全性の観点でのML研究につなげていこうと思いました。

QAMLセミナーの開催

10月9日(水)15:00から国立情報学研究所(NII)でQAMLセミナーが開催されました。

最初の講演者は英国のオープン大学でコンピューティングの講師(准教授)をされているAmel Bennaceur博士でした。講演タイトルは「Machine Learning Software is Still Software」。データからモデルを自動的に推測する方法を研究する分野である機械学習(ML)とソフトウェアエンジニアリングの相乗効果について語られました。要件エンジニアリング(RE)の観点からMLがどのように利益を得ることができるかについての研究は日本では聞く機会の少ないテーマであり、興味深いものでした。MLとSEのkeyコンセプト比較、翻訳合成の事例、コンポーネントモデルの学習、体系的でなく実践的なプロセス、コンポーネント抽出のためのオートマタ学習L*、学習ベースのメディエーター合成、明確な指示のある第一世代、例を通じた処理をする第2世代、そして、コラボレーションを通じた第3世代のSEパラダイムなどについて話されました。数々の具体的な事例を通じ、終始明るくにこやかにスピーチをされるAmel博士だからこそ、少し難易度の高い内容を英語でスピーチされたにも関わらず、とても楽しく聞くことができました。


次の講演はデンソーの桑島洋氏による研究発表でした。ISSREに採択されたBest Industry Papersという素晴らしい成果をおさめた「Adapting SQuaRE for Quality Assessment of Artificial Intelligence System」という論文についてスピーチされました。
http://2019.issre.net/node/80?fbclid=IwAR3wa7ZilfpIvHyjUF45l01zT1NLeIzvI9ORcbH-JQLHfuz9JEYLUzGZD0U

この論文では、AIシステムについてどの品質概念を評価すべきかについての分析を提示するため、 SQuaREとして知られるISO / IEC 25000シリーズに基づいて議論し、MLの独自性と欧州委員会の信頼できるAIの倫理ガイドラインにどのように適合させるかを特定しています。そしてMLの性質とAIの倫理を従来のソフトウェア品質の概念に組み込むことにより、AIシステムの品質に関する全体的な洞察を提供する内容となっています。MLの品質保証という重要なテーマのスピーチでした。


講演の最後に吉岡先生からお二人に記念のQAMLグッズも渡されました。

  

また、講演終了後はQAMLルームでたこ焼きパーティーが開催され、親睦も深める有意義なセミナーとなりました。

STAMP WS2019に参加して

金子朋子

 安全性工学の世界的権威であるMITナンシーレブソン教授が推進するSTAMPをご存じだろうか?

 STAMP (Systems-Theoretic Accident Model and Processes) とは、マサチューセッツ工科大学のNancy Leveson教授が提唱したシステム理論に基づく安全分析の考え方。STAMPに基づく分析手法は、システムの構成要素単体ではなく、それらの相互作用に着目してハザード要因を考える点に特徴がある。主な手法には、システムの開発段階の安全設計に使うSTPA(Systems-Theoretic Process Analysis)と、事故発生後に原因を分析するCAST(Causal Analysis using Systems Theory)がある。筆者は毎年、3月末に開催されるMITでSTAMPワークショップに3年連続3回目の参加をしている[1] [2]。そこでSTAMPの最近の傾向について所感を述べる。

 今回の参加者は28%増加し、416名。参加者の分野でみると多い順に航空153、防衛125、セーフティ104と続くが、例年に比べ、アカデミア・大学が87と大きく伸びているのが特徴である。これは、AIへの安全分析適用という新しいトピックが発生している影響もあるだろう。
 レブソン教授のWelcomeスピーチでは日本の第3回STAMPワークショップも300名程度の参加者があり、盛況だった旨も伝えられた。技術動向として今後の取り組みとして“System of Systems” のハザード分析、システムアーキテクチャを生成するSTPAの利用法などが提唱された。2年前にはSTPA適用中心の発表だったが、今回はCAST本格適用やSTAMP理論にもとづくMBSE、システムズエンジニアリング、AI適用に適用の方向性が進化している。昨年のWSで発行されたSTPAハンドブックの手順に統一されている点に特徴を感じた。さらにSTPAによるセキュリティ分析で多くの事例がでていた。今後はセーフティ・セキュリティ統合分析もより本格化することであろう。
 また、企業における実用化の進展を感じた。昨年、ボーイングなどで紹介された社内での取り組み紹介のコーナーが今年はさらに発展し、GM、ボーイングの他、Akamai、エンブレア航空、AAIA(Air Accident Investigation Authority)などの会社・組織が実績を披露した。また陸上輸送・航空宇宙機器分野の専門家団体であるSAE (Society of Automotive Engineers)において、STAMPの国際規格化もなされたことが発表された。
 さて、QAMLプロジェクトに属する者として、最も知りたいのは、AIへの展開。
発表の中では、Thomas氏らによる「STPA for Autonomous Automobiles」が最もAIを取り扱っていた。STPAの分析結果をヒューマンシナリオとソフトウェアシナリオに分けて作成し、コントロールストラクチャに安全モニタ/保護機構を追加して、その要求事項を抽出していることなどが特徴的であった。STPA適用により、想定以上の多くのリスクが洗い出され、プロジェクトは公道での実験をキャンセル、今後は知覚ソフトウェアの開発のみに注力するという。ちなみにAIへの本格的な適用研究はまだ始まったばかりで、2年計画でJAXAと共同研究も始まるそうである。STAMPによるAIの安全性分析はこれから本格化するところだが、今までの蓄積をもとにAIの安全性分析の実用的な技術となっていく可能性は高いと期待する。

<参考文献>
[1]金子朋子,中沢 潔,システムの相互作用に着目したこれからの安全(STAMP) ,ニューヨークだより特別号(2018年 5 月)
https://www.jetro.go.jp/ext_images/_Reports/02/2018/2e64896cc069cbd3/ny201805.pdf
[2] 金子朋子,SECセミナー「2017 STAMP Workshop参加報告」,https://www.ipa.go.jp/sec/old/users/seminar/seminar_tokyo_20170529-06.pdf