|
I have a music ontology populated by music artists, releases and musics. Each artists has a similar to relation with other artists and i need to find a way to generate music recomendations. I've tought about a distance between entities. Is this the best way to generate simple recomendations? How can i do it? Im using jena. Thanks |
|
Computing the number of links in the shortest path consisting of "similar to" links seems reasonable as a simple way to generate recommendations (but there are obviously other methods depending on what data you have access to eg. similarity of music genre, user "likes" co-incidences, computational music analysis all of which can be fine tuned by collecting user feedback) In Jena, you're looking for OntTools specifically .findShortestPath() ( http://jena.apache.org/documentation/javadoc/jena/com/hp/hpl/jena/ontology/OntTools.html#findShortestPath(com.hp.hpl.jena.rdf.model.Model, com.hp.hpl.jena.rdf.model.Resource, com.hp.hpl.jena.rdf.model.RDFNode, com.hp.hpl.jena.util.iterator.Filter ) eg. http://answers.semanticweb.com/questions/1853/use-jena-to-get-distance-between-classes-in-an-ontology http://thusithamabotuwana.wordpress.com/2012/01/20/determining-shortest-distance-between-ontology-concepts-using-jena-onttools/ |

