Study/AI

[AI/LLM] AI는 이미지를 어떻게 인식할까?

Super-Son 2025. 5. 13. 18:32

AI가 이미지를 어떻게 인식하고 처리하는지 요즘 관심이 생겨서 간단히 공부해봤다. 정리하다 보니 자연스럽게 LLM(Large Language Model)이 이미지를 처리하는 방식도 궁금해져서 추가로 알아봤다.

 


AI에게 이미지는 무엇일까?

AI에게 사진이란 결국 숫자의 배열이다. 사람은 '고양이'라고 바로 떠올리지만, AI는 픽셀 하나하나를 0~255 사이의 숫자로 인식한다. 컬러 이미지라면 RGB 각각 0~255 숫자 3개로 색을 표현한다.

# 예를 들면
image = [
    [255, 0, 0],  # 빨간색 픽셀
    [0, 255, 0],  # 초록색 픽셀
    [0, 0, 255]   # 파란색 픽셀
]

AI는 이 숫자들의 조합 속에서 패턴을 찾아내고, 이 패턴을 기반으로 이미지를 인식한다.

 

AI가 이미지를 읽는 방법

AI는 이미지를 필터(커널)라는 작은 창으로 훑으면서 경계선, 색 변화 같은 특징을 뽑아낸다. 이때 사용되는 대표적인 모델이 CNN(합성곱 신경망)이다. CNN은 다음과 같은 단계로 구성된다:

  • 합성곱 계층: 입력 이미지에서 특징을 추출
  • ReLU 계층: 비선형성을 부여하여 복잡한 패턴 처리 가능
  • 풀링 계층: 정보 요약 및 위치 불변성 확보

이 과정을 반복하면서 이미지의 저차원 데이터를 고차원 특징으로 바꾸고, 마지막엔 Fully Connected Layer를 통해 최종적으로 분류나 예측 작업을 수행한다.

 

AI가 고양이와 개를 구분하는 법

AI는 수천 장의 고양이와 개 사진을 학습해 각 특징을 스스로 발견한다. 예를 들면:

  • 고양이: 뾰족한 귀, 작은 코, 유선형 얼굴
  • 개: 둥근 얼굴, 넓은 코, 다양한 귀 모양
    학습 과정에서는 예측 결과와 실제 정답 간의 오차를 계산해 이를 줄이도록 모델을 개선한다. 여기에는 대표적으로 CrossEntropy Loss 함수가 사용된다.

 

AI가 실생활에서 쓰이는 곳

AI의 이미지 인식 기술은 다음과 같은 분야에서 활용된다:

  • 스마트폰 얼굴 인식 (예: FaceNet, ArcFace)
  • 자율주행차 객체 탐지 (예: YOLO, SSD, Faster R-CNN)
  • 의료 영상 진단 (예: U-Net, Mask R-CNN)
  • 쇼핑앱 이미지 검색 (예: CLIP)

 

AI의 한계: 보는 게 아니라 계산하는 것

AI는 실제로 '보는 것'이 아니라 숫자 계산을 통해 패턴을 인식한다. 인간처럼 직관적으로 맥락을 이해하는 것이 아니라, 수치화된 패턴과 규칙에 기반한다. 따라서 Adversarial Attack처럼 작은 픽셀 변화에도 쉽게 잘못된 결과를 낼 수 있다.

 

LLM은 이미지를 어떻게 볼까?

LLM도 원래는 텍스트만 처리했지만, 최근 GPT-4V 같은 멀티모달 모델은 이미지를 입력으로 받을 수 있게 됐다. 이 경우 이미지는 Vision Transformer(ViT) 같은 시각 모델을 통해 시퀀스 토큰 벡터로 변환된다. 이 벡터는 LLM이 텍스트 토큰과 같은 방식으로 처리하게 된다.

# 가상의 흐름
image_vector = ViT(image_input)  # 이미지 -> 벡터
result = LLM(image_vector)       # 벡터 -> 텍스트 해석

CLIP, Flamingo, GPT-4V 같은 모델은 이런 멀티모달 통합 아키텍처를 통해 이미지와 텍스트를 동일한 문맥에서 처리한다. 다만, LLM 역시 이미지를 '본다'기보다는 벡터 형태로 해석한다는 점을 이해하는 것이 중요하다.

 


 

이번 정리를 통해 AI와 LLM이 이미지를 인식하고 처리하는 과정을 대략적으로 이해할 수 있었다. 결국 학습된 벡터 패턴들을 토대로 보는거였구나.