A Proteomics Search Algorithm Specifically Designed for High-Resolution MS/MS

Search algorithms, post-searching processing, quantitation software, etc. Share and discuss software here.
Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

A Proteomics Search Algorithm Specifically Designed for High-Resolution MS/MS

Postby Craig » Thu Jan 31, 2013 1:32 pm

I just published a paper in JPR about a new search algorithm called Morpheus. Many of you may be thinking "proteomics doesn't need another search algorithm" and I actually somewhat agree with that sentiment. But the point of this paper is not to say that Morpheus is the best search algorithm ever and everybody should use it (though I won't complain if people do decide to use it). The main message is that it works extremely well (better than Sequest, Mascot, and OMSSA for the data sets tested) even though it is incredibly simple, so simple that anybody in proteomics would understand how it works. After some minor preprocessing of MS/MS spectra (which isn't critical for most datasets), the score is just the number of matching products plus the fraction of spectrum abundance that is assigned to those products. Plus it's very fast—on a decent computer, an E. coli or yeast search will typically take only a minute or two while a human search is usually under 10 minutes.

The software is available at http://www.chem.wisc.edu/~coon/software.php#morpheus. There are versions that take mzML, Agilent .d directories, and Thermo .raw files. I'd be happy to assist anybody who wants to use it.

odedk
Phosphoserine Member
Phosphoserine Member
Posts: 10
Joined: Tue Feb 05, 2013 12:59 pm

Postby odedk » Tue Feb 19, 2013 5:53 pm

Thanks Craig.
I tried to use the Thermo Module and I keep getting error message and the program crash.
Thermo MSFileReader is installed on the computer as part of MSConvert, MaxQaunt and also TPP...
Should it be installed in a specific location so Morpheus will be able to use it?
(I can run searches with Morpheus for mzML).
Best,
Oded

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Wed Feb 20, 2013 9:35 am

Hi odedk,

Can you tell me the error message you are getting? Also have you tried downloading the new version posted February 8? There was a problem for certain types of Thermo data in the previous version.

-Craig

odedk
Phosphoserine Member
Phosphoserine Member
Posts: 10
Joined: Tue Feb 05, 2013 12:59 pm

Postby odedk » Thu Feb 21, 2013 9:42 pm

Hi Craig,
I downloaded the software on Feb 05.
So the new version works very nicely - thank you for letting me know about the update.
Best,
OK

inambioinfo
Glycine Member
Glycine Member
Posts: 6
Joined: Tue Dec 11, 2012 6:24 pm

Postby inambioinfo » Fri Feb 22, 2013 8:06 pm

Hi,

Same thing here am trying to run Thermo Module and I keep getting lots of error and I have downloaded on 23Feb.The Error is as follows. After this error message When i still click on continue it Nothing works.

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentException: Must specify valid information for parsing in the string.
at System.Enum.EnumResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument)
at System.Enum.TryParseEnum(Type enumType, String value, Boolean ignoreCase, EnumResult& parseResult)
at System.Enum.Parse(Type enumType, String value, Boolean ignoreCase)
at Morpheus.frmMain.btnSearch_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.296 (RTMGDR.030319-2900)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Morpheus (Thermo)
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Inam/AppData/Local/Temp/$$_BD4D/Morpheus%20(Thermo)/Morpheus%20(Thermo).exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1002 built by: RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.233 built by: RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


Hope you could help me in this regards. Wish to hear from you soon.

Thanks

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Sat Feb 23, 2013 8:44 am

Hi inambioinfo,

I'm not sure this will help but could you try deleting C:\Users\Inam\AppData\Roaming\Morpheus\Morpheus\1.0.0.0\settings.tsv and running Morpheus again?

-Craig

inambioinfo
Glycine Member
Glycine Member
Posts: 6
Joined: Tue Dec 11, 2012 6:24 pm

Postby inambioinfo » Mon Feb 25, 2013 6:34 pm

Hi Craig,

I have follow your suggestion and i have removed .tsv file as well when i started to run again with the .RAW (HCD) file and Fasta ( Decoy Database).. am getting the following error which i have attached to this message..Please Suggest me future to solve this issue.

Thanks

Inam



Morpheus (Thermo) Error 20130226.jpg
You do not have the required permissions to view the files attached to this post.

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Mon Feb 25, 2013 6:55 pm

Hi Inam,

Do you have the latest version of Thermo MSFileReader installed? The error you are getting is related to that.

-Craig

inambioinfo
Glycine Member
Glycine Member
Posts: 6
Joined: Tue Dec 11, 2012 6:24 pm

Postby inambioinfo » Tue Feb 26, 2013 3:18 am

Hi Once again Craig,

