Connect with us

Health

Unfolding and modeling the recovery process after COVID lockdowns

Unfolding and modeling the recovery process after COVID lockdowns
Unfolding and modeling the recovery process after COVID lockdowns

 


In the method, we first describe the data that we used in this paper and then introduce the recovery index, change point algorithm, and our graph-learning-based time series model in turn.

Data

Electricity data

The electricity data is offered by the State Grid Corporation of China, the major power supply company in China. Our data includes 11,464 dedicated electricity users and their 76 million daily electricity consumption records. These users are located in the urban areas of Hangzhou. And each dedicated electricity user corresponds to a company or an organization registered in State Grid (anonymous). We mainly analyse the electricity data for eight months around the outbreak of the COVID-19 epidemic (Jan. 01, 2020–Aug. 31, 2020). And we also use the data from Jan. 01, 2019 to Dec. 31, 2019 to supplement our analysis.

The State Grid Corporation of China also provides us with subcategory information for each dedicated electricity user. According to ”Industrial classification for national economic activities”51 and subcategory information, we group all organizations into 19 sectors. As the numbers of organizations belonging to the agriculture sector and the mining sector are less than 100, to ensure the representativeness of our sector analysis, the data used in this paper removes the organizations belonging to these two sectors. The detailed classification result is shown in Supplementary Table 1.

Policy data

We collect the COVID-19 epidemic-related lockdown policies and 17 sectors related policies during the period from Jan. 21, 2020 to Aug. 31, 2020. The policies are mainly collected from the official portal of Hangzhou Municipal Government52 and Zhejiang Government’s Official Web Portal53. All collected policies are summarized in Supplementary Table 2, including their timing, content, and government departments that issue these policies.

Online retail data

We obtain the monthly year-on-year growth in online consumption data of residents in Hangzhou from the Department of Commerce of Zhejiang Province54. In Fig. 2b, the year-on-year growth rates of January and February have the same value, which is the average monthly growth rate of the two months. It is because the Zhejiang Department of Commerce do not have the separate monthly data for January and February.

Temperature data

We obtain the daily temperature data of the Hangzhou urban area from the China Meteorological Network. The period of daily temperature data we used ranged from Jan. 01, 2019 to Aug. 31, 2020.

Recovery index

In this paper, we use Recovery index as a uniform metric to evaluate the recovery of each sector. The recovery index is calculated by the electricity data and temperature data with the python language.

Unadjusted recovery index

The recovery index is a year-on-year change value in weekly electricity consumption, adjusted by temperature, lunar holiday factor, and development level. The unadjusted recovery index is calculated by:

$$\begin{aligned} R_{i,w} = E_{i,w}^{2020}/E_{i,w}^{2019} \end{aligned}$$

(1)

where \(R_{i,w}\) denotes the recovery index for sector i at the wth week 2020. \(E_{i,w}^{2020}\) denotes the weekly electricity consumption value of sector i at the wth week 2020.

Adjusted for temperature

The impact of temperature on electricity consumption data is relatively significant. For example, as shown in Supplementary Fig. 1, due to the abnormally high temperature in mid-June, almost all the unadjusted recovery index of sectors sudden rebound. Thus, we first want to remove the interference of temperature in our observation of the recovery degree of sectors. To eliminate such interference on the recovery index, we use a regression model to capture the nonlinear relationship between electricity consumption and temperature,

$$\begin{aligned} P_{e_d} = f(T_d) = x_1*T_d+x_2*T_d^2+x_3*T_d^3+b \end{aligned}$$

(2)

where P represents the predicted value, \(e_d\) represents the daily electricity consumption of date d, \(T_d\) denotes the temperature value of date d, \(x_1\),\(x_2\),\(x_3\),b represent learnable parameters. The regression model is trained on temperature and electricity data from January to December in 2019, calibrated by minimizing the Mean Square Error (MSE) between the predicted value P and the real daily electricity consumption value E. Then we adjust the recovery index by the learned function:

