{ "info": { "author": "Wout Bittremieux", "author_email": "wout.bittremieux@uantwerpen.be", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: Unix", "Programming Language :: C++", "Programming Language :: Cython", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "ANN-SoLo\n========\n\nFor more information:\n\n* [Official code website](https://github.com/bittremieux/ANN-SoLo)\n\n**ANN-SoLo** (**A**pproximate **N**earest **N**eighbor **S**pectral **L**ibrary) is a spectral library search engine for fast and accurate open modification searching. ANN-SoLo uses approximate nearest neighbor indexing to speed up open modification searching by selecting only a limited number of the most relevant library spectra to compare to an unknown query spectrum. This is combined with a cascade search strategy to maximize the number of identified unmodified and modified spectra while strictly controlling the false discovery rate and the shifted dot product score to sensitively match modified spectra to their unmodified counterpart.\n\nThe software is available as open-source under the Apache 2.0 license.\n\nInstall\n-------\n\nSee the [wiki](https://github.com/bittremieux/ANN-SoLo/wiki) for detailed instructions on how to install and run ANN-SoLo.\n\nANN-SoLo requires Python 3.6 or higher. The GPU-powered version of ANN-SoLo can be used on Linux systems with an NVIDIA CUDA-enabled GPU device, while the CPU-only version supports both the Linux and OSX platforms. Please refer to the Faiss installation instructions linked below for more information on OS and GPU support.\n\n### Installation requirements\n\n- **NumPy** needs to be available prior to the installation of ANN-SoLo.\n- The **Faiss** installation depends on a specific GPU version. Please refer to the [Faiss installation instructions](https://github.com/facebookresearch/faiss/blob/master/INSTALL.md) for more information.\n\n### Install ANN-SoLo\n\nThe recommended way to install ANN-SoLo is using pip:\n\n pip install ann_solo\n\nANN-SoLo search\n---------------\n\nRun ANN-SoLo to search your spectral data directly using on the command line using `ann_solo` or as a named Python module (if you do not have sufficient rights to install command-line scripts) using `python -m ann_solo.ann_solo`.\n\nANN-SoLo arguments can be specified as command-line arguments or in a configuration file. Argument preference is command-line args > configuration file > default settings.\n\nFor more information on which arguments are available and their default values run `ann_solo -h`.\n\nMost options have sensible default values. Some positional arguments specifying which in- and output files to use are required. Additionally, the precursor and fragment mass tolerances do not have default values as these are data set dependent.\n\nPlease note that to run ANN-SoLo in cascade search mode two different precursor mass tolerances need to be specified for both levels of the cascade search (`precursor_tolerance_(mass|mode)` and `precursor_tolerance_(mass|mode)_open`).\n\n```\nusage: ann_solo [-h] [-c CONFIG_FILE] [--resolution RESOLUTION]\n [--min_mz MIN_MZ] [--max_mz MAX_MZ] [--remove_precursor]\n [--remove_precursor_tolerance REMOVE_PRECURSOR_TOLERANCE]\n [--min_intensity MIN_INTENSITY] [--min_peaks MIN_PEAKS]\n [--min_mz_range MIN_MZ_RANGE]\n [--max_peaks_used MAX_PEAKS_USED]\n [--max_peaks_used_library MAX_PEAKS_USED_LIBRARY]\n [--scaling {sqrt,rank}] --precursor_tolerance_mass\n PRECURSOR_TOLERANCE_MASS --precursor_tolerance_mode {Da,ppm}\n [--precursor_tolerance_mass_open PRECURSOR_TOLERANCE_MASS_OPEN]\n [--precursor_tolerance_mode_open {Da,ppm}]\n --fragment_mz_tolerance FRAGMENT_MZ_TOLERANCE\n [--allow_peak_shifts] [--fdr FDR]\n [--fdr_tolerance_mass FDR_TOLERANCE_MASS]\n [--fdr_tolerance_mode {Da,ppm}]\n [--fdr_min_group_size FDR_MIN_GROUP_SIZE] [--mode {ann,bf}]\n [--bin_size BIN_SIZE] [--hash_len HASH_LEN]\n [--num_candidates NUM_CANDIDATES] [--batch_size BATCH_SIZE]\n [--num_list NUM_LIST] [--num_probe NUM_PROBE] [--no_gpu]\n spectral_library_filename query_filename out_filename\n\nANN-SoLo: Approximate nearest neighbor spectral library searching\n=================================================================\n\nBittremieux et al. Fast open modification spectral library searching through\napproximate nearest neighbor indexing. Journal of Proteome Research 17,\n3464-3474 (2018).\n\nBittremieux et al. Extremely fast and accurate open modification spectral\nlibrary searching of high-resolution mass spectra using feature hashing and\ngraphics processing units. Journal of Proteome Research 18, 3792-3799 (2019).\n\nOfficial code website: https://github.com/bittremieux/ANN-SoLo\n\nArgs that start with '--' (eg. --resolution) can also be set in a config file\n(config.ini or specified via -c). Config file syntax allows: key=value,\nflag=true, stuff=[a,b,c] (for details, see syntax at https://goo.gl/R74nmi).\nIf an arg is specified in more than one place, then commandline values\noverride config file values which override defaults.\n\npositional arguments:\n spectral_library_filename\n spectral library file (supported formats: splib)\n query_filename query file (supported formats: mgf)\n out_filename name of the mzTab output file containing the search\n results\n\noptional arguments:\n -h, --help show this help message and exit\n -c CONFIG_FILE, --config CONFIG_FILE\n config file path\n --resolution RESOLUTION\n spectral library resolution; masses will be rounded to\n the given number of decimals (default: no rounding)\n --min_mz MIN_MZ minimum m/z value (inclusive, default: 11 m/z)\n --max_mz MAX_MZ maximum m/z value (inclusive, default: 2010 m/z)\n --remove_precursor remove peaks around the precursor mass (default: no\n peaks are removed)\n --remove_precursor_tolerance REMOVE_PRECURSOR_TOLERANCE\n the window (in m/z) around the precursor mass to\n remove peaks (default: 0 m/z)\n --min_intensity MIN_INTENSITY\n remove peaks with a lower intensity relative to the\n maximum intensity (default: 0.01)\n --min_peaks MIN_PEAKS\n discard spectra with less peaks (default: 10)\n --min_mz_range MIN_MZ_RANGE\n discard spectra with a smaller mass range (default:\n 250 m/z)\n --max_peaks_used MAX_PEAKS_USED\n only use the specified most intense peaks for the\n query spectra (default: 50)\n --max_peaks_used_library MAX_PEAKS_USED_LIBRARY\n only use the specified most intense peaks for the\n library spectra (default: 50)\n --scaling {sqrt,rank}\n to reduce the influence of very intense peaks, scale\n the peaks by their square root or by their rank\n (default: rank)\n --precursor_tolerance_mass PRECURSOR_TOLERANCE_MASS\n precursor mass tolerance (small window for the first\n level of the cascade search)\n --precursor_tolerance_mode {Da,ppm}\n precursor mass tolerance unit (options: Da, ppm)\n --precursor_tolerance_mass_open PRECURSOR_TOLERANCE_MASS_OPEN\n precursor mass tolerance (wide window for the second\n level of the cascade search)\n --precursor_tolerance_mode_open {Da,ppm}\n precursor mass tolerance unit (options: Da, ppm)\n --fragment_mz_tolerance FRAGMENT_MZ_TOLERANCE\n fragment mass tolerance (m/z)\n --allow_peak_shifts use the shifted dot product instead of the standard\n dot product\n --fdr FDR FDR threshold to accept identifications during the\n cascade search (default: 0.01)\n --fdr_tolerance_mass FDR_TOLERANCE_MASS\n mass difference bin width for the group FDR\n calculation during the second cascade level (default:\n 0.1 Da)\n --fdr_tolerance_mode {Da,ppm}\n mass difference bin unit for the group FDR calculation\n during the second cascade level (default: Da)\n --fdr_min_group_size FDR_MIN_GROUP_SIZE\n minimum group size for the group FDR calculation\n during the second cascade level (default: 20)\n --mode {ann,bf} search using an approximate nearest neighbors or the\n traditional (brute-force) mode; 'bf': brute-force,\n 'ann': approximate nearest neighbors (default: ann)\n --bin_size BIN_SIZE ANN vector bin width (default: 0.04 Da)\n --hash_len HASH_LEN ANN vector length (default: 800)\n --num_candidates NUM_CANDIDATES\n number of candidates to retrieve from the ANN index\n for each query (default: 1024), maximum 1024 when\n using GPU indexing\n --batch_size BATCH_SIZE\n number of query spectra to process simultaneously\n (default: 16384)\n --num_list NUM_LIST number of partitions in the ANN index (default: 256)\n --num_probe NUM_PROBE\n number of partitions in the ANN index to inspect\n during querying (default: 128), maximum 1024 when\n using GPU indexing\n --no_gpu don't use the GPU for ANN searching (default: GPU is\n used if available)\n```\n\nSpectrum\u2013spectrum match viewer\n------------------------------\n\nUse the ANN-SoLo plotter to visualize spectrum\u2013spectrum matches from your search results. The plotter can be run directly on the command line using `ann_solo_plot` or as a named Python module (if you do not have sufficient rights to install command-line scripts) using `python -m ann_solo.plot_ssm`.\n\nThe plotter requires as command-line arguments an mzTab identification file produced by ANN-SoLo and the identifier of the query to visualize.\nPlease note that the spectral library used to perform the search needs to be present in the exact location as specified in the mzTab file.\n\nThe plotter will create a PNG file with a mirror plot to visualize the specified spectrum\u2013spectrum match.\n\n```\nusage: ann_solo_plot [-h] mztab_filename query_id\n\nVisualize spectrum\u2013spectrum matches from your ANN-SoLo identification results\n\npositional arguments:\n mztab_filename Identifications in mzTab format\n query_id The identifier of the query to visualize\n\noptional arguments:\n -h, --help show this help message and exit\n```\n\nContact\n-------\n\nFor more information you can visit the [official code website](https://github.com/bittremieux/ANN-SoLo) or send an email to .", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bittremieux/ANN-SoLo", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "ann-solo", "package_url": "https://pypi.org/project/ann-solo/", "platform": "any", "project_url": "https://pypi.org/project/ann-solo/", "project_urls": { "Homepage": "https://github.com/bittremieux/ANN-SoLo" }, "release_url": "https://pypi.org/project/ann-solo/0.2.3/", "requires_dist": null, "requires_python": "", "summary": "Spectral library search engine optimized for fast open modification searching", "version": "0.2.3" }, "last_serial": 5992731, "releases": { "0.1.0.post1": [ { "comment_text": "", "digests": { "md5": "3d85440cc344b8bd5c910e3c28455f96", "sha256": "18ced1db3a4b0a7af8457894f13bc648cad4cfbb614658b55309ddd28aa7598a" }, "downloads": -1, "filename": "ann_solo-0.1.0.post1.tar.gz", "has_sig": false, "md5_digest": "3d85440cc344b8bd5c910e3c28455f96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 148001, "upload_time": "2018-05-11T20:08:29", "url": "https://files.pythonhosted.org/packages/6f/07/203703f2fed7dcbeab4e690585ae6b01afcfc57191a34b251ed1c14bcee2/ann_solo-0.1.0.post1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "424aaf87972cbc4983c2a5f577dbcc04", "sha256": "636b0f8c11e88efea72478ddd973dbad8053d69ab8cf2eab2cecef7a7c570a54" }, "downloads": -1, "filename": "ann_solo-0.1.1.tar.gz", "has_sig": false, "md5_digest": "424aaf87972cbc4983c2a5f577dbcc04", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 148002, "upload_time": "2018-05-17T17:10:39", "url": "https://files.pythonhosted.org/packages/75/d6/ec9442c2b6a1b1d80c7fb47659848e644d349308f10a3b83dbb437b76196/ann_solo-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "301d27926be0bd6cd0dd859b8c807f3d", "sha256": "524682460471efa5f8db4756503672efea53743566f6a8653a142ca9f5dc6c57" }, "downloads": -1, "filename": "ann_solo-0.1.2.tar.gz", "has_sig": false, "md5_digest": "301d27926be0bd6cd0dd859b8c807f3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 147994, "upload_time": "2018-08-13T23:07:46", "url": "https://files.pythonhosted.org/packages/a2/0e/a42c214784a61de1b70afe33129a83a5048dec8f5bcb9867a6aec222dc9d/ann_solo-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "4be49f1614caccf9ad6edeb0f2d680db", "sha256": "1f071e46fbb39ba61a6afa176f3ad8ebf1489679f6e21be6d98363bfcc3bf214" }, "downloads": -1, "filename": "ann_solo-0.1.3.tar.gz", "has_sig": false, "md5_digest": "4be49f1614caccf9ad6edeb0f2d680db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 148125, "upload_time": "2018-09-24T18:07:02", "url": "https://files.pythonhosted.org/packages/ad/9e/5a9b0bd8fb04279b9ba97f1c6f61b3324bd3c417f9d28a7d9aedd21c535f/ann_solo-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "5b0242986e6dbb8e7dea0b468e847cb8", "sha256": "3809a50d77790690baa55ab5363f1a64ccbb3d2ea9ce88a2286ac932ec47fa8d" }, "downloads": -1, "filename": "ann_solo-0.2.0.tar.gz", "has_sig": false, "md5_digest": "5b0242986e6dbb8e7dea0b468e847cb8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 272187, "upload_time": "2019-04-25T21:58:07", "url": "https://files.pythonhosted.org/packages/93/34/844b46b06345de85eb019359161fbd1c58156511c5eccadc8660c3b59c35/ann_solo-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "c3ba72854e362ba39c90ec945b53aeab", "sha256": "18de0fb9ca815f42588187be7184c6137cd33f563ce9b4733e9a69a96d0327cd" }, "downloads": -1, "filename": "ann_solo-0.2.1.tar.gz", "has_sig": false, "md5_digest": "c3ba72854e362ba39c90ec945b53aeab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 272524, "upload_time": "2019-05-06T16:19:02", "url": "https://files.pythonhosted.org/packages/45/79/4cdf3cfdb9e3ca173b21f416444c3b42bb0050443ce512da4bae1d985fae/ann_solo-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "c2a59b088c15e29dc4833ac3d3412276", "sha256": "d912ea92f944f0c157740bec610c194d25fdad2ecf7383e44b4fa138d5870c93" }, "downloads": -1, "filename": "ann_solo-0.2.2.tar.gz", "has_sig": false, "md5_digest": "c2a59b088c15e29dc4833ac3d3412276", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 274755, "upload_time": "2019-07-10T04:34:38", "url": "https://files.pythonhosted.org/packages/9b/a7/cde477d12b04998b40458588363e02e92e93082aef318513b6a8e9eca01b/ann_solo-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "5a1f774b6cea17332ecd14b86e15d189", "sha256": "cc606dd6d51ffa498099d9cf17f99f9a964e145be08e9ceb7dc208c60664b3a8" }, "downloads": -1, "filename": "ann_solo-0.2.3.tar.gz", "has_sig": false, "md5_digest": "5a1f774b6cea17332ecd14b86e15d189", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 274819, "upload_time": "2019-10-17T22:45:44", "url": "https://files.pythonhosted.org/packages/62/a2/8278b54fa848fe263f08f4502792d3a01077a8c1afcc962f5f4531a2ccf5/ann_solo-0.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5a1f774b6cea17332ecd14b86e15d189", "sha256": "cc606dd6d51ffa498099d9cf17f99f9a964e145be08e9ceb7dc208c60664b3a8" }, "downloads": -1, "filename": "ann_solo-0.2.3.tar.gz", "has_sig": false, "md5_digest": "5a1f774b6cea17332ecd14b86e15d189", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 274819, "upload_time": "2019-10-17T22:45:44", "url": "https://files.pythonhosted.org/packages/62/a2/8278b54fa848fe263f08f4502792d3a01077a8c1afcc962f5f4531a2ccf5/ann_solo-0.2.3.tar.gz" } ] }