11월 마지막 토요일, 공익데이터 실험실 가을 스프린트의 마지막 장 특별교육 세션이 진행되었어요. 특히 요즘 디지털 뉴딜 사업으로 많은 관심을 받는 데이터 라벨링과 AI 주제도 있었습니다. 실제 현장에서 인공지능 데이터와 소프트웨어 테스트를 전문으로 하는 사회적기업 테스트웍스 이선민 매니저님께서 데이터가 활용되기 위해 수집되고 가공되는 방법에 대한 소개를 해주셨습니다.
4차 산업혁명의 DNA
4차 산업혁명에서는 Data - Network - Artificial Intelligence가 어우러져 혁신이 일어나고 있습니다. 자율주행기술, 핀테크, 헬스케어, 드론, 감성인지, 통·번역 등 다양한 분야에서 인공지능은 사용되고 있습니다. 이처럼 우리 생활에 영역을 확장해나가는 인공지능과 데이터를 위해 무엇이 꼭 필요할까요?
AI 개발에는 정확하고 좋은 품질의 데이터, 다량의 데이터를 수집/가공하는데 80% 이상의 시간이 든다고 합니다. 인공지능 또한 성능이 좋아지려면 많은 양의 데이터를 학습해야 하기 때문입니다. 또한, 정확한 데이터도 무척 중요합니다. 가령 강아지의 얼굴을 라벨링 할 때 실수로 눈을 코로 입력하는 순간, 학습력은 떨어지게 됩니다. 그래서 (1) 다량의 데이터, (2) 정확히 가공된 데이터가 AI 학습을 위해 꼭 필요합니다.
그 다음으로 가공된 데이터를 철저히 검수하는 과정이 필요해요. 이런 과정이 부족하다면, 자율주행차가 사람을 친다거나, AI가 편견을 학습하는 등 잘못된 결과로 이어질 수도 있습니다.
라벨링 도구와 방법
테스트웍스에서는 자체 개발한 라벨링 도구를 사용해서, AI 학습을 위한 이미지 태깅과 라벨링 작업을 합니다. 주로 아래와 같은 기능이 있어요.
가령 박스 기능은 주석을 달고 싶은 특정 객체를 사각형 모양으로 캡처하는 방법입니다. 아래 그림을 보면 자동차들이 줄을 서 있는데, 네모 박스로 태깅을 하고 car라고 라벨링을 합니다. 컴퓨터는 이렇게 사진 속에 담긴 태깅과 라벨링 정보를 통해 학습하게 됩니다.
폴리곤은 박스보다 정교하고 섬세한 작업이 필요한 방식입니다. 특정 객체의 테두리를 따라 점과 점을 따라 다각형 모양으로 태깅을 합니다.
포인트는 안면인식이나 감정인식을 위해 좀 더 섬세한 부분들을 태깅하기 위해 사용되는 기능이고, 2D로는 측정하기 어려울 때는 큐보이드처럼 3D 형식으로 데이터를 가공할 수도 있습니다.
그리고 핸즈 기능은 손가락과 손바닥을 태깅하는 기능인데요, 현재 이 기능을 사용해서 수어 영상 데이터 셋을 구축하고 있습니다.
데이터 가공 작업 전에는 무슨 목표로 작업이 진행되는 것인지 알아야 합니다. 똑같은 차와 차도 위 사람 사진이라도 목적에 따라 태깅해야 하는 게 달라집니다. 자동차의 종류를 인식하는 것은 자동차만 태깅하면 되지만, 사람이 길을 걷는 데 위험한 게 뭔지 분류하고 싶다면 사람 외 다른 장애물을 태깅하는 작업을 진행하는 것입니다.
그럼 예시를 들어보겠습니다. 아래에 차 두 대가 있는 사진을 보면 차의 가려진 부분이 있는데요. 이때는 잘려있는 부분을 유추해서 그 범위까지 태깅을 진행해야 합니다.
아래 사진을 보면 잘 보이지 않지만, 나무 뒤에 사람이 가려져 있습니다. 이 프로젝트 목적이 인도 보행 시 장애물을 구분하는 것이기 때문에 비록 잘 보이지 않아도, 사진을 확대해서 나무 뒤 앉아있는 사람들까지 태깅해야 합니다. 그다음 사진도 앞에 있는 사람들 외에 저 뒤에 아주 작지만 분명 사람들이 있습니다. 이런 부분들도 모두 태깅을 해야 합니다.
실제 업무를 할 때는 화면을 확대해서 작은 장애물까지 모두 태깅을 해야 합니다.
이렇게 태깅한 것을 어떻게 컴퓨터에 학습하게 할 수 있을까요? 라벨링 도구에서 태깅한 이미지 정보값을 추출할 수 있습니다. 여기에는 태깅 시 분류했던 정의값과 이미지 정보 위치값이 포함되어있습니다. 이런 XML파일을 AI 학습 데이터에 넣고 학습을 하게 합니다.
Q&A
-
종류에 따라 다르겠지만 걷기 속도로 보행하는 이동체를 위해서는 어느 정도의 정보량이 필요할지 궁금해요!
"정확한 수량을 답변하긴 어렵지만, 한국정보화진흥원에서 운영하는 AI Hub 사이트에서 확인할 수 있습니다."
-
자율주행 등의 분야에서는 라벨링의 정확성이 생명일 것 같은데 크라우드소싱으로 얻은 라벨링의 무결성은 어떻게 검증 or 데이터 품질은 어떻게 관리하나요?
"데이터 품질 검수 과정은 먼저 1차 라벨링 작업을 한 뒤에 검수 요청을 하게 됩니다. 그러면 리뷰어들이 검수 후 라벨이 잘못 들어간 경우 코멘트를 달거나 잘못된 태깅을 알려줄 수 있습니다. 그다음 최종 검수 과정이 있습니다. 짧게는 3단계, 좀 더 섬세한 검수가 필요할 경우 5단계의 검수를 거칩니다."
* 이미지 태깅과 라벨링 이미지는 테스트웍스의 이미지를 재가공한 것입니다.