$$\begin{aligned} e_d^*= & {} e_d / P_{e_d} \end{aligned}$$

(3)

$$\begin{aligned} R_{i,w}^*= & {} E_{i,w}^{2020*} / E_{i,w}^{2019*} \end{aligned}$$

(4)

Here \(E_{i,w}^{2020*}\) presents the i sector’s electricity consumption in wth week 2020 after temperature adjusted. The result is shown in Supplementary Fig. 2, the abnormal rebound recovery in mid-June is corrected.

Adjusted for lunar festivals

We further consider the interference of lunar festivals. For instance, as the most important and longest holiday in China, the Spring Festival largely affects the consumption of electricity. As it is a lunar festival, it corresponds to different Gregorian dates in 2019 and 2020. As shown in Supplementary Fig. 3, there is an abnormal rise in the first week of February, which is corresponding to the Spring Festival of 2019 (5 Feb. 2019). To eliminate such interference, we match the four weeks around Spring Festival of 2020 (week 2–5) with the four weeks around Spring Festival of 2019 (week 3–6):

$$\begin{aligned} R_{i,3-6}^* = E_{i,3-6}^{2020*}/E_{i,4-7}^{2019*} \end{aligned}$$

(5)

Besides Spring Festival, we also consider and align Dragon Boat Festival and Qing Ming Festival. After the adjustments, the final recovery index result is shown in Supplementary Fig. 4, which can basically eliminate the interference of lunar festivals. However, as the Spring Festival affects different sectors in different time spans, such interference cannot be completely eliminated.

Adjusted for development level

We then eliminate the impact of different development levels of different sectors from 2019 to 2020 for the recovery observation. For example, in Supplementary Fig. 2, after a year of economic development, the electricity consumption of the real estate sector at the beginning of 2020 is higher than that of last year. As our aim is only to observe the degree of depression and subsequent recovery of the sector due to the lockdown policy, we adjust the development factors by dividing the electricity consumption data of each sector in 2020 by its development index D:

$$\begin{aligned} R_i^* = R_i^*/D_i \end{aligned}$$

(6)

The development index is evaluated by dividing the total electricity consumption of the first three weeks, which is free from the impact of the epidemic, in 2020 by the total of the same period in 2019:

$$\begin{aligned} D_i = E_{i,1-3}^{2020*}/E_{i,1-3}^{2019*} \end{aligned}$$

(7)

The adjusted result is shown in Supplementary Fig. 3, from which we can clearly observe the recovery patterns of different sectors are on the same scale.

Change point algorithm

We adopt a change point algorithm to automatically detect the sudden changes in the recovery index. If a policy is effective for a sector, then the recovery trend of this sector should change after the implementation because of the external influence of the policy. Thus, we validate the effectiveness of one policy by matching the policy timing with the detected change points. We conduct change point detection on our recovery index from Jan. 01, 2020 to Aug. 31, 2020. It is widely considered that change point detection (CPD) is the problem of finding abrupt change points in data when some properties of the time series change55. We explore what properties of the time series can be useful in detecting change points. For example, some naive properties like mean, slope, and variance may count. As more general methods, some early works on change point detection56,57 locate the shift in the mean of independent and identically distributed (iid) Gaussian variables. Following this intuition, kernel-based change point detection is used in our work to effectively detect the change points in the recovery trend.

Let’s consider \(c(\cdot )\) as a cost function to measure the confidence of a piece of time series (recovery trend) that we can regard as heterogeneous. For a piece of time series from change point index on \(t_{k}\) to \(t_{k+1}\), it can be represented as \(x_{t_{k}\ldots t_{k+1}}\). Then the criterion function \(C(\cdot )\) is the sum of cost function of the segments sliced from complete time series58.

$$\begin{aligned} C(\Gamma ,x):=\sum ^{K}_{k=0}c(x_{t_{k}\ldots t_{k+1}}) \end{aligned}$$

(8)

