Skip to main content

A scikit-learn implementation of a separate-and-conquer 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 | Contributors | Code of Conduct | 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 data sets.
  • Sparse label matrices can be used for training. This may reduce the memory footprint in case of large data sets.
  • Sparse prediction matrices can be used to store predicted labels. This may reduce the memory footprint in case of large data sets.
  • 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.

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.

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

mlrl_seco-0.10.2-cp312-cp312-win_amd64.whl (513.6 kB view details)

Uploaded CPython 3.12 Windows x86-64

mlrl_seco-0.10.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

mlrl_seco-0.10.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

mlrl_seco-0.10.2-cp312-cp312-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

mlrl_seco-0.10.2-cp311-cp311-win_amd64.whl (511.4 kB view details)

Uploaded CPython 3.11 Windows x86-64

mlrl_seco-0.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

mlrl_seco-0.10.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

mlrl_seco-0.10.2-cp311-cp311-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

mlrl_seco-0.10.2-cp310-cp310-win_amd64.whl (514.7 kB view details)

Uploaded CPython 3.10 Windows x86-64

mlrl_seco-0.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

mlrl_seco-0.10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

mlrl_seco-0.10.2-cp310-cp310-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

mlrl_seco-0.10.2-cp39-cp39-win_amd64.whl (517.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

mlrl_seco-0.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

mlrl_seco-0.10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

mlrl_seco-0.10.2-cp39-cp39-macosx_11_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1f23e3328c4cb87f22d46d0eb6458a32d6436906f91f1946bc6a02420ff82131
MD5 c7e82b590d25b878ae1d267955ea3554
BLAKE2b-256 694297c434e09312210587d951755a12f985c039d12fa3312294339bd22bb2d8

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bfcb402c632a626043bd1354ee9db1dac51863f42f0c430e39beffeb2b5bd154
MD5 db92c87f6a1f034a0bafc18b7c489272
BLAKE2b-256 cd3c625115044a6e61e8f7679804905558fd0c8b7e90c6d18365267a3d2347f1

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d2d3a7cf4b91a6d274b11449a1dfc81f0b114ad4eadc62c405e1fd2db076dcd9
MD5 70dd99379f0eccf07da2887770e7645b
BLAKE2b-256 540b1ea85c1cb7d6e5ee62a235713b93dc9a5e02b009ce9f2e3673b73554e40d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1ae02f889e977d7011d6a53fb3817d54f296caf8c9023a86ef42cbb204f3407c
MD5 baf29701bd56ca469f8515d5177291fa
BLAKE2b-256 237d53bce54407d0206b7f5d51176a148f4c0b1b23fa58c3a27eb10c568d067f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 635d13f32684ab5b0ccb022a6a1662dead1a292ddbff40ec3fac0e0c9329caac
MD5 a5901c7a73189ce9fc0cdbc7fd8b1d78
BLAKE2b-256 8399ce882d2ebe248978d5a7b6b946e5cd62b87c25bde90e2c6267b4afc53d2e

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1a06d23ed9d7827b7b377a33ccef9b9d79cc2af4f702c68c30105cd51aaccd0f
MD5 e8b692d2c02b227a43c51e882145f0d7
BLAKE2b-256 ef18e448e45525077f9d5a8b0da17376ec048310fcb035c9575cb1ee3069e0bd

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 400e7645e1c26ac261e8b7477f2ecc03d5489a061a9ce0cb50e5e57f90774a2b
MD5 d6152332ab7d9ffe4485e25fdcf6baa0
BLAKE2b-256 f27e7187ca76d5e73c81aff11f6bd5942d0c15596d286f4bb23e34e7b41decb1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed70d70bb7910777a57f56333fda99c4f7150d535746abd313a7e75e3308a65b
MD5 7cfa3be9be95033746f8cca3ac4e2b42
BLAKE2b-256 e5c9dc194bd4567c9a48b67af48dbebd17b89d615b2d59a35a30ae3b4f98a186

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2480521b9476fbdd0909ea52d424548c3c18f4f719b0c9d291065847a7bdf781
MD5 09e0d61607267f84ca2e9eb60288522b
BLAKE2b-256 c6887ba809ee14d7c6b8c9e123f68d1fe47401b336b0835ac45e4855143324c7

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 057b49617a597f4a99652f0a6cdf3631eedfb80aa9c1e9e28256da1432dd69da
MD5 6e4c5347c70ebe8fd092ff55d34a182b
BLAKE2b-256 4fa5af8c377012e799fcd162f102f85ca9562d47a6174fc342e423a9dae02596

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4c944aecc5621e0626556996d776aaed9e293dce67c4d4dd8f829a7ddd810ab2
MD5 e563043426ab47e5a48e65955578301d
BLAKE2b-256 0a15c46d771c5db019639264347571903717c464f50076ce4680f64de4438dce

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4583835d35465d3ce576f5df56fc0444a1fbf35ae99fce2e2bd1945ccd49a443
MD5 c373a1b9dbf187a9f1ef655d595c4b83
BLAKE2b-256 99136bc59d0d279bdac9045401b1bc021bb3752a690b59bb13adb9c2cbb205c5

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 a440c49ea31f98447236f9c6e4ead800545ce44bc46bd3021170a7b9b51f0f82
MD5 f99a1eec2b26e5eb57abf96bce7f6f52
BLAKE2b-256 3cc13e3992ff5c77f97c4bb91a2653036e54b448b2d94674bfe857b63ad767a4

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dbc67639012e4d448478c92595a2956176bf4a361f9dea5e4dac68073f25ba54
MD5 b7f06948c37f8c9d9aae3950bcac9a8e
BLAKE2b-256 6a6fb4862ea6f57a476e9ac46b33d3e5a1fe7fb6d3862b2a7b2a224f16a9e0fb

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9f1f7e2bba8044a2601fa59c5be09b075ef2666b9f749268e3a0d1cea3f7e338
MD5 bb0ccfa5fd7114e50db2feacd166f513
BLAKE2b-256 c2432d8e5cc3b1efd4a7aa904dc9aca9e9dc8cfe317d2bf47110d5b947f13297

See more details on using hashes here.

File details

Details for the file mlrl_seco-0.10.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlrl_seco-0.10.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 43c444e7fd18cc082d4d70306a06d5bf2dd4b3a89da72e7878bf298f3eeb5684
MD5 0a8b8e03f313c24d03a547955b244d47
BLAKE2b-256 ca1a5dae6a717556afe4909613b76e59f7807246bfe1fd6f617fb36e1a02ed42

See more details on using hashes here.

Supported by

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