核心概念
V-모델은 ML 기반 시스템 구축 시 발생하는 학제 간 협업 문제를 해결할 수 있는 방법을 제공한다.
摘要
이 연구는 V-모델을 ML 기반 시스템 구축에 적용하는 방법을 탐색했다. 소프트웨어 회사 실무자들과의 인터뷰를 통해 다음과 같은 8가지 제안을 도출했다:
- 시스템 수준, 하위 시스템 수준, 구성 요소 수준(ML, 비ML, 데이터, 인프라)에서 요구사항을 생성하고 지속적으로 관리해야 한다.
- 시스템 수준 아키텍처 설계와 구성 요소 간 인터페이스, 책임, 대안, 예상 성능을 생성하고 지속적으로 관리해야 한다.
- ML 구성 요소의 불확실성으로 인한 위험을 적극적으로 식별하고 완화해야 한다.
- ML 구성 요소, 비ML 구성 요소, 데이터, 인프라를 별도의 구성 요소로 다루어 각각에 대한 요구사항, 설계, 검증을 수행해야 한다.
- 시스템, 하위 시스템, 구성 요소 수준에서 검증 및 확인(V&V)을 수행하고 책임 소유자를 지정해야 한다.
- ML 기반 시스템을 위한 소프트웨어 개발 수명 주기는 시스템-하위 시스템-구성 요소 계층 분해, 지속적인 V&V, 불확실성 관리, 역할 간 책임 경계를 따라야 한다.
- 시스템, 하위 시스템, 구성 요소 수준의 문서화를 생성하고 변경 사항을 추적해야 하며, 모든 관련 역할이 이해할 수 있는 용어를 사용해야 한다.
- V-모델은 추가적인 노력이 필요하지만, ML 기반 시스템 구축 시 겪는 협업 문제에 효과적으로 부합한다.
統計資料
ML 모델 개발에 있어 소프트웨어 엔지니어와 ML 과학자 간 코딩 표준 격차가 존재한다.
ML 모델 의존성으로 인한 데이터 파이프라인 문제와 인프라 지원 부족이 어려움을 야기한다.
오프라인 모델 평가와 온라인 테스트 간 격차로 인해 여러 차례의 A/B 테스트 반복이 필요하다.
시스템 수준 테스트의 책임 소유자가 불분명하다.
引述
"ML 과학자들은 새로운 모델을 많이 개발하고 출시한 뒤 새로운 것을 찾지만, 오래된 모델에 대해서는 관심이 없어 더 이상 유지보수하지 않습니다."
"ML 모델을 출시한 뒤 성능 지표나 비즈니스 지표에 격차가 있다는 것을 알게 되었습니다. 이를 해결하기 위해 홀드아웃 실험을 추가하거나 지속적인 모니터링 지표를 도입했습니다."