Ontology Alignment Evaluation Initiative - OAEI-2018 Campaign OAEI OAEI

Results for OAEI 2018 - Knowledge Graph Track

Matching systems

We executed all systems submitted as SEALS packages to OAEI (even if they are not registered for the track) first on a very small matching example (dataset) with a similar structure and shape like the real knowledge graphs (in fact they are a small subset of them). It shows that not all matching systems are able to complete this small task due to exceptions or other failures. The following matching systems produce an exception: We wrote an email to the system implementers to possibly modify the system configuration to complete this task. Unfortunately we were not be able to get the matchers running. The following matchers produce an empty alignment or state that the system is not able to complete this task: Using a bigger KG task we further encounter systems not being able to complete. KEPLER returned with a "NegativeArraySizeException". Thus we executed the following systems:

Experimental setting

The evaluation is executed on a virtual machine(VM) with 32GB of RAM and 16 vCPUs (2.4 GHz). The operating system is debian 9 with openjdk version "1.8.0_181".

We executed it not on HOBBIT because not enough matchers registered in HOBBIT for this task. Just AML, DOME, LogMap, Lily, SANOM, RADON and Silk are registered in the HOBBIT evaluation platform. The first four have a SEALS counterpart which can be used for the evaluation. The latter two are only registered for the "Link discovery" track. SANOM only registered for "Anatomy" and "Conference" track of HOBBIT. Thus we have to stick to the SEALS evaluation routine.

We used the "-o" option in SEALS (version 7.0.5) to provide the two knowledge graphs which should be matched. The two given URLs are file URLs and not HTTP URLs because downloading the knowledge graphs from another server would be a huge time overhead (downloading 500 MB multiple times for different tasks). Thus the call of the SEALS client looks like the following:

java -Xmx25g -Xms15g -jar ../seals-omt-client.jar ${MATCHER_DIR} -z -o file:///data/ont1.xml file:///data/ont2.xml -f out.xml

This also means that the reported time (obtained with linux time command) also includes the environment preparation of SEALS (copying the configuration folder of each matcher at the start of the matching task) as well as copying the resulting alignment to the output file. We could not use the "-x" option of SEALS because we had to modify the evaluation routine based on two reasons. The first one is to differentiate between class, property and instance mappings. The second reason is to deal with the partial gold standard of this track.

The alignments were evaluated based on Precision, Recall and F-Measure for classes, properties and instances (each in isolation). Our partial gold standard contained 1:1 mappings as well as mappings in the form of which represent that resourceA has no correspondence in the second knowledge graph. This allows to increase the value of false positives if the matcher nevertheless finds a mapping (e.g. maps resourceA to resourceB). We further assume that in each knowledge graph only one representation of the concept exist. This means if we have the mapping in our gold standard we can count the mapping as a false positive (the assumption here is that in the seconds knowledge graph no similar concept to B exists). The value of false negatives is only increased if we have a 1:1 mapping and it is not found by a matcher. The whole source code for generating the evaluation results is also uploaded.

Results overview

class property instance overall
System Time #tracks SizePrec.F-m.Rec. SizePrec.F-m.Rec. SizePrec.F-m.Rec. SizePrec.F-m.Rec.
AML88448511.60.85 (0.85)0.64 (0.87)0.51 (0.88)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)82380.90.16 (0.16)0.23 (0.26)0.38 (0.63)102471.10.19 (0.19)0.23 (0.28)0.31 (0.52)
POMAP++438915.10.79 (0.79)0.74 (0.74)0.69 (0.69)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)16.90.79 (0.79)0.14 (0.14)0.08 (0.08)
Holontology318916.80.80 (0.80)0.83 (0.83)0.87 (0.87)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)18.80.80 (0.80)0.17 (0.17)0.10 (0.10)
DOME13747916.00.73 (0.73)0.73 (0.73)0.73 (0.73)207.30.86 (0.86)0.84 (0.84)0.81 (0.81)15688.70.61 (0.61)0.61 (0.61)0.61 (0.61)15912.00.68 (0.68)0.68 (0.68)0.67 (0.67)
LogMap14083721.70.66 (0.66)0.77 (0.80)0.91 (1.00)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)97081.40.08 (0.08)0.14 (0.15)0.81 (0.93)97104.80.09 (0.09)0.16 (0.16)0.64 (0.74)
LogMapBio2340922.10.68 (0.68)0.81 (0.81)1.00 (1.00)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)24.10.68 (0.68)0.19 (0.19)0.11 (0.11)
LogMapLt500622.00.61 (0.61)0.72 (0.76)0.87 (1.00)0.00.00 (0.00)0.00 (0.00)0.00 (0.00)82388.30.39 (0.39)0.52 (0.56)0.76 (0.96)88893.10.42 (0.42)0.49 (0.54)0.60 (0.77)
Baseline412918.90.75 (0.75)0.79 (0.79)0.84 (0.84)213.80.86 (0.86)0.84 (0.84)0.82 (0.82)17743.30.59 (0.59)0.69 (0.69)0.82 (0.82)17976.00.65 (0.65)0.73 (0.73)0.82 (0.82)
Aggregated results per matcher, divided into class, property, instance an overall mappings. Time is measured in seconds. #tracks indicates the number of tracks where the tool is able to generate (non empty) alignments. Size indicates the average of the number of generated correspondences for the tracks where an (non empty) alignment has been generated. Two kinds of results are reported : those do not distinguishing empty and erroneous (or not generated) alignments and those -- indicated between parenthesis -- considering only non empty generated alignments.
The following matchers could output results on all 9 tracks: POMAP++, Holontology, DOME, LogMapBio and the baseline. AML was running out of time(12 hours) on some tracks (heykidscomics~dc is currently running and not finished yet). LogMap needed more than the given 32 GB RAM for the bigger knowledge graphs. LogMapLt created alignment files bigger than 1GB (we stopped the matcher because it produced more than 50 GB in some runs).