where \(\Gamma \) is the set of change point index \(\Gamma =\{t_1,\ldots ,t_k\}\). And the best change point detection result can be obtained by get the minimization of the criterion \(C(\Gamma ,x)\).

Kernel based change point detection

We adopt kernel-based method59 to perform change point detection, as it is a robust non-parametric method when that does not require much prior knowledge. More specifically, we use a Gaussian kernel-based change point detection named Rbf kernel (Radial basis function kernel).

The standard kernel-based change point detection cost function can be given by

$$\begin{aligned} c_{kernel}(x_{a\ldots b}):=\sum ^b_{t=a+1}k(x_t,x_t)-\frac{1}{b-a}\sum ^b_{s=a+1}\sum ^b_{t=a+1}k(x_s,x_t) \end{aligned}$$

(9)

where the \(k(\cdot ,\cdot )\) is user-defined kernel function in the form of \(R^d*R^d \rightarrow R\) and this formula is inferred by the well-known ”kernel trick”60.

The Gaussian kernel is defined by \(k(x,y)=exp(-\gamma \Vert x-y\Vert ^2)\) with \(x,y\in R^d\)and \(\gamma >0\).

By using the Gaussian kernel, the Rbf kernel cost function is given by

$$\begin{aligned} c_{rbf}(x_{a\ldots b}):=(b-a)-\frac{1}{b-a}\sum ^b_{s=a+1}\sum ^b_{t=a+1}exp(-\gamma \Vert x_s-x_t\Vert ^2) \end{aligned}$$

(10)

The detected results of our change point algorithm on all sectors are shown in Supplementary Fig. 5.

Time series prediction model based on graph learning: TPG

In order to model the recovery process of all sectors and accurately predict the future recovery trend of them, we construct the time series prediction model based on dynamic graph learning, named TPG. Here we provide a more comprehensive introduction of TPG.

Problem formulation

The training task of TPG is to predict the future daily electricity consumption sequence for each organization with the historical daily electricity consumption sequences. More specifically, X = {\(x_{c,t} \)}\(\in \Re ^{N\times T}\) stands for the electricity consumption input, where N is the number of organizations, and T is the number of timestamps. We denote the daily electricity consumption sequence of an organization c at timestamp t as \(x_{c,t}\):

$$\begin{aligned} x_{c,t} = [e_{c}^i], t*s \le i <t*s + l_{in}, c \in C \end{aligned}$$

(11)

Here \(l_{in}\) is the length of input sequences (window size), s is the slides length, and \(e_{c}^i\) is the electricity consumption of organization c in the day i. Besides, each organization c belongs to one type of sector. With \(x_{c,t}\), our goal is to predict the organization’ future daily electricity consumption sequence {\(y_{c,t}\)} at timestamp t:

$$\begin{aligned} y_{c,t} = [e_{c,t}^i], t*s + l_{in} \le i <t*s + l_{in} + l_{out}, c \in C \end{aligned}$$

(12)

where \(l_{out}\) is the the length of the future daily electricity consumption sequence that we want to predict.

Framework

With the electricity consumption data, we first build the dynamic correlation graph to help model the recovery process and accurately capture the future recovery trends. Each node in the learned graph represents an organization in our electricity dataset and each edge represents the influence relationship between the organizations. When building the graph, we have two steps: node feature generation and edge calculation. For the node feature generation, we adopt a Gated Recurrent Unit (GRU) in the temporal learning module to capture the temporal information from organizations’ historical daily electricity consumption, using the final organization embeddings in GRU as node features. For edge calculation, we design a correlation module. We calculate the correlation weights between organizations in the correlation module with an attention mechanism and use the results as the basis to build the graph edges.

Then, on the learned dynamic graph, each organization will aggregate information from its connected organizations based on the learned edge (correlation) weights. In this way, we get the new representation of each organization containing both temporal information and correlation information. Finally, we use a GRU decoder to get the prediction results from these representations.

Temporal learning module

In this section, we elaborate on the method by which we generate the temporal representation for each organization with daily electricity consumption data. We adopt a GRU as an encoder to model organizations’ temporal information with X. For an organization c, we generate its temporal representation \(p_{c,t}\) at timestamp t as follows:

