디지털트윈 시대 필수 관문, 데이터 어노테이션(Annotation)이란?
데이터 어노테이션은 이미지, 텍스트, 비디오 등과 같은 데이터에 라벨을 붙이거나 분류하여 기계 학습 모델에서 사용할 수 있도록 하는 과정입니다.
![apple tree](http://ahha.ai/wp-content/uploads/2023/12/apple-tree.png)
제조업계는 빅데이터와 산업용AI 기술의 발달로 혁신의 문턱에 서 있습니다. 이상감지, 생산 최적화, 품질 고도화에 초점을 맞추고 있죠. 이를 제대로 활용하기 위해서는 데이터 어노테이션(Annotation)이 필수입니다. 데이터 어노테이션이란 무엇인지 개념과 종류를 자세히 살펴보겠습니다.
1. 데이터 어노테이션의 개념
데이터 어노테이션은 AI 모델이 데이터를 이해하고 분류할 수 있도록 데이터에 추가 정보를 부여하여 그 데이터를 더 정확하고 의미 있게 만드는 프로세스를 뜻합니다. 예를 들어, 고양이 사진에 ‘고양이’라는 이름표를 붙이는 것이죠. 흔히 데이터 레이블링이라고도 하고, 이를 전문적으로 수행하는 사람들을 ‘라벨러’라고 부릅니다.
2. 어노테이션의 중요성
AI 모델은 학습을 통해 작업을 수행하며, 이때 정교한 데이터가 필요합니다. 어노테이션은 다양한 데이터를 AI 모델이 이해할 수 있도록 도와줍니다. 특히 AI 모델이 *지도학습(supervised learning) 방식이라면 어노테이션, 즉 레이블링이 완료된 학습 데이터가 많을수록 좋습니다. 레이블이 지정된 데이터는 AI 모델이 올바른 패턴을 학습하도록 도와주며, 정확성과 신뢰성을 높입니다.
- 지도학습(supervised learning): 입력 데이터와 해당 데이터에 대한 정답, 즉 레이블을 함께 제공해서 학습시키는 방식입니다. 모델은 입력과 출력 간의 관계를 학습하고, 새로운 입력이 주어질 때 정확한 출력을 제공합니다.
- 비지도학습(unsupervised learning): 입력 데이터만을 사용하여 모델을 훈련시키는 방식입니다. 즉, 레이블(정답)이 제공되지 않습니다. 모델은 데이터의 구조, 패턴, 관계를 스스로 학습합니다.
3. 텍스트 어노테이션
자연어 처리 및 머신러닝 모델 훈련에 활용됩니다. 문장 구조 분석, 감정 분석, 개체명 인식 등과 같은 작업을 위해 텍스트에 주석을 추가합니다. 문장의 중요한 부분을 강조하거나 의미 있는 구조를 부여합니다.
(1)엔터티 어노테이션
사전 정의된 레이블을 이용해 텍스트에 ‘엔터티’를 할당하는 과정입니다. “아하랩스는 2024년 스마트 팩토리 이상감지 분야에서 시장 점유율 1위를 달성했습니다”라는 문장을 예로 들면, 아하랩스는 ‘회사명’, 2024는 ‘날짜’로 설명해주는 것이죠. 핵심 문구 태깅, 지정 엔터티 인식, 품사 어노테이션 등이 포함됩니다.
(2)의도 어노테이션
텍스트 생성자의 의도를 알려주는 과정입니다 명령, 요청, 질문, 확인 등이죠. 예를 들어, 고객은 기업이 챗봇과 소통하면서 다양한 문장을 구사하는데요. 챗봇은 사용자의 의도가 질문인지, 명령인지를 파악해 그에 맞는 행동을 합니다.
(3)감정 어노테이션
텍스트 이면에 숨겨진 감정이나 의견을 알려주는 과정입니다. 풍자, 조롱, 인용 또는 리트윗 등에서는 작성자의 감정을 기계가 이해하기 쉽지 않은데요. 라벨러는 이를 면밀히 분석해 텍스트에 긍정, 부정, 또는 중립 태그를 달아줍니다.
(4)텍스트 분류
전체 텍스트나 문단에 단일 레이블을 부여하는 방법입니다. 문서 종류 구별하기, 이메일 내용을 기준으로 스팸 구별하기, 뉴스 기사를 주제별로 분류하기, 주어진 텍스트의 언어 구별하기 등이 해당합니다.
📌 대규모 언어 처리 모델의 정확성을 획기적으로 높여준 트랜스포머 신경망에 대해 자세히 알아보세요.
4. 이미지 어노테이션
주로 컴퓨터 비전 분야에 사용됩니다. 분류(Classification), 객체 탐지(Object Detection), 분할(Segmentation) 등의 작업을 위해 이미지 내에 객체를 주석 처리하는 것입니다. 경계 상자(bounding box), 선, 점 등을 활용하여 객체의 위치 및 윤곽, 클래스를 정의합니다.
(1)이미지 인식 딥러닝 종류 5가지
컴퓨터 비전 분야에서 이미지를 인식하는 방법에는 크게 3가지가 있습니다. 사용 목적에 따라 아래 방법을 적절히 조합하면 모델의 정확도와 신뢰성을 크게 높일 수 있습니다.
–분류(Classification) : 객체 하나의 클래스(정상 혹은 비정상, 고양이 혹은 강아지)를 분류하는 방법입니다. 보통 객체가 하나만 있는 이미지에 적용되며, 객체가 아닌 사진 자체가 속하는 클래스를 식별하는 방법입니다.
–객체 탐지(Object Detection) : 둘 이상의 객체에 대해 각 객체의 위치를 사각형의 경계 상자(bounding box)로 찾은 뒤 클래스를 분류하는 방법입니다. 이미지 내에서 관심 있는 객체를 식별한 뒤, 해당 객체에 ‘개’ ‘고양이’ ‘사과’ ‘오렌지’ 등 레이블을 할당하고 위치를 결정합니다.
–분할(Segmentation) : 둘 이상의 객체에 대해 각 개체의 위치를 경계 상자가 아닌 실제 모서리(edge)로 찾은 뒤 클래스를 분류하는 방법입니다. 즉, 픽셀 수준의 레이블링이죠. 보통 정밀도가 높아야 하는 다소 복잡한 작업에 활용됩니다.
![고양이와 강아지를 AI가 판별하는 기능을 알고리즘 종류별로 분류한 그림 An illustration of AI's ability to distinguish between cats and dogs, broken down by algorithm type.](http://ahha.ai/wp-content/uploads/2023/10/deeplearning-algorithm.jpg)
Image Credit : Fei-Fei Li, Andrej Karpathy & Justin Johnson (2016) cs231n, Lecture 8 – Slide 8, Spatial Localization and Detection
[더 깊이 들어가기] 의미론적 분할 vs. 인스턴스 분할
이미지 분할에는 크게 의미론적 분할(Semantic Segmentation)과 인스턴스 분할(Instance Segmentation)이 있습니다. 이 둘의 가장 큰 차이점은 같은 클래스로 분류한 객체들을 하나로 보는지 따로따로 보는지 여부에 있습니다.
10명의 사람이 등장하는 사진을 예로 들어보죠. 의미론적 분할에서는 이 10명을 모두 ‘사람’으로 분류합니다. 그래서 사진 속에서 사람이 겹쳐져 있을 때 각 개체를 구별하지 못합니다. 반면에 인스턴스 분할에서는 사람1, 사람2…사람10 이런 식으로 인식합니다. 같은 클래스여도 서로 다른 인스턴스(사례)로 구분하는 것이죠. 요컨대, 객체가 겹쳤을 때 각 객체를 구별하지 못하던 문제를 인스턴스 세그멘테이션에서 해결할 수 있습니다.
(2)이미지 어노테이션을 하는 5가지 방법
-경계 상자(Bounding Boxes): 객체의 위치를 사각형의 경계 상자로 정의합니다. 객체의 정확한 위치를 알아내는 데 유용합니다.
-다각형(Polygons): 다각형으로 객체의 외형을 정의합니다. 객체의 정교한 윤곽을 표현하며, 얼굴 인식이나 지리 정보 시스템(GIS)에서 활용됩니다. 비대칭 모양을 인식할 때 유용합니다. 이미지 분할(segmentation)에 가장 유용한 도구입니다.
-폴리라인 (Polylines): 연결된 선 세그먼트로 객체를 표현합니다. 전선, 차선, 보행로, 철로, 거리, 파이프라인 같은 선분을 식별하죠. 도로 지도 작성 및 제스처 인식과 같은 응용 분야에서 사용되며, 객체 윤곽을 더 정확하게 나타냅니다. 자율주행 AI 훈련의 기본입니다.
-점(Points): 객체의 중요한 지점을 나타냅니다. 얼굴 특징 포착 및 3D 공간에서 데이터 포인트 매핑과 같은 작업에 사용됩니다. 예컨대, 사람 얼굴의 핵심인 눈, 코 입의 위치를 정확히 찾아낼 수 있습니다.
-직육면체(Cuboids): 객체의 3D 형태를 나타내는 상자입니다. 증강 현실(AR) 및 로봇 공학 분야에서 사용되며, 객체의 공간적 차원을 이해하고 상호 작용할 수 있게 합니다.
(3) 아하랩스의 AI 솔루션 LISA가 이미지 어노테이션을 하는 방법
요컨대, 레이블링이란 AI가 학습할 수 있는 형태로 데이터에 정해진 규칙에 맞게 레이블을 붙여주는 작업입니다. 학습할 기준을 만들어주는 과정이죠.
아하랩스의 산업용AI 솔루션 LISA에서는 [레이블링 데이터 생성 – 클래스 생성 – 클래스를 선택하여 오브젝트 생성] 과정을 거쳐 레이블링을 합니다. 도형(정사각형, 직사각형, 원, 타원), 다각형, 폴리곤, 브러시 등의 툴을 이용하여 표면 결함 분류, 이상감지 등을 위한 오브젝트를 손쉽게 지정할 수 있습니다.
📌 아하랩스의 산업용AI가 산업 현장의 클래스 불균형 문제를 극복한 방법을 알아보세요.
5. 비디오 어노테이션
동영상 데이터에 주석을 추가하여 특정 객체 또는 행동을 추적하고 분류하는 데 사용됩니다. 이미지 어노테이션과 비슷한 듯 보이지만, 사실은 완전히 다른 일입니다. 초당 30프레임 영상 1분이면 무려 1800개의 이미지로 변환되기 때문이죠.
(1)객체 추적(Object Tracking)
동영상에서 객체의 움직임을 지속적으로 추적합니다. 동적인 환경에서 객체의 움직임을 분석하고 다음 위치를 예측하는 데 사용됩니다. 보안 목적으로 보행자나 차량을 모니터링할 때 유용합니다.
(2)동작 인식(Action Recognition)
동영상에서 특정 동작이나 행동 패턴을 감지하고 분류합니다. 보안 감시, 운전자 모니터링, 스포츠 분석 등에서 사용되며, 특정 동작에 대한 이해를 높입니다. 예를 들어, 제조 현장의 화재를 감시하는 데 유용합니다.
(3)의미론적 분할(Semantic Segmentation)
비디오 내의 다양한 객체를 분류할 수 있습니다. 동영상 내의 객체 및 환경 변화를 정확하게 이해하고 분석하는 데 사용됩니다. 예를 들어 제조 현장을 촬영한 비디오를 활용해서 자재를 종류별로 그룹화하고 재고량을 계산하는 시스템을 만들 수 있습니다.
(4)객체 탐지(Object Detection)
비디오에서 특정 객체의 위치를 프레임별로 감지합니다. 보안 시스템, 교통 흐름 분석, 인간 행동 모니터링 등 다양한 분야에서 활용됩니다.
(5)시간적 어노테이션 (Temporal Annotation)
동영상 내의 특정 시간 구간을 주석으로 표시하거나 분류합니다. 비디오 내의 중요한 이벤트 또는 시퀀스를 식별하고 분석하는 데 사용됩니다.
6. 결론
어노테이션은 AI가 현실 세계를 이해할 수 있도록 돕는 핵심 기술이라고 할 수 있습니다. 이미지, 텍스트, 비디오 등 다양한 데이터에 대한 의미 부여는 AI 기술의 발전을 이끌어냈죠. 이를 통해 제조업을 비롯한 다양한 산업 분야에서 혁신을 추진하고 있습니다.
지금까지는 수동 어노테이션이 시장을 주도했는데요. 향후 다양한 자동화 기술로 분화될 것으로 예상됩니다. 지금까지는 사람의 도움이 필요했지만, 이제 AI는 처음보다 훨씬 똑똑해졌거든요. 다음 아티클에서는 수동 어노테이션의 한계를 극복하는 최신 기술에 대해 알아보겠습니다.