WEBVTT

00:00.000 --> 00:18.000
Okay, I'm Miguel, so I'm presenting how open-source software is shaping the future of healthcare.

00:18.000 --> 00:25.000
I'm a senior research software engineer at the Advanced Research Computer Center at UCL.

00:25.000 --> 00:28.000
So this is mainly the overview.

00:28.000 --> 00:35.000
We're going to look at some challenges that we faced from bench to bedside, some use cases,

00:35.000 --> 00:40.000
and a community we are trying to build around open software in healthcare.

00:40.000 --> 00:45.000
First I start with my, I guess, kind of journey.

00:45.000 --> 00:48.000
I'm Mexican, based in the UK.

00:48.000 --> 00:54.000
So one thing I want to point out is that, like, nearly 20 years ago,

00:54.000 --> 00:59.000
as I go as far as using Ubuntu and GitHub,

00:59.000 --> 01:03.000
because I know a lot to use MATLA,

01:03.000 --> 01:07.000
I mean, I buy the private CD using MATLA, in fact, in Mexico.

01:07.000 --> 01:12.000
But then I realize, how can I be more kind of ethic,

01:12.000 --> 01:15.000
and more, I guess,

01:15.000 --> 01:23.000
because, yeah, like, not breaking the rules of the licensing.

01:23.000 --> 01:31.000
So I start to look into a junior update, all the kind of libraries in the BR and KDA,

01:31.000 --> 01:34.000
you know, then I find out, GitHub,

01:34.000 --> 01:37.000
and then I start working mainly on kind of engineering war.

01:37.000 --> 01:40.000
I try to dance with robots,

01:41.000 --> 01:45.000
and then I realize I want to do more of this kind of war,

01:45.000 --> 01:50.000
like, how can I combine computers with software,

01:50.000 --> 01:54.000
and I start with my PhD at Birmingham University,

01:54.000 --> 01:56.000
doing human robot interactions,

01:56.000 --> 02:01.000
still working on kind of this war of open software, open science.

02:01.000 --> 02:05.000
I publish my thesis on the open science thesis,

02:05.000 --> 02:08.000
and then I start doing a postdoc in King's College,

02:08.000 --> 02:11.000
where I was trying to do kind of synthetic babies,

02:11.000 --> 02:15.000
using mainly using, you know,

02:15.000 --> 02:17.000
kind of techniques of diffusion models,

02:17.000 --> 02:22.000
doing predicts around AI enabled ecocardiography,

02:22.000 --> 02:26.000
and all the predicts around ultrasound needle tracking.

02:26.000 --> 02:29.000
Just two years ago, I joined UCL,

02:29.000 --> 02:33.000
where I basically working on predicts around software,

02:33.000 --> 02:35.000
or clinical translation,

02:35.000 --> 02:38.000
we do praise around clinical engineering.

02:38.000 --> 02:43.000
So you can navigation using Python libraries,

02:43.000 --> 02:46.000
doing war with multimodal imaging,

02:46.000 --> 02:49.000
some real-time AI pipelines,

02:49.000 --> 02:52.000
and now we are kind of thinking

02:52.000 --> 02:55.000
how we can make use of all these experience,

02:55.000 --> 02:58.000
we have been, I guess, collecting through different years,

02:58.000 --> 03:00.000
and we are colleagues.

03:00.000 --> 03:04.000
So there's a big challenge when you go from bench

03:04.000 --> 03:06.000
to bedside.

03:06.000 --> 03:09.000
This is kind of the balance when you are working

03:09.000 --> 03:12.000
with the latest generation of carbon software,

03:12.000 --> 03:15.000
with a state of AI models,

03:15.000 --> 03:18.000
so you want to work maybe with a kind of lay system,

03:18.000 --> 03:22.000
but then you need to also look at the other side

03:22.000 --> 03:23.000
when you are kind of thinking,

03:23.000 --> 03:28.000
how can I regulate my software that can be maybe

03:28.000 --> 03:31.000
in your patient?

03:31.000 --> 03:34.000
So that's where we need to think carefully,

03:34.000 --> 03:37.000
how we made use of these latest technologies,

03:37.000 --> 03:39.000
and latest models,

