[go: up one dir, main page]

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

merge plot_inverse_covariance_connectome and plot_multi_subject_connectome #1223

Open
salma1601 opened this issue Aug 8, 2016 · 9 comments
Labels
Documentation for documentation related questions or requests

Comments

@salma1601
Copy link
Collaborator

The connectivity example plot_inverse_covariance_connectome demos sklearn.covariance.GraphLassoCV on ADHD data with MSDL atlas. The exampleplot_multi_subject_connectome compares the GraphLasso to nilearn.connectome.GroupSparseCovarianceCV also for ADHD/MSDL.
Morevover, we have the same comparison on simulated data in plot_simulated_connectome example. I was thinking of:

  1. removing plot_inverse_covariance_connectome
  2. renaming (any other suggestions ?)

plot_multi_subject_connectome -> plot_sparse_connectomes
plot_simulated_connectome -> plot_simulated_sparse_connectomes
3. adding an example plot_connectome_estimators to demo the different covariance estimators: EmpiricalCovariance, LedoitWolf and GraphLasso

@GaelVaroquaux
Copy link
Member

I'd rather not rename plot_simulated_connectome, as I don't see the need to commit to sparse estimators for the example on simulated connectomes.

With regards to the other examples, agreed that it's a mess. Indeed the didactic values of the 2 examples are not well separated. Also, there is plot_signal_extraction that goes a bit in the same direction, even though it is on a hard parcellation, rather than a probabilistic atlas.

They bring a variety of teaching:

  • How to extract signals on a probabilistic parcellation and build a correlation matrix
  • The importance of defining good confounds (plot_signal_extraction is good for that)
  • The difference between correlation and inverse covariance
  • How to do things at the group level: it's a "for" loop, but that tends to be a difficulty for the beginners.

I wonder if it's a good thing to put in the same example the single subject and the group analysis. I would rather merge the one with the probabilistic parcellation and the one with the hard parcellation.

We should rename the multi-subject one to a name that makes it very clear that it's purpose is to illustrate multi-subject. For instance a file name "plot_multi_subject_connectomes" and a title "Computing connectomes on multiple subjects".

@salma1601
Copy link
Collaborator Author

Ok.
What I can do for all examples (except ICA and Dictionary learning, cause I am a stranger to that) is to synthesize in a table what they demo piece by piece, to see usefulness and overlaps.
I also have a question: is there any reason we rely only on ADHD for examples ? for advanced connectomes examples we can rely on COBRE/ABIDE to avoid the signal extraction part

@GaelVaroquaux
Copy link
Member
GaelVaroquaux commented Aug 12, 2016 via email

@salma1601
Copy link
Collaborator Author

However, in the long run, I think that I would like to try to have all examples running with the cobre data.

You would keep ADHD only to demo signal extraction ?

@GaelVaroquaux
Copy link
Member
GaelVaroquaux commented Aug 12, 2016 via email

@AlexandreAbraham
Copy link
Contributor

AFAIK, ADHD dataset is more used than COBRE and there has been a competition on it so people in the field are more likely to know it.

@GaelVaroquaux
Copy link
Member
GaelVaroquaux commented Aug 12, 2016 via email

@salma1601
Copy link
Collaborator Author

I did a table with the connectivity examples, except those ICA and dictionary learning related.
I hope it is useful.

connectivity_examples_table

I added a secondary teaching box to group demoed features/explanations that may be additional to the example purpose. I tried to separate nilearn API specific teaching from more general functional connectivity teaching, because some users can be beginners in FC.

@salma1601
Copy link
Collaborator Author

So from what I read I have some little changes suggestions
1- consolidate functional connectivity section 3.1. Extracting times series to build a functional connectome. For me we jump too fast to subtle things sparse inverse related. I suggest

  • adding a paragraph about preprocessing, explaining that various possibilities exist and are illustrated through the examples.
  • adding a paragraph about the NiftiSpheresMasker

2- In section 3.2.Connectome extraction: inverse covariance for direct connections adding once for all an explanation for the link covariance/correlation/precision/partial correlation.

3- Standardization is a hidden process to use covariance as a correlation. May be we can expose cov_to_corr and prec_to_partial

4- following previous discussions, decide whether or not ConnectivityMeasure is used only for multiple subjects and be consistent

5- fix ADHD changing TR across the examples

6- Why systematically use the first figure in gallery ? For instance for the seed-to-voxel correlations it would be beautiful to see the correlation map, instead of a timeseries.

7- We can merge probabilistic/determinsitic/DMN spheres examples, it would be an example with all the various maskers.

and I have a question: what are the guidelines for examples writing style ? For the moment they are a mix of compact minimalistic phrasing (eg the probabilistic atlas extraction) and more detailed structured examples (eg the seed-to-voxel example).

@bthirion bthirion self-assigned this Jan 27, 2021
@bthirion bthirion added Documentation for documentation related questions or requests Enhancement for feature requests labels Jan 27, 2021
@bthirion bthirion removed their assignment Jan 27, 2021
@Remi-Gau Remi-Gau removed the Enhancement for feature requests label Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation for documentation related questions or requests
Projects
None yet
Development

No branches or pull requests

5 participants