Skip to Main Content

QuNex, a neuroimaging processing suite

October 05, 2020

Dr. Alan Anticevic, Associate Professor, Department of Psychiatry, Division of Neurocognition, Neurocomputation, and Neurogenetics (N3) , Yale School of Medicine

ID
5707

Transcript

  • 00:00Each of us is an associate
  • 00:03professor of psychiatry at Yale.
  • 00:05He's a native of Croatia and received
  • 00:08graduate training at Washington University
  • 00:10in Saint Louis with doctors Deanna Barton,
  • 00:14David Van Essen at Yale.
  • 00:16Allen runs the end three division,
  • 00:19which stands for neurocognition,
  • 00:21neural computation and neurogenetics,
  • 00:23and he is broadly focused on using
  • 00:26computational methods to examine cognition
  • 00:28and genetics in psychiatric illness.
  • 00:31His work has been funded by the Ann.
  • 00:34I am age,
  • 00:35the brain and Behavior Research Foundation,
  • 00:37industry collaborators and
  • 00:39the Simons Foundation.
  • 00:40Allen is a leader in the field
  • 00:42of psychiatric neuroimaging
  • 00:43and computational psychiatry,
  • 00:45and today he'll be speaking
  • 00:47to us about Q next,
  • 00:49which is a state of the art
  • 00:51neuroimaging processing and analytic
  • 00:53platform that was created by his lab
  • 00:56and collaborators to flexibly and
  • 00:58powerfully integrate cutting edge
  • 00:59image Ng and analytic techniques.
  • 01:01For imaging researchers,
  • 01:02and I'm personally very pleased to
  • 01:05be introducing Alan and to have him
  • 01:07kick off our summer stuff Alan,
  • 01:09I'll turn it over to you now.
  • 01:11Thanks so much for being here.
  • 01:15So I want to just make sure
  • 01:18everybody can hear me. Yep, OK so.
  • 01:20Thank you all. Thank you, Helen.
  • 01:23Thank you Sarah,
  • 01:24and thank you young son so I.
  • 01:27It's it's. I'm thrilled to be here.
  • 01:29It's really an honor to
  • 01:31present in this context.
  • 01:32I think that.
  • 01:34It speaks volumes that you guys rallied
  • 01:37folks around this really important topic,
  • 01:40and so I'm just really thrilled to see
  • 01:43the field of comp psych flourish and
  • 01:45that you are really making this effort.
  • 01:48And thank you for the kind introduction,
  • 01:51Sarah,
  • 01:52the one minor correction I would say,
  • 01:54is that I code directly in three divisions,
  • 01:58so my close colleague and collaborator John
  • 02:01Murray was recently promoted in the Co.
  • 02:03Director and so.
  • 02:05He is also at the helm of this effort,
  • 02:09and I'll be frequently mentioning
  • 02:12his name so.
  • 02:14The current presentation sort
  • 02:16of a different beast than what
  • 02:18I'm typically used to.
  • 02:20It's it's really this methods
  • 02:22and primer for Compsci Canoeing,
  • 02:24Comics, and from what I understand,
  • 02:27the goal is really to introduce
  • 02:29you to a methodology in a tool that
  • 02:32would that has practical use in
  • 02:35computational psychiatry and so.
  • 02:37I was asked to feature our Q Nix
  • 02:42platform which is in the final
  • 02:45stages of being.
  • 02:47Prep for public release and this will
  • 02:49be a good test run and I was also
  • 02:52told that there's a time for Q&A at the end,
  • 02:55so I'll see if I could time the talk in
  • 02:58such a way that people can ask questions.
  • 03:01So.
  • 03:02So the first thing that I want to
  • 03:04make sure is that I acknowledge
  • 03:06folks who have participated,
  • 03:08so this is I'm the slide isn't
  • 03:10comprehensive and I forgive me those
  • 03:12who I'm leaving off this slide.
  • 03:14But really,
  • 03:15the key point that I want to highlight
  • 03:18is that this is a multidisciplinary.
  • 03:20Multi year project Kunik started
  • 03:22basically as some scripts at wash U
  • 03:25when I was at first year grad student
  • 03:28with my close colleague and friend
  • 03:30Gregor Epub shoe is full professor
  • 03:33at University of Ljubljana in
  • 03:35Slovenia and so his lab is.
  • 03:37Also, I would I would consider
  • 03:40foundational code developer of this effort.
  • 03:43And I wouldn't be here talking
  • 03:46to you without his support and.
  • 03:49Vision also.
  • 03:50Our lab really contributes to this
  • 03:52effort by continuously using refining
  • 03:55and stress testing the platform
  • 03:58so it's iterative and we now have
  • 04:01folks who are students and graduated
  • 04:04to become junior developers in
  • 04:06their own research careers of the
  • 04:09platform and also the marine lab
  • 04:11with who has really enriched the
  • 04:15platform substantially through a
  • 04:17computational psychiatry focus so.
  • 04:19So what is this right?
  • 04:21So that's one of the questions
  • 04:23that I was asked to answer, and.
  • 04:25I'm sorry I'm going to interrupt your pro.
  • 04:30Second, we only still see the first slide.
  • 04:34On Is that right? Yes, let's try it.
  • 04:39Let's try it this way.
  • 04:42I think I know
  • 04:51what's happening.
  • 05:03What about now? You are awesome awesome.
  • 05:07Thank you for that.
  • 05:09So this was my acknowledgement slide.
  • 05:11I acknowledge people so let's move on.
  • 05:14So one of the questions that was
  • 05:16posed to me and young son really
  • 05:19helped draft this in the focus of
  • 05:22the seminar is what's the purpose?
  • 05:25What? What are we trying to answer?
  • 05:27And so I think that are really
  • 05:30common challenge that we have
  • 05:32faced is that research projects
  • 05:34have to be able to integrate.
  • 05:37Pipelines Multimodal information
  • 05:38across data sets across scale,
  • 05:41both within a laboratory and across
  • 05:43publicly available data sets,
  • 05:45and so that common challenge really
  • 05:47will be echoed throughout the talk,
  • 05:50and so that really prompted the
  • 05:52development of this research platform.
  • 05:55So QX is what is it?
  • 05:57It's a framework for integrating
  • 06:00multiple image Ng,
  • 06:01processing analytical pipelines into a
  • 06:03single unified ecosystem which provides a
  • 06:07flexible and powerful platform and engine.
  • 06:09For Multi Molnar imaging,
  • 06:10so hopefully as we deep dive
  • 06:13more into what is connects,
  • 06:14this will become more apparent.
  • 06:16So why did we build it?
  • 06:19So.
  • 06:21To our knowledge,
  • 06:22or at least to my knowledge,
  • 06:24when we were starting this process,
  • 06:26this journey is that we found that
  • 06:28there was not a single platform that
  • 06:31unites new image Ng pipelines and
  • 06:33thereby allowing folks to really have.
  • 06:35Uh.
  • 06:36Easy and I truly mean easy access
  • 06:39to these resources to analyze
  • 06:42and deploy their data sets.
  • 06:45And So what really prompted?
  • 06:47Q Nixon why we developed it,
  • 06:50is because we were able to garner
  • 06:53support around multiple projects
  • 06:54that then we're taking advantage of
  • 06:57this software development effort,
  • 07:00and this iteratively provided an
  • 07:02organic growing interest for this
  • 07:04platform which we're very excited too soon.
  • 07:08Featuring the community and so how
  • 07:10do you use it and what do you need
  • 07:13to know to deploy it is some basic
  • 07:16knowledge of Linux and scripting
  • 07:18will be helpful to you if you know
  • 07:20how to do it and you'll understand
  • 07:23as I move through the talk.
  • 07:26Why? This this matters,
  • 07:28and the key point here is that.
  • 07:33Kionix allows.
  • 07:34I've given research laboratory, junior,
  • 07:38researcher, or even an entire team.
  • 07:412.
  • 07:44Utilized this framework to
  • 07:46process and analyze their data,
  • 07:48so having some understanding or some
  • 07:50some background as to what analytic
  • 07:53approaches you want to deploy is is
  • 07:56helpful before you start using it.
  • 07:58And also it's an open source framework
  • 08:01that deliberately integrates
  • 08:03other Open source tools such that
  • 08:05it can straddle both academic
  • 08:07and commercial applications of
  • 08:09necessary and so it can be used
  • 08:12with various modes in your image Ng.
  • 08:15And it's been stress tested
  • 08:16across various data sets,
  • 08:18and so we'll talk about that this
  • 08:21publication that's relevant here.
  • 08:22This is a paper by my former students.
  • 08:25Now research faculty at, you know, Lisa G.
  • 08:28Who published this inner image?
  • 08:30It's an example of Q Nixon in action, so.
  • 08:34Now if we zoom out 10,000 feet
  • 08:37sort of from from the motivation
  • 08:41for today's talk so.
  • 08:43I think that it's fair to say that
  • 08:46a core problem in computational
  • 08:48psychiatry is for us to develop
  • 08:51a system and to deploy a system.
  • 08:554. Neurobiologically grounded
  • 08:58multimodal biomarkers.
  • 09:01Capacity, which I would call features.
  • 09:04To support. A high throughput,
  • 09:07scalable, secure,
  • 09:08regulatory compliant implementation
  • 09:10which is the informatics piece
  • 09:12to enable data driven and
  • 09:14reproducible discovery Science,
  • 09:15which is the analytics piece
  • 09:18and to be actionable.
  • 09:19Useful for personalized to population
  • 09:22level neuro behavioral markers
  • 09:25in mental health which is our
  • 09:27end point and so I see this as.
  • 09:30A field wide problem,
  • 09:32not a single laboratories problem
  • 09:35and this cartoon picture here kind
  • 09:38of illustrates this vision that
  • 09:40hopefully we can automate through
  • 09:43statistical learning approaches.
  • 09:45More and more of our decision making
  • 09:48in a irrationally guided way for
  • 09:50personalized treatment delivery in
  • 09:52psychiatry that is rationally implemented.
  • 09:54For that I would argue we need an
  • 09:58entire ecosystem in a re framing
  • 10:00of how we approach this.
  • 10:02And I would argue that we can exploit
  • 10:05human or imaging methods to meet this goal.
  • 10:09Which is what Kleenex is designed
  • 10:10to enable and help support.
  • 10:12So just kind of a trip down memory Lane.
  • 10:15So if we know it is human image
  • 10:18in good enough,
  • 10:19is it even a tool that's useful
  • 10:21for us to leverage?
  • 10:22So why?
  • 10:23Why build an ecosystem around it if we
  • 10:26don't trust the tool and so for for those
  • 10:29of you who are not imagers in the crowd,
  • 10:32or having you know thought
  • 10:34about this modality as much.
  • 10:36So one example ner maging modality that
  • 10:38provides a very good use cases bold fMRI,
  • 10:41and in particular a method that
  • 10:43a lot of people resting state,
  • 10:45and so it's.
  • 10:46It's a nice example of how our
  • 10:48field has matured and how these
  • 10:50tools become really deployable.
  • 10:52So this is a picture from 1995.
  • 10:54Well,
  • 10:55actually it's a picture from a review paper.
  • 10:58Published by Randy Buckner that
  • 11:01recreates the 9095 effect and so.
  • 11:03This is an example of sort of where
  • 11:07the field was in some years ago,
  • 11:10and this phenomenon that we
  • 11:12have all come to noahs resting
  • 11:14states is a nice example where.
  • 11:17Tools,
  • 11:17they even the basic intuitions
  • 11:19in 95 were missing.
  • 11:21So what this is this shows is if
  • 11:24you place a seed which is now kind
  • 11:26of a common term in our vernacular.
  • 11:29In the left Motor Cortex and you
  • 11:32quantify what is the spatial temporal
  • 11:34variation of the signal from that
  • 11:36region with all the other parts of the brain,
  • 11:40and you plot a statistical map of that.
  • 11:43You get this picture of bilateral motor
  • 11:45cortex which highlights that these are.
  • 11:47Coal bearing,
  • 11:49spatial temporal signals,
  • 11:51and so this term,
  • 11:54called functional connectivity
  • 11:56was really actually believed to be
  • 12:00spurious for a good part of the next
  • 12:0510 years until some group at wash U.
  • 12:09Started to notice that this effect
  • 12:11also coincided with some other
  • 12:13task evoked in pet findings,
  • 12:15and it's fair to say the rest is history.
  • 12:19So after the Fox Babe bring 2006 to
  • 12:22feel jumped on board and this is one
  • 12:25of many illustrations from Thomas Joses
  • 12:28work while he was still in Randy's lab,
  • 12:31where where they showed very elegantly
  • 12:33that you can image the human brain at
  • 12:36scale and arrive in large scale functional
  • 12:39networks reliably across thousands of people.
  • 12:42And these kind of watershed moments
  • 12:44prompted the human connectome project,
  • 12:46which is again it was just one of
  • 12:50many initiatives now in human images.
  • 12:52Which in this case derive the comprehensive,
  • 12:55not a definitive,
  • 12:56but a comprehensive partition
  • 12:58of the human cerebral cortex,
  • 13:00multi modally, and so we're now in 2020,
  • 13:04and the advances continue,
  • 13:06and really the methods are developing
  • 13:09so rapidly I can't even keep up
  • 13:12with stuff that's coming out.
  • 13:14But for us to really continue to innovate
  • 13:17this now highly accelerated pace,
  • 13:19we need to really.
  • 13:21Strive towards standards and those
  • 13:24standards need to allow junior folks
  • 13:27to enter the field really rapidly
  • 13:29and effectively around methods that
  • 13:32can be reproducible and provided
  • 13:35teaching the platform.
  • 13:36And so that's one of the
  • 13:39motivations behind building QX.
  • 13:41Another neural biological motivation
  • 13:44for building Q Nix is really
  • 13:48to adopt and facilitate.
  • 13:50The ability to bring legacy data
  • 13:53sets to the cortical surface as
  • 13:55well as to support cortical surface
  • 13:58imaging of State of the art.
  • 14:00Next generation data sets,
  • 14:02and so one of the elements of clinics
  • 14:05that will keep talking about is that
  • 14:07it's built around the human connectome.
  • 14:10Project pipelines as one of the flagship
  • 14:13flagship examples of pipeline implementation,
  • 14:15but.
  • 14:16This is a key property you don't have
  • 14:18to do surface based Analytics Inc Unix.
  • 14:22If you don't want to,
  • 14:23you can stay in the volume,
  • 14:25but really this is a feature that
  • 14:28drastic will improve your S&R
  • 14:29and your registration quality.
  • 14:31If you actually derive cortical
  • 14:33surface is at the single subject level
  • 14:35across your modality, so this is.
  • 14:37A method in a mechanism that is
  • 14:40implemented in Q Nix natively across
  • 14:44modalities and neurobiologically very,
  • 14:46very important.
  • 14:48If you want to multi modally compare
  • 14:51individual subject data sets with.
  • 14:54That level of anatomical precision.
  • 14:57So. Our field I hope you know.
  • 15:00We can agree that we need an integrated
  • 15:02framework for both research and development.
  • 15:07So and for development of that ecosystem such
  • 15:09that it can meet production requirements
  • 15:12and that iterative framework needs to
  • 15:14exist with certain standards in place.
  • 15:16And currently we don't have one.
  • 15:18We have a lot of bespoke or one
  • 15:20off or focused software platforms,
  • 15:23but we don't have an ecosystem
  • 15:25for growth and so why build 1?
  • 15:28So this goes back to the first set of slides,
  • 15:31which is why do we need a turn Keener
  • 15:34imaging ecosystem to begin with?
  • 15:36And so. Really,
  • 15:38when I was starting my group in 2012,
  • 15:41but even as a grad student,
  • 15:43and really there were many pipelines or
  • 15:46even before that there weren't no pipelines.
  • 15:49But even with many pipelines we have few
  • 15:53integrated quantitative environments for
  • 15:55their stitching across modalities tools.
  • 15:57And computational settings,
  • 15:59and so this is really a problem.
  • 16:01And it's also a little emphasis is
  • 16:03placed on personalized endpoints
  • 16:05across health and disease.
  • 16:06With these new imaging ecosystem ecosystem.
  • 16:09So in other words,
  • 16:10you don't hold them always to the
  • 16:12standard of personalized reproducibility.
  • 16:15And this also highlights that
  • 16:17we need a flexible,
  • 16:18extensible multi modal throughput ecosystem.
  • 16:20And what I mean by flexible that
  • 16:22it can support multiple use case
  • 16:24scenarios and what I mean by extensible
  • 16:27is that a grad student from another
  • 16:30laboratory or postdoc or another
  • 16:32lab can easily build on top of it,
  • 16:34and so that there's a software
  • 16:37development kit that that exists so.
  • 16:40The all those reasons really
  • 16:42motivated to Nicks and the team is
  • 16:46supported by my group here at Yale.
  • 16:49The mind and brain laboratory,
  • 16:51led by Gregory Poch who is Unix,
  • 16:54gets into the public domain.
  • 16:56You'll probably run into a lot
  • 16:58and the marine lab here at Yale
  • 17:01who has really pushed us too.
  • 17:03Make Q Nix.
  • 17:05Practical and usable in the context
  • 17:07of specific computational psychiatry
  • 17:10applications and so that's that's our team.
  • 17:14So what does clinics do today?
  • 17:17What is it really designed to do so?
  • 17:22Unix has a clear DevOps model,
  • 17:25so we've built it such that.
  • 17:29I always ask myself if I was the first year
  • 17:31assistant professor starting my laboratory.
  • 17:33Would I use this thing?
  • 17:35And to use it,
  • 17:36it has to have a clear development
  • 17:38system such that if somebody wants to
  • 17:40build on top of it or they don't like a
  • 17:44certain method in QX and want to replace it,
  • 17:47it has to have that modular structure
  • 17:49so will hit on that morning,
  • 17:51or it has to be portable.
  • 17:53So in other words,
  • 17:54it has to be deployable across
  • 17:56multiple environments with these.
  • 17:58Versioning has to be clear,
  • 18:00so you have to be able to revert
  • 18:02to prior tag of Q.
  • 18:04Next,
  • 18:04rerun it in any environment and
  • 18:06get reproducible results that
  • 18:08occurred with that tag.
  • 18:09So it has to be sustainable,
  • 18:11and so one example is that we've
  • 18:13built a partnership with the
  • 18:15connectome coordinating facility,
  • 18:16and with Dan Marcus and David Vanessa,
  • 18:18and so currently the CCF team
  • 18:20runs older HCP pipelines
  • 18:21through tunics.
  • 18:22And I'm really proud of that.
  • 18:24And the fact that we worked
  • 18:27with them for now close to.
  • 18:29Think Costa decade actually
  • 18:31to make this possible.
  • 18:33So it has to support training and teaching,
  • 18:36so if you're a student learning image in,
  • 18:38you have to be able to
  • 18:40learn around this thing.
  • 18:42Otherwise it's not going to be useful.
  • 18:44So we teach Unix at the HCP
  • 18:46course we taught in 2019.
  • 18:48Suddenly this year with Covid has
  • 18:50made things more challenging.
  • 18:52Another thing that's really important
  • 18:53to us is that its pipeline agnostic.
  • 18:56So while we do make Unix.
  • 18:59A Welk Unix and its current
  • 19:01implementation and its original
  • 19:03implementation was built to support
  • 19:05human connectome project pipelines.
  • 19:07Also, it can easily embed fMRI prep.
  • 19:10We've tried it.
  • 19:12And also it can support nonhuman bye
  • 19:15bye points. And we've done this.
  • 19:18Already with the nonhuman primate
  • 19:20version of the human connectome.
  • 19:23Project pipelines. So basic.
  • 19:24Lastly,
  • 19:25pipe on agnostics.
  • 19:26You can embed your pipeline into
  • 19:29its framework and and run it.
  • 19:32It's multi format so we support
  • 19:34both 50 and nifty workflows.
  • 19:37And one of the things that we really
  • 19:40pay attention to is that it can be
  • 19:42cloud deployable in cloud secure,
  • 19:44because if you're going to use this thing
  • 19:46for potential clinical imaging down the line,
  • 19:49you have to be able to go that route.
  • 19:52It can't just be a desktop client application
  • 19:54on your computer has to be deployable.
  • 19:57Another element that I'll really hit on a
  • 20:00little bit later is it has to be automated.
  • 20:02So if you have to baby sit
  • 20:05this thing and run.
  • 20:07Pipelines by hand.
  • 20:07Every step of the way and write
  • 20:09Bespoke Code and it doesn't
  • 20:10have a one liner with which you
  • 20:12can execute the whole thing.
  • 20:14Then it's not going to be useful
  • 20:15for folks who want to scale,
  • 20:17so it has a turn key functionality
  • 20:19and I'll show you how it works.
  • 20:21It is also embeddable in high
  • 20:24performance computing environments,
  • 20:25so you can use it on your local
  • 20:29high performance computing cluster.
  • 20:31It supports slurm,
  • 20:32PBS LSF schedulers so it's scheduler engine.
  • 20:35It's compliant with high performance
  • 20:38computing scheduling systems.
  • 20:39It has no dependencies,
  • 20:41which means that when you download it
  • 20:45you get everything so you don't have
  • 20:48to then go and request a license from.
  • 20:51Source A and source beans or
  • 20:54C and recompile this and that.
  • 20:56In other words,
  • 20:57when you download the conex container,
  • 20:59everything is embedded and this is
  • 21:02possible thanks to the support of
  • 21:04Bruce Fish on Steve Smith who I want
  • 21:07to highlight have been tremendous.
  • 21:09Lee supportive of both.
  • 21:10Fso in Freesurfer being too next
  • 21:13distributable and this is done by
  • 21:15auto agreeing to their license terms
  • 21:17when you get the container so it's
  • 21:20basically unlicensed propagation system,
  • 21:22so it's.
  • 21:22A very important.
  • 21:24Feature of how to build
  • 21:27interoperable software like this?
  • 21:29And we deeply stress tested it.
  • 21:31I think this number 10,000
  • 21:33has now probably scaled three
  • 21:35times since I made this slide.
  • 21:37But these are just some large scale
  • 21:39data set that have been Q Next.
  • 21:42So Naples Pier at Yale Abidi
  • 21:45one 2B Snip paying Cam can.
  • 21:48HPN can see Rockland,
  • 21:49the Embarq data set,
  • 21:51the entire city data set, CMP.
  • 21:53PNC actually is not here,
  • 21:55so I know it is so basically,
  • 21:58we've tested it on both legacy
  • 22:00and HCP compliant data sets,
  • 22:02and one recent stress test that we did
  • 22:05was actually on the CMP data set in
  • 22:09its current implementation, and it.
  • 22:11Achieved a success rate on CMP out
  • 22:14of the box of around 99.2% I believe,
  • 22:18and the failed cases were just missing
  • 22:21data which was pretty cool to see that
  • 22:24it works with that level of Robustness.
  • 22:27At this stage.
  • 22:29So again,
  • 22:30what does it enable specifically so?
  • 22:34Flexible onboarding of data sets
  • 22:36so your data sets can be in very
  • 22:40different forms and very different.
  • 22:42Origins, I suppose,
  • 22:44and you can onboard them
  • 22:46through the QX ecosystem.
  • 22:49It enables data set prep,
  • 22:51so setting up a data set
  • 22:55for further analytics.
  • 22:57It enables running pipelines,
  • 22:58so in particular I'll talk about how we run.
  • 23:02Human connectome,
  • 23:03minimal processing pipelines through QX.
  • 23:06It also enables additional task
  • 23:08and functional connectivity
  • 23:10preprocessing so it's commands
  • 23:12natively also support GL N task
  • 23:15analytics and functional connectivity.
  • 23:17That's what we call our GM engine.
  • 23:21It is capable of supporting task and
  • 23:24functional connectivity at the session level,
  • 23:26which means at the level of a single
  • 23:29acquisition within a person as well as
  • 23:32across all the sessions within a person,
  • 23:34as well as across people at the group level.
  • 23:37So you can get group analytics and
  • 23:40the way that this part works is.
  • 23:43Thanks to Anderson Winkler who
  • 23:44generously also has supported
  • 23:46the palm being embedded in Unk,
  • 23:48Unix, and we've built a palm.
  • 23:51Functionality around in QX,
  • 23:53and this is a Greg's team,
  • 23:56has really spearheaded this,
  • 23:58so if you're a palm user you actually get.
  • 24:02Our our ipam single command line
  • 24:05feature through Q Next that you
  • 24:07can use and then it also enables
  • 24:09QC reporting visualization.
  • 24:11So in other words you can go soup
  • 24:14to nuts from getting your raw
  • 24:16data all the way to group level
  • 24:19analytics in the same ecosystem.
  • 24:21Its features.
  • 24:22And there there are several that
  • 24:25I really want to highlight,
  • 24:27so it has a command line interface,
  • 24:30so that's important to us, so I'm I.
  • 24:33This is my philosophy,
  • 24:34but I'm a strong believer that
  • 24:36dinner imager of the next generation
  • 24:39or imager needs to be fluent in
  • 24:42computational and Informatics.
  • 24:43Tools.
  • 24:43In other words,
  • 24:44you have to be able to work at
  • 24:46the command line.
  • 24:47If you can't work at the command line,
  • 24:49it's the equivalent of working in
  • 24:51a wet lab and not knowing how to
  • 24:53pipette so we don't have a gooey
  • 24:55and we don't have a GUI on purpose,
  • 24:57so it's a philosophy that we've
  • 24:59really adhered to that if you
  • 25:01want to use this thing for real,
  • 25:02you have to be familiar with how
  • 25:05the Linux Command Line Works.
  • 25:06It has an API though,
  • 25:08and So what I mean by that is an application
  • 25:10programming interface and this enables
  • 25:12interoperability and scalability.
  • 25:14So if you really don't want to
  • 25:16learn the command line and you
  • 25:18just want to hit the API,
  • 25:20you can do that too.
  • 25:22It's very flexible in terms
  • 25:24of its parameterisation.
  • 25:25I'll show you some stuff in a second.
  • 25:28And both in terms of study
  • 25:31and session level parameters,
  • 25:32but also the metadata specification
  • 25:34for how you want to run it.
  • 25:37One thing that we worked very
  • 25:39hard is everything is logged.
  • 25:41Everything is logged in
  • 25:43terms of what you ran,
  • 25:44how you ran it to the full command
  • 25:47line is echoed and you get every
  • 25:49single line of runtime code printed
  • 25:52to a log for debugging purposes.
  • 25:54So that's a feature.
  • 25:56So if you're doing comp psych research and
  • 25:58you're executing these things at scale,
  • 26:01it's really important that you
  • 26:03can clearly capture your logs.
  • 26:05One thing that I'm really
  • 26:08proud of that was led by.
  • 26:10The director of our entry
  • 26:12technologies here is only Tamayo.
  • 26:14Is containerization,
  • 26:15so container deployment.
  • 26:17And also the thing that we use routinely,
  • 26:19but some people may not.
  • 26:21But again, it's really useful is robust high
  • 26:24performance computing scheduler capacity.
  • 26:25So what I really want to highlight is the
  • 26:29containerization piece in particular.
  • 26:30So it's really hard to deploy
  • 26:33or imaging pipelines rapidly.
  • 26:34So the harder way is,
  • 26:36you know you can go to the.
  • 26:39GitHub or Bitbucket repository
  • 26:41of a given pipeline.
  • 26:42Read the Readme file,
  • 26:44cloned the thing locali.
  • 26:45Make sure your computer is has
  • 26:48all the necessary dependencies.
  • 26:49Try to run, doesn't run debug iterates.
  • 26:52Tried around debug,
  • 26:53iterating so on and so this
  • 26:56deployment for those who are
  • 26:58computationally savvy and Dan have
  • 27:00computer skills could be you know,
  • 27:02relatively pain free.
  • 27:03And since I showed this to
  • 27:05my brother actually,
  • 27:07who this is a shameless advertisement,
  • 27:09so he he runs a computer gaming
  • 27:12company and in San Francisco,
  • 27:14which is releasing the first
  • 27:16official PlayStation 5 release.
  • 27:17And so he knows a lot more about
  • 27:20computer science than I do.
  • 27:22So I show them this and he kills
  • 27:24me and mess with me saying,
  • 27:27like this is absurd.
  • 27:28You guys, how is this so hard?
  • 27:31How come you takes you so long
  • 27:33to deploy these pipelines?
  • 27:35And so he said,
  • 27:36you know,
  • 27:37my standard is if a 13 year old
  • 27:39can't play their computer game in 10
  • 27:41seconds then then I lose my job like that.
  • 27:44That's the standard.
  • 27:44So I was like, Alright, well,
  • 27:46I can't really do 10 seconds.
  • 27:48But can we compromise like like 30 minutes?
  • 27:50Can you get this up and running
  • 27:53in 30 minutes?
  • 27:54Sounds like great fine,
  • 27:55so that was the Standard and
  • 27:57so I worked with Saline.
  • 27:59Really hard to Containerize the thing,
  • 28:00and so our standard was can we get
  • 28:03it up and running in 30 minutes?
  • 28:05Right from the point when
  • 28:07somebody goes into our website.
  • 28:08Doesn't know what Unixes and goes through
  • 28:11the container deployment and gets it gets
  • 28:13it up and running on their environment,
  • 28:15and so that less hard way is really
  • 28:17facilitated because of container,
  • 28:19a container which is based on a docker
  • 28:22infrastructure in this case or singularity.
  • 28:24Encompass is every single application that
  • 28:27is necessary to be embedded in Punics,
  • 28:30and so this is an informatics feature of the
  • 28:33system that really makes your life easier.
  • 28:37But our life was hard.
  • 28:39Before you figure this out.
  • 28:41So basically the two docker implementation
  • 28:43scenarios are singularity or to
  • 28:45container implementation scenarios.
  • 28:47Are there docker or singularity?
  • 28:49There's some pros and cons to both.
  • 28:52We support both so singularity is secure for
  • 28:54your high performance computing environment.
  • 28:57Because you're a system,
  • 28:58administrators are not going
  • 29:00to let you use docker.
  • 29:01And Docker has wider support and is isolated,
  • 29:04but it does give you root access
  • 29:06onto the system.
  • 29:07So if you're going to run the Unix Docker
  • 29:10container you want to make sure that
  • 29:12it's in a secure isolated environment,
  • 29:14not in high performance computing left.
  • 29:17So, but both are supported.
  • 29:18You can get both of the images docker
  • 29:21singularity and so the container itself
  • 29:23supports an integrated deployment framework.
  • 29:25What we mean by that is there's a complete
  • 29:28operating system layer in the container,
  • 29:31so the Q Nix.
  • 29:34Ecosystem is actually a cent OS operating
  • 29:36system, so you get a cent OS layer.
  • 29:38So when you go into the conex
  • 29:41container you can have a computer.
  • 29:43So you have a full cent OS under the hood.
  • 29:46You have a software dependency layer,
  • 29:49so that's free.
  • 29:51Surfer are octave.
  • 29:53SL human connectome pipelines.
  • 29:54Palm and so on and so forth, right?
  • 29:56So the software dependencies
  • 29:58are built as a separate layer,
  • 29:59which allows us speed and nimbleness.
  • 30:01So if we need to rebuild a
  • 30:03layer for deployment,
  • 30:04we can do that pretty quickly.
  • 30:06And then there's a kunik
  • 30:07sweet layer in the QX.
  • 30:09Sweet layer is very lightweight,
  • 30:10did only has two NICs on top of it,
  • 30:13so that we don't rebuild these
  • 30:15first 2 layers all the time,
  • 30:17so we can iterate inversion very quickly,
  • 30:19and we use the semantic version and
  • 30:21framework for both the container
  • 30:22tagging and the software itself.
  • 30:24So that you always know that the system.
  • 30:28That's deployed through the
  • 30:29container and the actual code stack.
  • 30:31The source code in the container our version
  • 30:34matched, so there there's no mismatch.
  • 30:37So what's the architecture?
  • 30:38You could?
  • 30:39You're sort of wondering.
  • 30:40OK, So what does this thing look like?
  • 30:43So it really is built around
  • 30:45a module based architecture,
  • 30:47so when you are, if you're coding,
  • 30:50if you've coded anything or if you use git.
  • 30:53As a tool in your work,
  • 30:55what when you create a repository
  • 30:58of any kind, you can make a choice.
  • 31:02If it's your your overall.
  • 31:04Uh,
  • 31:04basically super ordinate
  • 31:06repository and then you can create
  • 31:08submodules of that repository.
  • 31:11This architectural choice was made such that,
  • 31:14say, Sarah wants to create a module for
  • 31:17Q Next specifically for deep phenotypic,
  • 31:20computational psychiatry worker.
  • 31:22Helen wants to come in and say,
  • 31:25and I really want to make a new
  • 31:29ring conomiques plugin or module.
  • 31:31She can make it interoperable with Q Nix.
  • 31:36Based on the software
  • 31:38development kit that we provide.
  • 31:41Create a pull request.
  • 31:42We can run our acceptance test,
  • 31:45make sure everything works and
  • 31:47then we embed a new module from
  • 31:49a community contributor into the
  • 31:52architecture and this is this is a
  • 31:54strategic choice to allow anybody
  • 31:56and everybody to contribute to the
  • 31:58system and so the three the four
  • 32:01modules that really exists are.
  • 32:03So there's a connector module
  • 32:05and it's basically bash code,
  • 32:07so it's a bash code base that allows us in.
  • 32:11Interoperability without any Linux system
  • 32:13underneath that is the Anna Utilities Module,
  • 32:17which is Python based,
  • 32:18and it's really some of the heart
  • 32:22and the engine that drives the.
  • 32:25The large scale analytic
  • 32:27pipeline implementation.
  • 32:28Then there's any tools which is standalone
  • 32:31functions written for either Mac,
  • 32:34Matlab or octave.
  • 32:35So there are 10 files and library
  • 32:38is precisely that it's just
  • 32:40supportive supporting materials such
  • 32:42as pipeline templates or various
  • 32:45Jason files and things like that.
  • 32:48So with this architecture,
  • 32:50you can imagine that you can implement
  • 32:53something pretty trivially in connector.
  • 32:56In turn,
  • 32:56you can then embed it in my utilities later
  • 32:59through more stable Python code base,
  • 33:02and then if you want to run just
  • 33:04standalone function in same matlab or
  • 33:06octave for some signal processing,
  • 33:08you can just go straight and deploy
  • 33:11tonight tools and it'll work
  • 33:12automagically through the rest of the.
  • 33:15The system, because it's built that way,
  • 33:18and so it also has the ability
  • 33:21to Mount a file system onto the
  • 33:24container so that way you can perform
  • 33:27IO operations on any file system,
  • 33:31and again it organically supports
  • 33:33the way it's built.
  • 33:35It supports pipeline integration,
  • 33:37so in other words.
  • 33:38The Connector Annina Utilities code
  • 33:41stack is built such that we can take
  • 33:45the flagged input from a given pipeline,
  • 33:47such as the human connectome project,
  • 33:50and create.
  • 33:51An API adjustment in our code such that
  • 33:54it interoperates with that pipeline,
  • 33:57and that's that's a really
  • 33:59important feature of ecosystem,
  • 34:00so that we can build in pipelines.
  • 34:03Its execution can happen either through
  • 34:05individual processing and analytic commands,
  • 34:07literally at the command line,
  • 34:09so just.
  • 34:10You get on a terminal and you can
  • 34:13run things that way,
  • 34:14or you can automate them through
  • 34:16what we call the run turnkey workflow.
  • 34:19So the difference here is that if
  • 34:21you have some analysis,
  • 34:22you want a test or run and you don't
  • 34:24yet want to automate the whole thing
  • 34:27across the batch of processing
  • 34:28for an entire study,
  • 34:30you can go the individual route with
  • 34:32the specific command parameterized.
  • 34:33Try it out this way or that way
  • 34:36and then once you're done you can
  • 34:38embed it in the run
  • 34:40turnkey workflow and have it scale.
  • 34:42And so all this is supported by very,
  • 34:45you know, this is this is the
  • 34:47part that I really worry about.
  • 34:49And sometimes my colleagues.
  • 34:51Get mad at me because I'm so.
  • 34:56Such a stickler about documentation,
  • 34:58but I really think that for this
  • 35:00to be usable to the community,
  • 35:02we need a documentation base
  • 35:04that is robust both in the wiki
  • 35:06side and the command line side.
  • 35:09So that means that you should be able
  • 35:11to go into the wiki and Conceptually
  • 35:14Review and get instructions and user
  • 35:16guides on how to use this thing,
  • 35:18and then on the command line side.
  • 35:22When you call help or a given function,
  • 35:24you should be able to see exactly how
  • 35:27to run it in a unified way across
  • 35:29the ecosystem such that there isn't
  • 35:32a surprise so that some command
  • 35:34works differently than another,
  • 35:35and so on,
  • 35:37and so the other thing that we really
  • 35:39worked hard is to make it cloud integratable.
  • 35:42So we have an X net system here at Yale
  • 35:45that al is actually collaboratively
  • 35:47helping a stress test that runs
  • 35:49connects natively on top of it, so.
  • 35:52Concretely,
  • 35:52this system can take in various
  • 35:55kinds of data in a secure fashion,
  • 35:58and it has a storage in a
  • 36:00computer attached to it,
  • 36:02and then it has a specific
  • 36:04plugin in the X net.
  • 36:06Implementation that enables containers
  • 36:08to run in the cloud and that container
  • 36:11plugin is then used to deploy Q Nixon.
  • 36:13What you're seeing is an old slide
  • 36:15we used to call it M nap actually,
  • 36:18and it's beta, named and renamed.
  • 36:20It took Unix 'cause one of our
  • 36:23colleagues couldn't pronounce it.
  • 36:24So it it was,
  • 36:26that's an old data name that you're saying.
  • 36:30But basically it's plugin
  • 36:32enabled and this is another.
  • 36:34Kind of view on the architecture
  • 36:36as it's evolved so it supports
  • 36:38data flows across multiple sites.
  • 36:41So this is this is also a very
  • 36:43important feature for multisite
  • 36:44imaging studies where multiple apps
  • 36:46and their data into the ecosystem,
  • 36:49and so again,
  • 36:50what we've implemented at Yale is a
  • 36:52campuswide excellent platform that's
  • 36:54it's both in a local lab environment
  • 36:56in a cloud based environment,
  • 36:58and on the high performance
  • 37:00computing systems here,
  • 37:01and all of them run Q Necks as as a plugin.
  • 37:06And that then a user can go into
  • 37:08these various environments depending
  • 37:10on their use model and deploy this
  • 37:12as an scalable analytics solution.
  • 37:15And in the system,
  • 37:16the way it works actually is
  • 37:18you need a Jason Specification,
  • 37:21so you just tell the system what
  • 37:24exactly you want Q Next to execute.
  • 37:27Then you'd enable your processing dashboard,
  • 37:29which is available in your ex set system,
  • 37:32and then you can launch your containers
  • 37:34using a simple launch button.
  • 37:36You tell it what you wanted to do
  • 37:38based on the Jason Specification
  • 37:40it deploy at scale,
  • 37:42and then you can get individualized
  • 37:44outputs that are reviewing just second,
  • 37:46and so this is this kind of soup
  • 37:48to nuts
  • 37:49workflow that is cloud based is
  • 37:51already implemented in running
  • 37:53and close collaboration with
  • 37:54Dan Marcus is lab at wash U so.
  • 37:57Really, an important colleague in that sense,
  • 37:59and So what we really strive for is an
  • 38:02integrated pipeline support framework.
  • 38:04So if you start from dot coms, parekh,
  • 38:06bids, HCP, Lifespan Compliant Inputs,
  • 38:08any kind of input that we could think of,
  • 38:11and if you start from the scanner,
  • 38:13you should be able to generate
  • 38:16those kinds of Inputs.
  • 38:18The example that I want to highlight
  • 38:20here is the how we run the HCP pipelines,
  • 38:24so the HCP pipelines in Q Necks are
  • 38:27enabled through these multiple steps which
  • 38:29map onto what they call pre freesurfer.
  • 38:32Post Re surfer.
  • 38:33Sorry pre free post and then
  • 38:35their volume processing,
  • 38:37surface mapping and diffusion processing.
  • 38:39All of these are implemented in
  • 38:41Q Next to that Unix API's calls
  • 38:44which we call HCP 12345 and HCPD.
  • 38:47And so when you run them, You basically can.
  • 38:51On top of them,
  • 38:53enable QX processing auxiliary steps
  • 38:55that then take the minimal pre
  • 38:57process steps and achieve additional
  • 39:00QC image movement correction,
  • 39:02derived signal statistics,
  • 39:03nuisance extraction,
  • 39:04nuisance signal removal, task analytics.
  • 39:06See based global data driven
  • 39:09connectivity as well as Parcellation's.
  • 39:11So basically this entire
  • 39:13workflow is automated in Q Mix,
  • 39:15so in fact you can now connect your.
  • 39:20Scanner platform if you have a
  • 39:22Siemens directly to your ex.
  • 39:24Net and auto trigger your conex run
  • 39:26and this is something that we're
  • 39:28actually stress testing now with our
  • 39:31colleague Chris Pittenger at Yale,
  • 39:33who study is ongoing and one of the
  • 39:36first active studies post kovid Here at Yale.
  • 39:39And so we're excited to test
  • 39:42this functionality.
  • 39:43And so again,
  • 39:44those the pipelines actually
  • 39:46are fully implemented in Q.
  • 39:48Nix natively in this multi pipeline support
  • 39:51engine is something that can be scaled.
  • 39:54This is a detailed slide,
  • 39:56sorry,
  • 39:56running back detailed slide,
  • 39:58but it's important because it highlights
  • 40:00one key point which is that to run Q
  • 40:04Nix you really need only two files,
  • 40:06just two files to get it up and running
  • 40:09you need your batch file which is
  • 40:12a set of parameters that tell kenix
  • 40:15what to do in each one of these has
  • 40:18documentation explanations in the
  • 40:20wiki and a mapping file which enables
  • 40:23you to have a flexible input structure.
  • 40:25And get into the QX folder hierarchy,
  • 40:28which is bits compliant fairly easily,
  • 40:30so this mapping krammer.
  • 40:31Can be as trivial is nothing if you're
  • 40:33mapping is already organically supported,
  • 40:36or it can be,
  • 40:37or it can be quite complicated as you see
  • 40:40here where the data set isn't compliant.
  • 40:42And the batch parameter file again allows
  • 40:45you to really deeply parameterise your run,
  • 40:47and so now you can start to test
  • 40:50various values in your parameters.
  • 40:52So concretely here for instance
  • 40:54the pre freesurfer step of the HCP
  • 40:56pipelines has the following parameters.
  • 40:58The post freesurfer step has
  • 41:01the following parameters.
  • 41:02And concretely,
  • 41:03here where we have multiple T1 and T2
  • 41:05images in this data set which were
  • 41:08than declaring the mapping for it,
  • 41:10so only these two files there grammar
  • 41:12behind them is not trivial torn.
  • 41:14But once you know it then then
  • 41:16you have tremendous flexibility
  • 41:17and what you can onboard into QX.
  • 41:20And I promised I'd show you
  • 41:22actually how the command works.
  • 41:24So this is truly AQ Nix Command,
  • 41:26a single command that can run
  • 41:28the whole thing on the command
  • 41:30line in a fully automated way.
  • 41:32So what I want to highlight is this piece,
  • 41:35which are the the steps.
  • 41:36So this is 1 type.
  • 41:38This is 1 specification of the command
  • 41:40where we're basically saying We want to
  • 41:42process all the bolds we want to take
  • 41:45the raw data input from this location.
  • 41:47We are data format is HCP lifespan.
  • 41:49In this case we want to batch
  • 41:51it using this batch file.
  • 41:53We want to map it using this mapping file.
  • 41:55Our working directory.
  • 41:56Is this so the Outputs will go here we
  • 41:59want to our project this the path for it.
  • 42:02Maps onto this.
  • 42:03This is a feature that matters for X,
  • 42:06not we want to run it locally.
  • 42:09We want to name our file
  • 42:10outputs in a specific way.
  • 42:12We don't want to override anything
  • 42:13we want to work only in a single
  • 42:15session from a single person.
  • 42:17And this is the ID for it which matches,
  • 42:20and then these are the steps that
  • 42:21we want to run turnkey through.
  • 42:24So if we don't have would
  • 42:25never created this study ever,
  • 42:27then we can do that create study
  • 42:29so it will populate the entire
  • 42:30hierarchy in this location,
  • 42:32even if there's no folder there ever on
  • 42:34the file system and then just continue.
  • 42:37So this goes all the way through extraction
  • 42:39of data driven Bolt connectivity features,
  • 42:41and this is a function supported
  • 42:43by a command,
  • 42:43for instance computable DFC,
  • 42:45which you can actually run in isolation,
  • 42:47can just go and execute that.
  • 42:49By typing in QX space and then this command,
  • 42:52and then the parameters behind it.
  • 42:55But the run turnkey engine
  • 42:57will just do it all for you.
  • 42:59So what is the outlook like?
  • 43:02So the outputs are fairly
  • 43:04reliable and scalable,
  • 43:05so this is an example of Q Nix run
  • 43:08that we did actually years ago on two
  • 43:11people scan twice on two different
  • 43:14sites here at Yale and Mount Sinai,
  • 43:17and we ran it through the pipeline.
  • 43:19And just to show qualitatively,
  • 43:21just to give you a sense of what
  • 43:23are the outputs that you get so.
  • 43:26It supports this kind of multi site
  • 43:28multi modal turnkey image incapacity
  • 43:31that that I think is highly useful
  • 43:33if you're doing clinical imaging and
  • 43:36I think that this is the last slide
  • 43:39in the series of slides where I want
  • 43:41to highlight that gives you really
  • 43:44multimodal automated QC functionality,
  • 43:46so this is important because you
  • 43:49are able to truly inspect the
  • 43:51quality of your data in in.
  • 43:54A sense where you stay very close to the.
  • 43:58Modalities that are connected at the
  • 44:00single subject level for that session,
  • 44:02and inspecting those becomes really
  • 44:04important both in terms of quantitative
  • 44:07in visual steps in sick Unix supports this
  • 44:10so this is actual kenix outputs for what?
  • 44:13AT one weighted QC picture looks like Weiling
  • 44:16bold functional connectivity and diffusion.
  • 44:18We also actually support pet now
  • 44:20things to Karafun to know who is
  • 44:23research scientists in our group we
  • 44:26don't have a QC picture for it yet.
  • 44:28But this gives you a flavor of what you
  • 44:31can actually get out of it once you run it.
  • 44:34And once you execute it on your data set,
  • 44:37so I'll stop here.
  • 44:39In the interest of time and see if there
  • 44:41are questions and if we can open up for
  • 44:44discussion and without wants to jump in.
  • 44:47So thank you so much for your attention.
  • 44:50Thanks Alan, This is really,
  • 44:52really exciting.
  • 44:53I think there's a lot of lot
  • 44:56of uses for this.
  • 44:57We do have one question so far in
  • 45:00the chat function, which is Cancun
  • 45:03X access data stored in the cloud.
  • 45:058 WS like the Abcd data set.
  • 45:09That's a great question.
  • 45:10So the ABC data set is stored within
  • 45:14the national data archive awf system,
  • 45:18and so the way that that works.
  • 45:21So the answer is sort of yes,
  • 45:25but not not easily.
  • 45:27And the answer that answer is
  • 45:30because nothing can access.
  • 45:32The NBA data archive easily, So what?
  • 45:37So there's a grant, actually.
  • 45:40I think it's funded now through.
  • 45:44Damage to the human connectome
  • 45:46project team to make X net
  • 45:47interrupt interoperable with NDA,
  • 45:49and so if that were to happen,
  • 45:51then it becomes trivial,
  • 45:52so the other way that we could do it
  • 45:55we haven't implemented yet is too,
  • 45:57so we actually have an AWS plug in.
  • 46:00Believe it or not,
  • 46:01in Q Next so you can query a WS
  • 46:04through to next if you want to.
  • 46:07But you need to write a script probably,
  • 46:10so you probably need to write
  • 46:12a module to query a WS,
  • 46:14get the data on some local
  • 46:17platform and then run Q Nix.
  • 46:19Alternatively,
  • 46:19what you would need is a dedicated cluster
  • 46:23that the NDA supports that runs Unix.
  • 46:26There in some version,
  • 46:27which then can be requested for
  • 46:29credit and then you could run it.
  • 46:32The former implementation already exists.
  • 46:34You could do it the latter.
  • 46:36I'd have to call up Greg Farber and ask him
  • 46:40to fund a grant so that we can build that.
  • 46:44But yeah, it's a great question.
  • 46:45I'd love to be able to do that, yeah?
  • 46:48Elizabeth Olsen asks this is very
  • 46:51exciting and does it handle Mrs data?
  • 46:55So it in principle yes.
  • 46:57So if it doesn't have an
  • 47:00Mrs Pipeline implemented,
  • 47:01it's in one of the reasons why
  • 47:04we haven't yet implemented it,
  • 47:07because we're trying to stay.
  • 47:10We're trying to make Unix surface
  • 47:12based compatible,
  • 47:13and as you know Mrs.
  • 47:15The resolution is still evolving right?
  • 47:17Even though you can get your
  • 47:19voxels to be able
  • 47:21to certain size.
  • 47:22So the way I would handle Mrs
  • 47:25is if you have a pipeline in
  • 47:28analytic framework for Emerson.
  • 47:30If you get your say.
  • 47:32Glutamate Spectra and the then you
  • 47:34can easily embed the Mrs measure
  • 47:36into the QX hierarchy and regress
  • 47:39it onto another neural measure
  • 47:41or even map it onto a location,
  • 47:44but it's a great question,
  • 47:46so it's natively Q Nix doesn't
  • 47:48have an MRI's capacity at present.
  • 47:53Got it. Great. Other
  • 47:56questions from the audience.
  • 48:00But I should say if you want to
  • 48:02write a Unix plugin will take it.
  • 48:04Great. Peter ass disk units allow for
  • 48:08safety and 50 files to be compared.
  • 48:12Yes it does actually, yeah,
  • 48:14so that's that's we wanted to
  • 48:16explicitly make Q Nix format
  • 48:18agnostic so it supports both,
  • 48:19so you can get your data.
  • 48:22It's really up to you, right?
  • 48:24So you can stay in volume or go
  • 48:26to the surface and vice versa.
  • 48:28So projecting back and forth is supported
  • 48:31by the Workbench commands that are
  • 48:33also embedded as a dependency in Q Mix.
  • 48:36You get the Workbench Command
  • 48:37as a Q Next feature in there.
  • 48:40So you can definitely do it.
  • 48:43Great. More rain for any other
  • 48:47questions from the attendees.
  • 48:49Any other panelists have questions for Alan?
  • 48:52Does Q Next fly now?
  • 48:54It doesn't take any breakfast.
  • 48:56I don't know can I serve you breakfast?
  • 48:59Peter actually also has a follow up question
  • 49:02can nifti files be used for Mylan mapping?
  • 49:05Yes, yes they could in principle.
  • 49:07So I do think it's it's really
  • 49:09kind of a methodological,
  • 49:11scientific question, right?
  • 49:12Because you could if you
  • 49:14have your volume Maps,
  • 49:16T1T2 high resolution volumes.
  • 49:17Their registration is basically
  • 49:19high parameter nonlinear
  • 49:20registration to the Mnay Atlas,
  • 49:22and so in principle you could get the
  • 49:24ratio in the volume representation and
  • 49:27not mapped onto the surface ribbon.
  • 49:30So you have those two images and they
  • 49:32come out of the pipeline organically,
  • 49:35so you can just compute.
  • 49:37In my own map,
  • 49:38using the same algorithm in the volume.
  • 49:43Great. And another question asks,
  • 49:46is it possible to use Q Necks to calculate
  • 49:49functional connectivity entropy? Yes,
  • 49:52so the way I would do it is so there's a.
  • 49:57There's a command bold FC compute
  • 50:00in which we have multiple.
  • 50:03Derived metrics from the bold time series,
  • 50:08so it's. Will you can stay dance?
  • 50:12You can take all the vertices and order
  • 50:14all the boxes if you're in volume and
  • 50:17work with those or you can parcel ate
  • 50:20it so we have personalization support.
  • 50:22And then when we typically,
  • 50:24partially because it gives us,
  • 50:26you have more powerful data reduction.
  • 50:29Output just literally get more statistical
  • 50:31power when you average the signal
  • 50:33in a functional contiguous region,
  • 50:34but then you can get an FC matrix
  • 50:36out of it and then that FC matrix.
  • 50:39What analytics you do want it is completely
  • 50:41up to you and Kunik says are embedded in it,
  • 50:44so R is. Uh, supported dependency because
  • 50:47we need are for certain analytics.
  • 50:50So if you wanted to.
  • 50:53Take your code and run entropy
  • 50:55on that derived FC Matrix.
  • 50:57You could.
  • 50:58I don't know that we currently have native.
  • 51:03FC entropy feature output explicitly
  • 51:04supported after check, but I don't think so.
  • 51:07I think that we have various kinds of
  • 51:10derived metrics from that EPS Matrix,
  • 51:12but again,
  • 51:13if you wanted to code and entropy equation,
  • 51:15we can easily easily embedded in
  • 51:18that bold FC compute function.
  • 51:20Because really quickly it sounds like
  • 51:22we have another question I think would
  • 51:24be really useful for everyone to hear
  • 51:26the answer to which is from Maxwell Elliot.
  • 51:28Can you comment on your experience
  • 51:30with QC failures when running Q Next
  • 51:33out of the box in a typical data set,
  • 51:35how many subjects typically need to
  • 51:37be run and what are common places
  • 51:39where things might fail?
  • 51:40That's a great question,
  • 51:41so I think that you know I'll tell
  • 51:44you what was the easiest and what was
  • 51:46the hard as that is set to run and
  • 51:49then I'll kind of compare notes so.
  • 51:51So for instance.
  • 51:54Be Snip was pretty easy for a multi
  • 51:56site study and I'll tell you why in
  • 51:58a second whereas abide it was not.
  • 52:00So by D1 and two was was really
  • 52:04challenging to run in period and be.
  • 52:07Snip was easy so.
  • 52:10Another one that was fairly easy to run was.
  • 52:16I don't want to let's stay with those right?
  • 52:19So so here's what happens.
  • 52:21So if you if your data organization on
  • 52:23the front end and the data ingestion step.
  • 52:26So if you have a data hierarchy or data
  • 52:28format across these studies that just
  • 52:31isn't compliant or is inconsistent,
  • 52:33that's going to be your biggest
  • 52:35source of failure.
  • 52:36So the major thing will be your dad
  • 52:38organization and Ingestion steps so that
  • 52:40data orchestration on the front end.
  • 52:42So if you if you get that right,
  • 52:45and if you really have.
  • 52:47Your dad I prepped for kunik suggestion.
  • 52:49So Q Nixes bids compliance.
  • 52:51If you have bids sidecars,
  • 52:52then it's going to work OK.
  • 52:54So it's going to work pretty
  • 52:56pretty automatically and fine.
  • 52:58So assuming that you've taken care of that
  • 53:00which Abidi wanting to our nightmare,
  • 53:02and so that's a good example where
  • 53:05you're going to have if you just try to
  • 53:07run it on a downloaded a body data set.
  • 53:11Pretty much it's going to
  • 53:12be a miserable failure,
  • 53:14so you have to do that.
  • 53:16That orchestration part initially.
  • 53:17On a data set that Spits combined or doesn't
  • 53:20have much this harmonization across sites,
  • 53:22it becomes a lot easier.
  • 53:24So let's make the assumption that
  • 53:26your data is bid side cars and that
  • 53:28you have a T1 image and that you
  • 53:31have some bold and some diffusion.
  • 53:33Now if you have just that then
  • 53:35the next rate limiting factor
  • 53:37will be how good is your T1.
  • 53:40If your T1 is no good and it's really
  • 53:42low quality, then you're going to.
  • 53:45Any pipeline will fail.
  • 53:46So will Q next.
  • 53:48Right, you're gonna get Fuzzy T1 images.
  • 53:50Your segmentations are not going
  • 53:52to look good, you're free,
  • 53:53surfer will fail or be stuck in topology,
  • 53:56correction forever.
  • 53:56And then you're going to,
  • 53:58you know it's gonna choke.
  • 54:00So you're going to get some
  • 54:02percent fail there.
  • 54:03But assuming your T1 is solid so I
  • 54:05would say 1 millimeter isotropic high
  • 54:07quality or lower resolution than that.
  • 54:09Then it pretty much works.
  • 54:12All the time,
  • 54:13we don't see any issues like the success
  • 54:16rate is almost 100% and then really
  • 54:19the next question is your bold modality,
  • 54:22right?
  • 54:22If it's the if you have legacy data
  • 54:25set with no spin echoes collected,
  • 54:28it'll work pretty much all the time
  • 54:31unless your registration fails miserably
  • 54:33to your T1 somehow and that happens
  • 54:35rarely unless the there's some kind
  • 54:38of real miss orientation between
  • 54:40the nifty's or something like that,
  • 54:42those are.
  • 54:43We see that rarely.
  • 54:45And and those are really the two key
  • 54:49fail points for your data, right?
  • 54:51Is that registration of your bold onto
  • 54:54the T1 and your T1 being solid diffusion?
  • 54:57Five points are pretty robust.
  • 54:59Typically, the more angular directions
  • 55:01you have it kind of doesn't matter.
  • 55:04So you just want to make sure that.
  • 55:07That that you keep track of your
  • 55:11diffusion tables and so on but.
  • 55:14The four for legacy data set to just
  • 55:16in terms of how good the T ones are,
  • 55:19I would say we see fail rates
  • 55:21anywhere between 5%,
  • 55:22maybe a little lower than that.
  • 55:24Sometimes up to 10%,
  • 55:25but it's usually a data quality issue.
  • 55:27It's not literally stuff that data
  • 55:29that you wouldn't want to use anyway,
  • 55:31so if you saw it like like you don't
  • 55:34want to touch that T1 with a 10 foot pole,
  • 55:37so it's really that's what's going
  • 55:38to cause your biggest failure.
  • 55:40And then after that really,
  • 55:41it's pretty smooth sailing because
  • 55:43you're dealing with derived features.
  • 55:44Well, thank you Alan.
  • 55:46I do want to be respectful.
  • 55:48The time it's 501 would you
  • 55:50be comfortable with people
  • 55:51contacting you in case they
  • 55:53have further questions?
  • 55:55Yeah, absolutely.
  • 55:55Also I mentioned this briefly,
  • 55:57but Q&X is featured on so it's Q
  • 56:00Next at yale.edu so and we have a
  • 56:03forum in a wiki and if you have
  • 56:06questions about it by all means,
  • 56:08and probably I'm going to ask
  • 56:10how I like to retweet when we're
  • 56:12public releasing so that we can.
  • 56:15Update the link on the website so
  • 56:16people can get to it, so just stay tuned.
  • 56:19Where were resolving some final blockers
  • 56:21before we stage the public release?
  • 56:23Probably within the next month or two?
  • 56:25Yeah, we can definitely do that.
  • 56:27Excellent and I think Sarah is about
  • 56:29to introduce our next week speaker.
  • 56:31Yes, so great great talk.
  • 56:33Thank you so much.
  • 56:34It was really fun to hear about
  • 56:36the new work and also I think
  • 56:38I'm sure lots of people share my
  • 56:41enthusiasm about hoping to be able
  • 56:43to use this resource going forward.
  • 56:45I'm excited that we're having another
  • 56:47end three speaker in November,
  • 56:48so John Murray will be.
  • 56:50Joining us to talk about his work,
  • 56:53the title will be a flexible
  • 56:55framework for simulating an fitting
  • 56:56generalized drift diffusion model.
  • 56:58So for people who've been thinking
  • 57:01about these kinds of data,
  • 57:02that can be really helpful resource an,
  • 57:05I'll say that that talk will be again
  • 57:08on the 1st Thursday of the month,
  • 57:11November 5th at 4:00 PM.
  • 57:13We may change sometimes,
  • 57:15but will anticipate generally
  • 57:16running on the 1st Thursday of
  • 57:18each month at 4:00 PM so.
  • 57:20Hope to see people back for the talk next
  • 57:24month and thanks again to Alan for today.
  • 57:27Thank you everybody.
  • 57:28Thanks for coming.
  • 57:29See you next month.
  • 57:32Alan Um?