03:39.000 --> 03:42.000
because maybe, yeah, definitely it's improving

03:42.000 --> 03:45.000
kind of the state of the accuracy of the model,

03:45.000 --> 03:48.000
but that may be not good for the patient,

03:48.000 --> 03:51.000
so we need to go into all these regulations

03:51.000 --> 03:54.000
for medical, a software device,

03:54.000 --> 03:56.000
so AI systems or medical devices,

03:56.000 --> 03:59.000
and we need people from pure mass aspects,

03:59.000 --> 04:02.000
so it's like a huge, I guess,

04:02.000 --> 04:05.000
and therefore, it's not only one person that goes from,

04:05.000 --> 04:09.000
you know, like doing a fun project to go

04:09.000 --> 04:14.000
into helping and improving the health of persons,

04:14.000 --> 04:17.000
so this is like a common pipeline

04:17.000 --> 04:20.000
when you start developing your medical AI device,

04:20.000 --> 04:22.000
you validate your software,

04:22.000 --> 04:26.000
a generalized interoperability,

04:26.000 --> 04:29.000
longevity and liability,

04:29.000 --> 04:35.000
and then you finally go into the application

04:35.000 --> 04:40.000
of your software, right?

04:40.000 --> 04:43.000
But then you start going deep in

04:43.000 --> 04:47.000
why I need to build my software as a medical device,

04:47.000 --> 04:51.000
so it's true how to be a challenging

04:51.000 --> 04:54.000
you confront like a, you know,

04:54.000 --> 04:58.000
say not clinical or a Q-s aspect background,

04:58.000 --> 05:02.000
so you need to navigate all the regulations,

05:02.000 --> 05:05.000
all the standards, and it's not a straightforward,

05:05.000 --> 05:08.000
and all this, I guess, on the payment,

05:08.000 --> 05:11.000
you need to actually buy the licenses

05:11.000 --> 05:14.000
to get access to these kind of, you know,

05:14.000 --> 05:18.000
frameworks, but luckily you, so Google the standards,

05:18.000 --> 05:22.000
you can find interesting papers on how people

05:22.000 --> 05:25.000
are kind of using standards to produce,

05:25.000 --> 05:28.000
software as medical devices.

05:28.000 --> 05:32.000
There are also some guidelines on how we can produce,

05:32.000 --> 05:37.000
like follow good software practices, you see FDA,

05:37.000 --> 05:40.000
so what, what, for example, happens is

05:40.000 --> 05:44.000
when you have a new data set, you need to validate,

05:44.000 --> 05:47.000
sorry, you need to validate,

05:47.000 --> 05:52.000
you need to train the model, you need to engage with your clinical colleague,

05:52.000 --> 05:55.000
and then kind of validate all this pipeline,

05:55.000 --> 05:58.000
so request lots of interaction as well.

05:58.000 --> 06:02.000
So, I mean, this is kind of the general pipeline

06:02.000 --> 06:05.000
when you are trying to implement new models

06:05.000 --> 06:08.000
into or producing a new device,

06:08.000 --> 06:11.000
and this is kind of,

06:11.000 --> 06:15.000
so landscape when you are trying to incorporate

06:15.000 --> 06:18.000
the standards, so it's very challenging,

06:18.000 --> 06:22.000
that's something I don't understand at this stage,

06:22.000 --> 06:26.000
but I just noticed that all the lights

06:26.000 --> 06:30.000
just point to testing, so that means

06:30.000 --> 06:35.000
the unit testing is very important for your development,

06:35.000 --> 06:38.000
because you are creating a new model,

06:38.000 --> 06:43.000
then you need to test that model with maybe a small data set,

06:43.000 --> 06:46.000
and then with those, that is more data set than you,

06:46.000 --> 06:50.000
you are sure, or make sure you mitigate any risk

06:50.000 --> 06:52.000
of your kind of pipeline.

06:52.000 --> 06:55.000
So, it's like a huge, I guess, fear to navigate,

06:55.000 --> 06:59.000
but just to give you an overview of what you say,

06:59.000 --> 07:03.000
but you are building software as medical devices.

07:03.000 --> 07:08.000
Okay, so now let's go a bit of into the use cases,

