양성이 나오길 바라고 검사를 내는 의사는 없다
트로포닌 검사를 낼 때 의사가 묻는 것은 “이 환자가 심근경색인가?”가 아니다. “이 결과를 보고 내 판단을 얼마나 고쳐야 하는가?”다. 둘은 다른 질문이다.
검사를 내기 전부터 의사의 머릿속에는 이미 추정치가 있다. 왼팔로 뻗치는 흉통에 식은땀을 흘리는 62세 남성이라면 급성 관상동맥 증후군의 검사 전 확률이 높다. 에스프레소를 석 잔 마신 뒤 같은 주호소로 온 28세 여성이라면 낮다. 같은 트로포닌 결과라도 두 사람에게는 뜻이 다르다. 첫 번째 환자에게서 트로포닌이 약간 올랐다면 의심하던 바가 확인된 것이다. 두 번째 환자에게서 같은 결과가 나왔다면 위양성일 가능성이 더 크다. 검사 자체가 완벽하지 않기 때문이다. 병이 없을 가능성이 높은 사람에게 불완전한 검사를 하면 계산은 불리하게 돌아간다.
모든 검사에는 민감도와 특이도가 있다. 민감도는 병이 실제로 있을 때 검사가 얼마나 자주 잡아내는지, 특이도는 병이 없는 사람을 얼마나 자주 제대로 음성으로 가려내는지를 말한다. 어느 쪽도 100%인 검사는 없다. 민감도 95%인 검사도 실제 환자의 5%를 놓친다. 특이도 90%인 검사도 건강한 사람의 10%를 잘못 양성으로 판정한다. 이 수치는 환자가 아니라 검사의 성질이다. 그러니 어떤 결과든 불확실성을 품고 있고, 결과는 확신을 대신할 것이 아니라 확신의 정도를 바꿔야 한다.
베이즈 추론이란 바로 이런 것이다. 환자에 대해 이미 아는 것에서 출발한다. 새 정보를 하나 얻는다. 그 정보를 얼마나 믿을 수 있는지에 따라 추정치를 고친다. 다음 정보가 들어오면 같은 일을 되풀이한다.
임상 AI는 대개 반대로 한다
의료 AI 시스템은 대부분 거꾸로 일한다. 활력징후, 검사 수치, 진단명, 복용 약 같은 결과를 한데 모아, 학습 데이터에서 익힌 패턴에 사후적으로 맞춰 본다. 크레아티닌 1.6, 당뇨병 병력, 약 목록의 ACE 억제제를 보고 “CKD 가능성 높음”이라고 내놓는다. 학습한 사례에서 그 조합이 자주 함께 나타났기 때문이다.
그럴듯해 보이지만, 무엇이 빠졌는지 생각해 보면 사정이 다르다. 시스템은 크레아티닌이 오르는 중인지 제자리인지 모른다. ACE 억제제를 신장 보호 목적으로 썼는지 혈압 때문에 썼는지 모른다. 2년 전 크레아티닌이 0.9였고 그 뒤로 꾸준히 올랐다는 사실도 모른다. 이 환자군에서 소변 알부민 검사의 위양성률이 15%라는 점도 따지지 않는다. 지금 한 장면을 과거 패턴에 대 보고 이름표를 붙일 뿐이다.
같은 환자를 보는 의사라면 앞으로 추론한다. 나이와 성별, 위험 인자를 감안한 CKD의 사전확률에서 출발한다. 크레아티닌을 보고 판단을 고치되, 한 번 잰 크레아티닌을 얼마나 믿을지 따져 고치는 폭을 정한다. 오늘 수치만이 아니라 추세를 본다. ACE 억제제도 고려하지만, 신장 질환의 근거로 치기 전에 왜 처방했는지부터 묻는다. 근거 하나하나가 확률을 움직이고, 그 무게는 근거를 얼마나 믿을 수 있느냐에 따라 달라진다.
후향적 접근은 이렇게 묻는다. 이건 무엇처럼 보이는가? 전향적 접근은 이렇게 묻는다. 지금까지 아는 것을 다 놓고 볼 때 새 정보는 무엇을 말해 주며, 그 정보를 얼마나 믿어야 하는가?
환자 전체를 보는 것과 결과만 보는 것
임상 수련에서 맨 먼저 배우는 것 가운데 하나가, 검사 수치가 아니라 환자를 치료한다는 원칙이다. 용혈된 검체의 칼륨 5.8은 아무 의미가 없다. 진료실까지 막 뛰어 들어온 환자의 혈압 160은 고혈압이 아니다. 결과가 신호인지 잡음인지는 맥락이 정하고, 맥락을 알려면 오늘 차트에 적힌 것 너머의 환자를 알아야 한다.
범용 AI는 결과를 처리한다. 숫자와 기록, 코드로 입력된 진단명을 읽고 텍스트 패턴에 따라 답을 낸다. 이 일은 아주 잘한다. 퇴원 기록을 누구보다 빨리 요약하고, 어수선한 임상 기록에서 정형 데이터를 뽑아낸다. 하지만 그건 교과서의 증례를 읽듯 차트를 읽는 것이다. 모든 일이 끝난 다음에.
환자를 눈앞에 둔 의사는 다른 일을 한다. 불확실한 가운데 시간의 흐름을 따라 앞으로 추론하고, 새 정보가 들어올 때마다 평가를 고치며, 정보마다 얼마나 믿을지 무게를 단다. 저위험 환자의 D-dimer 양성은 아마 위양성이라는 것을 안다. 흉부 X선이 정상이어도 초기 폐렴을 배제할 수 없다는 것을 안다. 사전확률을 머릿속에 지닌 채 소견이 나올 때마다 조정한다. 모두 똑같은 폭으로가 아니라, 소견마다 지닌 진단적 가치에 비례해서.
Chroneme을 만들 때 우리가 바란 것은 시스템이 검색 엔진이 아니라 이런 의사처럼 추론하는 것이었다. 거꾸로가 아니라 앞으로. 새 근거가 들어올 때마다, 그 근거가 실제로 얼마나 믿을 만한지 따져 확률을 고쳐 나가는 것.
실제로는 어떻게 돌아가는가
2형 당뇨병이 있는 58세 남성이 정기 검사를 받으러 온다. 나이, 성별, 당뇨병 진단을 바탕으로 만성콩팥병의 기저 확률이 어느 수준에서 정해진다. 0은 아니다. 당뇨병은 CKD의 가장 흔한 원인이다. 높지도 않다. 증상도 없고, 예전에 신장 쪽 소견이 나온 적도 없다.
크레아티닌이 1.2로 나온다. 엄밀히는 정상 범위지만 지난번보다 높다. 시스템은 확률을 고친다. 많이는 아니다. 살짝 높은 크레아티닌 한 번은 진단적 가치가 크지 않기 때문이다. CKD에 대해 단일 크레아티닌의 민감도와 특이도는 그것만으로는 그다지 강하지 않다.
열 달 뒤 크레아티닌은 1.4, eGFR은 60 아래로 떨어진다. 이번에는 고치는 폭이 크다. eGFR 60 미만은 CKD에 대한 진단적 가치가 훨씬 높기 때문이다. 그런데 시스템은 정적인 모델이 볼 수 없는 것을 하나 더 본다. 추세다. 크레아티닌은 그냥 높은 게 아니다. 이대로 가면 걱정스러운 범위에 들어설 속도로 오르고 있다.
1년 뒤 단백뇨가 나타난다. 이제 확률은 조치가 필요할 만큼 높다. 그런데 임상적으로 중요한 대목은 따로 있다. 시스템은 단백뇨가 나오기 몇 달 전부터 이 환자에게 경고를 띄우고 있었다. 확신해서가 아니다. 눈여겨볼 만한 기세로 확률이 오르고 있었기 때문이다. 차트를 검토하는 의사는 확률이 바뀐 지점마다 무엇이 그렇게 만들었는지 보고, 동의할지 스스로 정할 수 있다. ACE 억제제가 신장이 아니라 혈압 때문에 처방된 것이라고 본다면, 자신의 임상 판단에서 그 요인의 무게를 달리 둘 수 있다. 시스템은 자기 추론을 보여 주고, 의사는 자기 추론을 더한다.
추세 그 자체가 어느 한 수치와도 별개인 근거가 된다.
신뢰가 여기서 갈린다
신경망이 “CKD 가능성 73%”라고 할 때는 이유를 물을 길이 없다. 그 숫자는 임상 개념과 아무 대응도 없는 수백만 개의 파라미터에서 나온다. 의사가 “크레아티닌 쪽은 동의하는데, 약물 병력에 무게를 너무 둔 것 같다”고 말할 수가 없다. 크레아티닌 쪽이라는 게 없다. 약물 쪽이라는 것도 없다. 숫자 하나가 있을 뿐이다.
베이즈 시스템이 73%라고 할 때는 의사가 이유를 물을 수 있다. 어떤 근거가 확률을 얼마나 움직였는지 볼 수 있다. 특정 요인에 동의하지 않고 자기 판단을 적용할 수 있다. 임상 AI가 실제로 진료를 바꾸는 것은 이런 대화를 통해서다. 대화가 없으면 결과는 주장에 그친다. 대화가 있으면 결과는 논증이 된다.
우리가 시스템을 보여 준 한 신장내과 의사가 이 점을 정확히 짚었다. 그는 한 환자의 근거 사슬을 훑어보더니 대부분 동의하지만, 처방 맥락이 시스템의 가정과 달라서 한 요인에 무게가 과하게 실렸다고 했다. 그의 말이 옳았다. 그가 그런 점을 알아보고, 문제의 요인을 짚어 내고, 자기 전문성을 발휘할 수 있었다는 것. 임상 의사결정 지원이 가능하게 해야 할 일이 바로 그것이다. 블랙박스였다면 같은 확률을 내놓았겠지만 그런 대화를 나눌 여지는 없었을 것이다.
솔직히 밝혀 두는 한계
베이즈 추론은 질환이 주어졌을 때 근거들이 서로 조건부 독립이라고 가정한다. 임상에서는 그렇지 않을 때가 많다. CKD에서 크레아티닌과 단백뇨는 서로 연관되어 있다. 이미 알려진 한계이고, 이를 완벽하게 해결하는 일은 이 분야가 아직 풀지 못한 숙제다.
결과의 질은 근거마다 매긴 가중치의 질에 달려 있다. 일부는 발표된 문헌으로 탄탄하게 뒷받침된다. 나머지는 검증을 거치며 다듬어 가는 근삿값이다. 보정(calibration)은 아직 진행 중이고, 우리는 그렇지 않은 척하지 않는다.
베이즈 추론은 검사 수치, 활력징후, 약물, 코드화된 진단명처럼 구조화되어 수치로 나타낼 수 있는 근거에 강하다. 비정형 임상 기록이나 환자가 직접 말하는 증상에는 그만큼 강하지 않다. 그래서 우리는 임상 데이터의 종류에 따라 다른 방법을 쓰고, 문제에 맞는 도구를 고른다.
우리가 베이즈 추론을 고른 것은 그것이 의사가 이미 생각하는 방식과 닮았기 때문이다. 좋은 임상의가 직관으로 하는 일을 형식으로 옮겨, 모든 환자에게, 대규모로, 쉬지 않고 해낸다. 그게 전부다. 마법은 없다. 임상 추론 밑에 깔린 수학을 드러내 놓았을 뿐이다.
