Skip to main content

A scikit-learn implementation of a Separate-and-Conquer (SeCo) multi-label rule learning algorithm

Project description

Multi-label Separate-and-Conquer Rule Learning Algorithm

License: MIT PyPI version Documentation Status

🔗 Important links: Documentation | Issue Tracker | Changelog | License

This software package provides an implementation of a Multi-label Separate-and-Conquer (SeCo) Rule Learning Algorithm that integrates with the popular scikit-learn machine learning framework.

The goal of multi-label classification is the automatic assignment of sets of labels to individual data points, for example, the annotation of text documents with topics. The algorithm that is provided by this package uses the SeCo paradigm for learning interpretable rule lists.

🔧 Functionalities

The algorithm that is provided by this project currently supports the following core functionalities to learn a binary classification rules:

  • A large variety of heuristics is available to assess the quality of candidate rules.
  • Rules may predict for a single label or multiple ones (which enables to model local label dependencies).
  • Rules can be constructed via a greedy search or a beam search. The latter may help to improve the quality of individual rules.
  • Sampling techniques and stratification methods can be used to learn new rules on a subset of the available training examples, features, or labels.
  • Fine-grained control over the specificity/generality of rules is provided via hyper-parameters.
  • Incremental reduced error pruning can be used to remove overly specific conditions from rules and prevent overfitting.
  • Sequential post-optimization may help to improve the predictive performance of a model by reconstructing each rule in the context of the other rules.
  • Native support for numerical, ordinal, and nominal features eliminates the need for pre-processing techniques such as one-hot encoding.
  • Handling of missing feature values, i.e., occurrences of NaN in the feature matrix, is implemented by the algorithm.

⌚ Runtime and Memory Optimizations

In addition, the following features that may speed up training or reduce the memory footprint are currently implemented:

  • Sparse feature matrices can be used for training and prediction. This may speed up training significantly on some datasets.
  • Sparse label matrices can be used for training. This may reduce the memory footprint in case of large datasets.
  • Sparse prediction matrices can be used to store predicted labels. This may reduce the memory footprint in case of large datasets.
  • Multi-threading can be used to parallelize the evaluation of a rule's potential refinements across several features or to obtain predictions for several examples in parallel.

📚 Documentation

Our documentation provides an extensive user guide, as well as Python and C++ API references for developers. If you are new to the project, you probably want to read about the following topics:

A collection of benchmark datasets that are compatible with the algorithm are provided in a separate repository.

For an overview of changes and new features that have been included in past releases, please refer to the changelog.

📜 License

This project is open source software licensed under the terms of the MIT license. We welcome contributions to the project to enhance its functionality and make it more accessible to a broader audience. A frequently updated list of contributors is available here.

All contributions to the project and discussions on the issue tracker are expected to follow the code of conduct.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

mlrl_seco-0.12.1-cp313-cp313-win_amd64.whl (620.0 kB view details)

Uploaded CPython 3.13Windows x86-64

mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

mlrl_seco-0.12.1-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

mlrl_seco-0.12.1-cp312-cp312-win_amd64.whl (622.3 kB view details)

Uploaded CPython 3.12Windows x86-64

mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

mlrl_seco-0.12.1-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

mlrl_seco-0.12.1-cp311-cp311-win_amd64.whl (621.4 kB view details)

Uploaded CPython 3.11Windows x86-64

mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

mlrl_seco-0.12.1-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file mlrl_seco-0.12.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: mlrl_seco-0.12.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 620.0 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for mlrl_seco-0.12.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 39be880bba0a71ca11d31b1d3bc674ea0018593ca1d99a10a2f3efa50cbb5860
MD5 0d0de47e6ce433205fd2bf5ca6c97c00
BLAKE2b-256 4e32eec59068c1d8124a5907db54559f08de64e4094b66b0caac6cc2e7904ef1

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cfeb808a87784c1bcc114cbd829f11ac5275b0f43f275e0f2da5028745467094
MD5 ce3aaa5afbc2c491879acfdc225920e0
BLAKE2b-256 59c0fa3bee602882886cfad895d9c6d68783971aaa49017082d215be2dd50a02

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a70fafe198657b82c0fc7a3bd85e26853eb5383573bb11844763a3bb28584c59
MD5 5a9707734f406247b9ab3c33cad2fd83
BLAKE2b-256 cefb01de69797a35795656df53b9804bf6dd4e6abda90b43e7fbe3275e0d6897

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d3e0925ae7b0e189d2d75152777df29a88e6471d9daae3e9d176a2aaf33d48f
MD5 f2b1705f5e978ef2f89ef6e0f9db6f30
BLAKE2b-256 e906103414802b7951e0fb1d59a2151f5b66b39982b90c661758a3a90d1cad56

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: mlrl_seco-0.12.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 622.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for mlrl_seco-0.12.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 123632d0a3f3154c8df8ae2c6f6523d9753ae7f242e7e9593c0dcb462c33e37a
MD5 df8c9452fd7a1c8d110f9b2e3cdf836e
BLAKE2b-256 3436de9f7e9db544c53a2e7d7ded75fda5e01a7ee485c221dec4e8659d18086a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bb1c19bdc13964db16059aee539b40d9bb475ae0f7fc91d9cd25f8a2b1621614
MD5 2a0951250d496f815a2fd7b8e2041192
BLAKE2b-256 3852cceb0519839a85dfc59a7c80ca2bc6a13444b7e171bb59111485aba0df28

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9c8791efc8b6043025544c0266f4dd87fc2ca208015eb7a83575e1d6ca0c73a3
MD5 5fba0ed37451cd1c10bf5da9cfbed3de
BLAKE2b-256 edc1472582bb3719e4c8106d017079f0eef38cb100bc85626052fa9d58ad34fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 68591b6cb57ec508d8faab41fb83ef6a604a484666cd4dccbe85fd072f159783
MD5 a36b1151cc45fe931c568e0012b9da96
BLAKE2b-256 6a950b8bdadc093ba1f60956a7e43294ce64a2f3ee69a268e3cf224a4bbd6b1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: mlrl_seco-0.12.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 621.4 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for mlrl_seco-0.12.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1f700bc8a6a22c9e9bde7af6bd6d2114034f490b26dbb4eeab93aeb71348cafb
MD5 7735f6ebff01092c9b6c56298131aaa0
BLAKE2b-256 37edb111b0f12c489a610525dad66fd347efba1803e8d69bad1e0ebb54fbe3be

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 09903a981bc8d141bed13aa1d9c3641e9ac428526aecb1501848aa6155d91b8f
MD5 e73af58fcd0ed2ff22351b934eea8e46
BLAKE2b-256 38dccdf22760a54eb927baafa3713dc2adf3887b02c97f3d5c92476d29d10f61

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6ca12a25fb0f6dc4f4d03daf566b976a4441a24259f8432f13116b92c568ec84
MD5 41f373062b40ad391418f657f7bf7a3d
BLAKE2b-256 f862bde15e94988779050e78aba68745f7e2192e3a54d032527253011083ac64

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlrl_seco-0.12.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.12.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b66fdd0bc9797d2d9f3696f559d12ba69e274ab9148908f538b100f4ace0f79c
MD5 8f7bc647bfb3badb5b55df5c97fed32c
BLAKE2b-256 9b9f2acd8708c0bfcf4c9d77bb808f7cdabce5854be48290477935552cdc4678

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlrl_seco-0.12.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on mrapp-ke/MLRL-Boomer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page