연구 질문을 가설로 바꾸는 순간, 반드시 함께 적어야 하는 것이 있다. "어떤 결과가 나오면 이 가설을 버릴 것인가" 이 반증 조건이 없는 주장은 실험을 아무리 돌려도 과학이 되지 않는다.
1강에서 좋은 연구 질문은 예/아니오나 숫자로 답할 수 있는 형태여야 한다고 했다. 가설(hypothesis)은 그 질문에 대해 연구자가 미리 내놓는 잠정적인 답이다. 질문이 "무엇을 알고 싶은가"라면, 가설은 "나는 결과가 이럴 것이라고 내기를 건다"에 해당한다.
LLM 실험 예시로 보면 차이가 분명하다.
| 구분 | 예시 |
|---|---|
| 연구 질문 | LLM은 한국어 초성 줄임말(예: "ㅇㅈ", "ㄱㅅ")의 의미를 이해하는가? |
| 가설 | 최신 상용 LLM은 한국어 초성 줄임말 4지선다 문제에서 무작위 기대치(25%)를 유의하게 넘는 정확도를 보일 것이다. |
| 반증 조건 | 4지선다 정확도가 25%와 통계적으로 구별되지 않으면 가설을 기각한다. |
가설은 질문보다 한 걸음 더 나아가 틀릴 수 있는 구체적 주장이 된다. 그리고 바로 이 "틀릴 수 있음"이 핵심이다.
반증 가능성(falsifiability)은 과학철학자 칼 포퍼(Karl Popper)가 제안한 기준으로, 어떤 관찰이나 실험 결과가 나오면 그 주장이 틀렸다고 판정할 수 있는가를 묻는다. 그런 결과를 하나라도 상상할 수 있으면 반증 가능한 주장이고, 어떤 결과가 나와도 주장이 살아남는다면 반증 불가능한 주장이다.
주의: 반증 가능하다는 것은 "틀렸다"는 뜻이 아니다. "틀렸는지 검사할 방법이 존재한다"는 뜻이다. 오히려 반증 가능한 가설일수록 검증을 통과했을 때 믿을 근거가 생긴다.
어떤 결과가 나와도 살아남는 주장은 실험으로부터 아무 정보도 얻지 못한다. 결과 A가 나와도 참이고 결과 B가 나와도 참이라면, 실험은 그 주장에 대해 아무것도 말해주지 않은 것이다. 정보를 주지 않는 주장은 예측을 하지 못하고, 예측을 못 하면 지식이 축적되지 않는다.
LLM 연구에서 흔히 보이는 반증 불가능한 주장의 예를 들면 이렇다.
이런 주장을 과학적 가설로 바꾸려면 판정 기준을 조작적으로 정의해야 한다. "진정한 이해"라는 말 대신 "학습 컷오프 이후 등장한 신조어 초성 줄임말에서도 컷오프 이전 줄임말과 통계적으로 구별되지 않는 정확도를 보인다"처럼, 관찰 가능한 결과로 번역하는 것이다(암기와 이해의 구별은 18강에서 다룬다).
반증 조건(falsification condition)은 가설 문서에 실험 전에 명시한, 가설을 기각하게 만드는 구체적 결과다. 다음 세 가지를 갖추면 좋은 반증 조건이다.
초성 줄임말 실험이라면 이렇게 쓸 수 있다.
가설: 모델 A는 초성 줄임말 4지선다에서 무작위 기대치 25%를 유의하게 넘는다.
반증 조건: 다중 시드 평균 정확도의 95% 신뢰구간이 25%를 포함하면 기각한다.
판정 불가: 문항 수가 사전 계산한 최소 표본 크기에 미달하면 판정하지 않는다.
반증 불가능한 표현과 반증 가능한 표현을 나란히 놓으면 고치는 요령이 보인다.
| 반증 불가능한 표현 | 반증 가능한 표현 |
|---|---|
| 모델이 초성 줄임말을 진정으로 이해한다 | 4지선다 정확도가 무작위 기대치 25%를 유의하게 넘는다 |
| 큰 모델이 대체로 더 잘한다 | 모델 B의 정확도가 모델 A보다 사전에 정한 검정에서 유의하게 높다 |
| 프롬프트를 잘 쓰면 성능이 오른다 | 사전 고정한 프롬프트 템플릿 2종 간 정확도 차이가 유의하다 |
| 신조어에는 약할 것이다 | 컷오프 이후 신조어 문항의 정확도가 이전 문항보다 유의하게 낮다 |
공통 패턴은 세 가지다. 추상 명사("이해", "성능")를 측정 가능한 지표로 바꾸고, 비교 대상(기준선)을 명시하고, 판정 방법을 실험 전에 고정한다.
반증 조건을 적어 두었더라도, 기각 결과가 나오면 가설을 살리려는 사후 수정의 유혹이 온다. "문항이 너무 어려웠다", "이 모델 버전이 유독 약했다", "온도 설정이 문제였다" 이런 보조 설명을 결과를 본 뒤에 덧붙여 가설을 계속 살려 두면, 사실상 반증 불가능한 주장으로 되돌아간 것이다. 보조 설명이 정말 의심된다면 그것을 새 가설로 세우고 새 실험으로 검증하면 된다. 이번 실험의 판정은 사전에 적은 조건대로 내린다.
이 문장들이 실험 전에 쓰였다는 사실 자체가 가치의 원천이다. 결과를 본 뒤에 쓴 동일한 문장은 아무 증거 가치가 없다. 왜 그런지가 다음 절의 주제다.
HARKing(Hypothesizing After the Results are Known)은 결과를 확인한 뒤에 그 결과에 맞는 가설을 만들어, 마치 처음부터 그 가설을 세우고 검증한 것처럼 보고하는 행위다. 실험을 여러 갈래로 돌려 보고, 그중 그럴듯하게 나온 갈래를 골라 "우리는 이것을 예측했다"고 쓰는 순간 HARKing이 된다.
중요한 것은, HARKing이 대개 데이터 조작 같은 명백한 부정행위가 아니라 자연스러운 유혹의 형태로 온다는 점이다. 결과를 보고 나면 인간은 그 결과가 필연이었던 이유를 즉시 지어낼 수 있다. 초성 줄임말 실험에서 "감정 표현 줄임말만 유독 정확도가 높네? 그러고 보니 감정 표현이 코퍼스에 많이 등장하니 당연하지"라는 생각이 드는 순간이 바로 그 유혹의 순간이다. 이 관찰 자체는 문제가 아니다. 문제는 이것을 "우리는 감정 표현 줄임말에서 높은 성능을 예측했다"라고 사전 가설처럼 보고하는 데 있다.
첫째, 탐색과 확증의 구별이 무너진다. 데이터를 자유롭게 뒤지며 패턴을 찾는 탐색적 분석(exploratory analysis)과, 미리 세운 가설을 검사하는 확증적 분석(confirmatory analysis)은 증거의 무게가 다르다. 같은 데이터에서 발견한 패턴을 같은 데이터로 "확증"하면, 우연한 패턴도 검증된 사실처럼 보인다. 충분히 많은 갈래를 살펴보면 순전한 우연만으로도 그럴듯한 패턴은 반드시 나온다.
둘째, 통계적 결론이 실제보다 강해 보인다. 여러 후보 중 좋아 보이는 것을 골라 보고하면 위양성 확률이 명목값보다 훨씬 커진다(사후 선택과 다중 비교의 통계적 결과는 15강에서 다룬다).
셋째, 재현이 안 된다. 우연에서 태어난 가설은 새 데이터에서 재현될 이유가 없다. HARKing으로 만들어진 "발견"이 축적되면 분야 전체의 문헌이 재현 불가능한 결과로 오염된다.
2010년대 심리학계는 이 문제를 정면으로 겪었다. 한 저명한 사회심리학자가 미래의 자극이 현재의 반응에 영향을 준다는, 즉 예지력을 시사하는 실험 결과를 주류 학술지에 게재하면서 논쟁이 폭발했다. 실험 절차와 통계는 당시 심리학의 표준 관행을 따르고 있었기 때문에, "표준 관행을 따랐는데 예지력이 증명된다면, 표준 관행 자체가 잘못된 것 아닌가"라는 질문이 제기됐다. 이후 분석에서 유연한 가설 설정, 여러 측정치 중 사후 선택, 결과를 본 뒤의 분석 변경 같은 관행이 위양성을 얼마나 쉽게 만들어내는지가 지적됐다.
이어서 국제 공동 연구진이 심리학 주요 학술지에 실린 연구 약 100건을 원저자 협조하에 다시 실험하는 대규모 재현 프로젝트(Open Science Collaboration의 재현성 프로젝트)를 진행했는데, 원 논문과 같은 방향의 유의한 결과를 얻은 비율은 절반에 크게 못 미쳤다. 개별 연구자가 악의적이어서가 아니라, 결과를 보고 가설과 분석을 조정하는 관행이 분야 전체에 퍼져 있었던 것이 주요 원인 중 하나로 꼽힌다. 이 사건을 계기로 사전 등록(preregistration) 문화가 확산됐다(사전 등록의 구체적 절차는 14강에서 다룬다).
LLM 연구도 같은 구조의 위험에 노출되어 있다. 벤치마크 수십 개를 돌려 보고 점수가 잘 나온 것만 골라 보고하거나, 프롬프트를 수십 번 바꿔 보고 가장 좋은 결과를 "우리 방법의 성능"으로 제시하는 것은 심리학이 겪은 일과 정확히 같은 패턴이다.
"가설이 기각되면 연구가 실패한 것이다." 아니다. 반증 조건이 미리 정의되어 있었다면, 기각은 "이 조건에서 이 효과는 없다"는 정보를 생산한 것이다. 반증 가능한 가설을 세웠기 때문에 얻을 수 있는 성과다(음성 결과의 가치는 16강에서 다룬다).
"탐색적 분석은 하면 안 된다." 아니다. 탐색은 가설을 낳는 정당한 활동이다. 금지되는 것은 탐색으로 찾은 패턴을 확증적 검증인 것처럼 보고하는 일이다. "탐색 결과 이런 패턴이 관찰됐고, 이는 후속 연구에서 확증적으로 검증할 가설이다"라고 정직하게 쓰면 된다. 초성 줄임말 실험에서 감정 표현 줄임말의 높은 정확도를 발견했다면, 그것은 이번 논문의 탐색적 관찰이고, 새 데이터로 검증하는 것은 다음 실험의 사전 가설이다.
"방향을 안 정하면 HARKing을 피할 수 있다." "모델 간 차이가 있을 것이다"처럼 방향 없는 가설은 어느 쪽 결과가 나와도 들어맞으므로 반증 가능성이 약하다. 가능하면 방향(어느 모델이, 어느 조건에서, 어느 쪽으로)까지 명시한다.
"반증 조건은 통계 전문가만 쓸 수 있다." 완벽한 검정 설계가 없어도 시작할 수 있다. "정확도 신뢰구간이 무작위 기대치를 포함하면 기각"처럼 지표와 기준선만 명시해도 반증 불가능한 주장과는 질적으로 다르다. 검정 방법은 9~12강에서 채워 나간다.
이 연구실의 관례처럼, 프로젝트를 시작하면 코드를 쓰기 전에 가설 문서(01_QUESTION.md에 해당하는 문서)를 작성하고 버전 관리에 커밋한다. 커밋 이력이 "결과를 보기 전에 쓰였다"는 증거가 된다. 문서에는 최소한 다음을 적는다.
실험이 끝난 뒤 논문을 쓸 때는 이 문서와 대조한다. 사전 가설에 대한 결과는 확증적 결과로, 실험 중 발견한 패턴은 탐색적 관찰로 구분해 보고한다. 이 구분 하나가 HARKing과 정직한 탐색을 가르는 전부다.
같은 데이터, 같은 분석이라도 가설이 언제 고정되었는지에 따라 증거로서의 가치가 달라진다는 것이 이 강의의 요지다.