$$\begin{aligned} p_{c,t}^s= & {} e_c^s \end{aligned}$$

(13)

$$\begin{aligned} z_{c,t}^{i}= & {} \sigma (W_z^ih_{c,t}^i + U_z^ih_{c,t}^{i-1}) \end{aligned}$$

(14)

$$\begin{aligned} r_{c,t}^{i}= & {} \sigma (W_r^ih_{c,t}^i + U_r^ih_{c,t}^{i-1}) \end{aligned}$$

(15)

$$\begin{aligned} \widetilde{h}_{c,t}^{i}= & {} tanh(W^ih_{c,t}^i + U^i(r_{c,t}^i\odot h_{c,t}^{i-1})) \end{aligned}$$

(16)

$$\begin{aligned} \hat{h}_{c,t}^{i}= & {} (1 – z_{c,t}^i)\odot h_{c,t}^{i-1} + z_{c,t}^i\odot \widetilde{h}_{c,t}^{i} \end{aligned}$$

(17)

$$\begin{aligned} p_{c,t}^i= & {} GRU(p_{c,t}^{i-1}, e_c^i), s<i <s + l_{in} \end{aligned}$$

(18)

where z is the update gate vector to control the information retained in the previous timestamp; \(\widetilde{h}\) is the candidate activation vector; the r is the reset gate vector to control the generation of candidate activation vector \(\widetilde{h}\); finally, we get the output vector h by aggregate the candidate activation vector and the previous output vector. In this process, we expand the \(e_c^s\) by sliding window sampling time series with window size 7 (\(l_{in}\)) and slides length 1. i denotes the time step in GRU, s denotes the first date of the sampled time series.

Correlation learning module

To capture the organization correlation information to help recovery modeling, we adopt a correlation learning module. The correlation module calculates the correlation weights between organizations, which are the basis to build the graph edges. With the input X, we first calculate the dynamic correlation weights W of all organizations to another one at each timestamps:

$$\begin{aligned} w_{u,v,t}=(Q \cdot x_{u,t}) \odot (K \cdot x_{v,t}) \end{aligned}$$

(19)

where \(w_{u,v,t}\) is the correlation weight that represents the influence of organization v on organization u at timestamp t, \(x_{u,t}\) and \(x_{u,t}\) are their corresponding daily electricity consumption sequences. Q is a learnable matrix. For each organization, Q projects its temporal information of it into a “query” embedding. And K is also a learnable matrix that projects the temporal information of other organizations into “key” embeddings. Then we dot product the query embedding and key embeddings to get the correlation weight values which represent how much influence the “key organizations” will have on “query organization”. Because an organization usually only receives influence from a limited number of other organizations, at timestamp t, we select the top k largest \(w_{u,*,t}\) for every organization u and drop the other weights. k is a hyperparameter in our model. Then we normalized the remained \(w_{u,*}\) to get the final correlation weights:

$$\begin{aligned} \hat{w_{u,v,t}} = \frac{w_{u,v,t}}{\sum _{v\prime \in N(u)_t}{w_{u,v,t\prime }}} \end{aligned}$$

(20)

where \(N(u)_t\) denotes the k organizations that have the greatest impact on organization u at timestamp t. With the learnt correlation weights, we build the edges of the graph. For each correlation weight \(w_{u,v,t}\), we build a directed edge from node (organization) w to node v with an edge weight \(w_{u,v,t}\), which represents the influence that organization w will have on node v at time step t.

Now we have completed the building of the correlation graph. We denote the built graph as \(G_t = (C,E,P_t,W_t)\), where C denotes the node set, each node of the directed correlation graph \(G_t\) is an organization c with its temporal representation \(p_{c,t}\). And based on W, we build the edge set E, each edge is attached with a correlation weight \(w_{u,v,t}\).

Aggregating and predicting module