Track specific results

Overall results

This result table shows the overall performance (without dividing into class, property or instance) of the matchers.
AML POMAP++ Holontology DOME LogMap LogMapBio LogMapLt Baseline
SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.
darkscape~oldschoolrunescape911220.170.260.59370.800.200.11420.750.220.1389970.590.590.58325350.230.360.77570.550.240.15717110.450.570.77160280.520.670.92
runescape~darkscape5872470.460.460.45540.850.200.11620.930.250.14190220.680.680.68960840.120.200.88760.830.260.155753710.480.620.89199700.770.780.80
runescape~oldschoolrunescape00.000.000.00410.670.180.11470.620.220.13197960.610.570.541989680.080.150.76660.590.270.171236380.310.450.80288460.510.620.78
heykidscomics~dc00.000.000.0041.000.050.0341.000.100.05540260.680.720.7600.000.000.0041.000.100.0500.000.000.00548770.740.780.84
marvel~dc00.000.000.0041.000.110.0641.000.210.1229800.700.760.8200.000.000.0041.000.210.1200.000.000.0025460.740.780.82
marvel~heykidscomics00.000.000.0051.000.110.0641.000.110.06171750.860.870.881472410.070.130.5941.000.110.0600.000.000.00169450.890.900.91
memory-alpha~memory-beta1208540.200.310.6230.000.000.0020.000.000.00136950.770.730.693338640.060.110.6220.000.000.00190310.530.580.66144830.720.720.72
memory-alpha~stexpanded399190.080.140.4420.000.000.0020.000.000.0032970.760.740.72213010.020.040.4420.000.000.0046500.420.430.4435520.780.780.78
memory-beta~stexpanded830980.090.160.5520.000.000.0020.000.000.0042200.650.700.75439500.080.140.5520.000.000.0056370.560.530.5045370.770.810.85

Class results

All matchers are able to generate class correspondences. Only the tracks darkscape~oldschoolrunescape, runescape~darkscape and runescape~oldschoolrunescape have enough classes to be meaningfully matched.
AML POMAP++ Holontology DOME LogMap LogMapBio LogMapLt Baseline
SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.
darkscape~oldschoolrunescape410.750.780.82350.800.760.73400.750.780.82370.550.550.55550.550.711.00550.550.711.00550.550.711.00460.620.670.73
runescape~darkscape600.930.930.93520.850.790.73600.930.930.93540.870.870.87740.830.911.00740.830.911.00800.680.811.00620.870.870.87
runescape~oldschoolrunescape00.000.000.00390.670.640.62450.620.690.77410.620.620.62640.590.741.00640.590.741.00630.590.741.00500.650.730.85
heykidscomics~dc00.000.000.0021.000.670.5021.001.001.0031.001.001.0000.000.000.0021.001.001.0000.000.000.0031.001.001.00
marvel~dc00.000.000.0021.000.670.5021.001.001.0031.001.001.0000.000.000.0021.001.001.0000.000.000.0031.001.001.00
marvel~heykidscomics00.000.000.0031.001.001.0021.001.001.0031.001.001.0021.001.001.0021.001.001.0000.000.000.0031.001.001.00
memory-alpha~memory-beta10.000.000.0010.000.000.0000.000.000.0010.000.000.0000.000.000.0000.000.000.0000.000.000.0010.000.000.00
memory-alpha~stexpanded10.000.000.0010.000.000.0000.000.000.0010.000.000.0000.000.000.0000.000.000.0000.000.000.0010.000.000.00
memory-beta~stexpanded10.000.000.0010.000.000.0000.000.000.0010.000.000.0000.000.000.0000.000.000.0000.000.000.0010.000.000.00

Property results

