Ilmu Data vs COVID-19_Part 2





Halo semuanya. Kami melanjutkan seri artikel ini tentang apa yang dapat disediakan oleh ilmu data untuk memprediksi COVID-19. Artikel pertama ada di sini . Hari ini kita akan berbicara tentang model kelas kedua untuk memprediksi dinamika penyebaran COVID-19. Mereka didasarkan pada asumsi tentang peningkatan insiden dan menggambarkan situasi dalam jangka menengah dan panjang. Kami berbicara dengan Nikolay Kobalo, Senior Data Engineer CFT.


Mari kita ingat kondisi apa yang kita miliki:

Mengingat:
Kemampuan data science yang sangat besar, tiga spesialis berbakat.

Temukan: Cara memprediksi penyebaran COVID-19 seminggu ke depan.



Mari beralih ke solusi kedua.



- Kolya, halo. Beri tahu kami model mana yang Anda gunakan untuk mengatasi masalah ini.



- Saya mengambil salah satu model yang, menurut saya, paling sesuai dengan acara tersebut. Model disajikan dalam bentuk persamaan diferensial dan terdiri dari empat fungsi:



1. Jumlah orang yang rentan terhadap infeksi ini;

2. Jumlah pembawa, yaitu orang yang sudah tertular tetapi belum mengetahuinya;

3. Jumlah orang sakit yang menulari orang lain;

4. Jumlah pulih.



Seperti yang Anda lihat, model ini tidak memperhitungkan kematian akibat covid. Anda dapat melihat detail model di github saya: https://github.com/rerf2010rerf/COVID-19-forecast/blob/master/public.ipynb



Model ini disebut SEIR dan termasuk dalam keluarga model kompartemen yang menggambarkan penyebaran epidemi. Model keluarga ini memungkinkan untuk menggambarkan berbagai jenis infeksi. Misalnya, yang kekebalannya dikembangkan (atau, sebaliknya, tidak dikembangkan). Atau mereka yang memiliki (atau tidak memiliki) masa inkubasi. Dalam kasus COVID-19, saya menggunakan model dengan masa inkubasi dan kekebalan yang dihasilkan pada orang yang sakit.



Semua model poligami adalah sistem persamaan diferensial orde satu. Untuk SEIR terlihat seperti ini:







Di sini:

S (t) - (Rentan) - jumlah orang yang rentan terhadap infeksi.

E (t) - (Terkena) - jumlah operator, mis. orang yang terinfeksi yang penyakitnya belum bermanifestasi karena masa inkubasi.

I (t) - (Infectious) - terinfeksi.

R (t) - (Pulih) - pulih.



N = S + E + I + R - ukuran populasi. Itu tetap konstan, mis. diasumsikan bahwa tidak ada yang meninggal karena penyakit tersebut.

μ adalah angka kematian alami.

α adalah kebalikan dari masa inkubasi penyakit.

γ adalah kebalikan dari waktu pemulihan rata-rata.

β adalah koefisien intensitas kontak yang mengarah ke infeksi.



Siklus hidup individu dalam model SEIR terlihat seperti ini:







Orang yang sehat, tetapi belum sakit (Rentan) dapat terinfeksi dari orang yang terinfeksi (Menular). Probabilitas orang yang sehat akan terinfeksi dijelaskan oleh parameter β.



Orang yang terinfeksi masuk ke keadaan pembawa infeksi (Terkena). Carrier adalah orang yang penyakitnya belum terwujud, yaitu mereka memiliki masa inkubasi. Operator tidak dapat menginfeksi siapa pun. Transisi orang yang rentan terhadap penyakit menjadi pembawa penyakit dijelaskan oleh dua persamaan pertama model (menggunakan istilah β (I / N)).



Setelah 1 / α hari (masa inkubasi) setelah infeksi, pembawa memasuki keadaan terinfeksi (Menular).



Setelah 1 / γ hari (waktu pemulihan), orang yang terinfeksi memasuki status Pulih. Orang yang sembuh mengembangkan kekebalan, dan dia tidak dapat lagi tertular infeksi ini.



Model tersebut juga memberikan angka kematian alami dari populasi dalam populasi tersebut. Kematian dalam model SEIR diimbangi dengan kesuburan, sehingga jumlah penduduk tidak berubah. Pada saat yang sama, jumlah orang yang pulih dalam populasi akan berkurang, karena bayi yang baru lahir tidak memiliki kekebalan. Sejalan dengan itu, jumlah orang yang pulih dalam populasi menurun seiring waktu. Tingkat mortalitas dijelaskan oleh parameter μ.



- Anda memiliki koefisien dalam model. Jadi, apakah Anda membuat asumsi?



- Salah satu asumsi saya adalah bahwa angka kematian alami dalam populasi dapat diabaikan, yaitu. μ = 0. Asumsi ini tampaknya valid, karena kami ingin memprediksi penyebaran infeksi dalam waktu singkat, hanya dalam beberapa bulan.



