Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to select subsets of indoor and outdoor in subpopulation experiment #7

Closed
litingfeng opened this issue Mar 24, 2022 · 1 comment

Comments

@litingfeng
Copy link

Hi,

Thanks for contributing the great project!

I have a question regarding how you selected the subsets belonging to indoor and outdoor. While we can find corresponding subset name specified by attributes like "dog(white)" in attributes-candidate-subsets.pkl, it looks like you specified the indoor and outdoor manually in this file.

I was wondering how you generate train_set_scheme and test_set_scheme. What if we want to select cat & dog with other contexts in GENERAL_CONTEXT_ONTOLOGY, e.g., cat(bedroom)? I also noticed there is a file obj2attribute.json. Could you please provide some instructions on how to utilize it?

Thanks,
Ting

@Weixin-Liang
Copy link
Owner

Hi, thank you for your interest in our work.

As mentioned in the paper, the subsets are selected based on the node community detection results on the meta-graph.

Section 4.1: Evaluating domain generalization
To make our evaluation settings more challenging, we merge similar subsets by running Louvain community detection algorithm (Blondel et al., 2008) on each meta-graph. Node color in Figure 2 indicates the community detection result.
image

In the code, the print_communities function provides the node community detection results. In practice, the community detection results tend to capture fine-grained communities. For example, although both cat(computer) and cat(sink) are indoor, they are assigned to two different communities as indicated by their node color. Therefore, for contexts that are more abstract (e.g., indoor or outdoor), you may need to manually group multiple communities together.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants