기술 및 엔지니어링 정보/AI

자율주행 엔지니어로서, 머신러닝 업무 프로세스 정리

Junique 2025. 5. 21. 17:42
반응형

1. 왜 머신러닝인가?

  • 자율주행/ADAS 시스템은 방대한 센서 데이터(카메라, 레이다, 라이다 등)를 처리해야 함
  • 전통적 규칙 기반 접근으로는 방대한 변수를 모두 커버하기 어려움
  • 머신러닝을 통해 예측(Prediction)과 패턴 분석(Pattern Analysis) 기능을 구현
    • 예: 차량 주변 객체(보행자, 차량 등) 인지 → 충돌 위험 예측 → 안전한 제동/차선 변경 결정

2. 머신러닝 업무 프로세스

2.1 전체 프로세스 개념

  1. 문제 파악 & 문제 정의
  2. 데이터 준비
  3. 모델 구축 & 분석/평가
  4. 결과 공유
  5. 모니터링 (실제 시스템에 적용 후, 지속 관찰)

이 과정을 ADAS 프로젝트에 대입해보면:

  1. 문제 파악 & 정의: 예: “고객이 원하는 충돌 방지 기능 정확도를 높이고 싶다.”
  2. 데이터 준비: 센서(카메라·레이다)에서 수집된 대규모 주행 데이터 정리
  3. 모델 구축 & 평가
    • 이미지 기반 객체 검출 모델(예: YOLO, Faster R-CNN 등) 학습
    • 도로 상황별 인식 정확도·오인식율 평가
  4. 결과 공유: 모델 성능 리포트(Precision/Recall/ROC 등) 전달, 시스템 인터페이스 논의
  5. 모니터링: 실제 테스트 주행 후, 오탐·미탐 상황 기록 → 모델 재학습 반영

3. 문제 파악 & 문제 정의

3.1 비즈니스(또는 프로젝트) 문제 파악

문제파악 및 문제정의를 위한 세부 프로세스는 다음과 같음

먼저, 비즈니스 문제를 파악한 후에 이를 해결하기 위한 데이터 과학과 머신러닝 문제로 전환

 

3.1 비즈니스(또는 프로젝트) 문제 파악

  • “자율주행 차량이 교통 흐름을 더 안전하고 부드럽게 운영하려면?”
  • “ADAS에서 오탐(잘못된 장애물 인식)을 줄이려면?”
  • 이처럼 비즈니스·안전적 요구사항을 먼저 명확히 해둬야 효율적인 머신러닝 모델 설계 가능

3.2 머신러닝 문제로 전환

머신러닝의 타입

  • Supervised Learning (지도학습)
    • 입력 및 출력 데이터 기반 예측 모델 생성
      • Classification (분류) - 범주를 예측 
      • Regression (회귀) - 숫자를 예측
  • Unsupervised Learning (비지도학습)
    • 입력 데이터 기반 데이터 그룹화 및 해석
      • Clustering (군집화) - 유사한 그룹끼리 군집화
비즈니스 문제 목표 (출력) 머신러닝 문제
차량 주변 객체를 ‘차량’, ‘보행자’, ‘자전거’로 분류 범주(Category): 객체 종류 Classification (분류)
다음 시점 차량 위치 예측 수치(Numerical): 차량 좌표(위경도 등) Regression (회귀)
유사 주행 스타일 그룹 찾기 유사 운전자 그룹화 Clustering (군집화)

 

  • 예시: “고객(운전자) 상태 파악 후, 피로도가 높은 운전자에게 경고 알림?” → Classification(분류)
  • 자율주행·ADAS에서도 필요에 따라 Recommender System, Anomaly Detection(센서 이상 탐지), Time series Forecasting(교통량 예측) 등을 사용

4. 모델 구축 & 분석/평가

4.1 모델 구축 단계

