Hi. Following up on this email, I have some further questions related to the Topic Classifier: 1) What kind of algorithms are used for analyzing the text of the classifier? Is it reusing some libraries/functionality of Apache Mahout's classifier (Naive Bayes)? 2) After importing my IPTC data (from iptc.org), I am not able to figure out what the concepts are named (see example of the IPTC XML I import below). So after importing the RDF from IPTC, I dont know how I refer my article-tags to the right concept when running the training-set.
Excerpt from the RDF from IPTC: <rdf:Description rdf:about=" http://cv.iptc.org/newscodes/mediatopic/20000895"> <rdf:type rdf:resource=" http://www.w3.org/2004/02/skos/core#Concept"/> <skos:prefLabel xml:lang="fr">Bmx</skos:prefLabel> <skos:prefLabel xml:lang="ar">ب�~J ا�~E ا�~Cس</skos:prefLabel> <skos:prefLabel xml:lang="es">Bmx</skos:prefLabel> <skos:prefLabel xml:lang="de">BMX</skos:prefLabel> <skos:prefLabel xml:lang="en-GB">bmx</skos:prefLabel> <skos:definition xml:lang="de">Fahrrad-Rennen in mit Inline-Start und verschiedene Hindernisse über Pisten im Geländ e.</skos:definition> <skos:definition xml:lang="en-GB">Bicycle racing in with inline start and various obstacles over off-road circuits. </ skos:definition> <skos:inScheme rdf:resource=" http://cv.iptc.org/newscodes/mediatopic/"/><!--Broader Relationships--><skos:broader> <rdf:Description rdf:about=" http://cv.iptc.org/newscodes/mediatopic/20000892"> <rdf:type rdf:resource=" http://www.w3.org/2004/02/skos/core#Concept"/> </rdf:Description> </skos:broader><!--Narrower Relationships--><!--SKOS Mapping Relationships--><skos:broadMatch rdf:resource="http://cv. iptc.org/newscodes/subjectcode/15019000"/> </rdf:Description> Hope someone can help! Best regards, Simen Haagenrud 2015-07-31 14:50 GMT+02:00 Simen Haagenrud <si...@escenic.com>: > Hi. > > I am testing the Topic Classifier. I have been able to upload some > concepts (IPTC data), and some training-set test data. > > However, when I try to click the "Topic Model" or "Training Set" links in > the UI (in the Topic section) of Stanbol, I get a FileNotFound. > > I have tried starting both the full launchers (with Tomcat), and also > through the instructions in the PDF: > http://blog.iks-project.eu/wp-content/uploads/TopicEngineClassification1.pdf > > Any suggestions? > > This is the stacktrace: > > > ------------------- > 29.07.2015 23:28:53.562 *WARN* [qtp141760679-35] > org.apache.stanbol.commons.freemarker.impl.BundleTemplateLoader Template > html/org/apache/stanbol/enhancer/web/topic/resource/TopicModelResource$ClassifierResource/index.ftl > not known > 29.07.2015 23:28:53.570 *WARN* [qtp141760679-35] > org.eclipse.jetty.servlet.ServletHandler > javax.servlet.ServletException: java.lang.RuntimeException: > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter$Wrapper > at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:392) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:381) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:344) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:219) > at > org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:336) > at > org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:297) > at > org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:93) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:50) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.stanbol.commons.httpqueryheaders.impl.QueryHeadersFilter.doFilter(QueryHeadersFilter.java:84) > at > org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:84) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:208) > at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:271) > at > org.apache.stanbol.commons.cors.StanbolCorsFilter.doFilter(StanbolCorsFilter.java:68) > at > org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.stanbol.commons.web.resources.ResourceServingFilter.doFilterHttp(ResourceServingFilter.java:148) > at > org.apache.stanbol.commons.web.resources.ResourceServingFilter.doFilter(ResourceServingFilter.java:91) > at > org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:76) > at > org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:49) > at > org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:725) > at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) > at > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) > at > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221) > at > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) > at > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) > at > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) > at > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) > at > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:497) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.RuntimeException: > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter$Wrapper > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.renderPojo(ViewableWriter.java:108) > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.writeTo(ViewableWriter.java:78) > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.writeTo(ViewableWriter.java:45) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.invokeWriteTo(WriterInterceptorExecutor.java:263) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo(WriterInterceptorExecutor.java:250) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) > at > org.glassfish.jersey.server.internal.JsonWithPaddingInterceptor.aroundWriteTo(JsonWithPaddingInterceptor.java:103) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) > at > org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:88) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) > at > org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1154) > at > org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:571) > at > org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:378) > at > org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:368) > at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:262) > at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) > at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) > at org.glassfish.jersey.internal.Errors.process(Errors.java:315) > at org.glassfish.jersey.internal.Errors.process(Errors.java:297) > at org.glassfish.jersey.internal.Errors.process(Errors.java:267) > at > org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320) > at > org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236) > at > org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028) > at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:373) > ... 50 common frames omitted > Caused by: java.io.FileNotFoundException: Template > "html/org/apache/stanbol/enhancer/web/topic/resource/TopicModelResource$ClassifierResource/index" > not found. > at freemarker.template.Configuration.getTemplate(Configuration.java:742) > at freemarker.template.Configuration.getTemplate(Configuration.java:665) > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.renderPojo(ViewableWriter.java:103) > ... 73 common frames omitted > 29.07.2015 23:28:53.571 *WARN* [qtp141760679-35] > org.eclipse.jetty.server.HttpChannel /topic/model/escenic-category-model > javax.servlet.ServletException: java.lang.RuntimeException: > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter$Wrapper > at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:392) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:381) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:344) > at > org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:219) > at > org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:336) > at > org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:297) > at > org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:93) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:50) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.stanbol.commons.httpqueryheaders.impl.QueryHeadersFilter.doFilter(QueryHeadersFilter.java:84) > at > org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:84) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:208) > at com.thetransactioncompany.cors.CORSFilter.doFilter(CORSFilter.java:271) > at > org.apache.stanbol.commons.cors.StanbolCorsFilter.doFilter(StanbolCorsFilter.java:68) > at > org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.stanbol.commons.web.resources.ResourceServingFilter.doFilterHttp(ResourceServingFilter.java:148) > at > org.apache.stanbol.commons.web.resources.ResourceServingFilter.doFilter(ResourceServingFilter.java:91) > at > org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108) > at > org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80) > at > org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46) > at > org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31) > at > org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:76) > at > org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:49) > at > org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:725) > at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) > at > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) > at > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221) > at > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) > at > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) > at > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) > at > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) > at > org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) > at org.eclipse.jetty.server.Server.handle(Server.java:497) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) > at > org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) > at > org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.RuntimeException: > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter$Wrapper > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.renderPojo(ViewableWriter.java:108) > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.writeTo(ViewableWriter.java:78) > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.writeTo(ViewableWriter.java:45) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.invokeWriteTo(WriterInterceptorExecutor.java:263) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo(WriterInterceptorExecutor.java:250) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) > at > org.glassfish.jersey.server.internal.JsonWithPaddingInterceptor.aroundWriteTo(JsonWithPaddingInterceptor.java:103) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) > at > org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:88) > at > org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) > at > org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1154) > at > org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:571) > at > org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:378) > at > org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:368) > at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:262) > at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) > at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) > at org.glassfish.jersey.internal.Errors.process(Errors.java:315) > at org.glassfish.jersey.internal.Errors.process(Errors.java:297) > at org.glassfish.jersey.internal.Errors.process(Errors.java:267) > at > org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:320) > at > org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236) > at > org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028) > at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:373) > ... 50 common frames omitted > Caused by: java.io.FileNotFoundException: Template > "html/org/apache/stanbol/enhancer/web/topic/resource/TopicModelResource$ClassifierResource/index" > not found. > at freemarker.template.Configuration.getTemplate(Configuration.java:742) > at freemarker.template.Configuration.getTemplate(Configuration.java:665) > at > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter.renderPojo(ViewableWriter.java:103) > ... 73 common frames omitted > 29.07.2015 23:28:53.571 *WARN* [qtp141760679-35] > org.eclipse.jetty.server.HttpChannel Could not send response error 500: > javax.servlet.ServletException: java.lang.RuntimeException: > org.apache.stanbol.commons.viewable.writer.impl.ViewableWriter$Wrapper > ------------------- > -- > > Best regards, > Simen Haagenrud > >