Joint Learning Neuronal Skeleton and Brain Circuit Topology with Permutation Invariant Encoders for Neuron Classification

Minghui Liao1, 2, 3, Guojia Wan1, 2, 3 , Bo Du1, 2, 3 * corresponding author
Abstract

Determining the types of neurons within a nervous system plays a significant role in the analysis of brain connectomics and the investigation of neurological diseases. However, the efficiency of utilizing anatomical, physiological, or molecular characteristics of neurons is relatively low and costly. With the advancements in electron microscopy imaging and analysis techniques for brain tissue, we are able to obtain whole-brain connectome consisting neuronal high-resolution morphology and connectivity information. However, few models are built based on such data for automated neuron classification. In this paper, we propose NeuNet, a framework that combines morphological information of neurons obtained from skeleton and topological information between neurons obtained from neural circuit. Specifically, NeuNet consists of three components, namely Skeleton Encoder, Connectome Encoder, and Readout Layer. Skeleton Encoder integrates the local information of neurons in a bottom-up manner, with a one-dimensional convolution in neural skeleton’s point data; Connectome Encoder uses a graph neural network to capture the topological information of neural circuit; finally, Readout Layer fuses the above two information and outputs classification results. We reprocess and release two new datasets for neuron classification task from volume electron microscopy(VEM) images of human brain cortex and Drosophila brain. Experiments on these two datasets demonstrated the effectiveness of our model with accuracy of 0.9169 and 0.9363, respectively. Code and data are available at: https://github.com/WHUminghui/NeuNet.

Introduction

Identifying various neuron types in a nervous system is a fundamental task in numerous neuroscience studies. Assigning neuron type is a necessary step to understand the anatomical and functional properties of a brain circuit (Armañanzas and Ascoli 2015). By identifying and classifying various types of neurons, researchers can determine which neurons are most susceptible to causing some neurodegenerative diseases, such as Alzheimer’s(Buckner et al. 2005) and Amyotrophic Lateral Sclerosis (ALS). However, due to the vast number and minuscule size of neurons, anatomical-based neuron classification methods are exceedingly time-consuming and labor-intensive.

Refer to caption
Figure 1: Neuron connectivity (orange) and morphology (blue) in a Drosophila (fruit fly) brain. For each neuron, its connectivity can be represented by a graph. Its morphology can be described by a skeleton that is a set of 3D points. Both of them can reveal neuron‘s functions and roles.
Refer to caption
Figure 2: Architecture of proposed NeuNet. On the one hand, the skeleton data of neurons are input into Skeleton Encoder, and Sampling operation samples the points in the skeleton’s point set using FPS. Grou** operation divides the attached points into groups with the sampled points as the center, and ConvBlock extracts the features on these group’s points and fuses them using max pooling to obtain the group’s global features. The above process is repeated until the skeleton’s global features are obtained. On the other hand, GNN-based Connectome Encoder mines the topological features of the neural circuit through the information interaction between nodes and neighboring nodes. Finally, Readout Layer fuses the above two features and outputs the classification results with an MLP.

Recently, volume electron microscopy (VEM) imaging and analysis techniques (Januszewski et al. 2018a) contribute the availability of whole-brain three-dimensional(3D) reconstruction with cellular resolution, providing a new opportunity to understand the neuronal properties and functions. Specifically, the 3D images of brain tissue generated by VEM contain a wealth of information about neuron size, location, morphology, and connectivity. We show a neuron in Figure 1 from Drosophila connectome (Scheffer et al. 2020). We can observe that the morphology of the complex nerve fibers (including axons and dendrites) that spans multiple brain regions. The red centerline within the fiber voxel is referred as the skeleton of the neuron, which can be depicted as a set filling with 3D points (in XYZ coordinates), P={pq|q=1,,m}𝑃conditional-setsubscript𝑝𝑞𝑞1𝑚P=\{p_{q}|q=1,...,m\}italic_P = { italic_p start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT | italic_q = 1 , … , italic_m }. A large number of such neurons are interconnected, forming the connectome of Drosophila brain (Scheffer et al. 2020). The connectome can be depicted by a complex network, which is formalized as a graph 𝒢=(𝒱,)𝒢𝒱\mathcal{G=(V,E)}caligraphic_G = ( caligraphic_V , caligraphic_E ). In this network, nodes represent the neurons and edges represent the synaptic connections between them. Apparently, both of these two data exhibit permutation invariance. That is, permuting or rearranging the order of the elements in these data does not change the results or the information conveyed by the data.

The morphology, or shape, of neuron can provide significant insights into its function within the nervous system. Traditional methods based on feature statistics (Gillette and Ascoli 2015; Kanari et al. 2019; Zhu et al. 2022) usually conduct analysis on the optical data. However, the resolution of neuronal morphological data obtained from optical microscopes is relatively low, which cannot provide neuronal connectivity information. Importantly, the connectivity pattern (Fulcher and Fornito 2016) of neuron can also reveal the properties about its function.

To date, jointly learning the morphology and connectivity remains unexplored. In this paper, we propose a unified, efficient framework called NeuNet, a neuron classification framework that incorporates morphological information of neuron skeleton and topological information of connectome. NeuNet consists of a skeleton-level feature extractor and a connectome-level feature extractor, which well respect permutation invariance of points and topology connectivity in the input. After extracting the morphological features from neuron skeleton data and the topological information from the connectome, a fusion module combines the above two features to finally obtain the representation of the neuron. The main contributions of NeuNet are as follows:

  • NeuNet can learn neuronal representations of entire brain circuit in a high-throughput and faster manner and use them for downstream tasks.

  • Our model incorporates the skeleton’s morphological information and the connectome’s topological information of neurons, both of which are in a permutation-invariant manner, and it is in line with the actual characteristics of neuron VEM data.

  • We reprocessed and released two 3D brain reconstruction data. We introduced baseline models from other tasks, and upon comparative evaluation, our model manifested superior classification performance, successfully capturing the latent feature representations of neurons.

Related Work

Neuron classification

Neurons exhibit diverse properties in terms of connectivity, morphology, and functionality, and the classification of neurons is the cornerstone for exploring the structure and functional mechanisms of brain circuit(Wagner, Regev, and Yosef 2016). A series of important advances in single‑cell genome‑wide molecular profiling techniques that have developed over the past decade are benefiting cell‑type classification effort (Wagner, Regev, and Yosef 2016; Resendez et al. 2016). Since the functions of neuron are closely related to its morphology, light-microscopy was used to collect whole‑brain catalogs of morphologies (Jenett et al. 2012a; Chiang et al. 2011; Shih et al. 2015; Economo et al. 2016; Gong et al. 2013). Several methods have been proposed for comparing and classifying neurons from light-microscopy (Markram et al. 2015; Costa et al. 2016a; Peng et al. 2015; Sümbül et al. 2014).

With the development of electron microscope imaging speed (Eberle et al. 2015), electron microscopy can provide higher resolution and more informative photographs of brain tissue sections. Taking advantage of these innovations, the brain circuit reconstruction have been made to map the connectivity in Drosophila optic and antennal lobes (Berck et al. 2016; Takemura et al. 2013), the mouse retina, thalamus, and cortex (Greene, Kim, and Seung 2016; Lee et al. 2016; Morgan et al. 2016). However, there are relatively few works (Costa et al. 2016b; Schubert et al. 2019; Zhu et al. 2022) that use neural networks for feature extraction and classification of the above-described neuron data, and none of which take into account the topological information of brain circuit.

Permutation Invariance

The solution of many tasks requires the model to be invariant to some transformations of the data, such as flip**, rotating, and scaling of images, etc., and the well-known convolutional neural network (CNN) (LeCun et al. 1989; Krizhevsky, Sutskever, and Hinton 2012) satisfies this invariance. However, graph data and neuron-level point set data differ from images in that the former is unordered, requiring the model to be invariant to the feed order. Recent approaches have emerged to address the problem of permutation invariance. Graph neural networks (GNNs) are the main methods with permutation invariance on graph data. (Welling and Kipf 2016)proposed graph convolution network (GCN) which motivate the choice of convolutional architecture via a localized first-order approximation of spectral graph convolutions. On the other hand, spatial domain-based approachs (Hamilton, Ying, and Leskovec 2017; Veličković et al. 2018; Xu et al. 2019b) are proposed to update the features of the central node by continuously aggregating the features of disordered neighboring nodes. This make GNNs become mainstream approachs to address feature extraction for graph structure data. Based on the message passing paradigm, an increasing number of GNN models (Hamilton, Ying, and Leskovec 2017; Gasteiger, Bojchevski, and Günnemann 2018; Wu et al. 2019) are proposed to applied graph data with varying properties. Additionally, for the unconnected and unordered point-set dataset, certain methods avoid perturbation of the data point feed order by pooling operations (Wang et al. 2019; Qi et al. 2017a).

Methodology

Notations and Problem Definition

Neuron data.

We designed NeuNet to integrate morphological features about the skeleton and topological features about connectome. A skeleton-level neuron data is represented as a set of points P={p|p=(x,y,z)}𝑃conditional-set𝑝𝑝𝑥𝑦𝑧P=\{p|p=(x,y,z)\}italic_P = { italic_p | italic_p = ( italic_x , italic_y , italic_z ) }, where each point p𝑝pitalic_p is a corrdinate vector.

For modeling connectivity, we regard each neuron as a node. Let synapse connections from pre-synaptic cells to post-synaptic cells be represented as edges, where the number of synapses between two neurons is as connection strength. We then constructed a graph to represent the connectome. We denote the graph with n𝑛nitalic_n nodes (neurons) by 𝒢=(𝒱,)𝒢𝒱\mathcal{G=(V,E)}caligraphic_G = ( caligraphic_V , caligraphic_E ), where 𝒱𝒱\mathcal{V}caligraphic_V represents its node set and \mathcal{E}caligraphic_E represents the set of edges. The adjacency matrix of 𝒢𝒢\mathcal{G}caligraphic_G is denoted by 𝐀n×n𝐀superscript𝑛𝑛\mathbf{A}\in\mathbb{R}^{n\times{n}}bold_A ∈ blackboard_R start_POSTSUPERSCRIPT italic_n × italic_n end_POSTSUPERSCRIPT with its (i,j)𝑖𝑗(i,j)( italic_i , italic_j )-th entry A[i,j]=e𝐴𝑖𝑗𝑒A[i,j]=eitalic_A [ italic_i , italic_j ] = italic_e indicating the strength of the connection between node i𝑖iitalic_i and node j𝑗jitalic_j, and e𝑒eitalic_e is numerically equal to the number of synapses connected between neuron i𝑖iitalic_i and neuron j𝑗jitalic_j.

Permutation Invariance.

Our input include a point set and a graph. The point set is inherently unordered. That is, permuting the input order of points within this point set does not affect the skeleton morphology of the neuron. As for the input graph, it is a 2-tuple (𝒱,)𝒱\mathcal{(V,E)}( caligraphic_V , caligraphic_E ) that consists of two sets: a node set 𝒱𝒱\mathcal{V}caligraphic_V and an edge set \mathcal{E}caligraphic_E. Likewise, it should follow permutation invariance as well.

Due to its permutation invariance, any learners working with such data should be invariant under transformations. For example, changing the input order of points, nodes and edges should not modify its neuron classification results.

Neuron Classification.

In the task of neuron classification, we are given skeleton-level point set P𝑃Pitalic_P, the connectome level graph 𝒢=(𝒱,)𝒢𝒱\mathcal{G=(V,E)}caligraphic_G = ( caligraphic_V , caligraphic_E ), and the neuron labels denoted by one-hot vector Y𝑌Yitalic_Y. Each labeled node i𝒱𝑖𝒱i\in\mathcal{V}italic_i ∈ caligraphic_V is associated with a one-hot vector yi{0,1}Csubscript𝑦𝑖superscript01𝐶y_{i}\subset\{0,1\}^{C}italic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⊂ { 0 , 1 } start_POSTSUPERSCRIPT italic_C end_POSTSUPERSCRIPT which encodes its ground-truth class, where C𝐶Citalic_C is the number of predefined classes. We needed to learn a function fθ(i|(𝒢,P))subscript𝑓𝜃conditional𝑖𝒢𝑃f_{\theta}(i|(\mathcal{G},P))italic_f start_POSTSUBSCRIPT italic_θ end_POSTSUBSCRIPT ( italic_i | ( caligraphic_G , italic_P ) ) parameterized by θ𝜃\thetaitalic_θ which can predict the correct class for a given unlabeled node i𝑖iitalic_i.

Network Architecture.

NeuNet consists of three sub-modules (Figure 2): Skeleton Encoder, Connectome Encoder, and Readout Layer. Skeleton Encoder is used to extract the morphological information of neuron; Connectome Encoder is used to extract the topological information of the neural circuit; Readout Layer fuses the skeleton-level and connectome-level representation, and output a 1×C1𝐶1\times C1 × italic_C classification score vector with a Multilayer Perceptron(MLP).

Skeleton Encoder

Neurons possess intricate branching patterns, encompassing fundamental local structures such as axons, dendrites, and curvatures. These complex branching morphologies often provide insights into the classification and functional roles of neuron (Udvary et al. 2022). However, inferring the functions and classifications of neurons directly from their 3D structures remains a challenging task. Therefore, there arises a necessity to develop morphology feature extractor for neuron morphology, which is able to obtain global representation of the neuron skeleton concerning its local structure.

