Skip to content

Releases: pygod-team/pygod

v1.1.0

04 Feb 21:24
Compare
Choose a tag to compare

What's Changed

Greatly appreciate our community contributors helping improve PyGOD: @OldPanda, @ParthaPratimBanik, @ahmed3amerai

Full Changelog: v1.0.0...v1.1.0

v1.0.0

20 Jul 01:35
Compare
Choose a tag to compare

We are thrilled to release PyGOD v1.0.0, a comprehensive open-source graph outlier detection library in the PyG ecosystem.

PyGOD contains more than 10 latest graph outlier detectors, which are built on PyTorch and PyG. It features:

  • unified and simple API: detector.fit, detector.predict
  • full documentation and examples at docs.pygod.org
  • all you need to prepare a PyG Data object

New features in recent versions:

  • built-in data and benchmark: utils.load_data
  • modularized components: nn.encoder, nn.decoder, nn.fuctional, etc.
  • extensive utility functions: metric, generator, utils, etc.

If you encounter a bug or have any suggestions please fill an issue or reach us via email at dev@pygod.org. Also, feel free to try it out with your code! We appreciate every star, fork, and follow.

v0.4.0

16 May 06:52
4d9b473
Compare
Choose a tag to compare

We are excited to announce the final pre-alpha release, PyGOD v0.4, which marks a major milestone in our development. Following bug fixes and minor improvements, we plan to release v1.0. Your feedback and suggestions are appreciated. ⚠️ Please note that this version is NOT forward compatible and some APIs have changed. Here are the major changes in this release:

Enhanced Base Class

  • Detector: base class for all detectors.
  • DeepDetector: base class for all deep learning based detectors.

Simplied APIs

  • Removed predict_proba and predict_confidence.
  • Use predict(return_prob=True, return_conf=True) instead.

Modularized Detectors

We now introduce multiple modules to improve the code reusability and extendibility.

  • nn: all base models inherit torch.nn.Module
  • nn.encoder:
  • nn.decoder:
  • nn.functional: loss function, etc.
    Also, we changed the name of several modules to improve the clarity.
  • modelsdetector
  • metricsmetric

More Utility Functions

  • to_edge_score: edge outlier score converter
  • to_graph_score: graph outlier score converter
  • init_detector: detector initializer
  • init_nn: neural network initializer

Updated Requirements

  • PyGOD now requires Python 3.8+
  • PyTorch 2.0 and PyG 2.3.0 support
  • Enabled model compile via detector(compile_model=True) (beta)

And Many More

  • More comprehensive test coverage (almost 100%)
  • Reorganized documentation for better readability
  • Merge MLPAE and GCNAE to GAE
  • Most of the deep detectors support specifying various backbone from PyG
  • Retrieve learned embedding from fitted deep detectors with save_emb=True by detector.emb

v0.3.1

06 Sep 20:51
Compare
Choose a tag to compare

What's Changed

  • add edge drop probability to structural outlier injection
  • update benchmark script with more datasets.
  • multiple minor fixes by @cshjin @YingtongDou @kayzliu

New Contributors

v0.3.0

25 Jun 08:47
7de5d92
Compare
Choose a tag to compare

What's New

  • We release the first comprehensive node-level graph outlier detection benchmark, and the paper is available on arXiv. See benchmark and data for more details.
  • Add new models SCAN, Radar, and ANOMALOUS.
  • Accelerate GAAN and CONAD by vectorization. Up to 40x faster.
  • Add a new metric eval_ndcg.

v0.2.0

30 Apr 02:29
61a666a
Compare
Choose a tag to compare

What's New

v0.1.1

04 Apr 22:30
Compare
Choose a tag to compare

Many key applications depend on graph data. To tailor this need, we just open-sourced the first comprehensive graph outlier detection library--PyGOD.

PyGOD contains more than 10 latest graph outlier detectors, which are built on PyTorch and PyG. It features:

  • unified and simple API as PyOD: using GNNs for outlier detection within 5 lines of code
  • full documentation and examples
  • for both academic use and industry app, all you need to prepare is the data in PyG format.

PyGOD is a collaborative effort among UIC, CMU, ASU, IIT, and BUAA. We commit to providing long-term maintenance and keep adding new models to the library. It is also our goal to promote graph outlier detection methods to broader audiences. If you encounter a bug or have any suggestions please fill an issue or reach us via email dev@pygod.org. Also, feel free to try it out with your code!

We appreciate every star, fork, and follow.