wabdelmoula / msiPL

Python Implementation of the msiPL by Abdelmoula et al.
26 stars 6 forks source link

Example dataset #1

Closed zhangmin-cloud closed 2 years ago

zhangmin-cloud commented 2 years ago

Dr.Wabdelmoula, Would you like to provide this sample data"MouseKindey_z1.h5"?I'd like to try your code because I don't know much about the h5py package.Thank you very much.

wabdelmoula commented 2 years ago

Hi there, In our manuscript, we have referred to the original source that provided the 3D MSI mouse kidney data (it is public data and available for download in .imzML format). You can then read the imzML data in python and apply our msiPL. For more information, please see: https://www.nature.com/articles/s41467-021-25744-8

zhangmin-cloud commented 2 years ago

Dr.wabdelmoula, Thank you very much for writing back. We also tried to convert our own .imzML data to .h5 (pyimzml package and h5py, no imzML package found). Trying to apply your msiPL, msiPL_Run.py gives an error in #image index starts at 0 not 1. Most likely the .h5 file is the problem. I wonder if you can share the code for .h5 generation? Thanks a lot, appreciate it! This will be very crucial for a beginner.

------------------ 原始邮件 ------------------ 发件人: "wabdelmoula/msiPL" @.>; 发送时间: 2021年10月12日(星期二) 凌晨2:22 @.>; @.**@.>; 主题: Re: [wabdelmoula/msiPL] Example dataset (#1)

Hi there, In our manuscript, we have referred to the original source that provided the 3D MSI mouse kidney data (it is public data and available for download in .imzML format). You can then read the imzML data in python and apply our msiPL. For more information, please see: https://www.nature.com/articles/s41467-021-25744-8

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

PeifengJi commented 2 years ago

Also got the same problem and looking forward to a more detailed pipeline.

wabdelmoula commented 2 years ago

Dear @zhangmin-cloud, First of all, I'd like to clarify that you do not need to convert .imzML (or any other format) into .h5 to be able to utilize msiPL. Basically, what you need to do is two steps: 1- load your MSI data into python using a proper package that can handle your data format (e.g. .imzML, .mat, .h5 or whatever). To work with the public mouse kidney MSI data, you can then use the "pyimzML" package to read it in python (you need to understand what .imzML data structure look like). 2- Once you got the mass spectral data in python, you can then start directly utilizing the msiPL by feeding the spectral data into the VAE model and follow the methods.

Hint: If you can load your imzML into python, you can then export the MSI data matrix and the m/z array into .h5 format using h5py (but again you don't need to do it to run msiPL). msiPL starts by feeding the mass spectral data into the neural network.

Hope you find this answer useful and I wish you good luck!

zhangmin-cloud commented 2 years ago

Thanks a lot! The problem has been solved.

---Original--- From: "Walid @.> Date: Sat, Oct 16, 2021 09:14 AM To: @.>; Cc: @.**@.>; Subject: Re: [wabdelmoula/msiPL] Example dataset (#1)

Dear @zhangmin-cloud, First of all, I'd like to clarify that you do not need to convert .imzML (or any other format) into .h5 to be able to utilize msiPL. Basically, what you need to do is two steps: 1- load your MSI data into python using a proper package that can handle your data format (e.g. .imzML, .mat, .h5 or whatever). To work with the public mouse kidney MSI data, you can then use the "pyimzML" package to read it in python (you need to understand what .imzML data structure look like). 2- Once you got the mass spectral data in python, you can then start directly utilizing the msiPL by feeding the spectral data into the VAE model and follow the methods.

Hint: If you can load your imzML into python, you can then export the MSI data matrix and the m/z array into .h5 format using h5py (but again you don't need to do it to run msiPL). msiPL starts by feeding the mass spectral data into the neural network.

Hope you find this answer useful and I wish you good luck!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

zhangmin-cloud commented 2 years ago

Dear,Dr I ran msiPL with sample data,but the predicted value is always 0(code msiPL_run.py).As the same time,our internal data is the same issue.Thank  you very much.

---Original--- From: "Walid @.> Date: Sat, Oct 16, 2021 09:14 AM To: @.>; Cc: @.**@.>; Subject: Re: [wabdelmoula/msiPL] Example dataset (#1)

Dear @zhangmin-cloud, First of all, I'd like to clarify that you do not need to convert .imzML (or any other format) into .h5 to be able to utilize msiPL. Basically, what you need to do is two steps: 1- load your MSI data into python using a proper package that can handle your data format (e.g. .imzML, .mat, .h5 or whatever). To work with the public mouse kidney MSI data, you can then use the "pyimzML" package to read it in python (you need to understand what .imzML data structure look like). 2- Once you got the mass spectral data in python, you can then start directly utilizing the msiPL by feeding the spectral data into the VAE model and follow the methods.

Hint: If you can load your imzML into python, you can then export the MSI data matrix and the m/z array into .h5 format using h5py (but again you don't need to do it to run msiPL). msiPL starts by feeding the mass spectral data into the neural network.

Hope you find this answer useful and I wish you good luck!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

wabdelmoula commented 2 years ago

Hi Z, Can you please share your convergence distribution graph or a screen shot of the training history (#epochs and loss values)? As a hint: you need your MSI data to be TIC normalized and in the range [0,1] before you start the training (also assuming you are using the msiPL's default settings for hyper-parameters).

zhangmin-cloud commented 2 years ago

Hi Wabdelmoula,this is my epochs and loss values.The normalization method as show: but the predicted values is exceptional,as shown below.Both of these parameter(Epoch[100,500),batch[32,128]) settings have been attempted to be modified. image image

Hi Z, Can you please share your convergence distribution graph or a screen shot of the training history (#epochs and loss values)? As a hint: you need your MSI data to be TIC normalized and in the range [0,1] before you start the training (also assuming you are using the msiPL's default settings for hyper-parameters).

skywalker-andy commented 6 months ago

Thanks a lot! The problem has been solved. ---Original--- From: "Walid @.> Date: Sat, Oct 16, 2021 09:14 AM To: @.>; Cc: @.**@.>; Subject: Re: [wabdelmoula/msiPL] Example dataset (#1) Dear @zhangmin-cloud, First of all, I'd like to clarify that you do not need to convert .imzML (or any other format) into .h5 to be able to utilize msiPL. Basically, what you need to do is two steps: 1- load your MSI data into python using a proper package that can handle your data format (e.g. .imzML, .mat, .h5 or whatever). To work with the public mouse kidney MSI data, you can then use the "pyimzML" package to read it in python (you need to understand what .imzML data structure look like). 2- Once you got the mass spectral data in python, you can then start directly utilizing the msiPL by feeding the spectral data into the VAE model and follow the methods. Hint: If you can load your imzML into python, you can then export the MSI data matrix and the m/z array into .h5 format using h5py (but again you don't need to do it to run msiPL). msiPL starts by feeding the mass spectral data into the neural network. Hope you find this answer useful and I wish you good luck! — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

Hi . I just meet the same problem as you have solved. When i run the "msiPL_Run.py", it warns me that the error: UserWarning: Accession IMS:1000046 found with incorrect name "pixel size". Updating name to "pixel size (x)". % (accession, raw_name, name) . The "MouseKindey_z1.h5" is 2.2G , and I guess that is the reason which lead to this warnning. Luckily, I find that you had solved it. Could you please tell me how to solve it? I try to convert the imzML data into h5 data.But i failed it. Thanks a lot!