심화 프로젝트

Chapter.5 심화 프로젝트(1)

devjjun 2026. 4. 29. 20:51

TIL(Today I Learned)


1️⃣심화 프로젝트 

프로젝트 주제 선정

주제: [모빌리티] 엔진 센서 데이터 기반 결함 예측 및 품질관리 분석

분석 목표:

  • 엔진 성능 지표(MAP, TPS, Force, Power, RPM)와 배기가스 지표(CO, HC, CO2, O2), 연료 효율성(Consumption L/H, Consumption L/100KM) 등의 주요 변수와 결함(Fault) 간 통계 분석EDA를 통해 관계를 명확히 파악
  • 통계 기법(t 검정, ANOVA 등)을 이용하여 결함 그룹 간의 차이점을 정량적으로 검증
  • 머신러닝 모델을 통해 결함 상태를 사전에 예측하고, 안전·품질관리 업무에 적용할 수 있는 인사이트 도출

데이터: 

EngineFaultDB_Final.csv
5.09MB


프로젝트 기획서 작성

🔗심화 프로젝트 기획서 | Notion


엔진 결함 분석을 위한 핵심 도메인 지식

1. 공연비(AFR, Air-Fuel Ratio)와 람다(Lambda)

데이터의 AFR과 Lambda 컬럼을 설명할 때 반드시 필요한 개념

  • 이론: 엔진이 연료를 가장 효율적으로 태우기 위한 이론적 공기 대 연료의 비율은 14.7:1입니다. 이를 람다1.0
  • 분석 포인트:
    • Lambda < 1.0 (농후): 공기가 부족하고 연료가 많음 → 탄화수소(HC) 배출 증가, 연비 저하.
    • Lambda > 1.0 (희박): 연료가 부족하고 공기가 많음 → 질소산화물(NOx) 증가, 엔진 과열 가능성.

2. 흡기압(MAP)과 스로틀 포지션(TPS)

엔진이 얼마나 힘을 쓰고 있는지(부하)를 나타내는 지표

  • MAP (Manifold Absolute Pressure): 엔진으로 들어가는 공기의 압력. 가속 페달을 밟으면 압력 상승
  • TPS (Throttle Position Sensor): 운전자가 가속 페달을 얼마나 밟았는지(0~100%)
  • 분석 포인트: TPS는 높아지는데 MAP이나 RPM이 제대로 반응하지 않는다면, 이는 흡기 계통의 누설이나 엔진 출력 저하 결함으로 해석 가능

3. 배기가스 4가스 분석 (CO, HC, CO2, O2)

엔진의 건강 상태를 보여주는 '혈액 검사'

  • HC (탄화수소): 미연소 가스. 점화 계통 불량이나 엔진 내부 마모 시 수치가 급격히 상승. (데이터상 120ppm 기준)
  • CO (일산화탄소): 불완전 연소의 산물. 공기가 부족할 때 많이 발생.
  • CO2 (이산화탄소): 완전 연소가 잘 될수록 수치가 높다. (보통 13~15%가 이상적)
  • O2 (산소): 배기가스에 산소가 너무 많다면 배기 라인에 구멍이 났거나 연소가 제대로 안 된 것.

4. 엔진 회전수(RPM)와 토크(Force/Power)

  • 분석 포인트: 정상 상태(Fault=0)에서는 RPM과 Power가 일정한 상관관계를 갖지만, 결함 상태(Fault=1)에서는 특정 RPM 구간에서 출력이 급격히 떨어지는 '드롭 현상'이 발생 가능.

전처리 계획 

1. 데이터 구조 및 결측치 확인 (Data Auditing)

  • 데이터 타입 점검: 모든 수치 데이터가 float이나 int로 잘 인식되었는지 확인.
  • 결측치(Null) 처리: 센서 오류로 누락된 값이 있다면 제거하거나, 중앙값 등으로 보간(Interpolation)

 

2. 이상치(Outlier) 탐지 및 처리

  • 센서 노이즈 제거: RPM이 갑자기 0으로 떨어지거나 HC 수치가 물리적으로 불가능한 수준으로 튀는 지점을 필터링
  • 박스 플롯(Box Plot) 활용: 시각화를 통해 통계적 범위를 벗어나는 이상치를 식별

 

3. 도메인 지식 기반 파생 변수 생성 (Feature Engineering)

 

  • 공연비 편차(AFR Error): 이론적 공연비(14.7)와 실제 AFR의 차이를 변수로 생성.
  • 가속 강도: TPS(가속 페달 위치)의 변화율을 계산하여 급가속 여부를 판단.
  • 출력 효율: RPM 대비 Power의 비율을 생성하여 엔진의 노후화 정도를 수치화.

 

4. 데이터 스케일링 (Scaling)

  • 단위 통일: RPM(천 단위)과 Lambda(소수점 단위)는 수치 차이 크다. 머신러닝 모델이 특정 변수에만 휘둘리지 않도록 StandardScaler나 MinMaxScaler를 적용.

5. 상관분석 및 변수 선택 (Feature Selection)

  • 히트맵(Heatmap) 분석: 결함(Fault)과 가장 상관관계가 높은 센서가 무엇인지(예: HC, CO, TPS 등) 확인
  • 다중공선성 확인: 서로 너무 비슷한 정보를 가진 변수(예: Consumption L/H와 L/100KM)는 하나만 선택

 


💡 느낀점

데이터 분석가는 단순히 알고리즘을 돌리는 사람이 아니라, 해당 분야의 언어를 데이터로 번역하는 '통역사'가 되어야 함을 느꼈다. 또한 신중하게 전처리 계획을 세우며 화려하게 모델링을 하는 것이 아닌 정확하고 실용적인 전처리를 통한 데이터가 뒷받침 되어야 함을 느꼈다. 전처리 계획을 이행하며 통계적으로 유의미한 변수들을 찾아가는 과정도 진행 할 예정이다.

'심화 프로젝트' 카테고리의 다른 글

Chapter.5 심화 프로젝트(6)  (0) 2026.05.08
Chapter.5 심화 프로젝트(5)  (0) 2026.05.07
Chapter.5 심화 프로젝트(4)  (0) 2026.05.04
Chapter.5 심화 프로젝트(3)  (0) 2026.05.01
Chapter.5 심화 프로젝트(2)  (0) 2026.04.30