Venue: NeurIPS 2021 Conference

Reviews:

final_score: rating: 4: Ok but not good enough - rejection
review_content: summary: This paper tries to measure the structural similarity of the neural networks by associating them with simplicial complexes. The similarity between neural networks is then measured by the topological feature via persistence homology. The graph is generated by taking the neurons as graph nodes, and the edge weights are defined as the network parameters for the connected neurons.
The directed flag complex is attached to the constructed weighted directed graph, then the filtration, a family of simplicial complexes for the neural networks. The persistence diagram and persistence barcode are calculated for the filtration. They are used to show the three persistence summaries: persistence landscape, weighted silhouette and heat vectorizations. 
Experiments were carried out for various benchmarks for typical CNN architectures.
main_review: The topological similarity of neural networks is considered by computing the persistence features for the generated weighted graphs and complexes. It is an interesting idea. The experiments can show the persistence distances (persistence landscape, weighted silhouette and heat vectorizations) for the different architectures of neural networks.

* The proposed method and experiments consider the depth and width of the NNs, and how the neurons are linked, which are important factors for their performance. Curious how the computational blocks are linked can be reflected in the persistence metric for the similarity of the NNs.

* It is not clear whether the similarity reflected by the persistence homology has anything to do with the performance of the NNs for classification tasks.

* Maybe some pictures of the graphs and complexes for a specific CNN network can be shown. 

* Line 170-171, there is inconsistent for $\epsilon$ and $\epsilon_t$.

