2026.09 · (주)페블러스 데이터 커뮤니케이션팀

읽는 시간: ~6분 · 탐색기: 마음껏 · English

핵심 요약

같은 잎 사진 300장도 어느 AI 모델의 눈으로 보느냐에 따라 '비슷한 사진'의 목록이 달라진다. 이 글은 그 차이를 설명하는 대신, 독자가 직접 눌러 확인하도록 탐색기를 연다.

탐색기에는 우간다 밭에서 스마트폰으로 찍은 강낭콩 잎 사진 300장이 들어 있다. 병 두 가지(모무늬병·녹병)와 건강한 잎이 100장씩이다. 네 가지 AI 모델이 이 사진들을 각각 고차원 벡터로 바꾼 값을 3차원 지도에 펼쳤고, 점 하나를 고르면 그 모델이 가장 가깝다고 계산한 이웃 사진 여덟 장이 원본 그대로 뜬다. 렌즈를 바꾸면 같은 사진의 이웃이 바뀐다.

한 걸음 더 들어가, 잎 세 장은 신경망을 지나는 30단계의 실제 중간값을 저장해 두었다. 입력에서 토큰으로, 24개 블록을 거쳐 마지막 정규화까지, 단계를 넘기며 세 장의 차이가 어디서 벌어지는지 볼 수 있다. 여섯 장은 196개 조각(패치)별 유사도 지도를 열어 볼 수 있다.

화면의 사진·좌표·이웃·층별 값은 전부 저장된 실제 측정값이다. 원리를 보여 주려고 수학으로 만든 예제는 '합성'이라고 따로 적었다. 이 탐색기는 작물 병을 진단하는 서비스가 아니고, 유사도 지도는 모델이 '왜' 그렇게 봤는지에 대한 설명이 아니다.

탐색기

아래 화면에서 바로 만질 수 있다. 화면이 좁으면 새 창에서 여는 편이 낫다. 데이터 약 100MB를 처음 한 번 내려받는다.

새 창에서 크게 열기 ↗

탐색기 안에서 모델을 새로 돌리지 않는다. 표시되는 값은 모두 미리 계산해 저장한 결과다. 3차원 지도는 마우스로 돌리고, 점을 누르면 이웃이 바뀐다.

이렇게 써 본다

렌즈를 바꿔 본다

'임베딩 탐색'에서 모델(렌즈)을 하나씩 바꾸면 300개 점의 배치가 통째로 달라진다. 세 가지 색(병 두 가지와 건강)이 갈라지는 정도가 렌즈마다 다른 것부터 눈에 들어온다.

점 하나를 고르고 이웃을 본다

점을 누르면 원본 사진과 그 모델이 계산한 가장 가까운 여덟 장이 뜬다. 병반의 모양이 닮은 사진이 모였는지, 아니면 잎 색이나 배경이 닮은 사진이 모였는지 직접 비교해 본다. 같은 점을 다른 렌즈로 다시 눌러 보면 답이 바뀐다.

층을 넘기며 세 장을 따라간다

'층별 텐서'에서 모무늬병·녹병·건강 잎 한 장씩의 30단계를 넘긴다. 어느 블록에서 세 장의 거리가 벌어지는지, 저장된 실제 숫자를 그대로 본다.

사진 한 장을 196조각으로 열어 본다

'실제 패치'에서 여섯 장 중 하나를 고르면 조각별 유사도 지도가 열린다. 조각 하나를 누르면 나머지 195조각이 그 조각과 얼마나 닮았는지 색으로 보인다. 이것은 모델이 '어디를 봤다'는 뜻이 아니라, 조각 표현끼리의 거리다.

무엇을 볼 수 있나

1. 같은 잎, 다른 이웃

모델마다 '비슷하다'의 기준이 다르다. 한 렌즈에서 병반 모양으로 묶이던 사진이 다른 렌즈에서는 잎의 색과 배경으로 묶인다. 렌즈를 바꾸는 순간 이웃 여덟 장이 갈아 끼워지는 것을 보면, 임베딩이 사진의 '의미'가 아니라 '어떤 모델이 본 사진'이라는 점이 분명해진다.

2. 출력뿐 아니라 층 안으로

