FedNI: Federated Graph Learning with
Network Inpainting for Population-Based
Disease Prediction
Abstract
Graph Convolutional Neural Networks (GCNs) are widely used for graph analysis. Specifically, in medical applications, GCNs can be used for disease prediction on a population graph, where graph nodes represent individuals and edges represent individual similarities. However, GCNs rely on a vast amount of data, which is challenging to collect for a single medical institution. In addition, a critical challenge that most medical institutions continue to face is addressing disease prediction in isolation with incomplete data information. To address these issues, Federated Learning (FL) allows isolated local institutions to collaboratively train a global model without data sharing. In this work, we propose a framework, FedNI, to leverage network inpainting and inter-institutional data via FL. Specifically, we first federatively train missing node and edge predictor using a graph generative adversarial network (GAN) to complete the missing information of local networks. Then we train a global GCN node classifier across institutions using a federated graph learning platform. The novel design enables us to build more accurate machine learning models by leveraging federated learning and also graph learning approaches. We demonstrate that our federated model outperforms local and baseline FL methods with significant margins on two public neuroimaging datasets.
Index Terms:
Federated Learning, Graph Convolutional Networks, Population Network, Disease PredictionI Introduction
Neurological disorders and diseases, such as autism spectrum disorder (ASD) and Alzheimer’s disease (AD) [1], can cause significant social, communication, cognitive, and behavioral challenges [2, 3]. It is highly desired to detect neurological disorders, promoting early intervention and effective treatment of the disease in clinics. Recent studies have applied deep learning techniques for early disease diagnosis [4, 5], such as convolutional neural networks (CNNs) [6, 7], recurrent neural networks (RNNs) [8, 9], and graph convolutional neural networks (GCNs) [3, 10]. Although CNNs and RNNs have achieved plausible and promising results in the early diagnosis of ASD and AD, they extract individual imaging information independently and have limitations in exploring information from unlabeled individuals and the complex structure inherent to the data, e.g., ignoring the interaction and association between subjects in the population, failing to guarantee learning effective models.
Disease prediction on a population can be naturally modeled using graphs or networks111Graph and network are interchangeable in our manuscript.. Specifically, the nodes are represented as image features and labeled by their health condition (patients or healthy controls), while the edge that connect two nodes capture the similarity between individuals. GCNs can synergize the representation power of all kinds of information on individual subjects to predict individual labels based on partially labeled individual subjects together with the interactions among the whole population. Hence, GCNs are widely used for graph analysis in disease prediction. For example, Parisot et al. applies GCN for semi-supervised disease prediction on neuroimaging data, where nodes are defined as subjects and an edge represents the interaction and association between two subjects [10].
A critical challenge that most medical institutions continue to face is addressing disease prediction in isolation without any insight from other institutions. Specifically, multi-institutional collaboration that centrally shares patient data faces privacy and ownership challenges, such as general data protection regulation (GDPR) [11] and health insurance portability and accountability act (HIPAA) [12]. To address this issue, Federated Learning (FL) allows isolated institutions to collaboratively ‘utilize’ their private data without data sharing but transmit knowledge to each other. For example, Li et al. [13] proposes to implement a decentralized iterative optimization algorithm and preserve the privacy of shared local model weights through differential privacy for disease diagnosis. Yang et al. [14] proposes to share only a partial model between the server and institutions to automatically conduct diagnosis of COVID-19.
However, most existing FL strategies were designed for CNNs and multilayer perceptrons (MLPs) [15, 16], while few methods have learned to combine GCN with FL for disease prediction [17]. Different from CNNs and MLPs with only the feature matrix as the input, GCN has another input, i.e., the graph containing the interaction and association information between two subjects. If implementing GCN in FL, the global graph will be separated into several local graphs, where edges between local graphs are missing. When focusing on a node with missing neighbors (an ego), the corrupted information destroys its original ego network structure222An ego network is the graph of all nodes that are less than a certain distance, such as immediate neighbors, from a focal node (“ego”) [18].. Ego-network information has shown to be important in GCN-based node classification [19, 20]. However, the current GCN models overwhelmingly assume that the node and edge information are complete. As a result, simply combining GCN with the standard cross-silo FL strategy on distributed local graphs could undermine the effectiveness of GCN. One solution is to connect the local graphs,but it requires sharing node information across clients and may violate privacy regulations. Therefore, to address this issue, network inpainting, which predicts the missing neighbors and their associated edges, is a promising strategy to improve the completeness of the graph for GCN learning [21].
![Refer to caption](x1.png)
In this work, we propose a new FL framework for disease prediction, FedNI, which conducts the GCN node classification on a population graph and addresses the above issues. To this end, we propose a two-phase FL pipeline (as shown in Fig. 1). In the first phase, we start with training missing node generators for network inpainting. Specifically, we randomly remove nodes from the local graph with Breadth-First Search (BFS), resulting in a set of corrupted graph and hidden nodes. We train the generator to predict the hidden nodes and edges from the corrupted graphs using spectral normalized generative adversarial networks (SN-GAN) [23]. Then, we feed the original local graphs to the trained missing node generator to inpaint missing neighbors and generate new fused graph with augmented nodes and edges. In the second phase, we federatively train GCN for node classification on local fused graph, where each institution iteratively trains local GCN model weights, shares them with a global trusted administration center, and then receives the averaged model weights.
Our main contributions are summarized as follows:
-
1.
We are the first to formulate cross-silo federated graph learning for disease classification using disjointed small local graphs that are partitioned from a global population graph. We increase the effectiveness of GCN on ego-networks by a novel network inpainting module and improve performance by training node generators and node classifiers in a FL framework.
-
2.
The proposed FL network inpainting module includes three components to ensure its effectiveness: BFS node removal to avoid generating isolated corrupted local graphs; SN-GAN to synthesize nodes with realistic data distribution; and edge construction employing both image and non-image information to better integrate information over the graph.
-
3.
We conduct extensive experiments on comparisons, ablation study and hyperparameter discussion. Our method achieves and classification accuracy on the widely-used ABIDE and ADNI datasets, respectively, notably outperforming the alternative FL methods.
II Related work
II-A GCNs for disease prediction
Recently, there has been an increasing focus on graph learning on unstructured data in the medical domain. For example, Parisot et al. [10] exploits the GCN and involves representing populations as a sparse graph in which nodes are associated with imaging features, and phenotypic information is described as edge weights. Hi-GCN [24] uses a hierarchical GCN to learn the graph feature embedding for the classification of ASD and AD.
However, two issues remain in the current GCN models. First, the effectiveness of GCN highly relies on the quality of the graph. When a low-quality graph is input, i.e., a graph with missing component [21, 19], the classification performance is affected. To address the problem of graphs containing missing features, the most popular strategy is to estimate and fill in the unknown values before [25, 26] or jointly with [19] applying GCN. Different from the existing methods, we combine edge augmentation strategies to generate fused graphs. Second, many GCNs solely rely on a single modality, i.e., imaging data [27], to explore the similarity between two nodes. Consequently, they fail to comprehensively capture interactions and similarities between subjects or their individual scans [28]. To tackle this issue, we explore imaging and non-imaging data to represent the population graph.
II-B Federated learning for disease prediction
Federated learning (FL) [22] is a collaborative and decentralized privacy protection technology, which is designed to tackle the problem of data island while protecting data privacy [29]. Driven by the achievement of FL in data privacy protection, FL could have wide popularization and application prospects in data-sensitive fields, such as disease prediction. Li et al. [30] is one of the first works that implements a practical FL system for brain tumor segmentation. Li et al. [13] apply FL and domain adaptation techniques on heterogeneous multi-institutional neuroimaging data analysis. Dayan et al. [14] promote COVID patient risks prediction via collaborating 20 hospitals in FL.
In contrast to the previous FL research, we investigate an under-explored but realistic setting of expressing multi-centric medical data as distributed population graphs and address the unique challenge of FL on a local graph with missing neighbors. The closest related work is Zhang et al. [19]. However, this work targets the general graph node classification problem and does not consider the uniqueness of our considered disease population network (i.e., small local subgraphs), utilize auxiliary information (e.g., phenotypes), or consider the extreme privacy requirement in healthcare applications. Our proposed FedNI improves upon Zhang et al. [19] by addressing the above limitations.
III The Proposed Method
The goal of our work is to enable multiple institutions to collaboratively learn a powerful GCN model for population-based disease prediction without data sharing. For this purpose, we first define the population graph formulation (in Sec. III-A). Then, we propose a two-phase FL framework as shown in Fig. 1, which contains a network inpainting module with missing node generator and a GCN learning module for node classification. The local network inpainting module (in Sec. III-B) is designed to predict missing nodes and augment edge connections, resulting in a larger fused local graph that serves as the input to the GCN node classifier. To leverage the distributed data, the two proposed modules are trained in a certain FL fashion (in Sec. III-C).
III-A Population graph formulation
Graph data consists of a set of nodes and a set of edges. Each node is represented by the node feature containing the properties of this node, while each edge implies the similarity between two nodes. A standard approach to construct graph edges is performing clustering based on node features. However, this approach has two limitations. First, if node features are high dimensional vectors, it is difficult to reveal the real local structure due to the curse of dimensionality. Second, generating edges using a single modality is not enough to mine the complex relationship inherent to the graph data. To address the above challenges, inspired by Parisot et al. [10], in this paper, we generate edges by conducting dimensionality reduction on the image features as well as considering the phenotypic information of the subject.
First, we derive low-dimensional and discriminative features from raw medical images and then use them to construct a similarity graph where denotes the number of nodes in the population graph, aiming at reducing the adverse influence of high-dimensional features, e.g., noisy and redundant features as well as the curse of dimensionality. Specifically, given the raw feature matrix , we employ the Gaussian kernel to define the weight of the edge as:
(1) |
where is the low-dimensional features extracted by dimensionality reduction algorithms (e.g., principal component analysis and recursive feature elimination) and is the width of the Gaussian kernel.
Second, we calculate node similarity from another angle by utilizing phenotype data (e.g., sex, age and gene), aiming at providing much information to output high-quality graphs. Specifically, given the phenotype data matrix where () denotes different types of phenotype data, we define a phenotypic graph as
(2) |
where represents the number of different phenotypes and is the similarity measure function for the -th phenotype data. As the phenotype representation’s distribution and underlying generation process are different from node feature, we can pick different similarity metrics from that of node features in Eq. 1. Particularly in this work, we define as for sex and gene phenotype data, and where for age phenotype data.
Finally, we fuse the edges derived from image-based node features (Eq. 1) and the edges derived from phenotype information (Eq. 2) to obtain the initial graph by performing the Hadamard product between the similarity graph matrix and the phenotypic graph matrix (i.e., ). Moreover, we sparse graph by keeping edges with the largest weights for each node and setting others as zeros. Furthermore, we add the diagonal matrix to (i.e., ).
III-B Network inpainting
In FL, each local graph is a subset of the global graph and there is no overlapped nodes across the local graphs of different institutions. Thus, if the neighbors of local graph nodes are located in another institution, the local graph is incomplete. Focusing on a certain node with missing neighbors, its original ego network structure of the global graph is incomplete. Thus, the node information of local graph is incomplete. Directly apply GCNs on the corrupted graph with missing features may result in degraded and unstable performance. To address this, we first design a missing node generator to generate missing nodes and edges for each local graph. We then conduct FL on local missing node generators to generate new nodes and edges to complete the ego-networks of the corrupted local graph and augment message passing.
III-B1 Node masking for missing node generation
A practical approach to predict missing nodes for graph inpainting is training a self-supervised regression model to predict the hidden nodes and then using this model to predict missing node in the local graphs. To accomplish this, we need to hide nodes and edges of each local graph to construct the regression model. In the literature, the random method is widely used to randomly remove nodes [19], but it is not conducive for feature propagation in the graph. Moreover, the random method may generate isolated and disconnected components that may hurt the completeness of the ego-network structure, resulting in sub-optimization of the generation network. To overcome the above issues, we propose to use the BFS algorithm to represent a graph as a subtree structure for a given root node. The intuition is that removing the leaf nodes in the subtree structure has little effect on applying our selected Weisfeiler-Lehman algorithm GCN strategy [31] to the local graph structure.
Specifically, given a connected graph with a root node , we first build a BFS tree by traversing the nodes in the graph with information broadcasts to neighbor nodes. Based on this property, we can generate sub-graphs by removing leaf nodes at different depths. More specifically, selecting a root node () and using the BFS algorithm on the local graph , we mask some nodes belonging to the -th depth to obtain an incomplete local graph as
(3) |
By randomly visiting the nodes of the local graph as root nodes and removing its leaf nodes, we can generate many pairs (incomplete graph , hidden nodes) that are used as (inputs, labels) for missing node generator training (the number of hidden nodes usually take up 10%-15% of the total nodes in our experiments). We further denote as one of masked neighbors of the node (), and denote the set of missing neighbors of . As each masked node has its corresponding parent node in the graph , the goal of the missing generator is to reconstruct the information of masked neighbors by its parent node based on the incomplete local graph .
III-B2 Local network inpainting
After masking some nodes by the BFS algorithm in each local graph, we need to correctly predict the number of missing neighbors for each node as well as the corresponding feature and phenotype information of each missing neighbor (i.e., missing node).
As GCN [31] and its variants (e.g., GraphSAGE [32]) have been widely used to capture semantic information and structural information in the graph data, in this study, we employ a GCN encoder to obtain the embeddings of each node in the local graph . Note that GCN is more robust for small graph data, while GraphSAGE is more flexible for large-scale graph data [33]. Therefore, we apply GCN in this study considering that the local population graph of a local system is usually a small graph. Although different GNN structures can result different performance, our primary focus in this paper is not on different GNN structures, but on federal learning over population graph. Therefore we choose the most commonly used GNN structure (i.e., GCN). Concretely, with where and means the feature matrix of nodes and the graph matrix of the incomplete graph, the embeddings are obtained by
(4) |
where the GCN encoder has several hidden layers, and each hidden layer includes two operations, i.e., feature learning and neighborhood aggregation. More specifically, the GCN operation on the -th hidden GCN layer is defined as:
(5) |
where is the diagonal matrix of , and is a weight matrix which needs to be trained in the -th layer, and represents the function for activation operation.
Furthermore, our proposed missing node generator constructs a regression model between the embeddings and the ground truth to predict the number of missing nodes/neighbors, the features and the phenotype information of these nodes.
Predicting the number of missing nodes. The number of missing nodes for each parent node is predicted by
(6) |
where denotes the number of missing neighbors of the -th node which is normalized to , is a MLP predictor mapping the embedding to an integer, is the sigmoid function, and is the embedding of obtained by Eq. (4). Since the embedding aggregates the information from its remaining neighbors by the GCN encoder, the predictor can be used to predict various number of missing neighbors based on the different representations of for .
Node feature prediction. Jointly with predicting the number of missing nodes, we predict the feature and the phenotype information of each missing node. Specifically, we design another regression model (i.e., a MLP), , taking in the embedded feature form the GCN encoder to reconstruct the feature of each masked neighbor (e.g., ) from its parent node by
(7) |
where is a Gaussian noise generator for generating diverse missing neighbors. Moreover, we introduce the reconstruction loss to optimize the parameters and by
(8) |
The missing node generator can be regarded as an encoder-decoder. That is, is the GCN encoder which considers the incomplete graph information (i.e., ), while is the MLP decoder for reconstructing the features of masked neighbors. However, it is challenging to make the features generated by the generator realistically match the data distribution of the missing neighbors. To do this, we adopt the SN-GAN [23] to improve the effectiveness of the generator. Specifically, letting be the original data distribution and be the generated data distribution, we obtain the generator loss by
(9) |
where denotes the discriminator to evaluate the gap between generated features and the features of hidden neighbors. Integrating reconstruction loss (Eq. 8) with generator loss (Eq. 9), the final loss for feature reconstruction is formulated as:
(10) |
where and are the weights of and , respectively. The discriminator is trained to identify if the feature comes from the generator or the real missing neighbor.
(11) |
In sum, the features of missing nodes are reconstructed by node feature predictor in Eq. (7), which is optimized by reconstruction loss (Eq. (8)) and GAN loss (Eq. (9) and Eq. (11)).
As the features of missing nodes may not be enough to explore the complex structure across subjects in a disease population network, we further predict the phenotype to obtain the connections (i.e., edges) for missing nodes.
Phenotype prediction and edge construction. Given the number of missing nodes as well as their features, we use both the phenotype information of these nodes and their node property to find the connection between each missing node and known nodes. In this respect, we first adopt a model to predict the phenotype information for masked nodes and then find the connection between two nodes.
For the -th masked neighbor of the parent node , the -th type of phenotype prediction is generated by , where and are defined as in Eq. (7). For phenotype data with class labels (e.g., sex and gene), we adopt the cross-entropy loss function to update model parameters
(12) |
where is the phenotype label. Similarly, age prediction can be optimized by regression losses.
It is worth noting that our FedNI’s local graph inpainting strategy significantly differs from that used by Zhang et al. [19]. The differences are as follows: 1) We improve random node masking to BFS-based node masking to avoid generating isolated components in local graph; 2) We incoperate SN-GAN-based training scheme and novel loss functions to improve the quality of generated node features, instead of requiring auxiliary information from the other local graphs that can expose more privacy risk; 3) In addition to predicting missing node feature, we also predict its associated phenotype to construct weighted edges; 4) The phenotype is further used to rebuild new edges to augment message passing. The advantages of our strategies are verified in Sec. IV-C.
After obtaining the phenotype information of each missing node, we can generate edges for these missing nodes by the same way as described in Sec. III-A.
III-C Federated learning
Although the missing node generator is able to generate missing nodes for each local graph, it is well known that GAN may perform poorly on small data [34]. Similarly, training an effective GCN model for node classification also requires a large amount of samples. With the privacy constraints on analyzing multi-institutional medical data, the proposed FedNI includes two FL phases: i) Federated network inpainting is proposed to fill in the incomplete features of local graphs, ii) Federated GCN is proposed to obtain a global node classifier. Our FL strategy follows the widely used FedAvg [22] aggregation strategy.
III-C1 Federated network inpainting
In Sec. III-B1, we describe a local missing node generator for each local system. To empower the node generator, we aim to federatedly learn a global node generator that leverages the local graphs from different institutions without centralizing the data. However, we keep the discriminator local as we notice averaging the discriminator can hurt model performance (shown in Sec IV-C). The intuition is that the generator should predict missing nodes following the data distribution of the global population network, while local discriminators can fit the heterogeneity of local graphs better. To achieve this goal, the FL process is to repeat the following steps until convergence: i) each local missing node generator (including the number of nodes predictor trained on Eq. (6), node feature generator trained on Eq. (10), and phenotype regression trained on Eq. (12)) is trained in parallel and updated; ii) the global missing node generator on the medical administration side aggregates and averages the local model parameters, and then broadcasts the updated model weights to all the local missing node generators.
After the global missing node generator is well trained and deployed to each local institution, we do graph merge by performing network inpainting as inference on the original local graphs in institution , for . As described in Sec. III-B, our proposed missing node generator predicts the number of missing neighbors , missing node feature , and their phenotype information for node , for . We further build new edges from the predicted nodes and existing nodes following the edge construction method illustrated in Sec. III-A. We denote the new fused local graph of institution as ).
III-C2 Federated GCN node classification
As the ultimate goal of our method FedNI is to obtain a global GCN node classifier, we perform a federated GCN learning method to collaboratively train on multiple local graphs while maintaining data privacy. After obtaining the fused local graphs for all local institutions, we iteratively apply FedAVG [22] on GCN as follows: i) train each local GCN node classifier for a certain number of steps and then share GCN weights to the medical administration center, and ii) update the global GCN node classifier by averaging local GCNs’ parameters and broadcast the updated global GCN to local institutions.
Specifically for the local GCN node classifier training, the -th institution trains a local GCN node classifier with the fused graph and its output is , where is expressed as Eq. (5) with learning parameters . Furthermore, the cross-entropy loss is regarded as the loss of the local GCN model:
(13) |
where is the set of labeled nodes on the -th local system. At the -th iteration, the parameters of the -th local model are updated (i.e., ) and sent to the server subsequently.
III-C3 Privacy preservation techniques
Recent work reveals that input data can be reconstructed from the shared model parameters [35]. To enhance the security of FedNI, we employ differential privacy (DP) [36], which is a popular approach to privacy-preserving FL. For the parameters of local models, i.e., missing node generator and GCN node classifier, shared from local institutions to the medical administration center, we add Gaussian noise with mean and standard deviation as to local model weights to satisfy differential privacy in this work. Above all, we present the detailed procedure of our proposed framework in Algorithm 1.
IV Experiments
We evaluate the effectiveness of our FL method on neuro-disorder classification of two real brain disease datasets: Autism brain imaging data exchange (ABIDE) [37] and Alzheimer’s disease neuroimaging initiative (ADNI) [38].
IV-A Experimental setup
Data | ABIDE | ADNI | ||||||||||||
Information | ASD | HC | MCI | AD | ||||||||||
Subject # | 485 | 544 | 492 | 375 | ||||||||||
|
71/414 | 145/399 | 223/269 | 166/209 | ||||||||||
|
|
|
|
|
IV-A1 Datasets
The demographic information of the subjects in the used datasets and are listed in Table I.
ABIDE includes subjects from ABIDE-I and ABIDE-II, i.e., ASD patients and healthy controls (HC) with functional magnetic resonance imaging (fMRI) data. The fMRI data are pre-processed using the data processing assistant for resting-state fMRI (DPARSF [39])333Downloaded from http://rfmri.org/dpabi.. The registered fMRI volumes are partitioned into 122 regions-of-interest (ROIs) using the Bootstrap Analysis of Stable Clusters (BASC-122) template. We construct a FC network for each subject, where each node is an ROI and the edge weight is the Pearson’s correlation between the time series of BOLD signals of paired ROIs. We use the upper triangle of the fully connected matrix to represent a subject, yielding a -dimensional feature vector.
ADNI includes subjects with T1 MRIs from ADNI-1, ADNI-GO and ADNI 2 (i.e., AD patients and mild cognitive impairment (MCI) subjects.) The structural MRI data are pre-processed by the following operations: (1) anterior commissure-posterior commissure (AC-PC) correction, the resampled images adopt the standard 256×256×256 mode, and the N3 algorithm [40] applied to correct the non-uniform tissue intensity; (2) skull removal and cerebellectomy; (3) spatial normalization to the MNI template with 3×3×3 resolution; (4) spatial smoothing using a full width at half maximum Gaussian smoothing kernel with a size of 6 mm. We use FreeSurfer [41] to preprocess brain tissue (white and gray matter and cerebrospinal fluid) of a T1 MRI [42] and extract anatomical statistics, getting a 345-dimensional feature vector. We also apply z-score normalization of each feature vector separately, considering the heterogeneity for different measurements.
Layer | Details |
1 | G-conv(, 256) + ELU |
2 | G-conv(256, 64) + ELU |
3 | FC(64, 1) +Sigmoid |
4 | Random-vector(4) |
5 | Linear(68, 128) + ReLU+BN(128) |
6 | Linear(128, 256) + ReLU+BN(256) |
7 | FC(256, ) + tanh |
8 | Linear(, 32) ReLU |
9 | FC(32, 2) |
Layer | Details |
1 | SN-Linear(, 128) + ReLU |
2 | SN-Linear(128, 32) + ReLU |
3 | SN-Linear(32, 1) |
Layer | Details |
1 | G-conv(, 64) + ELU |
2 | G-conv(64, 32) |
3 | FC(32, 2) |
ABIDE | ADNI | |||||||||
Method | Accuracy | AUC | Precision | Recall | F1-score | Accuracy | AUC | Precision | Recall | F1-score |
LocalGCN | 0.600 | 0.598 | 0.580 | 0.559 | 0.560 | 0.703 | 0.695 | 0.666 | 0.637 | 0.643 |
(0.012) | (0.011) | (0.012) | (0.017) | (0.012) | (0.016) | (0.018) | (0.022) | (0.037) | (0.028) | |
CentralGCN | 0.655 | 0.654 | 0.635 | 0.633 | 0.633 | 0.757 | 0.750 | 0.734 | 0.691 | 0.710 |
(0.008) | (0.008) | (0.010) | (0.015) | (0.011) | (0.007) | (0.006) | (0.013) | (0.014) | (0.008) | |
FedMLP | 0.630 | 0.627 | 0.618 | 0.573 | 0.591 | 0.731 | 0.721 | 0.625 | 0.631 | 0.625 |
(0.011) | (0.011) | (0.017) | (0.029) | (0.015) | (0.026) | (0.030) | (0.081) | (0.077) | (0.079) | |
FedGCN | 0.644 | 0.643 | 0.625 | 0.616 | 0.613 | 0.742 | 0.735 | 0.704 | 0.693 | 0.692 |
(0.009) | (0.009) | (0.011) | (0.022) | (0.012) | (0.007) | (0.009) | (0.010) | (0.014) | (0.009) | |
FedSage+ | 0.658 | 0.655 | 0.641 | 0.627 | 0.626 | 0.751 | 0.744 | 0.722 | 0.699 | 0.700 |
(0.006) | (0.008) | (0.013) | (0.017) | (0.009) | (0.008) | (0.010) | (0.009) | (0.015) | (0.010) | |
FedNI(ours) | 0.667 | 0.663 | 0.647 | 0.640 | 0.637 | 0.758 | 0.754 | 0.725 | 0.721 | 0.717 |
(0.006) | (0.007) | (0.009) | (0.014) | (0.007) | (0.007) | (0.007) | (0.008) | (0.017) | (0.011) |
IV-A2 Model training Setting-up
We list the detailed settings for FL and implementation platforms as follows.
Federated learning settings. Given the population size of ABIDE and ADNI, we set the number of institutions to 5 (i.e., ) for both datasets for all methods except CentralGCN which is trained on the whole dataset. For both datasets, we equally and randomly divide subjects into 5 subsets and assign each subset to an institution444The main goal of our work is not to handle the significant distribution heterogeneity of data collected in different institutions. To control this factor, we randomly divide the samples instead of clustering them by institution.. Specifically, each institution has 206 subjects for the ABIDE dataset and 182 subjects for the ADNI dataset. Following Kipf et al. [31], we use full-batch training on our small local graphs. We use Adam as our optimizer and set the learning rate as 0.001 for all the experiments. We detail the training iterations for different methods in Sec. IV-B.
Implementation platform and experimental factors control. All experiments are implemented in PyTorch and conducted on a server with 8 NVIDIA GeForce 3090 GPUs (24 GB memory for each GPU). The labeled rate is set to 80% and the training/testing data is split according 5-fold cross-validation. We obtain the author-verified codes for all comparison methods and follow the advice of parameter settings in the corresponding literature so that all comparison methods achieve the best performance on each dataset. Additionally, all methods (including our method) use the same settings for the original graph structure, the train/test partitioning, the dimension of the networks and the training procedures. Besides, Tables II-IV present the used network architectures of the missing node generator, the discriminator and the GCN node prediction module, which are implemented with the PyTorch framework. A graph convolution layer is represented by ‘G-conv’, and a batch normalization layer is denoted by ‘BN’. We use ‘Linear’ to denote a linear transformation layer and ‘FC’ to denote a fully-connected layer for classification. The ‘ReLU’ is used as the non-linearity function, and ‘ELU’ denotes the exponential linear unit. The sigmoid function is represented by ‘sigmoid’, and the hyperbolic tangent function is denoted as ‘tanh’. In addition, we show the channel dimension in the bracket where denotes the input dimension.
IV-A3 Performance evaluation
The diagnosis results of all methods are evaluated by five evaluation metrics, including Accuracy, Area under the ROC Curve (AUC), Precision, Recall and F1-score. For all of these metrics, a higher value means better performance. In all experiments, we performed 5-fold cross-validation and repeated the experiments 5 times for each method with random seeds to report their average performances and corresponding standard deviation. We conduct significance testing using the two sample t-test.
IV-B Comparison with alternative methods
IV-B1 Alternative methods
We compare with two centralized methods and three FL methods. The details of the comparison methods are listed as follows:
CentralGCN[10] assumes data are centralized and trains a GCN model on the original global graph. The graph construction strategy is the same as ours.
LocalGCN follows the model architecture in CentralGCN, but trains the GCN model exclusively on each local graph under non-FL setting.
FedMLP[13] applies the FedAvg strategy [22] to train the basic MLP model with individual flattened brain connectivity matrix, without considering the population graph information.
FedGCN is built on LocalGCN by simply employing FedAvg [22] on local GCN.
FedSage+[19] trains a missing node generator and a GraphSage classifier for each local graph to conduct FL. In particular, the missing node generator is a regression model only and it is designed to generate the features of missing nodes without considering generating the phenotype information and augmenting edges.
![Refer to caption](x2.png)
![Refer to caption](x3.png)
![Refer to caption](x4.png)
![Refer to caption](x5.png)
The learning epochs for centralized training methods (CentralGCN and LocalGCN) are set to 100. For FL methods, we need to set both the local update epochs between each global aggregation and the local-global model communication round . For FedMLP, FedGCN, and FedSage+, we set and . As our method FedNI uses a two-phase training strategy, we set and for federated network inpainting, then and for federated GCN node classification. We choose a two-phase strategy as it can stabilize GAN training by reducing the complexity of optimization. Also, we have observed better and stable performance compared to the end-to-end training strategy.
![Refer to caption](x6.png)
![Refer to caption](x7.png)
IV-B2 Results and analysis
Table V summarizes the classification performance over institutions of all methods on the two neurological disease datasets. First, our method outperforms all methods in terms of accuracy, AUC, precision, recall and F1-score on two datasets. Meanwhile, we find that the improvements are significant (with via t-test) compared with comparison methods. Particularly, first, our method, FedNI, improves by () on average, compared to the vanilla population-based disease classification on siloed institutions (i.e., LocalGCN). This indicates the necessity of deploying FL to encourage multi-institutional collaborative learning with privacy constraints. FedNI’s performance may even be slightly better than that of CentralGCN, owing to the unique FL optimization scheme that alleviates the effect of noise data on model updating direction. it is also worth noting that the sample of neuroimaging data is limited, thus the neighbors generated by FedNI not only inpaint the distribution differences between local clients, but also involve more training nodes at the global range to get better representation. Second, FedNI outperforms FedGCN by 3.61% () on ABIDE dataset and 3.07% () on ADNI dataset. To this end, FedNI also achieves better performance than the best FL competitor FedSage+. Specifically, compared to FedSage+, our method achieves an average improvement of 1.2% (), 1.4% (), 0.6% (), 2.6% (), and 2.1% () in terms of accuracy, AUC, precision, recall and F1-score, respectively. These results suggest that the effectiveness of our proposed FedNI federated network inpainting design can achieve better federated graph learning performance on small siloed population graphs than the state-of-the-art (i.e., FedSage+).
IV-C Ablation study
In this section, we conduct extensive ablation studies to demonstrate the necessity of the three essential techniques in the network inpainting module (see Sec. IV-C1); verify the rationality of federatively training generators only (see Sec. IV-C2); and demonstrate the power of complete, more reliable local graphs through the proposed learning mechanism (see Sec. IV-C3).
IV-C1 Ablation on BFS, edge prediction, and discriminator
The proposed FL local network inpainting module consists of three essential components, including applying BFS to generate an incomplete graph, incorporating phenotype data for edge prediction, and using SN-GAN discriminator to improve feature fidelity. To substantiate the superiority of these components, comprehensive ablation studies are performed by removing each component from our method and Fig. 2 shows how each of the components contributes to the final performance.
Effectiveness of BFS. To evaluate the effectiveness of BFS algorithm (i.e., Eq. (3)), we report the performance of hiding nodes by the BFS algorithm and the random method, respectively, in Fig. 2. It can be seen that when using BFS algorithm for hiding nodes, the average performance of AUC gains 1.0% and 1.1% comparing with random mask on the ABIDE dataset and the ADNI dataset, respectively.
Effectiveness of edge prediction. Edge information is an essential element for GCN model. A missing edge and its feature can result in incomplete ego networks on the graph, thus hurting performance of the disease prediction. In this part, we investigate the effectiveness of utilizing phenotype data to predict edges. To achieve this, we replace the edge reconstruction operation (i.e., Sec. III-B2) in our missing node generator method with adding binarized links between the ego nodes and their missing neighbors [19]. As can be seen from Fig. 2, our method can achieve better performance on all evaluation metrics. For example, we obtain the AUC result of 0.663, which is higher than that (i.e., 0.646) of the ablation without generating new edges. It can be concluded that generating edges based on phenotype predictions is essential for generating a high-quality graph.
![Refer to caption](x8.png)
![Refer to caption](x9.png)
![Refer to caption](x10.png)
![Refer to caption](x11.png)
Effectiveness of discriminator. We perform federated graph inpainting without the discriminator (i.e., Eq. (9) and Eq. (11)) to further verify its effectiveness in our method. From Fig. 5, we can intuitively see the feature distribution of original nodes and generated nodes in two cases. This figure suggests that our method with discriminator can significantly generate a more stable feature distribution, compared with the method without discriminator. The main reason could be that the discriminator use spectral normalization to make discriminator satisfy the Lipschitz hypothesis, thereby making the discriminator model more stable. Furthermore, through this rough comparison, it can be seen that our FedNI gets the best accuracy and precision results in Fig 2. This suggests that our method with discriminator can significantly generate more stable and realistic nodes, compared to the method without discriminator.
IV-C2 Different network inpainting module training strategies
To further investigate the effectiveness of applying FL on the network inpainting module, we conduct experiments with four variants of training strategy on our network inpainting module: (i) Training the generator model (i.e., G) and the discriminator model (i.e., D) of network inpainting module under non-FL setting (i.e., NoFL-D-G); (ii) Only the discriminator model under FL setting (i.e., FL-D); (iii) Only the generator model under FL setting (i.e., FL-G); (iv) Training the generator model and the discriminator model under FL setting (i.e., FL-D-G). Fig. 3 shows the results of the proposed network inpainting module with four variants of FL training strategy, from which we observe the following: (1) Applying FL on generator model (i.e., FL-G) generally outperforms other variants of training strategy (e.g., NoFL-D-G and FL-D). For example, the FL-G method achieves significantly better performance (with via t-test) compared with NoFL-D-G and FL-D in terms of accuracy, AUC, precision, recall and F1-score. The main reason could be that applying FL on the generator model can lead the local generator model to output node features that are more similar with the node features of other organizations. (2) There was no significant improvement when using FL on the discriminator, as seen from comparing FL-G with FL-G-D and comparing NoFL-D-G with FL-D. The reason might be that the generator can directly influence the generated features, while the discriminator influences it indirectly. The intuition is that the generator should predict missing nodes following the data distribution of the global population network, while local discriminators can fit the heterogeneity of local graphs better. These observations further verify the effectiveness of our strategy (FL-G only) for network inpainting.
IV-C3 Comparison with random inpainting
In practice, the generated missing nodes and edges might be inaccurate. To further illustrate the strength of the proposed network inpainting method, we conduct experiments on network inpainting by our method and random inpainting method. Specifically, for random network inpainting method, we uniformly generate the same number of missing nodes as our method, and randomly generate node features based on the original feature distribution (i.e., normal distribution) as well as edges. Fig. 4 shows the results of network inpainting using the random network inpainting method and our method in ABIDE and ADNI datasets. It can be seen from Fig. 4 that our FedNI achieves consistently better performance compared to the random inpainting method. The experiments show that the missing nodes generated by our proposed network inpainting method are accurate and provide more useful information for the local GCN classifier to improve the performance.
IV-C4 The scalability of FedNI
We conduct an experiment to investigate the scalability of FedNI in terms of the number of FL clients (increasing the number of FL clients and keeping the number of nodes in local clients fixed). In this way, we fix the number of nodes in each local client (i.e., 10% of nodes in the dataset), and increase the numbers of the clients, i.e., from 2 to 10. The more clients, the more training samples are available for global model learning their patterns. As shown in Fig. 7, we observe that involving more clients can improve performance and maintain consistency. On the basis of these results, we can concluded that FedNI has a promising scalability, as increasing the number of clients in global scope, resulting a better performance. In this case, if we want obtain a better result for practical application, we can achieve this goal by involving more clients. Importantly, we report the computation cost of our result in Table. VI. Intuitively, this makes sense for the scalability, as low computation cost allows involving more FL clients to get better results.
![Refer to caption](x12.png)
![Refer to caption](x13.png)
IV-C5 The computational cost
The experiment of computational cost is implemented with PyTorch (vision 1.9) framework and reported by four metrics, including FLOPs (), Params (), Training time () and Total times (). Note that, the proposed FedNI includes two FL phases (i.e., Federated network inpainting and Federated GCN node classification), we report the computational cost for each phases as well as the total time (The total time including training times of two phases and graph merge process as we described in Sec. III-C1). For Federated network inpainting phase, the input of the model is one local graph for a client (i.e., a graph with 200 nodes where each nodes contain a 7381 dimensional feature vector). For Federated GCN node classification phase, the input of the model is one local fused graph for a client (i.e., a graph with 300 nodes where each nodes contain a 7381 dimensional feature vector). From Tab. VI, we observed that both two phases of FedNI are low computational. Although Federated network inpainting phase brings extra computational cost, it is acceptable since they are in the same levels of computational cost. The results indicate that FedNI has the has the potential potential to be applied in practice and good scalability.
|
|
|||||
FLOPs () | 0.98 | 0.26 | ||||
Params () | 3.1 | 0.47 | ||||
Training time () | 66 | 11 | ||||
Total time () | 89 |
IV-D Hyperparameter Discussion
IV-D1 Parameter sensitivity analysis
In our experiment, we use the default non-weighted losses in Eq. (10), namely and for both datasets. We investigate the sensitivity of the weighted coefficient (i.e., and ) of our method in Eq. (10). We vary the values of and from to and report the mean values of accuracy within 5 independent runs. Fig. 6 indicates that our method is insensitive to and and consistently better than FedSage+’s best performance (i.e., red plane in Fig. 6). This is because our model has a well-designed feature reconstruction framework and is robust.
We further conduct an experiment to investigate the hyperparameter . The hyperparameter in Section. III-A is the number of nearest neighbors. We set the range of the as , and the results of different values of hyperparameter are summarized in Fig. 8. We can observe that the classification accuracy of our method increased with the increasing values of , i.e., from to , and increasing the value of beyond a threshold can slight hurt the performance, i.e., , from to . The reason is that a small value cannot fully exert the ability of neighbors, and a large value of may cause noise neighbors and over-smooth problem in the GCN. Moreover the optimal value in our method can be easily found (i.e., , around ) on both two datasets.
![Refer to caption](x14.png)
![Refer to caption](x15.png)
IV-D2 Local updating epochs
We investigate the sensitivity of local updating epochs in FedNI. We evaluate the training convergence and test accuracy with different values of local updating epochs . As shown in Fig. 9, we can observed that the loss is decreasing with the increasing communication rounds of training process, and thus our method has a good convergence property. Moreover, training large local updating epochs requires fewer global communication rounds to converge, while resulting in lower model performance, especially in the ADNI dataset.
![Refer to caption](x16.png)
![Refer to caption](x17.png)
V Conclusion
In this work, we have proposed a new FL framework for distributed local population network analysis. To tackle the realistic but ignored issue of incomplete information in local networks, we designed a federated network inpainting module, where a missing node generator allows each institution to generate missing nodes and edges. We train the missing node generator and GCN-based node classification model with federation. Extensive experiments on public datasets demonstrate that our method obtains state-of-the-art performance. Our future work will address the data heterogeneity issue to further improve performance.
VI Acknowledgment
This work was partially supported by the National Natural Science Foundation of China (Grant No. 61876046), Medico-Engineering Cooperation Funds from University of Electronic Science and Technology of China (No. ZYGX2022YGRH009 and ZYGX2022YGRH014), the Guangxi “Bagui” Teams for Innovation and Research, China, and Natural Sciences and Engineering Research Council of Canada (GECR-2022-00430).
The authors are sincerely thankful for the support by NVIDIA and Microsoft Azure. We thank Dr. Qingyu Zhao at Stanford University for the data collection and Dr. Renjie Liao at the University of British Columbia for insightful suggestions.
References
- [1] S. R. Stevens and M. N. Rasband, “Ankyrins and neurological disease,” Current Opinion in Neurobiology, vol. 69, pp. 51–57, 2021.
- [2] C.-Y. Wee, P.-T. Yap, and D. Shen, “Diagnosis of autism spectrum disorders using temporally distinct resting-state functional connectivity networks,” CNS neuroscience & therapeutics, vol. 22, no. 3, pp. 212–219, 2016.
- [3] X. Song, A. Elazab, and Y. Zhang, “Classification of mild cognitive impairment based on a combined high-order network and graph convolutional network,” Ieee Access, vol. 8, pp. 42 816–42 827, 2020.
- [4] Y. Huang and A. C. Chung, “Edge-variational graph convolutional networks for uncertainty-aware disease prediction,” in International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, 2020, pp. 562–572.
- [5] T.-A. Song, S. R. Chowdhury, F. Yang, H. Jacobs, G. El Fakhri, Q. Li, K. Johnson, and J. Dutta, “Graph convolutional neural networks for alzheimer’s disease classification,” in 2019 IEEE 16th International Symposium on Biomedical Imaging (ISBI 2019). IEEE, 2019, pp. 414–417.
- [6] H. Li and Y. Fan, “Brain decoding from functional mri using long short-term memory recurrent neural networks,” in International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, 2018, pp. 320–328.
- [7] S. Spasov, L. Passamonti, A. Duggento, P. Lio, N. Toschi, A. D. N. Initiative et al., “A parameter-efficient deep learning approach to predict conversion from mild cognitive impairment to alzheimer’s disease,” Neuroimage, vol. 189, pp. 276–287, 2019.
- [8] N. C. Dvornek, X. Li, J. Zhuang, and J. S. Duncan, “Jointly discriminative and generative recurrent neural networks for learning from fmri,” in International Workshop on Machine Learning in Medical Imaging. Springer, 2019, pp. 382–390.
- [9] V. P. Sudha and M. Vijaya, “Recurrrent neural network based model for autism spectrum disorder prediction using codon encoding,” Journal of The Institution of Engineers (India): Series B, pp. 1–7, 2021.
- [10] S. Parisot, S. I. Ktena, E. Ferrante, M. Lee, R. Guerrero, B. Glocker, and D. Rueckert, “Disease prediction using graph convolutional networks: application to autism spectrum disorder and alzheimer’s disease,” Medical image analysis, vol. 48, pp. 117–130, 2018.
- [11] P. Voigt and A. Von dem Bussche, “The eu general data protection regulation (gdpr),” A Practical Guide, 1st Ed., Cham: Springer International Publishing, vol. 10, p. 3152676, 2017.
- [12] A. Act, “Health insurance portability and accountability act of 1996,” Public law, vol. 104, p. 191, 1996.
- [13] X. Li, Y. Gu, N. Dvornek, L. H. Staib, P. Ventola, and J. S. Duncan, “Multi-site fmri analysis using privacy-preserving federated learning and domain adaptation: Abide results,” Medical Image Analysis, vol. 65, p. 101765, 2020.
- [14] I. Dayan, H. R. Roth, A. Zhong, A. Harouni, A. Gentili, A. Z. Abidin, A. Liu, A. B. Costa, B. J. Wood, C.-S. Tsai et al., “Federated learning for predicting clinical outcomes in patients with covid-19,” Nature medicine, vol. 27, no. 10, pp. 1735–1743, 2021.
- [15] Q. Yang, J. Zhang, W. Hao, G. Spell, and L. Carin, “Flop: Federated learning on medical datasets using partial networks,” arXiv preprint arXiv:2102.05218, 2021.
- [16] P. V. Astillo, D. G. Duguma, H. Park, J. Kim, B. Kim, and I. You, “Federated intelligence of anomaly detection agent in iotmd-enabled diabetes management control system,” Future Generation Computer Systems, 2021.
- [17] C. He, K. Balasubramanian, E. Ceyani, C. Yang, H. Xie, L. Sun, L. He, L. Yang, P. S. Yu, Y. Rong et al., “Fedgraphnn: A federated learning system and benchmark for graph neural networks,” arXiv preprint arXiv:2104.07145, 2021.
- [18] R. A. Hanneman and M. Riddle, “Introduction to social network methods,” 2005.
- [19] K. Zhang, C. Yang, X. Li, L. Sun, and S. M. Yiu, “Subgraph federated learning with missing neighbor generation,” arXiv preprint arXiv:2106.13430, 2021.
- [20] Q. Zhu, Y. Xu, H. Wang, C. Zhang, J. Han, and C. Yang, “Transfer learning of graph neural networks with ego-graph information maximization,” arXiv preprint arXiv:2009.05204, 2021.
- [21] H. Taguchi, X. Liu, and T. Murata, “Graph convolutional networks for graphs containing missing features,” Future Generation Computer Systems, vol. 117, pp. 155–168, 2021.
- [22] B. McMahan, E. Moore, D. Ramage, S. Hampson, and B. A. y Arcas, “Communication-efficient learning of deep networks from decentralized data,” in Artificial intelligence and statistics. PMLR, 2017, pp. 1273–1282.
- [23] T. Miyato, T. Kataoka, M. Koyama, and Y. Yoshida, “Spectral normalization for generative adversarial networks,” arXiv preprint arXiv:1802.05957, 2018.
- [24] H. Jiang, P. Cao, M. Xu, J. Yang, and O. Zaiane, “Hi-gcn: A hierarchical graph convolution network for graph embedding learning of brain network and brain disorders prediction,” Computers in Biology and Medicine, vol. 127, p. 104096, 2020.
- [25] J. Yi, J. Lee, K. J. Kim, S. J. Hwang, and E. Yang, “Why not to use zero imputation? correcting sparsity bias in training neural networks,” arXiv preprint arXiv:1906.00150, 2019.
- [26] Y. Luo, X. Cai, Y. Zhang, J. Xu, and X. Yuan, “Multivariate time series imputation with generative adversarial networks,” in Proceedings of the 32nd International Conference on Neural Information Processing Systems, 2018, pp. 1603–1614.
- [27] A. Abraham, M. P. Milham, A. Di Martino, R. C. Craddock, D. Samaras, B. Thirion, and G. Varoquaux, “Deriving reproducible biomarkers from multi-site resting-state data: An autism-based example,” NeuroImage, vol. 147, pp. 736–745, 2017.
- [28] Y. Zhu, J. Ma, C. Yuan, and X. Zhu, “Interpretable learning based dynamic graph convolutional networks for alzheimer’s disease analysis,” Information Fusion, vol. 77, pp. 53–61, 2022.
- [29] L. Li, Y. Fan, M. Tse, and K.-Y. Lin, “A review of applications in federated learning,” Computers & Industrial Engineering, p. 106854, 2020.
- [30] W. Li, F. Milletarì, D. Xu, N. Rieke, J. Hancox, W. Zhu, M. Baust, Y. Cheng, S. Ourselin, M. J. Cardoso et al., “Privacy-preserving federated brain tumour segmentation,” in International workshop on machine learning in medical imaging. Springer, 2019, pp. 133–141.
- [31] T. N. Kipf and M. Welling, “Semi-supervised classification with graph convolutional networks,” arXiv preprint arXiv:1609.02907, 2016.
- [32] W. L. Hamilton, R. Ying, and J. Leskovec, “Inductive representation learning on large graphs,” in NIPS, 2017, pp. 1025–1035.
- [33] Z. Wu, S. Pan, F. Chen, G. Long, C. Zhang, and S. Y. Philip, “A comprehensive survey on graph neural networks,” IEEE transactions on neural networks and learning systems, vol. 32, no. 1, pp. 4–24, 2020.
- [34] S. Zhao, Z. Liu, J. Lin, J.-Y. Zhu, and S. Han, “Differentiable augmentation for data-efficient gan training,” arXiv preprint arXiv:2006.10738, 2020.
- [35] L. Zhu and S. Han, “Deep leakage from gradients,” in Federated learning. Springer, 2020, pp. 17–31.
- [36] C. Dwork, A. Roth et al., “The algorithmic foundations of differential privacy.” Found. Trends Theor. Comput. Sci., vol. 9, no. 3-4, pp. 211–407, 2014.
- [37] A. Di Martino, C.-G. Yan, Q. Li, E. Denio, F. X. Castellanos, K. Alaerts, J. S. Anderson, M. Assaf, S. Y. Bookheimer, M. Dapretto et al., “The autism brain imaging data exchange: Towards a large-scale evaluation of the intrinsic brain architecture in autism,” Molecular Psychiatry, vol. 19, no. 6, pp. 659–667, 2014.
- [38] “Alzheimer’s disease neuroimaging initiative (adni),” http://adni.loni.usc.edu, 2003.
- [39] C. Yan and Y. Zang, “Dparsf: a matlab toolbox for ”pipeline” data analysis of resting-state fmri,” Frontiers in Systems Neuroscience, vol. 4, p. 13, 2010.
- [40] J. G. Sled, A. P. Zijdenbos, and A. C. Evans, “A nonparametric method for automatic correction of intensity nonuniformity in mri data,” IEEE transactions on medical imaging, vol. 17, no. 1, pp. 87–97, 1998.
- [41] B. Fischl, “Freesurfer,” Neuroimage, vol. 62, no. 2, pp. 774–781, 2012.
- [42] G. Baronzio, A. Zambelli, D. Comi, A. Barlocco, A. Baronzio, P. Marchesi, A. Gramaglia, E. Castiglioni, A. Mafezzoni, E. Beviglia et al., “Proinflammatory and regulatory cytokine levels in aids cachexia.” In vivo (Athens, Greece), vol. 13, no. 6, pp. 499–502, 1999.