Anti-causal domain generalization: Leveraging unlabeled data