[논문 리뷰] Machine Learning Model Development from a Software Engineering Perspective: A Systematic Literature Review
이 체계적 문헌 리뷰는 소프트웨어 공학(SE) 관행이 기계 학습(ML) 모델 개발을 향상시키기 위해 ML 워크플로우를 기존의 SE 생애주기 단계와 일치시킬 수 있는지 조사한다. 데이터 처리 및 특징 공학이 가장 도전적인 단계로 규명되었으며, ML 분야에 체계적인 SE 프로세스 도입의 필요성을 강조하고, SE 방법론을 채택할 경우 모델 품질, 재사용성 및 확장성 향상이 가능하다는 점을 제안한다. 특히 대규모 AI 시스템에서 그 효과가 두드러진다.
Data scientists often develop machine learning models to solve a variety of problems in the industry and academy but not without facing several challenges in terms of Model Development. The problems regarding Machine Learning Development involves the fact that such professionals do not realize that they usually perform ad-hoc practices that could be improved by the adoption of activities presented in the Software Engineering Development Lifecycle. Of course, since machine learning systems are different from traditional Software systems, some differences in their respective development processes are to be expected. In this context, this paper is an effort to investigate the challenges and practices that emerge during the development of ML models from the software engineering perspective by focusing on understanding how software developers could benefit from applying or adapting the traditional software engineering process to the Machine Learning workflow.
연구 동기 및 목표
- 기존의 소프트웨어 공학(SE) 생애주기 관행이 기계 학습(ML) 모델 개발에 어떻게 적응될 수 있는지 조사하기.
- 특히 데이터 집약적이고 반복적인 워크플로우에서 소프트웨어 공학 관점에서 ML 모델 개발의 주요 과제를 규명하기.
- 요구사항 공학, 버전 관리, 테스팅, 모듈화와 같은 SE 관행이 ML 시스템에 얼마나 적용될 수 있는지 분석하기.
- SE 원칙을 기준으로 기존의 ML 워크플로우의 성숙도와 적용 가능성을 평가하고, 현재 연구 및 실무에서의 격차를 규명하기.
- 연구자와 실무자에게 ML 개발에 SE 방법론을 통합함으로써 신뢰성, 유지보수성 및 확장성 향상을 위한 실질적인 통찰을 제공하기.
제안 방법
- PRISMA 지침을 따르는 체계적 문헌 리뷰(SLR)를 수행하여 ML 개발에서의 SE 관행과 관련된 연구를 식별하고 분석하였다.
- 학술 데이터베이스를 대상으로 소프트웨어 공학, 기계 학습, 개발 생애주기 단계와 관련된 关련 키워드를 사용해 포괄적인 검색 전략을 수립하였다.
- 명시적인 SE 프로세스 통합 또는 분석이 포함된 ML 모델 개발에 중점을 둔 연구를 선별하기 위해 포함 및 배제 기준을 적용하였다.
- 식별된 연구를 표준 SE 생애주기 단계(예: 요구사항, 설계, 구현, 테스팅, 배포)에 매핑하여 일치도 및 격차를 평가하였다.
- 주제 분석을 통해 도전 과제, 적용된 관행, ML 워크플로우의 성숙도 수준을 종합하였다.
- 이전 연구(예: Amershi et al., Correia et al.)와의 교차 참조를 통해 결과를 검증하였으며, 표본 편향 및 제한된 정량적 검증 등의 타당성 위협을 평가하였다.
실험 결과
연구 질문
- RQ1기계 학습 모델 개발 워크플로우에서 기존의 소프트웨어 공학 생애주기 단계가 어느 정도 적용되거나 적응되고 있는가?
- RQ2특히 데이터 처리 및 특징 공학에서 소프트웨어 공학 관점에서 기계 학습 모델 개발의 가장 중요한 과제는 무엇인가?
- RQ3모듈성, 재사용성, 품질 보증을 고려할 때 기존의 ML 워크플로우가 기존의 SE 프로세스에 비해 구조성, 성숙도 측면에서 어떻게 비교되는가?
- RQ4SE 관행이 ML 개발에 통합되는 데 있어 주요 격차는 무엇이며, 이를 어떻게 보완하여 모델의 신뢰성과 확장성을 향상시킬 수 있는가?
- RQ5SE 원칙에 부합하는 통합 또는 알고리즘/데이터 기반의 특정 ML 워크플로우가 필요한가, 아니면 일반적인 SE 기반 프레임워크로 충분한가?
주요 결과
- 데이터 처리 및 특징 공학은 항상 ML 모델 개발에서 가장 도전적인 단계로 규명되었으며, 모델 훈련 및 평가를 뛰어넘는 난이도를 보였다.
- growing 관심에도 불구하고, 전체 연구 중에서 명시적으로 전체 SE 생애주기 단계를 ML 워크플로우에 적용하거나 적응한 연구는 소수에 불과하여, 연구 및 실무 분야에서의 심각한 격차가 존재함을 시사한다.
- ML 생애주기 전반에 걸쳐 데이터에 대한 강력한 의존성이 존재하므로, 소프트웨어 구성 관리와 유사한 전용 데이터 관리 및 버전 관리 관행이 필요하다.
- 데이터 기반 의존성과 모델 간 상호의존성로 인해 ML 시스템의 모듈성 및 재사용성은 전통적인 소프트웨어보다 훨씬 복잡하다.
- 버전 관리, 테스팅, 요구사항 공학과 같은 SE 관행의 도입은 특히 대규모 AI 시스템에서 모델 재현성, 유지보수성 및 품질 향상에 기여할 수 있다.
- 이 리뷰에서 유일하게 강력한 정량적 측정을 통해 SE 관행이 ML 워크플로우에 미치는 영향을 검증한 연구가 있었으며, 이는 정량적 검증 부족을 강력히 드러내는 주요 격차이다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.