최종 벡터만 보면 세 장이 얼마나 다른지만 알 수 있다. 저장된 30단계를 넘기면 그 차이가 어느 블록에서 커지는지가 보인다. 다만 차이가 벌어지는 지점이 곧 '병을 알아본 순간'은 아니다. 표현이 달라진 곳과 판단이 일어난 곳은 다른 문제다.

3. 렌즈가 좋으면 고르기도 좋아지는가

페블러스는 이 300장에서 학습에 쓸 120장을 고르는 실험을 이미 했다. DINOv3 대형 모델의 공간에서 고른 120장은, 클래스 수를 맞춰 무작위로 고른 120장보다 균형 정확도가 3.35%포인트 높았다. 이 수치는 그 렌즈·그 평가 조건에서 나온 결과이고, 다른 렌즈나 다른 데이터로 일반화하지 않는다. 탐색기의 '실험 결과' 절에 조건과 불확실성을 그대로 적었다.

무엇을 알 수 없나

  • 진단이 아니다. 이 탐색기는 잎 사진으로 병을 판정하는 서비스가 아니다. 라벨은 수집 현장에서 전문가가 붙인 것이고, 사진만으로 병원체를 확진한 것도 아니다.
  • 유사도는 이유가 아니다. 조각별 유사도 지도와 이웃 목록은 표현 사이의 거리다. 모델의 주의(attention)나 인과적 설명이 아니다.
  • 3차원 지도는 일부만 보여 준다. 1,024차원 벡터를 세 축으로 눌러 그린 그림이라 고차원 구조의 일부만 남는다. 이웃 여덟 장은 지도가 아니라 원래 공간에서 계산했다.
  • 300장은 전체가 아니다. 공개 데이터셋 1,295장 가운데 학습용에서 클래스별 100장씩 고른 부분집합이다. 층별 값은 세 장, 조각별 지도는 여섯 장에만 있다.
  • 합성 예제는 실측이 아니다. 학습 원리를 보여 주는 EMA 궤적과 Gram 실험은 수학으로 만든 모형이다. 화면에 '합성'이라고 표시했고, 실제 훈련 기록이 아니다.

데이터·출처·권리

사진
iBean 데이터셋 학습용 가운데 300장(클래스별 100장, 500×500). Makerere AI Lab과 우간다 국립작물자원연구소(NaCRRI)가 우간다 밭에서 스마트폰으로 수집하고 현장에서 전문가가 분류했다. 원 저장소는 MIT 라이선스다. iBean 저장소 · TensorFlow Datasets 카탈로그
모델
네 가지 렌즈는 DINOv2-L, DINOv3-L, SigLIP 2, C-RADIOv4-H다. 기준 렌즈는 메타의 DINOv3 대형 모델(ViT-L, 1,024차원)이다. 층별 값과 조각별 지도는 이 모델에서 저장했다. 모델 가중치는 탐색기에 들어 있지 않고, 탐색기는 모델을 실행하지 않는다. DINOv3 논문(2025) · 공식 코드와 모델 카드
계산
3차원 지도는 벡터를 정규화하고 평균을 뺀 뒤 주성분 세 축으로 투영했다. 이웃은 원래 공간에서 코사인 유사도로 전수 비교해 상위 여덟 장을 골랐다. 자세한 절차와 파일 해시는 탐색기의 '무엇을 관찰했고, 무엇을 가정했는가' 절에 있다.
내려받기
연구 보고서(Markdown) · 임베딩·이웃 데이터(JSON) · 근거 원장(JSON). 원 데이터와 모델의 사용 조건은 각 출처의 라이선스를 따른다.
만든 과정
이 탐색기는 페블러스가 데이터 선택 실험을 하면서 만든 연구 워크벤치의 2026년 9월 25일 스냅샷이다. 코드와 설명문은 AI 코딩 도구의 도움을 받아 작성했고, 데이터 검증과 발행 판단은 사람이 했다.

Tangible Data Story — 만질 수 있는 데이터 기사

이 글은 탠저블 데이터의 두 갈래 가운데 데이터 저널리즘 기사 쪽, Tangible Data Story의 첫 편이다. 다른 한 갈래인 Tangible Data Art와 함께 허브에서 볼 수 있다.

탠저블 데이터 허브로 →