머신러닝 문제로 전환하고 데이터 준비를 마친 이후에는 적절한 머신러닝 모델 & 알고리즘을 선택하여 모델을 구축하고 평가함, 해당 프로세스는 아래와 같음

 

  1. 모델 & 알고리즘 선택
    • 분류(Classification): Logistic Regression, Decision Tree, SVM 등 (-> 범주 예측)
    • 회귀(Regression): Linear Regression, Ridge, Lasso 등 (-> 숫자 예측)
    • 군집(Clustering): K-means, DBSCAN 등 (-> 군집)
  2. 비즈니스 제약 고려한 모델 적용
    • 실시간성(Real-time) 요구사항이 높은 ADAS에서는 경량 모델 우선 고려
  3. 하이퍼파라미터 설정
    • 예: Decision Tree 깊이, 학습률, 규제 파라미터 등
  4. 모델 학습
    • GPU/TPU 활용 대규모 데이터 병렬처리
  5. 모델 재학습(Iterative)
    • 모델 성능이 만족스럽지 않으면 수정→재학습 반복

4.2 모델 평가

4.2.1 Regression (회귀) 평가

  • 실제 값(y)과 예측 값(y')의 오차(에러)로 성능 파악
  • MAE (Mean Absolute Error), MSE (Mean Square Error), RMSE (Root Mean Square Error), MAPE (Mean Absolute Percentage Error) 등 척도 활용
  • ADAS 예시: 예측 차선 위치(y')와 실제 차선 위치(y) 차이가 작은지 확인

4.2.2 Classification (분류) 평가

Name Description Etc.
Accuracy 옳게 분류한 정확도 (correct prediciton / total data points) * 100%
Confusion Matrix 분류 결과를 2x2 의 표로 정리한 혼동행렬  
F-measure precision과 recall의 조화평균
*precision : 예측한 범주에서 실제 True 범주 비율
*recall : 실제 범주에서 옳게 True 라고 예측한 범주 비율
F = (precision X recall) /
     (precision + recall)
AUC TPR과 FPR을 각각 x축과 y축으로 했을 때의 생성되는
ROC curve 아래의 면적
*TPR : True Positive Rate (옳게 예측한 비율)
*FPR : False Positive Rate (True 라고 잘못 예측한 비율)
 
  • Accuracy(정확도), Confusion Matrix(혼동행렬), F-measure(Precision과 Recall의 조화평균), AUC(ROC 곡선 아래 면적) 등
  • ADAS 예시: 보행자 인식(TP) vs. 보행자가 아닌데 보행자라고 잘못 인식(FP)
    • Precision이 낮으면 오탐이 많아 경고 남발
    • Recall이 낮으면 실제 보행자를 놓쳐 위험

4.2.3 기대손익(비용편익) 관점

  • 혼동행렬 × 비용편익분석Expected Value(기대수익/기대효과) 계산
  • 예) “충돌 위험이 높은 운전자에게 긴급제동 시스템 가동” 모델의 손익
    • True Positive(위험 운전자 제대로 잡아냄)의 Benefit
    • False Negative(위험 운전자를 놓침)의 Cost
  • ADAS 예시: 잘못된 긴급제동(FP) 비용 vs. 충돌 회피(TP) 이익 비교 → 모델 최적화 지점 찾기

5. 실제 프로젝트 적용 & 모니터링

  1. 결과 공유
    • 모델 성능 지표(정확도, AUC 등)와 함께 실차 테스트 시나리오를 함께 검토
    • 안전 규제(ISO 26262, ASIL 등) 충족 여부 확인
  2. 모니터링
    • 주행 중 발생하는 예외 상황(새로운 도로·차량 패턴 등)을 수집하여 정기적으로 모델 업데이트
    • 오탐·미탐 분석 후, 데이터 레이블링 보강 → 재학습
  3. 재투입 & 성능 향상 루프
    • 실제 운행 환경이 바뀔 때마다 추가 데이터로 모델 고도화
    • ADAS는 실시간성이 중요하므로, 필요 시 차선 인지 등 특정 모듈에 전용 하드웨어(ASIC, FPGA) 적용

6. 맺음말

  • 자율주행/ADAS에서는 머신러닝이 복잡한 주행 환경에 유연하게 대응하는 열쇠가 됩니다.
  • “문제 정의 → 데이터 준비 → 모델 구축 & 평가 → 결과 공유 → 모니터링” 순환 사이클을 통해 모델 성능을 꾸준히 개선해야 합니다.
  • 모델 성능 평가 시, 단순 정확도 외에 기대 손익안전성(Functional Safety)도 고려해야 합니다.
  • 궁극적으로 정확도가 높고 안전 표준을 준수하며, 비즈니스적으로도 가치가 있는 모델을 선정·운영하는 것이 핵심입니다.
반응형