{ "info": { "author": "Marinka Zitnik", "author_email": "marinka.zitnik@fri.uni-lj.si", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Scientific/Engineering :: Bio-Informatics", "Topic :: Software Development" ], "description": ".. -*- mode: rst -*-\n\n=============\nscikit-fusion\n=============\n\n|Travis|_\n\n.. |Travis| image:: https://travis-ci.org/marinkaz/scikit-fusion.svg?branch=master\n.. _Travis: https://travis-ci.org/marinkaz/scikit-fusion\n\n*scikit-fusion* is a Python module for data fusion based on recent collective latent\nfactor models.\n\nDependencies\n============\n\nscikit-fusion is tested to work under Python 3.\n\nThe required dependencies to build the software are Numpy >= 1.7, SciPy >= 0.12,\nPyGraphviz >= 1.3 (needed only for drawing data fusion graphs) and Joblib >= 0.8.4.\n\nInstall\n=======\n\nThis package uses distutils, which is the default way of installing\npython modules. To install in your home directory, use::\n\n python setup.py install --user\n\nTo install for all users on Unix/Linux::\n\n python setup.py build\n sudo python setup.py install\n\nFor development mode use::\n\n python setup.py develop\n\nUsage\n=====\n\nLet's generate three random data matrices describing three different object types::\n\n >>> import numpy as np\n >>> R12 = np.random.rand(50, 100)\n >>> R13 = np.random.rand(50, 40)\n >>> R23 = np.random.rand(100, 40)\n\nNext, we define our data fusion graph::\n\n >>> from skfusion import fusion\n >>> t1 = fusion.ObjectType('Type 1', 10)\n >>> t2 = fusion.ObjectType('Type 2', 20)\n >>> t3 = fusion.ObjectType('Type 3', 30)\n >>> relations = [fusion.Relation(R12, t1, t2),\n fusion.Relation(R13, t1, t3),\n fusion.Relation(R23, t2, t3)]\n >>> fusion_graph = fusion.FusionGraph()\n >>> fusion_graph.add_relations_from(relations)\n\nand then collectively infer the latent data model::\n\n >>> fuser = fusion.Dfmf()\n >>> fuser.fuse(fusion_graph)\n >>> print(fuser.factor(t1).shape)\n (50, 10)\n\n\nAfterwards new data might arrive::\n\n >>> new_R12 = np.random.rand(10, 100)\n >>> new_R13 = np.random.rand(10, 40)\n\nfor which we define the fusion graph::\n\n >>> new_relations = [fusion.Relation(new_R12, t1, t2),\n fusion.Relation(new_R13, t1, t3)]\n >>> new_graph = fusion.FusionGraph(new_relations)\n\nand transform new objects to the latent space induced by the ``fuser``::\n\n >>> transformer = fusion.DfmfTransform()\n >>> transformer.transform(t1, new_graph, fuser)\n >>> print(transformer.factor(t1).shape)\n (10, 10)\n\n****\n\nscikit-fusion is distributed with a few working data fusion scenarios::\n\n >>> from skfusion import datasets\n >>> dicty = datasets.load_dicty()\n >>> print(dicty)\n FusionGraph(Object types: 3, Relations: 3)\n >>> print(dicty.object_types)\n {ObjectType(GO term), ObjectType(Experimental condition), ObjectType(Gene)}\n >>> print(dicty.relations)\n {Relation(ObjectType(Gene), ObjectType(GO term)),\n Relation(ObjectType(Gene), ObjectType(Gene)),\n Relation(ObjectType(Gene), ObjectType(Experimental condition))}\n\nRelevant links\n==============\n\n- Official source code repo: https://github.com/marinkaz/scikit-fusion\n- HTML documentation: TBA\n- Download releases: https://github.com/marinkaz/scikit-fusion/releases\n- Issue tracker: https://github.com/marinkaz/scikit-fusion/issues\n\n****\n\n- Data fusion by matrix factorization: http://dx.doi.org/10.1109/TPAMI.2014.2343973\n- Discovering disease-disease associations by fusing systems-level molecular data: http://www.nature.com/srep/2013/131115/srep03202/full/srep03202.html\n- Matrix factorization-based data fusion for gene function prediction in baker's yeast and slime mold: http://www.worldscientific.com/doi/pdf/10.1142/9789814583220_0038\n- Matrix factorization-based data fusion for drug-induced liver injury prediction: http://www.tandfonline.com/doi/abs/10.4161/sysb.29072\n- Survival regression by data fusion: http://www.tandfonline.com/doi/abs/10.1080/21628130.2015.1016702", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/marinkaz/scikit-fusion", "keywords": null, "license": "GPLv3", "maintainer": null, "maintainer_email": null, "name": "scikit-fusion", "package_url": "https://pypi.org/project/scikit-fusion/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/scikit-fusion/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/marinkaz/scikit-fusion" }, "release_url": "https://pypi.org/project/scikit-fusion/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "A Python module for data fusion built on top of factorized models.", "version": "0.2.1" }, "last_serial": 1697840, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "a687c279eb22b30ed286c8af65385d7c", "sha256": "5619c450b69779f43519834144bd105c44c525fa37f43dc7134e8d583e47a08b" }, "downloads": -1, "filename": "scikit-fusion-0.1.tar.gz", "has_sig": false, "md5_digest": "a687c279eb22b30ed286c8af65385d7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6754330, "upload_time": "2015-06-05T12:44:08", "url": "https://files.pythonhosted.org/packages/6f/d2/88f0463df568c347f838bd25c57dd2f4910682da5bddbbfed60bacc54360/scikit-fusion-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "e69e66038f8c9170b7210ae11fd1c6c6", "sha256": "877b25907bd4d485228e7ecac5039bdb2a719c0f098edea28b8cbb16fa487e28" }, "downloads": -1, "filename": "scikit-fusion-0.2.tar.gz", "has_sig": false, "md5_digest": "e69e66038f8c9170b7210ae11fd1c6c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6755766, "upload_time": "2015-08-20T10:43:35", "url": "https://files.pythonhosted.org/packages/67/b9/4e6793d2aed1215a51f76531a3f29bfbb05aff58d9f7da5571103fde2a75/scikit-fusion-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "d91236a5fe74cc32c5979b7e2b2646f2", "sha256": "a1cafbc6d76c5beee35cb7614d27adb7dc5b2876fac85389c310185e8cd384d0" }, "downloads": -1, "filename": "scikit-fusion-0.2.1.tar.gz", "has_sig": false, "md5_digest": "d91236a5fe74cc32c5979b7e2b2646f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6755792, "upload_time": "2015-08-20T11:02:01", "url": "https://files.pythonhosted.org/packages/f2/63/479e402be5a7bea25cfc15581604aed650f920922e10a98ca5a2c352b00d/scikit-fusion-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d91236a5fe74cc32c5979b7e2b2646f2", "sha256": "a1cafbc6d76c5beee35cb7614d27adb7dc5b2876fac85389c310185e8cd384d0" }, "downloads": -1, "filename": "scikit-fusion-0.2.1.tar.gz", "has_sig": false, "md5_digest": "d91236a5fe74cc32c5979b7e2b2646f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6755792, "upload_time": "2015-08-20T11:02:01", "url": "https://files.pythonhosted.org/packages/f2/63/479e402be5a7bea25cfc15581604aed650f920922e10a98ca5a2c352b00d/scikit-fusion-0.2.1.tar.gz" } ] }