Considering that neuron skeleton data is an unordered point set, we designed Skeleton Encoder in bottom-up manner consisting of multiple SampleBlocks, which can extract consistent feature representations from varying input orders of skeleton data pertaining to the same neuron.The SampleBlock abstraction level is made of three key operations (Figure 2): Sampling, Grou**, and Conv1D.

Sampling.

The key component of CNN is the convolution kernel, which extracts local features of an image by performing Hadamard product with the certain region (kernel size) of pixels, and acquires a larger range of semantic features by multiple convolutional operations. Drawing inspiration from this concept, we aim to construct local feature extractor working on different regions of a neuron skeleton. Initially, it is imperative to determine the regions with which this feature extractor is intended to interact. Given input points {p1,p2,,pm}subscript𝑝1subscript𝑝2subscript𝑝𝑚\{p_{1},p_{2},...,p_{m}\}{ italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT }, we employ iterative farthest point sampling(FPS, shown in Appendix.A) (Li et al. 2022) to select a subset of points {pi1,pi2,,pis}subscript𝑝subscript𝑖1subscript𝑝subscript𝑖2subscript𝑝subscript𝑖𝑠\{p_{i_{1}},p_{i_{2}},...,p_{i_{s}}\}{ italic_p start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT end_POSTSUBSCRIPT } as the centroids of these regions. This selection ensures that the sampled points are the farthest apart(in European distance in this study). In contrast to random sampling, FPS can offers a wider coverage, thereby establishing a more comprehensive receptive field among the given points. This facilitates the acquisition of global morphological information from the input points.

Grou**.

The subsequent task involves delineating the respective extent of these regions around the central points. For a given set of points P={p1,p2,,pm}𝑃subscript𝑝1subscript𝑝2subscript𝑝𝑚P=\{p_{1},p_{2},...,p_{m}\}italic_P = { italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } and points S={pi1,pi2,,pis}𝑆subscript𝑝subscript𝑖1subscript𝑝subscript𝑖2subscript𝑝subscript𝑖𝑠S=\{p_{i_{1}},p_{i_{2}},...,p_{i_{s}}\}italic_S = { italic_p start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT end_POSTSUBSCRIPT } selected by Sampling, we take S𝑆Sitalic_S as the centroids and find k𝑘kitalic_k points in P𝑃Pitalic_P that are most adjacent to the centroid respectively to form s𝑠sitalic_s group. Considering that the density and distribution of points in P𝑃Pitalic_P are not uniform, we use ball query(Qi et al. 2017b) to find k𝑘kitalic_k points that are within a radius of the centroid point to guarantee a fixed regional scale. The input to the Grou** operator is a point set of size m𝑚mitalic_m, and the output are groups of point sets of size sk𝑠𝑘s\cdot kitalic_s ⋅ italic_k, where each group corresponds to a local region and k𝑘kitalic_k is the number of points in the neighborhood of centroid points.

Conv1D.

For the points of the groups generated by Grou** operation, they retain an inherent unordered nature. In order to extract consistent features from groups’ points irrespective of the order of input points, we employ one-dimensional convolution for capturing local morphology features within the groups. The input skeleton feature 𝐗inm×dinsubscript𝐗insuperscript𝑚subscript𝑑in\mathbf{X}_{\rm in}\in\mathbb{R}^{m\times d_{\mathrm{in}}}bold_X start_POSTSUBSCRIPT roman_in end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_m × italic_d start_POSTSUBSCRIPT roman_in end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is fed into Conv1D and is transformed into the next latent skeleton feature 𝐗outm×doutsubscript𝐗outsuperscript𝑚subscript𝑑out\mathbf{X}_{\mathrm{out}}\in\mathbb{R}^{m\times d_{\mathrm{out}}}bold_X start_POSTSUBSCRIPT roman_out end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_m × italic_d start_POSTSUBSCRIPT roman_out end_POSTSUBSCRIPT end_POSTSUPERSCRIPT as

𝐗out=ReLU(𝐖𝐗in+𝐛),subscript𝐗outReLU𝐖subscript𝐗in𝐛\displaystyle\mathbf{X}_{\mathrm{out}}=\mathrm{ReLU}(\mathbf{W}\star\mathbf{X}% _{\rm in}+\mathbf{b}),bold_X start_POSTSUBSCRIPT roman_out end_POSTSUBSCRIPT = roman_ReLU ( bold_W ⋆ bold_X start_POSTSUBSCRIPT roman_in end_POSTSUBSCRIPT + bold_b ) , (1)

where 𝐖κ×din×dout𝐖superscript𝜅subscript𝑑insubscript𝑑out\mathbf{W}\in\mathbb{R}^{\kappa\times d_{\mathrm{in}}\times d_{\mathrm{out}}}bold_W ∈ blackboard_R start_POSTSUPERSCRIPT italic_κ × italic_d start_POSTSUBSCRIPT roman_in end_POSTSUBSCRIPT × italic_d start_POSTSUBSCRIPT roman_out end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is the kernel and κ𝜅\kappaitalic_κ is the kernel size. 𝐛𝐛\mathbf{b}bold_b denotes bias. \star is the valid matrix multiplication. When the initial input is the point set P𝑃Pitalic_P, the corresponding skeleton feature is 𝐗xyzm×3subscript𝐗𝑥𝑦𝑧superscript𝑚3\mathbf{X}_{xyz}\in\mathbb{R}^{m\times 3}bold_X start_POSTSUBSCRIPT italic_x italic_y italic_z end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT italic_m × 3 end_POSTSUPERSCRIPT. Otherwise, dinsubscript𝑑ind_{\mathrm{in}}italic_d start_POSTSUBSCRIPT roman_in end_POSTSUBSCRIPT and doutsubscript𝑑outd_{\mathrm{out}}italic_d start_POSTSUBSCRIPT roman_out end_POSTSUBSCRIPT are intermediate latent feature dimensions as hyperparameters. m𝑚mitalic_m is the number of points. For the j𝑗jitalic_j-th Conv1D layer, m(j)superscript𝑚𝑗m^{(j)}italic_m start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT is the number of points. When applying sampling and grou** operations, m(j1)superscript𝑚𝑗1m^{(j-1)}italic_m start_POSTSUPERSCRIPT ( italic_j - 1 ) end_POSTSUPERSCRIPT of the last layer becomes m(j)=sksuperscript𝑚𝑗𝑠𝑘m^{(j)}=s\cdot kitalic_m start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT = italic_s ⋅ italic_k.

Here, we set the kernel with κ=1𝜅1\kappa=1italic_κ = 1 and stride=1. In this way, Eq. (1) becomes a feature learner that is invariant to permutation of a point set along the ‘m𝑚mitalic_m’ axis. We provide the relevant theoretical proof in Appendix.B.

After each Conv1D layer, we leverage MaxPooling as a downsampling operation and reduce the spatial dimensions. Subsequently, by stacking N2subscript𝑁2N_{2}italic_N start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT {Sampling, Grou**, ConvBlock, MaxPooling} layers, the input 𝐗xyz|P|×3subscript𝐗𝑥𝑦𝑧superscript𝑃3\mathbf{X}_{xyz}\in\mathbb{R}^{|P|\times 3}bold_X start_POSTSUBSCRIPT italic_x italic_y italic_z end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT | italic_P | × 3 end_POSTSUPERSCRIPT are projecting into a morphology representation 𝐱s1×dsubscript𝐱𝑠superscript1𝑑\mathbf{x}_{s}\in\mathbb{R}^{1\times d}bold_x start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT 1 × italic_d end_POSTSUPERSCRIPT layer by layer.

Refer to caption
Figure 3: HemiBrain neuron skeletons of KC (Kenyon Cells), LHAV(Lateral Horn Anterior Ventral cell cluster), MC(Medulla Columnar), SLP(Superior lateral protocerebrum), and WED(Wedge). The first column are neurons (blue) from the training set, the rest of the columns are NeuNet’s prediction cases on test, and the gray background is Drosophila brain. NeuNet learned the morphology of the neurons, including the ”L” shaped structure of the KC class.
Method Acc LC KC SMP AVLP SLP CL PS LHAV PLP LHPV
MLP 0.1796 0.1763 0.1652 0.1798 0.2032 0.1863 0.1765 0.1956 0.1652 0.1956 0.1698
PointNet++ (Qi et al. 2017b) 0.8627 0.8621 0.8962 0.75841 0.8546 0.8654 0.8756 0.8745 0.8522 0.8921 0.8541
GCNII (Chen et al. 2020) 0.5266 0.4956 0.5361 0.5411 0.5323 0.5362 0.5412 0.5212 0.5421 0.4812 0.4932
DGCNN (Wang et al. 2019) 0.8560 0.8425 0.8632 0.8410 0.8651 0.8510 0.8710 0.8632 0.8365 0.8863 0.8360
AGNN (Thekumparampil et al. 2018) 0.5327 0.5621 0.5214 0.5412 0.5630 0.5489 0.5321 0.5423 0.5621 0.5421 0.5213
Point-Transformer (Zhao et al. 2021) 0.8473 0.8516 0.8326 0.8426 0.8321 0.8561 0.8502 0.8632 0.8412 0.8564 0.8214
NeuNet(ours) 0.9169 0.9721 1.0000 0.9291 0.9259 0.9369 0.9200 0.9000 0.8929 0.9245 0.8813
Table 1: Overall classification accuracy on the HemiBrain dataset and within-class accuracy for 10 of its classes. The corresponding confusion matrix is shown in Appendix.H. Details of the classes we selcted from HemiBrain can be found in Appendix.I.
Method Acc L1 L2 L3 L4 L5 L6
MLP 0.3239 0.3364 0.3562 0.3235 0.3102 0.3321 0.3014
PointNet++ 0.6242 0.6025 0.6821 0.6214 0.6025 0.6412 0.6123
GCNII 0.6141 0.6231 0.6512 0.5831 0.6451 0.5821 0.6612
DGCNN 0.6104 0.6120 0.6521 0.6023 0.6325 0.6230 0.5984
AGNN 0.6334 0.6231 0.6213 0.6423 0.5921 0.6215 0.6432
Point-Transformer 0.5910 0.6012 0.5821 0.6123 0.6215 0.6023 0.5920
NeuNet 0.9363 0.8113 0.9729 0.9134 0.9306 0.9273 0.9247
Table 2: Overall classification accuracy on the H01 dataset and within-class accuracy on its 6 layers. The corresponding confusion matrix is shown in Appendix.H. L1, L2, …, L6 are the 6 types of cells at different layers of the human cerebral cortex.

Connectome Encoder

A brain circuit is inherently a graph, with neurons interconnected through synaptic or chemical connections. The connectivity of such graph forms the basis for biological functions and behaviors. For neuron classification, the connectivity pattern can reveal the functions and roles of neurons. To establish a map** between learning connection patterns and neuron types, we design Connectome Encoder as a graph encoder to learn the topological features of this graph. Connectome Encoder iteratively stacks N1subscript𝑁1N_{1}italic_N start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT node learning layers to project graph structure into low-dimensional features. The l𝑙litalic_l-th layer of Connectome Encoder is a function :(𝐀,𝐗(l)|𝒱|×d(l))𝐗(l+1)|𝒱|×d(l+1):𝐀superscript𝐗𝑙superscript𝒱subscript𝑑𝑙superscript𝐗𝑙1superscript𝒱subscript𝑑𝑙1\mathcal{F}:(\mathbf{A},\mathbf{X}^{(l)}\in\mathbb{R}^{|\mathcal{V}|\times d_{% (l)}})\to\mathbf{X}^{(l+1)}\in\mathbb{R}^{|\mathcal{V}|\times d_{(l+1)}}caligraphic_F : ( bold_A , bold_X start_POSTSUPERSCRIPT ( italic_l ) end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT | caligraphic_V | × italic_d start_POSTSUBSCRIPT ( italic_l ) end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ) → bold_X start_POSTSUPERSCRIPT ( italic_l + 1 ) end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT | caligraphic_V | × italic_d start_POSTSUBSCRIPT ( italic_l + 1 ) end_POSTSUBSCRIPT end_POSTSUPERSCRIPT as

𝐗(l+1)=ReLU(((1α)𝐏^𝐗(l)+α𝐗(𝟎))((1β)𝐈+β𝚯)),superscript𝐗𝑙1ReLU1𝛼^𝐏superscript𝐗𝑙𝛼superscript𝐗01𝛽𝐈𝛽𝚯\mathbf{X}^{(l+1)}=\mathrm{ReLU}\left(((1-\alpha)\mathbf{\hat{P}}\mathbf{X}^{(% l)}+\alpha\mathbf{X^{(0)}})((1-\beta)\mathbf{I}+\beta\mathbf{\Theta})\right),bold_X start_POSTSUPERSCRIPT ( italic_l + 1 ) end_POSTSUPERSCRIPT = roman_ReLU ( ( ( 1 - italic_α ) over^ start_ARG bold_P end_ARG bold_X start_POSTSUPERSCRIPT ( italic_l ) end_POSTSUPERSCRIPT + italic_α bold_X start_POSTSUPERSCRIPT ( bold_0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) bold_I + italic_β bold_Θ ) ) , (2)