Selain itu, model yang dipilih mengasumsikan bahwa mereka yang telah pulih menjadi kebal terhadap infeksi, yaitu tidak dapat terinfeksi kembali.



- Dan begini, ngomong-ngomong?



- Sepertinya, ya. Beberapa infeksi ulang telah dicatat, tetapi paling sering ini tidak terjadi. Oleh karena itu, dapat dikatakan demikian.



- Dan apa "faktor intensitas kontak" Anda?



“Di sini yang saya maksud adalah intensitas orang-orang yang bersentuhan satu sama lain dan menjadi terinfeksi. Secara kasar, ini adalah kemungkinan bahwa ketika dua orang bertemu, dimana yang satu terinfeksi dan yang lainnya tidak, yang kedua pada akhirnya akan jatuh sakit.



- Berapa harganya? Dekat dengan satu?



- Tidak, saya memilih parameter ini sesuai dengan data. Itu tergantung pada tingkat isolasi diri. Misalnya, jika sebagian besar penduduk tidak bersentuhan dengan orang lain, maka koefisiennya menjadi lebih rendah, dan jika penduduk secara aktif berkomunikasi satu sama lain, maka ia tumbuh.



- Baik. Apakah Anda juga memiliki waktu pemulihan? Baik alfa dan gamma?



- Saya mengambil alpha sama dengan 1 / 5.1, ini adalah parameter yang diketahui untuk COVID-19 (parameter terbalik ke masa inkubasi dalam beberapa hari). Dan saya memilih keseluruhan menurut data. Ini adalah "waktu penyembuhan". Omong-omong, "intensitas kontak" juga berdasarkan data.



- Baiklah. Lalu, dapatkah Anda memberi tahu kami asumsi apa yang dibuat oleh para model? Apa arti setiap persamaan?



- Persamaan pertama menjelaskan perubahan jumlah yang rentan terhadap infeksi. Secara khusus, istilah ketiga mengatakan bahwa semakin intens kontak antara yang terinfeksi dan yang rentan, semakin cepat jumlah yang rentan menurun. Apalagi jika seseorang tertular, kemudian tertular, maka ia tidak lagi termasuk dalam angka tersebut. Pada awal epidemi, itu sama dengan jumlah orang dalam populasi.



Kemudian diambil jumlah pembawa dari mereka yang rentan terhadap infeksi, yaitu seseorang berkomunikasi dengan orang yang terinfeksi, menjadi terinfeksi dan menjadi pembawa infeksi. Ini dijelaskan dalam persamaan kedua. Dikatakan bahwa tingkat pertumbuhan pembawa semakin besar, semakin intens kontak antara yang rentan dan yang terinfeksi, dan sebaliknya, semakin sedikit, semakin sedikit pembawa yang tersisa saat ini.



Persamaan ketiga mengatakan bahwa laju pertumbuhan orang yang terinfeksi lebih besar, semakin banyak pembawa sekarang (yang berubah menjadi terinfeksi), dan semakin sedikit, semakin banyak yang terinfeksi.



Persamaan keempat menggambarkan tingkat pertumbuhan mereka yang telah pulih, yang lebih besar, lebih banyak terinfeksi (yang dapat pulih), dan semakin sedikit, semakin banyak yang pulih.



- Kedengarannya seperti gambaran perkembangan situasi.



- Faktanya, ada model yang berbeda. Ini adalah model SEIR, dan ada SIR, di mana tidak ada yang rentan terhadap infeksi. Ada model dengan lebih banyak parameter. Ada model yang menyediakan kematian akibat infeksi, tetapi saya tidak menggunakannya.



- Di mana Anda menemukan model ini?



- Di Google. Ada sebuah artikel di Wikipedia. Menemukan artikel tambahan.



- Anda juga mempresentasikan grafiknya.



- Grafik ini adalah contohnya. Ini tidak didasarkan pada data nyata. Ini hanya menunjukkan bagaimana model berperilaku. Dia meramalkan bahwa setiap orang pada akhirnya akan sakit dan sembuh.







- Oke, jadi kamu mengambil semuanya, lalu apa?



- Saya mengambil data yang tersedia menurut negara. Dia berasumsi bahwa angka kematiannya nol. Tulis ulang perbedaan dalam bentuk beda hingga:







Sebagai operator beda hingga dalam solusi ini, digunakan beda dua sisi.

Jumlah orang yang pulih R menurut hari ada di data awal, dan jumlah I yang terinfeksi sama dengan jumlah kasus yang dikonfirmasi dikurangi jumlah yang pulih. Jadi dari persamaan terakhir kita dapat mencari γ dengan mengoptimalkan fungsi tujuan MALE (ΔR-γI).







