| Literature DB >> 34141879 |
Rabia Tehseen1, Muhammad Shoaib Farooq1, Adnan Abid1.
Abstract
Earthquakes are a natural phenomenon which may cause significant loss of life and infrastructure. Researchers have applied multiple artificial intelligence based techniques to predict earthquakes, but high accuracies could not be achieved due to the huge size of multidimensional data, communication delays, transmission latency, limited processing capacity and data privacy issues. Federated learning (FL) is a machine learning (ML) technique that provides an opportunity to collect and process data onsite without compromising on data privacy and preventing data transmission to the central server. The federated concept of obtaining a global data model by aggregation of local data models inherently ensures data security, data privacy, and data heterogeneity. In this article, a novel earthquake prediction framework using FL has been proposed. The proposed FL framework has given better performance over already developed ML based earthquake predicting models in terms of efficiency, reliability, and precision. We have analyzed three different local datasets to generate multiple ML based local data models. These local data models have been aggregated to generate global data model on the central FL server using FedQuake algorithm. Meta classifier has been trained at the FL server on global data model to generate more accurate earthquake predictions. We have tested the proposed framework by analyzing multidimensional seismic data within 100 km radial area from 34.708° N, 72.5478° E in Western Himalayas. The results of the proposed framework have been validated against instrumentally recorded regional seismic data of last thirty-five years, and 88.87% prediction accuracy has been recorded. These results obtained by the proposed framework can serve as a useful component in the development of earthquake early warning systems.Entities:
Keywords: Earthquake early warning; Federated learning; Global data model; Local data model; Machine learning
Year: 2021 PMID: 34141879 PMCID: PMC8176529 DOI: 10.7717/peerj-cs.540
Source DB: PubMed Journal: PeerJ Comput Sci ISSN: 2376-5992
Figure 1FL framework for earthquake prediction.
Statistics of the collected data.
| Stations | Local data models | Data parameters used to train the model | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Seismic data | Climate data | Reservoir data | ||||||||||
| Maximum magnitude | Seismicity level | Depth | Magnitude ratio | Temperature | Pressure | Rainfall | Water level | Water state | Natural contents | Saturation format | ||
| A | x1 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| B | x2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||
| C | x3 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| D | x4 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| E | x5 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| F | x6 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||
| G | x7 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
State of FL variables.
| Flag title | Label | Description |
|---|---|---|
| Job Name | CS | A string denoting central server or client |
| Task Index | 0 to 7 | An integer to distinguish CS and client |
| CS Host | 0 | A string containing address of CS |
| Client Host | Client | A string containing address of client |
Working of Federated clients.
| Steps | Description |
|---|---|
| Clients train on a batch locally | |
| In every iteration, client will update its weights as if isolated training is being performed | |
| All clients would transmit weights according to their configuration | |
| Federated averaging algorithm will collect local data models and calculate average and update the shared model to CS | |
| On receiving the updated average. CS sends a message to rest of the clients to pull the latest model before training on future batches |
Figure 2Ensembling architecture.
Parameters tuned for analysis of classifiers.
| MLP | P | Activation | Early-stopping | Hidden layersize | Learning rate | Learning rate init | Solver | Toll |
|---|---|---|---|---|---|---|---|---|
| V | ReLU | True | (5,5,5) | Adaptive | 0.001 | Sgd | 0.0001 | |
| KNN | P | N_neighbour | Metric | n-jobs | Weights | |||
| V | 12 | Euclidean | None | Uniform | ||||
| DT | P | Max_depth | Criteria | Min_sample_leaf | ||||
| V | 100 | Entropy | 5 | |||||
| RF | P | Max_depth | Criteria | Min_sample_leaf | n_estimators | |||
| V | 100 | Entropy | 1 | 200 | ||||
| NN | P | Data division | Training | Performance | Derivative | |||
| V | Random | Levenberg_Marquadt | Mean squared error | Default | ||||
| FES | P | MFs | Nodes | Linear parameters | Nonlinear parameters | Total Parameters | ||
| V | [3,3] | 870 | 2,132 | 60 | 2,192 | |||
| ARIMA | P | d-value | q-value | Covariance type | Performance | |||
| V | 5 | 1 | 0 | Opaque | Mean squared error | |||
Performance comparison.
| Parameters | Methods | |||||||
|---|---|---|---|---|---|---|---|---|
| BLM | FLM | |||||||
| DT | NN | MLP | KNN | RF | FES | ARIMA | ||
| Training time (seconds) | 31 | 10.7 | 17.3 | 25 | 17.78 | 16 | 28 | 10.5 |
| Accuracy | 90.7 | 88.56 | 87.12 | 60.68 | 72.83 | 75.57 | 47.58 | 89.54 |
| Precision | 92.55 | 91.62 | 86.97 | 63.83 | 72.04 | 85.81 | 41.07 | 91.79 |
| Recall | 91.84 | 90.73 | 81.57 | 51.49 | 70.42 | 79.18 | 40.71 | 90.24 |
| F1-Score | 23.05 | 22.79 | 21.05 | 14.25 | 17.81 | 20.59 | 10.22 | 22.75 |
| Data Loss | 0.332 | 0.011 | 0.018 | 0.613 | 0.581 | 0.019 | 0.831 | 0.013 |
Figure 3Model performance evaluation.
Comparison of results with actual earthquakes at threshold magnitude 5.0.
| Station | Date | Target | BL M | ML classifiers | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| MLP | DT | KNN | NN | RF | FES | ARIMA | ||||
| Quetta (A) | 29-10-2008 | 1.4 | 1.276 | 1.13 | 1.34 | 1.25 | 1.33 | 1.29 | 1.07 | 1.37 |
| Balakot (B) | 8-10-2005 | 2.6 | 2.459 | 2.15 | 2.521 | 2.46 | 2.54 | 2.49 | 2.34 | 2.57 |
| Islamabad (C ) | 25-07-2015 | 2.5 | 2.135 | 2.34 | 2.214 | 2.35 | 2.34 | 2.45 | 2.29 | 2.43 |
Figure 4Comparison of predicted earthquakes against target.
FedQuake
| 1: |
| 2: Initialize w0 |
| 3: |
| 4: |
| 5: |
| 6: |
| 7: |
| 8: |
| 9: |
| 10: |
| 11: |
| 12: |
| 13: |
| 14: |
| 15: β←Split data mk into batches of size β |
| 16: |
| 17: |
| 18: |
| 19: |
| 20: |
| 21: |
| 22: |