where 𝐏^=𝐃^1/2𝐀^𝐃^1/2^𝐏superscript^𝐃12^𝐀superscript^𝐃12\mathbf{\hat{P}}=\mathbf{\hat{D}}^{-1/2}\mathbf{\hat{A}}\mathbf{\hat{D}}^{-1/2}over^ start_ARG bold_P end_ARG = over^ start_ARG bold_D end_ARG start_POSTSUPERSCRIPT - 1 / 2 end_POSTSUPERSCRIPT over^ start_ARG bold_A end_ARG over^ start_ARG bold_D end_ARG start_POSTSUPERSCRIPT - 1 / 2 end_POSTSUPERSCRIPT is a degree normalized adjacency matrix with addinng self-loops that 𝐀^=𝐀+𝐈^𝐀𝐀𝐈\mathbf{\hat{A}}=\mathbf{A}+\mathbf{I}over^ start_ARG bold_A end_ARG = bold_A + bold_I. 𝐃^^𝐃\mathbf{\hat{D}}over^ start_ARG bold_D end_ARG is a diagonal degree matrix, where D^ii=jA^ijsubscript^𝐷𝑖𝑖subscript𝑗subscript^𝐴𝑖𝑗\hat{D}_{ii}=\sum_{j}\hat{A}_{ij}over^ start_ARG italic_D end_ARG start_POSTSUBSCRIPT italic_i italic_i end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT. 𝐗(0)|𝒱|×d0superscript𝐗0superscript𝒱subscript𝑑0\mathbf{X}^{(0)}\in\mathbb{R}^{|\mathcal{V}|\times d_{0}}bold_X start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT | caligraphic_V | × italic_d start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is the initial feature matrix from a random initialization. 𝚯dl×d(l+1)𝚯superscriptsubscript𝑑𝑙subscript𝑑𝑙1\mathbf{\Theta}\in\mathbb{R}^{d_{l}\times d_{(l+1)}}bold_Θ ∈ blackboard_R start_POSTSUPERSCRIPT italic_d start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT × italic_d start_POSTSUBSCRIPT ( italic_l + 1 ) end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is a learnable weight matrix.

Here, α𝛼\alphaitalic_α models the strength of the initial residual connection, while β𝛽\betaitalic_β models the strength of the identity map**. The final feature 𝐗csubscript𝐗c\mathbf{X}_{\mathrm{c}}bold_X start_POSTSUBSCRIPT roman_c end_POSTSUBSCRIPT obtained after N1subscript𝑁1N_{1}italic_N start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT layers of propagation encapsulates the topological information of the contextual surroundings in which the neuron resides. Then, the row vector 𝐱c𝐗csubscript𝐱csubscript𝐗c\mathbf{x}_{\mathrm{c}}\in\mathbf{X}_{\mathrm{c}}bold_x start_POSTSUBSCRIPT roman_c end_POSTSUBSCRIPT ∈ bold_X start_POSTSUBSCRIPT roman_c end_POSTSUBSCRIPT represent a neuron’s topological low-dimensional feature representation.

Since a graph is a topological structure, its data structure also possesses permutation invariance. This means that permuting the node orders of the graph will not change the learned representation vector of the nodes. Eq. (2) also exhibits permutation invariance, and the relevant theoretical proof can be found in Appendix.C.

Readout Layer

After Skeleton Encoder generates feature representations 𝐱ssubscript𝐱𝑠\mathbf{x}_{s}bold_x start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT about neuron morphology and Connectome Encoder generates feature representations 𝐱csubscript𝐱c\mathbf{x}_{\mathrm{c}}bold_x start_POSTSUBSCRIPT roman_c end_POSTSUBSCRIPT about the topological information, we concatenate them to form the final neuron feature representations 𝐱𝐱\mathbf{x}bold_x,

𝐱=𝐱s𝐱c.𝐱tensor-productsubscript𝐱𝑠subscript𝐱𝑐\displaystyle\mathbf{x}=\mathbf{x}_{s}\otimes\mathbf{x}_{c}.bold_x = bold_x start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ⊗ bold_x start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT . (3)

Then, we use an MLP as a classifier to predict neuron label:

𝐜=MLP(𝐱),𝐜MLP𝐱\displaystyle\mathbf{c}=\mathrm{MLP}(\mathbf{x}),bold_c = roman_MLP ( bold_x ) , (4)

where 𝐜𝐜\mathbf{c}bold_c denotes the prediction results.

Finally, we use cross entropy as a classification loss to train our model:

=i|C|[yilogci+(1yi)log(1ci)],subscriptsuperscript𝐶𝑖delimited-[]subscript𝑦𝑖subscript𝑐𝑖1subscript𝑦𝑖1subscript𝑐𝑖\displaystyle\mathcal{L}=-\sum^{|C|}_{i}[y_{i}\log c_{i}+(1-y_{i})\log(1-c_{i}% )],caligraphic_L = - ∑ start_POSTSUPERSCRIPT | italic_C | end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT [ italic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT roman_log italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ( 1 - italic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) roman_log ( 1 - italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) ] , (5)

where yi{0,1}subscript𝑦𝑖01y_{i}\in\{0,1\}italic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ { 0 , 1 } is the groud truth for i𝑖iitalic_i-th type. |C|𝐶|C|| italic_C | is the number of neuron types.

Experiments

Data description

HemiBrain.

HemiBrain(Scheffer et al. 2020) is a dense reconstruction of a portion of the central brain of Drosophila. This work collected a hemi-brain sample and subdivided it into 20 µm thick slabs using the ‘hot-knife’ ultrathick sectioning procedure (Hayworth et al. 2015). Relevant electron images were acquired using FIB-SEM imaging technique (Lu et al. 2022). After obtaining these high-resolution photographs, (Januszewski et al. 2018a) and (Zhu et al. 2017a) were used as segmentation algorithms to determine the regions of neuron bodies and to detect the connecting synapses between neurons based on (Huang, Scheffer, and Plaza 2018a). Finally, the authors grouped the neurons according to their biological properties, location, etc. of each neuron.

We accessed the raw data through NeuPrint(Clements et al. 2020) and reprocessed it into 19,384 skeletons(point sets) of neurons which can be classified into 191 different classes(see Appendix.I for details). Regarding these neurons as nodes and the synapses between neurons as connecting edges, these neurons are connected by 3,307,248 edges. More details of the HemiBrain’s processing are shown in Appendix.D.

Refer to caption
(a) NeuNet-HemiB
Refer to caption
(b) PointTrans-HemiB
Refer to caption
(c) DGCNN-HemiB
Refer to caption
(d) PointNet++-HemiB
Refer to caption
(e) NeuNet-H01
Refer to caption
(f) PointTrans-H01
Refer to caption
(g) DGCNN-H01
Refer to caption
(h) Pointnet++-H01
Figure 4: The visualizations using t-SNE (Van der Maaten and Hinton 2008) of neuron representation learned by various methods. Where each of color represents a specific class. Since there are up to 191 class of HemiBrain, different classes of point may be given the same color.

H01.

Similar to the HemiBrain dataset, the authors(Shapson-Coe et al. 2021) produced this dataset by taking samples from a human cerebral cortex through steps such as slicing, imaging, segmentation, and synaptic detection. We obtained the raw data and reprocessed it into 15,554 neurons connected by 28,246 edges, which are from 6 layers of the cortex(see Appendix.E for details).

The neurons of HemiBrain and H01 datasets will be randomly partitioned into training, validation, and test dataset in an 8:1:1 ratio.

Implementation Details

We provide hyper-parameter settings: α𝛼\alphaitalic_α in Eq. (2) takes a value of 0.1, and β𝛽\betaitalic_β in Eq. (2) takes a value of 0.5(see Appendix.F for related experiments). We set the SampleBlock to 3 layers, and set the node learning layer in Connectome Encoder to 64 layers(see Appendix.G for related experiments). Small changes to the other parameters did not change the results much. During the training phase, we concatenate an MLP to Connectome Encoder, and once Connectome Encoder is trained, we proceed to train Skeleton Encoder. For baseline models, we set the parameters same as their original papers.

Results

Neuron Classification.

On the HemiBrain and H01 dataset, we compare our method with MLP, PointNet++ (Qi et al. 2017b), GCNII (Chen et al. 2020), DGCNN (Wang et al. 2019), AGNN (Thekumparampil et al. 2018) and Point-Transformer (Zhao et al. 2021). The classification results are listed in the Table 1 and Table 2. The numerical values reported in this study refer to either overall accuracy or within-class accuracy. Overall accuracy represents the proportion of correctly classified samples out of the total number of samples. While within-class accuracy pertains to the proportion of correctly classified samples within a specific category out of the total number of samples in that category. As Table 1 suggests, our model outperforms other methods on the HemiBrain dataset. And it is ahead of the second-place model PointNet++ by 6.46% and ahead of the last-place MLP by 411.41%. As shown in Table 2, our model also significantly outperforms the other models on the H01 dataset, with an overall accuracy of 48.70% higher than the second place.

We draw skeletons of neuron randomly selected from the HemiBrain dataset. As shown in Figure 3, NeuNet is able to learn the local and global structure of neurons’ skeletons. For example, NeuNet learns an ’L’-type structure with complex bifurcation structures at both ends in KC; NeuNet recognizes the complex dendritic structure followed by a long axonal structure as a key characteristic in LHAV.

Representation Visualization.

We produce t-SNE (Van der Maaten and Hinton 2008) visualizations on 𝐱𝐱\mathbf{x}bold_x learned by various methods. As shown in Figure 4, our model can transform the complex neuronal data into clustered groups, demonstrating the strong classification ability of the learned representations. However, this ability is not observed in DGCNN and PointNet++. Fuzzy grou** is also observed in Point-Transformer, with the scatter within the groups being more dispersed and overlap** occurring between the groups.

Refer to caption
Figure 5: Query neurons(red) and retrieved neurons(green) using NeuNet. The gray-shaded background represents the Drosophila brain, and the red shaded background indicates the region with the highest synaptic connectivity for the query neuron. Query neuron IDs and finer-grained categories are provided by (Scheffer et al. 2020). The subcategories of the top 10 retrieved neurons remain consistent with the query neurons(not shown in this figure), without the utilization of finer-grained subcategory information in NeuNet.
Method Acc LC KC SMP AVLP SLP CL PS LHAV PLP LHPV
NeuNet 0.9169 0.9721 1.0000 0.9291 0.9259 0.9369 0.9200 0.9000 0.8929 0.9245 0.8813
NeuNet(maxPool) 0.9149 0.9814 1.0000 0.9291 0.9407 0.9279 0.9600 0.8714 0.9821 0.8929 0.9623
NeuNet(avgPool) 0.9135 0.9907 1.0000 0.9220 0.9185 0.9279 0.9067 0.9000 0.9464 0.8571 0.9434
NeuNet(+Skeleton) 0.8612 0.8512 0.8325 0.8754 0.8695 0.8720 0.8426 0.8365 0.8714 0.8845 0.7965
NeuNet(+Connnetome) 0.5865 0.6021 0.6231 0.5841 0.5923 0.5814 0.5736 0.5596 0.6021 0.6254 0.6123
Table 3: Classification accuracy of various variants of the NeuNet on the HemiBrain dataset.
Method Acc L1 L2 L3 L4 L5 L6
NeuNet 0.9363 0.8113 0.9729 0.9134 0.9306 0.9273 0.9247
NeuNet(maxPool) 0.9412 0.9436 0.9422 0.9449 0.9273 0.9462 0.8679
NeuNet(avgPool) 0.9419 0.9415 0.9624 0.9449 0.9273 0.9462 0.8679
NeuNet-S 0.6356 0.6541 0.6125 0.6023 0.6152 0.6201 0.6312
NeuNet-C 0.5123 0.5210 0.5023 0.5421 0.5011 0.5102 0.5321
Table 4: Classification accuracy of various variants of NeuNet on the H01 dataset.

Neuron Retrieval.

The representational capacity of NeuNet for high-dimensional neuron data can be applied to neuron retrieval. On the HemiBrain dataset, We use 𝐱𝐱\mathbf{x}bold_x to compute the Euclidean distance between all neurons. From the test set, we randomly selecte four neuron representations and identify the nearest neighboring neurons. The experimental results are shown in Figure 5. It is noteworthy that the subclasses of the top10 neurons are consistent with the query neuron (subclass information of the retrieved neurons is not shown in the figure), despite the fact that subclass information was not utilized during the training phase.

From Figure 5, we can observe that the retrieved neurons exhibit a high degree of similarity to the query neuron, and the retrieved neurons share common morphologies and location, indicating the potential presence of functional units within the corresponding regions.

Refer to caption
(a) Node scale on HemiBrain
Refer to caption
(b) Node scale on H01
Refer to caption
(c) Edge scale on HemiBrain
Refer to caption
(d) Edge scale on H01
Figure 6: The impact of varying the node and edge scale of the training set on classification accuracy.

Ablation Study.

We replace the way of fusing features in Readout Layer from concatenation to max pooling and average pooling to construct NeuNet(maxPool) and NeuNet(avgPool), respectively; we discard the brain circuit information and use only the representation generated by Skeleton Encoder to design the NeuNet-S; we remove skeleton information and employ solely the topological information generated by Connectome Encoder to design NeuNet-C. The experimental results of the aforementioned variants on the HemiBrain and H01 datasets are shown in Table 3 and Table 4, respectively. It can be seen that the ways of information fusion have little effect. When the NeuNet discards the skeleton information, its effectiveness decreases by 36.03% and 42.40% on the HemiBrain and H01 datasets, respectively. Similarly, when NeuNet discards the connectome information, the decreases on the HemiBrain and H01 datasets are 6.07% and 32.11%, respectively. This demonstrates that the two types of information complement each other, and NeuNet addresses the issue of the current methods lacking the utilization of brain circuit’s topological information.