For each organization (node), to utilize the information of its correlated organizations, we conduct weighted aggregation on the temporal correlation graph \(G_t\), and combine the aggregated information with the temporal information of this organization:

$$\begin{aligned} r_{c,t} = \sum _{{c\prime } \in N(c)_t}{w_{c,c\prime ,t} \cdot p_{c\prime ,t}} + p_{c,t} \end{aligned}$$

(21)

Here we use the edge (correlation) weight which is introduced in the above section as the aggregation weight. After the aggregation, for each organization, we obtain the new representations that simultaneously contain temporal information of itself and that of its correlated organizations whose future sequence may be influenced.

A GRU is then adopted as the decoder to generate the future daily electricity consumption sequences of organizations from the learned representations:

$$\begin{aligned} o_c^{s+l_{in} – 1}= & {} r_c \end{aligned}$$

(22)

$$\begin{aligned} o_c^{i}= & {} GRU(o_c^{i-1},o_c^{i-1}), s + l_{in}<i <s + l_{in} + l_{out} \end{aligned}$$

(23)

$$\begin{aligned} \hat{e_c^{i}}= & {} MLP(o_c^i) \end{aligned}$$

(24)

$$\begin{aligned} \hat{y_c}= & {} [\hat{e_c^i}], s + l_{in} \le i <s + l_{in} + l_{out}, c \in C \end{aligned}$$

(25)

Following GRU cell, we decode the new compound representation iteratively.

As the prediction of daily electricity consumption is a natural regression task, we use mean square error as our loss function to calibrate our model’s parameters:

$$\begin{aligned} loss_c = MSE(y_c, \hat{y_c}) = \frac{1}{2}\cdot (e_c^i – \hat{e_c^{i}})^2, s + l_{in} \le i <s + l_{in} + l_{out}, c \in C \end{aligned}$$

(26)

The MSE loss measures the distance between the real daily electricity consumption and the estimated consumption.

Experimental data

Our data is generated based on the electricity consumption data from January to August 2019 and January to August 2020 (487 days in total). In our experiment, we sample the data with a sliding window. We set the slides length s as 7, the length of input sequences \(l_{in}\) as 56 and the length of output sequences \(l_{out}\) as 14. As a result, we get 48 time series samples for every organization. We split the data into 40 for training and 8 for testing sets. We use the first 20 sampled sequences of each year as the training set and the last four as the testing set to ensure that there is no label leakage.

Training

The optimization of the parameters was performed by the Adam algorithm with a learning rate of 1e-3 and weight decay of 1e-4. The TPG tasks are conducted for 500 epochs, and we selected the model with the lowest loss on the testing set. The selected correlation number k is set as 10. The hidden size is 64. Lastly, we build our model using PyTorch 1.6 and train it on an NVIDIA GeForce RTX 2080 Ti GPU.

Analysis with TPG

Experiment results and the baseline

As shown in Fig. 4b, our trained model can fit the future daily electricity consumption well. This result shows our TPG model could model the recovery process and perceive the sector future recovery trend through the past electricity consumption information (Supplementary Table 3). We also examine the effectiveness of our correlation learning module by comparing our experiment results with a single GRU sequence to sequence model (remove the correlation learning part). As shown in Fig. 5, our model obviously outperforms the GRU seq2seq model (reduces 16% on MSE loss on average after 500 epochs), which illustrates our correlation module does capture the organization correlation information that is helpful to the recovery modeling.

Figure 5
figure 5

The test results of TPG and the GRU seq2seq model (MSE loss). To evaluate the model performance on the prediction task, we separately train the TPG and the GRU for 100, 200, 300, 400, and 500 epochs on the train set and then test on the test set. Each experiment is repeated at least 5 times. The results illustrate that our model can better capture the recovery trend than traditional model and the graph learning module does capture the valid relationships between sectors.

Experiments are repeated at least five times, and we report the mean result.

Simulation experiments