07:08.000 --> 07:11.000
so I would like to talk about this feature

07:11.000 --> 07:14.000
about some image-in synthesis.

07:14.000 --> 07:17.000
I mean, just for context,

07:17.000 --> 07:19.000
usually, I guess, plain language,

07:19.000 --> 07:24.000
go to escans, and they want to understand

07:24.000 --> 07:26.000
the healthiness of the baby.

07:26.000 --> 07:29.000
So, if we want to also,

07:29.000 --> 07:31.000
I would like to take these okay conditions

07:31.000 --> 07:35.000
to isolate this kind of procedure,

07:35.000 --> 07:38.000
then we need to get access to these data sets

07:38.000 --> 07:40.000
to train our models.

07:40.000 --> 07:42.000
I was starting looking into data sets,

07:42.000 --> 07:44.000
because there are different challenges

07:44.000 --> 07:46.000
on the, I guess, biometrics,

07:46.000 --> 07:50.000
but one main challenge is the data sets.

07:50.000 --> 07:53.000
So, there are few public data sets

07:53.000 --> 07:56.000
that we can, I guess, use to train your models.

07:56.000 --> 07:59.000
And that's where we are thinking,

07:59.000 --> 08:02.000
because, definitely, there's a few data sets

08:02.000 --> 08:05.000
because of the data privacy,

08:05.000 --> 08:08.000
we want to protect patients.

08:09.000 --> 08:13.000
We want also anonymize or sell the anonymous

08:13.000 --> 08:16.000
the data information of patients.

08:16.000 --> 08:18.000
That's understandable,

08:18.000 --> 08:20.000
but if you want to push the boundaries

08:20.000 --> 08:22.000
or how we can maybe improve the model

08:22.000 --> 08:25.000
to detect any kind of biometric disease,

08:25.000 --> 08:29.000
then one way to do on one way to think about

08:29.000 --> 08:33.000
this is maybe using synthetic data sets.

08:33.000 --> 08:37.000
So, for example, in the case of this model data sets,

08:37.000 --> 08:40.000
which is an open data set,

08:40.000 --> 08:43.000
you can analyze the different,

08:43.000 --> 08:48.000
different image brain plays for features.

08:48.000 --> 08:52.000
You can then do a bit of anonymization,

08:52.000 --> 08:54.000
ammentation of the model,

08:54.000 --> 08:55.000
10-year pilot,

08:55.000 --> 08:57.000
and finally, engage with your clinical

08:57.000 --> 09:00.000
collaborative to validate the quality

09:00.000 --> 09:02.000
of that kind of image synthesis.

09:02.000 --> 09:06.000
So, that's where we are trying to do here.

09:06.000 --> 09:09.000
I mean, I don't want to go into the test,

09:09.000 --> 09:12.000
but we've been using some genetic adversarial networks,

09:12.000 --> 09:16.000
some deformers based guns as well.

09:16.000 --> 09:20.000
The important thing here is how we engage with

09:20.000 --> 09:24.000
clinical clinicians to validate our models.

09:24.000 --> 09:31.000
So, for example, this is one data set of real images,

09:32.000 --> 09:36.000
some using guns, one methodology,

09:36.000 --> 09:39.000
and other transform based guns.

09:39.000 --> 09:43.000
So, I guess, I guess you need to have that

09:43.000 --> 09:47.000
by a clinician to judge it is a reliable

09:47.000 --> 09:51.000
and clinically acceptable images.

09:51.000 --> 09:53.000
So, engineers, like I said,

09:53.000 --> 09:55.000
will say, oh, that looks good to me,

09:55.000 --> 09:58.000
but then you go for one expert,

09:58.000 --> 10:02.000
they kind of validate the quality of that image.

10:02.000 --> 10:07.000
So, that's where we start kind of putting the clinical

10:07.000 --> 10:12.000
in the loop to validate the quality of that image.

10:12.000 --> 10:15.000
So, yeah, and also evaluating the metrics

10:15.000 --> 10:18.000
and the quality of the image as well.

10:18.000 --> 10:22.000
And then we have some kind of future work

10:22.000 --> 10:27.000
and how we can maybe go from one plane to the other plane

10:27.000 --> 10:31.000
or also using data sets from, for example,

