Paper: Federated Causal Discovery from Heterogeneous Data (ICLR-2024)

Reviewer comment (Evaluation):
The paper conducts numerous experiments; however, it should provide a more in-depth analysis of the underlying reasons behind the experimental results, rather than just stating the observations.

Author response:
**A1**: Thanks a lot for the constructive suggestion. We would like to clarify that: due to the space limit in the main paper, we have provided some of the detailed analysis in the Appendix. For example, in Appendix A7.2, we concluded the observational results w.r.t. $F_1$ and SHD on synthetic datasets and then provided in-depth analysis on why those phenomena might happen (e.g., FedPC performed the worst, due to its strong assumptions on linear model and homogeneous data; FedDAG and NOTEARS-MLP-ADMM presented worse SHD results compared to our FedCDH, probably because both of them are continuous-optimization-based methods, which might suffer from various issues such as convergence and nonconvexity). 

Certainly, we are glad to incorporate your suggestion, to provide a more in-depth analysis for all other experiments. Therefore, we have updated our manuscript with a more detailed analysis, as you can see in Appendix A7.3, A7.4, A7.5, A8.1, and A8.2.

Reviewer comment (Writing):
The section of method overuses symbols, leading to difficulties in understanding.

Author response:
**A2**: We are grateful for your straightforward and helpful comment. In order to improve readability and avoid symbol confusion, we have summarized and categorized the symbols throughout the paper and put them into the table in Appendix A1. Hopefully, this table can be helpful for the readers, especially when reading the equations and theorems.

Reviewer comment (Writing):
In the penultimate paragraph of page 2, the authors say ‘Let k be the client index, and ℧ be the domain index’, what’s the difference between client and domain?

Author response:
**A4:** Thanks a lot for this great question. A client is a decentralized entity in federated learning, while a domain typically refers to a distinct category of data that share common features. Usually, when one set of data is heterogeneous, we say that the data distribution is changing across different domains. In our paper, we assume that one client corresponds to one unique domain. We have updated this detail in Section 2 of our manuscript.

Reviewer comment (Writing):
In the last paragraph of page 2, the authors say ‘When the data is heterogeneous, there must be some causal models changing across different domains. The changes may be caused by the variation of causal strengths or noise variances.’ The authors should better clarify what is the change of causal models.

Author response:
**A5:** Thanks for raising this great suggestion. By "the change of causal model", we intend to say that: the structural causal model (SCM) $V_i = f_i(PA_i, \epsilon_i)$ is different/changing across different domains, that is, the function $f_i$ or the distribution of the noise $\epsilon_i$ is different/changing across different domains. 
 
Taking a linear SCM as an example, more specifically, we have $V_i = \sum_{j\in PA_i} a_{ij} V_j + \epsilon_i$, where $a_{ij}$ are the coefficients or causal strengths in the causal function and $\epsilon_i$ is the noise term. When we say the causal models change, then either the causal strength $a_{ij}$ or the noise variance of $\epsilon_i$ will change across domains.

We have included the discussion in Section 2 of the updated manuscript.

Reviewer comment (Experiments):
In the first paragraph of page 3, ψ(℧) and θi(℧) are functions of ℧, and ℧ is a positive integer from 1 to k. Actually, ℧ is a value defined by the authors, and does it have an impact on the results when it takes different values?

Author response:
**A6:** Thanks a lot for this insightful question. Theoretically, there is no impact on the results when it takes different values because this surrogate variable $\mho$ is essentially a discrete variable (more specifically, a categorical variable, with no numerical order among different values), a common approach to deal with such discrete variable is to use delta kernel (based on Kronecker delta function), and therefore it is reasonable to use random features to approximate the delta kernel for discrete variables. We have included these discussions in Section 3.3 of the updated manuscript.

Empirically, we have added one new set of experiments in Appendix A7.9 where we randomly shuffle the domain indices, and the results show that: the performances between the two sets of different domain indices are quite similar, and we may conclude that it has no obvious impact on the results when the domain indices take different values.

Reviewer comment (Theory):
In the fourth paragraph of page 3, as indicated by the authors, ℧ and Vi are connected by unobserved domain-changing variables ψ(℧) and θi(℧), so what does it mean of ‘If there is an edge between surrogate variable ℧ and observed variable Vi on Gaug’?

Author response:
**A7:** Thank you so much for this great point. In the context of the simplified augmented graph, for example in Figure 1(b), if there is an edge pointing from the surrogate variable $\mho$ to the observed variable $V_i$, we can say that the causal model related to $V_i$ is changing across different domains, in other words, the data distribution of $V_i$ is heterogeneous across domains. On the contrary, if there is no edge between the surrogate variable $\mho$ to the observed variable $V_k$, we can say that the data distribution of $V_k$ is invariant or homogeneous across domains. We have updated those details in Section 2 of our manuscript.

Reviewer comment (Theory):
the method requires that the different domains are known in the application

