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

Updating Stability Analysis + Migration to New Module #56

Merged
merged 11 commits into from Dec 3, 2018

Conversation

gwaybio
Copy link
Collaborator

@gwaybio gwaybio commented Nov 30, 2018

closes #45

I add a README and a master analysis script. There are also updates to some plots. The corresponding files in module 4 are removed and replaced in the new module 5

@gwaybio gwaybio requested review from ajlee21 and ypar December 2, 2018 20:16
Copy link

@ajlee21 ajlee21 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just a few comments

## Reproducible Analysis

To reproduce the results of this analysis perform the following:

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what will this reproducible analysis output? This is the reconstruction error?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is specifically for the stability analysis. I will make that clear in the next commit, thanks!

xlab("Z Dimension") +
ylab("SVCCA Mean Similarity") +
scale_fill_manual(name = "Algorithm",
values = c("#e41a1c",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it worth creating a lookup table with colors -- HEX code as you've done before?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah... This is probably worth doing. It would help to ensure consistency. I will add to an issue

Following SVD, the algorithm performs canonical correlation analysis (CCA) on the SVD components to align matching components and extract correlations between them.
SVCCA is used to compare two different representations, but can be applied to representations of different dimensions.
We use SVCCA to extract a single value representing how similar two representations are to each other.
This value is the mean of the SVCCA correlation estimates across all dimensions compared.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct me if I'm wrong - my understanding of CCA it's a dimensionality reduction method that creates a mapping to a low dimensional space that maximizes the correlation between X and Y. Not exactly sure how you're using this latent space projection to assess the correlation between features.

Also is there a reason you're using SVCCA? I'm not as familiar with alternatives, but was curious what other people have done

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not exactly sure how you're using this latent space projection to assess the correlation between features.

We're using CCA to identify common features between neural network representations (in this case, weight matrices from different compression algorithms). So, how correlated are the learned features to one another.

SVCCA was shown to have some nice properties here. I am not aware of any alternatives to this problem (comparing stability of differently sized networks quickly)

@gwaybio gwaybio mentioned this pull request Dec 3, 2018
@gwaybio gwaybio merged commit 7489e9c into greenelab:master Dec 3, 2018
@gwaybio gwaybio deleted the migrate-stability branch December 3, 2018 19:07
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

Successfully merging this pull request may close these issues.

Move SVCCA
2 participants