{'fraction_non_alphanumeric': 0.013628620102214651, 'fraction_numerical': 0.0008517887563884157, 'mean_word_length': 5.119791666666667, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Improving the Performance of a SPARQL Component for Semantic Web Applications

The vision of the Semantic Web is to make use of semantic representations on the largest possible scale the Web. Large knowledge bases such as DBpedia, OpenCyc, GovTrack are emerging and freely available as Linked Data and SPARQL endpoints. Exploring and analysing such knowledge bases is a significant hurdle for Semantic Web research and practice. As one possible direction for tackling this problem, we present an approach for obtaining complex class expressions from objects in knowledge bases by using Machine Learning techniques. We describe in detail how they leverage existing techniques to achieve scalability on large knowledge bases available as SPARQL endpoints or Linked Data. The algorithms are made available in the open source DL-Learner project and we present several real-life scenarios in which they can be used by Semantic Web applications. Because of the wide usage of the method in several well-known tools, we optimized and benchmarked the existing algorithms and show that we achieve an approximately 3-fold increase in speed, in addition to a more robust implementation.