We conduct simulation experiments with our trained model on the daily electricity consumption data ranging from Jan. 08, 2020 to Mar. 24, 2020, which contains both the lockdown period and recovery period. We fixed all parameters of trained TPG in the simulation experiments. For each sector, we assume that the government has given greater support to this sector when the economy started to recover after the lifting of the COVID-19 lockdown (05 Feb. 2020). As shown in Fig. 4b, we construct simulation electricity consumption series of each sector by doubling the speed of its recovery from 05 Feb. 2020. More specifically, in each of our experiments, we change the time series inputs of all organizations belonging to a particular sector to our simulation values:

$$\begin{aligned} E_c^{week j} = E_c^{week (j-5)*2+j}, j \in [5,9) \end{aligned}$$

(27)

And we leave the time series of organizations in other sectors unchanged. Then we input the simulation data into the model to get the predicted future recovery trend, so as to see how the change of policy support for a certain sector will affect all the sectors of the society (shown in Fig. 4 and Supplementary Fig. 6).

Sources

1/ https://Google.com/

2/ https://www.nature.com/articles/s41598-023-30100-5

The mention sources can contact us to remove/changing this article

What Are The Main Benefits Of Comparing Car Insurance Quotes Online

LOS ANGELES, CA / ACCESSWIRE / June 24, 2020, / Compare-autoinsurance.Org has launched a new blog post that presents the main benefits of comparing multiple car insurance quotes. For more info and free online quotes, please visit https://compare-autoinsurance.Org/the-advantages-of-comparing-prices-with-car-insurance-quotes-online/ The modern society has numerous technological advantages. One important advantage is the speed at which information is sent and received. With the help of the internet, the shopping habits of many persons have drastically changed. The car insurance industry hasn't remained untouched by these changes. On the internet, drivers can compare insurance prices and find out which sellers have the best offers. View photos The advantages of comparing online car insurance quotes are the following: Online quotes can be obtained from anywhere and at any time. Unlike physical insurance agencies, websites don't have a specific schedule and they are available at any time. Drivers that have busy working schedules, can compare quotes from anywhere and at any time, even at midnight. Multiple choices. Almost all insurance providers, no matter if they are well-known brands or just local insurers, have an online presence. Online quotes will allow policyholders the chance to discover multiple insurance companies and check their prices. Drivers are no longer required to get quotes from just a few known insurance companies. Also, local and regional insurers can provide lower insurance rates for the same services. Accurate insurance estimates. Online quotes can only be accurate if the customers provide accurate and real info about their car models and driving history. Lying about past driving incidents can make the price estimates to be lower, but when dealing with an insurance company lying to them is useless. Usually, insurance companies will do research about a potential customer before granting him coverage. Online quotes can be sorted easily. Although drivers are recommended to not choose a policy just based on its price, drivers can easily sort quotes by insurance price. Using brokerage websites will allow drivers to get quotes from multiple insurers, thus making the comparison faster and easier. For additional info, money-saving tips, and free car insurance quotes, visit https://compare-autoinsurance.Org/ Compare-autoinsurance.Org is an online provider of life, home, health, and auto insurance quotes. This website is unique because it does not simply stick to one kind of insurance provider, but brings the clients the best deals from many different online insurance carriers. In this way, clients have access to offers from multiple carriers all in one place: this website. On this site, customers have access to quotes for insurance plans from various agencies, such as local or nationwide agencies, brand names insurance companies, etc. "Online quotes can easily help drivers obtain better car insurance deals. All they have to do is to complete an online form with accurate and real info, then compare prices", said Russell Rabichev, Marketing Director of Internet Marketing Company. CONTACT: Company Name: Internet Marketing CompanyPerson for contact Name: Gurgu CPhone Number: (818) 359-3898Email: [email protected]: https://compare-autoinsurance.Org/ SOURCE: Compare-autoinsurance.Org View source version on accesswire.Com:https://www.Accesswire.Com/595055/What-Are-The-Main-Benefits-Of-Comparing-Car-Insurance-Quotes-Online View photos

ExBUlletin

to request, modification Contact us at Here or [email protected]