우리는 이상한 시대에 살고 있습니다. 이 게시물을 작성하는 시점에서 저는 2주 동안 #WFH였습니다. 한때 분주했던 도시는 이제 유령 도시처럼 서 있습니다. TV와 소셜 미디어 모두 하나의 주제로 가득 차 있습니다. Covid-19, 구어체로 코로나바이러스라고 부르는(여러 가지 중 하나일지라도)
이 팬데믹은 확실히 많은 불안과 어려움을 가져왔지만 몇 가지 흥미로운 도전 과제도 가져왔습니다. Johns Hopkins University와 같은 연구원들 덕분에 우리는 전 세계 국가에서 확인된 사례 수에 대한 데이터에 매일 액세스할 수 있습니다. 이것은 저와 같은 데이터 중독자에게 희소식입니다! 그러나 그것은 또한 저주가 될 수도 있습니다. 우리 중 많은 사람들이 그 데이터를 가지고 실행하여 무모하게 모든 종류의 도표, 차트 및 모델을 만든 다음 그 결과를 사용하여 전염병의 범위와 심각성에 대해 기이한 주장을 할 것입니다. 최근 내 트위터 피드는 득보다 실이 더 많고 어떤 바이러스보다 더 빨리 두려움을 퍼뜨리는 데 도움이 되는 차트와 기사를 요구하는 전문가들로 가득 차 있습니다. 내가 찾은 한 진술을 바꾸어 말하면, "많은 데이터 즉 사람들이 이 모든 작업이 완료된 후 영혼 검색을 수행해야 할 것입니다."( https://twitter.com/wisevis/status/1237021575926472704 ).
이것은 데이터를 플로팅하고 분석하는 것이 어떤 식으로든 틀리다는 것을 말하는 것이 아닙니다. 나는 에서 일한다 JMP , 데이터 중독자로 가득 찬 곳, 많은 사람들이 들어오는 데이터를 추적하고 플로팅합니다. 빠르게 살펴보기 JMP 공개 알람을 일으키지 않고 유익한 방식으로 데이터를 표시하기 위해 신중하게 준비된 많은 놀라운 차트를 표시합니다. 사실, 우리 자신의 Byron Wingerd는 최근에 웨비나를 열고 자신의 글을 썼습니다. 블로그 게시물 Covid-19 데이터의 적절한 플로팅에 대해. 그가 몇 가지 뛰어난 점을 지적하고 이전에 이러한 유형의 데이터에 대한 경험이 있으므로 확인하는 것이 좋습니다. 이 모든 것의 한 가지 공통점은 현재 데이터만 시각화한다는 것입니다. 모델링도 예측도 없습니다. 모두 매우 안전합니다.
글쎄요, 두려움 없는 독자 여러분, 저는 제가 안전하지 못했다는 것을 고백해야 합니다. 어떤 유명한 만화 오리가 말했듯이 나는 "위험해졌습니다". 좋아요… 예측 모델을 만들었습니다.
삶의 끝자락
이제 횃불과 갈퀴를 잡기 전에 제 말을 들으십시오. 이러한 예측 모델을 만들 때 이전에는 공개할 생각이 없었습니다. 그것들은 제 개인적인 용도로만 사용되었습니다. 사실, 내가 지금 그것들을 공유하는 이유는 왜 당신이 해서는 안 된다 처음부터 그들에게 너무 많은 신뢰를 두십시오. George Box는 "모든 모델은 틀리지만 일부는 유용합니다"라고 웅변적으로 표현했습니다. 그리고 네, 그 인용문이 너무 자주 사용되어 셀 수 없다는 것을 압니다. 하지만 제가 여러분에게 보여드릴 내용이 그것을 새로운 시각으로 보여주기를 바랍니다. 모델에 적합하고 모든 메트릭이 매우 정확하다는 것을 가리키고 있다고 해서 그것이 정확하다는 의미는 아닙니다.
본격적으로 시작하기 전에 배경 정보에 대해 알아보겠습니다. 내가 사용한 데이터는 Johns Hopkins University에서 기록한 일일 누적 확진자 수입니다. GitHub 사이트 2020년 1월 22일부터. 이전에 많은 사람들이 말했듯이 카운트는 테스트가 포괄적인 만큼만 정확합니다. 즉, 제한된 테스트는 덜 신뢰할 수 있는 데이터를 의미합니다. 더욱이, 나는 명백한 이유로 누적 사망자 수를 모델링하지 않았으며 의도하지도 않습니다.
1과: 한계를 알라
누적 확인 수를 모델링하는 방법을 선택할 때 나는 역학에 대한 아주 기초적인 지식을 기반으로 모델을 선택했습니다. 지수 모델을 사용하는 사람들에 대해 들어본 적이 있을 것입니다. 이 모델은 우리가 잘 경험한 확인된 사례의 급격한 가속에 적합합니다. 그러나 나는 아주 좋은 이유로 그러한 모델을 사용하지 않았습니다. 그것 단순히 물리적으로 정확하지 않습니다.
실제 데이터로 설명하겠습니다. 아래는 이탈리아(2020년 3월 22일 기준)의 지수(녹색, 사람들이 말하는 모델이라고 가정) 및 물류(파란색) 적합을 보여주는 그림입니다.

두 모델 모두 데이터에 매우 잘 맞습니다. 그러나 지수 모델은 한계 없이 계속 증가하는 반면 로지스틱 모델은 결국 더 높은 값에서 수평을 유지합니다. 전염병학자들이 인구 전체에 걸쳐 퍼지는 질병의 행동을 설명하기 위해 사용하는 가장 간단한 모델은 다음과 같습니다. SIR 모델 . 그 이름은 인구가 어떻게 나뉠 수 있는지에서 따온 것입니다: 질병에 취약함, 질병에 감염됨, 질병에서 제거됨. 기본 아이디어는 새로운 질병에 걸리기 쉬운 고정된 개체군이 있으며 이러한 개체의 상당 부분이 감염 및 제거 단계(회복 또는…을 통해)를 통해 전환된다는 것입니다. 이러한 모델을 구현하고 감염된 개인의 누적 수를 추적하면 그 물류 곡선과 매우 유사한 결과를 얻게 됩니다. 이것은 모두 한 가지 중요한 사실 때문입니다. 고정된 인구 규모가 있습니다. 지수 모델은 슈퍼히어로처럼 계속 오르락내리락하며, 반대하려는 이른바 인구 임계값을 무시합니다. 이는 감염을 막는 방법을 취했거나 전체 인구가 감염되었기 때문에 누적 감염자가 어느 시점에서 평준화되어야 하는 현실과 분명히 일치하지 않습니다.
또한 이 동작은 여러 다른 소스에서 명확하게 설명된 것을 볼 수 있습니다. 중국에서 기록된 카운트는 이러한 추세를 분명히 따릅니다. 원래 Flatten Curve에 표시된 플롯과 현재 유명한 시뮬레이션 워싱턴 포스트 기사 또는 이 놀라운 확대 일일 카운트에서 이 추세를 보여줍니다(위 그림에 표시된 누적 카운트의 동작으로 해석됩니다. 해당 곡선의 1차 도함수를 생각하십시오). 따라서 요약하면 지수 모델을 사용하지 않았습니다. 대신 물류 모델로 시작했습니다.
이것은 로지스틱 모델이나 다른 시그모이드 모델(sigmoid = S자형)에도 약점이 없다는 말은 아닙니다. 지수가 너무 선동적이라는 측면에서 오류가 발생하는 경우 물류는 너무 낙관적이라는 측면에서 오류를 범할 것입니다. 모든 S자형 모델은 증가율, 변곡점 및 점근선의 대략 세 가지 기본 부분으로 나눌 수 있습니다.
첫 번째 부분은 자명합니다. 누적 합계가 0에서 얼마나 빨리 증가하는지입니다. 이 부분은 두 모델에 공통적인 유일한 부분입니다. 두 번째 부분인 변곡점은 증가 속도가 빠른 것에서 느린 것으로 전환되기 시작하는 모델의 지점입니다. 위의 그림에서 로지스틱 모델의 변곡점은 곡선의 중앙에 있는 마지막 점이 어디에 있는지에 대한 것입니다. 일일 집계 측면에서 사례 수가 최고점을 찍은 후 감소하기 시작하는 지점입니다. 마지막 부분인 점근선은 발생 가능한 최대 사례입니다. 일일 수의 관점에서 보면 케이스 수가 마침내 0(또는 최소한 매우 적은 수)으로 떨어지는 곳입니다.
분명히, 점근선과 증가율은 예상되는 총 케이스 수와 예상 시간을 알려주기 때문에 모델에서 가장 인기 있는 두 가지 측면일 것입니다. 사실, 점근선은 상황이 얼마나 나쁠 것으로 예상해야 하는지 알려 주기 때문에 더 선호될 수 있습니다. 그러나 가장 큰 약점이기도 하다. 너무 낮은 점근선은 안전과 이해에 대한 잘못된 감각으로 당신을 달래게 할 것입니다. 사실 저는 변곡점이 더 중요하다고 주장하고 싶습니다. 변곡점이 어디에 있는지 모른다면 지수 모델을 사용하는 것보다 더 나은 위치에 있지 않습니다. 데이터를 볼 때 더 자세히 설명하겠습니다.
요약하면, 모델을 구축할 때 첫 번째 교훈은 데이터뿐만 아니라 모델의 한계를 아는 것입니다. 모델의 작동 부분을 이해하면 해당 모델의 강점과 약점, 그리고 가장 중요하게는 모델이 고장날 가능성이 있는 부분을 이해할 수 있습니다. 또한 모델이 작동할 컨텍스트를 이해하는 것이 중요합니다. 주제 전문 지식과 더 일치하는 모델이 도구 상자에서 바로 사용 가능한 빠른 모델보다 가능하면 선호해야 합니다. 마지막으로 모델이 어떻게 해석되고 사용되며 남용될 수 있는지 이해하십시오. 이 대유행의 맥락에서 지수 모델은 회복에 대한 희망이 없다고 말합니다. 물류 모델은 가라앉을 것이라고 말합니다. 시간 문제일 뿐입니다.
2과: 전쟁터에서 살아남는 계획은 없다
날짜: 2020년 3월 23일. 시간: 이른 아침인가? 상관없습니다. 지난 주말에 저는 이미 데이터를 가지고 놀고 JMP의 Fit Curve 플랫폼을 사용하여 로지스틱 모델 피팅을 시도했습니다(집에서 팔로우하는 사람들을 위한 로지스틱 3P 모델). 그 월요일에 나는 내 모델을 테스트하기로 결정했습니다.
이제 저는 이탈리아(당시 중국에 이어 두 번째로 많은 사례), 뉴욕, 캘리포니아(확진 사례가 많은 2개 주) 및 노스캐롤라이나(물론 그렇게 할 것이기 때문에)의 4개 위치에서 데이터를 모델링했습니다. 동일한 모델 형식을 사용하는 동안 개별 위치마다 고유한 매개변수 추정값이 있는지 확인했습니다(위치를 그룹으로 사용). 이것은 자연스러운 그룹화 내에서 모델을 피팅할 때 자연스러운 경향입니다. 또한 각 위치가 고유하고 서로 다르게 취급되어야 한다는 사실을 반영합니다. 이탈리아에서 검사와 치료를 하는 방식이 여기 미국과 많이 다르고, 주마다 차이도 있습니다. 데이터 모델링은 이 사실을 반영해야 합니다.
다음은 2020년 3월 22일까지의 일일 누적 카운트를 사용하여 얻은 데이터로 대략 2개월 분량의 데이터입니다.

그 핏이 얼마나 놀라운지 보십시오! "이게 뭐야?! 그런 깨끗한 데이터가 모두 정렬되어 있고 잘 작동합니다. 그리고 그 거의 완벽한 추세?! 오 얼마나 영광스러운 날인가! 당신은 그런 절묘한 데이터에 대해 칭찬을받을 것입니다! 브라보, 맙소사 브라보!” 많은 데이터 분석가가 이것을 보고 이러한 적합성이 얼마나 완벽한지에 대해 질투로 움츠러들 것이라고 장담합니다. 그리고 누가 그들을 비난합니까? 데이터가 얼마나 깨끗한지 보세요! 이렇게 멋진 옷을 입지 않았다면 정말 놀랐을 거에요!이렇게 낮은 p-값과 R^2 값이 결합되어 1에 가까우므로 이러한 모델이 제대로 표시되어야 하지 않습니까? 잘…
내 노골적인 냉소적 어조에서 짐작할 수 있듯이, 이 모델은 지표가 말하는 보석이 아닙니다. 무언가 잘못되었을 수 있다는 첫 번째 경고 신호는 매개변수 추정값 자체를 살펴보는 것입니다. 각 위치에 대한 변곡점 추정치(가장 중요한 매개변수라고 말한 것을 상기하십시오)를 확인하십시오. 그것들은 모두 거의 동일합니다... 그리고 그것들은 모두 기록된 데이터의 가장 마지막 날입니다. 예, 모델은 사례 비율이 느려지기 시작하고 사례가 곧 감소하기 시작해야 하는 바로 그 순간을 우연히 포착했다고 말합니다! 얼마나 운이 좋은가! 비꼬는 어조로 다시 한 번 사과드립니다. 그러나 이것은 모델 추정 절차의 우연이라는 것이 분명해야 합니다. 사실 이 블로그를 쓰기 전까지는 전혀 눈치채지 못했습니다. 그리워하기 쉽습니다.
하지만 그날 당신도 나와 똑같은 사람이 되어 그 중요한 사실을 놓쳤다고 가정해 봅시다. 모델을 추정한 후에는 앞으로 며칠 동안 모델 예측과 실제 개수를 추적하여 테스트할 기회가 있다는 것을 깨달았습니다. 그래서, 그것이 바로 내가 한 일입니다.
화요일 아침에 와서(카운트 데이터를 가져오는 데 하루 지연이 있다는 점에 유의하십시오...그것은 그 특성일 뿐입니다.) 저는 전날의 카운트를 입력하고 이를 포인트별 95% 신뢰 구간과 함께 내 모델 예측과 비교했습니다(왜냐하면 불확실성 없는 예측은 통계 실습 면허를 잃는 빠른 방법입니다. 그래서 내가 운이 어땠어?
위치
|
실제 개수
|
예측
|
95% 낮음
|
95% 어퍼
|
이탈리아
|
63927
|
64721.72
|
63662.40
|
65781.04
|
미국 캘리포니아
|
2108
|
1829.92
|
1758.63
|
1901.21
|
미국 뉴욕
|
20884
|
19171.40
|
18616.80
|
19726.00
|
미국 노스캐롤라이나
|
353
|
386.29
|
367.21
|
405.37
|
어느 날. 어느 날 문을 나서면 정확도가 겨우 25%로 떨어집니다. 내 모든 미국 모델은 거의 즉시 폭격을 당했습니다. 캘리포니아와 뉴욕 모델은 실제 개수를 과소평가하는 반면 노스캐롤라이나 모델은 실제 개수를 과대평가합니다. 이탈리아 모델은 또한 기술적으로 실제 개수를 과대 평가했지만 낮은 불확실성 경계는 여전히 이를 포착합니다. 하지만 이 모든 것이 그저 우연일 수도 있습니다. 데이터에 언뜻 보기보다 노이즈가 더 많을 수 있으며 모델이 시작할 시간을 주어야 합니다. 그렇죠?
다음은 목요일 집계까지 남은 주의 데이터입니다.
위치
|
낮
|
실제 개수
|
예측
|
95% 낮음
|
95% 어퍼
|
이탈리아
|
화요일
|
69176
|
70487.69
|
68933.02
|
72042.36
|
수요일
|
74386
|
76058.94
|
73906.42
|
78211.46
|
목요일
|
80589
|
81345.24
|
78513.24
|
84177.24
|
미국 캘리포니아
|
화요일
|
2538
|
2041.74
|
1925.52
|
2157.95
|
수요일
|
2998년
|
2238.73
|
2067.96
|
2409.51
|
목요일
|
3899
|
2415.94
|
2184.81
|
2647.07
|
미국 뉴욕
|
화요일
|
25681
|
21698.12
|
20692.37
|
22703.87
|
수요일
|
30841
|
23357.28
|
21946.15
|
24768.41
|
목요일
|
37877
|
24361.26
|
22648.06
|
26074.46
|
미국 노스캐롤라이나
|
화요일
|
495
|
461.98
|
422.16
|
501.77
|
수요일
|
590
|
530.14
|
463.68
|
596.59
|
목요일
|
738
|
586.96
|
491.78
|
682.14
|
Soooo...전망은 확실히 좋지 않아 보입니다. 적어도 며칠 동안은 4개 중 2개가 맞았습니다. 그러나 일반적으로 내 모델은 끔찍하게 수행되었습니다. 특히 캘리포니아와 뉴욕 모델은 실제 카운트를 심각하게 과소 평가합니다.
“내가 어떻게 대답했습니까?”라고 물을 수 있습니다. "그리고 나는 당신을 의미했습니다." 당신은 또한 명확히 할 수 있습니다. 대부분의 내 모델이 부서지고 불타고, 연기와 화염이 잔해에서 솟아오르는 것을 매일 보면서 무더기로 뭉쳤습니까? 사실 나는 그 결과에 꽤 감동받았다.
모순되게 들리겠지만, 저는 이것이 모델 평가에서 사용하는 메트릭을 맹목적으로 신뢰해서는 안 되는 이유에 대한 완벽한 예라는 것을 알았습니다. 또한 메트릭이 아무리 완벽해 보이더라도 모델을 항상 검증하고 테스트해야 하는 훌륭한 이유를 제시합니다. 이것이 교차 검증과 같은 기술이 통계 모델링 커뮤니티에서 널리 보급된 이유입니다. 데이터에 거의 완벽하게 맞는 가장 아름다운 모델을 가질 수 있습니다. 그러나 정확한 예측에 실패하면 완전한 쓰레기입니다. 모델은 데이터를 넘어 예측하는 능력만큼만 우수합니다.
계속 지켜봐 주세요…
그럼 다음은 어떻게 될까요? 우리의 영웅은 이 비극에서 어떻게 일어날까요? 그에게는 어떤 새로운 도전이 기다리고 있을까요? 그는 어떤 새로운 교훈을 배우게 될까요? 그리고 가장 중요한 것은 언제쯤 사무실로 돌아갈 수 있을까요?
체크 아웃 이 시리즈의 다음 부분 , 여기서 배운 더 많은 교훈을 논의하고 모든 질문에 대한 답변을 바랍니다. 마지막 하나 빼고. 보시다시피 저는 솔직한 답변을 드릴 수 있는 입장이 아닙니다.
감사 @matteo_patelmo !
다양한 모델을 가지고 노는 모습을 보니 반갑습니다. 이것은 실제로 내 후속 게시물에서 논의할 내용입니다. 나는 실제로 당신과 똑같은 것을 사용하고 있었기 때문에 내가 올바른 길을 가고 있다는 느낌을 받았습니다. 사실, Logistic 및 Gompertz 모델은 둘 다 더 많은 특수 사례인 것으로 밝혀졌습니다. 일반화된 물류 모델 , 저도 사용하기 시작했습니다. 가장 큰 증가율이 발생하는 곳에 영향을 미치는 추가 매개변수가 있습니다. 내 후속 게시물에서도 이에 대해 이야기할 계획이지만 이것이 귀하의 데이터와 어떻게 작동하는지 보고 싶습니다.
교차 검증에 대해 생각해 보았지만 가장 일반적인 형태로 여기에서 얼마나 잘 할 수 있을지 모르겠습니다. 당신이 할 수 있는 가장 가까운 것은 가장 최근 데이터의 일부를 부분집합하고 이를 검증에 사용하는 것입니다. @russ_wolfinger가 금요일 JMP On Air 프리젠테이션에서 했던 것처럼 그는 검증을 위해 마지막 주 데이터를 사용했습니다.
안녕 @칼킹 , 매우 흥미로운 게시물.
나는 또한 covid19 사례를 예측하기 위한 모델의 예측 정확도로 약간의 플레이를 했으며 내 결과를 커뮤니티와 공유하고 싶습니다.
특정 날짜까지 수집된 데이터를 기반으로 미래 데이터를 예측하는 Gompertz 3P 기능과 Logistic 3P를 비교했습니다.아래 차트는 이탈리아에서 가장 심각한 피해를 입은 지역인 롬바르디아에 대한 결과를 나타냅니다.곡선은 95년(4월 5일)의 특정 날짜(x축)에 사용할 수 있는 데이터의 예측을 나타냅니다.4월 5일 롬바르디아의 실제 총 확진자 수는 49118명입니다.
Gompertz 3P 모델(그런데 AICc가 일관되게 가장 낮음)은 여러 날부터 이 값을 과대평가했고, 지난 며칠 동안 실제 값으로 수렴했습니다.반면에 물류3P는 항상 실제 가치를 과소평가하고 있습니다.이로부터 얻은 주요 교훈은 장기 예측(매우 며칠 이상)이 매우 부정확해질 수 있으며 최소 AICc는 이러한 종류의 모델 선택에 매우 신중하게 사용해야 한다는 것입니다.교차 유효성 검사를 어떻게 적용할 수 있는지 잘 모르겠습니다.
