← 프리뷰 목록으로

데이터 속의 유령들

게시일: 2025년 11월 22일 | 원문 작성일: 2021년 3월 26일 | 저자: Vicki Boykis | 원문 보기

핵심 요약

  • 암묵적 지식은 명시적으로 배울 수 없는 지식—데이터 작업의 대부분은 실전 경험을 통해서만 습득됩니다
  • 데이터 품질은 ML의 가장 중요한 요소지만, 가장 과소평가되고 주목받지 못하는 작업입니다
  • 정규분포는 거짓말—현실 세계 데이터는 대부분 멱함수 분포(power law)를 따르며, 이는 통계 수업에서 배운 것과 완전히 다릅니다
  • 엔지니어링 vs 분석의 근본적 갈등: 엔지니어는 속도와 안정성을, 분석가는 데이터 품질과 정확성을 우선시합니다
  • 조직 정치가 기술 역량만큼 중요—데이터는 의사결정의 끝이 아니라 대화의 시작입니다

서론: 암묵적 지식 vs 명시적 지식

최근 생각하고 있는 주제가 있어요. 저는 완전히 원격으로, 주로 비동기적으로 운영되는 회사에서 일하고 있어요. 많은 회사들이 이제 이런 방식으로 일하잖아요. 그러다 보니 암묵적 지식과 명시적 지식의 차이에 대해 생각하게 됐어요.

명시적 지식은 글로 읽을 수 있는 모든 것, 공유하고 전달하기 쉬운 지식이에요. 반면 암묵적 지식은 사람들이 맥락을 통해 습득하는 지식인데, 명확히 설명하기가 매우 어려운 지식이죠.

“아이들은 자연스럽고 의미 있는 소통을 통해 첫 언어를 습득해요. 이런 ‘증거’를 통해 자동으로 언어 구조에 대한 복잡한 지식을 획득하죠. 하지만 역설적으로 이 지식을 설명할 수는 없어요… 이것이 명시적 지식과 암묵적 지식의 차이예요. 어린 아이에게 복수형을 어떻게 만드는지 물으면 모른다고 하지만, ‘여기 wug가 하나 있고, 여기 또 하나 있어, 이제 몇 개지?‘라고 물으면 ‘two wugs’라고 답할 수 있어요.”

데이터 작업 속의 유령 지식

머신러닝에서 가장 기본적인 작업은 데이터 정제와 엔지니어링 파이프라인 구축이에요. 모든 조각들을 맞춰서 작동하게 만드는 세밀하고 지루한 작업이죠.

하지만 이걸 배울 수 있는 방법은 없어요. 깨끗하지 않은 데이터를 많이 다뤄보고, 많은 모델을 만들어봐야 하죠. 이 아주 근본적인 사실은 현장에서 경험을 쌓기 전까지는 분야 신입자들에게 전혀 명백하지 않아요. 더 나쁜 건, 이런 암묵적 지식을 줄 가이드, 팜플렛, 교과서, 강의가 존재하지 않는다는 거예요.

이런 지식을 David가 “유령 지식(ghost knowledge)“이라고 불렀어요. 전문가 커뮤니티 안에는 존재하지만 절대 문서화되지 않고, 그 커뮤니티에 접근할 수 없다면 사실상 존재하지 않는 지식이죠.

데이터 품질: 최근에야 문서화되기 시작

깨끗한 데이터를 갖는 것은 “유령 지식” 범주에 속해요. 데이터 분야에서 오래 일해봤다면, 자신의 경험을 통해 고생하며 배우게 되는 것이죠. 이 지식이 체계적으로 문서화되기 시작한 건 아주 최근이에요.

Google이 2021년 1월에 발표한 논문이 있어요. 요약의 첫 부분은 이렇게 시작해요:

“AI 모델은 점점 더 건강과 환경 보호 같은 고위험 영역에 적용되고 있어요. 데이터 품질은 고위험 AI에서 더욱 중요해지는데, 암 발견, 야생동물 밀렵, 대출 할당 같은 예측에 더 큰 실질적 영향을 미치기 때문이죠. 역설적으로, 데이터는 AI에서 가장 저평가되고 주목받지 못하는 측면이에요.”

