perception-nassir


Nameperception-nassir JSON
Version 0.0.5 PyPI version JSON
download
home_pagehttps://github.com/M-Nassir/perception
SummaryA method for detecting anomalies in univariate and multivariate data
upload_time2024-08-16 21:45:31
maintainerNone
docs_urlNone
authorNassir Mohammad
requires_python>=3.6
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Perception Anomaly Detection.

This project contains the prototypical implemenation of the algorithm described in the paper "Anomaly Detection using Principle of Human Perception" 
that can be found at: https://arxiv.org/abs/2103.12323

The perception algorithm detects global anomalies in univariate and multivariate data parameter-free! Just give it the standardised data as a numpy array and it will return
the label (normal or anomalous) of each observation. The algorithm also gives each observation a score that can be useful for further analysis and investigation.

Notes on the algorithm:

  Returns the anomaly label and associated score of each observation.

  The greater the score, above zero, the more anomalous an observation is.

  This function specialises to one-dimensional data when the data only has one feature.

  The fundamental formula for scoring the unexpectedness of an observation is:
  (S choose n) * 1/(W^{n-1})

  However, this formula is transformed for computational reasons as detailed in the accompanying paper and code to:
  -1/S * (log(S choose n) - (n - 1) * log(W))

In the multi-dimensional case:

   We take in scaled data and calculate each observations' distance from the median using a
   distance measure, for example Mahalanobis or Euclidean. Then, given the one-dimensional data, we apply the
   one-dimensional anomaly detection algorithm as before.

The 'Notebooks' folder contains a getting started guide and tutorial examples that are recommended to be run and examined if new to this project: https://github.com/M-Nassir/perception 

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/M-Nassir/perception",
    "name": "perception-nassir",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": null,
    "author": "Nassir Mohammad",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/a9/1e/9d5a48e7277210627418c061ca24aa7db3726638636c9ee7ec51403cd6ae/perception-nassir-0.0.5.tar.gz",
    "platform": null,
    "description": "Perception Anomaly Detection.\n\nThis project contains the prototypical implemenation of the algorithm described in the paper \"Anomaly Detection using Principle of Human Perception\" \nthat can be found at: https://arxiv.org/abs/2103.12323\n\nThe perception algorithm detects global anomalies in univariate and multivariate data parameter-free! Just give it the standardised data as a numpy array and it will return\nthe label (normal or anomalous) of each observation. The algorithm also gives each observation a score that can be useful for further analysis and investigation.\n\nNotes on the algorithm:\n\n  Returns the anomaly label and associated score of each observation.\n\n  The greater the score, above zero, the more anomalous an observation is.\n\n  This function specialises to one-dimensional data when the data only has one feature.\n\n  The fundamental formula for scoring the unexpectedness of an observation is:\n  (S choose n) * 1/(W^{n-1})\n\n  However, this formula is transformed for computational reasons as detailed in the accompanying paper and code to:\n  -1/S * (log(S choose n) - (n - 1) * log(W))\n\nIn the multi-dimensional case:\n\n   We take in scaled data and calculate each observations' distance from the median using a\n   distance measure, for example Mahalanobis or Euclidean. Then, given the one-dimensional data, we apply the\n   one-dimensional anomaly detection algorithm as before.\n\nThe 'Notebooks' folder contains a getting started guide and tutorial examples that are recommended to be run and examined if new to this project: https://github.com/M-Nassir/perception \n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A method for detecting anomalies in univariate and multivariate data",
    "version": "0.0.5",
    "project_urls": {
        "Homepage": "https://github.com/M-Nassir/perception"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3978c8cd4b8b187848977a039e383de974c8be80aa6bf837e59456c786c4ec84",
                "md5": "b52da8033f257a7de4aa7b7894d7f849",
                "sha256": "512abf4844b5ae93b2bb3432382d7e80edadf4200af013b075738bc636447997"
            },
            "downloads": -1,
            "filename": "perception_nassir-0.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b52da8033f257a7de4aa7b7894d7f849",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 6876,
            "upload_time": "2024-08-16T21:45:30",
            "upload_time_iso_8601": "2024-08-16T21:45:30.298417Z",
            "url": "https://files.pythonhosted.org/packages/39/78/c8cd4b8b187848977a039e383de974c8be80aa6bf837e59456c786c4ec84/perception_nassir-0.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a91e9d5a48e7277210627418c061ca24aa7db3726638636c9ee7ec51403cd6ae",
                "md5": "ca856eda81e19df9c7e6d948e5ec5197",
                "sha256": "e6178e02ae6f69a0507ecccb1b3a8961078b758bb651ceb047a89bfa31de0246"
            },
            "downloads": -1,
            "filename": "perception-nassir-0.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "ca856eda81e19df9c7e6d948e5ec5197",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 6925,
            "upload_time": "2024-08-16T21:45:31",
            "upload_time_iso_8601": "2024-08-16T21:45:31.894100Z",
            "url": "https://files.pythonhosted.org/packages/a9/1e/9d5a48e7277210627418c061ca24aa7db3726638636c9ee7ec51403cd6ae/perception-nassir-0.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-16 21:45:31",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "M-Nassir",
    "github_project": "perception",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "perception-nassir"
}
        
Elapsed time: 0.45962s