sel-suod


Namesel-suod JSON
Version 0.1 PyPI version JSON
download
home_pagehttps://github.com/jcribeiro98/Selectable_SUOD
SummaryFork from SUOD v0.1.3 (by Yue Zhao)
upload_time2024-08-19 09:14:17
maintainerNone
docs_urlNone
authorJose Cribeiro
requires_pythonNone
licenseNone
keywords ensemble learning anomaly detection outlier ensembles data mining machine learning python
VCS
bugtrack_url
requirements combo joblib matplotlib numpy scipy scikit_learn pandas psutil pyod
Travis-CI
coveralls test coverage No coveralls.
            
*Fork of*: SUOD: Accelerating Large-scare Unsupervised Heterogeneous Outlier Detection
===========================================================================


Please refer to the [original package](https://github.com/yzhao062/SUOD) for more information about the base functionalities.
This fork forces SUOD to use pre-selected axis-parallel subspaces, such as those obtained after Feature Bagging or Feature Selection. These subspaces must be declared as a `np.array`, and can take any structure such that the operation `X[:, subspace]` yields the desired projected dataset. 
It uses the same class declaration as base SUOD, only adding a new variable: `subspaces`, and changing the class name to sel_SUOD.
This fork additionally contains a number of QOL additions, like:

   - During initialization, if base_estimators is an array of length 1, it will sklearn.clone() the estimator once per each subspace.
   - During initialization, it will automatically check whether the number of detectors and estimators coincide. 
   - It will, by default, not run approximation on any method unless the global flag for approximation is manually turned to true.

There should be no conflict between SUOD and sel_SUOD.
Take a look at the following code for a practical example: 

```
base_estimators = [LOF()] #The class sel_SUOD automatically initizializes itself with subspaces.shape[0] clones of this array if len < 2.

#Creating exemplary subspaces
subspaces = [True]*20
subspaces.append(False)
subspaces = np.array([subspaces, subspaces])
subspaces[1][4] = False

model = sel_SUOD(base_estimators=base_estimators, subspaces=subspaces,
                 n_jobs=6, bps_flag=True,
                 contamination=contamination, approx_flag_global=True)
model.fit(X_train)  # fit all models with X
predicted_scores = model.decision_function(X_test)  # predict scores
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/jcribeiro98/Selectable_SUOD",
    "name": "sel-suod",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "ensemble learning, anomaly detection, outlier ensembles, data mining, machine learning, python",
    "author": "Jose Cribeiro",
    "author_email": "jose@cribeiro.de",
    "download_url": "https://files.pythonhosted.org/packages/69/37/9ff60d91f951fd2793d197325356a941de5d3157aa3abf24021d5997e589/sel_suod-0.1.tar.gz",
    "platform": null,
    "description": "\n*Fork of*: SUOD: Accelerating Large-scare Unsupervised Heterogeneous Outlier Detection\n===========================================================================\n\n\nPlease refer to the [original package](https://github.com/yzhao062/SUOD) for more information about the base functionalities.\nThis fork forces SUOD to use pre-selected axis-parallel subspaces, such as those obtained after Feature Bagging or Feature Selection. These subspaces must be declared as a `np.array`, and can take any structure such that the operation `X[:, subspace]` yields the desired projected dataset. \nIt uses the same class declaration as base SUOD, only adding a new variable: `subspaces`, and changing the class name to sel_SUOD.\nThis fork additionally contains a number of QOL additions, like:\n\n   - During initialization, if base_estimators is an array of length 1, it will sklearn.clone() the estimator once per each subspace.\n   - During initialization, it will automatically check whether the number of detectors and estimators coincide. \n   - It will, by default, not run approximation on any method unless the global flag for approximation is manually turned to true.\n\nThere should be no conflict between SUOD and sel_SUOD.\nTake a look at the following code for a practical example: \n\n```\nbase_estimators = [LOF()] #The class sel_SUOD automatically initizializes itself with subspaces.shape[0] clones of this array if len < 2.\n\n#Creating exemplary subspaces\nsubspaces = [True]*20\nsubspaces.append(False)\nsubspaces = np.array([subspaces, subspaces])\nsubspaces[1][4] = False\n\nmodel = sel_SUOD(base_estimators=base_estimators, subspaces=subspaces,\n                 n_jobs=6, bps_flag=True,\n                 contamination=contamination, approx_flag_global=True)\nmodel.fit(X_train)  # fit all models with X\npredicted_scores = model.decision_function(X_test)  # predict scores\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Fork from SUOD v0.1.3 (by Yue Zhao)",
    "version": "0.1",
    "project_urls": {
        "Download": "https://github.com/jcribeiro98/Selectable_SUOD/archive/refs/heads/master.zip",
        "Homepage": "https://github.com/jcribeiro98/Selectable_SUOD"
    },
    "split_keywords": [
        "ensemble learning",
        " anomaly detection",
        " outlier ensembles",
        " data mining",
        " machine learning",
        " python"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d85e4bc6fc7abfdcd17a6fdf14a2989ba676a5d3c280b1ad61db769b82c3babe",
                "md5": "c15f817064684117caf258a91c40276e",
                "sha256": "c03873213d36c86de4427a718e5666bd2f550952398f945bf615698a41db9e6b"
            },
            "downloads": -1,
            "filename": "sel_suod-0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c15f817064684117caf258a91c40276e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 22772,
            "upload_time": "2024-08-19T09:14:15",
            "upload_time_iso_8601": "2024-08-19T09:14:15.546868Z",
            "url": "https://files.pythonhosted.org/packages/d8/5e/4bc6fc7abfdcd17a6fdf14a2989ba676a5d3c280b1ad61db769b82c3babe/sel_suod-0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "69379ff60d91f951fd2793d197325356a941de5d3157aa3abf24021d5997e589",
                "md5": "98e634cdff96eae545fac109580b0a2c",
                "sha256": "8e4f0cc06a8b3123b8c6c9c28d30161d8d656a474a926042db6eaa3d2d45d143"
            },
            "downloads": -1,
            "filename": "sel_suod-0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "98e634cdff96eae545fac109580b0a2c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 19776,
            "upload_time": "2024-08-19T09:14:17",
            "upload_time_iso_8601": "2024-08-19T09:14:17.079390Z",
            "url": "https://files.pythonhosted.org/packages/69/37/9ff60d91f951fd2793d197325356a941de5d3157aa3abf24021d5997e589/sel_suod-0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-19 09:14:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jcribeiro98",
    "github_project": "Selectable_SUOD",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": true,
    "circle": true,
    "appveyor": true,
    "requirements": [
        {
            "name": "combo",
            "specs": []
        },
        {
            "name": "joblib",
            "specs": [
                [
                    ">=",
                    "0.14.1"
                ]
            ]
        },
        {
            "name": "matplotlib",
            "specs": []
        },
        {
            "name": "numpy",
            "specs": [
                [
                    ">=",
                    "1.13"
                ]
            ]
        },
        {
            "name": "scipy",
            "specs": [
                [
                    ">=",
                    "0.19.1"
                ]
            ]
        },
        {
            "name": "scikit_learn",
            "specs": [
                [
                    ">=",
                    "1.0"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": []
        },
        {
            "name": "psutil",
            "specs": []
        },
        {
            "name": "pyod",
            "specs": [
                [
                    ">=",
                    "1.0"
                ]
            ]
        }
    ],
    "lcname": "sel-suod"
}
        
Elapsed time: 0.36555s