깨끗한 데이터가 모델 성능에 영향을 미친다고 공식적으로 언급한 걸 본 건 개인적으로 아마 이번이 처음일 거예요.

멱함수 법칙

통계 수업에서는 표본을 추출하는 모집단이 정규분포를 따른다고 가정해요. 즉, 데이터가 종 모양 곡선(bell curve)을 따르고, 대부분의 사람들이 평균에 가깝게 분포하며 소수의 이상치가 있다는 거죠.

하지만 제가 업계에서 본 실제 현상들은 대부분 종 모양 곡선을 따르지 않아요. 우리가 다루는 대부분의 데이터는 사람의 활동과 관련되어 있어요: 플랫폼의 사용자, 클릭, 백신이나 의료 치료 수혜, 식당 방문 등. 그리고 이런 데이터는 모두 멱함수 분포(power law distribution)처럼 보여요.

이건 본질적으로 소수의 사람들이 어떤 활동을 많이 하고, 나머지는 거의 하지 않는다는 의미예요.

실제 세계 사례들:

  • 부의 불평등 (파레토 법칙)
  • 포트폴리오 성장
  • 트위터 engagement
  • COVID-19 확산

이는 우리가 데이터를 같은 방식으로 다룰 수 없다는 의미예요. 특히 작은 표본의 데이터에서는요. 가우시안 분포와 파레토 분포는 근본적으로 달라요. 멱함수 분포에는 전형적인 값을 나타내는 평균이 없고, 신뢰구간을 계산할 수 있는 유한한 표준편차도 없어요.

이 규칙을 다루는 방법에는 통계적 함의와 비즈니스 함의가 모두 있어요. 특히, “평균” 사용자를 이해하는 것만큼이나 꼬리 부분 현상에 주의를 기울이는 것도 중요하다는 의미죠.

데이터 수집: 흐르는 강

분석하려는 이 데이터를 실제로 어떻게 얻을까요? 대부분의 경우, 매우, 매우 어렵고 주어진 데이터 프로젝트 작업의 대부분을 차지해요.

먼저 데이터를 수집하는 파이프라인을 구축해야 해요. 그다음 데이터를 정제해야 하고요.

더 어려운 점은 데이터를 다루는 건 흐르는 강을 다루는 것과 같아요. 사용자가 데이터를 입력하고, 엔지니어가 다른 것들을 로깅하고, 스토리지 접근 권한을 얻거나 잃으면서 데이터는 일시적이고 끊임없이 변해요.

데이터 검증 프로세스를 한 번만 하는 게 아니라, 많은 경우 상위(upstream) 프로세스가 변경되기 때문에 여러 번 해야 해요. 상위 프로세스를 제어하지 못하는 한, 데이터를 제어할 수 없어요.

더 놀라운 건 기술 업계에 데이터를 정제하는 표준 프로세스가 없다는 거예요. 이 문제가 너무 만연해서 이제 수백 개의 SaaS 솔루션이 있을 정도죠. 데이터를 정제하는 방법, 데이터가 깨끗한지 확인하기 위해 어떤 제약 조건을 설정해야 하는지, 심지어 어떤 도구를 사용해야 하는지에 대한 책도 없어요.

중복된 라인을 제거하는 bash 스크립트처럼 간단할 수도 있고, Redshift의 테이블 유효성을 매일 확인하는 Airflow 파이프라인일 수도 있고, Pandas의 여러 one-liner일 수도 있고, 데이터가 실제로 생성되는 지점에서 특정 데이터 제약 조건을 강제하는 것일 수도 있어요.

데이터 작업은 프로그래밍 작업이다

머신러닝이라는 게 시작된 지 오래됐지만, 우리는 아직 증기기관 시대에 있어요. 작은 데이터셋에서 벗어나 대규모의 복잡한 (주로) 클라우드 기반 분산 시스템으로 나아갈수록, 우리 모두는 개발자가 되어야 하고 좋은 개발 방식을 적용해야 해요.

오늘날 좋은 데이터 개발 방식은 뭘까요? 명확히 정의되고 재현 가능한 작업. 적절한 곳에서는 노트북을, 나머지는 작성되고 테스트된 모듈을. 코드에 대한 버전 관리. 그리고 문서화.

하지만 명심해야 할 건, 프로그래밍과 데이터 작업의 요구사항은 근본적으로 다르다는 거예요.

