BioSync: 여러 생체 신호를 하나의 지표로 엮는 법
심장 신경 행동 음성 측정을 BioSync Index로 융합하는 트랜스포머 구조와 두 합성 코호트에서의 검증 기록을 따라가며 작은 차이와 정직한 한계를 함께 읽습니다.
원문 논문 보기
노시욱 (Patrick Rho) · AI 연구 해설
arXiv에 공개된 BioSync: Transformer-Based Cross-Modal Fusion for a Multimodal Physiological Digital Biomarker(arXiv:2609.04504)를 읽었습니다. 이 연구가 내세우는 주장은 하나인데, 심장과 신경과 행동과 음성 측정을 트랜스포머 기반 교차 모달 융합으로 엮으면 BEST 프레임워크 아래에서 정의된 연속 복합 지표인 BioSync Index로 만들 수 있다는 것입니다. 그 원문 링크는 제목 아래에 붙어 있습니다.
이 글은 그 엮음의 과정을 천천히 따라가려는 기록입니다. 앞부분에서는 왜 여러 신호를 하나로 합쳐야 하는지, BioSync Index라는 말이 정확히 무엇을 가리키는지, 모달리티 토큰과 멀티헤드 셀프 어텐션과 선형 분기가 어떻게 맞물리는지를 봅니다. 그리고 뒷부분에서는 두 개의 합성 코호트가 어떻게 지어졌는지, 0.928과 0.926 같은 근소한 숫자를 어떻게 읽어야 하는지, 모달리티가 빠지는 상황에서의 내성이 무엇을 말하는지를 봅니다. 마지막에는 다섯 개의 공개 바이오마커 참조값과 비교하지 않겠다고 선을 그은 대목과 실제 코호트 검증이 남았다는 말을 짚은 뒤 현장에 가져갈 질문을 정리합니다. 숫자는 결과이고 과정은 엮음의 결인데, 저는 이번 글에서 그 결에 오래 머물러 보려고 합니다.
왜 여러 신호를 하나로 엮어야 하는가
생체 신호는 따로 놀 때보다 함께 볼 때 말이 됩니다. 심박변이만 보면 자율신경의 흔들림이 보이는데, 거기에는 주의와 수면과 인지 부하의 조각을 보여주는 뇌파, 낮의 움직임과 밤의 쉼을 보여주는 활동량, 발화의 속도와 멈춤과 떨림을 보여주는 음성이 함께 있어야 몸의 문장이 완성됩니다. 각각은 유용한 조각이지만, 몸의 상태는 조각 하나로 정해지지 않기 때문입니다. 피로와 스트레스와 초기 인지 저하와 대사 이상은 여러 계통에 걸쳐 나타나는데, 심장이 먼저 흔들리고 수면이 깨지고 움직임이 줄고 말이 느려지는 식입니다. 그래서 한 채널만 보면 변화의 순서를 놓치고, 여러 채널을 함께 봐야 그 순서가 보입니다.
현장에서 일해본 분이라면 이 말이 감각적으로 와닿을 겁니다. 웨어러블 기기는 하루 종일 데이터를 뱉어 심박과 걸음과 수면 시간과 호흡을 쌓아 올리는데, 문제는 쌓인다는 사실 자체가 아니라 엮이지 않는다는 사실에 있기 때문입니다. 대시보드에는 지표가 여러 개 나란히 놓여 심박변이는 내려갔고 수면 효율은 떨어졌고 걸음은 줄었고 음성 메모의 길이는 짧아졌다고 알려주는데, 그 아래를 향한 화살표들을 하나의 문장으로 읽어주는 주체는 없습니다. 그래서 사용자는 네 개의 나쁜 숫자를 따로 받고, 임상의는 네 개의 그래프를 따로 넘기면서, 숫자는 많은데 판단은 분산되는 상태에 머뭅니다.
단일 지표로 합치자는 제안은 그래서 매력적이면서도 위험합니다. 매력은 분명한데, 여러 신호를 하나의 연속 값으로 줄이면 오늘이 어제보다 올랐는지, 지난주보다 내렸는지, 약을 바꾼 뒤에 어떻게 움직이는지를 한 줄로 볼 수 있기 때문입니다. 하지만 위험도 분명한데, 합치는 과정에서 무엇이 버려지는지 알 수 없기 때문입니다. 심장의 신호가 지표의 움직임을 주도하는지, 음성의 신호가 단지 장식인지, 특정 모달리티가 빠지면 지표가 어떻게 흔들리는지가 가려지는데요. 그래서 편리한 숫자 하나가 네 개의 정직한 숫자보다 나쁠 때가 있습니다. BioSync를 읽으면서 제가 가장 오래 머문 질문도 여기였는데, 이 지표는 편리함을 위해 정직함을 얼마나 내주었는가 하는 것이었습니다.
이 연구가 디지털 바이오마커라는 말을 쓰는 방식이 그래서 중요합니다. 바이오마커는 몸의 상태를 가리키는 측정값인데, 혈압이나 혈당처럼 단일 측정도 바이오마커에 속합니다. 여기서 디지털 바이오마커는 웨어러블과 센서와 소프트웨어에서 나오는 측정값, 이를테면 걸음이나 수면 단계나 음성 특징 같은 것들을 가리킵니다. 그리고 복합 바이오마커는 여러 측정을 정해진 절차로 합친 값인데, BioSync Index는 이 가운데 세 번째에 속해 여러 모달리티의 특징을 학습된 융합 절차로 합친 연속 값입니다. 여기서 정해진 절차라는 말이 중요한데, 같은 입력에는 같은 출력이 나와야 하고 절차는 다른 사람도 돌려볼 수 있어야 하기 때문입니다. 그래야 지표가 대화의 도구가 되는데, 오늘의 값이 0.62라는 말이 나만의 감상이 아니라 재현 가능한 절차의 결과여야 한다는 뜻이죠.
저희가 새로운 생체신호 모델을 볼 때도 단일 채널 성능보다 엮음의 방식을 먼저 봅니다. 어떤 신호를 먹였는지, 빠진 신호를 어떻게 다루는지, 합친 값이 원래 신호의 순서와 맞물리는지를 보는 것인데요. 점수는 사진이고 엮음은 지도이기 때문입니다. 사진은 멋있지만 다음 현장에 도움이 되지 않고, 지도가 있어야 다음 팀이 같은 길을 걸어볼 수 있습니다. BioSync는 지도 그리기에 공을 들인 연구로 읽히는데, 모달리티를 토큰으로 바꾸고 토큰 사이를 어텐션으로 엮고 선형 분기를 곁들인다는 설계가 바로 그 지도입니다. 그래서 이 글에서도 점수 이야기는 뒤로 미루고 앞부분을 정의와 구조에 할애하겠습니다.
BioSync Index는 무엇을 가리키는가
BioSync Index, 곧 BSI는 이 연구가 내놓은 중심 개념입니다. 짧게 말하면 네 갈래 측정을 하나의 연속 값으로 줄인 복합 디지털 바이오마커인데, 심장 계열과 신경 계열과 행동 계열과 음성 계열이 재료입니다. 출력은 이분법 판정이 아니라 연속 값이라서, 정상과 비정상을 가르는 칼이 아니라 상태의 위치를 가리키는 자에 가깝습니다. 그래서 같은 사람의 값이 시간에 따라 어떻게 움직이는지를 보는 데 쓰라는 뜻인데, 오늘 0.41이던 값이 석 달 뒤 0.55가 되었다면 몸 어딘가에 방향 있는 변화가 있다는 신호로 읽으라는 것이죠.
여기서 BEST 프레임워크라는 말이 나옵니다. BEST는 바이오마커를 역할에 따라 나누는 틀인데, 진단용인지 예후용인지 경과 관찰용인지 치료 반응 확인용인지 같은 구분을 말합니다. 연구가 BSI를 BEST 아래에서 정의된 지표라고 말한다는 것은 측정값을 내놓고 끝내지 않고 쓰임의 자리까지 함께 정하겠다는 뜻입니다. 지표는 자리가 정해져야 평가가 정해지기 때문인데, 진단용이라면 민감도와 특이도가 중요하고 경과 관찰용이라면 같은 사람 안에서의 반복 재현성과 변화 감지가 중요합니다. BSI는 후자에 가깝게 읽히는데, 잠재 중증도와의 상관이라는 평가가 그 힌트입니다. 어느 선을 넘으면 환자라는 판정보다 몸의 부담이 얼마나 쌓였는지를 재는 자에 가깝다는 것이죠.
복합 지표의 오래된 고민이 여기에서 다시 나옵니다. 여러 신호를 합치면 각 신호의 얼굴이 지워지기 때문인데, 심박변이가 나빠져서 오른 값인지 음성이 느려져서 오른 값인지 겉으로는 알 수 없습니다. 그래서 좋은 복합 지표는 값 하나만 내놓지 않고, 값이 어떻게 만들어졌는지를 함께 내놓습니다. 어느 모달리티가 얼마나 기여했는지, 어느 신호가 빠져도 값이 유지되는지, 어느 조합에서 값이 흔들리는지를 함께 보고하는 것인데요. BioSync가 모달리티 결손에 대한 실험을 따로 둔 이유가 여기 있습니다. 값이 편리한 만큼 그 값의 그림자까지 함께 보여주겠다는 뜻인데, 그림자까지 함께 볼 때 지표는 도구가 되고 값만 보면 지표는 구호가 됩니다.
제가 이 대목을 실무 감각으로 읽으면 다음 장면이 떠오릅니다. 건강검진표에 총점 하나가 찍혀 나오는 장면인데, 총점이 72점이라고 적혀 있습니다. 그런데 무엇이 72점인지 알 수 없어서, 혈압이 문제인지 수면이 문제인지 활동이 문제인지 가려져 있습니다. 총점만 받은 사람은 다음 행동을 정할 수 없는데, 운동을 늘려야 하는지 잠을 늘려야 하는지 병원에 가야 하는지 알 수 없기 때문입니다. 그래서 좋은 지표는 총점 뒤에 내역을 붙이는데, BSI도 같은 시험을 통과해야 합니다. 값의 움직임과 함께 어느 모달리티가 그 움직임을 끌었는지를 보여주어야 하는 것인데, 어텐션 가중치나 분기별 기여 같은 내부 신호가 그 내역의 후보입니다. 연구가 어텐션 구조를 앞세운 만큼, 다음 단계에서는 그 내역의 읽기법까지 열려야 한다고 저는 봅니다.
wide-and-deep 설계: 어텐션 곁의 선형 분기
아키텍처 이야기로 들어가 보겠습니다. BioSync의 뼈대는 단순한데, 각 모달리티의 특징을 토큰으로 바꾸고 토큰들 사이에 멀티헤드 셀프 어텐션을 건 뒤 그 옆에 선형 분기를 하나 더 두는 방식입니다. 여기서 어텐션은 모달리티 사이의 상호작용을 잡고, 선형 분기는 각 모달리티를 직접 더하는 경로를 둡니다. 그리고 두 경로를 합쳐서 최종 표현을 만들고 BSI를 뽑는데요. 넓고 깊은 설계라는 표현이 붙는 이유가 여기 있습니다. 깊은 쪽이 토큰 사이의 엮임을 배우고, 넓은 쪽이 원래 특징의 직접 합을 지키기 때문입니다.
이 설계에서 제가 눈여겨본 부분은 선형 분기의 가설 공간이 표준 특징 결합을 포함한다는 대목입니다. 풀어서 말하면 선형 분기만으로도 기존의 단순한 방식인 여러 특징을 이어붙인 뒤 선형으로 읽는 것과 같은 일을 할 수 있다는 뜻인데요. 이 한 문장이 평가의 기준선을 바꿉니다. 새로운 구조가 기존 방식을 품고 있다면, 새 구조는 기존 방식보다 못할 이유가 이론적으로는 없기 때문입니다. 학습만 잘된다면 기존 방식이 잡는 신호는 그대로 잡고 거기에 상호작용이라는 덤을 얹을 수 있는데, 그래서 비교 대상이 단순 결합이 되는 것은 우연이 아닙니다. 품는 쪽과 품기는 쪽의 대결이기 때문입니다.
그런데 이론과 학습은 다른 이야기입니다. 품을 수 있다는 말과 품어낸다는 말은 다르기 때문인데, 신경망은 할 수 있는 일을 항상 하지는 않습니다. 데이터가 적으면 상호작용을 배우기보다 직접 합에 기대게 되고, 데이터가 지저분하면 어텐션이 엉뚱한 짝을 엮습니다. 최적화가 흔들리면 깊은 쪽이 죽고 넓은 쪽만 살아남는데요. 그 결과는 기존 방식과 거의 같은 점수로 나타납니다. 뒤에서 볼 숫자 0.928과 0.926의 차이가 바로 그 풍경인데, 이론적으로는 품는 구조인데 실제로는 거의 같은 자리에서 숨을 쉽니다. 저는 이 간격을 어떻게 읽을지가 이 논문의 감상 포인트라고 봅니다.
또 하나 짚을 지점은 토큰화의 결정입니다. 모달리티를 토큰으로 바꾼다는 것은 서로 다른 신호를 같은 크기의 벡터로 맞춘다는 뜻인데, 심박변이의 통계량과 뇌파의 스펙트럼과 활동량의 시계열 요약과 음성의 운율 특징은 원래 단위도 길이도 결도 다릅니다. 그 다른 것들을 같은 탁자 위에 올리려면 각자를 벡터로 눌러 담아야 하는데, 이 눌러 담는 과정에 설계자의 손이 들어갑니다. 무엇을 평균낼지, 무엇을 스펙트럼으로 바꿀지, 무엇을 순서로 남길지가 손맛인데요. 어텐션은 그 다음 일로, 탁자 위에 올라온 토큰들 사이의 당김을 재는 일입니다. 탁자에 올리는 손맛이 거칠면 당김을 재는 기계가 좋아도 소용없는데, 현장에서 융합 모델이 흔들릴 때 앞단을 먼저 보는 이유가 여기 있습니다.
저는 이 구조를 읽으면서 오래된 대결 구도를 떠올렸습니다. 처음부터 복잡한 상호작용을 배우려는 쪽과 단순한 합에서 출발해 조금씩 비틀려는 쪽의 대결인데, 전자는 멋있지만 배가 고파 데이터를 많이 먹어야 하고 후자는 소박하지만 단단해서 적은 데이터에서도 버팁니다. BioSync는 둘을 한 몸에 두는 쪽을 택했는데, 깊은 쪽으로 멋을 보고 넓은 쪽으로 단단함을 산 셈입니다. 이런 선택은 실무에서 자주 통하는데, 화려한 한 방보다 넘어지지 않는 두 발이 현장에서는 오래 가기 때문입니다. 다만 두 발의 값을 치러야 하는데, 구조가 무거워지고 따져볼 경우의 수가 늘고 어느 쪽이 일했는지를 가려내야 합니다. 그래서 순수 어텐션 제거 실험이 필요한데, 깊은 쪽을 떼어냈을 때 점수가 어떻게 바뀌는지를 보면 두 발의 분담이 보이기 때문입니다.
두 개의 합성 코호트가 지어진 방식
평가 이야기로 넘어가기 전에 데이터의 성격을 분명히 해야 합니다. 이 연구의 평가는 실제 환자 코호트가 아니라 문헌에 근거해 지은 두 개의 합성 코호트에서 이루어졌는데요. 합성이라는 말을 가볍게 넘기면 안 됩니다. 합성은 가짜라는 뜻이 아니라 절차로 지었다는 뜻이기 때문입니다. 문헌에서 알려진 경향성을 규칙으로 옮기고 그 규칙에 따라 가상 인물의 신호를 찍어낸 것인데, 인지 저하가 오면 심박변이는 이렇게 흔들리고 뇌파는 이렇게 바뀌고 활동은 이렇게 줄고 음성은 이렇게 느려진다는 식의 규칙입니다. 규칙이 문헌에 기대고 있다는 점이 중요하고, 그럼에도 규칙은 규칙이라는 점이 함께 중요합니다.
첫 번째 코호트는 네 가지 모달리티를 갖춘 인지 저하 코호트입니다. 심박변이와 뇌파와 활동 기록과 음성이 한 사람에게 함께 붙어 있는데, 인지 저하라는 주제에 걸맞은 묶음입니다. 심장의 자율신경 흔들림, 뇌의 전기적 변화, 낮밤의 움직임 패턴, 말의 운율이 한 방향으로 움직이도록 지어졌기 때문입니다. 두 번째 코호트는 대사 자율신경 코호트로 공개된 AI-READI 웨어러블 스키마를 뼈대로 삼았는데, 실제 현장에서 웨어러블이 뱉는 형태에 맞춘 틀이라는 뜻입니다. 심박과 활동과 수면 같은 연속 측정과 인구통계와 기기 정보 같은 맥락 정보가 한 틀에 담기는데요. 첫 번째가 주제 중심의 깊은 묶음이라면, 두 번째는 현장 형태 중심의 넓은 묶음입니다.
합성 코호트의 장점은 분명합니다. 네 모달리티가 한 사람에게 붙은 완전한 자료를 현실에서 모으기는 어렵기 때문인데, 심전도실과 뇌파실과 활동 추적과 음성 녹음을 한 사람에게 같은 기간에 붙이는 일은 비용도 크고 탈락도 많습니다. 합성은 그 어려움을 우회하는데, 네 신호 사이의 관계를 규칙으로 정해두고 완전한 자료를 찍어냅니다. 모달리티가 빠지는 실험도 마음대로 할 수 있어서, 특정 신호를 지우고 지표가 어떻게 흔들리는지를 체계적으로 볼 수 있습니다. 그래서 융합 구조를 시험하는 초기 단계에서는 이 자유도가 큰 힘이 됩니다.
단점도 분명합니다. 규칙으로 지은 자료에서는 규칙이 정한 것만 보이기 때문인데, 문헌에 없는 상호작용은 자료에 들어있지 않습니다. 실제 몸에서는 심장과 뇌와 행동과 음성이 규칙보다 훨씬 더럽게 얽혀서, 약도 먹고 잠도 못 자고 기기도 다르고 계절도 바뀝니다. 합성은 그 더러움을 걷어내고 매끈하게 다듬은 세계인데, 매끈한 세계에서 통하는 엮음이 더러운 세계에서도 통할지는 따로 확인해야 합니다. 연구가 실제 코호트 검증이 필요하다고 직접 말한 대목이 여기에 닿아 있는데, 합성은 출발선이지 결승선이 아니기 때문입니다.
제가 이 대목에서 마음에 든 부분은 스키마를 빌려온 선택입니다. AI-READI라는 공개 웨어러블 틀에 맞췄다는 것은 다음 팀이 같은 모양의 자료를 가져오면 바로 얹어볼 수 있다는 뜻이기 때문입니다. 닫힌 틀에서만 도는 실험보다 열린 틀에 맞춘 실험이 오래 가는데, 모양이 표준에 가까울수록 합성과 실제 사이의 거리가 잦아듭니다. 물론 모양이 같다고 내용까지 같은 것은 아닙니다. 같은 칸에 다른 몸이 들어오기 때문입니다. 그래도 칸이 같으면 비교가 시작되고, 비교가 시작되면 배움이 이어지는데요. 합성 연구가 할 수 있는 가장 정직한 일 가운데 하나가 바로 이 칸 맞추기라고 저는 봅니다.
숫자를 읽는 법: 0.928과 0.926 사이
이제 숫자를 보겠습니다. 인지 코호트에서 BioSync는 AUC 0.928을 얻었고 단순 결합은 0.926을 얻었으며, 순수 어텐션 제거 모형은 0.911을 얻었습니다. 대사 코호트에서는 BioSync가 정확도와 F1에서 0.764와 0.766을 얻었고 단순 결합은 0.756과 0.758을 얻었습니다. BSI와 잠재 중증도의 상관은 인지 코호트에서 0.91, 대사 코호트에서 0.68이었습니다. 숫자를 나란히 놓고 보면 모양이 분명한데, BioSync가 앞서지만 크게 앞서지는 않고, 순수 어텐션은 단순 결합보다 뒤처지며, 상관은 한쪽에서 매우 높고 다른 쪽에서 중간입니다.
이런 숫자를 볼 때 엔지니어가 가장 먼저 해야 할 일은 흥분을 가라앉히는 것입니다. 0.928과 0.926의 차이는 소수점 셋째 자리에서 갈리는 차이라서, 시드나 분할이나 전처리 손놀림에 따라 뒤집힐 수 있기 때문입니다. 그래서 통계적 의미를 따지기 전에 물어야 할 질문이 있는데, 그 차이가 반복되는지, 여러 분할에서 같은 방향인지, 신뢰 구간이 겹치는지 같은 질문입니다. 연구가 큰 주장을 내걸지 않은 이유도 여기 있다고 보는데, 작은 차이를 크게 부풀리지 않고 품는 구조인데도 크게 앞서지 못했다는 사실을 숫자로 남겼습니다. 저는 이 정직함이 오히려 신뢰를 준다고 봅니다.
두 번째로 볼 지점은 순수 어텐션의 0.911입니다. 깊은 쪽만 떼어내면 단순 결합보다 점수가 떨어지는데, 이 한 줄이 설계의 교훈을 말해줍니다. 상호작용만으로는 직접 합을 이기지 못하기 때문입니다. 토큰 사이의 당김만 보고 각 신호의 직접 신호를 버리면 손해인데, 넓은 쪽이 지킨 직접 합이 생각보다 단단하다는 뜻입니다. 현장에서 단순 결합이 오래 살아남은 이유가 여기 있는데, 단순해 보이지만 버릴 것이 없어서 각 신호의 원래 크기와 방향을 그대로 다음 층에 넘기기 때문입니다. 그래서 화려한 엮음이 그 직접함을 이기려면 데이터도 많아야 하고 최적화도 잘돼야 하는데, 이 실험에서는 그러지 못했습니다.
세 번째로 볼 지점은 상관계수입니다. 인지 코호트에서 0.91이라는 값은 BSI가 잠재 중증도의 순서를 거의 그대로 따라간다는 뜻인데, 합성 규칙이 네 신호를 한 방향으로 움직이도록 지었으니 당연한 면도 있습니다. 그래서 규칙이 정한 방향을 지표가 잘 되돌렸다는 읽기법이 되는데요. 대사 코호트의 0.68은 결이 다릅니다. 중간 정도의 따라감이라서, 웨어러블 틀의 신호들이 한 방향으로만 움직이지 않기 때문입니다. 대사와 자율신경의 관계는 인지 저하의 규칙보다 흐릿한데, 지표가 그 흐릿함을 그대로 물려받았습니다. 저는 이 대비가 오히려 마음에 들었는데, 잘될 때만 잘된다고 말하지 않고 흐릿할 때는 흐릿하다고 숫자로 보여주었기 때문입니다.
여기서는 조금 조심해서 읽을 필요가 있습니다. AUC와 정확도와 상관은 서로 다른 질문에 답하기 때문인데, AUC는 순서를 얼마나 잘 세우는지를 묻고 정확도는 어느 선에서 자를 때 얼마나 맞는지를 물으며 상관은 값의 움직임이 잠재 상태의 움직임과 얼마나 같은 방향인지를 묻습니다. BSI가 연속 지표라면 세 번째 질문이 가장 중요한데, 판정을 잘하는 지표와 경과를 잘 그리는 지표는 다르기 때문입니다. 판정은 칼의 문제이고 경과는 자의 문제인데요. 이 연구가 상관을 따로 보고한 것은 자로서의 쓰임을 의식했다는 뜻입니다. 앞으로 실제 코호트에서는 이 자의 눈금이 일정한지, 같은 사람의 반복 측정에서 얼마나 흔들리는지를 따져야 한다고 저는 봅니다.
빠진 신호 앞에서 버티는 법
현장의 신호는 항상 빕니다. 워치를 벗으면 심박이 비고, 전극이 떨어지면 뇌파가 비며, 녹음을 잊으면 음성이 빕니다. 배터리가 나가고 앱이 죽고 권한이 꺼지기 때문인데요. 완전한 자료는 실험실에만 있습니다. 그래서 융합 모델의 진짜 시험은 완전할 때가 아니라 비었을 때인데, 한 모달리티가 빠져도 지표가 크게 흔들리지 않아야 합니다. 흔들린다면 어느 모달리티가 빠졌을 때 얼마나 흔들리는지를 미리 알아야 하는데, 그게 현장의 약속이기 때문입니다.
이 연구는 모달리티 드롭아웃 훈련이라는 방식으로 이 시험을 치렀습니다. 훈련할 때 일부러 모달리티를 지우는 것인데, 매번 다른 신호를 가리고 남은 신호로 지표를 맞추게 합니다. 비는 상황에 미리 익숙해지게 만드는 셈인데요. 그리고 양쪽 모델에 같은 조건을 걸었습니다. BioSync에도 단순 결합에도 같은 드롭아웃 훈련을 먹인 뒤 손상률별로 점수를 비교했는데, 인지 코호트의 여섯 개 손상률 가운데 다섯 개에서 BioSync가 앞섰고 대사 코호트에서는 가장 높은 손상률에서 BioSync가 앞섰습니다.
이 결과를 읽을 때 두 가지를 함께 봐야 합니다. 첫째, 조건을 맞췄다는 사실인데, 드롭아웃 훈련 없이 비교하면 융합 쪽이 비어 있음에 약한 것이 당연하기 때문입니다. 상호작용에 기대는 구조는 짝이 비면 더 흔들리는데, 조건을 맞추고 나면 이야기가 달라집니다. 비는 법을 배운 어텐션은 빈자리를 메우는 법을 익혀서, 남은 토큰들 사이의 당김으로 빈 토큰의 몫을 나눠 갖습니다. 그래서 다섯 개 가운데 다섯 개가 아니라 여섯 개 가운데 다섯 개라는 대목이 정직하게 읽히는데, 다 이겼다고 말하지 않고 대부분 앞섰다고 말했기 때문입니다.
둘째, 가장 아픈 자리에서 앞섰다는 사실입니다. 대사 코호트의 가장 높은 손상률에서 BioSync가 앞섰다는 것은 신호가 많이 비는 극한에서 엮음의 힘이 나온다는 뜻인데요. 단순 결합은 빈자리를 0이나 평균으로 메웁니다. 메운 값은 얌전하지만 죽은 값입니다. 반면 어텐션은 남은 신호들의 관계로 빈자리를 추측하는데, 추측은 틀릴 수 있지만 살아 있습니다. 비어 있음이 잦은 현장에서는 살아 있는 추측이 죽은 메움보다 나을 때가 많은데, 물론 추측이 항상 옳지는 않습니다. 그래서 어느 손상률부터 추측이 메움보다 나빠지는지를 함께 알아야 하는데, 이 연구가 손상률별로 나누어 본 것은 그 경계를 찾는 첫걸음이라고 저는 봅니다.
저희가 웨어러블 모델을 배포할 때도 빠짐표를 먼저 봅니다. 어느 채널이 얼마나 자주 비는지, 비는 패턴이 시간대와 겹치는지, 밤에는 무엇이 비고 낮에는 무엇이 비는지를 보는 것인데요. 밤에 빠지는 신호와 낮에 빠지는 신호는 의미가 다릅니다. 수면 중 심박 빠짐과 낮 활동 중 음성 빠짐은 다른 결이기 때문입니다. 드롭아웃 훈련이 이런 결을 살리려면 무작정 지우는 것만으로는 부족한데, 시간대와 함께 비는 패턴, 기기별로 함께 비는 패턴을 함께 지워봐야 합니다. 이번 실험은 균일한 손상에 가까운데, 다음 단계는 현장의 빠짐을 닮은 손상이어야 합니다. 빠짐의 모양까지 닮았을 때 내성의 숫자는 현장의 말이 되기 때문입니다.
작은 차이가 가르쳐주는 설계 교훈
0.002와 0.008 같은 차이를 보고 어떤 분은 실망할 겁니다. 트랜스포머를 가져왔는데 단순 결합과 거의 같다면 무엇을 위해 복잡함을 샀느냐는 질문인데요. 저는 그 질문을 반대로 들고 싶습니다. 단순 결합을 품는 구조에서도 크게 앞서지 못했다는 사실이 무엇을 말하는지부터 묻고 싶기 때문입니다. 이 작은 차이가 말해주는 것은 융합의 어려움 자체인데, 여러 신호를 엮는 일이 생각보다 단단한 벽이라는 뜻입니다.
첫 번째 교훈은 직접 합의 힘입니다. 여러 특징을 이어붙여 선형으로 읽는 방식은 무시하기 어렵습니다. 각 신호의 크기와 방향을 그대로 살리기 때문인데요. 상호작용을 배우기 전의 몸 상태가 이미 거기에 들어 있습니다. 심박변이가 낮고 활동이 줄고 음성이 느리면 그 셋을 더하는 것만으로도 상당한 순서가 섭니다. 어텐션이 얹는 상호작용은 그 위의 미세 조정인데, 심장이 흔들릴 때 뇌파의 어느 대역이 함께 흔들리는지, 움직임이 줄 때 음성의 어느 운율이 함께 느려지는지 같은 이차 정보입니다. 미세 조정은 주효과를 이기지 못하는데, 주효과가 강한 자료에서는 차이가 작게 나옵니다.
두 번째 교훈은 합성 규칙의 성격입니다. 문헌에 근거한 규칙으로 지은 자료는 규칙이 정한 상호작용만 담기 때문인데, 규칙이 단순하면 배울 상호작용도 단순합니다. 단순한 상호작용은 선형으로도 잡히는데, 그러면 깊은 쪽의 몫이 줄어듭니다. 어텐션이 펼칠 공간이 좁아지는 것이죠. 인지 코호트의 0.91 상관이 말해주듯 규칙의 방향이 분명하면 직접 합만으로도 방향을 잘 맞춥니다. 하지만 실제 몸의 상호작용은 규칙보다 복잡해서, 비선형이고 사람마다 다르고 시간에 따라 바뀝니다. 그런 복잡함이 들어올 때 어텐션의 자리가 넓어지는데요. 합성에서의 작은 차이가 실제에서의 작은 차이를 뜻하지는 않습니다. 오히려 실제에서의 자리를 묻는 질문으로 남는다고 저는 봅니다.
세 번째 교훈은 학습 예산의 문제입니다. 상호작용을 배우는 일은 직접 합을 배우는 일보다 데이터를 더 먹기 때문인데, 토큰 사이의 당김은 경우의 수가 많습니다. 네 모달리티만으로도 짝의 수가 적지 않아서, 짝마다 언제 당기고 언제 놓을지를 배우려면 예시가 많아야 합니다. 합성 코호트의 크기가 어느 정도인지는 원문에서 확인해야 하지만, 일반적인 합성 실험의 규모에서는 어텐션이 배부를 만큼 먹기 어렵습니다. 배고픈 구조는 얌전해져서 직접 합에 기대고 상호작용은 살짝만 얹는데요. 그 결과는 0.928과 0.926의 나란함으로 나타납니다. 구조의 잘못이 아니라 밥의 문제일 수 있다고 저는 봅니다.
비교하지 않겠다고 말한 대목
이 논문에서 제가 가장 신뢰하게 된 문장은 숫자가 아니라 한계에 대한 문장입니다. 데이터셋과 과제가 달라 다섯 개의 공개 디지털 바이오마커 참조값과 통제된 벤치마크 주장을 할 수 없다는 말이 그 문장인데요. 풀어서 말하면 남의 점수와 내 점수를 나란히 놓고 이겼다고 말하지 않겠다는 뜻입니다. 자료도 다르고 맞추는 문제도 다른데 숫자만 놓고 겨루는 것은 장난이라는 뜻인데, 요즘 논문에서 보기 드문 정직함이라고 저는 봅니다.
벤치마크의 유혹은 강합니다. 다섯 개의 참조값을 가져와 표를 만들고 내 숫자를 맨 위에 올리면 이야기가 깔끔해지기 때문인데, 독자는 한눈에 이해하고 회의에서는 박수가 나옵니다. 그런데 그 깔끔함은 거짓인 경우가 많습니다. 참조값이 재는 몸 상태와 내 지표가 재는 몸 상태가 다르기 때문인데요. 한쪽은 낙상 위험을 재고 다른 쪽은 인지 저하를 잽니다. 한쪽은 병원 장비로 재고 다른 쪽은 손목 기기로 잽니다. 한쪽은 노인을 재고 다른 쪽은 성인을 재는데, 조건이 다르면 숫자는 다른 말을 합니다. 다른 말을 하는 숫자를 한 표에 넣으면 표는 거짓말을 하게 됩니다.
저는 이 선 긋기를 실무의 미덕과 같은 결로 읽었습니다. 저희도 외부 발표를 볼 때 표의 맨 윗줄보다 표 아래 작은 글씨를 먼저 보기 때문인데, 어떤 자료에서 어떤 분할로 어떤 전처리로 어떤 잘라내기로 잰 숫자인지가 본체입니다. 본체가 다르면 윗줄은 소음인데요. 논문이 통제된 비교가 아니라고 못 박은 것은 그 소음을 미리 걷어낸 일입니다. 독자가 표에 취하기 전에 표의 한계를 말했는데, 이런 문장이 있는 논문은 다음 문장도 믿게 됩니다. 작은 차이를 작다고 말하는 문장, 합성이라고 말하는 문장, 실제 검증이 필요하다고 말하는 문장이 함께 믿을 만해지기 때문입니다.
여기서 한 걸음 더 들어가 보겠습니다. 그렇다면 공정한 비교는 어떻게 해야 할까요. 답은 같은 자료, 같은 문제, 같은 분할, 같은 빠짐 조건인데요. 다섯 개의 참조 방식을 내 자료에 그대로 돌리거나, 내 방식을 다섯 개의 자료에 그대로 돌려야 합니다. 어느 쪽이든 손이 많이 가는데, 참조 방식의 코드를 구하고 전처리를 맞추고 잘라내기를 맞추고 평가 지표를 맞추는 일이 필요하기 때문입니다. 하루 만에 되는 일이 아닙니다. 그래서 많은 연구가 이 과정을 건너뛰고, 건너뛴 자리에 참조값 나열이 들어옵니다. 이 연구는 건너뛴 것을 숨기지 않고 건너뛰었다고 말했는데, 다음 팀이 그 빈자리를 메울 수 있도록 자리를 남겼습니다. 저는 빈자리를 남기는 것도 기여라고 봅니다.
합성과 실제 사이에 남은 거리
합성이라는 말을 다시 붙잡고 싶습니다. 합성은 출발선이라고 앞에서 말했는데, 이제 그 말이 정확히 무엇을 뜻하는지 풀어보겠습니다. 합성 코호트는 규칙의 세계라서, 규칙이 정한 분포 안에서 사람은 찍혀 나옵니다. 찍혀 나온 사람은 규칙을 닮는데, 지표가 규칙을 되돌리면 점수가 좋습니다. 상관이 0.91로 높게 나오는 이유가 여기 있는데, 규칙이 분명하면 되돌리기도 쉽기 때문입니다. 문제는 실제 세계가 규칙의 바깥에 있다는 사실인데, 실제 사람은 규칙을 배신합니다. 약을 먹고 술을 마시고 밤을 새우고 기기를 바꾸고 계절을 타는데, 저는 그 배신의 목록이 곧 몸의 목록이라고 봅니다.
실제 코호트 검증이 필요하다는 말은 그래서 의례적인 맺음말이 아닙니다. 넘어야 할 산의 목록인데요. 첫째, 분포의 이동입니다. 합성에서 맞춘 눈금이 실제에서도 맞는지를 봐야 하기 때문입니다. 합성의 심박변이 분포와 실제의 심박변이 분포는 다른데, 기기가 다르고 나이대가 다르고 활동량이 다릅니다. 눈금을 다시 맞추는 과정이 필요합니다. 둘째, 빠짐의 모양입니다. 합성에서는 균일하게 지웠지만 실제에서는 덩어리로 비기 때문인데, 밤에 통째로 비고 주말에 통째로 비고 특정 기기에서만 빕니다. 덩어리 빠짐 앞에서도 지표가 서 있는지를 봐야 합니다. 셋째, 사람 안에서의 반복입니다. 같은 사람을 여러 번 쟀을 때 지표가 얼마나 흔들리는지를 봐야 하는데, 흔들림이 크면 경과 추적에 쓸 수 없기 때문입니다.
넷째, 개입에 대한 반응입니다. 지표가 움직여야 할 때 움직이는지를 봐야 하는데, 운동을 늘리면 내려가야 할 지표가 내려가는지, 치료를 시작하면 방향이 바뀌는지 같은 질문입니다. 합성에서는 규칙이 답을 정해주는데, 실제에서는 몸이 답을 줍니다. 몸의 답을 기다리는 일은 시간이 걸려서 몇 주, 몇 달의 추적이 필요합니다. 다섯째, 공정성의 문제입니다. 나이와 성별과 기종에 따라 지표가 치우치는지를 봐야 하는데, 특정 집단에서만 잘 맞는 지표는 도구가 아니라 편견이기 때문입니다. 합성에서는 집단을 마음대로 맞출 수 있지만 실제에서는 맞출 수 없는데, 있는 그대로의 다양성 앞에서 시험해야 합니다. 저는 이 다섯 가지가 빠지면 검증이라고 부르기 어렵다고 봅니다.
저는 이 거리를 비관으로 읽지 않았습니다. 거리가 보인다는 것이 진전이기 때문인데, 무엇을 확인해야 하는지가 목록으로 나왔다는 뜻입니다. 분포와 빠짐과 반복과 개입과 공정성이라는 다섯 개의 단어가 다음 실험의 제목이 되는데, 다음 팀은 그 제목을 하나씩 가져가면 됩니다. 합성에서 0.928을 찍었다는 사실보다 남은 거리를 다섯 갈래로 정리했다는 사실이 더 오래 남는데, 점수는 낡고 목록은 남기 때문입니다. 좋은 논문은 점수보다 목록을 남긴다고 저는 봅니다.
현장에 가져갈 질문들
마지막 장에서는 이론을 내려놓고 현장의 질문으로 바꿔보겠습니다. 이 연구를 읽고 나서 배포 점검표가 머릿속에 그려졌는데, 거창한 항목이 아니라 바로 쓸 수 있는 질문들입니다. 저는 이런 질문을 회의에서 그대로 씁니다. 답이 바로 나오지 않아도 좋은데, 질문이 남아 있으면 설계가 바뀌기 때문입니다.
첫째, 우리 자료의 네 갈래는 무엇인가요. 심장과 신경과 행동과 음성이라는 묶음이 정답은 아닙니다. 현장에 따라 묶음은 달라지기 때문인데요. 손목 기기만 있다면 심장과 행동과 수면이 묶음이 됩니다. 병동이라면 심전도와 뇌파와 간호 기록이 묶음이 됩니다. 외래라면 설문과 음성과 활동이 묶음이 됩니다. 중요한 것은 개수가 아니라 짝의 이유인데, 왜 그 신호들을 함께 보는지, 함께 볼 때 어떤 순서가 보이는지를 말할 수 있어야 합니다. 이유 없는 묶음은 소음의 묶음이기 때문입니다.
둘째, 빠짐의 지도를 그렸나요. 어느 채널이 얼마나 자주 비는지, 언제 덩어리로 비는지, 비는 패턴이 결과와 겹치는지를 알아야 하기 때문입니다. 빠짐은 결측이 아니라 정보인데요. 밤에 빠지는 사람은 밤에 기기를 벗는 사람입니다. 주말에 빠지는 사람은 주말에 다른 리듬으로 사는 사람입니다. 빠짐 자체가 몸의 신호일 수 있습니다. 그래서 드롭아웃 훈련을 돌리기 전에 빠짐의 지도를 먼저 그려야 하는데, 지도가 있어야 훈련의 지움이 현장의 빔을 닮습니다.
셋째, 단순 결합을 이기는 지점을 찾았나요. 융합 구조를 가져왔다면 단순 결합과의 대결표를 붙여야 하는데, 완전할 때와 비었을 때, 사람이 많을 때와 적을 때, 규칙이 분명할 때와 흐릿할 때를 나누어 봐야 합니다. 모든 칸에서 이길 필요는 없습니다. 어느 칸에서 이기는지가 중요한데요. 비어 있을 때 이긴다면 현장용입니다. 완전할 때만 이긴다면 실험실용입니다. BioSync는 비어 있을 때의 칸에서 힘을 보였는데, 그 한 칸이 현장에서는 크다고 저는 봅니다.
넷째, 값의 내역을 보여줄 수 있나요. 지표 하나만 내놓고 끝내지 말고 기여를 함께 보여주어야 하기 때문입니다. 어느 모달리티가 값을 끌었는지, 어느 신호가 빠졌는지, 빠진 자리를 무엇으로 메웠는지를 함께 적어야 합니다. 임상의는 숫자보다 내역을 믿는데, 오늘 값이 오른 이유가 심장 때문인지 수면 때문인지를 알아야 다음 지시를 내리기 때문입니다. 어텐션 가중치는 내역의 시작일 뿐인데, 가중치를 임상의 말로 바꾸는 번역이 필요합니다. 저는 그 번역까지 있어야 지표가 처방으로 이어진다고 봅니다.
다섯째, 자의 눈금을 확인했나요. 연속 지표라면 판정의 칼보다 경과의 자가 중요하기 때문입니다. 같은 사람을 반복 측정했을 때 눈금이 얼마나 흔들리는지, 어느 정도 움직임부터 의미 있는 변화로 볼지를 정해야 합니다. 최소 감지 변화라는 개념이 여기 들어오는데, 흔들림보다 큰 움직임만 신호로 읽는 규칙입니다. 규칙이 없으면 지표는 불안의 기계가 되어 매일 오르내리는 숫자에 사람이 흔들립니다. 그래서 눈금의 약속이 있어야 지표가 도구가 된다고 저는 봅니다.
여섯째, 비교의 선을 지켰나요. 남의 점수와 내 점수를 함부로 나란히 놓지 말아야 하기 때문입니다. 자료와 문제와 분할이 다르면 표를 만들지 말아야 하는데요. 표가 필요하면 같은 조건에서 다시 돌려야 합니다. 손이 많이 가도 그 손을 생략하면 안 됩니다. BioSync가 다섯 개의 참조값과 겨루지 않겠다고 말한 것처럼 우리도 겨루지 않을 자리를 분명히 해야 하는데, 겨루지 않겠다는 말이 신뢰를 줍니다. 이기는 표보다 정직한 문장이 오래 가기 때문입니다.
이 질문들을 저는 점수보다 먼저 봅니다. 점수는 모델의 현재 모습을 보여주는데, 질문은 모델이 놓였을 때의 모습을 보여줍니다. 놓이는 자리가 바뀌면 위험도 바뀌고 쓰임도 바뀌는데요. 자리를 정하는 일이 지표 설계의 일부입니다. BioSync는 엮음의 지도와 남은 거리의 목록을 함께 남겼는데, 지도는 따라 걸어볼 만하고 목록은 이어 풀 만합니다. 다음 진전은 실제 코호트에서 올 겁니다. 그때 이 질문들이 다시 쓰일 거라고 저는 봅니다.