[데이터분석]/Python | AI | 머신러닝

실무 중심의 데이터 분석 방법 Part.1

dowon 2024. 7. 16. 23:22

기업에서 데이터 분석이 중요한 이유

실제 AI 프로젝트의 성공 여부는 데이터 정리에서 80%가 결정됨

나머지 20%는 Google의 BERT, OpenAI의 GPT 등 선진적 모델이 담당함

by Andrew Ng

따라서 현업에서 프로젝트를 성공시키기 위해서는 데이터 준비 철저 필요

→ 실패한 프로젝트들을 자산화할 필요가 있음

(데이터 공개 / 세미나 등으로 알려줘야 함. 그래야 같은 실패할 확률이 줄어듦)


기업의 데이터 분석 성공 사례

문제 인식 단계 → PoC (Proof of Concept) & 구현 → 검증 → 배포

 

문제 인식 단계

-현업에서 Image Deep Learning 구현 요청

요구 조건은 RUle base Model → Deep Learning Model 전환이 주 목적

전체적인 정확도도 중요하지만, 미탐지를 낮추는 것이 가장 중요

느린 모델은 공정에서 사용 불가능. 입력 Image 180장 처리 시간 20ms 이내

 

PoC & 구현

-Transfer Learning을 활용한 PoC

VGG가 성능은 가장 높았지만, 너무 많은 파라미터로 인해 모델의 크기가 크고 추론 속도가 매우 느림

Mobilent V2 구조를 활용하여 추론 속도를 개선

정확도가 99% 나왔지만, 미탐지 항목이 일부 존재, 튜닝을 통해 정확도는 일부 포기하고 미탐지를 개선

 

검증

-실제 현장 (공정)에 가서 프로그램 설치

개발 환경: 리눅스

테스트 타겟: Windows 10

공정 PC: Windows Server 2008 (실행 불가) → 다시 구현 필요

 

-프로그램 설치 후 테스트 진행

3일간 발견된 문제점

1. 모델 학습 시 사용한 Test 데이터에 대한 정확도 95.72%, 실제 공장에서는 50%

2. 처리시간 20ms 초과 현상 발생

3. 메모리 누수 현상 발생 등

 

다시 PoC & 구현

-미탐지에 대한 이슈가 가장 크리티컬

데이터를 보기 시작함

육아능로 봐도 99.99% 일치하는 이미지인데, Label이 다름

Label이 일관성이 없으면 모델은 제대로 된 성능을 낼 수 없음

전체 인원 (현업 포함)이 매달려서 데이터 재분류 재모델링

→ 다시 공장에 검증

 

검증

일주일 간 테스트 진행

이슈 없이 검증 완료

→ 최종 배포 단계

 

배포

공장은 Factory Automation 망과 Office Automation 망으로 분리되어 있고, FA망은 폐쇄망

FA/OA 망 사이 DMZ 구간을 활용하여 배포 파이프라인 구성

(네트워크, 자료구조 등을 알면 좋음)


데이터 엔지니어링의 중요성

-모델링만 하는 분석가/모델러는 매력이 없음

-만든 모델이 돌 수 있는 환경에 대한 이해와 적절한 IT 기술이 모델을 빛내 줌

-개발 능력이 없으면 개발자들에게 사랑받는 분석가가 되기 위해 노력하자

-학습은 기계가 하지만, 일은 사람이 함

-모델의 성능이 나쁠 때는 알고리즘을 탓하지 말고 데이터를 살펴보자 (Data-Centric Model)