public abstract class AbstractCELA extends AbstractComponent implements ClassExpressionLearningAlgorithm, StoppableLearningAlgorithm
Modifier and Type | Field and Description |
---|---|
static int |
MAX_NR_OF_RESULTS
This is the maximum number of results, which the learning
algorithms are asked to store.
|
Constructor and Description |
---|
AbstractCELA()
Default Constructor
|
AbstractCELA(AbstractClassExpressionLearningProblem learningProblem,
AbstractReasonerComponent reasoningService)
Each learning algorithm gets a learning problem and
a reasoner as input.
|
Modifier and Type | Method and Description |
---|---|
void |
changeLearningProblem(AbstractClassExpressionLearningProblem learningProblem)
Call this when you want to change the learning problem, but
leave everything else as is.
|
void |
changeReasonerComponent(AbstractReasonerComponent reasoningService)
Call this when you want to change the reasoning service, but
leave everything else as is.
|
Set<org.semanticweb.owlapi.model.OWLClass> |
getAllowedConcepts() |
Set<org.semanticweb.owlapi.model.OWLDataProperty> |
getAllowedDataProperties() |
Set<org.semanticweb.owlapi.model.OWLObjectProperty> |
getAllowedObjectProperties() |
org.semanticweb.owlapi.model.OWLClassExpression |
getCurrentlyBestDescription() |
List<org.semanticweb.owlapi.model.OWLClassExpression> |
getCurrentlyBestDescriptions() |
List<org.semanticweb.owlapi.model.OWLClassExpression> |
getCurrentlyBestDescriptions(int nrOfDescriptions) |
List<org.semanticweb.owlapi.model.OWLClassExpression> |
getCurrentlyBestDescriptions(int nrOfDescriptions,
boolean filterNonMinimalDescriptions) |
EvaluatedDescription<? extends Score> |
getCurrentlyBestEvaluatedDescription()
Returns the best descriptions obtained so far.
|
NavigableSet<? extends EvaluatedDescription<? extends Score>> |
getCurrentlyBestEvaluatedDescriptions()
Returns a sorted set of the best descriptions found so far.
|
List<? extends EvaluatedDescription<? extends Score>> |
getCurrentlyBestEvaluatedDescriptions(double accuracyThreshold)
Returns a fraction of class descriptions with sufficiently high accuracy.
|
List<? extends EvaluatedDescription<? extends Score>> |
getCurrentlyBestEvaluatedDescriptions(int nrOfDescriptions)
Return the best currently found concepts up to some maximum
count (no minimality filter used).
|
List<? extends EvaluatedDescription<? extends Score>> |
getCurrentlyBestEvaluatedDescriptions(int nrOfDescriptions,
double accuracyThreshold,
boolean filterNonMinimalDescriptions)
Returns a filtered list of currently best class descriptions.
|
List<? extends EvaluatedDescription<? extends Score>> |
getCurrentlyBestMostGeneralEvaluatedDescriptions() |
Set<org.semanticweb.owlapi.model.OWLClass> |
getIgnoredConcepts() |
Set<org.semanticweb.owlapi.model.OWLDataProperty> |
getIgnoredDataProperties() |
Set<org.semanticweb.owlapi.model.OWLObjectProperty> |
getIgnoredObjectProperties() |
AbstractClassExpressionLearningProblem<? extends Score> |
getLearningProblem()
The learning problem variable, which must be used by
all learning algorithm implementations.
|
long |
getMaxExecutionTimeInSeconds() |
AbstractReasonerComponent |
getReasoner()
The reasoning service variable, which must be used by
all learning algorithm implementations.
|
boolean |
isRunning()
Returns whether the learning algorithm is running.
|
boolean |
isUseMinimizer() |
void |
setAllowedConcepts(Set<org.semanticweb.owlapi.model.OWLClass> allowedConcepts) |
void |
setAllowedDataProperties(Set<org.semanticweb.owlapi.model.OWLDataProperty> allowedDataProperties) |
void |
setAllowedObjectProperties(Set<org.semanticweb.owlapi.model.OWLObjectProperty> allowedObjectProperties) |
void |
setIgnoredConcepts(Set<org.semanticweb.owlapi.model.OWLClass> ignoredConcepts) |
void |
setIgnoredDataProperties(Set<org.semanticweb.owlapi.model.OWLDataProperty> ignoredDataProperties) |
void |
setIgnoredObjectProperties(Set<org.semanticweb.owlapi.model.OWLObjectProperty> ignoredObjectProperties) |
void |
setLearningProblem(LearningProblem learningProblem)
Set the learning problem, which the algorithm should solve.
|
void |
setMaxExecutionTime(long maxExecutionTime,
TimeUnit timeUnit)
Set the max.
|
void |
setMaxExecutionTimeInSeconds(long maxExecutionTimeInSeconds)
Set the max.
|
void |
setReasoner(AbstractReasonerComponent reasoner) |
void |
setRenderer(org.semanticweb.owlapi.io.OWLObjectRenderer renderer) |
void |
setUseMinimizer(boolean useMinimizer) |
void |
stop()
Stops the algorithm gracefully.
|
static Collection<Class<? extends AbstractClassExpressionLearningProblem>> |
supportedLearningProblems()
Returns all learning problems supported by this component.
|
isInitialized
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
start
public static final int MAX_NR_OF_RESULTS
public AbstractCELA()
public AbstractCELA(AbstractClassExpressionLearningProblem learningProblem, AbstractReasonerComponent reasoningService)
learningProblem
- The learning problem to solve.reasoningService
- The reasoner connecting to the
underlying knowledge base.public void changeLearningProblem(AbstractClassExpressionLearningProblem learningProblem)
learningProblem
- The new learning problem.public void changeReasonerComponent(AbstractReasonerComponent reasoningService)
reasoningService
- The new reasoning service.public org.semanticweb.owlapi.model.OWLClassExpression getCurrentlyBestDescription()
getCurrentlyBestEvaluatedDescription()
public List<org.semanticweb.owlapi.model.OWLClassExpression> getCurrentlyBestDescriptions()
getCurrentlyBestEvaluatedDescriptions()
public List<org.semanticweb.owlapi.model.OWLClassExpression> getCurrentlyBestDescriptions(int nrOfDescriptions)
getCurrentlyBestDescriptions
in interface ClassExpressionLearningAlgorithm
nrOfDescriptions
- Limit for the number or returned descriptions.getCurrentlyBestEvaluatedDescriptions(int)
public List<org.semanticweb.owlapi.model.OWLClassExpression> getCurrentlyBestDescriptions(int nrOfDescriptions, boolean filterNonMinimalDescriptions)
nrOfDescriptions
- Limit for the number or returned descriptions.filterNonMinimalDescriptions
- Remove non-minimal descriptions (e.g. those which can be shortened
to an equivalent concept) from the returned set.getCurrentlyBestEvaluatedDescriptions(int,double,boolean)
public EvaluatedDescription<? extends Score> getCurrentlyBestEvaluatedDescription()
public NavigableSet<? extends EvaluatedDescription<? extends Score>> getCurrentlyBestEvaluatedDescriptions()
public List<? extends EvaluatedDescription<? extends Score>> getCurrentlyBestEvaluatedDescriptions(int nrOfDescriptions, double accuracyThreshold, boolean filterNonMinimalDescriptions)
nrOfDescriptions
- Maximum number of restrictions. Use Integer.MAX_VALUE
if you do not want this filter to be active.accuracyThreshold
- Minimum accuracy. All class descriptions with lower
accuracy are disregarded. Specify a value between 0.0 and 1.0. Use 0.0 if
you do not want this filter to be active.filterNonMinimalDescriptions
- If true, non-minimal descriptions are
filtered, e.g. ALL r.TOP (being equivalent to TOP), male AND male (can be
shortened to male). Currently, non-minimal descriptions are just skipped,
i.e. they are completely omitted from the return list. Later, implementation
might be changed to return shortened versions of those descriptions.public List<? extends EvaluatedDescription<? extends Score>> getCurrentlyBestEvaluatedDescriptions(int nrOfDescriptions)
getCurrentlyBestEvaluatedDescriptions
in interface ClassExpressionLearningAlgorithm
nrOfDescriptions
- Maximum number of descriptions returned.public List<? extends EvaluatedDescription<? extends Score>> getCurrentlyBestEvaluatedDescriptions(double accuracyThreshold)
accuracyThreshold
- Only return solutions with this accuracy or higher.public List<? extends EvaluatedDescription<? extends Score>> getCurrentlyBestMostGeneralEvaluatedDescriptions()
public static Collection<Class<? extends AbstractClassExpressionLearningProblem>> supportedLearningProblems()
public AbstractClassExpressionLearningProblem<? extends Score> getLearningProblem()
getLearningProblem
in interface LearningAlgorithm
@Autowired public void setLearningProblem(LearningProblem learningProblem)
LearningAlgorithm
setLearningProblem
in interface LearningAlgorithm
learningProblem
- The learning problem to solve.public AbstractReasonerComponent getReasoner()
@Autowired public void setReasoner(AbstractReasonerComponent reasoner)
public void stop()
StoppableLearningAlgorithm
stop
in interface StoppableLearningAlgorithm
public boolean isRunning()
StoppableLearningAlgorithm
isRunning
in interface StoppableLearningAlgorithm
public Set<org.semanticweb.owlapi.model.OWLClass> getAllowedConcepts()
public void setAllowedConcepts(Set<org.semanticweb.owlapi.model.OWLClass> allowedConcepts)
public Set<org.semanticweb.owlapi.model.OWLClass> getIgnoredConcepts()
public void setIgnoredConcepts(Set<org.semanticweb.owlapi.model.OWLClass> ignoredConcepts)
public void setAllowedObjectProperties(Set<org.semanticweb.owlapi.model.OWLObjectProperty> allowedObjectProperties)
allowedObjectProperties
- the allowed object properties to setpublic Set<org.semanticweb.owlapi.model.OWLObjectProperty> getAllowedObjectProperties()
public void setIgnoredObjectProperties(Set<org.semanticweb.owlapi.model.OWLObjectProperty> ignoredObjectProperties)
ignoredObjectProperties
- the ignored object properties to setpublic Set<org.semanticweb.owlapi.model.OWLObjectProperty> getIgnoredObjectProperties()
public void setAllowedDataProperties(Set<org.semanticweb.owlapi.model.OWLDataProperty> allowedDataProperties)
allowedDataProperties
- the allowed data properties to setpublic Set<org.semanticweb.owlapi.model.OWLDataProperty> getAllowedDataProperties()
public void setIgnoredDataProperties(Set<org.semanticweb.owlapi.model.OWLDataProperty> ignoredDataProperties)
ignoredDataProperties
- the ignored data properties to setpublic Set<org.semanticweb.owlapi.model.OWLDataProperty> getIgnoredDataProperties()
public boolean isUseMinimizer()
public void setUseMinimizer(boolean useMinimizer)
public long getMaxExecutionTimeInSeconds()
public void setMaxExecutionTimeInSeconds(long maxExecutionTimeInSeconds)
maxExecutionTimeInSeconds
- max. execution time in secondspublic void setMaxExecutionTime(long maxExecutionTime, TimeUnit timeUnit)
maxExecutionTime
- max. execution timetimeUnit
- the time unitpublic void setRenderer(org.semanticweb.owlapi.io.OWLObjectRenderer renderer)
renderer
- the renderer of OWL objects to set DL-Learner is licenced under the terms of the GNU General Public License.
Copyright © 2007-2019 Jens Lehmann