Releases: dice-group/Ontolearn
ontolearn 0.7.1
ontolearn 0.7.1 is now released!
pip install -U ontolearn
Important Updates: ontolearn-webservice
ontolearn-webservice --path_knowledge_base KGs/Mutagenesis/mutagenesis.owl
ontolearn-webservice --endpoint_triple_store http://0.0.0.0:9080/sparql
What's Changed
- Refactoring by @Demirrr in #354
- Examples Clean Up by @alkidbaci in #353
- Last commit of refactoring DRILL by @Demirrr in #356
- Nominals fix by @Demirrr in #358
- LLM based verbalizer included by @Demirrr in #360
- Prompt is revised to lead an LLM to generate shorter texts. by @Demirrr in #361
- TripleStore via rdflib.graph by @Demirrr in #364
- Tdl triplestore by @Demirrr in #365
- Tdl triplestore by @Demirrr in #367
- OWL Class expression learning with tDL, over a DBpedia Endpoint by @Demirrr in #368
- python dependencies are removed in the github action for docs by @Demirrr in #369
- Unifying best_hypotheses function and updating the tests by @Demirrr in #370
- Update README.md by @Demirrr in #371
- Release refactoring by @Demirrr in #373
- Drill Enexa Server by @Demirrr in #375
- Fixing few open issues by @Demirrr in #378
- Adaptation to owlapy1.0.1 by @alkidbaci in #379
- Fix:Drill: No embeddings provided implies Quality based reward used by @Demirrr in #380
- Evaluation setup for NCES and CLIP by @alkidbaci in #382
- ontolearn-webservice with drill examples over local kg tested by @Demirrr in #384
- tDL, DRILL, Triplestore Fuseki refactoring by @Demirrr in #386
- Fix data properties drill tdl by @Demirrr in #388
- Refactoring by @alkidbaci in #390
- Tentris drill tdl refactoring by @Demirrr in #391
- License update by @alkidbaci in #392
- Making ontolearn-webservice more responsive by @Demirrr in #393
- webservice fix is done by @Demirrr in #394
- Readme updated by
Full Changelog: 0.7.0...0.7.1
ontolearn 0.7.0
ontolearn 0.7.0 is now released!
Release Notes:
Drill is now available in Ontolearn:
You can import it as follows:
from ontolearn.learners import Drill
Examples:
Tree-based DL Learner (tDL) is now available in Ontolearn:
You can import it as follows:
from ontolearn.learners import TDL
Examples:
- examples/concept_learning_evaluation.py
- examples/concept_learning_cv_evaluation.py
- examples/concept_learning_with_tdl_and_triplestore_kb.py
CLIP is now available in Ontolearn:
You can import it as follows:
from ontolearn.concept_learner import CLIP
Examples:
Changes to KnowledgeBase class:
-
You can make type retrieval methods to return the type of OWLNamedIndividual for individuals which do not explicitly specify that type. You can do that by setting the argument
include_implicit_individuals
of classKnowledgeBase
toTrue
. By default it isFalse
. -
Ontology and reasoner can be accessed directly:
- From
kb.ontology()
→ Tokb.ontology
- From
kb.reasoner()
→ Tokb.reasoner
- From
-
Added methods for triple retrieval:
abox
→ returns all related Abox axioms of a given individual, list of individuals or None (all Abox axioms).tbox
→ method returns all related Tbox axioms of a given concept, data property, object property, a list of them or None (all Tbox axioms)triples
→ returns all triples of the ontology.
Return type in 3 formats defined by the
mode
argument which accepts the following strings:
1)'native'
-> triples are represented as tuples of owlapy objects.
2)'iri'
-> triples are represented as tuples of IRIs as strings.
3)'axiom'
-> triples are represented as owlapy axioms. -
New property methods to retrieve classes/properties:
concepts
object_properties
object_properties
-
Removed triplestore logic (as well as from OWLOntology_Owlready2 and OWLReasoner_Owlready2). It is now moved to
ontolearn.triple_store
(described below).
Check everything here
Triple Store Knowledge Base:
Added TripleStoreOntology
, TripleStoreReasoner
and TripleStoreKnowledgeBase
.
TripleStoreKnowledgeBase
can be initialized using just an SPARQL endpoint and it can be used instead of the KnowledgeBase
to execute a concept learner. All dataset queries are made using SPARQL and are directed to the provided endpoint.
To import:
from ontolearn.triple_store import TripleStoreOntology, TripleStoreReasoner, TripleStoreKnowledgeBase
For more, you can visit the guide in our documentation here , check the API docs and see the examples listed below.
Examples:
- examples/concept_learning_via_triplestore_example.py
- examples/concept_learning_with_tdl_and_triplestore_kb.py
Documentation and more:
-
At README.md you can find the Benchmark Results which displays the performance of all our learners.
-
Documentation has been updated to the latest changes. You can always access the up-to-date documentation here.
-
Ontosample is now integrated into Ontolearn. We have also added a guide on how to use it as well as an example.
Note:
ontosample
is not part of the default dependencies. To get it you should either install it directly or use:pip install ontolearn[full]
.
Changes on dependencies:
- We have added some new dependencies and increased the minimum required version for some of them.
- Some dependencies are made optional. You can now install all of them or just the minimum required ones.
pip install ontolearn[min]
→ the default one when you executepip install ontolearn
pip install ontolearn[full]
→ to install the extra dependenices.
You can check them here.
Bug Fixes and others:
- Fixed a bug where using the same EvoLearner model to fit more than one learning problem would cause quality drop.
- Added learning problem generator as Python module
- Other minor changes that in case you are interested, you can check the PRs comments.
As always you can upgrade with pip:
pip install -U ontolearn
Brought to you by Ontolearn Team.
ontolearn 0.6.1
ontolearn 0.6.1
We're happy to announce the 0.6.1 release.
You can upgrade with pip as usual:
pip install -U ontolearn
ontolearn 0.5.4
ontolearn 0.5.4
We're happy to announce the 0.5.4 release.
You can upgrade with pip as usual:
pip install -U ontolearn
ontolearn 0.5.3
ontolearn 0.5.3
We're happy to announce the 0.5.3 release.
You can upgrade with pip as usual:
pip install -U ontolearn
First Release of Ontolearn
Features
- Properly check domain inclusion in the ConceptGenerator
- Add Top-Level CNF/DNF conversion
Fixes
- Fix OCEL (still not equivalent of the DL-Learner implementation)
- Fix a bug in the DLSyntaxParser to correctly parse Thing/Nothing
- Multiple fits for EvoLearner on datasets with data properties
- Correctly filter super properties in the OWLReasoner_Owlready2
Maintenance
- Use closed world behaviour for negations per default (FastInstanceChecker)
Todos for the next release
- Integrate (https://gradio.app/quickstart/) as done in https://github.com/dice-group/dice-embeddings. By this, we can increase the usability of our framework (CD).
- Remove ontolearn/endpoint as an endpoint does not belong to ontolearn but a particular application of it (CD).
- Update https://ontolearn-docs-dice-group.netlify.app/ (CD).
- Allow classification of new individuals that are not part of the existing knowledge base (#213, #233) (LB).
- Add support for sub-properties to the FastInstanceChecker/OWLReasoner_Owlready2 (as an option) (LB).