10:31.000 --> 10:34.000
there's African data set ultrasound.

10:34.000 --> 10:36.000
So, there are different parts of Africa

10:36.000 --> 10:40.000
that we can change kind of the characteristics

10:40.000 --> 10:42.000
of the ultrasound physics as well.

10:42.000 --> 10:45.000
And we can also help to produce,

10:45.000 --> 10:52.000
help to produce this kind of more reliable data sets

10:52.000 --> 10:55.000
that can help other communities.

10:55.000 --> 11:00.000
So, with that, we then have some papers

11:00.000 --> 11:01.000
and middle.

11:01.000 --> 11:04.000
We also developed Python-based library

11:04.000 --> 11:10.000
where we are trying to create like a community

11:10.000 --> 11:11.000
as well.

11:11.000 --> 11:17.000
So, we are discussing how we can use this new data set.

11:17.000 --> 11:21.000
So, we can maybe produce more kind of open data sets

11:21.000 --> 11:25.000
that others can make use of that to improve

11:25.000 --> 11:27.000
and train the models.

11:27.000 --> 11:29.000
So, that's one example.

11:29.000 --> 11:34.000
The other example is about real-time AI applications.

11:34.000 --> 11:38.000
We'll be collaborating with Nvidia

11:38.000 --> 11:40.000
creating these kind of pilots

11:40.000 --> 11:44.000
on how we train models, how we build the applications,

11:44.000 --> 11:47.000
how we validate very, very, very daily.

11:47.000 --> 11:52.000
And the application and how we deploy that into the medical device.

11:52.000 --> 11:57.000
That's, I mean, Nvidia is really good at producing open source

11:57.000 --> 12:00.000
of where SDKs.

12:00.000 --> 12:04.000
And I think that's also one of the selling points of the hardware

12:04.000 --> 12:08.000
because they produce a nice documentation there.

12:08.000 --> 12:13.000
I guess, I mean, you need to actually build that relationship

12:14.000 --> 12:17.000
but the software is working.

12:17.000 --> 12:20.000
And I guess the downside is that you need to have funding

12:20.000 --> 12:22.000
to buy these expensive GPUs.

12:22.000 --> 12:25.000
The other thing is that you need to also buy hardware

12:25.000 --> 12:28.000
that is that can be used in the clinic.

12:28.000 --> 12:31.000
So, you have like a medical computer devices.

12:31.000 --> 12:33.000
So, that's very expensive.

12:33.000 --> 12:37.000
I mean, does the other downside of using this,

12:37.000 --> 12:41.000
I guess, expensive hardware?

12:41.000 --> 12:46.000
They develop this holoscan SDK basically

12:46.000 --> 12:48.000
with this holoscan SDK.

12:48.000 --> 12:50.000
You can stream video.

12:50.000 --> 12:52.000
Then do some formatting.

12:52.000 --> 12:54.000
Then do multi-eye.

12:54.000 --> 12:57.000
Some segmentation and visualize the open source.

12:57.000 --> 13:01.000
They have also nice kind of documentation

13:01.000 --> 13:04.000
on how you create your Python library,

13:04.000 --> 13:07.000
your kind of configuration files.

13:08.000 --> 13:11.000
And then, without we start working in a project

13:11.000 --> 13:14.000
on doing endoscopic tutorial.

13:14.000 --> 13:17.000
So, very basically, the camera that goes into your nose

13:17.000 --> 13:21.000
and start looking into the kind of tissue

13:21.000 --> 13:26.000
to find tumors, I guess, in the brain.

13:26.000 --> 13:30.000
Maybe I'm not going to play the video, but basically,

13:30.000 --> 13:35.000
but basically, it's basically helping the clinicians

13:35.000 --> 13:40.000
to identify tumors or train

13:40.000 --> 13:44.000
also clinicians to go into more accurate,

13:44.000 --> 13:48.000
I guess, identification of these areas

13:48.000 --> 13:52.000
that may lead to some diseases.

13:52.000 --> 13:57.000
So, we develop open source library.

13:57.000 --> 14:01.000
And we have also nice documentation,

14:01.000 --> 14:05.000
how we do, how we onboard new students,