Author response:
Since our paper mainly focuses on heterogeneous data, that is why we assume each client has a different domain. However, our method can also be applied to the special case where all domains are the same (i.e., the data is homogeneous in all domains). In this case, there will be no edge to be found in our estimated causal graph between the surrogate variable (or domain index) $\mho$ and the observed variables $\boldsymbol{V}$, because no matter how $\mho$ changes, the distribution of $\boldsymbol{V}$ will always be the same, meaning that $\mho$ and $\boldsymbol{V}$ are independent. Furthermore, we can also leverage this characterization to infer which domains are similar or the same: feed the data from the interested domains to our method and check the estimated graph, if there is no edge between the the surrogate variable and all the observed variables, we can conclude that these domains are the same.

Reviewer comment (Theory):
why assume $L$ hidden confounders? How is L set in practice? Could we simply choose $d$ or $2^d$? In the theoretical evaluation, $L$ is assumed to be equal to the number of datapoints n which goes to infinity. Isn't that a problematic assumption, or did I misread the proof of Thm. 4?

Author response:
**A1:** Thanks for raising this great question. In Section 2, we use $L$ to denote the number of hidden confounders, where $L$ can be varying. The minimum value for $L$ can be 0, meaning that there is no latent confounder in the graph, while the maximum value can be $C_d^2=\frac{d(d+1)}{2}$ where $d$ is the number of observed variables, meaning that each pair of observed variables has a hidden confounder. Fortunately, we can directly work on the simplified augmented graph $\mathcal{G}_{aug}$ with surrogate variable $\mho$ as shown in Figure 1(b), where we have no need to specify the value of $L$. We have updated this discussion in Section 2 of our manuscript.  

However, $L$ in the proof of Theorem 4, has a different meaning, denoting the number of nonzero eigenvalues of the kernel matrices. We apologize for the double use of one symbol. We have replaced $L$ with $\beta$, and updated the proof of Theorem 4 in our manuscript.  

Furthermore, in order to improve the readability of our paper, we have summarized the most important symbols throughout the paper and added the notation table in Appendix A1.

Reviewer comment (Evaluation):
How does sharing local kernel matrices affect privacy?

Author response:
**A2:** Thanks for the question. We would like to clarify that: our method does not share the kernel matrices, instead, it shares our constructed covariance tensors. As we mentioned in Section 3.4, sharing the covariance tensor instead of the raw data can preserve data privacy to some extent. Moreover, if each client is required to not directly share the local covariance tensor, one can use some secure computation techniques such as secure multiparty computation [2], to further enhance the protection of data privacy.

Reviewer comment (Presentation):
The notation with bold $\mathbf{\psi}$ and normal $\psi$ is visually hard to distinguish.

Author response:
**A3:** Thanks for the great suggestions, which help improve the clarity of our manuscript. In order to distinguish between the two symbols, we have replaced the bold one $\boldsymbol{\psi}$ with $\boldsymbol{\tilde{\psi}}$. We have updated the manuscript accordingly in Section 2.

Reviewer comment (Theory):
The formulation with an underlying causal graph and an augmented causal graph is not clear to me. For me it made sense to either assume an underlying "augmented" graph that captures local differences, or to assume an underlying graph and local interventions - these interventions are then modeled via the augmented graph. If the latter is the case, this should be clarified.

Author response:
**A4:** Thanks for the constructive suggestion. We agree with the latter point that we assume an underlying graph and local interventions, which are then modeled via the augmented graph. In light of your suggestion, we have updated the manuscript accordingly.

Reviewer comment (Experiments):
Is it necessary to consider $\mho$ an observable variable? In the experiments, some additional information is used to decide the domain, but in general this is rarely possible. E.g., in [1] the domain is infered. What happens if you assumed that every client has a different domain and $\mho$ is the client index?

Author response:
**A5:** We appreciate your insightful comment. That is exactly our assumption—each client has a different domain and $\mho$ is the client/domain index (one client corresponds to one domain). Such an assumption is natural in the federated learning setting, because the data distribution may often be heterogenous across different clients/domains. Therefore, this client/domain index is an observable variable. We will append this detail in our revised manuscript.

Reviewer comment (Experiments):
Communication cost for small sample size.

Author response:
We sincerely appreciate your comment. As mentioned in the last Section “Discussion and Conclusion”, we acknowledged that one of the limitations of our paper is that: the efficiency of our summary statistics in reducing communication costs may not be considerable when the sample size n is small, because the raw data is in dimension $\mathbb{R}^{n{\times}d'}$ while the constructed covariance tensor is in dimension $\mathbb{R}^{d'×d'×h×h}$. However, even though the sample size is small, using our constructed covariance tensor could still enjoy other advantages, such as the preservation of data privacy, as mentioned in Section 3.4.

Reviewer comment (Experiments):
Why have a maximum number of clients of 10?

Author response:
Thanks a lot for the question. We would like to clarify that: following previous work [1], the number of clients in our synthetic experiments include 2, 4, 8, 16, and 32; therefore, the maximum number of clients we considered is 32 instead of 10. Moreover, our method actually does not require constraint on the number of clients. In other words, the number of clients can be any positive number.

Reviewer comment (Experiments):
How the datasets are divided into clients is unclear to me.

Author response:
Thanks for the great question. In our experiments, regarding the generation of synthetic heterogeneous data, we separately generate the data for each domain with different causal models and then combine them together, instead of generating the data and subsequently dividing. We have included this detail in our manuscript.