부록 D01: 수학적 사고와 모델링
이 장에서 배울 것
부록 D는 수학 전체를 외우는 부록이 아닙니다. 계산생물학·생물정보학 연구자가 데이터를 해석하고, 모델을 만들고, 결과를 의심하기 위해 계속 사용하는 수학의 뼈대를 배우는 부록입니다. 첫 장에서는 수학적 사고와 모델링을 배웁니다.
핵심 용어를 먼저 정리하겠습니다.
- 현실 현상(real phenomenon): 실제 생물학에서 일어나는 복잡한 일입니다. 예를 들어 세포가 약물에 반응하거나, 유전자가 특정 조건에서 더 많이 발현되는 현상입니다.
- 변수(variable): 변할 수 있는 값입니다. 예를 들어 유전자 발현량, 시간, 약물 농도, 환자 나이, 질병 여부가 변수가 될 수 있습니다.
- 상수(constant): 분석 안에서 변하지 않는 값입니다.
- 가정(assumption): 모델을 단순하게 만들기 위해 일단 받아들이는 조건입니다.
- 매개변수(parameter): 모델의 모양이나 세기를 정하는 숫자입니다.
- 모델(model): 현실을 그대로 복사한 것이 아니라, 중요한 구조만 남긴 설명 도구입니다.
- 예측(prediction): 모델을 이용해 아직 모르는 값을 추정하는 것입니다.
- 오차(error): 예측값과 실제값의 차이입니다.
가장 쉬운 비유: 지도는 도시가 아닙니다
서울 지도를 생각해 보겠습니다. 지도에는 건물 하나하나의 냄새, 바람, 사람들의 말소리, 신호등의 미세한 변화가 전부 들어 있지 않습니다. 하지만 지하철역 위치, 도로 방향, 강의 위치는 잘 담겨 있습니다. 그래서 지도는 실제 도시보다 훨씬 단순하지만, 길을 찾는 데는 매우 유용합니다.
수학 모델도 비슷합니다. 모델은 현실 그 자체가 아닙니다. 생명체는 너무 복잡해서 모든 원자, 모든 세포, 모든 환경 요인을 한꺼번에 담을 수 없습니다. 그래서 연구자는 질문에 필요한 부분만 뽑아 단순한 구조를 만듭니다.
예를 들어 “약물 농도가 올라가면 세포 생존율이 어떻게 바뀌는가?”를 알고 싶다면, 모든 생명현상을 다 넣을 필요는 없습니다. 우선 약물 농도와 세포 생존율이라는 변수에 집중할 수 있습니다.
변수는 관찰하고 싶은 것을 담는 그릇입니다
변수는 변할 수 있는 값입니다. 생물학 데이터에는 변수가 많습니다. 유전자 발현량은 샘플마다 다를 수 있습니다. 키, 몸무게, 나이, 혈당, 약물 농도도 사람마다 또는 실험 조건마다 다를 수 있습니다.
계산생물학에서 중요한 훈련은 “이 문제에서 무엇이 변수인가?”를 묻는 것입니다. RNA-seq 자료에서는 유전자별 읽힘 수가 변수일 수 있습니다. 임상 자료에서는 질병 여부, 생존 기간, 치료 반응이 변수가 될 수 있습니다. 단백질 구조 분석에서는 원자 위치, 거리, 에너지 값이 변수가 될 수 있습니다.
변수를 잘못 잡으면 모델도 잘못됩니다. “암 환자와 정상인의 차이”를 보려는데 샘플 채취 병원이 다르고, 장비도 다르고, 처리 날짜도 다르다면 병원이나 날짜도 중요한 변수가 될 수 있습니다. 이런 숨은 변수를 무시하면 생물학적 차이가 아닌 실험 차이를 발견할 수 있습니다.
가정은 모델의 발판입니다
가정은 “일단 이렇게 단순화하자”라는 약속입니다. 가정은 나쁜 것이 아닙니다. 모든 모델은 가정을 가집니다. 문제는 가정이 있다는 사실을 잊어버리는 것입니다.
예를 들어 아주 단순한 모델을 세워 보겠습니다.
유전자 발현량 = 기본 발현량 + 약물 효과
이 모델은 단순합니다. 약물 농도, 세포 상태, 시간, 잡음, 다른 유전자 영향은 모두 생략했습니다. 그래도 처음에는 유용할 수 있습니다. 약물을 넣었을 때 발현량이 어느 정도 늘어나는지 감을 잡을 수 있기 때문입니다.
하지만 이 모델을 모든 상황에 적용하면 위험합니다. 어떤 약물은 낮은 농도에서는 효과가 약하고, 일정 농도 이상에서 갑자기 강해질 수 있습니다. 어떤 유전자는 시간이 지나야 반응할 수 있습니다. 이런 경우에는 더 복잡한 모델이 필요합니다.
매개변수는 모델의 조절 손잡이입니다
매개변수는 모델의 모양을 정하는 숫자입니다. 예를 들어 다음처럼 아주 단순한 식을 생각해 보겠습니다.
예측 발현량 = 2 × 약물 농도 + 5
여기서 2와 5는 매개변수입니다. 2는 약물 농도가 1 증가할 때 예측 발현량이 얼마나 늘어나는지를 나타냅니다. 5는 약물 농도가 0일 때의 기본 발현량처럼 해석할 수 있습니다.
매개변수가 바뀌면 모델의 예측도 바뀝니다.
예측 발현량 = 3 × 약물 농도 + 5
이 모델은 약물 농도 증가에 더 민감합니다. 같은 농도 변화에도 발현량이 더 크게 증가한다고 예측합니다.
예측값과 실제값은 다를 수 있습니다
모델은 예측을 만듭니다. 하지만 예측은 실제와 완전히 같지 않을 수 있습니다. 이 차이를 오차라고 합니다.
오차 = 예측값 - 실제값
예측값이 12이고 실제값이 10이면 오차는 2입니다. 예측값이 8이고 실제값이 10이면 오차는 -2입니다. 오차의 부호는 “예측이 실제보다 컸는지 작았는지”를 보여줍니다. 오차의 크기는 “얼마나 틀렸는지”를 보여줍니다.
좋은 모델은 대체로 오차가 작습니다. 하지만 오차가 작다고 해서 항상 좋은 모델은 아닙니다. 너무 복잡하게 만들어서 훈련 데이터만 외워 버린 모델은 새로운 데이터에서 망가질 수 있습니다. 이것을 나중에 과적합(overfitting, 모델이 학습 자료에만 지나치게 맞춰져 새 자료에는 약해지는 현상)이라고 부릅니다.
계산 감각 1: 단순 모델로 예측하기
다음 모델이 있다고 합시다.
예측 발현량 = 2 × 약물 농도 + 5
약물 농도가 3이면 예측 발현량은 다음과 같습니다.
2 × 3 + 5 = 11
이 계산은 어렵지 않습니다. 하지만 이런 작은 식이 모델링의 출발점입니다. 복잡한 머신러닝 모델도 결국 입력을 받아 출력 예측을 만드는 구조라는 점에서는 같습니다.
계산 감각 2: 오차 계산하기
예측 발현량이 11이고 실제 측정값이 13이라면 오차는 다음과 같습니다.
오차 = 예측값 - 실제값 = 11 - 13 = -2
음수라는 것은 예측이 실제보다 작았다는 뜻입니다. 절댓값으로 보면 2만큼 틀렸습니다.
여러 샘플에서 오차를 계산하면 모델이 어느 조건에서 잘 맞고, 어느 조건에서 잘 틀리는지 볼 수 있습니다.
생물정보학에서 왜 모델링이 중요한가
생물 데이터는 그냥 숫자표가 아닙니다. 연구자는 숫자 뒤에 있는 생물학적 구조를 이해하려고 합니다. 모델은 그 숫자와 생물학적 질문을 연결하는 다리입니다.
예를 들어 차등 발현 분석은 “두 조건에서 유전자 발현량이 달라졌는가?”라는 질문을 통계 모델로 바꿉니다. GWAS는 “어떤 유전적 변이가 질병과 관련 있는가?”라는 질문을 통계 모델로 바꿉니다. 단백질 구조 예측은 “이 아미노산 서열이 어떤 3차원 구조를 만들까?”라는 질문을 계산 모델로 바꿉니다.
즉, 계산생물학자는 단순히 프로그램을 돌리는 사람이 아닙니다. 생물학적 질문을 변수, 가정, 모델, 예측, 검증의 형태로 바꾸는 사람입니다.
보강: 모델을 숫자로 점검하는 최소 절차
모델링에서 초보자가 자주 놓치는 점은 “모델을 세웠다”와 “모델이 믿을 만하다”가 다르다는 것입니다. 예를 들어 예상 발현량 = 2 × 약물농도 + 10이라는 모델을 만들었다면, 약물농도 5에서 예측값은 2 × 5 + 10 = 20입니다. 실제 관측값이 24라면 오차의 크기는 |24 - 20| = 4입니다. 이 작은 계산이 모델 검증의 출발점입니다.
생물정보학에서는 오차가 단순 실수가 아닐 수 있습니다. 같은 약물농도에서도 세포주가 다르거나, 시퀀싱 깊이가 다르거나, 실험 날짜가 다르면 관측값이 달라질 수 있습니다. 그래서 모델을 해석할 때는 “변수에 무엇을 넣었는가”, “무엇을 가정했는가”, “빠진 변수가 있는가”를 함께 확인해야 합니다.
초보자가 특히 조심해야 할 오해는 “복잡한 모델일수록 항상 좋다”는 생각입니다. 연구에서는 질문에 필요한 구조만 남긴 단순한 모델이 오히려 더 잘 해석될 때가 많습니다. 좋은 모델은 현실을 완벽히 복사하는 모형이 아니라, 데이터 속 중요한 관계를 계산 가능하게 만드는 도구입니다.
보강 학습: 변수·가정·오차를 숫자로 읽는 법
수학 모델을 읽을 때 가장 먼저 볼 것은 “무엇이 변하는 값이고, 무엇을 고정했다고 가정했는가”입니다. 예를 들어 약물 농도 x와 유전자 발현량 y의 관계를 본다면 x는 입력 변수, y는 관찰되는 출력 변수입니다. 모델은 y = 2x + 5처럼 간단할 수도 있고, 실제 연구에서는 여기에 잡음과 여러 조건이 더 붙을 수 있습니다.
이 식이 필요한 이유는 복잡한 생명현상을 한 번에 모두 보지 않고, 먼저 중요한 관계 하나를 잡기 위해서입니다. 2는 x가 1 증가할 때 y가 평균적으로 2만큼 증가한다는 뜻이고, 5는 x = 0일 때의 기준값입니다. 예를 들어 x = 3이면 y = 2×3+5 = 11입니다. 실제 측정값이 13이라면 오차는 13 - 11 = 2입니다.
생물정보학에서는 이런 식으로 “모델 예측값”과 “실제 데이터”를 비교합니다. 어떤 모델이 유전자 발현량을 잘 설명하는지, 어떤 조건을 넣었을 때 오차가 줄어드는지 보는 것입니다. 다만 오차가 작다고 해서 원인을 완전히 알아냈다는 뜻은 아닙니다. 모델은 현실의 압축판이지 현실 그 자체가 아닙니다.
흔한 오해는 모델에 들어간 변수가 곧 원인이라고 단정하는 것입니다. 예를 들어 나이와 특정 유전자 발현량이 함께 변해도, 나이가 직접 그 유전자를 조절한다는 뜻은 아닐 수 있습니다. 세포 구성, 질병 상태, 실험 batch 같은 숨은 변수가 끼어 있을 수 있습니다. 그래서 모델을 읽을 때는 항상 “이 모델은 어떤 가정을 했는가?”를 같이 물어야 합니다.
핵심 정리
모델은 현실을 그대로 복사한 것이 아니라 중요한 구조만 남긴 설명 도구입니다. 변수는 변할 수 있는 값이고, 가정은 모델을 단순하게 만들기 위한 조건이며, 매개변수는 모델의 조절 손잡이입니다. 모델은 예측을 만들고, 예측값과 실제값의 차이는 오차입니다. 계산생물학에서 모델링은 생물학적 질문을 계산 가능한 형태로 바꾸는 핵심 능력입니다.
문제 풀이
수학적 사고와 모델링
주관식 답안은 Gemini API로 채점합니다. API 키는 이 브라우저에만 저장됩니다.
-
1. [쉬움] 객관식
모델의 설명으로 가장 적절한 것은?
-
2. [쉬움] 객관식
변수의 설명으로 가장 적절한 것은?
-
3. [쉬움] 객관식
가정의 설명으로 가장 적절한 것은?
-
4. [보통] 객관식
매개변수의 설명으로 가장 적절한 것은?
-
5. [계산] 객관식
모델
예측값 = 2x + 5에서 x=3이면 예측값은? -
6. [계산] 객관식
모델
예측값 = 4x + 1에서 x=2이면 예측값은? -
7. [계산] 객관식
예측값이 12, 실제값이 10일 때 오차 = 예측값 - 실제값은?
-
8. [계산] 객관식
예측값이 8, 실제값이 11일 때 오차 = 예측값 - 실제값은?
-
9. [계산] 객관식
모델
y = 3x + 2에서 x가 1에서 2로 늘면 y는 얼마만큼 증가하는가? -
10. [계산] 객관식
모델
y = 5x에서 x=4일 때 y는? -
11. [계산] 객관식
실제값이 15, 예측값이 15이면 오차는?
-
12. [계산] 객관식
모델
예측값 = x + 7에서 x=6이면 예측값은? -
13. [쉬움] 객관식
모델
예상 발현량 = 2 × 약물농도 + 10에서 약물농도가 6일 때 예측값은? -
14. [쉬움] 객관식
예측값이 30, 실제값이 24일 때 절댓값 기준 오차의 크기는?
-
15. [보통] 객관식
어떤 모델이 모든 샘플에서 실제값보다 항상 5 크게 예측한다. 가장 먼저 의심할 점으로 적절한 것은?
-
16. [쉬움] 객관식
모델 A의 평균 절대오차가 2, 모델 B의 평균 절대오차가 7이다. 같은 데이터와 같은 기준이라면 더 잘 맞는 모델은?
-
17. [쉬움] 객관식
변수 x가 3, 매개변수 a가 4, b가 1인 선형 모델
y = ax + b의 예측값은? -
18. [보통] 객관식
모델이 실험실 A 데이터에서는 잘 맞지만 실험실 B 데이터에서는 크게 빗나간다. 가장 타당한 해석은?
-
19. [보통] 객관식
관측값 10, 15, 20에 대한 예측값이 12, 14, 18이다. 절대오차의 합은?
-
20. [보통] 객관식
복잡한 생물 현상을 모델로 만들 때 가장 적절한 태도는?
-
21. [쉬움] 객관식
모델
y = 2x + 5에서x = 4일 때 예측값y는? -
22. [쉬움] 객관식
실제 관찰값이 16이고 모델 예측값이 13일 때, 관찰값 - 예측값으로 정의한 오차는?
-
23. [보통] 객관식
수학 모델에 대한 설명으로 가장 적절한 것은?
-
24. [보통] 객관식
생물정보학 모델에서 숨은 변수의 예로 가장 적절한 것은?
-
25. [어려움] 객관식
모델 해석에서 가장 위험한 태도는?
-
주관식 26. [보통] 주관식 · Gemini 채점
모델이 현실을 그대로 복사한 것이 아니라는 말의 뜻을 지도 비유로 설명하라.
-
주관식 27. [보통] 주관식 · Gemini 채점
변수, 가정, 매개변수를 각각 한 문장으로 설명하라.
-
주관식 28. [보통] 주관식 · Gemini 채점
예측값과 실제값의 차이를 보는 것이 왜 중요한지 설명하라.
-
주관식 29. [보통] 주관식 · Gemini 채점
생물정보학에서 모델링이 필요한 이유를 예를 들어 설명하라.
-
주관식 30. [보통] 주관식 · Gemini 채점
예측값과 실제값의 차이를 계산하는 것이 모델 검증에서 왜 중요한지 설명하라.
-
주관식 31. [보통] 주관식 · Gemini 채점
복잡한 생물 현상을 모델로 단순화할 때 생길 수 있는 장점과 위험을 각각 설명하라.
-
주관식 32. [보통] 주관식 · Gemini 채점
약물 농도
x와 발현량y의 관계를y = 3x + 2로 모델링했다.x = 5일 때 예측값을 계산하고, 이 모델에서 3과 2가 무엇을 뜻하는지 설명하라. -
주관식 33. [보통] 주관식 · Gemini 채점
유전자 발현량과 질병 점수 사이에 모델상 강한 관계가 보였을 때, 바로 원인 관계라고 말하면 안 되는 이유를 설명하라.