Thanks for your kind help and suggestion. As i have solved that problem by installing msfilereader and I can run now but in middle of searching another Error appears it shows error due to out of memory but i have seen my drive its still 40GB avilable so please suggest me.. am attaching the picture again for your kind view. Thanks craig

-Inam

ErrorWhileRunning.jpg
You do not have the required permissions to view the files attached to this post.

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Tue Feb 26, 2013 10:03 am

Hi Inam,

You are running out of memory, not hard disk space (the 40 GB free you mentioned). There are a couple things you can do. The first and most straightforward is to check the box that says "Minimize Memory Usage". It will run slower but require less memory. This is often necessary if you are searching against a multi-organism database like all of SwissProt. If you are doing this and it's not critical you could just search against a single organism database and you might not need to enable "Minimize Memory Usage". Finally you could try to free up memory by closing other programs when you run Morpheus.

-Craig

Infinity
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 107
Joined: Wed Dec 21, 2011 8:22 pm

Postby Infinity » Thu Mar 28, 2013 9:01 am

Hi, I am a big fan of MaxQuant and Andromeda (we are doing a lot of SILAC and dimethyl labeling in the lab). But I really liked Morpheus, - it is extremely fast and very easy to use and, unless majority of other proteomics "software solutions", USABLE.
I have several questions:
1. Are you going to combine it with some kind of "quantitation engine" (majority of proteomics experiments are quantitative and people will not be happy having just a list of ids)?
2. I was not convinced by your arguments for comparison with Andromeda. I'm wondering in fact you did a comparison but Andromeda was better? In my case I'm getting more ids with Andromeda, but I think it is just because their "3D feature detection" which allows ppb accuracy (and even if MS/MS is crappy this accuracy allows to make an identification based on precursor mass).
But again, I like Morpheus and think it is a great tool and it would be even more useful if you add some quantitation)).

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Thu Mar 28, 2013 9:52 am

Thanks for the kind words on Morpheus. As to your questions:
1. I would certainly like to add support for quantitation, but I can't commit to anything. I know this is sort of a cop out, but the software does provide pepXML outputs, so you could potentially use publicly available tools that work with this format like XPRESS, ASAPRatio, and Libra from the Trans-Proteomic Pipeline. I have not tried this, however.
2. I actually did do a comparison with MaxQuant/Andromeda and got somewhat higher IDs from Morpheus. This is not terribly surprising given my relative experience with the two pieces of software. And as I outlined in the paper there were several things I could not control to the extent I could with the other search algorithms (Mascot, Sequest, OMSSA, ZCore), so I didn't include it in the paper.

odedk
Phosphoserine Member
Phosphoserine Member
Posts: 10
Joined: Tue Feb 05, 2013 12:59 pm

Postby odedk » Fri May 03, 2013 4:35 am

Hi Craig,
How I define peptide N-terminal modification in Morpheus (like acetylation)?
Thanks,
Oded

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Fri May 03, 2013 6:41 am

odedk wrote:Hi Craig,
How I define peptide N-terminal modification in Morpheus (like acetylation)?
Thanks,
Oded


You can edit the modifications.tsv file and add new modifications. You can just copy the existing "acetylation of protein N-terminus" mod and in the "Type" column switch "protein N-terminus" to "peptide N-terminus".

odedk
Phosphoserine Member
Phosphoserine Member
Posts: 10
Joined: Tue Feb 05, 2013 12:59 pm

Postby odedk » Fri May 03, 2013 11:39 pm

Thanks Craig that worked very nicely.
Just a thought re adding quantification capabilities and in general - while it would be great you if Morpheus xml output to work with the TPP I assume it might take a while to define the right way of converting Morpheus scores into Peptide/Protein Prophet probabilities... maybe a quicker option would be to get the output to work with Skyline so it will be possible to build spectral libraries from Skyline XML output
Skyline MS1 quantification work very well (and it is much quicker than the TPP or MaxQuant so that will be a great combination with Morpheus), and it will also allow viewing the search results matches.
Cheers,
Oded

ChiLee
Serine Member
Posts: 8
Joined: Mon Apr 01, 2013 7:55 am

Postby ChiLee » Sat May 04, 2013 3:13 am

Hey Craig,

Quick question, does your software only work on a windows OS? Is there a linux version by any chance?

Dave

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Sat May 04, 2013 9:36 am

ChiLee wrote:Hey Craig,

Quick question, does your software only work on a windows OS? Is there a linux version by any chance?

Dave


Would you be OK with the mzML version and a command-line interface? If so at one point I did manage to get a Linux version working that I would be willing to share.

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Sat May 04, 2013 9:44 am

