From: <ku...@us...> - 2008-05-22 14:10:35
|
Revision: 921 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=921&view=rev Author: kurzum Date: 2008-05-22 07:10:08 -0700 (Thu, 22 May 2008) Log Message: ----------- added jamon Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/algorithms/refexamples/ExampleBasedROLearner.java trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java trunk/src/dl-learner/org/dllearner/scripts/SKOS7030.java trunk/src/dl-learner/org/dllearner/scripts/SPARQLExtractionEvaluation.java trunk/src/dl-learner/org/dllearner/scripts/SPARQLMassLearning.java trunk/src/dl-learner/org/dllearner/utilities/examples/AutomaticPositiveExampleFinderSPARQL.java trunk/src/dl-learner/org/dllearner/utilities/examples/SPARQLTasks.java Added Paths: ----------- trunk/src/dl-learner/org/dllearner/utilities/JamonMonitorLogger.java Removed Paths: ------------- trunk/src/dl-learner/org/dllearner/utilities/JamonTimeLogger.java Modified: trunk/src/dl-learner/org/dllearner/algorithms/refexamples/ExampleBasedROLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refexamples/ExampleBasedROLearner.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/algorithms/refexamples/ExampleBasedROLearner.java 2008-05-22 14:10:08 UTC (rev 921) @@ -46,6 +46,7 @@ import org.dllearner.refinementoperators.RhoDRDown; import org.dllearner.utilities.Files; import org.dllearner.utilities.Helper; +import org.dllearner.utilities.JamonMonitorLogger; import org.dllearner.utilities.owl.ConceptComparator; import org.dllearner.utilities.owl.ConceptTransformation; @@ -279,6 +280,7 @@ public void start() { runtime=System.currentTimeMillis(); + JamonMonitorLogger.getTimeMonitor(ExampleBasedROLComponent.class, "totalLearningTime").start(); // TODO: write a JUnit test for this problem (long-lasting or infinite loops because // redundant children of a node are called recursively after when the node is extended // twice) @@ -432,9 +434,6 @@ // Anzahl Schleifendurchläufe loop++; - - - }//end while @@ -467,9 +466,13 @@ if(stop) logger.info("Algorithm stopped."); else - logger.info("Algorithm terminated succesfully."); + logger.info("Algorithm terminated succesfully."); + + JamonMonitorLogger.getTimeMonitor(ExampleBasedROLComponent.class, "totalLearningTime").stop(); } + + // we apply the operator recursively until all proper refinements up // to the maxmimum length are reached private void extendNodeProper(ExampleBasedNode node, int maxLength) { Modified: trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java 2008-05-22 14:10:08 UTC (rev 921) @@ -32,7 +32,7 @@ import org.apache.log4j.Logger; import org.dllearner.core.KnowledgeSource; -import org.dllearner.utilities.statistics.Statistics; +import org.dllearner.utilities.JamonMonitorLogger; /** * SPARQL query cache to avoid possibly expensive multiple queries. The queries @@ -94,6 +94,10 @@ return c; } + public static String getDefaultCacheDir(){ + return "cache"; + } + /** * Constructor for the cache itself. * @@ -234,14 +238,21 @@ * @return Jena result set. */ public String executeSparqlQuery(SparqlQuery query) { + JamonMonitorLogger.getTimeMonitor(Cache.class, "TotalTimeExecuteSparqlQuery").start(); + JamonMonitorLogger.increaseCount(Cache.class, "TotalQueries"); - Statistics.increaseQuery(); + + //Statistics.increaseQuery(); + + JamonMonitorLogger.getTimeMonitor(Cache.class, "ReadTime").start(); String result = getCacheEntry(query.getQueryString()); + JamonMonitorLogger.getTimeMonitor(Cache.class, "ReadTime").stop(); + if (result != null) { logger.trace("got from cache"); - - Statistics.increaseCachedQuery(); - return result; + JamonMonitorLogger.increaseCount(Cache.class, "SuccessfulHits"); + //Statistics.increaseCachedQuery(); + //return result; } else { //SimpleClock sc = new SimpleClock(); query.send(); @@ -251,8 +262,11 @@ addToCache(query.getQueryString(), json); } else json=""; - return json; + logger.warn("empty result: "+query.getQueryString()); + //return json; } + JamonMonitorLogger.getTimeMonitor(Cache.class, "TotalTimeExecuteSparqlQuery").stop(); + return result; } public void setFreshnessInDays(int days){ Modified: trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java 2008-05-22 14:10:08 UTC (rev 921) @@ -25,6 +25,7 @@ import org.apache.log4j.Logger; import org.dllearner.core.KnowledgeSource; +import org.dllearner.utilities.JamonMonitorLogger; import com.hp.hpl.jena.query.ResultSet; import com.hp.hpl.jena.query.ResultSetFactory; @@ -85,9 +86,11 @@ try{ //TODO remove after overnext Jena release HttpQuery.urlLimit = 3*1024 ; - //SimpleClock sc=new SimpleClock(); + + JamonMonitorLogger.getTimeMonitor(SparqlQuery.class, "httpTime").start(); rs = queryExecution.execSelect(); - //sc.printAndSet("rs to list"); + JamonMonitorLogger.getTimeMonitor(SparqlQuery.class, "httpTime").stop(); + logger.debug("query SPARQL server ["+extraDebugInfo+"], retrieved: "+rs.getResultVars()); json=SparqlQuery.getAsJSON(rs); Modified: trunk/src/dl-learner/org/dllearner/scripts/SKOS7030.java =================================================================== --- trunk/src/dl-learner/org/dllearner/scripts/SKOS7030.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/scripts/SKOS7030.java 2008-05-22 14:10:08 UTC (rev 921) @@ -25,6 +25,7 @@ import org.dllearner.learningproblems.PosNegDefinitionLP; import org.dllearner.learningproblems.PosNegLP; import org.dllearner.reasoning.FastInstanceChecker; +import org.dllearner.utilities.JamonMonitorLogger; import org.dllearner.utilities.datastructures.SetManipulation; import org.dllearner.utilities.examples.AutomaticNegativeExampleFinderSPARQL; import org.dllearner.utilities.examples.AutomaticPositiveExampleFinderSPARQL; @@ -70,6 +71,7 @@ */ public static void main(String[] args) { System.out.println("Start"); + initLogger(); //parameters @@ -94,12 +96,13 @@ logger.debug("found nr of concepts: "+conceptresults.size()); for (Description oneConcept : conceptresults) { - s.evaluate(oneConcept, 1000); + //s.evaluate(oneConcept, 1000); } System.out.println("Finished"); + JamonMonitorLogger.printAll(); } @@ -283,6 +286,8 @@ apos.makePositiveExamplesFromSKOSConcept(SKOSConcept); fullPositiveSet = apos.getPosExamples(); + //System.exit(0); + int poslimit=(int)Math.round(percentOfSKOSSet*fullPositiveSet.size()); int neglimit=(int)Math.round(poslimit*negfactor); @@ -358,7 +363,7 @@ } if(randomizeCache) cm.applyConfigEntry(ks, "cacheDir","cache/"+System.currentTimeMillis()+""); - else {cm.applyConfigEntry(ks, "cacheDir",Cache.getDefaultCache());} + else {cm.applyConfigEntry(ks, "cacheDir",Cache.getDefaultCacheDir());} //LEARNINGALGORITHM cm.applyConfigEntry(la,"useAllConstructor",false); Modified: trunk/src/dl-learner/org/dllearner/scripts/SPARQLExtractionEvaluation.java =================================================================== --- trunk/src/dl-learner/org/dllearner/scripts/SPARQLExtractionEvaluation.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/scripts/SPARQLExtractionEvaluation.java 2008-05-22 14:10:08 UTC (rev 921) @@ -14,7 +14,6 @@ import org.dllearner.kb.sparql.Cache; import org.dllearner.kb.sparql.SparqlEndpoint; import org.dllearner.kb.sparql.SparqlQuery; -import org.dllearner.utilities.examples.AutomaticExampleFinderSPARQLold; import org.dllearner.utilities.learn.LearnSparql; import org.dllearner.utilities.statistics.SimpleClock; import org.dllearner.utilities.statistics.Statistics; @@ -103,12 +102,12 @@ boolean closeAfterRecursion=true; System.out.println(oneConcept); - AutomaticExampleFinderSPARQLold ae= new AutomaticExampleFinderSPARQLold( se); + //AutomaticExampleFinderSPARQLold ae= new AutomaticExampleFinderSPARQLold( se); //ae.initDBpedia(oneConcept, useRelated, useSuperClasses,useParallelClasses, poslimit, neglimit); - posExamples = ae.getPosExamples(); - negExamples = ae.getNegExamples(); + //posExamples = ae.getPosExamples(); + //negExamples = ae.getNegExamples(); for(recursiondepth=0;recursiondepth<4;recursiondepth++) { Modified: trunk/src/dl-learner/org/dllearner/scripts/SPARQLMassLearning.java =================================================================== --- trunk/src/dl-learner/org/dllearner/scripts/SPARQLMassLearning.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/scripts/SPARQLMassLearning.java 2008-05-22 14:10:08 UTC (rev 921) @@ -13,7 +13,6 @@ import org.dllearner.kb.sparql.SparqlEndpoint; import org.dllearner.kb.sparql.SparqlKnowledgeSource; import org.dllearner.kb.sparql.SparqlQuery; -import org.dllearner.utilities.examples.AutomaticExampleFinderSPARQLold; import org.dllearner.utilities.learn.ConfWriter; import org.dllearner.utilities.learn.LearnSparql; import org.dllearner.utilities.statistics.SimpleClock; @@ -23,6 +22,7 @@ public class SPARQLMassLearning { + static Cache c; static SparqlEndpoint se; private static Logger logger = Logger.getRootLogger(); @@ -182,7 +182,7 @@ boolean closeAfterRecursion=false; int numberOfTriples = 0; for (String oneConcept : concepts) { - AutomaticExampleFinderSPARQLold ae= new AutomaticExampleFinderSPARQLold( se); + //AutomaticExampleFinderSPARQLold ae= new AutomaticExampleFinderSPARQLold( se); useRelated = true; useSuperClasses = true; useParallelClasses = false; @@ -190,8 +190,8 @@ poslimit=10; neglimit=10; //ae.initDBpedia(concept, useRelated, useSuperClasses,useParallelClasses, poslimit, neglimit); - posExamples = ae.getPosExamples(); - negExamples = ae.getNegExamples(); + //posExamples = ae.getPosExamples(); + //negExamples = ae.getNegExamples(); /*String tmp = concepts.first().replace("http://dbpedia.org/resource/Category:", "").replace("\"",""); @@ -223,33 +223,7 @@ } - /*************************************************************************** - * *********************OLDCODE String - * conj="(\"http://dbpedia.org/class/yago/Person100007846\" AND - * \"http://dbpedia.org/class/yago/Head110162991\")"; - * - * - * concepts.add("EXISTS \"http://dbpedia.org/property/disambiguates\".TOP"); - * concepts.add("EXISTS - * \"http://dbpedia.org/property/successor\".\"http://dbpedia.org/class/yago/Person100007846\""); - * concepts.add("EXISTS \"http://dbpedia.org/property/successor\"."+conj); - * //concepts.add("ALL \"http://dbpedia.org/property/disambiguates\".TOP"); - * //concepts.add("ALL - * \"http://dbpedia.org/property/successor\".\"http://dbpedia.org/class/yago/Person100007846\""); - * concepts.add("\"http://dbpedia.org/class/yago/Person100007846\""); - * concepts.add(conj); - * concepts.add("(\"http://dbpedia.org/class/yago/Person100007846\" OR - * \"http://dbpedia.org/class/yago/Head110162991\")"); - * - * //concepts.add("NOT \"http://dbpedia.org/class/yago/Person100007846\""); - * - * for (String kbsyntax : concepts) { - * result.put(kbsyntax,queryConcept(kbsyntax)); } - * System.out.println("************************"); for (String string : - * result.keySet()) { System.out.println("KBSyntayString: "+string); - * System.out.println("Query:\n"+result.get(string).hasNext()); - * System.out.println("************************"); } - **************************************************************************/ + Copied: trunk/src/dl-learner/org/dllearner/utilities/JamonMonitorLogger.java (from rev 920, trunk/src/dl-learner/org/dllearner/utilities/JamonTimeLogger.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/JamonMonitorLogger.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/utilities/JamonMonitorLogger.java 2008-05-22 14:10:08 UTC (rev 921) @@ -0,0 +1,101 @@ +package org.dllearner.utilities; + +import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; +import java.util.SortedSet; +import java.util.TreeSet; + +import org.dllearner.algorithms.refexamples.ExampleBasedROLComponent; +import org.dllearner.kb.sparql.Cache; +import org.dllearner.kb.sparql.SparqlQuery; + +import com.jamonapi.Monitor; +import com.jamonapi.MonitorFactory; + +/** + * provides convenience functions for timelogs + * + */ +public class JamonMonitorLogger { + + + public static List<Monitor> getMonitorsSortedByLabel(){ + MonitorFactory mf=(MonitorFactory)MonitorFactory.getFactory(); + SortedSet<String> retMon = new TreeSet<String>(); + + @SuppressWarnings("unchecked") + Iterator<Monitor> it = mf.iterator(); + + while (it.hasNext()) { + Monitor monitor = (Monitor) it.next(); + retMon.add(monitor.getLabel()); + } + + LinkedList<Monitor> l=new LinkedList<Monitor>(); + + for (String label : retMon) { + l.add(MonitorFactory.getTimeMonitor(label)); + } + + return l; + } + + + + public static void printAll() { + List<Monitor> l= getMonitorsSortedByLabel(); + for (int i = 0; i < l.size(); i++) { + Monitor monitor = l.get(i); + System.out.println(monitor); + } + } + + + + + public static String getMonitorPrefix(Class clazz){ + String retval=""; + if (clazz == SparqlQuery.class) { + retval= "Sparql:"; + } else if (clazz == Cache.class) { + retval= "Sparql:"; + } else if (clazz == Cache.class) { + retval= "Sparql:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else if (clazz == ExampleBasedROLComponent.class) { + retval= "Learning:"; + } else if (clazz == SparqlQuery.class) { + retval= "sparql:"; + } else { + retval= "undefined:"; + } + return retval+clazz.getSimpleName()+":"; + } + + public static Monitor getTimeMonitor(Class clazz, String label) { + + String labeltmp = getMonitorPrefix(clazz)+label; + return MonitorFactory.getTimeMonitor(labeltmp); + + } + + public static void increaseCount (Class clazz, String label) { + MonitorFactory.getMonitor(getMonitorPrefix(clazz)+label, "#").add(1.0); + } + + + + +} Deleted: trunk/src/dl-learner/org/dllearner/utilities/JamonTimeLogger.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/JamonTimeLogger.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/utilities/JamonTimeLogger.java 2008-05-22 14:10:08 UTC (rev 921) @@ -1,9 +0,0 @@ -package org.dllearner.utilities; - -/** - * provides convenience functions for timelogs - * - */ -public class JamonTimeLogger { - -} Modified: trunk/src/dl-learner/org/dllearner/utilities/examples/AutomaticPositiveExampleFinderSPARQL.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/examples/AutomaticPositiveExampleFinderSPARQL.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/utilities/examples/AutomaticPositiveExampleFinderSPARQL.java 2008-05-22 14:10:08 UTC (rev 921) @@ -45,7 +45,7 @@ public void makePositiveExamplesFromSKOSConcept(String SKOSConcept){ logger.debug("making Positive Examples from SKOSConcept: "+SKOSConcept); this.posExamples = sparqltasks.retrieveInstancesForSKOSConcept(SKOSConcept, 0); - logger.debug(" pos Example size: "+posExamples.size()); + logger.debug("pos Example size: "+posExamples.size()); } public SortedSet<String> getPosExamples() { Modified: trunk/src/dl-learner/org/dllearner/utilities/examples/SPARQLTasks.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/examples/SPARQLTasks.java 2008-05-22 12:06:39 UTC (rev 920) +++ trunk/src/dl-learner/org/dllearner/utilities/examples/SPARQLTasks.java 2008-05-22 14:10:08 UTC (rev 921) @@ -90,7 +90,7 @@ "?subject " + "<"+role+"> " + "<" + object + "> \n" + - "} LIMIT "+resultLimit; + "} "+limit(resultLimit); return queryAsSet(SPARQLquery, "subject"); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |