분포 외 데이터(OOD)란? AI가 학습 때와 다른 입력을 만났다는 뜻
TL;DR
분포 외 데이터(Out-of-Distribution, OOD)는 AI 모델을 학습시킨 데이터와 다른 시기, 조건 또는 환경에서 수집된 입력입니다. 처음 보는 입력이라고 모두 OOD인 것은 아닙니다. 학습 데이터와 비슷한 방식으로 만들어진 새 사례는 분포 안 데이터일 수 있습니다. OOD 입력은 모델 성능을 떨어뜨리거나 높은 확신의 오답을 만들 수 있으므로 입력 범위를 기록하고, 별도 테스트와 감지 기준, 사람 검토나 안전한 대체 절차를 함께 마련해야 합니다.
핵심 3줄 요약
- 핵심 1
OOD는 모델이 배운 데이터 환경과 새 입력의 환경이 다르다는 뜻입니다. 같은 종류의 새 사례인지, 촬영·수집 시기·사용자·장비·업무 조건이 달라졌는지를 함께 봅니다. - 핵심 2
이상치나 데이터 드리프트와 완전히 같은 말은 아닙니다. OOD는 개별 입력이나 데이터 묶음이 학습 분포 밖에서 왔는지 묻고, 드리프트는 운영 데이터 분포가 시간에 따라 달라지는 흐름을 봅니다. - 핵심 3
확신 점수 하나만으로 안전을 보장할 수 없습니다. OOD 감지기도 놓치거나 정상 입력을 막을 수 있으므로 임계값, 업무별 테스트, 사람 검토와 안전한 대체 동작이 필요합니다.
이 글에서 다룰 내용
- 분포 외 데이터의 한 문장 정의와 분포의 뜻
- 상품 사진 검사로 이해하는 쉬운 예시
- OOD 입력을 발견하고 처리하는 순서
- 이상치, 새로움 감지, 데이터 드리프트, 적대적 예제와의 차이
- 문서 AI, 추천, 챗봇과 AI 자동화에서 쓰는 방법
- 감지 점수와 재학습에서 주의할 점
- 자주 묻는 질문과 공식 출처
분포 외 데이터를 한 문장으로 정의하면 무엇인가요?
분포 외 데이터는 AI 모델의 학습 데이터를 모은 시기·조건·환경과 다른 곳에서 들어와, 모델이 배운 데이터 생성 범위 밖에 있을 가능성이 큰 입력입니다.
NIST 용어집은 OOD를 모델 학습 데이터와 다른 시기에 수집됐거나, 다른 조건 또는 환경에서 수집됐을 수 있는 데이터로 정의합니다. 여기서 분포는 파일 목록이 아니라 값과 패턴이 나타나는 방식입니다. 이미지의 밝기와 촬영 각도, 문서 형식과 언어, 센서 종류, 고객 집단, 계절 같은 조건이 분포를 만듭니다.
Google 머신러닝 용어집은 머신러닝을 설명하며, 학습된 모델이 같은 분포에서 나온 새로운 데이터에 예측을 수행한다고 짚습니다. 모델이 한 번도 보지 못한 새 사진이라도 학습 사진과 비슷한 장비·조명·대상으로 촬영됐다면 분포 안 데이터일 수 있습니다. 반대로 익숙한 대상이 찍혔더라도 야간 적외선 카메라처럼 수집 조건이 크게 달라지면 OOD가 될 수 있습니다.
OOD는 모델과 작업에 상대적인 개념입니다. 같은 영수증 이미지도 다양한 문서를 학습한 범용 모델에는 익숙할 수 있지만, 정해진 양식의 세금계산서만 학습한 추출 모델에는 분포 밖 입력일 수 있습니다.
한 줄 정리: OOD는 AI가 그 사례를 처음 봤다는 말이 아니라, 그 사례가 AI가 배운 데이터 환경과 다른 방식으로 만들어졌다는 뜻입니다.
쉬운 예시로 이해해 볼까요?
감자나라ai님이 감자 선별 공장에서 불량 상품을 찾는 이미지 AI를 운영한다고 가정해 보겠습니다. 모델은 밝은 실내 조명 아래에서 위쪽 카메라로 촬영한 감자 사진을 학습했습니다. 정상, 멍, 싹이라는 세 범주를 구분하도록 만들었습니다.
새로 들어온 감자 사진이 같은 카메라와 조명, 같은 크기 기준으로 촬영됐다면 처음 보는 사진이어도 학습 분포와 비슷합니다. 이 경우 기존 평가 결과를 운영 판단에 참고할 수 있습니다.
카메라를 측면으로 옮기고 조명을 파란색으로 바꾸거나, 컨베이어에 흙과 포장 비닐이 함께 들어오면 조건이 달라집니다. 감자라는 대상은 같아도 픽셀 패턴과 배경, 촬영 각도가 학습 데이터와 멀어질 수 있습니다. 이런 입력이 OOD 후보입니다.
더 분명한 예로 영수증 사진이 들어왔다고 해 보겠습니다. 모델의 선택지가 정상, 멍, 싹뿐이면 영수증에도 셋 중 하나를 억지로 붙일 수 있습니다. 일부 신경망은 분포 밖 입력에도 높은 확신 점수를 낼 수 있습니다. 높은 숫자만으로 익숙한 입력이나 정확한 판단을 보증할 수 없습니다.
이때 안전한 시스템은 감자 범주를 바로 확정하지 않습니다. 입력 감지 점수가 기준을 넘으면 판정을 보류하고 사람 검토로 보내거나, 다시 촬영해 달라고 요청합니다. 원본 입력과 촬영 장비, 시간, 감지 점수, 최종 검토 결과를 기록해 다음 평가와 개선에 씁니다.
쉬운 예시: 같은 교과서 범위의 새 문제는 처음 봐도 풀 수 있지만, 시험지에 악보나 외국 법률 문서가 나오면 배운 범위와 다릅니다. OOD는 정답을 모른다는 표시보다 시험 범위가 달라졌다는 경고에 가깝습니다.
OOD 입력은 어떤 순서로 다뤄야 하나요?
1. 모델이 맡을 입력 범위를 정합니다
언어, 문서 종류, 이미지 장비, 해상도, 사용자 집단, 지역, 수집 기간처럼 정상 운영에서 예상하는 조건을 적습니다. 범위를 기록하지 않으면 무엇이 분포 안이고 밖인지 판단하기 어렵습니다.
2. 학습·검증 데이터의 기준을 남깁니다
특성 값의 분포, 범주 비율, 결측값, 장비와 수집 환경, 전처리 버전을 기록합니다. 이미지나 자유 형식 텍스트는 대표 사례와 임베딩 같은 표현을 함께 점검할 수 있습니다.
3. 운영 입력을 관찰합니다
새 입력의 형식과 품질, 특성 값, 출처 환경을 수집합니다. 개인정보와 민감 정보는 필요한 범위만 기록하고 보존 기간과 접근 권한을 따로 정해야 합니다.
4. 분포 차이와 감지 점수를 계산합니다
거리, 밀도, 별도 분류기, 앙상블의 불확실성 같은 방법으로 새 입력이 기준과 얼마나 다른지 추정합니다. 모든 데이터와 모델에 통하는 단일 OOD 감지기는 없습니다.
5. 업무 위험에 맞는 동작을 연결합니다
낮은 위험의 추천 화면은 결과를 줄이거나 일반 목록을 보여 줄 수 있습니다. 의료, 금융, 안전 검사처럼 오류 비용이 큰 업무는 자동 결정을 멈추고 사람 검토나 추가 확인으로 보냅니다.
6. 검토 결과를 라벨과 함께 남깁니다
실제 OOD였는지, 정상 입력을 잘못 막았는지, 모델이 어떤 오류를 냈는지 기록합니다. 이 결과로 임계값과 테스트 세트를 개선합니다.
7. 재평가한 뒤 필요한 경우에만 모델을 갱신합니다
새 데이터가 정확히 라벨링됐고 운영 범위에 계속 들어올 사례인지 확인합니다. 감지된 입력을 그대로 학습에 넣으면 오류와 공격 데이터까지 섞일 수 있습니다.
실전 팁: OOD 감지 결과는 통과 또는 차단 한 줄로 끝내지 말고, 입력 조건·감지 점수·모델 출력·최종 사람 판단을 한 기록으로 묶어야 임계값을 조정할 수 있습니다.
AI를 사용할 때 왜 중요한가요?
첫째, 운영 성능은 테스트 점수와 다를 수 있습니다. 테스트 데이터가 학습 환경과 비슷하면 높은 점수를 얻어도 실제 고객, 새 장비, 다른 계절의 입력에서는 성능이 떨어질 수 있습니다. Google Cloud 문서도 운영 데이터가 학습 데이터에서 벗어나면 모델 성능이 나빠질 수 있다고 설명합니다.
둘째, 높은 확신의 오답을 줄이는 데 도움이 됩니다. Google Research의 OOD 연구는 가까운 분포 외 데이터를 찾는 일이 여전히 어렵고, 기존 방식이 OOD 입력에 높은 점수를 줄 수 있음을 보여 줍니다. 확신 점수만 보고 자동 실행하는 대신 입력 자체가 예상 범위에 있는지 따로 확인해야 합니다.
셋째, 안전한 대체 절차를 설계할 수 있습니다. 답을 억지로 만들기보다 사람 검토, 추가 질문, 재촬영, 지원하지 않는 입력 안내, 일반 규칙 기반 처리로 전환할 수 있습니다. OOD 감지의 목적은 모든 낯선 사례를 막는 것이 아니라, 검증되지 않은 자동 판단의 범위를 줄이는 데 있습니다.
넷째, 데이터 수집 문제를 일찍 발견할 수 있습니다. 카메라 교체, 문서 양식 변경, 센서 오류, 새 지역 출시처럼 운영 조건이 바뀌면 입력 분포도 달라집니다. 모델 오류가 늘어난 뒤에야 알아차리기보다 입력 단계에서 변화를 확인할 수 있습니다.
다섯째, 모델 업데이트의 근거를 만들 수 있습니다. OOD 사례가 일시적인 오류인지 앞으로 계속 처리해야 할 새 업무인지 구분하면 재학습 범위와 우선순위를 정하기 쉬워집니다. 새 범위를 받아들이기로 했다면 대표 데이터와 평가 기준을 먼저 마련합니다.
여섯째, AI 제품의 책임 범위를 분명히 할 수 있습니다. 어떤 언어, 파일, 고객 집단과 상황에서 검증했는지 사용자에게 알려 주면 지원하지 않는 입력을 모델이 확실히 안다고 오해하는 일을 줄일 수 있습니다.
핵심 인사이트: OOD 점검은 모델이 무엇을 아는지 추측하는 일이 아니라, 어떤 데이터 환경에서 검증됐고 지금 입력이 그 환경과 얼마나 다른지 확인하는 운영 절차입니다.
헷갈리는 용어와 무엇이 다른가요?
OOD와 처음 보는 데이터
모델은 운영에서 대부분 새로운 사례를 만납니다. 학습 사진과 같은 조건으로 찍은 새 감자 사진은 처음 보는 데이터지만 분포 안에 있을 수 있습니다. OOD는 중복 여부가 아니라 데이터가 만들어진 조건과 패턴의 차이를 봅니다.
OOD와 이상치(Outlier)
이상치는 같은 데이터 묶음 안에서 다른 값들과 멀리 떨어진 관측값을 가리키는 경우가 많습니다. OOD는 새 입력이 학습 분포와 다른 환경에서 왔는지를 강조합니다. 극단적으로 큰 정상 거래는 이상치일 수 있지만 운영 범위 안에 있을 수 있고, 값은 평범해 보여도 전혀 다른 센서에서 온 입력은 OOD일 수 있습니다.
OOD와 새로움 감지(Novelty Detection)
scikit-learn 문서는 새로움 감지를 비교적 깨끗한 학습 데이터로 정상 영역을 학습한 뒤, 새 관측값이 그 영역에서 벗어나는지 확인하는 작업으로 설명합니다. OOD 감지와 겹치는 부분이 많지만 구현 문맥에 따라 이름과 가정이 달라집니다. 사용한 도구가 어떤 데이터를 정상으로 보고 어떤 점수를 반환하는지 확인해야 합니다.
OOD와 데이터 드리프트(Data Drift)
OOD는 개별 입력이나 입력 묶음이 학습 분포 밖에 있는지를 말할 수 있습니다. 데이터 드리프트는 운영 데이터 분포가 이전 기준에서 시간에 따라 달라지는 현상입니다. 낯선 입력 한 건이 OOD일 수 있고, 비슷한 변화가 계속 쌓이면 드리프트 신호가 될 수 있습니다.
OOD와 학습-서빙 편차(Training-Serving Skew)
학습-서빙 편차는 학습 단계와 운영 단계에서 데이터 처리나 특성 분포가 달라진 상태입니다. 전처리 코드 차이, 단위 변환 누락처럼 파이프라인 문제로도 생깁니다. OOD는 새 입력이 학습 분포 밖인지에 초점을 두며, 두 문제는 함께 나타날 수 있습니다.
OOD와 모델 드리프트(Model Drift)
모델 드리프트는 시간이 지나며 모델의 예측 성능이나 관계가 변하는 넓은 운영 문제입니다. OOD와 데이터 드리프트는 원인이 될 수 있지만 모델 드리프트를 설명하는 유일한 이유는 아닙니다. 정답 기준 변경, 정책 변화, 피드백 루프도 성능을 바꿀 수 있습니다.
OOD와 적대적 예제(Adversarial Example)
적대적 예제는 모델을 속이려고 의도적으로 만든 입력입니다. OOD는 새 카메라나 계절 변화처럼 공격 의도 없이도 생깁니다. 적대적 입력이 분포 밖일 수는 있지만 OOD라고 모두 공격은 아닙니다.
OOD와 업무 범위 밖(Out of Scope)
업무 범위 밖은 제품 정책이 지원하지 않는 요청을 뜻합니다. OOD는 데이터 분포에 관한 기술적 개념입니다. 고객지원 챗봇에 의료 진단을 요청하면 업무 범위 밖이지만, 거대한 언어 모델의 실제 사전 학습 분포를 모른다면 그 문장이 통계적으로 OOD라고 단정하기는 어렵습니다.
비교 정리: OOD는 학습 분포와 새 입력의 차이, 이상치는 데이터 안의 드문 값, 드리프트는 시간에 따른 분포 변화, 적대적 예제는 모델을 속이려는 입력입니다.
AI 제품과 자동화에서는 어디에서 만나나요?
이미지 검사와 컴퓨터 비전
공장 카메라, 의료 영상, 자율주행 센서는 장비·조명·날씨·각도 변화에 민감합니다. 새 카메라를 연결하기 전 기존 모델과 OOD 감지 기준을 실제 촬영 데이터로 다시 시험합니다.
문서 AI와 OCR
정해진 청구서 양식을 처리하던 시스템에 손글씨 메모, 다른 국가의 세금계산서, 흐릿한 모바일 사진이 들어올 수 있습니다. 문서 종류와 품질을 먼저 판별하고 지원하지 않는 입력은 별도 검토 큐로 보냅니다.
이상 거래와 보안 탐지
새 결제 수단이나 지역 출시 때문에 정상 행동의 패턴이 바뀔 수 있습니다. 낯선 입력을 모두 사기로 막으면 정상 고객 피해가 생깁니다. OOD 점수는 차단 결정 하나로 쓰기보다 추가 인증이나 사람 검토를 여는 신호로 사용합니다.
추천과 검색
신규 상품, 새 사용자, 유행 변화는 기존 상호작용 데이터와 다릅니다. 개인화 근거가 부족하면 인기 목록이나 편집 추천으로 전환하고, 새 상호작용이 쌓인 뒤 모델을 다시 평가할 수 있습니다.
챗봇과 생성형 AI
고객지원용 AI가 계약서 해석이나 의료 조언처럼 검증하지 않은 질문을 받을 수 있습니다. 범용 LLM의 학습 분포는 운영자가 정확히 알기 어려우므로 모든 낯선 프롬프트를 OOD라고 부르기보다 지원 업무 범위, 검색 가능한 자료, 평가 세트와 안전 정책을 기준으로 처리합니다.
AI 에이전트와 업무 자동화
에이전트가 예상하지 못한 파일 형식, 도구 응답, 화면 구조를 받으면 잘못된 다음 행동을 선택할 수 있습니다. 입력 검증, 도구 결과 스키마, 최대 실행 범위와 사람 승인 지점을 함께 둡니다.
사용할 때 무엇을 주의해야 하나요?
첫째, OOD를 절대적인 라벨처럼 쓰지 않습니다. 어떤 모델과 학습 데이터, 전처리, 업무 범위를 기준으로 했는지에 따라 같은 입력의 판단이 달라집니다. 기준 모델과 데이터 버전을 함께 기록합니다.
둘째, 확신 점수 하나를 OOD 감지기로 여기지 않습니다. 분류 모델이 높은 확신으로 틀릴 수 있고 낮은 확신의 정상 입력도 있습니다. OOD 전용 평가와 업무별 임계값이 필요합니다.
셋째, 감지기도 완벽하지 않다는 점을 전제로 합니다. Google Research는 분포가 가까운 OOD를 구분하는 일이 어렵다고 설명합니다. 탐지율뿐 아니라 정상 입력을 잘못 막는 비율과 놓친 OOD의 비용을 함께 봅니다.
넷째, 평균 분포만 보고 개별 위험을 놓치지 않습니다. 전체 통계가 비슷해도 특정 지역이나 소수 사용자 집단에서 큰 차이가 날 수 있습니다. 중요한 하위 집단과 조건을 나눠 확인합니다.
다섯째, OOD 감지와 정확도 평가를 분리하지 않습니다. 입력이 낯설다는 점수만으로 실제 모델 오류를 알 수 없습니다. 분포 안·가까운 OOD·먼 OOD 테스트 세트에서 모델 성능과 감지 성능을 함께 측정합니다.
여섯째, 감지된 데이터를 곧바로 재학습에 넣지 않습니다. 잘못 수집된 값, 공격 입력, 개인정보, 틀린 라벨이 섞일 수 있습니다. 출처와 품질을 검토하고 운영 범위에 포함할지 먼저 결정합니다.
일곱째, 입력 로그의 개인정보를 보호합니다. OOD 원인을 찾으려고 원문·이미지·사용자 정보를 무기한 보관하면 새로운 위험이 생깁니다. 최소 수집, 접근 통제, 보존 기간과 삭제 기준을 적용합니다.
여덟째, 차단 뒤의 사용자 경험을 준비합니다. 판정을 멈췄다면 지원하지 않는 형식, 다시 촬영하는 법, 담당자 검토 예상 절차를 알려 줍니다. 설명 없는 실패 화면은 안전 조치를 제품 오류처럼 보이게 만듭니다.
주의: OOD 감지 점수가 높다는 이유만으로 입력을 삭제하거나 사용자를 차단하지 마세요. 업무 위험에 맞춰 재확인, 대체 처리, 사람 검토 중 어떤 동작을 할지 먼저 정해야 합니다.
자주 묻는 질문
Q1. OOD 입력이면 AI 답변은 반드시 틀리나요?
아닙니다. 모델이 우연히 맞힐 수도 있고 일부 변화에는 잘 견딜 수도 있습니다. 다만 기존 테스트 점수를 그대로 믿기 어려운 조건이므로 별도 평가나 검토가 필요하다는 경고로 봐야 합니다.
Q2. AI가 처음 보는 데이터는 모두 OOD인가요?
아닙니다. 운영 입력은 대부분 처음 보는 사례입니다. 학습 데이터와 비슷한 조건과 생성 과정에서 나온 새 사례라면 분포 안 데이터일 수 있습니다.
Q3. 모델의 확신 점수가 낮으면 OOD인가요?
항상 그렇지는 않습니다. 정상 범위 안의 어려운 사례도 낮은 점수를 받을 수 있고, OOD 입력이 높은 확신 점수를 받을 수도 있습니다. 확신 점수만으로 판단하지 말고 별도 감지 방법과 검증 데이터를 사용해야 합니다.
Q4. OOD와 데이터 드리프트는 어떻게 다른가요?
OOD는 특정 입력이나 데이터 묶음이 학습 분포 밖에서 왔는지를 묻습니다. 데이터 드리프트는 운영 데이터의 분포가 이전 기준에서 시간에 따라 변하는 현상입니다. 반복되는 OOD 입력이 드리프트 신호로 이어질 수 있습니다.
Q5. 챗GPT 같은 생성형 AI에도 OOD 개념을 적용할 수 있나요?
개념은 적용할 수 있지만 범용 LLM의 실제 사전 학습 분포를 사용자가 정확히 알기는 어렵습니다. 제품 운영에서는 지원 업무, 연결한 자료, 평가 세트와 안전 정책을 기준으로 예상 밖 입력을 구분하고, 수학적 OOD라고 단정하지 않는 편이 정확합니다.
출처
- NIST CSRC Glossary, Out-of-Distribution
- NIST, Adversarial Machine Learning: A Taxonomy and Terminology of Attacks and Mitigations
- Google for Developers, Machine Learning Glossary
- scikit-learn, Novelty and Outlier Detection
- Google Cloud, BigQuery ML Model Monitoring Overview
- Google Research, Exploring the Limits of Out-of-Distribution Detection
마무리
분포 외 데이터는 AI 모델이 검증된 데이터 환경과 지금 들어온 입력의 환경이 다를 수 있다는 신호입니다. 새 사례라는 이유만으로 OOD가 되는 것은 아니며, 높은 확신 점수도 분포 안 입력이나 정확한 답을 보증하지 않습니다.
감자나라ai님이 AI 제품이나 자동화를 운영한다면 세 가지부터 확인해 보세요. 모델이 맡을 입력 범위를 적었는가, 그 범위와 다른 입력을 찾을 테스트가 있는가, 감지 뒤 사람 검토나 안전한 대체 동작이 준비돼 있는가입니다. 이 기준이 있어야 낯선 입력을 무조건 막지 않으면서도 검증되지 않은 자동 판단을 줄일 수 있습니다.