14:05.000 --> 14:09.000
new clinicians, how they can produce

14:09.000 --> 14:11.000
in a very basic example,

14:11.000 --> 14:14.000
to bring your own model.

14:14.000 --> 14:19.000
And yeah, how they can debug the prototype as well.

14:19.000 --> 14:23.000
So, we work on a model doing multi-eye,

14:23.000 --> 14:28.000
meaning that you do some segmentation

14:28.000 --> 14:31.000
and some landmark clean as well.

14:31.000 --> 14:34.000
I mean, it's not visible, but that means you do this

14:34.000 --> 14:36.000
multiple multi-head models.

14:36.000 --> 14:39.000
We also do some phase model as well.

14:39.000 --> 14:43.000
So, depends on where the clinician is in the operation.

14:43.000 --> 14:45.000
The model can do that.

14:45.000 --> 14:49.000
And then, we develop this kind of multi-eye models as well.

14:49.000 --> 14:52.000
All these is open source.

14:52.000 --> 14:57.000
I mean, you understand, you can dive into that.

14:57.000 --> 15:01.000
And then, we also help, I guess,

15:01.000 --> 15:06.000
researchers to think about how to show good practices

15:06.000 --> 15:10.000
on how to contribute, how to create pull requests.

15:10.000 --> 15:15.000
You know, review it, magic when everybody is happy.

15:15.000 --> 15:19.000
And then, yeah, as I was saying, onboard in new users

15:19.000 --> 15:24.000
at the new models, creating new PRs,

15:25.000 --> 15:28.000
how to release the software libraries as well

15:28.000 --> 15:32.000
doing a standardized documentation and what we are doing.

15:32.000 --> 15:36.000
So, we have a very nice virtual control.

15:36.000 --> 15:41.000
All the other nice projects about what are called ocular,

15:41.000 --> 15:47.000
which is an open source care using a state of the AI

15:47.000 --> 15:50.000
for real-time monitoring and diagnosis.

15:50.000 --> 15:55.000
What I mean by that is basically using images from,

15:55.000 --> 15:58.000
from topology.

15:58.000 --> 16:01.000
So, there are different modalities here.

16:01.000 --> 16:05.000
But I was going to focus on one particular example

16:05.000 --> 16:09.000
that we are working now with our clinical lecturer in UCL.

16:09.000 --> 16:14.000
He's interested in understanding the NISTASMA,

16:14.000 --> 16:17.000
which is an eye movement disorder.

16:18.000 --> 16:24.000
I mean, he wants to make use of this real-time AI application

16:24.000 --> 16:27.000
in the emergency department,

16:27.000 --> 16:31.000
because what he says is that every time anyone with this disorder

16:31.000 --> 16:36.000
goes into the emergency, they need to find,

16:36.000 --> 16:39.000
I guess, an expert, there's nobody there.

16:39.000 --> 16:43.000
So, one way to do that is maybe using a mobile application

16:43.000 --> 16:48.000
that he can use to kind of out to detect any kind of diseases.

16:48.000 --> 16:52.000
So, we start working on this similar pipeline,

16:52.000 --> 16:55.000
developing a trained optimized models,

16:55.000 --> 16:58.000
developing the application by finding the model

16:58.000 --> 17:02.000
and deploying into the mobile device.

17:02.000 --> 17:06.000
We have this library, it's called ready,

17:06.000 --> 17:09.000
it's real-time AI for NISTASMA's.

17:10.000 --> 17:15.000
I mean, it's currently on developing

17:15.000 --> 17:18.000
if anyone interested, please let me know.

17:18.000 --> 17:22.000
I can add you to the repo, because it's still a private,

17:22.000 --> 17:25.000
but all the worries is open.

17:25.000 --> 17:28.000
But, particularly for this one, because we are working on our paper,

17:28.000 --> 17:32.000
I guess, what we publish or prepping,

17:32.000 --> 17:35.000
we will put also the library open.

17:35.000 --> 17:38.000
But, similar to earlier other projects,

17:38.000 --> 17:41.000
we have documentation,

17:41.000 --> 17:44.000
we're going to onboard people and nice forums

17:44.000 --> 17:48.000
to discuss about data sets, new papers,

