Skip to content

Configuration

Lixi edited this page Apr 2, 2021 · 8 revisions

In this section we'll explain how to configure the generation of a learning problem benchmark.

Ways to Generate a Benchmark

There are 3 main ways to generate a LP benchmark.

  1. The first one is to use a gold standard positive concept, which represents one learning problem and furthermore provide concepts which won't fit the positive concept (we call them negative concepts wrt a positive concept). This negative concept should be close to the positive one but yield other individuals

e.g. Politician and hasParents some Person can have multiple negative concepts such as Artist and hasParents some Person and Politician and not (hasParents some Person) while the latter obv. wouldn't yield results.

  1. However it might be a lot of work to add for all positive concepts multiple useful negative concepts. Hence LPBenchGen can generate negative concepts out of positives and you only provide positive concepts

  2. You can also just let LPBenchGen generate concepts from the TBox and ABox. It will first generate all possible concepts in the parameters provided by the configuration and a TBox then check if these concepts yield an actual result using the ABox.

Allowing certain types to yield a topical subset of the ABox.

Further on you can add allowed Types.

  • This will be used to only allow Individuals who have a class of this type
  • To generate positive concepts only considering these types.

Methods of generating a Benchmark

use positive and negative concepts

use positive concepts

generate concepts

Example

endpoint: http://dbpedia.org/sparql
owlFile: ./dbpedia.owl
seed: 123
types:
  - http://dbpedia.org/ontology/Politician
  - http://dbpedia.org/ontology/Company
  - http://dbpedia.org/ontology/RecordLabel
  - http://dbpedia.org/ontology/ArchitecturalStructure
  - http://dbpedia.org/ontology/Architect
  - http://dbpedia.org/ontology/Person
  - http://dbpedia.org/ontology/Mayor
  - http://dbpedia.org/ontology/Work
  - http://dbpedia.org/ontology/Band
  - http://dbpedia.org/ontology/MusicalArtist
  - http://dbpedia.org/ontology/Album
  - http://dbpedia.org/ontology/Actor
  - http://dbpedia.org/ontology/MusicGenre
maxIndividualsPerExampleConcept: 30
percentageOfPositiveExamples: 0.5
percentageOfNegativeExamples: 0.5
maxNoOfExamples: 30
minNoOfExamples: 5
maxGenerateConcepts: 10
maxConceptLength: 8
minConceptLength: 4
maxDepth: 1
inferDirectSuperClasses: true
endpointInfersRules: false
removeLiterals: true
namespace: http://dbpedia.org/ontology/

how to achieve good examples

To achieve good examples for small concepts like Artist you should allow only types which are semantically near that. A negative example with class of Animal wouldn't provide much information, thus it makes sense to allow other super types of the class Person such as Politician. Then the negative examples will be much more informative.

Clone this wiki locally