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

Modal decision trees, but it's sequential covering.

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

Science Score: 26.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
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.4%) to scientific vocabulary

Keywords from Contributors

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

Repository

Modal decision trees, but it's sequential covering.

Basic Info
  • Host: GitHub
  • Owner: aclai-lab
  • License: mit
  • Language: Julia
  • Default Branch: main
  • Size: 627 KB
Statistics
  • Stars: 8
  • Watchers: 2
  • Forks: 0
  • Open Issues: 11
  • Releases: 1
Created over 2 years ago · Last pushed 12 months ago
Metadata Files
Readme License

README.md

ModalDecisionLists.jl – it's synctactic sequential covering

Build Status Coverage

This package provides algorithms for learning decision lists based on different logics. At the moment, it provides a starter for a CN2-like, sequential covering algorithm. The algorithm deploys a beam search to learn conjunctions of arbitrary formulae (including propositional atoms).

Installation & Usage

Simply type the following commands in Julia's REPL:

```julia

Install packages

using Pkg; Pkg.add("MLJ"); using Pkg; Pkg.add("ModalDecisionLists");

Import packages

using MLJ using ModalDecisionLists using Random

Load an example dataset

X, y = MLJ.@load_iris() N = length(y)

Instantiate an MLJ machine

mach = machine(ExtendedSequentialCovering(), X, y)

Split dataset

p = randperm(N) trainidxs, testidxs = p[1:round(Int, N.8)], p[round(Int, N.8)+1:end]

Fit

fit!(mach, rows=train_idxs)

Perform predictions, compute accuracy

yhat = predictmode(mach, rows = testidxs) accuracy = MLJ.accuracy(yhat, y[test_idxs])

Access & inspect model

dlist = fittedparams(mach).fitresult.model printmodel(dlist; showmetrics = true, showsubtreemetrics=true)

Make test instances flow into the model

testdlist = deepcopy(dlist) apply!(testdlist, slicedataset(PropositionalLogiset(X), testidxs), y[testidxs])

Extract rules that perform well in test

interestingrules = listrules(testdlist; minlift = 1.0, mincoverage = 0.05, normalize = true) printmodel.(interestingrules; showmetrics = (; round_digits = 2)); ```

Credits

ModalDecisionLists.jl lives within the Sole.jl framework for symbolic machine learning.

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
  • Watch event: 2
  • Delete event: 3
  • Push event: 28
  • Pull request event: 9
  • Create event: 9
Last Year
  • Watch event: 2
  • Delete event: 3
  • Push event: 28
  • Pull request event: 9
  • Create event: 9

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 152
  • Total Committers: 4
  • Avg Commits per committer: 38.0
  • Development Distribution Score (DDS): 0.375
Past Year
  • Commits: 102
  • Committers: 4
  • Avg Commits per committer: 25.5
  • Development Distribution Score (DDS): 0.422
Top Committers
Name Email Commits
edo-007 e****7@g****m 95
giopaglia 2****a 47
mauro-milella m****o@l****t 5
PasoStudio73 p****3@g****m 5
Committer Domains (Top 20 + Academic)
live.it: 1

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 2
  • Total pull requests: 13
  • Average time to close issues: less than a minute
  • Average time to close pull requests: N/A
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 4.5
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 13
Past Year
  • Issues: 0
  • Pull requests: 11
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 11
Top Authors
Issue Authors
  • giopaglia (1)
  • JuliaTagBot (1)
Pull Request Authors
  • github-actions[bot] (16)
  • dependabot[bot] (4)
Top Labels
Issue Labels
Pull Request Labels
dependencies (4)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 1
juliahub.com: ModalDecisionLists

Modal decision trees, but it's sequential covering.

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 3.2%
Average: 9.8%
Dependent packages count: 16.3%
Last synced: 11 months ago

Dependencies

.github/workflows/CI.yml actions
  • actions/checkout v4 composite
  • julia-actions/cache v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/CompatHelper.yml actions
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/CI.yml-TODO actions
  • actions/checkout v4 composite
  • julia-actions/cache v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/Documentation.yml actions
  • actions/checkout v2 composite
  • julia-actions/setup-julia latest composite