Only DOME and the baseline could generate property mappings whereas most matchers do not return property mappings. The reason behind that is most probably that all properties are typed as rdf:Property and not subdivided into owl:DatatypeProperty and owl:ObjectProperty. But this cannot be done easily in a preprocessing step because the usage of the properties is rather not strict i.e., some properties are used both with literals and resources as their object.. Given a matcher which maps only DatatypeProperty to DatatypeProperty and ObjectProperty to ObjectProperty will not take care of the properties defined in such an ontology. An improvement of these matchers would be to include also the mapping of rdf:Properties in case no more types are defined.
AML POMAP++ Holontology DOME LogMap LogMapBio LogMapLt Baseline
SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.
darkscape~oldschoolrunescape00.000.000.0000.000.000.0000.000.000.003390.920.890.8600.000.000.0000.000.000.0000.000.000.003411.000.960.93
runescape~darkscape00.000.000.0000.000.000.0000.000.000.006011.001.001.0000.000.000.0000.000.000.0000.000.000.006491.001.001.00
runescape~oldschoolrunescape00.000.000.0000.000.000.0000.000.000.004070.920.920.9200.000.000.0000.000.000.0000.000.000.004090.920.920.92
heykidscomics~dc00.000.000.0000.000.000.0000.000.000.001310.800.800.8000.000.000.0000.000.000.0000.000.000.001340.800.800.80
marvel~dc00.000.000.0000.000.000.0000.000.000.00500.880.880.8800.000.000.0000.000.000.0000.000.000.00500.880.880.88
marvel~heykidscomics00.000.000.0000.000.000.0000.000.000.00820.800.800.8000.000.000.0000.000.000.0000.000.000.00830.800.800.80
memory-alpha~memory-beta00.000.000.0000.000.000.0000.000.000.00910.500.370.3000.000.000.0000.000.000.0000.000.000.00910.430.350.30
memory-alpha~stexpanded00.000.000.0000.000.000.0000.000.000.00720.890.890.8900.000.000.0000.000.000.0000.000.000.00720.890.890.89
memory-beta~stexpanded00.000.000.0000.000.000.0000.000.000.00930.880.880.8800.000.000.0000.000.000.0000.000.000.00950.880.880.88

Instance results

AML, DOME, LogMap, LogMapLt and the baseline could return instance mappings.
AML POMAP++ Holontology DOME LogMap LogMapBio LogMapLt Baseline
SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.SizePrec.F-m.Rec.
darkscape~oldschoolrunescape572900.140.240.7200.000.000.0000.000.000.0086210.510.510.50324780.200.340.9600.000.000.00604230.430.590.96156410.450.610.96
runescape~darkscape5333550.380.390.4100.000.000.0000.000.000.00183670.600.600.60960080.100.180.9700.000.000.005437400.450.620.99192590.720.740.75
runescape~oldschoolrunescape00.000.000.0000.000.000.0000.000.000.00193480.520.470.431989020.070.120.8800.000.000.001112000.270.420.94283870.430.540.73
heykidscomics~dc00.000.000.0000.000.000.0000.000.000.00538920.620.670.7200.000.000.0000.000.000.0000.000.000.00547400.700.760.84
marvel~dc00.000.000.0000.000.000.0000.000.000.0029270.500.590.7100.000.000.0000.000.000.0000.000.000.0024930.560.630.71
marvel~heykidscomics00.000.000.0000.000.000.0000.000.000.00170900.870.890.911472360.070.120.8200.000.000.0000.000.000.00168590.910.930.95
memory-alpha~memory-beta620650.200.330.9500.000.000.0000.000.000.00136030.850.870.893338620.060.120.9500.000.000.00164770.530.691.00143910.820.880.95
memory-alpha~stexpanded216640.080.150.8900.000.000.0000.000.000.0032240.620.590.56212990.020.040.8900.000.000.0042940.420.570.8934790.670.670.67
memory-beta~stexpanded670540.090.170.9200.000.000.0000.000.000.0041260.530.590.67439480.080.150.9200.000.000.0053610.560.670.8344410.710.770.83

Runtime

AML had the highest runtimes followed by DOME and LogMap. POMAP++ and Holontology were quite fast but only return class mappings.
AML POMAP++ Holontology DOME LogMap LogMapBio LogMapLt Baseline
Time Time Time Time Time Time Time Time
darkscape~oldschoolrunescape769525233481395305333
runescape~darkscape283095138117336459728850
runescape~oldschoolrunescape0513511127405528753
heykidscomics~dc01066749010167097
marvel~dc0362676088025
marvel~heykidscomics09061119910522167076
memory-alpha~memory-beta33148312619971207773333
memory-alpha~stexpanded1027024211534518622022
memory-beta~stexpanded9026242114075931001923

Organizers

References

[1] Sven Hertling, Heiko Paulheim: DBkWik: A Consolidated Knowledge Graph from Thousands of Wikis. International Conference on Big Knowledge 2018. [pdf]

[2] Alexandra Hofmann, Samresh Perchani, Jan Portisch, Sven Hertling, and Heiko Paulheim. DBkWik: Towards Knowledge Graph Creation from Thousands of Wikis. International Semantic Web Conference (Posters & Demos) 2017. [pdf]