Untuk melacak bagaimana tindakan karantina memengaruhi perkembangan epidemi, saya sedikit mempersulit tugas saya dan mengganti koefisien β dengan fungsi β (t) - lagipula, saat karantina diperkenalkan di negara tersebut, tingkat infeksi harus menurun, yang berarti bahwa dalam kasus kami β tidak akan konstan. Karena kita sudah memiliki semua kondisi awal untuk menyelesaikan difur, kita dapat menggunakan optimasi untuk mencari fungsi β (t).



- Ini adalah hari perbedaan?



- Hari dikurangi hari sebelumnya. Saya memasukkan data dan menghitung koefisien yang tidak diketahui.



- Beta dan gamma?



- Saya mengambil Alpha 5.1 hari. Oleh karena itu, perlu ditemukan beta dan gamma - intensitas kontak dan waktu pemulihan.



- Dan apa yang terjadi padamu?



- Ada grafik. Tiap daerah dan tiap negara ternyata berbeda. Saya memutuskan untuk setiap negara secara terpisah. Di sebelah kiri adalah grafik data (hitam - nyata, terinfeksi merah dan pulih, diprediksi oleh model). Terinfeksi + pulih - ternyata E + R. Di sebelah kanan adalah grafik koefisien beta. Beta, omong-omong, seharusnya bergantung pada waktu. Di sini, lonjakan terbesar di β bertepatan dengan waktu karantina pada 30 Maret.







- Dan Anda menghitungnya menurut data atau berasumsi demikian?



- Ini sudah dihitung menurut data. Inilah hasil pelatihan di Moskow.



- Apakah Anda mengatur sendiri batas waktu?



- Saya pikir fungsinya memiliki bentuk dua tahap. Dan dioptimalkan. Saya hanya menyesuaikan datanya dan menemukan fungsi optimal yang paling sesuai. Saya juga mencoba menggunakan fungsi dengan jumlah anak tangga yang berbeda, tetapi yang dua tahap menunjukkan hasil yang lebih baik.



- Mari kita lihat negaranya, misalnya Italia. Nah, di sini Anda memiliki gambaran yang berbeda ...







- Di Italia, karantina, tampaknya, bekerja lebih baik. Dan ada lebih banyak orang yang sakit. Model tersebut mengonfirmasi bahwa karantina diperkenalkan pada 9 Maret.



- Apa yang Anda pilih untuk ramalan akhir?



- Untuk perkiraan akhir, saya memilih intensitas kontak yang konstan dan membuat model menggunakan dua titik terakhir. Artinya, kita tahu seluruh sejarah sebelumnya, tapi kita hanya mengambil poin terakhir.



- Ini untuk prediksi minggu ini?



- Iya. Dan yang terjadi sebelumnya adalah melihat bagaimana model berperilaku. Dan kemudian saya sudah melihat fungsi mana yang lebih baik untuk diambil dan berapa banyak poin untuk dipelajari.



- Mungkin, jika Anda ingin meramalkan sampai sekarang, Anda akan menerima keputusan yang berbeda. Apakah Anda memiliki sesuatu yang akan menunjukkan bagaimana situasi dapat berkembang lebih jauh?



- Iya. Tapi tidak terlalu menarik disana. Dia meramalkan bahwa semua orang di Moskow akan sakit pada September.



- Pada salah satu pertemuan, Anda mengatakan bahwa menurut perkiraan Anda, puncaknya seharusnya pada bulan Juli. Faktanya, semuanya terjadi sedikit lebih awal. Menurut Anda, apa yang tidak diperhitungkan oleh model?



- Mungkin beta. Mungkin karantina semakin intensif. Ada kemungkinan intensitas kontak menurun karena orang pernah sakit, tidak menularkan, dan tidak tertular. Beta entah bagaimana harus bergantung padanya. Dan di sini tidak diperhitungkan.



- Jadi, kamu bilang kita bisa mengatur semuanya dengan satu beta?



- Menurut data yang diketahui - ya, kami bisa, dengan beta dan gamma menyesuaikan.



- Apakah model Anda memprediksi gelombang berikutnya?



- Tidak, semuanya stabil: tumbuh, tumbuh, tumbuh dan semua orang akan sakit. Meski ada juga faktor kemusiman. Periode musim gugur, misalnya (saat flu, dll, sistem imun melemah). Tetapi model tersebut tidak memperhitungkan semua ini.



- Apa pro dan kontra model Anda?



- Pada saat kompilasi model, hanya ada sedikit data yang diketahui. Sekarang baik masa pemulihan maupun masa inkubasi sudah diketahui (dulu 5,1, sekarang lebih akurat diukur). Dari pro: ini menunjukkan proses itu sendiri, bagaimana kelanjutannya. Dan jika kita menyelidiki lebih dalam pada contoh negara lain, misalnya, Italia, Jerman, bagaimana pengaruh beta ini, maka akan mungkin bagi kita untuk menyempurnakan model ini dan membuat perkiraan jangka panjang yang lebih akurat.



, data science – .



, , . - – , , , , .



, , . .
Dia membuat model paling keren;)



All Articles