“분석 작업과 엔지니어링 작업 사이의 마찰은 항상 있을 거예요. 엔지니어링은 데이터를 코드 작성의 중요하지 않은 부산물로 보고, 분석은 코드 작성을 데이터에 도달하기 위한 성가신 번거로움으로 보죠.”

앱을 작성하는 개발자는 안정적이고 추적 가능해야 해요. 데이터를 보는 분석가는 데이터가 깨끗해야 하고요. 개발자는 정확한 데이터보다 빠르고 안정적인 앱을 우선하게 되고, 분석가는 어떤 프로세스를 일시 중지해서라도 좋은 데이터를 우선하게 되죠.

이는 주어진 애플리케이션에서 기능을 빠르게 출시하는 것과 그 기능을 로깅하고 이해하는 것 사이에 항상 충돌이 있다는 의미예요. 데이터 전문가가 그 간극을 메우고 의미를 만들어내야 하죠.

사람과 일하는 것이 가장 어렵다

소프트웨어 엔지니어링은 정말, 정말 어려워요. 많은 생각이 필요하고, 많은 움직이는 부품들이 있죠. 복잡한 시스템이 어떻게 작동하는지 이해해야 하고, 통계를 논리적으로 다루어야 하고, 분야의 최신 프레임워크를 따라잡아야 해요.

하지만 사람을 다루는 것은 더욱 어렵고, 종종 머신러닝 제품의 성공이나 실패의 핵심이에요.

어떤 수업에서도 다루지 않는 한 가지는 직장 정치를 다뤄야 한다는 거예요. 그리고 이 위계를 헤쳐나가는 데 얼마나 성공적인지가 실제 작업의 품질만큼이나 직장에서 여러분이 어떻게 인식되는지를 결정할 거예요.

직장 정치는 규모, 형태, 업종에 관계없이 모든 직장에 존재해요. 이는 단순히 인간 관계의 자연스러운 내적 작동이 누구에게 보고하고 누가 급여를 지불하는지에 의해 위계가 강제되는 구조에서 나타나는 것일 뿐이에요.

이런 구조를 다루는 법을 배우는 최고의 자원은 동료들과 이야기하고 기업 정치를 잘하는 사람들을 관찰하는 거예요. 하지만 더 중요한 건, 일상적으로 인간 관계를 다루는 데 능숙해지는 거죠.

사람들은 보통 데이터에 기반해서 움직이지 않는다

제가 배운 마지막 것은 회사들은 대부분 직관으로 운영된다는 거예요. 많은 회사들이 자신들이 데이터 주도적이라고 말할 거예요. 사람들은 이 아이디어를 좋아해요. 숫자(The Numbers)를 근거로 결정을 내린다는 것, 그리고 자신에 대해 그렇게 믿고 싶어하죠.

하지만 종종 데이터는 대부분 직관을 뒷받침하는 보조 증거로만 작용해요. 그리고 그 직관은 많은 요소에 달려 있어요—데이터를 제시하는 사람을 신뢰하는지, 회사에 대한 여러분의 관점이 무엇인지, 어떤 기업 정치가 작용하는지 등등.

이건 낙담하게 하려는 말이 아니에요. 숫자를 마음대로 만들어내고 어딘가에 갈 수 있다는 의미가 아니에요. 의미하는 건, 어떤 일을 하든 지식이 있고, 신뢰할 수 있고, 명확하게 소통할 수 있다는 것을 확립하는 게 중요하다는 거예요. 데이터 자체만큼이나 데이터를 둘러싼 논의가 중요하기 때문이죠.

더 낙관적으로 생각하면, 분석이나 대시보드는 대화의 시작이자 프레임 설정이어야 하지, 끝이 아니에요. 그리고 올바르게 프레임을 설정한다면, 그 대화를 이끄는 건 여러분이에요.

저자 소개: Vicki Boykis는 Machine Learning Engineer로 Tumblr, Automattic에서 근무했으며, 데이터 인프라, 분석 시스템, ML의 암묵적 지식을 전문으로 합니다.

원문: The ghosts in the data - Vicki Boykis (2021년 3월 26일)

생성: Claude (Anthropic)

총괄: (디노이저denoiser)