To investigate the performance of NeuNet under different scales of training samples and connectivity edge quantities, we conduct experiments on the training set while retaining varying proportions of neurons and connectivity edges. As shown in Figure 6, the model variants achieved 60% of their optimal performance with only 0.1 times the number of neurons used for training. Additionally, we can observe that the combination of skeleton and connectome information enhances the model’s performance, which is particularly evident on the H01 dataset(Figure 6(b)).

Conclusion

In this paper, we propose a framework called NeuNet specifically for the neuron classification task, which incorporates both the morphological information of neuronal skeleton and the topological information of brain circuit with permutation invariance. NeuNet’s Skeleton Encoder mines the morphological information of neuronal sekleton in a bottom-up manner, while NeuNet’s Connectome Encoder employs a GNN to extract the topological information of brain circuit. The two information are fused and utilized by the Readout Layer for classification. Furthermore, we reprocess and release two datasets for neuron classification task. On these datasets, NeuNet demonstrate superior performance compared to other baseline models.

Appendix

A. FPS Algorithm

Algorithm 1 Farthest Point Sampling

Input: R𝑅Ritalic_R: The set of n𝑛nitalic_n points. K𝐾Kitalic_K: The number of sampled points.

Output:S𝑆Sitalic_S: The set of sampled points.

1:  Let S=𝑆S=\emptysetitalic_S = ∅;
2:  Select point P0subscript𝑃0P_{0}italic_P start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT from R𝑅Ritalic_R randomly; R𝑅Ritalic_R.remove(P0subscript𝑃0P_{0}italic_P start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT); S𝑆Sitalic_S.add(P0subscript𝑃0P_{0}italic_P start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT).
3:  for k=1𝑘1k=1italic_k = 1; k<K𝑘𝐾k<Kitalic_k < italic_K; k++k++italic_k + + do
4:     DR=subscript𝐷𝑅D_{R}=\emptysetitalic_D start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT = ∅.
5:     for Prsubscript𝑃𝑟P_{r}italic_P start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT in R𝑅Ritalic_R do
6:        DS=subscript𝐷𝑆D_{S}=\emptysetitalic_D start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = ∅.
7:        for Pssubscript𝑃𝑠P_{s}italic_P start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT in S𝑆Sitalic_S do
8:           DSsubscript𝐷𝑆D_{S}italic_D start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT.add(DisEu(Ps,PrDis_{Eu}(P_{s},P_{r}italic_D italic_i italic_s start_POSTSUBSCRIPT italic_E italic_u end_POSTSUBSCRIPT ( italic_P start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT)).
9:        end for
10:        DRsubscript𝐷𝑅D_{R}italic_D start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT.add(min(DSsubscript𝐷𝑆D_{S}italic_D start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT))
11:     end for
12:     Set DisEu𝐷𝑖subscript𝑠𝐸𝑢Dis_{Eu}italic_D italic_i italic_s start_POSTSUBSCRIPT italic_E italic_u end_POSTSUBSCRIPT(PSsubscript𝑃𝑆P_{S}italic_P start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT, PRsubscript𝑃𝑅P_{R}italic_P start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT)==min(DRsubscript𝐷𝑅D_{R}italic_D start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT)
13:     R𝑅Ritalic_R.remove(PRsubscript𝑃𝑅P_{R}italic_P start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT).
14:     S𝑆Sitalic_S.add(PRsubscript𝑃𝑅P_{R}italic_P start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT).
15:  end for
16:  return S𝑆Sitalic_S: The set of sampled points.

B. Proof of Translation Invariance on one-dimensional convolution

Definition 1 (Permutation action π𝜋\piitalic_π).

A permutation action π𝜋\piitalic_π is a function that acts on any vector, matrix, or tensor defined over the nodes P𝑃Pitalic_P, e.g., (𝐗i)iPsubscriptsubscript𝐗𝑖𝑖𝑃(\mathbf{X}_{i})_{i\in P}( bold_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT italic_i ∈ italic_P end_POSTSUBSCRIPT, and outputs an equivalent vector, matrix, or tensor with the order of the nodes permuted. We define ΠnsubscriptΠ𝑛\Pi_{n}roman_Π start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT as the set of all n!𝑛n!italic_n ! such permutation actions.

Definition 2 (Permutation invariant function).

Let ΠnsubscriptΠ𝑛\Pi_{n}roman_Π start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT be the set of all possible permutation action on a set with n𝑛nitalic_n elements. A function f𝑓fitalic_f is a permutation invariant function iff πΠn,f(π(𝐗))=f(𝐗)formulae-sequencefor-all𝜋subscriptΠ𝑛𝑓𝜋𝐗𝑓𝐗\forall\pi\in\Pi_{n},f(\pi(\mathbf{X}))=f(\mathbf{X})∀ italic_π ∈ roman_Π start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_f ( italic_π ( bold_X ) ) = italic_f ( bold_X ), where 𝐗𝐗\mathbf{X}bold_X is a vector or matrix with n𝑛nitalic_n elements.

Theorem 1.

Conv1D(Eq. (1) in main text) is a permutation invariant function, in the setting of κ=1𝜅1\kappa=1italic_κ = 1 and stride=1.

Proof: For a set 𝐗𝐗\mathbf{X}bold_X, the operation π𝜋\piitalic_π of exchanging order of any element pair 𝐱isubscript𝐱𝑖\mathbf{x}_{i}bold_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and 𝐱jsubscript𝐱𝑗\mathbf{x}_{j}bold_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT has πΠnfor-all𝜋subscriptΠ𝑛\forall\pi\in\Pi_{n}∀ italic_π ∈ roman_Π start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT. So proof that a function is permutation invariant to π𝜋\piitalic_π is equate to proof that this function is permutation invariant to exchang order of elements 𝐱isubscript𝐱𝑖\mathbf{x}_{i}bold_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and 𝐱jsubscript𝐱𝑗\mathbf{x}_{j}bold_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. For πΠnfor-all𝜋subscriptΠ𝑛\forall\pi\in\Pi_{n}∀ italic_π ∈ roman_Π start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT, let the process of applying the Conv1D on 𝐗𝐗\mathbf{X}bold_X which has undergone permutation action π𝜋\mathbf{\pi}italic_π is denoted as

Con1d(π(𝐗))Con1d𝜋𝐗\displaystyle\mathrm{Con1d(\pi(\mathbf{X}))}Con1d ( italic_π ( bold_X ) ) =ReLu(𝐖[x1x2xjxixn]+𝐛)absentReLu𝐖matrixsubscript𝑥1subscript𝑥2subscript𝑥𝑗subscript𝑥𝑖subscript𝑥𝑛𝐛\displaystyle=\mathrm{ReLu}(\mathbf{W}\star\begin{bmatrix}x_{1}\\ x_{2}\\ x_{j}\\ x_{i}\\ \vdots\\ x_{n}\\ \end{bmatrix}+\mathbf{b})= roman_ReLu ( bold_W ⋆ [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] + bold_b ) (6)
=[ReLU(𝐰x1+b)ReLU(𝐰x2+b)ReLU(𝐰xj+b)ReLU(𝐰xi+b)ReLU(𝐰xn+b)]=π(Con1D(𝐗)).absentmatrixReLU𝐰subscript𝑥1𝑏ReLU𝐰subscript𝑥2𝑏ReLU𝐰subscript𝑥𝑗𝑏ReLU𝐰subscript𝑥𝑖𝑏ReLU𝐰subscript𝑥𝑛𝑏𝜋Con1D𝐗\displaystyle=\begin{bmatrix}\mathrm{ReLU}(\mathbf{w}\cdot x_{1}+b)\\ \mathrm{ReLU}(\mathbf{w}\cdot x_{2}+b)\\ \mathrm{ReLU}(\mathbf{w}\cdot x_{j}+b)\\ \mathrm{ReLU}(\mathbf{w}\cdot x_{i}+b)\\ \vdots\\ \mathrm{ReLU}(\mathbf{w}\cdot x_{n}+b)\\ \end{bmatrix}=\pi(\mathrm{Con1D}(\mathbf{X})).= [ start_ARG start_ROW start_CELL roman_ReLU ( bold_w ⋅ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_b ) end_CELL end_ROW start_ROW start_CELL roman_ReLU ( bold_w ⋅ italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + italic_b ) end_CELL end_ROW start_ROW start_CELL roman_ReLU ( bold_w ⋅ italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_b ) end_CELL end_ROW start_ROW start_CELL roman_ReLU ( bold_w ⋅ italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_b ) end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL roman_ReLU ( bold_w ⋅ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT + italic_b ) end_CELL end_ROW end_ARG ] = italic_π ( Con1D ( bold_X ) ) . (7)

From Definition 1, we have π(𝐗)=𝐗𝜋𝐗𝐗\pi(\mathbf{X})=\mathbf{X}italic_π ( bold_X ) = bold_X for output value. This implies that Conv1D(π(𝐗))=π(Conv1D(𝐗))=Conv1D(𝐗)Conv1D𝜋𝐗𝜋Conv1D𝐗Conv1D𝐗\mathrm{Conv1D}(\pi(\mathbf{X}))=\pi(\mathrm{Conv1D}(\mathbf{X}))=\mathrm{Conv% 1D}(\mathbf{X})Conv1D ( italic_π ( bold_X ) ) = italic_π ( Conv1D ( bold_X ) ) = Conv1D ( bold_X ).

Q.E.D

C. Proof of Translation Invariance in main text’s Eq. (2).

Theorem 2.

GNN(\cdot)(Eq. (2) in main text) is a permutation invariant function for input 𝐗𝐗\mathbf{X}bold_X.

Proof: From main text’s Eq.(2), we can deduce that:

GNN([x1xixjxn])GNNmatrixsubscript𝑥1subscript𝑥𝑖subscript𝑥𝑗subscript𝑥𝑛\displaystyle\mathrm{GNN}(\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix})roman_GNN ( [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ) =((1α)[1d^100001d^i0001d^j01d^n][A^11A^1iA^1jA^1nA^i1A^iiA^ijA^j1A^jiA^jjA^n1A^nn]\displaystyle=((1-\alpha)\begin{bmatrix}\frac{1}{\sqrt{\hat{d}_{1}}}&0&0&% \cdots&0\\ 0&\frac{1}{\sqrt{\hat{d}_{i}}}&0&&\\ 0&0&\frac{1}{\sqrt{\hat{d}_{j}}}&&\\ \vdots&&&\ddots&\vdots\\ 0&&&\cdots&\frac{1}{\sqrt{\hat{d}_{n}}}\\ \end{bmatrix}\cdot\begin{bmatrix}\hat{A}_{11}&\hat{A}_{1i}&\hat{A}_{1j}&\cdots% &\hat{A}_{1n}\\ \hat{A}_{i1}&\hat{A}_{ii}&\hat{A}_{ij}&&\\ \hat{A}_{j1}&\hat{A}_{ji}&\hat{A}_{jj}&&\\ \vdots&&&\ddots&\vdots\\ \hat{A}_{n1}&&\cdots&\cdots&\hat{A}_{nn}\\ \end{bmatrix}= ( ( 1 - italic_α ) [ start_ARG start_ROW start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL ⋯ end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL 0 end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋱ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW end_ARG ] ⋅ [ start_ARG start_ROW start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 11 end_POSTSUBSCRIPT end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_j end_POSTSUBSCRIPT end_CELL start_CELL ⋯ end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_n end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_i end_POSTSUBSCRIPT end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_j end_POSTSUBSCRIPT end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋱ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n 1 end_POSTSUBSCRIPT end_CELL start_CELL end_CELL start_CELL ⋯ end_CELL start_CELL ⋯ end_CELL start_CELL over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ]
[1d^100001d^i0001d^j01d^n][x1xixjxn]+α[x1(0)xi(0)xj(0)xn(0)])((1β)𝐈+β𝚯)\displaystyle\cdot\begin{bmatrix}\frac{1}{\sqrt{\hat{d}_{1}}}&0&0&\cdots&0\\ 0&\frac{1}{\sqrt{\hat{d}_{i}}}&0&&\\ 0&0&\frac{1}{\sqrt{\hat{d}_{j}}}&&\\ \vdots&&&\ddots&\vdots\\ 0&&&\cdots&\frac{1}{\sqrt{\hat{d}_{n}}}\\ \end{bmatrix}\cdot\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}+\alpha\begin{bmatrix}x_{1}^{(0)}\\ x_{i}^{(0)}\\ x_{j}^{(0)}\\ \vdots\\ x_{n}^{(0)}\\ \end{bmatrix})((1-\beta)\mathbf{I}+\beta\mathbf{\Theta})⋅ [ start_ARG start_ROW start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL ⋯ end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL 0 end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋱ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW end_ARG ] ⋅ [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] + italic_α [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW end_ARG ] ) ( ( 1 - italic_β ) bold_I + italic_β bold_Θ ) (8)
=((1α)[A^11d^1A^1id^1A^1jd^1A^1nd^1A^i1d^iA^iid^iA^ijd^iA^j1d^jA^jid^jA^jjd^jA^n1d^nA^nnd^n][1d^100001d^i0001d^j01d^n]\displaystyle=((1-\alpha)\begin{bmatrix}\frac{\hat{A}_{11}}{\sqrt{\hat{d}_{1}}% }&\frac{\hat{A}_{1i}}{\sqrt{\hat{d}_{1}}}&\frac{\hat{A}_{1j}}{\sqrt{\hat{d}_{1% }}}&\cdots&\frac{\hat{A}_{1n}}{\sqrt{\hat{d}_{1}}}\\ \frac{\hat{A}_{i1}}{\sqrt{\hat{d}_{i}}}&\frac{\hat{A}_{ii}}{\sqrt{\hat{d}_{i}}% }&\frac{\hat{A}_{ij}}{\sqrt{\hat{d}_{i}}}&&\\ \frac{\hat{A}_{j1}}{\sqrt{\hat{d}_{j}}}&\frac{\hat{A}_{ji}}{\sqrt{\hat{d}_{j}}% }&\frac{\hat{A}_{jj}}{\sqrt{\hat{d}_{j}}}&&\\ \vdots&&&\ddots&\vdots\\ \frac{\hat{A}_{n1}}{\sqrt{\hat{d}_{n}}}&&\cdots&\cdots&\frac{\hat{A}_{nn}}{% \sqrt{\hat{d}_{n}}}\\ \end{bmatrix}\cdot\begin{bmatrix}\frac{1}{\sqrt{\hat{d}_{1}}}&0&0&\cdots&0\\ 0&\frac{1}{\sqrt{\hat{d}_{i}}}&0&&\\ 0&0&\frac{1}{\sqrt{\hat{d}_{j}}}&&\\ \vdots&&&\ddots&\vdots\\ 0&&&\cdots&\frac{1}{\sqrt{\hat{d}_{n}}}\\ \end{bmatrix}= ( ( 1 - italic_α ) [ start_ARG start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 11 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_j end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_n end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_j end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋱ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n 1 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL ⋯ end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_n end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW end_ARG ] ⋅ [ start_ARG start_ROW start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL ⋯ end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL 0 end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL 0 end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋱ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG 1 end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW end_ARG ]
[x1xixjxn]+α[x1(0)xi(0)xj(0)xn(0)])((1β)𝐈+β𝚯)\displaystyle\cdot\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}+\alpha\begin{bmatrix}x_{1}^{(0)}\\ x_{i}^{(0)}\\ x_{j}^{(0)}\\ \vdots\\ x_{n}^{(0)}\\ \end{bmatrix})((1-\beta)\mathbf{I}+\beta\mathbf{\Theta})⋅ [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] + italic_α [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW end_ARG ] ) ( ( 1 - italic_β ) bold_I + italic_β bold_Θ ) (9)
=(1α)([A^11d^1d^1A^1id^1d^iA^1jd^1d^jA^1nd^1d^nA^i1d^id1A^iid^id^iA^ijd^id^jA^j1d^jd^1A^jid^jd^iA^jjd^jd^jA^n1d^nd^1A^nnd^nd^n][x1xixjxn]\displaystyle=(1-\alpha)(\begin{bmatrix}\frac{\hat{A}_{11}}{\sqrt{\hat{d}_{1}}% \sqrt{\hat{d}_{1}}}&\frac{\hat{A}_{1i}}{\sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{i}}}&% \frac{\hat{A}_{1j}}{\sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{j}}}&\cdots&\frac{\hat{A}% _{1n}}{\sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{n}}}\\ \frac{\hat{A}_{i1}}{\sqrt{\hat{d}_{i}}\sqrt{d_{1}}}&\frac{\hat{A}_{ii}}{\sqrt{% \hat{d}_{i}}\sqrt{\hat{d}_{i}}}&\frac{\hat{A}_{ij}}{\sqrt{\hat{d}_{i}}\sqrt{% \hat{d}_{j}}}&&\\ \frac{\hat{A}_{j1}}{\sqrt{\hat{d}_{j}}\sqrt{\hat{d}_{1}}}&\frac{\hat{A}_{ji}}{% \sqrt{\hat{d}_{j}}\sqrt{\hat{d}_{i}}}&\frac{\hat{A}_{jj}}{\sqrt{\hat{d}_{j}}% \sqrt{\hat{d}_{j}}}&&\\ \vdots&&&\ddots&\vdots\\ \frac{\hat{A}_{n1}}{\sqrt{\hat{d}_{n}}\sqrt{\hat{d}_{1}}}&&\cdots&\cdots&\frac% {\hat{A}_{nn}}{\sqrt{\hat{d}_{n}}\sqrt{\hat{d}_{n}}}\\ \end{bmatrix}\cdot\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}= ( 1 - italic_α ) ( [ start_ARG start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 11 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_j end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_n end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG italic_d start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_j end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL start_CELL end_CELL start_CELL end_CELL start_CELL ⋱ end_CELL start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n 1 end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG end_ARG end_CELL start_CELL end_CELL start_CELL ⋯ end_CELL start_CELL ⋯ end_CELL start_CELL divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_n end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG end_ARG end_CELL end_ROW end_ARG ] ⋅ [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ]
+α[x1(0)xi(0)xj(0)xn(0)])((1β)𝐈+β𝚯)\displaystyle+\alpha\begin{bmatrix}x_{1}^{(0)}\\ x_{i}^{(0)}\\ x_{j}^{(0)}\\ \vdots\\ x_{n}^{(0)}\\ \end{bmatrix})((1-\beta)\mathbf{I}+\beta\mathbf{\Theta})+ italic_α [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW end_ARG ] ) ( ( 1 - italic_β ) bold_I + italic_β bold_Θ ) (10)
=((1α)[k=1nA^1kd^1d^kxkk=1nA^ikd^id^kxkk=1nA^jkd^jd^kxkk=1nA^nkd^nd^kxk]+α[x1(0)xi(0)xj(0)xn(0)])((1β)𝐈+β𝚯)absent1𝛼matrixsuperscriptsubscript𝑘1𝑛subscript^𝐴1𝑘subscript^𝑑1subscript^𝑑𝑘subscript𝑥𝑘superscriptsubscript𝑘1𝑛subscript^𝐴𝑖𝑘subscript^𝑑𝑖subscript^𝑑𝑘subscript𝑥𝑘superscriptsubscript𝑘1𝑛subscript^𝐴𝑗𝑘subscript^𝑑𝑗subscript^𝑑𝑘subscript𝑥𝑘superscriptsubscript𝑘1𝑛subscript^𝐴𝑛𝑘subscript^𝑑𝑛subscript^𝑑𝑘subscript𝑥𝑘𝛼matrixsuperscriptsubscript𝑥10superscriptsubscript𝑥𝑖0superscriptsubscript𝑥𝑗0superscriptsubscript𝑥𝑛01𝛽𝐈𝛽𝚯\displaystyle=((1-\alpha)\begin{bmatrix}\sum_{k=1}^{n}\frac{\hat{A}_{1k}}{% \sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{k}}}x_{k}\\ \sum_{k=1}^{n}\frac{\hat{A}_{ik}}{\sqrt{\hat{d}_{i}}\sqrt{\hat{d}_{k}}}x_{k}\\ \sum_{k=1}^{n}\frac{\hat{A}_{jk}}{\sqrt{\hat{d}_{j}}\sqrt{\hat{d}_{k}}}x_{k}\\ \vdots\\ \sum_{k=1}^{n}\frac{\hat{A}_{nk}}{\sqrt{\hat{d}_{n}}\sqrt{\hat{d}_{k}}}x_{k}% \end{bmatrix}+\alpha\begin{bmatrix}x_{1}^{(0)}\\ x_{i}^{(0)}\\ x_{j}^{(0)}\\ \vdots\\ x_{n}^{(0)}\\ \end{bmatrix})((1-\beta)\mathbf{I}+\beta\mathbf{\Theta})= ( ( 1 - italic_α ) [ start_ARG start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] + italic_α [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW end_ARG ] ) ( ( 1 - italic_β ) bold_I + italic_β bold_Θ ) (11)
=((1α)[k=1nA^1kd^1d^kxk+αx1(0)k=1nA^ikd^id^kxk+αxi(0)k=1nA^jkd^jd^kxk+αxj(0)k=1nA^nkd^nd^kxk+αxn(0)])((1β)𝐈+β𝚯)absent1𝛼matrixsuperscriptsubscript𝑘1𝑛subscript^𝐴1𝑘subscript^𝑑1subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥10superscriptsubscript𝑘1𝑛subscript^𝐴𝑖𝑘subscript^𝑑𝑖subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑖0superscriptsubscript𝑘1𝑛subscript^𝐴𝑗𝑘subscript^𝑑𝑗subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑗0superscriptsubscript𝑘1𝑛subscript^𝐴𝑛𝑘subscript^𝑑𝑛subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑛01𝛽𝐈𝛽𝚯\displaystyle=((1-\alpha)\begin{bmatrix}\sum_{k=1}^{n}\frac{\hat{A}_{1k}}{% \sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{k}}}x_{k}+\alpha x_{1}^{(0)}\\ \sum_{k=1}^{n}\frac{\hat{A}_{ik}}{\sqrt{\hat{d}_{i}}\sqrt{\hat{d}_{k}}}x_{k}+% \alpha x_{i}^{(0)}\\ \sum_{k=1}^{n}\frac{\hat{A}_{jk}}{\sqrt{\hat{d}_{j}}\sqrt{\hat{d}_{k}}}x_{k}+% \alpha x_{j}^{(0)}\\ \vdots\\ \sum_{k=1}^{n}\frac{\hat{A}_{nk}}{\sqrt{\hat{d}_{n}}\sqrt{\hat{d}_{k}}}x_{k}+% \alpha x_{n}^{(0)}\end{bmatrix})((1-\beta)\mathbf{I}+\beta\mathbf{\Theta})= ( ( 1 - italic_α ) [ start_ARG start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT end_CELL end_ROW end_ARG ] ) ( ( 1 - italic_β ) bold_I + italic_β bold_Θ ) (12)
=[((1α)k=1nA^1kd^1d^kxk+αx1(0))((1β)+βθ)((1α)k=1nA^ikd^id^kxk+αxi(0))((1β)+βθ)((1α)k=1nA^jkd^jd^kxk+αxj(0))((1β)+βθ)((1α)k=1nA^nkd^nd^kxk+αxn(0))((1β)+βθ)].absentmatrix1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴1𝑘subscript^𝑑1subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥101𝛽𝛽𝜃1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴𝑖𝑘subscript^𝑑𝑖subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑖01𝛽𝛽𝜃1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴𝑗𝑘subscript^𝑑𝑗subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑗01𝛽𝛽𝜃1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴𝑛𝑘subscript^𝑑𝑛subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑛01𝛽𝛽𝜃\displaystyle=\begin{bmatrix}((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{1k}}{% \sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{k}}}x_{k}+\alpha x_{1}^{(0)})((1-\beta)+\beta% \mathbf{\theta})\\ ((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{ik}}{\sqrt{\hat{d}_{i}}\sqrt{\hat{d}_{% k}}}x_{k}+\alpha x_{i}^{(0)})((1-\beta)+\beta\mathbf{\theta})\\ ((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{jk}}{\sqrt{\hat{d}_{j}}\sqrt{\hat{d}_{% k}}}x_{k}+\alpha x_{j}^{(0)})((1-\beta)+\beta\mathbf{\theta})\\ \vdots\\ ((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{nk}}{\sqrt{\hat{d}_{n}}\sqrt{\hat{d}_{% k}}}x_{k}+\alpha x_{n}^{(0)})((1-\beta)+\beta\mathbf{\theta})\end{bmatrix}.= [ start_ARG start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW end_ARG ] . (13)