odedk wrote:Thanks Craig that worked very nicely.
Just a thought re adding quantification capabilities and in general - while it would be great you if Morpheus xml output to work with the TPP I assume it might take a while to define the right way of converting Morpheus scores into Peptide/Protein Prophet probabilities... maybe a quicker option would be to get the output to work with Skyline so it will be possible to build spectral libraries from Skyline XML output
Skyline MS1 quantification work very well (and it is much quicker than the TPP or MaxQuant so that will be a great combination with Morpheus), and it will also allow viewing the search results matches.
Cheers,
Oded


I hope to add compatibility of the Morpheus pepXML output with Skyline in the near future. It will probably require a Skyline update. I will investigate compatibility with TPP as well.

ChiLee
Serine Member
Posts: 8
Joined: Mon Apr 01, 2013 7:55 am

Postby ChiLee » Mon May 13, 2013 4:13 am

Hey Craig,

Thanks for the offer,
I've actually decided to work with the Windows version -> The majority of people in my lab use Windows so getting use to this version and potentially writing scripts for them makes it easier.

Dave

Christopher
Angiotensin Member
Angiotensin Member
Posts: 42
Joined: Thu Dec 27, 2012 12:26 pm

Postby Christopher » Tue May 14, 2013 11:29 am

Craig wrote:Would you be OK with the mzML version and a command-line interface? If so at one point I did manage to get a Linux version working that I would be willing to share.


Craig,

If you did manage to get a Linux version working I would be very interested. mzML for format is fine. I like to run my searches on a cluster, so Linux is a big plus here.

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Tue May 14, 2013 2:45 pm

A Linux version is now available at http://sourceforge.net/projects/morpheus-ms/files/Morpheus%20(Linux).tar.gz/download. You will need Mono. Please let me know if it works for you.

jke000
Phosphoserine Member
Phosphoserine Member
Posts: 20
Joined: Wed Aug 17, 2011 10:05 pm

Postby jke000 » Tue Jun 11, 2013 1:48 pm

Craig,

I have some free time so I decided to test how Morpheus performs (compared to a few other search engines) on a couple high-res files I have handy. What I noticed is that I'm getting "DECOY" protein entries in the search output no matter what I do. Is this inherent in Morpheus i.e. there's no way to turn off its decoy search? Or am I possibly doing something wrong? FWIW, the "Create Target-Decoy Database On The Fly" box is unchecked.

I can use Morpheus' decoys if required but ideally I feed it the same database as I feed the other search engines. Thanks.

- Jimmy

Craig
E. Coli Lysate Member
E. Coli Lysate Member
Posts: 220
Joined: Sun Jun 26, 2011 6:49 pm

Postby Craig » Tue Jun 11, 2013 2:59 pm

Hi Jimmy,

I don't blame you for not trusting Morpheus decoys--I didn't trust Mascot and Proteome Discoverer decoys when doing my comparison!

Are you sure the "Create Target–Decoy Database On The Fly" option was unchecked when you started the search? I ask because when you specify a FASTA it is inspected to see if it contains decoys (denoted by the case-sensitive text "DECOY" somewhere in the protein description), and if not, that box is automatically checked. You can view the log file to determine for sure if it was checked or not.

Looking forward to hear how your comparison turns out.

-Craig

jke000
Phosphoserine Member
Phosphoserine Member
Posts: 20
Joined: Wed Aug 17, 2011 10:05 pm

Postby jke000 » Wed Jun 12, 2013 10:38 am

It's not that I don't trust Morpheus' decoys but rather this is a simple difference (which decoys are used) that's easy to minimize. And fwiw, there effectively was no difference whether I fed it a database of decoys or used those generated by Morpheus. Anyways, it must've been that checkbox being automatically checked when the database was loaded which caused the decoys to show up.

Here's my quick comparison of Morpheus, our open sourced Comet, X!Tandem and OMSSA on some random yeast Orbi run(FDR/q-value based on Morpheus score or expectation value for the other 3 search engines). Morpheus does perform best with this high-res search. And this plot makes it apparent that I must have some E-value calculation artifact to address in Comet.

morpheus.png
You do not have the required permissions to view the files attached to this post.

aky
Albumin Member
Posts: 90
Joined: Sat Sep 10, 2011 2:33 pm

Postby aky » Mon Jun 24, 2013 1:53 am

Hi Craig

I was trying my hands at using Morpheus when I realized that it can only use mzML, Agilent .d or Thermo RAW files. I generally use mgf files for search with no access to the RAW files at most occasions. Is there an MGF version in pipeline?
I also tried converting the MGF to mzML with msconvert, successfully i believe. But Morpheus could not run with this mzML file. ANy suggestions?

Amit


Return to “Bioinformatics”

Who is online

Users browsing this forum: No registered users and 1 guest