chap04.tex 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2. % Author: Phillip Rothenbeck
  3. % Title: Investigating the Evolution of the COVID-19 Pandemic in Germany Using Physics-Informed Neural Networks
  4. % File: chap04/chap04.tex
  5. % Part: Experiments
  6. % Description:
  7. % summary of the content in this chapter
  8. % Version: 01.01.2012
  9. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  10. \chapter{Experiments 10}
  11. \label{chap:evaluation}
  12. In the preceding chapters, we explained the methods (see~\Cref{chap:methods})
  13. based the theoretical background, that we established in~\Cref{chap:background}.
  14. In this chapter present the setups and results from the experiments and
  15. simulations, we ran. First, we discuss the experiments dedicated to identify
  16. the epidemiological parameters of $\beta$ and $\alpha$ in synthetic and
  17. real-world data. Second, we examine the reproduction number in synthetic and
  18. real-world data of Germany. Each section, is divided into a description of the
  19. experimental setup and the results.
  20. % -------------------------------------------------------------------
  21. \section{Identifying the Transition Rates on Real-World and Synthetic Data 5}
  22. \label{sec:sir}
  23. In this section, we aim to identify the transmission rate $\beta$ and the
  24. recovery rate $\alpha$ from either synthetic or preprocessed real-world data.
  25. The methodology that we employ to identify the transition rates is described
  26. in~\Cref{sec:pinn:sir}. Meanwhile, the methods we utilize to preprocess the
  27. real-world data are detailed in~\Cref{sec:preprocessing:rq}.
  28. % -------------------------------------------------------------------
  29. \subsection{Setup 1}
  30. \label{sec:sir:setup}
  31. In this subsection, we present the configurations for the training of our
  32. PINNs, which are designed to identify the transition parameters. This
  33. encompasses the specific parameters for the preprocessing and the configuration
  34. of the PINN themselves.\\
  35. In order to validate our method, we first generate a dataset of synthetic data.
  36. We achieve this by solving~\Cref{eq:modSIR} for a given set of parameters.
  37. The parameters are set to $\alpha = \nicefrac{1}{3}$ and $\beta = \nicefrac{1}{2}$.
  38. The size of the population is $N = \expnumber{7.6}{6}$ and the initial amount of
  39. infectious individuals of is $I_0 = 10$. We conduct the simulation over 150
  40. days, resulting in a dataset of the form of~\Cref{fig:synthetic_SIR}.\\ In
  41. order to process the real-world RKI data, it is necessary to preprocess the raw
  42. data for each state and Germany separately. This is achieved by utilizing a
  43. recovery queue with a recovery period of 14 days. With regard to population
  44. size of each state, we set it to the respective value counted at the end of
  45. 2019\footnote{\url{https://de.statista.com/statistik/kategorien/kategorie/8/themen/63/branche/demographie/\#overview}}.
  46. The initial number of infectious individuals is set to the number of infected
  47. people on March 09. 2020 from the dataset. The data we extract spans from
  48. March 09. 2020 to June 22. 2023, encompassing a period of 1200 days and
  49. representing the time span during which the COVID-19 disease was the most
  50. active and severe.
  51. \begin{figure}[h]
  52. %\centering
  53. \setlength{\unitlength}{1cm} % Set the unit length for coordinates
  54. \begin{picture}(12, 9.5) % Specify the size of the picture environment (width, height)
  55. \put(1.5, 4.5){
  56. \begin{subfigure}{0.3\textwidth}
  57. \centering
  58. \includegraphics[width=\textwidth]{SIR_synth.pdf}
  59. \label{fig:synthetic_SIR}
  60. \end{subfigure}
  61. }
  62. \put(8, 4.5){
  63. \begin{subfigure}{0.3\textwidth}
  64. \centering
  65. \includegraphics[width=\textwidth]{datasets_states/Germany_SIR_14.pdf}
  66. \label{fig:germany_sir}
  67. \end{subfigure}
  68. }
  69. \put(0, 0){
  70. \begin{subfigure}{0.3\textwidth}
  71. \centering
  72. \includegraphics[width=\textwidth]{datasets_states/Schleswig_Holstein_SIR_14.pdf}
  73. \label{fig:schleswig_holstein_sir}
  74. \end{subfigure}
  75. }
  76. \put(4.75, 0){
  77. \begin{subfigure}{0.3\textwidth}
  78. \centering
  79. \includegraphics[width=\textwidth]{datasets_states/Berlin_SIR_14.pdf}
  80. \label{fig:berlin_sir}
  81. \end{subfigure}
  82. }
  83. \put(9.5, 0){
  84. \begin{subfigure}{0.3\textwidth}
  85. \centering
  86. \includegraphics[width=\textwidth]{datasets_states/Thueringen_SIR_14.pdf}
  87. \label{fig:thüringen_sir}
  88. \end{subfigure}
  89. }
  90. \end{picture}
  91. \caption{Synthetic and real-world training data. The synthetic data is
  92. generated with $\alpha=\nicefrac{1}{3}$ and $\beta=\nicefrac{1}{2}$
  93. and~\Cref{eq:modSIR}. The Germany data is taken from the death case
  94. data set. Exemplatory we show illustrations of the datasets of Schleswig
  95. Holstein, Berlin, and Thuringia. For the other states see~\Cref{chap:appendix} }
  96. \label{fig:datasets_sir}
  97. \end{figure}
  98. The PINN that we utilize comprises of seven hidden layers with twenty neurons
  99. each, and an activation function of ReLU. We employ the Adam optimizer and the
  100. polynomial scheduler of the PyTorch library, for training, with a base learning rate
  101. of $\expnumber{1}{-3}$. We train the model for 10000 epochs to extract the
  102. parameters. For each set of parameters, we conduct five iterations to
  103. demonstrate stability of the values. The configuration is similar to the
  104. configuration, that Shaier \etal ~\cite{Shaier2021} use for their work aside
  105. from the learning rate and the scheduler choice.\\
  106. The following section presents the results of the simulations conducted with the
  107. setups that we describe in this section.
  108. % -------------------------------------------------------------------
  109. \subsection{Results 4}
  110. \label{sec:sir:results}
  111. \begin{figure}[t]
  112. \centering
  113. \includegraphics[width=0.7\textwidth]{reproducability.pdf}
  114. \caption{Visualization of all 5 predictions for the synthetic dataset,
  115. compared to the true values of $\alpha = \nicefrac{1}{3}$ and $\beta = \nicefrac{1}{2}$}
  116. \label{fig:reprod}
  117. \end{figure}
  118. In this section, we present the results, that we obtain from the conducted
  119. experiments, that we describe in the preceding section. We begin by examining
  120. the results for the synthetic dataset, focusing the accuracy and
  121. reproducibility. We then proceed to present and discuss the results for the
  122. German states and Germany.\\
  123. The results of the experiment regarding the synthetic data can be seen
  124. in~\Cref{table:alpha_beta_synth} and in~\Cref{fig:reprod}.~\Cref{fig:reprod}
  125. depicts the values of $\beta$ and $\alpha$ for each iteration in comparison to the true
  126. values of $\beta=\nicefrac{1}{2}$ and $\alpha=\nicefrac{1}{3}$. In~\Cref{table:alpha_beta_synth}
  127. we present the mean $\mu$ and standard deviation $\sigma$ of both values across
  128. all five iterations.\\
  129. \begin{table}[h]
  130. \begin{center}
  131. \begin{tabular}{ccc|ccc}
  132. true $\alpha$ & $\mu(\alpha)$ & $\sigma(\alpha)$ & true $\beta$ & $\mu(\beta)$ & $\sigma(\beta)$ \\
  133. \hline
  134. 0.3333 & 0.3334 & 0.0011 & 0.5000 & 0.5000 & 0.0017 \\
  135. \end{tabular}
  136. \caption{The mean $\mu$ and standard deviation $\sigma$ across the 5
  137. independent iterations of training our PINNs with the synthetic dataset.}
  138. \label{table:alpha_beta_synth}
  139. \end{center}
  140. \end{table}
  141. The results demonstrate that the model is capable of approximating the correct
  142. parameters for the small, synthetic dataset in each of the five iterations.
  143. While the predicted value is not precisely accurate, the standard deviation is
  144. sufficiently small, and taking the mean of multiple iterations produces an
  145. almost perfect result.\\
  146. In~\Cref{table:alpha_beta} we present the results of the training for the
  147. real-world data. The results are presented from top to bottom, in the order of
  148. the community identification number, with the last entry being Germany. Both
  149. the mean $\mu$ and the standard deviation $\sigma$ are calculated across all
  150. five iterations of our experiment. We can observe that the values of
  151. \emph{Hamburg} have the highest standard deviation, while \emph{Mecklenburg Vorpommern}
  152. has the lowest $\sigma$.\\
  153. \begin{table}[h]
  154. \begin{center}
  155. \begin{tabular}{c|cc|cc}
  156. & $\mu(\alpha)$ & $\sigma(\alpha)$ & $\mu(\beta)$ & $\sigma(\beta)$ \\
  157. \hline
  158. Schleswig Holstein & 0.0771 & 0.0010 & 0.0966 & 0.0013 \\
  159. Hamburg & 0.0847 & 0.0035 & 0.1077 & 0.0037 \\
  160. Niedersachsen & 0.0735 & 0.0014 & 0.0962 & 0.0018 \\
  161. Bremen & 0.0588 & 0.0018 & 0.0795 & 0.0025 \\
  162. Nordrhein-Westfalen & 0.0780 & 0.0009 & 0.1001 & 0.0011 \\
  163. Hessen & 0.0653 & 0.0016 & 0.0854 & 0.0020 \\
  164. Rheinland-Pfalz & 0.0808 & 0.0016 & 0.1036 & 0.0018 \\
  165. Baden-Württemberg & 0.0862 & 0.0014 & 0.1132 & 0.0016 \\
  166. Bayern & 0.0809 & 0.0021 & 0.1106 & 0.0027 \\
  167. Saarland & 0.0746 & 0.0021 & 0.0996 & 0.0024 \\
  168. Berlin & 0.0901 & 0.0008 & 0.1125 & 0.0008 \\
  169. Brandenburg & 0.0861 & 0.0008 & 0.1091 & 0.0010 \\
  170. Mecklenburg Vorpommern & 0.0910 & 0.0007 & 0.1167 & 0.0008 \\
  171. Sachsen & 0.0797 & 0.0017 & 0.1073 & 0.0022 \\
  172. Sachsen-Anhalt & 0.0932 & 0.0019 & 0.1207 & 0.0027 \\
  173. Thüringen & 0.0952 & 0.0011 & 0.1248 & 0.0016 \\
  174. Germany & 0.0803 & 0.0012 & 0.1044 & 0.0014 \\
  175. \end{tabular}
  176. \caption{Mean and standard deviation across the 5 iterations, that we
  177. conducted for each German state and Germany as the whole country.}
  178. \label{table:alpha_beta}
  179. \end{center}
  180. \end{table}
  181. \begin{figure}[t]
  182. \centering
  183. \includegraphics[width=\textwidth]{mean_std_alpha_beta_res.pdf}
  184. \label{fig:alpha_beta_mean_std}
  185. \end{figure}
  186. In~\Cref{fig:alpha_beta_mean_std}, we present a visual representation of the
  187. means and standard deviations in comparison to the national values. It is
  188. noteworthy that the states of Saxony-Anhalt and Thuringia have the highest
  189. transmission rates of all states, while Bremen and Hessen have the lowest
  190. values for $\beta$. The transmission rates of Hamburg, Baden Württemberg,
  191. Bavaria, and all eastern states lay above the national rate of transmission.
  192. Similarly, the recovery rate yields comparable outcomes. For the recovery rate,
  193. the same states that exhibit a transmission rate exceeding the national value,
  194. have a higher recovery rate than the national standard, with the exception of
  195. Saxony.It is noteworthy that the recovery rates of all states exhibit a
  196. tendency to align with the recovery rate of $\alpha=\nicefrac{1}{14}$, which is
  197. equivalent to a recovery period of 14 days.\\
  198. It is evident that there is a correlation between the values of $\alpha$ and
  199. $\beta$ for each state. States with a high transmission rate tend to have a
  200. high recovery rate, and vice versa. The correlation between $\alpha$ and
  201. $\beta$ can be explained by the implicate definition of $\alpha$ using a
  202. recovery queue with a constant recovery period of 14 days. This might result to
  203. the PINN not learning $\alpha$ as a standalone parameter but rather as a
  204. function of the transmission rate $\beta$. This phenomenon occurs because the
  205. transmission rate determines the number of individuals that get infected per
  206. day, and the recovery queue moves a proportional number of people to the
  207. removed compartment. Consequently, a number of people defined by $\beta$ move
  208. to the $R$ compartment 14 days after they were infected.\\
  209. This issue can be addressed by reducing the SIR model, thereby eliminating the
  210. significance of the $R$ compartment size. In the following section, we present
  211. our experiments for the reduced SIR model with time-independent parameters.
  212. % -------------------------------------------------------------------
  213. \section{Reduced SIR Model 5}
  214. \label{sec:rsir}
  215. In this section we describe the experiments we conduct to identify the
  216. time-dependent reproduction number for both synthetic and real-world data.
  217. Similar to the previous section, we first describe the setup of our experiments
  218. and afterwards present the results. The methods we employ for the preprocessing
  219. are described in~\Cref{sec:preprocessing:rq} and for the PINN, that we use,
  220. are described in~\Cref{sec:pinn:rsir}.
  221. % -------------------------------------------------------------------
  222. \subsection{Setup 1}
  223. \label{sec:rsir:setup}
  224. This section outlines the selection of parameters and configuration for data
  225. generation, preprocessing, and the neural networks. We employ these setups to
  226. train the PINNs to identify the reproduction number on both synthetic and
  227. real-world data.\\
  228. For the purposes of validation, we create a synthetic dataset, by setting the parameter
  229. of $\alpha$ and the reproduction value each to a specific values, and solving~\Cref{eq:reduced_sir_ODE}
  230. for a given time interval. We set $\alpha=\nicefrac{1}{3}$ and $\Rt$ to the
  231. values as can be seen in~\Cref{fig:synthetic_I_r_t} as well as the population
  232. size $N=\expnumber{7.6}{6}$ and the initial amount of infected people to
  233. $I_0=10$. Furthermore, we set our simulated time span to 150 days. We use this
  234. dataset to demonstrate, that our method is working on a simple and minimal
  235. dataset.\\ To obtain a dataset of the infectious group, consisting of the
  236. real-world data, we we processed the data of the dataset
  237. \emph{COVID-19-Todesfälle in Deutschland} to extract the number of infections
  238. in Germany as a whole. For the German states, we use the data of \emph{SARS-CoV-2
  239. Infektionen in Deutschland}. In the preprocessing stage, we employ a constant
  240. rate for $\alpha$ to move individuals into the removed compartment. For each
  241. state we generate two datasets with a different recovery rate. First, we choose
  242. $\alpha = \nicefrac{1}{14}$, which aligns with the time of recovery\footnote{\url{https://github.com/robert-koch-institut/SARS-CoV-2-Infektionen_in_Deutschland.git}}.
  243. Second, we use $\alpha=\nicefrac{1}{5}$, as 5 days into the infection is the
  244. point at which the infectiousness is at its peak\footnote{\url{https://www.infektionsschutz.de/coronavirus/fragen-und-antworten/ansteckung-uebertragung-und-krankheitsverlauf/}}.
  245. As in~\Cref{sec:sir}, we set the population size $N$ of each state and Germany
  246. to the corresponding size at the end of 2019. Furthermore, for the same reason
  247. we restrict the data points to an interval of 1200 days, beginning on March 09.
  248. 2020.\\
  249. \begin{figure}[t]
  250. \centering
  251. \begin{subfigure}{0.3\textwidth}
  252. \centering
  253. \includegraphics[width=\textwidth]{I_synth.pdf}
  254. \caption{Synthetic data}
  255. \label{fig:synthetic_I}
  256. \end{subfigure}
  257. \quad
  258. \begin{subfigure}{0.3\textwidth}
  259. \centering
  260. \includegraphics[width=\textwidth]{I_synth_r_t.pdf}
  261. \caption{Synthetic data}
  262. \label{fig:synthetic_I_r_t}
  263. \end{subfigure}
  264. \vskip\baselineskip
  265. \begin{subfigure}{0.67\textwidth}
  266. \centering
  267. \includegraphics[width=\textwidth]{datasets_states/Germany_datasets.pdf}
  268. \caption{}
  269. \label{fig:germany_I_14}
  270. \end{subfigure}
  271. \end{figure}
  272. In order to achieve the desired output, the selected neural network
  273. architecture comprises of four hidden layers, each containing 100 neurons. The
  274. activation function is the tangens hyperbolicus function. For the real-world
  275. data, we weight the data loss by a factor of $\expnumber{1}{6}$, to the total
  276. loss. The model is trained using a base learning rate of $\expnumber{1}{-3}$,
  277. with the same scheduler and optimizer as we describe in~\Cref{sec:sir:setup}.
  278. We train the model for 20000 epochs. To reduce the standard deviation, each
  279. experiment is conducted 15 times.\\
  280. % -------------------------------------------------------------------
  281. \subsection{Results 4}
  282. \label{sec:rsir:results}
  283. In this section we provide the results for our experiments. First, we present
  284. our findings for the synthetic dataset. Then, we provide and discuss the
  285. results for the real-world data.\\
  286. \begin{figure}
  287. \centering
  288. \includegraphics[width=\textwidth]{synthetic_R_t_statistics.pdf}
  289. \caption{text}
  290. \label{fig:synth_r_t_results}
  291. \end{figure}
  292. % -------------------------------------------------------------------