Summary
This work develops an algorithm for gradient-based domain generalisation that seeks to address particular issues arising from prior work tackling the same problem. In the case of Fish [Shi et al., 2022], the claim is that the IGDM measure, through the Fish algorithm, ends up having issues with the gradient direction fluctuating. In the case of Fishr [Rame et al., 2022], the claim is that mean-squared error employed to reduce angle between gradients can have a degenerate solition when the magnitute of the two gradients are zero.
To handle this, an new algorithm termed pareto optimal gradient matching (POGM) is developed, employed a meta-learning step to constrain the typical GIP-derived gradient from straying too far from the standard ERM gradient.
The utility of this method is first demonstrated on a toy setting before full evaluation on the DomainBed benchmarks.
Strengths
The idea of effectively constraining or regularising the DG-targeted GIP by ERM seems novel and interesting, and the results appear to show that things improve (modulo weaknesses discussed below).
Moreover, the meta-learning setup seems to additionally allow for efficiencies in terms of choosing when to optimise the meta learner itself, rather than all the time. The experiments seem quite thorough also with well-standardised settings and hyperparameter search.
Weaknesses
The main weaknesses with this work are the following:
a. The discussion of the shotcomings of Fish and Fishr are quite difficult to make sense of. For a piece of work that relies on these for motivating a fix, this should be done much better than it currently is, where it seems quite rushed and disjointed.
1. Figure 1 has a lot of stuff in it that isn't explained in the captions.
What is the reader to make of the arrows and trajectory of the optimisation in (1a) with regard to gradient fluctuations?
What are the hatted version of $$g$$ in (1b), and what is the equation trying to say about gradient magnitudes being eliminated?
2. The text and plots describing the issues (Sec 3.2 & 3.3) are incredibly terse and don't explain things in the figure. E.g. what is 'Fishr_10000' vs 'Fishr_2500'? What do subplots (2c) and (2d) have to do with the magnitude elimination?
Similarly for Fish, the text claims that Fish has lower correlation among domain-specific gradients than ERM, but it's not clear what the training dynamics over steps shown in Fig (3) is supposed to convey? Is there a trend to identify here? The overall correlation is given in a (hard to read) box on the plot which seems relevant, but is the rest?
Beyond this, the implications for issues drawn also appear to be demonstrated on a single instance---the plots show a single run of the model training. Does this hold across multiple runs?
Is the correlation shown in the plots computed across the steps in a single run, or across both steps and runs for multiple runs?
Without a clear and sound demonstration of the actual issues claimed in the prior work, it's hard to judge merit of this work. While Lemma 1 is clearly true, it needs to be shown much more clearly with statistics that it actually has an effect.
3. The formulation of the GIP-C objective could also be clearer.
Eq (1) implies that the objective is a function of both $\theta$ and the set of domains $\mathcal{K}$, and is recursive in $\mathcal{L}_{GIP-C}$ on account of its gradient.
Eq (2) replaces the search over all pairs (i, j) with each domain to the GIP-C gradient (i, GIP-C); however, does this replacement not have an effect on the gradient of $\mathcal{L}_{GIP-C}$ in the second term? If this effect is to be discounted, it is not clear why/how.
This also affects the lower bound formulation in Lemma 3 where the inequality in Lemma 2 applies for the _first term_ in Eq (1), but it's not clear why this wouldn't affect the second term as both $\mathcal{L}_{ERM}$ and $\mathcal{L}_{GIP-C}$ are functions of $\theta$?.
It's actually not clear why pareto optimality is needed in Lemma 2 at all because all that really is being leveraged is that fact that the for a gradient inner product replacing one of the terms that was an average with a min lower bounds the product. It doesn't really say anything about finding a solution where improving on one domain must worsen performance on another (from the pareto optimality definition).
4. Results
These do appear to indicate an improvement over prior methods, however this is also partly affected by the issues from above with Fig (5) again showing a single run, admittedly with better correlation that that described in Fig (3), but with the training dynamics confusing things without sufficient explanation/discussion.
For the efficiency demonstration, why is this shown only for VLCS? Are the gains not realised for other data?
It would have been useful to see average gains across all the data explored in this work to see if the findings were consistent.
Overall, it appears that the idea and work has merit, but the exposition and discussion of what has been done needs a bit more work.
Questions
The main ones are raised in the weakness section above to do with explaining the issues with prior work and the formulation of POGM itself.
Beyond this, some minor other questions/comments
1. Why different notations for source domains and training datasets (D_i vs S_i?)
2. Figure/plot axes labels and other text needs to be more legible and clear