<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article">
 <front>
  <journal-meta>
   <journal-id journal-id-type="publisher-id">
    ojapps
   </journal-id>
   <journal-title-group>
    <journal-title>
     Open Journal of Applied Sciences
    </journal-title>
   </journal-title-group>
   <issn pub-type="epub">
    2165-3917
   </issn>
   <issn publication-format="print">
    2165-3925
   </issn>
   <publisher>
    <publisher-name>
     Scientific Research Publishing
    </publisher-name>
   </publisher>
  </journal-meta>
  <article-meta>
   <article-id pub-id-type="doi">
    10.4236/ojapps.2024.1411195
   </article-id>
   <article-id pub-id-type="publisher-id">
    ojapps-137144
   </article-id>
   <article-categories>
    <subj-group subj-group-type="heading">
     <subject>
      Articles
     </subject>
    </subj-group>
    <subj-group subj-group-type="Discipline-v2">
     <subject>
      Biomedical 
     </subject>
     <subject>
       Life Sciences, Chemistry 
     </subject>
     <subject>
       Materials Science, Computer Science 
     </subject>
     <subject>
       Communications, Engineering, Physics 
     </subject>
     <subject>
       Mathematics
     </subject>
    </subj-group>
   </article-categories>
   <title-group>
    Federated Graph Learning Based on Graph Distance Computing
   </title-group>
   <contrib-group>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Wei
      </surname>
      <given-names>
       Gao
      </given-names>
     </name>
    </contrib>
   </contrib-group> 
   <aff id="affnull">
    <addr-line>
     aSchool of Information Science and Technology, Yunnan Normal University, Kunming, China
    </addr-line> 
   </aff> 
   <pub-date pub-type="epub">
    <day>
     01
    </day> 
    <month>
     11
    </month>
    <year>
     2024
    </year>
   </pub-date> 
   <volume>
    14
   </volume> 
   <issue>
    11
   </issue>
   <fpage>
    2985
   </fpage>
   <lpage>
    2995
   </lpage>
   <history>
    <date date-type="received">
     <day>
      3,
     </day>
     <month>
      October
     </month>
     <year>
      2024
     </year>
    </date>
    <date date-type="published">
     <day>
      29,
     </day>
     <month>
      October
     </month>
     <year>
      2024
     </year> 
    </date> 
    <date date-type="accepted">
     <day>
      29,
     </day>
     <month>
      October
     </month>
     <year>
      2024
     </year> 
    </date>
   </history>
   <permissions>
    <copyright-statement>
     © Copyright 2014 by authors and Scientific Research Publishing Inc. 
    </copyright-statement>
    <copyright-year>
     2014
    </copyright-year>
    <license>
     <license-p>
      This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
     </license-p>
    </license>
   </permissions>
   <abstract>
    Federated learning is a classic of privacy-preserving learning, which enables collaborative learning without sharing data. Structured data has become the mainstream of current applications, where there is a correlation between samples in the same dataset, which can be represented by a graph. Federated graph learning (FGL) is the integration of structured data into federated learning, assuming that each user has structured graph representation data and uses graph learning models for training. This article proposes an FGL algorithm based on graph distance calculation, which determines the similarity of users in terms of graph distance, then clusters users, and aggregates local models of users in the same cluster. This algorithm can adjust the number of clusters by changing the threshold (the larger the threshold, the fewer clusters and the more users in each cluster, and vice versa), thereby controlling the scope of user collaboration.
   </abstract>
   <kwd-group> 
    <kwd>
     Federated Learning
    </kwd> 
    <kwd>
      Federated Graph Learning
    </kwd> 
    <kwd>
      Graph Distance
    </kwd>
   </kwd-group>
  </article-meta>
 </front>
 <body>
  <sec id="s1">
   <title>1. Introduction</title>
   <p>As an archetypal framework of privacy-preserving cooperative learning, federated learning (FL) has received great attention and in-depth research, which enables users to cooperatively learn models without exchanging data and thereby protecting users’ personal privacy (see <xref ref-type="bibr" rid="scirp.137144-1">
     [1]
    </xref> and <xref ref-type="bibr" rid="scirp.137144-2">
     [2]
    </xref>). Specifically, each user possesses their own private data, which is used to learn their local models. After several local learning rounds, users upload their model parameters to the server, which performs aggregation and distributes the global model parameter to all users for the next episode of learning (see Korba et al. <xref ref-type="bibr" rid="scirp.137144-3">
     [3]
    </xref>, Bouzabia et al. <xref ref-type="bibr" rid="scirp.137144-4">
     [4]
    </xref> and Venkatesan et al. <xref ref-type="bibr" rid="scirp.137144-5">
     [5]
    </xref>).</p>
   <p>The key issues of FL are how to deal with data heterogeneity and how to transfer knowledge between users with similar data. Each user is eager to absorb positive knowledge from other users to promote local model training. Transfer learning has become one of the hot branches of FL research. Selvakanmani et al. <xref ref-type="bibr" rid="scirp.137144-6">
     [6]
    </xref> raised a transfer learning trick integrated into a federated learning framework in privacy-preserving breast cancer classification circumstances. Raja et al. <xref ref-type="bibr" rid="scirp.137144-7">
     [7]
    </xref> proposed a federated transfer learning framework that integrated a pre-trained ResNet-18 for transfer learning with a meticulously designed convolutional neural network. Singh and Bedi <xref ref-type="bibr" rid="scirp.137144-8">
     [8]
    </xref> proposed a streamlined approach that merged clustering analysis with federated and transfer learning. Qian et al. <xref ref-type="bibr" rid="scirp.137144-9">
     [9]
    </xref> presented a comprehensive review of federated transfer learning in machinery fault diagnosis. However, due to the huge discrepancies between private data, users with huge differences in data structure tend to provide negative knowledge, and absorbing excessive negative knowledge will reduce the efficiency of the local model.</p>
   <p>When considering the data structure of machine learning, we have to take structured data or irregular data into account. For regular data structure, we can think of them as a standard set of data or an Excel spreadsheet. While for the structured data or irregular data, it can be represented by a graph, i.e. since there are mutual correlations among samples, and hence vertices are used to represent samples and their associated structures are represented by edges. To resolve the limitations stated above, federated graph learning (FGL) is introduced to deal with the structured data involved in FL. In FGL setting, each user possesses a structured dataset presented by a (weighted) graph, users train the local model parameters in terms of graph neural networks (GNNs), graph convolutional neural networks (GCNNs), or other graph learning approaches (see <xref ref-type="bibr" rid="scirp.137144-10">
     [10]
    </xref>, <xref ref-type="bibr" rid="scirp.137144-11">
     [11]
    </xref> and <xref ref-type="bibr" rid="scirp.137144-12">
     [12]
    </xref> for more details). The server aggregates the local model parameters, which are submitted by users, and disseminates the global model to each user (see Xie et al. <xref ref-type="bibr" rid="scirp.137144-13">
     [13]
    </xref>, Peng et al. <xref ref-type="bibr" rid="scirp.137144-14">
     [14]
    </xref> and Tang et al. <xref ref-type="bibr" rid="scirp.137144-15">
     [15]
    </xref>). However, the existing FGL has defects in calculating user similarity. Specifically, the similarity function is calculated from scalars or vectors, which are used to represent the user’s graph-structured data, while the topological structure of the graph is ignored. Although a small number of contributions extract graph features, the highly concentrated graph feature information often distorts the graph topological features.</p>
   <p>To alleviate the foregoing issue, we propose a novel FGL based on graph distance computing, and it has the following two exclusive advantages:</p>
   <p>In this work, we proposed a novel FGL algorithm based on graph distance computing, where users are clustered into several clusters: the more clusters there are, the fewer users in each cluster; the fewer clusters there are, the more users in each cluster. The number of clusters can be adjusted by a threshold. The server aggregates the model parameters of users in the same cluster, thereby achieving collaborative training of similar users.</p>
   <p>The subsequent sections are organized as follows. First, a comprehensive survey on FGL is presented in the next section. Then, the settings and problem formalization are described. After that, we present the main algorithm and detailed analysis. Finally, we conclude the paper.</p>
  </sec><sec id="s2">
   <title>2. Related Works on Federated Graph Learning</title>
   <p>The aim of this section is to present a comprehensive survey on FGL in recent years. Chen et al. <xref ref-type="bibr" rid="scirp.137144-16">
     [16]
    </xref> proposed FedGraph for FGL among multiple computing clients, and an intelligent graph sampling algorithm in terms of deep reinforcement learning was also suggested. Wu et al. <xref ref-type="bibr" rid="scirp.137144-17">
     [17]
    </xref> raised a multi-level FGL and self-attention-based personalized indoor localization method to capture the intrinsic features of received signal strength. Zeng et al. <xref ref-type="bibr" rid="scirp.137144-18">
     [18]
    </xref> introduced a feature-contrastive graph federated learning approach to improve the robustness of the federated learning system in graph data. Chang et al. <xref ref-type="bibr" rid="scirp.137144-19">
     [19]
    </xref> determined a graph-based client selection framework for heterogeneity in federated learning. Liu et al. <xref ref-type="bibr" rid="scirp.137144-20">
     [20]
    </xref> studied FGL under a cross-silo setting to deal with network traffic throttling and flow scheduling problems. Zhang et al. <xref ref-type="bibr" rid="scirp.137144-21">
     [21]
    </xref> argued a specificity-aware FGL framework for rs-fMRI analysis and automated brain disorder identification. Zhang et al. <xref ref-type="bibr" rid="scirp.137144-22">
     [22]
    </xref> propose an FGL framework by means of ego-graphs, in which each client trains their local models while also contributing to the training of a global model. Li et al. <xref ref-type="bibr" rid="scirp.137144-23">
     [23]
    </xref> proposed federated graph topology-aware aggregation in terms of topologyaware local smoothing confidence and mixed neighbor features. Chen et al. <xref ref-type="bibr" rid="scirp.137144-24">
     [24]
    </xref> investigated the problem of stealing graph data in the FGL setting. Fu et al. <xref ref-type="bibr" rid="scirp.137144-25">
     [25]
    </xref> devised an FGL approach for privacy-preserving individual-level infection prediction. Kong et al. <xref ref-type="bibr" rid="scirp.137144-26">
     [26]
    </xref> considered a model heterogeneous graph federated learning framework in terms of prototype learning and local data augmentation. Zhong et al. <xref ref-type="bibr" rid="scirp.137144-27">
     [27]
    </xref> designed a lightweight FGL approach for accelerating classification inference in unmanned aerial vehicles-assisted multiaccess edge computing systems. Xie et al. <xref ref-type="bibr" rid="scirp.137144-28">
     [28]
    </xref> proposed a decentralized cross-institutional personalized FGL algorithm for IoT service recommendation. Abdel-Basset et al. <xref ref-type="bibr" rid="scirp.137144-29">
     [29]
    </xref> introduced a digital twin framework for creating a digital replica of the physical slicing-supported network in terms of FGL approach. Tian et al. <xref ref-type="bibr" rid="scirp.137144-30">
     [30]
    </xref> proposed a FGL approach for privacy-preserving cross-domain recommendations to capture users’ preferences. Xing et al. <xref ref-type="bibr" rid="scirp.137144-31">
     [31]
    </xref> proposed an FGL framework for threat detection of TAP rules while simultaneously protecting user data and privacy.</p>
   <p>The existing approaches of FGL fully reflect the fusion of data and try to use a variable to represent the topological structure of a graph, so as to realize the graph similarity calculation by calculating the gap between variables. These methods cannot reflect the real topological structure gap between graphs, even if the variable describes a certain topological indicator parameter in the graph.</p>
  </sec><sec id="s3">
   <title>3. Preliminary and Settings</title>
   <p>The purpose of this section is to introduce the setting of FGL, and the corresponding problem is formally formulated.</p>
   <sec id="s3_1">
    <title>3.1. Federated Graph Learning</title>
    <p>Federated graph learning is considered as a distributed training framework for graph learning models (e.g. GNNs, GCNNs), or as a framework for large-scale subgraphs collaborative training. It leverages to cope with the computational and storage restrictions by dealing with large-scale subgraphs in terms of local graph training policies.</p>
    <p>Let 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi mathvariant="script">
         U 
       </mi> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            U 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            U 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <mo>
           ⋯ 
         </mo> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            U 
          </mi> 
          <mi>
            N 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math> be the set of 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        N 
      </mi> 
     </math> users, and user 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          U 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> possesses a private local dataset, which is represented by a graph 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          G 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            E 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>. Actually, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <msubsup> 
          <mi>
            v 
          </mi> 
          <mi>
            i 
          </mi> 
          <mn>
            1 
          </mn> 
         </msubsup> 
         <mo>
           , 
         </mo> 
         <msubsup> 
          <mi>
            v 
          </mi> 
          <mi>
            i 
          </mi> 
          <mn>
            2 
          </mn> 
         </msubsup> 
         <mo>
           , 
         </mo> 
         <mo>
           ⋯ 
         </mo> 
         <mo>
           , 
         </mo> 
         <msubsup> 
          <mi>
            v 
          </mi> 
          <mi>
            i 
          </mi> 
          <mrow> 
           <mrow> 
            <mo>
              | 
            </mo> 
            <mrow> 
             <msub> 
              <mi>
                V 
              </mi> 
              <mi>
                i 
              </mi> 
             </msub> 
            </mrow> 
            <mo>
              | 
            </mo> 
           </mrow> 
          </mrow> 
         </msubsup> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math> is the set of samples of user 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          U 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>, while there is an inherent correlation between samples in 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>, and hence edges between samples represent such intrinsic connection. The edge set 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          E 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> indicates the topological characteristics of the data structure of user 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          U 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math>. Without loss of generality, we assume samples can be represented by 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mi>
          v 
        </mi> 
        <mi>
          i 
        </mi> 
        <mi>
          j 
        </mi> 
       </msubsup> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msubsup> 
          <mi>
            x 
          </mi> 
          <mi>
            i 
          </mi> 
          <mi>
            j 
          </mi> 
         </msubsup> 
         <mo>
           , 
         </mo> 
         <msubsup> 
          <mi>
            y 
          </mi> 
          <mi>
            i 
          </mi> 
          <mi>
            j 
          </mi> 
         </msubsup> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         i 
       </mi> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           1 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           2 
         </mn> 
         <mo>
           , 
         </mo> 
         <mo>
           ⋯ 
         </mo> 
         <mo>
           , 
         </mo> 
         <mi>
           N 
         </mi> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         j 
       </mi> 
       <mo>
         ∈ 
       </mo> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mn>
           1 
         </mn> 
         <mo>
           , 
         </mo> 
         <mn>
           2 
         </mn> 
         <mo>
           , 
         </mo> 
         <mo>
           ⋯ 
         </mo> 
         <mo>
           , 
         </mo> 
         <mrow> 
          <mo>
            | 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mi>
              i 
            </mi> 
           </msub> 
          </mrow> 
          <mo>
            | 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
      </mrow> 
     </math>, where 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
        <mi>
          j 
        </mi> 
       </msubsup> 
       <mo>
         ∈ 
       </mo> 
       <msup> 
        <mi>
          R 
        </mi> 
        <mi>
          d 
        </mi> 
       </msup> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mi>
          y 
        </mi> 
        <mi>
          i 
        </mi> 
        <mi>
          j 
        </mi> 
       </msubsup> 
       <mo>
         ∈ 
       </mo> 
       <mi>
         R 
       </mi> 
      </mrow> 
     </math>. In particular, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mi>
          v 
        </mi> 
        <mi>
          i 
        </mi> 
        <mi>
          j 
        </mi> 
       </msubsup> 
       <mo>
         = 
       </mo> 
       <msubsup> 
        <mi>
          x 
        </mi> 
        <mi>
          i 
        </mi> 
        <mi>
          j 
        </mi> 
       </msubsup> 
      </mrow> 
     </math> in an unsupervised learning setting.</p>
    <p>Prosaically speaking, in the FGL setting, each user 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          U 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> trains a local model parameter using a graph-structured dataset 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          G 
        </mi> 
        <mi>
          i 
        </mi> 
       </msub> 
      </mrow> 
     </math> and a training framework (GNN, GCNN, etc.), and the server obtains the global model parameter by aggregating the local model parameters submitted by users. FGL currently has a wide range of applications in various fields, such as biomedicine, finance, and industry.</p>
    <p>
     <xref ref-type="bibr" rid="scirp.137144-"></xref>Example 1: Ontology can be seen as a collection of concepts with semantic information. Based on the hierarchical relationship between concepts, ontology can be represented as a directed acyclic graph, where concepts are represented by vertices, and the inherent relationships between concepts are expressed by edges between vertices. Assume that the semantic information of each vertex in the ontology graph can be represented by d-dimensional vector, then an ontology function 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         f 
       </mi> 
       <mo>
         : 
       </mo> 
       <msup> 
        <mi>
          ℝ 
        </mi> 
        <mi>
          d 
        </mi> 
       </msup> 
       <mo>
         → 
       </mo> 
       <mi>
         ℝ 
       </mi> 
      </mrow> 
     </math> (i.e. 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         f 
       </mi> 
       <mo>
         : 
       </mo> 
       <mi>
         V 
       </mi> 
       <mo>
         → 
       </mo> 
       <mi>
         ℝ 
       </mi> 
      </mrow> 
     </math>, and here 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        V 
      </mi> 
     </math> is the vertex set of ontology graph) is a dimensionality reduction operator that aims to map each vertex to a real number, and similarity between two concepts is measured by the difference between their mapped real numbers, i.e. the similarity between 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        v 
      </mi> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <msup> 
       <mi>
         v 
       </mi> 
       <mo>
         ′ 
       </mo> 
      </msup> 
     </math> (represents two concepts) is determined by 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          | 
        </mo> 
        <mrow> 
         <mi>
           f 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mi>
            v 
          </mi> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           − 
         </mo> 
         <mi>
           f 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <msup> 
           <mi>
             v 
           </mi> 
           <mo>
             ′ 
           </mo> 
          </msup> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          | 
        </mo> 
       </mrow> 
      </mrow> 
     </math>.</p>
    <p>Suppose we have multiple ontology digraphs and aim to get an ontology function that enables us to map each vertex (in any ontology graph) to a real number. This is the standard problem of ontology mapping, and the similarity between two concepts (in the same ontology graph or two vertices from different ontologies) can be computed in a similar way. In this setting, all ontology digraphs are merged into one large ontology digraph, and each original ontology digraph becomes a connected component of the merged ontology digraph (see Gao and Chen <xref ref-type="bibr" rid="scirp.137144-32">
      [32]
     </xref> and Gao et al. <xref ref-type="bibr" rid="scirp.137144-33">
      [33]
     </xref> for more details about ontology similarity measuring and ontology mapping).</p>
    <p>Now, imagine that ontology digraphs are distributed among multiple users, each user training ontology mapping function using the local ontology dataset, and each user doesn’t expect to share their private ontology data. However, the server aims to obtain the global ontology mapping function, which facilitates to mapping each vertex (it can be from an ontology graph for any user) to a real number. In this case, the ontology mapping problem becomes a standard FGL problem.</p>
   </sec>
   <sec id="s3_2">
    <title>3.2. Distance between Graphs</title>
    <p>In this subsection, we mainly introduce the computational method for graph distance computing, which was raised by Chowdhury and Mémoli <xref ref-type="bibr" rid="scirp.137144-34">
      [34]
     </xref>.</p>
    <p>Suppose that 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> are two finite graphs such that 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          w 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         : 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         × 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         → 
       </mo> 
       <mi>
         ℝ 
       </mi> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          w 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         : 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         × 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         → 
       </mo> 
       <mi>
         ℝ 
       </mi> 
      </mrow> 
     </math> can be regarded as the weight function on two graphs respectively. It should be noted that we ignore the edge set of the graph here, because for 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         v 
       </mi> 
       <mo>
         , 
       </mo> 
       <msup> 
        <mi>
          v 
        </mi> 
        <mo>
          ′ 
        </mo> 
       </msup> 
       <mo>
         ∈ 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
      </mrow> 
     </math> with 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         v 
       </mi> 
       <msup> 
        <mi>
          v 
        </mi> 
        <mo>
          ′ 
        </mo> 
       </msup> 
       <mo>
         ∉ 
       </mo> 
       <mi>
         E 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>, then we specify 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          w 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mi>
           v 
         </mi> 
         <mo>
           , 
         </mo> 
         <msup> 
          <mi>
            v 
          </mi> 
          <mo>
            ′ 
          </mo> 
         </msup> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mn>
         0 
       </mn> 
      </mrow> 
     </math>. A correspondence between 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
      </mrow> 
     </math> is a relation 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         R 
       </mi> 
       <mo>
         ⊆ 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         × 
       </mo> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
      </mrow> 
     </math>. The collection of all correspondences between 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          V 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
      </mrow> 
     </math> are denoted by 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         ℛ 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>. The distortion of 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         R 
       </mi> 
       <mo>
         ∈ 
       </mo> 
       <mi>
         ℛ 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> is denoted by:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mtext>
         dis 
       </mtext> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          R 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <munder> 
        <mrow> 
         <mi>
           sup 
         </mi> 
        </mrow> 
        <mrow> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              v 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <mi>
              v 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           , 
         </mo> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <msup> 
             <mi>
               v 
             </mi> 
             <mo>
               ′ 
             </mo> 
            </msup> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <msup> 
             <mi>
               v 
             </mi> 
             <mo>
               ′ 
             </mo> 
            </msup> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           ∈ 
         </mo> 
         <mi>
           R 
         </mi> 
        </mrow> 
       </munder> 
       <mrow> 
        <mo>
          | 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              v 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <msup> 
             <mi>
               v 
             </mi> 
             <mo>
               ′ 
             </mo> 
            </msup> 
            <mn>
              1 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           − 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              v 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <msup> 
             <mi>
               v 
             </mi> 
             <mo>
               ′ 
             </mo> 
            </msup> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          | 
        </mo> 
       </mrow> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math> (1)</p>
    <p>The distance between 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> is denoted by:</p>
    <p>
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         d 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <mi>
              w 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           , 
         </mo> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <mi>
              w 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         = 
       </mo> 
       <mfrac> 
        <mn>
          1 
        </mn> 
        <mn>
          2 
        </mn> 
       </mfrac> 
       <munder> 
        <mrow> 
         <mtext>
           inf 
         </mtext> 
        </mrow> 
        <mrow> 
         <mi>
           R 
         </mi> 
         <mo>
           ∈ 
         </mo> 
         <mi>
           ℛ 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
       </munder> 
       <mtext>
         dis 
       </mtext> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mi>
          R 
        </mi> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math> (2)</p>
    <p>If we set 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          G 
        </mi> 
        <mn>
          1 
        </mn> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> and 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mi>
          G 
        </mi> 
        <mn>
          2 
        </mn> 
       </msub> 
       <mo>
         = 
       </mo> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            V 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            w 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>, then 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         d 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <mi>
              w 
            </mi> 
            <mn>
              1 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mo>
           , 
         </mo> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mi>
              V 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
           <mo>
             , 
           </mo> 
           <msub> 
            <mi>
              w 
            </mi> 
            <mn>
              2 
            </mn> 
           </msub> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math> can be abbreviated as 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mi>
         d 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <msub> 
          <mi>
            G 
          </mi> 
          <mn>
            1 
          </mn> 
         </msub> 
         <mo>
           , 
         </mo> 
         <msub> 
          <mi>
            G 
          </mi> 
          <mn>
            2 
          </mn> 
         </msub> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
      </mrow> 
     </math>.</p>
    <p>The above computing trick is also applicable to unweighted graphs. For any two vertices in the graph, the weight is set to 1 if they are adjacent, and the weight is set to zero if they are not adjacent.</p>
   </sec>
   <sec id="s3_3">
    <title>3.3. GraphSAGE</title>
    <p>GraphSAGE is a classic graph convolutional neural network algorithm, and its name SAGE is abbreviated as Sample and AggreGatE. It argued that convolution is a combination of sampling and information aggregation, thus its core idea is to divide convolution into two steps: sampling and aggregation. The aggregation function is independent of the input order, i.e. the vertices in the neighborhood do not need to be sorted. The specific steps can be divided into the following three steps:</p>
    <p>1) Get the domain vertex in terms of sampling.</p>
    <p>2) Aggregate the information of the neighboring vertices by means of aggregation function and obtain the embedding of the target vertex.</p>
    <p>3) Use the information aggregated on the vertex to predict the label of the vertex/graph.</p>
    <p>GraphSAGE uses uniform sampling to sample fixed neighborhood vertices, that is, for a certain vertex, uniform sampling is performed on its first-order neighboring vertices to construct a neighborhood with a fixed number of vertices. Furthermore, GraphSAGE has several kinds of aggregation approaches:</p>
    <p>
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mstyle mathvariant="bold" mathsize="normal"> 
         <mi>
           h 
         </mi> 
        </mstyle> 
        <mi>
          v 
        </mi> 
        <mi>
          k 
        </mi> 
       </msubsup> 
       <mo>
         ← 
       </mo> 
       <mi>
         σ 
       </mi> 
       <mrow> 
        <mo>
          ( 
        </mo> 
        <mrow> 
         <mstyle mathvariant="bold" mathsize="normal"> 
          <mi>
            W 
          </mi> 
         </mstyle> 
         <mo>
           ⋅ 
         </mo> 
         <mtext>
           MEAN 
         </mtext> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <mrow> 
            <mo>
              { 
            </mo> 
            <mrow> 
             <msubsup> 
              <mstyle mathvariant="bold" mathsize="normal"> 
               <mi>
                 h 
               </mi> 
              </mstyle> 
              <mi>
                v 
              </mi> 
              <mrow> 
               <mi>
                 k 
               </mi> 
               <mo>
                 − 
               </mo> 
               <mn>
                 1 
               </mn> 
              </mrow> 
             </msubsup> 
            </mrow> 
            <mo>
              } 
            </mo> 
           </mrow> 
           <mo>
             ∪ 
           </mo> 
           <mrow> 
            <mo>
              { 
            </mo> 
            <mrow> 
             <msubsup> 
              <mstyle mathvariant="bold" mathsize="normal"> 
               <mi>
                 h 
               </mi> 
              </mstyle> 
              <mi>
                u 
              </mi> 
              <mrow> 
               <mi>
                 k 
               </mi> 
               <mo>
                 − 
               </mo> 
               <mn>
                 1 
               </mn> 
              </mrow> 
             </msubsup> 
             <mo>
               , 
             </mo> 
             <mo>
               ∀ 
             </mo> 
             <mi>
               u 
             </mi> 
             <mo>
               ∈ 
             </mo> 
             <mi>
               N 
             </mi> 
             <mrow> 
              <mo>
                ( 
              </mo> 
              <mi>
                v 
              </mi> 
              <mo>
                ) 
              </mo> 
             </mrow> 
            </mrow> 
            <mo>
              } 
            </mo> 
           </mrow> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          ) 
        </mo> 
       </mrow> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math></p>
    <p>
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mrow> 
         <mtext>
           AGGREGATE 
         </mtext> 
        </mrow> 
        <mi>
          k 
        </mi> 
        <mrow> 
         <mtext>
           pool 
         </mtext> 
        </mrow> 
       </msubsup> 
       <mo>
         = 
       </mo> 
       <mtext>
         max 
       </mtext> 
       <mrow> 
        <mo>
          { 
        </mo> 
        <mrow> 
         <mi>
           σ 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mrow> 
           <msub> 
            <mstyle mathvariant="bold" mathsize="normal"> 
             <mi>
               W 
             </mi> 
            </mstyle> 
            <mrow> 
             <mtext>
               pool 
             </mtext> 
            </mrow> 
           </msub> 
           <msubsup> 
            <mstyle mathvariant="bold" mathsize="normal"> 
             <mi>
               h 
             </mi> 
            </mstyle> 
            <mrow> 
             <msub> 
              <mi>
                u 
              </mi> 
              <mi>
                i 
              </mi> 
             </msub> 
            </mrow> 
            <mi>
              k 
            </mi> 
           </msubsup> 
           <mo>
             + 
           </mo> 
           <mstyle mathvariant="bold" mathsize="normal"> 
            <mi>
              b 
            </mi> 
           </mstyle> 
          </mrow> 
          <mo>
            ) 
          </mo> 
         </mrow> 
         <mtext>
             
         </mtext> 
         <mo>
           ∀ 
         </mo> 
         <msub> 
          <mi>
            u 
          </mi> 
          <mi>
            i 
          </mi> 
         </msub> 
         <mo>
           ∈ 
         </mo> 
         <mi>
           N 
         </mi> 
         <mrow> 
          <mo>
            ( 
          </mo> 
          <mi>
            v 
          </mi> 
          <mo>
            ) 
          </mo> 
         </mrow> 
        </mrow> 
        <mo>
          } 
        </mo> 
       </mrow> 
       <mo>
         . 
       </mo> 
      </mrow> 
     </math></p>
    <p>In the above formulations, 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        k 
      </mi> 
     </math> represents the number of depth or layers of the neighborhood; the weight matrix 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mstyle mathvariant="bold" mathsize="normal"> 
       <mi>
         W 
       </mi> 
      </mstyle> 
     </math> (or presented by 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msup> 
        <mi>
          W 
        </mi> 
        <mi>
          k 
        </mi> 
       </msup> 
      </mrow> 
     </math>) denotes the convolution kernel parameters of the k-th layer, which is learnable; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        σ 
      </mi> 
     </math> is the nonlinear parameters, which are usually taken as ReLU function, and sometimes sigmoid function; 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msub> 
        <mrow> 
         <mtext>
           AGGREGATE 
         </mtext> 
        </mrow> 
        <mi>
          k 
        </mi> 
       </msub> 
      </mrow> 
     </math> represents the aggregation function selected for the k-th layer; 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mi>
          h 
        </mi> 
        <mi>
          v 
        </mi> 
        <mi>
          k 
        </mi> 
       </msubsup> 
      </mrow> 
     </math> represents the signal or feature of vertex 
     <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>
        v 
      </mi> 
     </math> on the k-th layer; the information of 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <msubsup> 
        <mstyle mathvariant="bold" mathsize="normal"> 
         <mi>
           h 
         </mi> 
        </mstyle> 
        <mi>
          v 
        </mi> 
        <mrow> 
         <mi>
           k 
         </mi> 
         <mo>
           − 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
       </msubsup> 
       <mo>
         } 
       </mo> 
      </mrow> 
     </math> and 
     <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> 
       <mo>
         { 
       </mo> 
       <msubsup> 
        <mstyle mathvariant="bold" mathsize="normal"> 
         <mi>
           h 
         </mi> 
        </mstyle> 
        <mi>
          u 
        </mi> 
        <mrow> 
         <mi>
           k 
         </mi> 
         <mo>
           − 
         </mo> 
         <mn>
           1 
         </mn> 
        </mrow> 
       </msubsup> 
      </mrow> 
     </math> is combined using CONCAT.</p>
    <p>Note: 1) The sampling domain obtained by GraphSAGE is different in each iteration, which is the biggest difference from GNN. GNN obtains a fixed domain for each vertex through random walks and does not change, but the vertex domain of GraphSAGE is obtained through sampling, and sampling is required once in each iteration, so the domain of each vertex changes. 2) The second type of LSTM aggregation is related to the input order, but a special treatment trick is applied here.</p>
    <p>The differences between GraphSAGE and GNN can be summarized by the following three points:</p>
    <p>1) In GNN (and traditional CNN), the order of neighborhood vertices needs to be determined. However, in GraphSAGE, the vertices in the graph convolution neighborhood do not need to be sorted (the aggregation function is independent of the vertex order).</p>
    <p>2) In GNN, each vertex in the neighborhood has different convolution kernel parameters. In GraphSAGE, all vertices in the neighborhood share the same convolution kernel parameters.</p>
    <p>3) In terms of neighborhood selection method, GNN constructs the neighborhood by the probability size of random walks, and GraphSAGE constructs the neighborhood by uniform sampling.</p>
    <p>More studies and applications on GraphSAGE can be referred to Zhang et al. <xref ref-type="bibr" rid="scirp.137144-35">
      [35]
     </xref>, Mirthika et al. <xref ref-type="bibr" rid="scirp.137144-36">
      [36]
     </xref>, Liu et al. <xref ref-type="bibr" rid="scirp.137144-37">
      [37]
     </xref>, El Alaoui et al. <xref ref-type="bibr" rid="scirp.137144-38">
      [38]
     </xref> and Seon et al. <xref ref-type="bibr" rid="scirp.137144-39">
      [39]
     </xref>.</p>
   </sec>
  </sec><sec id="s4">
   <title>4. Proposed Algorithm Description</title>
   <p>The procedure of our main algorithm is presented in Algorithm 1.</p>
   <p>In this paper, we propose a new algorithm for FGL, all users are divided into several clusters according to graph distance, and users in the same cluster aggregate local model parameters, thereby achieving the purpose of knowledge interaction among users with similar graph structures. In practical application, we found that the proposed algorithm has some flaws. One salient issue lies in that the algorithm is only sensitive to graph structure and insensitive to labels and data. We noticed that even two graphs with the same structure have significant differences in their data and different categories of labels. It is difficult to achieve mutual fusion for graph data with significant differences in data categories, even though their graph structures may be very similar.</p>
  </sec>
 </body><back>
  <ref-list>
   <title>References</title>
   <ref id="scirp.137144-ref1">
    <label>1</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chen, Y., Liang, L. and Gao, W. (2023) Non-Trust Detection of Decentralized Federated Learning Based on Historical Gradient. Engineering Applications of Artificial Intelligence, 120, Article ID: 105888. &gt;https://doi.org/10.1016/j.engappai.2023.105888
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref2">
    <label>2</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chen, Y., Liang, L. and Gao, W. (2023) DFedSN: Decentralized Federated Learning Based on Heterogeneous Data in Social Networks. World Wide Web, 26, 2545-2568. &gt;https://doi.org/10.1007/s11280-023-01152-4
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref3">
    <label>3</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Korba, A.A., Boualouache, A. and Ghamri-Doudane, Y. (2024) Zero-X: A Blockchain-Enabled Open-Set Federated Learning Framework for Zero-Day Attack Detection in IoV. IEEE Transactions on Vehicular Technology, 73, 12399-12414. &gt;https://doi.org/10.1109/tvt.2024.3385916
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref4">
    <label>4</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Bouzabia, H., Meftah, A. and Kaddoum, G. (2024) Federated Learning-Enabled Smart Jammer Detection in Terrestrial and Non-Terrestrial Heterogeneous Joint Sensing and Communication Networks. IEEE Communications Letters, 28, 2026-2030. &gt;https://doi.org/10.1109/lcomm.2024.3428973
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref5">
    <label>5</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Venkatesan, C., Jeevanantham, S. and Rebekka, B. (2024) Energy-Aware Federated Learning for AQI Pollutants Forecasting in Edge Networks. IEEE Transactions on Network Science and Engineering, 11, 4146-4157. &gt;https://doi.org/10.1109/tnse.2024.3398795
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref6">
    <label>6</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Selvakanmani, S., Devi, G.D., Rekha, V. and Jeyalakshmi, J. (2024) Privacy-Preserving Breast Cancer Classification: A Federated Transfer Learning Approach. Journal of Imaging Informatics in Medicine, 37, 1488-1504. &gt;https://doi.org/10.1007/s10278-024-01035-8
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref7">
    <label>7</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Raja, L., Sakthi, G., Vimalnath, S. and Subramaniam, G. (2024) An Improved Federated Transfer Learning Model for Intrusion Detection in Edge Computing Empowered Wireless Sensor Networks. Concurrency and Computation: Practice and Experience, 36, e8259. &gt;https://doi.org/10.1002/cpe.8259
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref8">
    <label>8</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Singh, G. and Bedi, J. (2024) A Federated and Transfer Learning Based Approach for Households Load Forecasting. Knowledge-Based Systems, 299, Article ID: 111967. &gt;https://doi.org/10.1016/j.knosys.2024.111967
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref9">
    <label>9</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Qian, Q., Zhang, B., Li, C., Mao, Y. and Qin, Y. (2025) Federated Transfer Learning for Machinery Fault Diagnosis: A Comprehensive Review of Technique and Application. Mechanical Systems and Signal Processing, 223, Article ID: 111837. &gt;https://doi.org/10.1016/j.ymssp.2024.111837
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref10">
    <label>10</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xiong, J., Zhai, X., Zhang, Z. and Gao, F. (2023) Typos Correction in Overseas Chinese Learning Based on Chinese Character Semantic Knowledge Graph. Journal of Data Analysis and Information Processing, 11, 200-216. &gt;https://doi.org/10.4236/jdaip.2023.112011
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref11">
    <label>11</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhang, B. and Si, H. (2023) Learning Path Planning Based on Knowledge Graph on MOOC Platform. Open Journal of Social Sciences, 11, 457-465. &gt;https://doi.org/10.4236/jss.2023.113033
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref12">
    <label>12</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Yu, Y. (2022) Research on the Application of Knowledge Graph in Constructing Ecological Chain of Supply of Lifelong Learning Resource Base. Open Access Library Journal, 9, e9255. &gt;https://doi.org/10.4236/oalib.1109255
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref13">
    <label>13</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xie, Z., Huang, Y., Yu, D., Parizi, R.M., Zheng, Y. and Pang, J. (2023) FedEE: A Federated Graph Learning Solution for Extended Enterprise Collaboration. IEEE Transactions on Industrial Informatics, 19, 8061-8071. &gt;https://doi.org/10.1109/tii.2022.3216238
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref14">
    <label>14</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Peng, L., Wang, N., Dvornek, N., Zhu, X. and Li, X. (2023) Fedni: Federated Graph Learning with Network Inpainting for Population-Based Disease Prediction. IEEE Transactions on Medical Imaging, 42, 2032-2043. &gt;https://doi.org/10.1109/tmi.2022.3188728
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref15">
    <label>15</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Tang, T., Han, Z., Cai, Z., Yu, S., Zhou, X., Oseni, T., et al. (2024) Personalized Federated Graph Learning on Non-IID Electronic Health Records. IEEE Transactions on Neural Networks and Learning Systems, 35, 11843-11856. &gt;https://doi.org/10.1109/tnnls.2024.3370297
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref16">
    <label>16</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chen, F., Li, P., Miyazaki, T. and Wu, C. (2022) Fedgraph: Federated Graph Learning with Intelligent Sampling. IEEE Transactions on Parallel and Distributed Systems, 33, 1775-1786. &gt;https://doi.org/10.1109/tpds.2021.3125565
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref17">
    <label>17</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Wu, Z., Wu, X. and Long, Y. (2022) Multi-Level Federated Graph Learning and Self-Attention Based Personalized Wi-Fi Indoor Fingerprint Localization. IEEE Communications Letters, 26, 1794-1798. &gt;https://doi.org/10.1109/lcomm.2022.3159504
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref18">
    <label>18</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zeng, X., Zhou, T., Bao, Z., Zhao, H., Chen, L., Wang, X., et al. (2023) Feature-Contrastive Graph Federated Learning: Responsible AI in Graph Information Analysis. IEEE Transactions on Computational Social Systems, 10, 2938-2948. &gt;https://doi.org/10.1109/tcss.2022.3230987
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref19">
    <label>19</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chang, T., Li, L., Wu, M., Yu, W., Wang, X. and Xu, C. (2023) Graphcs: Graph-Based Client Selection for Heterogeneity in Federated Learning. Journal of Parallel and Distributed Computing, 177, 131-143. &gt;https://doi.org/10.1016/j.jpdc.2023.03.003
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref20">
    <label>20</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Liu, T., Li, P., Gu, Y. and Su, Z. (2023) S-Glint: Secure Federated Graph Learning with Traffic Throttling and Flow Scheduling. IEEE Transactions on Green Communications and Networking, 7, 894-903. &gt;https://doi.org/10.1109/tgcn.2022.3187149
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref21">
    <label>21</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhang, J., Wang, Q., Wang, X., Qiao, L. and Liu, M. (2024) Preserving Specificity in Federated Graph Learning for fMRI-Based Neurological Disorder Identification. Neural Networks, 169, 584-596. &gt;https://doi.org/10.1016/j.neunet.2023.11.004
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref22">
    <label>22</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhang, T., Mai, C., Chang, Y., Chen, C., Shu, L. and Zheng, Z. (2023) FedEgo: Privacy-Preserving Personalized Federated Graph Learning with Ego-Graphs. ACM Transactions on Knowledge Discovery from Data, 18, 1-27. &gt;https://doi.org/10.1145/3624017
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref23">
    <label>23</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Li, X., Wu, Z., Zhang, W., Zhu, Y., Li, R. and Wang, G. (2023) FedGTA: Topology-Aware Averaging for Federated Graph Learning. Proceedings of the VLDB Endowment, 17, 41-50. &gt;https://doi.org/10.14778/3617838.3617842
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref24">
    <label>24</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chen, J., Ma, M., Ma, H., Zheng, H. and Zhang, J. (2024) An Empirical Evaluation of the Data Leakage in Federated Graph Learning. IEEE Transactions on Network Science and Engineering, 11, 1605-1618. &gt;https://doi.org/10.1109/tnse.2023.3326359
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref25">
    <label>25</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Fu, W., Wang, H., Gao, C., Liu, G., Li, Y. and Jiang, T. (2024) Privacy-Preserving Individual-Level COVID-19 Infection Prediction via Federated Graph Learning. ACM Transactions on Information Systems, 42, 1-29. &gt;https://doi.org/10.1145/3633202
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref26">
    <label>26</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Kong, X., Yuan, H., Shen, G., Zhou, H., Liu, W. and Yang, Y. (2024) Mitigating Data Imbalance and Generating Better Prototypes in Heterogeneous Federated Graph Learning. Knowledge-Based Systems, 296, Article ID: 111876. &gt;https://doi.org/10.1016/j.knosys.2024.111876
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref27">
    <label>27</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhong, L., Chen, Z., Cheng, H. and Li, J. (2024) Lightweight Federated Graph Learning for Accelerating Classification Inference in UAV-Assisted MEC Systems. IEEE Internet of Things Journal, 11, 21180-21190. &gt;https://doi.org/10.1109/jiot.2024.3365675
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref28">
    <label>28</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xie, B., Hu, C., Huang, H., Yu, J. and Xia, H. (2024) DCI-PFGL: Decentralized Cross-Institutional Personalized Federated Graph Learning for IoT Service Recommendation. IEEE Internet of Things Journal, 11, 13837-13850. &gt;https://doi.org/10.1109/jiot.2023.3340880
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref29">
    <label>29</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Abdel-Basset, M., Hawash, H., Sallam, K.M., Elgendi, I. and Munasinghe, K. (2023) Digital Twin for Optimization of Slicing-Enabled Communication Networks: A Federated Graph Learning Approach. IEEE Communications Magazine, 61, 100-106. &gt;https://doi.org/10.1109/mcom.003.2200609
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref30">
    <label>30</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Tian, C., Xie, Y., Chen, X., Li, Y. and Zhao, X. (2024) Privacy-Preserving Cross-Domain Recommendation with Federated Graph Learning. ACM Transactions on Information Systems, 42, 1-29. &gt;https://doi.org/10.1145/3653448
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref31">
    <label>31</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xing, Y., Hu, L., Du, X., Shen, Z., Hu, J. and Wang, F. (2024) A Privacy-Preserving Federated Graph Learning Framework for Threat Detection in IoT Trigger-Action Programming. Expert Systems with Applications, 255, Article ID: 124724. &gt;https://doi.org/10.1016/j.eswa.2024.124724
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref32">
    <label>32</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Gao, W. and Chen, Y. (2020) Approximation Analysis of Ontology Learning Algorithm in Linear Combination Setting. Journal of Cloud Computing, 9, Article No. 29. &gt;https://doi.org/10.1186/s13677-020-00173-y
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref33">
    <label>33</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Gao, W., Zhang, Y., Guirao, J.L.G. and Chen, Y. (2018) A Discrete Dynamics Approach to Sparse Calculation and Applied in Ontology Science. Journal of Difference Equations and Applications, 25, 1239-1254. &gt;https://doi.org/10.1080/10236198.2018.1551383
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref34">
    <label>34</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Chowdhury, S. and Mémoli, F. (2022) Distances and Isomorphism between Networks: Stability and Convergence of Network Invariants. Journal of Applied and Computational Topology, 7, 243-361. &gt;https://doi.org/10.1007/s41468-022-00105-6
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref35">
    <label>35</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhang, T., Shan, H. and Little, M.A. (2022) Causal GraphSAGE: A Robust Graph Method for Classification Based on Causal Sampling. Pattern Recognition, 128, Article ID: 108696. &gt;https://doi.org/10.1016/j.patcog.2022.108696
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref36">
    <label>36</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Mirthika, G. L. S. and Sivakumar, B. and Hemalatha, S. (2024) Data-Driven Drug Treatment: Enhancing Clinical Decision-Making with SalpPSO-Optimized GraphSAGE. Computer Methods in Biomechanics and Biomedical Engineering, 1-23.
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref37">
    <label>37</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Liu, J., Ong, G.P. and Chen, X. (2022) GraphSAGE-Based Traffic Speed Forecasting for Segment Network with Sparse Data. IEEE Transactions on Intelligent Transportation Systems, 23, 1755-1766. &gt;https://doi.org/10.1109/tits.2020.3026025
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref38">
    <label>38</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     El Alaoui, D., Riffi, J., Sabri, A., Aghoutane, B., Yahyaouy, A. and Tairi, H. (2022) Deep GraphSAGE-Based Recommendation System: Jumping Knowledge Connections with Ordinal Aggregation Network. Neural Computing and Applications, 34, 11679-11690. &gt;https://doi.org/10.1007/s00521-022-07059-x
    </mixed-citation>
   </ref>
   <ref id="scirp.137144-ref39">
    <label>39</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Seon, J., Lee, S., Sun, Y.G., Kim, S.H., Kim, D.I. and Kim, J.Y. (2023) GraphSAGE with Contrastive Encoder for Efficient Fault Diagnosis in Industrial IoT Systems. ICT Express, 9, 1226-1232. &gt;https://doi.org/10.1016/j.icte.2023.07.012
    </mixed-citation>
   </ref>
  </ref-list>
 </back>
</article>