https://github.com/aclai-lab/soleposthoc.jl

Sole (SymbOlic LEarning) Post Hoc Analysis Module

https://github.com/aclai-lab/soleposthoc.jl

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: scholar.google
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.2%) to scientific vocabulary

Keywords from Contributors

decision-trees logic modal-logic symbolic-learning time-series-classification
Last synced: 10 months ago · JSON representation

Repository

Sole (SymbOlic LEarning) Post Hoc Analysis Module

Basic Info
  • Host: GitHub
  • Owner: aclai-lab
  • License: mit
  • Language: Julia
  • Default Branch: main
  • Size: 1.32 MB
Statistics
  • Stars: 10
  • Watchers: 2
  • Forks: 0
  • Open Issues: 35
  • Releases: 0
Created almost 4 years ago · Last pushed 10 months ago
Metadata Files
Readme License

README.md

SolePostHoc.jl – Post-Hoc Analysis for Symbolic Learning

🚧 This package is under construction. 🚧

Stable Build Status Coverage

In a nutshell

SolePostHoc.jl is dedicated to post-hoc analysis and optimization of symbolic learning models. It provides a comprehensive suite of algorithms for: - Rule extraction from both symbolic and non-symbolic models - Rule minimization and optimization - Model transformation and enhancement - Interpretability analysis

Key Features

Rule Extraction and Model Optimization

  • Extraction of comprehensible rules from complex models
  • Support for various source models:
    • Decision trees and random forests
    • Black-box models
  • A clean Rule extraction interface (SolePostHoc.modalextractrules)
  • Implementation of state-of-the-art algorithms:
    • LUMEN (L: Logic-driven U: Unified M: Minimal E: Extractor of N: Notions)
    • InTrees (Interpret Tree Ensembles)
    • TREPAN
    • REFNE
  • have binding with other state-of-the-art algorithms
    • binding to RuleCOSI(+)
    • BATrees (Born Again Trees) ### Through these we guarantee
  • Rule minimization techniques
  • Model simplification while preserving accuracy
  • Performance enhancement through post-processing

Integration

  • Seamless integration with other Sole.jl packages

Usage Example

```julia

Load packages

using SolePostHoc using SoleModels using MLJ

Load and prepare a model (e.g., a random forest)

🌳 = loadmodel("yourmodel.jl")

Extract rules

🍃 = modalextractrules(RuleExtractor = LumenRuleExtractor, 🌳)

View metrics

printmetrics(🍃) ```

Want to know more?

For the theoretical foundations of Sole framework, refer to: Modal Symbolic Learning: from theory to practice, G. Pagliarini (2024)

About

The package is developed by the ACLAI Lab @ University of Ferrara.

More on Sole

SolePostHoc.jl is part of the Sole.jl ecosystem, working alongside: - SoleLogics.jl: Logical foundations - SoleData.jl: Data handling - SoleModels.jl: Model definitions - SoleFeatures.jl: Feature engineering

Owner

  • Name: Applied Computational Logic and Artificial Intelligence Laboratory
  • Login: aclai-lab
  • Kind: organization
  • Email: aclai@unife.it
  • Location: Italy

Applied Computational Logic and Artificial Intelligence (ACLAI) Laboratory of the Department of Mathematics and Computer Science, University of Ferrara

GitHub Events

Total
  • Create event: 34
  • Commit comment event: 1
  • Issues event: 1
  • Watch event: 4
  • Delete event: 25
  • Issue comment event: 5
  • Push event: 178
  • Pull request review event: 19
  • Pull request review comment event: 27
  • Pull request event: 48
  • Fork event: 1
Last Year
  • Create event: 34
  • Commit comment event: 1
  • Issues event: 1
  • Watch event: 4
  • Delete event: 25
  • Issue comment event: 5
  • Push event: 178
  • Pull request review event: 19
  • Pull request review comment event: 27
  • Pull request event: 48
  • Fork event: 1

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 89
  • Total Committers: 7
  • Avg Commits per committer: 12.714
  • Development Distribution Score (DDS): 0.528
Past Year
  • Commits: 1
  • Committers: 1
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
giopaglia 2****a 42
Michele21 g****2@g****m 39
eduardstan s****d@g****m 3
CompatHelper Julia c****y@j****g 2
mauro-milella m****o@l****t 1
ferdiu f****a@g****m 1
Alberto Paparella 5****a 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 79
  • Average time to close issues: N/A
  • Average time to close pull requests: about 1 year
  • Total issue authors: 0
  • Total pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.03
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 77
Past Year
  • Issues: 0
  • Pull requests: 24
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.08
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 22
Top Authors
Issue Authors
Pull Request Authors
  • github-actions[bot] (76)
  • Perro2110 (2)
  • dependabot[bot] (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (1) github_actions (1)

Dependencies

.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/CompatHelper.yml actions
.github/workflows/Documentation.yml actions
  • actions/checkout v2 composite
  • julia-actions/setup-julia latest composite