* Line 265, remove `show' in ', we obtained show small distances,'
limitations_and_societal_impact: The architecture of the NNs is determined by the initial design of the network and the specific task it works on. The proposed PH-based similarity measure is developed for the topological architecture of the NNs, where the trained network parameters are incorporated as edge weights. There are two main applications, including persistence inference: to learn the properties of the underlying manifold of data and to use persistence diagram to distinguish different types of data sets where the distances of certain points from the diagonal show the significant features of the data. So the features induced by the persistence homology is not direct to measure for the distance between network architectures. On the other hand, the experiments seem not sufficient to support the expected claim of the paper. More tests are needed for the various architectures of NNs, such as CNN, U-Net, ResNet, to show how the persistence feature can distinguish the architecture of the neural networks.
review_title: null

final_score: rating: 5: Marginally below the acceptance threshold
review_content: summary: In this work, the authors propose to characterize neural networks with a tool from topological data analysis, called persistence diagram, in order to be able to compare neural networks with different numbers of layers and/or neurons. More specifically, they show that one can filter the neural network computational graph using the edge weights (that are learnt during training of the network) to produce a filtered flag complex, from which persistent homology can be computed. Then, the authors interpreted the distances between the persistence diagrams obtained from networks with varying parameters (number of layers, neurons, labels), and showed that often, the distances have intuitive correlation with the complexity of the neural networks.
main_review: I have the following comments:

---It would be good to also mention the topological uncertainty (https://arxiv.org/abs/2105.04404), which is similar to neural persistence, in the related work section.

---How are neuron filtration values computed? Is it the minimum of all filtration values of edges that contain this node?

---As far as I understand, neuron activations are not used in the persistence diagram constructions. This could be added, for instance as potential filtration values for the nodes.

---It seems to me that the relationships between persistence diagrams and network architectures is actually quite intuitive: the more layers or neurons, the bigger the simplicial complexes, and thus the more points you will have in the persistence diagrams. That could explain the distance matrices presented in the article, without any real interpretation or relation with the capacity or generalization error of the architectures.

---I am not sure about how this similarity measure between neural networks can be used in practice. Is there any rule that could be used in order to do model selection, i.e., choose a specific architecture to use for a given data set or data science task, such as classification, regression, transfer learning etc?

Even though I like the proposed idea (and especially the comparison to Frobenius norms, which clearly shows its limitation and the advantages of using persistence), I feel like this work is still in an early shape, and would really benefit from a better interpretation of the distances (in terms of how persistence diagrams are computed), as well as more examples of practical uses.
limitations_and_societal_impact: Yes
review_title: null

final_score: rating: 3: Clear rejection
review_content: summary: This paper proposes a method to compare trained neural network based on extracting topological descriptors from their graphs. Two networks are then compared through the lens of these descriptors yielding a similarity score between networks, with the expectation that networks aiming at solving a similar task should be measured as being similar. Authors showcase their approach on qualitative experiments on different datasets of different nature. 
main_review: 
Quality:
The paper considers an interesting and possibly important question in machine learning, that is proposing similarity measures between neural networks. However, in my opinion, the paper suffers too many weaknesses in its current state to meet NeurIPS requirements. The two main issues I identify is the lack of formalism and the limited numerical experiments, see below for details.

Clarity / Motivation:
The paper lacks formalism and many (core) notions are not explicitly defined, making impossible a rigorous understanding of what should be expected and judged as a good result. Given that the paper addresses a somewhat novel problem ("there are no well-known methods for efficiently characterizing neural networks", line 20), it is crucial to set a clear and rigorous baseline. 
- "solving a task" (line 17): when should we consider that two networks solve a given task? For instance, two networks may be trained on a same dataset (say, MNIST) with similar train/test accuracies, but one may be tuned to be robust to outliers or adversarial attacks, be calibrated, etc. (Why) Should these networks be similar?
- "practical properties of neural networks" (line 299).
Furthermore, there is no intuition given on why should the proposed approach be relevant to solve this problem. The persistence diagram (PD) of a given network (turned into a flag complex) does depend on the network weights (while the paper claims that "two networks solving the same task should be measured as similar, regardless of the specific weights"), thus why should we expect the (distance between) PDs (vectorization) to be weight/architecture independent? (*)

Experiments:
In my opinion, the experiments face some issues.
- [Limited benchmark] The experiments are restricted to MLP (line 23), which appears as a major limitation given the goal to design a descriptor "with independence to the architecture" (line 22). 
- [Baseline] The paper use matrix norms as a baseline, evaluated on the control experiment. However, the control experiments consists of switching the _input order_. If my understanding is correct, it is thus *obvious* that the graphs' adjacency matrices will be different (while, indeed, the PD is invariant to such transformations).
- [Scalability] The method requires to store the whole network graph at once, which is likely to be infeasible with more sophisticated network architectures. Even small CNN, when represented as graphs, may be very large (*) and extracting the corresponding PD is likely to be infeasible. To that respect, the approach of Rieck at al., [30], is more reasonnable.
- [Qualitative Results] The results are mostly qualitative, making harder to assess if they valid - or not - the proposed approach. However, my understanding of these results suggest that the proposed approach does not meet the expectations claimed in the introduction (independence to weights/architecture). For instance, on MNIST (Figure 4, a), a network in situation 1 is closer to networks in situation 15-19 than most networks in its own cluster (1-4). Complementary experiments in the supplementary material (e.g. Figure 6) do not exhibit a clear block structure either. Furthermore, as said in lines 272, 284, the proposed characterization is not architecture/weight independent, one of the claimed goal mentioned in the introduction.

On a more positive side, I think the results proposed in Figure 3 are interesting. Showing that the PD of the flag complex is invariant with respect to the network training would be an interesting contribution. 

Originality:
The approach proposed by the paper is novel and may be interesting, provided sufficient formalism on its goals and more convincing experiments.


Minor remarks and suggestions:
- (Eq 1) I think the denominator is simply $\max(|W|)$. 
- I think considering _superlevel sets_ filtrations when building the PDs would simplify notations. 
- (line 240) I think "5 randomizations of weight initializations" should be "5 random input orderings". 
- Lines 259-263: clarity would be greatly improved with some equation here. 
- The results on the Persistence Lanscape, and its discrepency with respect to the persistence silhouette, is somewhat surprising given the similarity of these two objects. Which distance/norm is used on these vectorizations? Also, why not computing the diagram distances directly?
- (*) For instance, the [PyTorch CNN tutorial for MNIST](https://github.com/pytorch/examples/blob/master/mnist/main.py) connects (among other things) a (26x26x32) layer to a (24x24x64) one.
limitations_and_societal_impact: NA
review_title: null

final_score: rating: 5: Marginally below the acceptance threshold
review_content: summary: This paper presents the similarity measure between neural networks based on the graph characterization strategy of neural networks. This graph characterization strategy is based on Persistent Homology in which neural networks can be represented as abstract simplicial complex. In this work, neural networks are considered as weighted directed graphs which can be further considered as simplicial complexes and we can obtain Persistent Diagrams of these graphs. Then, we can compute distances between Persistent Diagrams of different neural networks. Only MLP layers are considered to compute the PDs. Results are shown on four popular datasets from two different areas of images and text. Experiments with different persistence summaries are provided to compute the distance matrices and results are compared between them on different datasets.
main_review: Strengths: 

1. The idea of considering weight matrices in MLP as weighted directed graphs and comparing MLPs based on PH is interesting. 
2. In the area of NN+TDA, where there are only a few works to compare NNs, this work can be a notable contribution. 
3. Paper is clearly explained and easy to follow. 
4. Experiments are conducted on different hyperparameters of NN for different sets of values. 
5. Some of the experiments lead to results that are also intuitively correct, especially in the case of results from heat and silhouette discretization.

Weaknesses: 

1. There is no example figure showing NN layers and how the layers are converted to the weighted directed graph, combining all the layers into one graph, etc. 
2. Some details are not clearly mentioned. For example, are we considering neurons from layer1 and layer2 as the |V| in the graph for 2 layers NN? And all the neurons from all the layers of NN as |V| for more than 2 layers NN. 
3. Method takes only MLP into account. However, CNNs are also the most used which is adapted by all kinds of networks these days. Even the results from Fig 4 highlight this point. 
4. Due to point 2. and 3., the method seems trivial, and I’m not sure about its significance. 
5. I see that the expected results are captured in some experiments for some datasets due to only MLP weights being taken or suitable discretization are used, etc. This raises the question of the generalizability of this method to compare NNs. 
6. From the results, it has been observed that the heat and silhouette discretization work best. On the other hand, landscape discretization does not work well here. But why is that the case? Why doesn’t landscape work or heat and silhouette work? This is not analyzed or explained in the paper. 
7. From the related work, I understand that there is no work that compares NN using a distance matrix based on TDA or PH. However, I can see the possibility of extending neural persistence work to compare the average neural persistence of two NNs using bottleneck or Wasserstein distance. This result can be added and compared with the proposed method in the paper. 
limitations_and_societal_impact: No. This paper is based on comparing neural network architectures. I believe there is no negative societal impact of this work.
review_title: null

Meta-review: The paper proposes a similarity measure for neural networks, which is an interesting topic.  While the proposed measure based on PH is of some significance, a systematic understanding of the resulting distances is still premature, and it is not clear how to use the measure in practice.  From these evaluations, we need to judge that this paper is unfortunately below the acceptance threshold.  
Decision: Reject