인공지능 팩토리 AI SPARK 챌린지 - 공기압축기 이상 판단 공모전 참가 후기
이번에 에이블 스쿨을 통해 인공지능팩토리(AIFactory)에서 주관하는 공모전에 참가했다! 대학교 때 친구의 제안으로 딱 한 번 공모전에 참가한 적이 있긴 있어서, 이번이 내 두 번째 공모전이었다. 팀 구성은 반 커뮤니티에 공모전 팀원 모집 글을 올려주신 에이블러님이 있어서 그걸 보고 참가하겠다고 직접 말씀드렸고, 4명의 팀원으로 참가하였다. 등수는 높지 않지만, 개인적으로 공모전 참여를 통해서 얻어간 게 많아서 간단하게 정리하고자 한다.
공모전 대회 개요
제4회 2023 연구개발특구 AI SPARK 챌린지 - 공기압축기 이상 판단
aifactory.space
이번 공모전은 공기압축기 이상 판단이라는 주제로 인공지능팩토리에서 개최되었다. 대회의 세부사항인 아래 두 항목은 대회 개요에서 직접 발췌했다.
- 산업용 공기압축기 및 회전기기에서 모터 및 심부 온도, 진동, 노이즈 등은 기기 피로도에 영향을 주는 요소이며, 피로도 증가는 장비가 고장에 이르는 원인이 됩니다.
- 피로도 증가 시 데이터 학습을 통해 산업기기 이상 전조증상을 예측하여 기기 고장을 예방하고 그로 인한 사고를 예방하는 모델을 개발하는 것이 이번 대회의 목표
이번 대회의 특징 중의 하나는 "비지도학습"을 통한 예측 진행이라고 볼 수 있다. 비지도학습을 통해 테스트 데이터를 정상/비정상으로 구분하는 이진분류를 수행해야 했었다. 에이블 스쿨 교육과정에서 비지도학습을 직접적으로 다루지도 않았고, 개인적으로도 한번도 해본 적이 없던 시도여서 막막하기도 했다 (・`д・´)
대회는 4월 3일부터 4월 21일까지 약 20일간 진행되었으며, 제출 횟수에 제한은 없었으나, 한번 결과 제출 후 1시간 이후에 다음 제출을 수행할 수 있다는 제약이 있었다. 공모전에 참여하는 동안 우리 팀원들과 다음 규칙을 정해두고 임했다.
- 매주 한번씩 팀즈로 모여서 한 주 동안 진행했던 사항 및 다음 주에 진행할 것 공유하기
- 결과 제출할 때 톡방에 제출하겠다고 한마디 남기기
매주 진행상황을 공유하면서, 다른 팀원들의 의미 있는 결과에 대해서도 들을 수 있었다. 나도 그런 부분을 반영해서 코드를 수정해 나가기도 했다. 공모전을 진행하는 동안 총 3번의 미팅을 가졌는데, 첫 미팅 때는 가볍게 자기소개하고 앞으로의 미팅 및 공모전 진행방향을 상의했다. 이후 나는 가볍게 전처리 없이 머신러닝 모델로 예측을 진행해 보고, 다음 주에 Isolation Forest나 AutoEncoder 모델을 사용해 보려고 계획했었다. 근데 놀랍게도 두 번째 미팅 때 다른 조원분들이 해당 모델을 이미 사용해보셨더라구..!! 그래도 꺾이지 않고 Isolation Forest와 함께 SVM 모델을 사용해 예측을 진행해 보았는데, 둘 다 스코어가 0.5 정도밖에 안 나와서 빠르게 포기하고 AutoEncoder를 통해 예측을 진행하였다. AutoEncoder가 성능이 좋아서 머신러닝은 빠르게 접고 남은 대회 기간 내내 AutoEncoder에 매달렸다. 하지만 대회 진행기간 내내 에이블에서 3주간 미니프로젝트를 진행하기도 했고, 둘쨋주에 주말 내내 공모전 붙잡고 있었더니 마지막 주에는 힘이 빠지기도 했고 큰 성능 향상을 보이지 못해서 많은 시도를 하지 못했다..ˣ˷ˣ
최종 후기를 말하자면 Public Score는 약 0.9558점이었지만, 실제 Total Score는 이보다 좀 더 떨어졌다. 나의 최고 Public Score는 약 0.954정도였다. 순위권과는 한참 먼 점수이기는 하지만 이번 공모전을 하면서 얻은 것이 많아서 값진 경험으로 남았다! 공모전을 적극적으로 참여하면서 비지도 학습을 비롯해 여러 새로운 모델들을 스스로 공부하면서 새로운 지식을 얻기도 하고, 성능을 올리기 위해 딥러닝 모델의 parameter를 세심하게 조절해 보고, 중간 과정 및 결과를 시각화하며 더 나은 결과를 내기 위해 노력하였다. 그래서 큰 기대는 안 했지만 개인적으로 0.95라는 스코어만 해도 굉장히 만족스러웠다! 하지만 아쉬운 점도 없을 수가 없었는데 데이터 분석 과정도 좀 미흡하지 않았나 싶다. 공장 관련 기기이다 보니 설비 번호 및 마력이 다른 여러 종류의 데이터가 섞여있었고, 각각의 변수들도 범위, 단위 등등 다른 점이 많았는데 배경 및 데이터에 대한 세심한 분석 및 이해가 있었다면 예측 모델 설계 과정에 많은 도움이 되지 않았을까 싶다. 또한 AutoEncoder 모델을 처음 사용해 보았는데, 사실 아는 게 많이 부족한 상태에서도 주먹구구식으로 한 게 없지 않아 있다.. 뭔가 결과를 내긴 했지만, 그 과정 내에 세세한 이해가 뒷받침해주지는 않았기에 아쉬움도 많이 남는 것 같다. 하지만 이번 경험을 통해서, 다음에 공모전을 도전하게 되면 어떻게 부족한 점을 채워갈지에 대해서도 좀 감이 왔다! 지금처럼 앞으로도 열심히 도전하고 부딪히면서 강해져 보도록 하겠다!! ( •̀ ω •́ )✧