17:48.000 --> 17:51.000
and what we can do to improve that.

17:51.000 --> 17:58.000
This is the quick demo, you see in UNET,

17:58.000 --> 18:00.000
and more of your data set.

18:00.000 --> 18:06.000
UNET, I just go to GitHub find a very basic model.

18:06.000 --> 18:08.000
Implemented it.

18:08.000 --> 18:11.000
Also, Google, how can I get data sets

18:11.000 --> 18:14.000
from AI segmentation?

18:14.000 --> 18:18.000
Like Splera, I find data called Mobius.

18:18.000 --> 18:21.000
And I train UNET, and then deploy UNET

18:21.000 --> 18:26.000
to do this kind of real-time AI inference of this segmentation.

18:26.000 --> 18:30.000
So, why you can see here is, I guess,

18:30.000 --> 18:36.000
the segmentation of the AI is that crazy kind of tracking

18:36.000 --> 18:41.000
and that's useful for the Ocaski or my clinical collaborator

18:41.000 --> 18:45.000
to understand how we can make use of this application

18:45.000 --> 18:47.000
in the image settings.

18:47.000 --> 18:51.000
We have plans to create like a guidance

18:51.000 --> 18:56.000
to help clinicians to kind of the better position

18:56.000 --> 19:00.000
in illumination and clarity of the image

19:00.000 --> 19:03.000
when you are using this application

19:03.000 --> 19:07.000
to implement new and some more modern segmentation models

19:07.000 --> 19:10.000
like UNET, BIT or Visual Transformers.

19:10.000 --> 19:12.000
We are working on that as well.

19:12.000 --> 19:14.000
This is open source.

19:14.000 --> 19:19.000
I mean, you have interest, you can dive it there as well.

19:19.000 --> 19:22.000
And finally, just close.

19:22.000 --> 19:25.000
We are building a communicable open source

19:25.000 --> 19:27.000
of where in healthcare.

19:27.000 --> 19:30.000
Last year, we organized this workshop open source of workforce.

19:30.000 --> 19:32.000
So, you can technologies, we invite people

19:32.000 --> 19:35.000
from industry and academia.

19:35.000 --> 19:40.000
We discuss challenges of how open source

19:40.000 --> 19:44.000
of where it is used to create clinical impact

19:44.000 --> 19:49.000
with academics, industry partners

19:49.000 --> 19:51.000
and how we can create community.

19:51.000 --> 19:53.000
We have some posters as well last year

19:53.000 --> 19:57.000
and we plan into organized a new workshop this year.

19:57.000 --> 20:00.000
So, if anyone is interested, please let me know.

20:00.000 --> 20:03.000
I can share more details.

20:03.000 --> 20:06.000
So, the workshop is going to call

20:06.000 --> 20:08.000
healing through collaboration.

20:08.000 --> 20:13.000
We think we already have open data sex, open access,

20:13.000 --> 20:15.000
open healthcare resources.

20:15.000 --> 20:19.000
We are planning to do open review or papers.

20:19.000 --> 20:23.000
I found some open regulatory templates.

20:23.000 --> 20:26.000
Maybe we are missing something else.

20:26.000 --> 20:28.000
Maybe you want to join us.

20:28.000 --> 20:30.000
Let me know.

20:30.000 --> 20:32.000
Yeah, and that's basically it.

20:32.000 --> 20:34.000
So, the takeaways are,

20:34.000 --> 20:36.000
there are definitely various challenges

20:36.000 --> 20:41.000
on translating research to bench to bedside.

20:41.000 --> 20:45.000
We show some use cases on synthetic data

20:45.000 --> 20:48.000
on real-time AI-driven diagnosis.

20:48.000 --> 20:52.000
And we can, I feel we can do the,

20:52.000 --> 20:55.000
we can share the future of healthcare using open source software.

20:55.000 --> 20:58.000
By contributing to,

20:58.000 --> 21:02.000
to increase the high quality educational resources.

21:02.000 --> 21:05.000
And, yeah, release your open source

21:05.000 --> 21:08.000
and your models on high quality standards.

21:08.000 --> 21:09.000
Yeah.

21:09.000 --> 21:10.000
Thank you.

21:10.000 --> 21:13.000
Thank you.