Consequently,

GNN(π([x1xixjxn]))GNN𝜋matrixsubscript𝑥1subscript𝑥𝑖subscript𝑥𝑗subscript𝑥𝑛\displaystyle\mathrm{GNN}(\pi(\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}))roman_GNN ( italic_π ( [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ) ) =[((1α)k=1nA^1kd^1d^kxk+αx1(0))((1β)+βθ)((1α)k=1nA^jkd^jd^kxk+αxj(0))((1β)+βθ)((1α)k=1nA^ikd^id^kxk+αxi(0))((1β)+βθ)((1α)k=1nA^nkd^nd^kxk+αxn(0))((1β)+βθ)]absentmatrix1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴1𝑘subscript^𝑑1subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥101𝛽𝛽𝜃1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴𝑗𝑘subscript^𝑑𝑗subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑗01𝛽𝛽𝜃1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴𝑖𝑘subscript^𝑑𝑖subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑖01𝛽𝛽𝜃1𝛼superscriptsubscript𝑘1𝑛subscript^𝐴𝑛𝑘subscript^𝑑𝑛subscript^𝑑𝑘subscript𝑥𝑘𝛼superscriptsubscript𝑥𝑛01𝛽𝛽𝜃\displaystyle=\begin{bmatrix}((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{1k}}{% \sqrt{\hat{d}_{1}}\sqrt{\hat{d}_{k}}}x_{k}+\alpha x_{1}^{(0)})((1-\beta)+\beta% \mathbf{\theta})\\ ((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{jk}}{\sqrt{\hat{d}_{j}}\sqrt{\hat{d}_{% k}}}x_{k}+\alpha x_{j}^{(0)})((1-\beta)+\beta\mathbf{\theta})\\ ((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{ik}}{\sqrt{\hat{d}_{i}}\sqrt{\hat{d}_{% k}}}x_{k}+\alpha x_{i}^{(0)})((1-\beta)+\beta\mathbf{\theta})\\ \vdots\\ ((1-\alpha)\sum_{k=1}^{n}\frac{\hat{A}_{nk}}{\sqrt{\hat{d}_{n}}\sqrt{\hat{d}_{% k}}}x_{k}+\alpha x_{n}^{(0)})((1-\beta)+\beta\mathbf{\theta})\end{bmatrix}= [ start_ARG start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT 1 italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_j italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL ( ( 1 - italic_α ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT divide start_ARG over^ start_ARG italic_A end_ARG start_POSTSUBSCRIPT italic_n italic_k end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG square-root start_ARG over^ start_ARG italic_d end_ARG start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG end_ARG italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_α italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT ) ( ( 1 - italic_β ) + italic_β italic_θ ) end_CELL end_ROW end_ARG ] (14)
=π(GNN([x1xixjxn])).absent𝜋GNNmatrixsubscript𝑥1subscript𝑥𝑖subscript𝑥𝑗subscript𝑥𝑛\displaystyle=\pi(\mathrm{GNN}(\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix})).= italic_π ( roman_GNN ( [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ) ) . (15)

From Definition 1, We get

GNN(π([x1xixjxn]))=π(GNN([x1xixjxn]))=GNN([x1xixjxn]).GNN𝜋matrixsubscript𝑥1subscript𝑥𝑖subscript𝑥𝑗subscript𝑥𝑛𝜋GNNmatrixsubscript𝑥1subscript𝑥𝑖subscript𝑥𝑗subscript𝑥𝑛GNNmatrixsubscript𝑥1subscript𝑥𝑖subscript𝑥𝑗subscript𝑥𝑛\displaystyle\mathrm{GNN}(\pi(\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}))=\pi(\mathrm{GNN}(\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}))=\mathrm{GNN}(\begin{bmatrix}x_{1}\\ x_{i}\\ x_{j}\\ \vdots\\ x_{n}\\ \end{bmatrix}).roman_GNN ( italic_π ( [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ) ) = italic_π ( roman_GNN ( [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ) ) = roman_GNN ( [ start_ARG start_ROW start_CELL italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋮ end_CELL end_ROW start_ROW start_CELL italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_CELL end_ROW end_ARG ] ) . (16)

Q.E.D

D. Reprocessing of HemiBrain dataset

The HemiBrain dataset (Scheffer et al. 2020) used in this study go through several major steps from raw Drosophila brains to our model inputs: specimen preparation, imaging, automated segmentation, synapse detection, proofreading, cell type determination, and data reprocessing.

Specimen Preparation. Starting with a five day old female of wild-type Canton S strain G1 x w1118, the authors use a custom-made jig to microdissect the hemibrain sample with size(250×250×250μm3250250250𝜇superscriptm3250\times 250\times 250\mathrm{\mu m^{3}}250 × 250 × 250 italic_μ roman_m start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT), which was then fixed and embedded in Epon, an epoxy resin. Then, the plastic-embedded sample is subdivided into 37 sagittal slabs of 20 µm thickness using (Hayworth et al. 2015), with an estimated material loss between consecutive slabs of 30 nm - small enough to allow tracing of long-distance neurites.

Imaging. To meet the high isotropic resolution and large volume imaging demand, the authors used FIB-SEM (Lu et al. 2022) to imaging the slabs, which offers high isotropic resolution (10 nm in x, y, and z), minimal artifacts, and robust image alignment. In order to obtain high-quality slice images faster, the authors use appropriate techniques to solve the problems encountered in practice: (Xu et al. 2017) for slow imaging speeds; (Xu et al. 2019a) for expanding the practical imaging volume of conventional FIB-SEM; (Zheng et al. 2018) and (Khairy, Denisov, and Saalfeld 2018) for aligning the image stacks, followed by binning along z-axis; (Kainmueller et al. 2008) for correcting for the war** of the slab, which can occur in that the 20 µm slabs generated by the hot-knife sectioning are embedded in larger plastic tabs prior to FIB-SEM imaging; (Pizer et al. 1987) for adjusting the volumes contrast from deformations introduced by during sectioning, imaging, embedding, and alignment.

Automated Segmentation. The authors use FFNs (Januszewski et al. 2018b) for segmentation and neuronal computational reconstruction of the image data, prior to which CycleGAN (Zhu et al. 2017b) is used to adjust the image content to make it more uniform.

Synapse Prediction. Synapses exist in two forms, namely the presynaptic T-bar and the postsynaptic PSDs, which interconnect to establish communication between two neurons. Initial synaptic predictions suggest the presence of over 9 billion T-bars and 60 billion PSDs in the hemibrain, rendering manual detection prohibitively costly. The authors employ (Huang, Scheffer, and Plaza 2018b) for synaptic detection, followed by meticulous optimization using (Buhmann et al. 2021).

Proofreading. Considering that machine segmentation is not perfect, human proofreading is necessary. Segmentation errors can be roughly grouped into two classes - false merges, in which two separate neurons are mistakenly merged together, and false splits, in which a single neuron is mistakenly broken into several segments. The authors used (Hubbard et al. 2020) for visualisation and semi-automated proofreading, in which they first addressed large false mergers. In the next phase, the largest remaining pieces are merged into neuron shapes using a combination of machine-suggested edits 31. Finally, the proofreaders used NeuTu (Zhao et al. 2018) and Neu3 (Hubbard et al. 2020) to connect remaining isolated fragments (segments) to already constructed neurons.

Cell Type Determination. Referring to traditional genetic and optical methods, the authors delineate the neuron type(and sub-cell type, such as layers and slices) of the hemibrain. This process use the criteria of synapse density, glial boundaries, gene expression profile (Jenett et al. 2012b), neural tracts, and detailed neuron wiring, similar in spirit to the methods of  (Scheffer et al. 2020).

Data reprocessing. All the above operations are done by the authors of (Scheffer et al. 2020), who put the relevant data on neuPrint+(https://neuprint.janelia.org). We download the relevant raw data comprising 21,739 neuronal skeleton datas(3D point sets), which is categorized into 5,555 classes. We subject these categories to a coarsening process, resulting in the consolidation of 5555 initial categories into 380 distinct categories. This consolidation is predicated upon the aggregation of neurons belonging to the same overarching category but distributed across different hierarchical or subcategorical tiers. Subsequent to this treatment, there remain 188 macro-categories encompassing no more than 3 constituent neurons, prompting the exclusion of these instances, amounting to the discarding of 339 neurons. Among the remaining 192 categories housing 21,400 neurons, these neurons are interlinked by a total of 3,307,248 edges (Connection strength is denoted by the number of synapses between two neurons). Within this assemblage of 21,400 neurons, a subset of 2016 neurons bears the label ”None”. These neurons are exclusively utilized in training the Connectome Encoder to harness their connectivity; however, during the backpropagation phase for gradient updates, they remain inactive.

E. Reprocessing H01 dataset

The authors (Shapson-Coe et al. 2021) acquire a rapidly preserved human surgical sample from the temporal lobe of the cerebral cortex. Similar to HemiBrain, this specimen undergone processes such as sample slicing, imaging, segmentation, among others, culminating in the acquisition of relevant computational reconstructions. The original data is downloaded from the website, comprising 15,554 neurons interlinked by 28,246 edges (edge strength determined by synaptic quantities between two neurons). Notably, 14,458 neurons originate from six distinct layers of the human frontal lobe. And the remaining 1,096 neurons lack discernible labels; their role is solely confined to supplying connectivity during the training of the Connectome Encoder and does not contribute to backpropagation.

F. Hyperparametric analysis of α𝛼\alphaitalic_α and β𝛽\betaitalic_β in in main text’s Eq. (2).

We provide more detailed hyper-parameter settings: α𝛼\alphaitalic_α in Eq. (2) takes value of 0.1, and β𝛽\betaitalic_β in Eq. (2) takes value of 0.5, and the two hyperparameters have been explored experimentally.

NetNet-C’s performance on HemiBrain in different settings of α𝛼\alphaitalic_α and β𝛽\betaitalic_β are shown in Table 5.

α𝛼\alphaitalic_α-β𝛽\betaitalic_β 0.1 0.3 0.5 0.7 0.9
0.1 0.5262 0.4883 0.5168 0.5103 0.5014
0.3 0.4313 0.4505 0.4280 0.4584 0.4707
0.5 0.4201 0.3897 0.3617 0.4093 0.3986
0.7 0.1916 0.1678 0.1921 0.1981 0.1916
0.9 0.1056 0.1140 0.1308 0.1168 0.1182
Table 5: NetNet-C’s performance on HemiBrain with varying α𝛼\alphaitalic_α and β𝛽\betaitalic_β.

NetNet-C’s performance on H01 in different settings of α𝛼\alphaitalic_α and β𝛽\betaitalic_β are shown in Table 6.

α𝛼\alphaitalic_α-β𝛽\betaitalic_β 0.1 0.3 0.5 0.7 0.9
0.1 0.6084 0.6077 0.6141 0.6019 0.6051
0.3 0.5543 0.5820 0.5884 0.5736 0.5775
0.5 0.5023 0.4740 0.5138 0.4900 0.5087
0.7 0.3711 0.3299 0.4013 0.3833 0.3736
0.9 0.3299 0.3299 0.3299 0.3299 0.3299
Table 6: NetNet-C’s performance on H01 with varying α𝛼\alphaitalic_α and β𝛽\betaitalic_β.

NetNet’s performance on HemiBrain in different settings of α𝛼\alphaitalic_α and β𝛽\betaitalic_β are shown in Table 7.

α𝛼\alphaitalic_α-β𝛽\betaitalic_β 0.1 0.3 0.5 0.7 0.9
0.1 0.9118 0.9061 0.9154 0.9025 0.8762
0.3 0.9216 0.9174 0.9133 0.9149 0.9138
0.5 0.9138 0.9195 0.9092 0.9180 0.9128
0.7 0.9030 0.9112 0.9087 0.9221 0.9102
0.9 0.9097 0.8978 0.9107 0.9040 0.8968
Table 7: NetNet’s performance on HemiBrain with varying α𝛼\alphaitalic_α and β𝛽\betaitalic_β.

NetNet’s performance on H01 in different settings of α𝛼\alphaitalic_α and β𝛽\betaitalic_β are shown in Table 8.

α𝛼\alphaitalic_α-β𝛽\betaitalic_β 0.1 0.3 0.5 0.7 0.9
0.1 0.9448 0.9467 0.9474 0.9488 0.9488
0.3 0.9448 0.9405 0.9550 0.9439 0.9474
0.5 0.9343 0.9315 0.9301 0.9377 0.9467
0.7 0.9426 0.9232 0.9232 0.9100 0.9301
0.9 0.9059 0.9100 0.9128 0.9163 0.9114
Table 8: NetNet’s performance on H01 with varying α𝛼\alphaitalic_α and β𝛽\betaitalic_β.

G. Hyperparametric analysis on number of encoder layers

To investigate the impact of the number of layers, N1𝑁1N1italic_N 1 and N2𝑁2N2italic_N 2, in Connectome Encoder and Skeleton Encoder on the experimental results, repectively. We design the variants of NeuNet with different combinations of encoder layers. These variants are employed for neuron classification experiments on the HemiBrain and H01 datasets, and the results are illustrated in Figure 7. From Figure 7, it is evident that the NeuNet demonstrates robustness to variations in the number of layers in both the Connectome Encoder and Skeleton Encoder, consistently maintaining an accuracy above 0.8 across various variants. Considering the trade-off between computational efficiency and accuracy, our final NeuNet configuration employs a 64-layer Skeleton Encoder and a 3-layer Connectome Encoder.

Refer to caption
Figure 7: The impact of the number of layers in the Connectome Encoder(N1subscript𝑁1N_{1}italic_N start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT) and Skeleton Encoder(N2subscript𝑁2N_{2}italic_N start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT).

H. Confusion Matrix

The accuracy confusion matrix visualization of the categories for both datasets is shown in Figure 8, where Figure 8(b) shows only the top 50 classes with the highest number. From this, we can see that most of the categories have an accuracy rate of 90% or higher.

Refer to caption
(a) HemiBrain
Refer to caption
(b) H01
Figure 8: Accuracy confusion matrix of NeuNet on the HemiBrain and H01 dataset. Where HemiBrain only shows the accuracy of the top-50 classes of 191.

I. HemiBrain’s neuron classes

Delta (protocerebral bridge Delta between glomeruli)
vDeltaA-M (fan-shaped body vertical Delta within a single column)
hDeltaA-M (fan-shaped body horizontal Delta across columns)
EL (Ellipsoid body - Lateral accessory lobe)
EPG (Ellipsoid body - Protocerebral bridge - Gall)
ER (Ellipsoid body Ring neuron)
FB (Fan-shaped Body)
FC1A-3 (Fan-shaped body - Crepine)
FR (Fan-shaped body - Rubus)
FS1A-4C (Fan-shaped body - Superior medial protocerebrum)
IbSpsP (Inferior bridge - Superior posterior slope - Protocerebral bridge)
LCNOp (Lateral accessory lobe - Crepine - NOduli)
LNO (Lateral accessory lobe - NOduli)
GLNO (Gall - Lateral accessory lobe - Noduli)
LPsP (Lateral accessory lobe - Posterior slope - Protocerebral bridge)
P (Protocerebral bridge)
P6-8P9 (Protocerebral bridge [glomerulus ID1] Protocerebral bridge)
PEG (Protocerebral bridge - Ellipsoid body - Gall)
PEN_a(PEN1),_b(PEN2) (Protocerebral bridge - Ellipsoid body - Noduli)
PFG (Protocerebral bridge - Fan-shaped body - Gall surrounding region)
PFL (Protocerebral bridge - Fan-shaped body - Lateral accessory lobe)
PFN (Protocerebral bridge - Fan-shaped body - Noduli)
PFR (Protocerebral bridge - Fan-shaped body - Round body)
SA1-3 (Superior medial protocerebrum - Asymmetrical body)
SAF (Superior medial protocerebrum - Asymmetrical body - Fan-shaped body)
SpsP (Superior posterior slope - Protocerebral bridge)
KC (Kenyon Cell gamma lobe)
MBON0 (Mushroom Body Output Neuron)
APL (Anterior Paired Lateral)
DPM (Dorsal Paired Medial)
MB-C (Mushroom Body - Calyx)
PAM (MB-associated DAN, Protocerebral Anterior Medial cluster)
PPL (MB-associated DAN, Protocerebral Posterior Lateral 1 cluster)
PPM (Protocerebral Posterior Medial 1/2 clusters)
PAL (Protocerebral/paired Anterior Lateral cluster)
OA-ASM (OctopAmine - Anterior Superior Medial)
OA-VPM (OctopAmine - ventral paired median)
OA-VUM (OctopAmine - ventral unpaired median anterior)
5-HTPLP (5-HT Posterior lateral protocerebrum)
5-HTPMPD (Posterior medial protocerebrum, dorsal)
5-HTPMPV (Posterior medial protocerebrum, ventral)
CSD (Serotonin-immunoreactive Deutocerebral neuron)
AstA1 (Allatostatin A)
CRZ (Corazonin)
DSKMP1A, 1B (Drosulfakinin medial protocerebrum [type ID])
NPFL1-I (Neuropeptide F lateral large)
NPFP (Neuropeptide F dorso median)
PI (Pars Intercerebralis)
SIF (SIFamide)
DN (Dorsal Neuron)
DN1pA, B (Dorsal Neuron 1 posterior [type ID])
l-LNv (large Lateral Neuron ventral)
LNd (Lateral Neuron dorsal)
LPN (Lateral Posterior Neuron)
s-LN (small Lateral Neuron ventral)
aDT (anterior DeuTocerebrum)

aIP (anterior Inferior Protocerebrum)
aSP-f1-4, g1-3B (anterior Superior Protocerebrum)
aSP8, 10A-10C (anterior Superior Protocerebrum)
pC (doublesex-expressing posterior Cells)
oviDN (Oviposition Descending Neuron)
oviIN (Oviposition Inhibitory Neuron)
SAG (Sex peptide Abdominal Ganglion)
vpoDN (vaginal plate opening descending neuron)
vpoEN (vaginal plate opening excitatory neuron)
aM (accessory Medulla)
CT (Complex neuropils Tangential)
LC (Lobula Columnar)
LLPC (Lobula - Lobula Plate Columnar)
LPC (Lobula Plate Columnar)
LPLC (Lobula Plate - Lobula Columnar)
LT (Lobula Tangential)
MC (Medulla Columnar)
DCH (Dorsal Centrifugal Horizontal)
H (Horizontal)
HSN, E, S (Horizontal System North, Equatorial, South)
VS (Vertical System) VCH (Ventral Centrifugal Horizontal)
Li (Lobula intrinsic)
HB (Hofbauer-Buchner)
DN (Descending Neuron cell)
DNES1-3 (Descending Neuron going out to ESophagus)
MDN (Moonwalker Descending Neuron)
ORN_D, DA, DC, DL, DM, DP, VA, VC, VL, VM (Olfactory Receptor Neuron)
TRN_VP (Thermo-Receptor Neuron)
HRN_VP (Hygro-Receptor Neuron)
JO-ABC (Johnston’s Organ auditory receptor neuron- [AMMC zone ID])
OCG (OCellar Ganglion neuron)
D_adPN, DA1_lPN, DC2_adPN, DL3_lPN, DM4_vPN, DP1l_adPN, VA1d_adPN, VC2_lPN, VL2p_vPN, VM7d_adPN, VP2_l2PN (uniglomerular [glomerulus ID] _ [cell cluster ID] Projection Neuron)
VP1l+_lvPN, VP3+_vPN (uni+glomerular [glomerulus ID]+ _ [cell cluster ID] Projection Neuron, arborizing in a glomerulus and a few neighboring areas)
VP1m+VP2_lvPN, VP4+VL1_l2PN (biglomerular [glomerulus ID1], _ [cell cluster ID] Projection Neuron, arborizing in two glomeruli)
M_smPN, adPN, spPN, lPNm11A-13, l2PN, lvPNm24-48, lv2PN, vPN, ilPN, imPN (Multiglomerular_ [cell cluster ID] Projection Neuron)
MZ_lvPN, lv2PN (Multiglomerular and subesophageal Zone _ [cell cluster ID] Projection Neuron)
Z_lvPN, Z_vPN (subesophageal Zone only _ [cell cluster ID] Projection Neuron )
lLN, v2LN, il3LN, l2LN, vLN ([cell cluster ID] Local Neuron )
mAL, B, C, D (mediodorsal Antennal Lobe neuron [type ID])
AL-AST (Antennal Lobe - Antenno-Subesophageal Tract)
AL-MBDL (Antennal Lobe - Median BunDLe)
ALBN (Antennal Lobe Bilateral Neuron)
LHAD (Lateral Horn Anterior Dorsal cell cluster)
ALIN (Antennal Lobe INput neuron)
LHAV (Lateral Horn Anterior Ventral cell cluster)
LHPD (Lateral Horn Posterior Dorsal cell cluster)
LHPV (Lateral Horn Posterior Ventral cell cluster)
LHCENT (Lateral Horn CENTrifugal)
LHMB (Lateral Horn - Mushroom Body)
AOTU (Anterior Optic TUbercle)
TuBu01-10, A, B (anterior optic Tubercle - Bulb [type ID])
ATL (Antler)
AVLP (Anterior VentroLateral Protocerebrum)
CL (CLamp)
CRE (CREpine)
IB (Inferior Bridge)
LAL (Lateral Accessory Lobe)
PLP (Posterior Lateral Protocerebrum)
PS (Posterior Slope)
PVLP (Posterior VentroLateral Protocerebrum)
SAD (SADdle)
AMMC-A (Antennal Mechanosensory and Motor Center)
SLP (Superior Lateral Protocerebrum)
SIP (Superior Intermediate Protocerebrum)
SMP (Superior Medial Protocerebrum)
DGI (Dorsal Giant Interneuron)
VES (VESt)
WED (WEDge)
WEDPN (WEDge Projection Neuron)

Acknowledgments

This work is partially supported by National Key R&D Program of China (2023YFC2705700), the National Natural Science Foundation of China (62206202, 62225113), China Postdoctoral Science Foundation, China (2022M712461), Artificial Intelligence Innovation Project of Wuhan Science and Technology Bureau (No. 2022010702040070), The Fundamental Research Funds for the Central Universities, China (2042022kf1043).

References

  • Armañanzas and Ascoli (2015) Armañanzas, R.; and Ascoli, G. A. 2015. Towards the automatic classification of neurons. Trends in Neurosciences, 38(5): 307–318.
  • Berck et al. (2016) Berck, M. E.; Khandelwal, A.; Claus, L.; Hernandez-Nunez, L.; Si, G.; Tabone, C. J.; Li, F.; Truman, J. W.; Fetter, R. D.; Louis, M.; et al. 2016. The wiring diagram of a glomerular olfactory system. Elife, 5.
  • Buckner et al. (2005) Buckner, R. L.; Snyder, A. Z.; Shannon, B. J.; LaRossa, G.; Sachs, R.; Fotenos, A. F.; Sheline, Y. I.; Klunk, W. E.; Mathis, C. A.; Morris, J. C.; et al. 2005. Molecular, structural, and functional characterization of Alzheimer’s disease: evidence for a relationship between default activity, amyloid, and memory. Journal of Neuroscience, 25(34): 7709–7717.
  • Buhmann et al. (2021) Buhmann, J.; Sheridan, A.; Malin-Mayor, C.; Schlegel, P.; Gerhard, S.; Kazimiers, T.; Krause, R.; Nguyen, T. M.; Heinrich, L.; Lee, W.-C. A.; et al. 2021. Automatic detection of synaptic partners in a whole-brain Drosophila electron microscopy data set. Nature Methods, 18(7): 771–774.
  • Chen et al. (2020) Chen, M.; Wei, Z.; Huang, Z.; Ding, B.; and Li, Y. 2020. Simple and deep graph convolutional networks. In International Conference on Machine Learning (ICML), 1725–1735. PMLR.
  • Chiang et al. (2011) Chiang, A.-S.; Lin, C.-Y.; Chuang, C.-C.; Chang, H.-M.; Hsieh, C.-H.; Yeh, C.-W.; Shih, C.-T.; Wu, J.-J.; Wang, G.-T.; Chen, Y.-C.; et al. 2011. Three-dimensional reconstruction of brain-wide wiring networks in Drosophila at single-cell resolution. Current Biology, 21(1): 1–11.
  • Clements et al. (2020) Clements, J.; Dolafi, T.; Umayam, L.; Neubarth, N. L.; Berg, S.; Scheffer, L. K.; and Plaza, S. M. 2020. neuPrint: analysis tools for EM connectomics. BioRxiv.
  • Costa et al. (2016a) Costa, M.; Manton, J. D.; Ostrovsky, A. D.; Prohaska, S.; and Jefferis, G. S. 2016a. NBLAST: rapid, sensitive comparison of neuronal structure and construction of neuron family databases. Neuron, 91(2): 293–311.
  • Costa et al. (2016b) Costa, M.; Manton, J. D.; Ostrovsky, A. D.; Prohaska, S.; and Jefferis, G. S. 2016b. NBLAST: rapid, sensitive comparison of neuronal structure and construction of neuron family databases. Neuron, 91(2): 293–311.
  • Eberle et al. (2015) Eberle, A.; Mikula, S.; Schalek, R.; Lichtman, J.; Tate, M. K.; and Zeidler, D. 2015. High-resolution, high-throughput imaging with a multibeam scanning electron microscope. Journal of Microscopy, 259(2): 114–120.
  • Economo et al. (2016) Economo, M. N.; Clack, N. G.; Lavis, L. D.; Gerfen, C. R.; Svoboda, K.; Myers, E. W.; and Chandrashekar, J. 2016. A platform for brain-wide imaging and reconstruction of individual neurons. Elife, 5: e10566.
  • Fulcher and Fornito (2016) Fulcher, B. D.; and Fornito, A. 2016. A transcriptional signature of hub connectivity in the mouse connectome. Proceedings of the National Academy of Sciences, 113(5): 1435–1440.
  • Gasteiger, Bojchevski, and Günnemann (2018) Gasteiger, J.; Bojchevski, A.; and Günnemann, S. 2018. Predict then Propagate: Graph Neural Networks meet Personalized PageRank. In International Conference on Learning Representations (ICLR).
  • Gillette and Ascoli (2015) Gillette, T. A.; and Ascoli, G. A. 2015. Topological characterization of neuronal arbor morphology via sequence representation: I-motif analysis. BMC Bioinformatics, 16: 1–15.
  • Gong et al. (2013) Gong, H.; Zeng, S.; Yan, C.; Lv, X.; Yang, Z.; Xu, T.; Feng, Z.; Ding, W.; Qi, X.; Li, A.; et al. 2013. Continuously tracing brain-wide long-distance axonal projections in mice at a one-micron voxel resolution. Neuroimage, 74: 87–98.
  • Greene, Kim, and Seung (2016) Greene, M. J.; Kim, J. S.; and Seung, H. S. 2016. Analogous convergence of sustained and transient inputs in parallel on and off pathways for retinal motion computation. Cell Reports, 14(8): 1892–1900.
  • Hamilton, Ying, and Leskovec (2017) Hamilton, W.; Ying, Z.; and Leskovec, J. 2017. Inductive representation learning on large graphs. In Conference on Neural Information Processing Systems (NeurIPS), volume 30.
  • Hayworth et al. (2015) Hayworth, K. J.; Xu, C. S.; Lu, Z.; Knott, G. W.; Fetter, R. D.; Tapia, J. C.; Lichtman, J. W.; and Hess, H. F. 2015. Ultrastructurally smooth thick partitioning and volume stitching for large-scale connectomics. Nature Methods, 12(4): 319–322.
  • Huang, Scheffer, and Plaza (2018a) Huang, G. B.; Scheffer, L. K.; and Plaza, S. M. 2018a. Fully-automatic synapse prediction and validation on a large data set. Frontiers in Neural Circuits, 12: 87.
  • Huang, Scheffer, and Plaza (2018b) Huang, G. B.; Scheffer, L. K.; and Plaza, S. M. 2018b. Fully-automatic synapse prediction and validation on a large data set. Frontiers in neural circuits, 12: 87.
  • Hubbard et al. (2020) Hubbard, P. M.; Berg, S.; Zhao, T.; Olbris, D. J.; Umayam, L.; Maitin-Shepard, J.; Januszewski, M.; Katz, W. T.; Neace, E. R.; and Plaza, S. M. 2020. Accelerated EM connectome reconstruction using 3D visualization and segmentation graphs. BioRxiv, 2020–01.
  • Januszewski et al. (2018a) Januszewski, M.; Kornfeld, J.; Li, P. H.; Pope, A.; Blakely, T.; Lindsey, L.; Maitin-Shepard, J.; Tyka, M.; Denk, W.; and Jain, V. 2018a. High-precision automated reconstruction of neurons with flood-filling networks. Nature Methods, 15(8): 605–610.
  • Januszewski et al. (2018b) Januszewski, M.; Kornfeld, J.; Li, P. H.; Pope, A.; Blakely, T.; Lindsey, L.; Maitin-Shepard, J.; Tyka, M.; Denk, W.; and Jain, V. 2018b. High-precision automated reconstruction of neurons with flood-filling networks. Nature Methods, 15(8): 605–610.
  • Jenett et al. (2012a) Jenett, A.; Rubin, G. M.; Ngo, T.-T.; Shepherd, D.; Murphy, C.; Dionne, H.; Pfeiffer, B. D.; Cavallaro, A.; Hall, D.; Jeter, J.; et al. 2012a. A GAL4-driver line resource for Drosophila neurobiology. Cell Reports, 2(4): 991–1001.
  • Jenett et al. (2012b) Jenett, A.; Rubin, G. M.; Ngo, T.-T.; Shepherd, D.; Murphy, C.; Dionne, H.; Pfeiffer, B. D.; Cavallaro, A.; Hall, D.; Jeter, J.; et al. 2012b. A GAL4-driver line resource for Drosophila neurobiology. Cell reports, 2(4): 991–1001.
  • Kainmueller et al. (2008) Kainmueller, D.; Lamecker, H.; Zachow, S.; and Hege, H.-C. 2008. Coupling deformable models for multi-object segmentation. In Biomedical Simulation: 4th International Symposium, ISBMS 2008, London, UK, July 7-8, 2008 Proceedings 4, 69–78. Springer.
  • Kanari et al. (2019) Kanari, L.; Ramaswamy, S.; Shi, Y.; Morand, S.; Meystre, J.; Perin, R.; Abdellah, M.; Wang, Y.; Hess, K.; and Markram, H. 2019. Objective morphological classification of neocortical pyramidal cells. Cerebral Cortex, 29(4): 1719–1735.
  • Khairy, Denisov, and Saalfeld (2018) Khairy, K.; Denisov, G.; and Saalfeld, S. 2018. Joint deformable registration of large EM image volumes: A matrix solver approach. arXiv preprint arXiv:1804.10019.
  • Krizhevsky, Sutskever, and Hinton (2012) Krizhevsky, A.; Sutskever, I.; and Hinton, G. E. 2012. Imagenet classification with deep convolutional neural networks. In Conference on Neural Information Processing Systems (NeurIPS), volume 25.
  • LeCun et al. (1989) LeCun, Y.; Boser, B.; Denker, J. S.; Henderson, D.; Howard, R. E.; Hubbard, W.; and Jackel, L. D. 1989. Backpropagation applied to handwritten zip code recognition. Neural Computation, 1(4): 541–551.
  • Lee et al. (2016) Lee, W.-C. A.; Bonin, V.; Reed, M.; Graham, B. J.; Hood, G.; Glattfelder, K.; and Reid, R. C. 2016. Anatomy and function of an excitatory network in the visual cortex. Nature, 532(7599): 370–374.
  • Li et al. (2022) Li, J.; Zhou, J.; Xiong, Y.; Chen, X.; and Chakrabarti, C. 2022. An adjustable farthest point sampling method for approximately-sorted point cloud data. In IEEE Workshop on Signal Processing Systems (SiPS), 1–6. IEEE.
  • Lu et al. (2022) Lu, Z.; Xu, C. S.; Hayworth, K. J.; Pang, S.; Plaza, S. M.; Scheffer, L. K.; Rubin, G. M.; Hess, H. F.; Rivlin, P. K.; and Meinertzhagen, I. A. 2022. En bloc preparation of Drosophila brains enables high-throughput FIB-SEM connectomics. Frontiers in Neural Circuits, 16: 917251.
  • Markram et al. (2015) Markram, H.; Muller, E.; Ramaswamy, S.; Reimann, M. W.; Abdellah, M.; Sanchez, C. A.; Ailamaki, A.; Alonso-Nanclares, L.; Antille, N.; Arsever, S.; et al. 2015. Reconstruction and simulation of neocortical microcircuitry. Cell, 163(2): 456–492.
  • Morgan et al. (2016) Morgan, J. L.; Berger, D. R.; Wetzel, A. W.; and Lichtman, J. W. 2016. The fuzzy logic of network connectivity in mouse visual thalamus. Cell, 165(1): 192–206.
  • Peng et al. (2015) Peng, H.; Hawrylycz, M.; Roskams, J.; Hill, S.; Spruston, N.; Meijering, E.; and Ascoli, G. A. 2015. BigNeuron: large-scale 3D neuron reconstruction from optical microscopy images. Neuron, 87(2): 252–256.
  • Pizer et al. (1987) Pizer, S. M.; Amburn, E. P.; Austin, J. D.; Cromartie, R.; Geselowitz, A.; Greer, T.; ter Haar Romeny, B.; Zimmerman, J. B.; and Zuiderveld, K. 1987. Adaptive histogram equalization and its variations. Computer vision, Graphics, and Image processing, 39(3): 355–368.
  • Qi et al. (2017a) Qi, C. R.; Su, H.; Mo, K.; and Guibas, L. J. 2017a. Pointnet: Deep learning on point sets for 3d classification and segmentation. In Computer Vision and Pattern Recognition (CVPR), 652–660.
  • Qi et al. (2017b) Qi, C. R.; Yi, L.; Su, H.; and Guibas, L. J. 2017b. Pointnet++: Deep hierarchical feature learning on point sets in a metric space. In Conference on Neural Information Processing Systems (NeurIPS), volume 30.
  • Resendez et al. (2016) Resendez, S. L.; Jennings, J. H.; Ung, R. L.; Namboodiri, V. M. K.; Zhou, Z. C.; Otis, J. M.; Nomura, H.; McHenry, J. A.; Kosyk, O.; and Stuber, G. D. 2016. Visualization of cortical, subcortical and deep brain neural circuit dynamics during naturalistic mammalian behavior with head-mounted microscopes and chronically implanted lenses. Nature Protocols, 11(3): 566–597.
  • Scheffer et al. (2020) Scheffer, L. K.; Xu, C. S.; Januszewski, M.; Lu, Z.; Takemura, S.-y.; Hayworth, K. J.; Huang, G. B.; Shinomiya, K.; Maitlin-Shepard, J.; Berg, S.; et al. 2020. A connectome and analysis of the adult Drosophila central brain. Elife, 9: e57443.
  • Schubert et al. (2019) Schubert, P. J.; Dorkenwald, S.; Januszewski, M.; Jain, V.; and Kornfeld, J. 2019. Learning cellular morphology with neural networks. Nature Communications, 10(1): 1–12.
  • Shapson-Coe et al. (2021) Shapson-Coe, A.; Januszewski, M.; Berger, D. R.; Pope, A.; Wu, Y.; Blakely, T.; Schalek, R. L.; Li, P. H.; Wang, S.; Maitin-Shepard, J.; et al. 2021. A connectomic study of a petascale fragment of human cerebral cortex. BioRxiv, 2021–05.
  • Shih et al. (2015) Shih, C.-T.; Sporns, O.; Yuan, S.-L.; Su, T.-S.; Lin, Y.-J.; Chuang, C.-C.; Wang, T.-Y.; Lo, C.-C.; Greenspan, R. J.; and Chiang, A.-S. 2015. Connectomics-based analysis of information flow in the Drosophila brain. Current Biology, 25(10): 1249–1258.
  • Sümbül et al. (2014) Sümbül, U.; Song, S.; McCulloch, K.; Becker, M.; Lin, B.; Sanes, J. R.; Masland, R. H.; and Seung, H. S. 2014. A genetic and computational approach to structurally classify neuronal types. Nature Communications, 5(1): 1–12.
  • Takemura et al. (2013) Takemura, S.-y.; Bharioke, A.; Lu, Z.; Nern, A.; Vitaladevuni, S.; Rivlin, P. K.; Katz, W. T.; Olbris, D. J.; Plaza, S. M.; Winston, P.; et al. 2013. A visual motion detection circuit suggested by Drosophila connectomics. Nature, 500(7461): 175–181.
  • Thekumparampil et al. (2018) Thekumparampil, K. K.; Wang, C.; Oh, S.; and Li, L.-J. 2018. Attention-based graph neural network for semi-supervised learning. arXiv preprint arXiv:1803.03735.
  • Udvary et al. (2022) Udvary, D.; Harth, P.; Macke, J. H.; Hege, H.-C.; de Kock, C. P.; Sakmann, B.; and Oberlaender, M. 2022. The impact of neuron morphology on cortical network architecture. Cell Reports, 39(2).
  • Van der Maaten and Hinton (2008) Van der Maaten, L.; and Hinton, G. 2008. Visualizing data using t-SNE. Journal of Machine Learning Research, 9(11).
  • Veličković et al. (2018) Veličković, P.; Cucurull, G.; Casanova, A.; Romero, A.; Liò, P.; and Bengio, Y. 2018. Graph Attention Networks. In International Conference on Learning Representations (ICLR).
  • Wagner, Regev, and Yosef (2016) Wagner, A.; Regev, A.; and Yosef, N. 2016. Revealing the vectors of cellular identity with single-cell genomics. Nature Biotechnology, 34(11): 1145–1160.
  • Wang et al. (2019) Wang, Y.; Sun, Y.; Liu, Z.; Sarma, S. E.; Bronstein, M. M.; and Solomon, J. M. 2019. Dynamic graph cnn for learning on point clouds. ACM Transactions On Graphics, 38(5): 1–12.
  • Welling and Kipf (2016) Welling, M.; and Kipf, T. N. 2016. Semi-supervised classification with graph convolutional networks. In International Conference on Learning Representations (ICLR).
  • Wu et al. (2019) Wu, F.; Souza, A.; Zhang, T.; Fifty, C.; Yu, T.; and Weinberger, K. 2019. Simplifying graph convolutional networks. In International Conference on Machine Learning (ICML), 6861–6871.
  • Xu et al. (2017) Xu, C. S.; Hayworth, K. J.; Lu, Z.; Grob, P.; Hassan, A. M.; García-Cerdán, J. G.; Niyogi, K. K.; Nogales, E.; Weinberg, R. J.; and Hess, H. F. 2017. Enhanced FIB-SEM systems for large-volume 3D imaging. Elife, 6: e25916.
  • Xu et al. (2019a) Xu, C. S.; Pang, S.; Hayworth, K. J.; and Hess, H. F. 2019a. Enabling FIB-SEM systems for large volume connectomics and cell biology. bioRxiv, 852863.
  • Xu et al. (2019b) Xu, K.; Hu, W.; Leskovec, J.; and Jegelka, S. 2019b. How Powerful are Graph Neural Networks? In International Conference on Learning Representations (ICLR).
  • Zhao et al. (2021) Zhao, H.; Jiang, L.; Jia, J.; Torr, P. H.; and Koltun, V. 2021. Point transformer. In IEEE International Conference on Computer Vision (ICCV), 16259–16268.
  • Zhao et al. (2018) Zhao, T.; Olbris, D. J.; Yu, Y.; and Plaza, S. M. 2018. NeuTu: software for collaborative, Large-Scale, Segmentation-Based connectome reconstruction. Frontiers in Neural Circuits, 12: 101.
  • Zheng et al. (2018) Zheng, Z.; Lauritzen, J. S.; Perlman, E.; Robinson, C. G.; Nichols, M.; Milkie, D.; Torrens, O.; Price, J.; Fisher, C. B.; Sharifi, N.; et al. 2018. A complete electron microscopy volume of the brain of adult Drosophila melanogaster. Cell, 174(3): 730–743.
  • Zhu et al. (2017a) Zhu, J.-Y.; Park, T.; Isola, P.; and Efros, A. A. 2017a. Unpaired image-to-image translation using cycle-consistent adversarial networks. In IEEE International Conference on Computer Vision (ICCV), 2223–2232.
  • Zhu et al. (2017b) Zhu, J.-Y.; Park, T.; Isola, P.; and Efros, A. A. 2017b. Unpaired image-to-image translation using cycle-consistent adversarial networks. In IEEE International Conference on Computer Vision (ICCV), 2223–2232.
  • Zhu et al. (2022) Zhu, T.; Yao, G.; Hu, D.; Xie, C.; Gong, H.; and Li, A. 2022. MorphoGNN: Morphological embedding for single neuron with graph neural networks. bioRxiv, 2022–05.