Major update: Cardinal 2.2 released on Bioconductor 3.9

49 views
Skip to first unread message

kbemis

unread,
May 3, 2019, 8:57:18 PM5/3/19
to Cardinal MSI Help
Dear all,

Cardinal 2.2 is officially live with Bioconductor 3.9! This is a major update with many changes. Cardinal 2.0 set the groundwork for a migration to the new MSImagingExperiment class, and Cardinal 2.2 fulfills that promise with many new updates, changes, and new features:
  • Defaults for data import have changed:
    • Datasets are imported as MSImagingExperiment objects
    • Spectra from imported datasets are not loaded into memory; they are loaded on-access
  • All statistical methods (including PCA, PLS, spatial k-means, and spatial shrunken centroids) are now fully supported for MSImagingExperiment
  • New statistical methods including spatial-DGMM and hypothesis testing via means-summarized linear models and segmentation-based linear models
  • Pervasive support for parallel computation via BiocParallel
  • New vignettes documenting both basic use and statistical methods for MSImagingExperiment
  • Visualization enhancements:
    • Colorkeys for images are now plotted on the side
    • Default colorscale for images is now "viridis"
    • "Dark mode"
  • Improved simulation of spectra and imaging experiments
  • Out-of-memory enhancements in matter backend
  • Exhaustive list of changes documented here on Bioconductor NEWS
Please take some time to absorb and get used to all of the changes and new features. A lot has changed in the four short years since Cardinal's original release, and the landscape of MS imaging has changed dramatically.

Just as the original eSet has given way to SummarizedExperiment as Bioconductor responded to the shift from microarrays to next-generation sequencing, so too must Cardinal respond to the evolution toward higher-resolution mass spectrometry imaging experiments.

Some old workflows may break under the new defaults. The older classes and methods will continue to be supported for the time being, but new code should try to use the new world order of MSImagingExperiment.

My sincere hope is that these updates will give us a more robust infrastructure for the future of MS imaging and enable us to more quickly respond to technological improvements while also allowing us to focus more of our time on the development of new statistical methods for MSI.

-Kylie Ariel Bemis

Melanie Föll

unread,
May 4, 2019, 5:35:53 AM5/4/19
to Cardinal MSI Help
Hi Kylie,

thank you and congratulations to this fantastic Cardinal improvements.

It's reassuring as a user to realize that Cardinal is under active development and is able to cope with major technological improvements :) even when this might come with a steep learning curve for long-term users.

Keep on rocking,
Melanie

kbemis

unread,
May 4, 2019, 3:12:44 PM5/4/19
to Cardinal MSI Help
All the old classes and methods are still there as well (with a few bug fixes too!) if you need/want to use them. Since CardinalWorkflows data is still saved as MSImageSet, and changing a data package is annoying, I don’t imagine the classic tools will go away for a while now, because I still want to support that. (At some point I will update the CardinalWorkflows vignettes to use the new classes and methods, but I will probably leave the data itself as-is for now.)

I will just be focusing all new development on the new classes, so that is where you will see any new features and improvements from here on out.

-Kylie

olga.ga...@bostongene.com

unread,
Jul 23, 2019, 4:20:21 AM7/23/19
to Cardinal MSI Help
Dear Kylie, 

after updating Cardinal to 2.2 version to avoid uploading data into emmory, I came across such a problem: it takes an eternity (10 hours, and it doesn't even finish the process) to generate spatial shrunken centroids object, even if I use small cluster number (k = 2). On the previous version, it would take aroung 10 minutes to generate such an object. Do you have any clue on what could be the origin of such issue?

Best regards,
Olga

kbemis

unread,
Jul 24, 2019, 4:04:20 AM7/24/19
to Cardinal MSI Help
1. Is the dataset in memory? Any of the statistical methods will still always be faster if the data is in memory, especially for iterative methods such as spatialShrunkenCentroids() which must make multiple passes through the dataset. So if it fit into data before, then loading it into memory again should help.

2. You may want to try running it without parallelism. Either use register(SerialParam()) in your script after loading Cardinal, or provide BPPARAM=SerialParam() as an argument to spatialShrunkenCentroids(). What is the OS? The default parallel option on Windows (SNOW) has a lot of overhead and can be very slow to start up and transfer data, so there are many cases where it isn't worth it. I am hoping the BiocParallel package changes the default Windows option sometime...

When I benchmarked it, there were times it could be slower (and times it could be faster), but it shouldn't be that much slower unless it is one of the two issues above (or I missed some special case, which is always possible).
Reply all
Reply to author
Forward
0 new messages