-
제조업에서 사람의 눈을 컴퓨터비전으로 대체하기 위한 체크포인트Data Science 2023. 12. 17. 16:00반응형
소프트웨어 회사에서 1년, 제조업에서 2년을 보낸 주니어 데이터사이언티스트입니다.
그동안 제조업에서 여러 컴퓨터비전 과제를 수행하면서 요구사항 분석부터 시스템화까지 여러 일들을 겪었는데,
그중 컴퓨터비전 과제를 하기 위해서 체크해야하는 부분들을 작성해봅니다.
제조업 전반이 아닌 저희 회사만의 문제일수도 있고, 맞지 않는 내용일 수 있지만 저의 생각을 정리하는 피드백이나 조언이 있으시다면 언제든지 환영합니다.
0. 시작하며
많은 기업들이 앞다투어서 AI를 자사의 도메인에 적용하고 있다.
AI가 적용되는 수많은 프로젝트들은 크게 두가지로 나눌 수 있다.
기존에 사람이 하던 일은 대체하는 것과 새로운 일을 하는 것.
기존에 사람이 하던 일이라는 것은 이미 해당 기업에서 필요성이 합의되어 수행되던 일로
AI로 대체시에 효율(비용이나 시간 인력 등)이 합리적으로 증가한다면 과제의 성립 가능성은 급격히 높아진다.
실제로도 최근 제조업에서 적용했다고 뉴스에 나오는 많은 과제들은 기존에 사람이 하던 일을 대체하는 것에 대해서 발생했다.
오늘 글에서는 제조업에서 사람이 하던 일을 컴퓨터비전으로 대체할 때, 어떠한 부분을 짚고 넘어가야하는지 적어보겠다.
1. 사람의 인지능력과 컴퓨터비전의 성능에 대해서 명확히 구분하기
기본적으로 컴퓨터 비전도 AI의 범주에 들어가기 때문에, 막연히 사람들은 사람에 대비해서 훨씬 높은 성능을 보여줄 것이라 기대한다.
수치형 데이터에서 60개의 독립변수가 주어졌을 때 사람보다 AI모델이(주로 머신러닝 모델) 훨씬 좋은 결과를 보여줌에 비해서,
컴퓨터비전에서는 한장의 이미지가 주어졌을 때 AI모델에 비해서 사람이 결코 낮은 결과를 보여주지 않는다.
많은 케이스에서 사람이 훨씬 더 좋은 성능을 보여준다!
요즘 LLM이 방대한 양의 데이터로 어마무시한 학습을 하여 여러 인과관계를 포함한 양질의 결과를 보여줌과 같이,
사람도 평생동안 보고 듣고 배워온 내용을 기반으로 알게모르게, 해당 이미지에서 얻을 수 없는 정보를 추가적으로 활용하여 판단에 사용하고는 한다.
실제로 많은 현장의 작업자 분들께서 CCTV의 어떠한 장면을 놓고 단번에 어떠한 상황인지 맞추시며, AI 모델도 동일한 성능을 가지기를 원하신다.
그러나, 이는 해당 현장에 대한 많은 경험과 CCTV 장면 외에도 여러 앞뒤 추가적인 상황을 본인이 알고 있는 상태에서 내리는 판단이다.
단순히 CCTV의 데이터를 기반으로 학습된 모델은 이러한 결과를 절대 도출해 낼 수 없다.
과제가 제안됐을 때 요구사항에 대하여 명확히 분석하여 실제로 해당 데이터를 기반으로 처리 가능한 문제인지, 현장의 또다른 데이터(또는 경험)이 필요한 문제인지 파악해야한다.
만약 해당 데이터로 불가능하다고 판단되면 필요한 데이터가 무엇인지 파악 및 요청하거나, 과제의 범위를 줄여야 한다.
모든 과제에서 요구사항 분석을 함에 있어서 이러한 부분이 제일 많이 나오는 이슈인것 같아 첫번째로 작성한다.
2. 컴퓨터비전에서의 명확한 정답 구성하기
수치형 데이터와는 다르게 영상(또는 동영상)에서의 정답지는 명확하지 않을 수 있다.
ex) 제품의 탄 정도를 1~5단계로 나눌 때 각 단계의 경계는 어떻게 구하는가?
RGB값에 기반하기에는 사진별로 해상도가 다르고, 음영 정도나 조명색이 일정하지 않다면?
실제로 품질관련해서 여러 단계의 분류가 있지만, 각 단계의 경계에 놓인 데이터는 작업자의 판단과 현장에 따라서 위아래 단계를 이동하기도 한다.
또다른 예로는 동일한 유형이지만 이전공정에서 재질이나 방식의 차이로 결함명이 달라지기도 한다.
ex) 동일한 모양의 무릎 찰과상이지만 축구하다 다쳐오면 A1 결함이고 농구하다 다쳐오면 A2 결함 이다.
이러한 상황들을 해결하기 위해서는 소프트라벨링을 활용하거나, A1/A2 결함을 모델에서는 동일한 A결함으로 분류하고 후처리 알고리즘을 적용하는 등 상황에 맞는 처리 방법을 고안해야한다.
이미 현장에서 사용되고 있는 여러 지표(품질 등)가 컴퓨터비전의 모델과 맞지 않는 경우가 있기 때문에, 이러한 부분을 잘 살피고 지표 및 정답셋을 재구성 할 필요가 있다.
3. 데이터의 예외 사항 파악 및 개선하기
제조업에서 과제를 수행하면서 느낀점은 정말 데이터의 예외사항 처리가 중요하다는 것이다.
구글에서 발표한 Garbage in, garbage out이 여실히 느껴지는 부분인데, 공장이라는 특성상 정말 수많은 예외사항이 발생하기에 이를 꼭 파악하여야한다.
평상시에 정확도 100%를 달성한다고 하여도 이러한 상황에서 여러 에러가 발생하기 시작하는 순간 현장에서의 모델 신뢰도가 급격히 낮아질 수 있다.
3.1 데이터 수집 환경에 대한 예외 사항
촬영 대상이 아닌 촬영 환경에 대한 케이스 들이다.
간략하게 예를 들면 아래와 같은 일이 발생한다.
- 분진으로 인한 점진적 CCTV 화질 감소(렌즈에 점점 먼지가 앉음)
- 공장 진동으로 인한 순간적 화면 흔들림
- 제품 등에 광원이 반사되어 일시적으로 화이트 아웃 현상 발생
- 연기 등이 발생하여 촬영지 가림
- 작업자 또는 타 기계가 카메라 건듦으로 인한 각도 변경
- 정전
- 라인 환경 개선 공사로 구조물 변경
이 외에도 작업 환경에 따른 여러가지 예외사항이 발생하며, 이를 파악하기 위해서는 현장의 작업자들과 소통하고 많은 데이터를 직접 확인해보는 수밖에 없다.
또한 해당 사항의 발생에 대비하기 위해서, 추가적인 알람 알고리즘 구축이나 포커싱 위치 자동 변경 등을 고려해 보아야한다.
3.2 촬영 대상에 대한 예외 사항
흔히 우리가 배우는 데이터에서의 예외사항(이상상황)이라고 할 수 있다.
생산계획, 안전이슈 등의 여러 이유로 언제든지 촬영 대상에 대한 내용이 변경될 수 있기 때문에 이에 대한 대비를 해야한다.
제조업에서 제품의 생산에 직접적으로 관여하지 않는 이상, 대다수의 컴퓨터비전 모델(모니터링 등)은 고려대상이 아니기에 갑자기 에러메시지가 주르륵 뜬 후에 확인해보면 작업 프로세스가 변경되었거나 하는 상황을 마주할 수도 있다.
- 보수 공사
- 작업 프로세스 변경
- 생산 이슈 발생
- 제품 종류 변경
3.3 위의 예외 사항 개선하기
앞서 나온 예외사항들을 소프트웨어 적으로 해결하기에 앞서서 하드웨어적으로 해결 할 수 있다면 가장 좋다.
탐지 대상이 잘 안보인다면 유색 및 형광색 등의 제품으로 변경 할 수 있는지?
기존에 사람들이 모니터링 하기 좋게 세팅된 CCTV의 각도 및 화질에 대해서 컴퓨터비전 모델에 맞게 설정치를 변경한다던지?
(저장용량으로 사람이 알아볼 수 있을 정도의 해상도만 유지하던 곳에서 과제를위해 해상도 최대 상승 및 인지범위 확대를 위한 광각으로 변경 등)
최대한 물리적으로 해결 할 수 있는 부분을 처리한 후에 나머지는 소프트웨어적으로 처리하는게 가장 좋다.
반응형'Data Science' 카테고리의 다른 글
SFAW 2024 참관후기 - MLOps 범람의 시대 (0) 2024.03.31 AI 서울 2024 참관 후기 (1) 2024.02.01 스마트팩토리 프로젝트에서의 요구사항 분석 (0) 2023.02.22 강화학습 Q-Learning 예제 손으로 풀어보기 (1) 2022.12.16 강화학습(Reinfocement Learning) 정의 및 개념 (0) 2022.12.13