Open Recommender

14
OpenRecommender OpenRecommender A Cross-Platform Semantic Recommendation Engine Bryan Copeland, BCmoney MobileTV

description

OpenRecommender is an open source project to create the world's most reliable and scalable Recommendation Engine software for filtering and suggesting content & services of all types, in the right place, at the right time.

Transcript of Open Recommender

Page 1: Open Recommender

OpenRecommenderOpenRecommender

A Cross-Platform Semantic Recommendation Engine Bryan Copeland, BCmoney MobileTV

Page 2: Open Recommender

SW Adoption (Major Issues)SW Adoption (Major Issues)

Data linkage & integration

Vocabulary selection

Service & Content discovery

Search-equivalent paradigm

Page 3: Open Recommender

RecommendationsRecommendations

What is a recommendation? Interesting video (Video + Discussion) Shocking News story (News + Text + Organization) Delicious recipe/restaurant (Food + Text/Location) Favorite song/band (Person + Organization/Audio) “My shows” (Video + Person + Event) Medical Dataset to query (Species + Text + License) Medical treatment (Species + Person + Text) Legal services (Person + Organization + Profession + Event)

I like it, so you must like it too!

Page 4: Open Recommender

TaxonomyTaxonomy

Audio Celestial Code Device Discussion Event Food Image License

LocationNewsOrganizationPersonProfessionSpeciesTextVideo

Page 5: Open Recommender

SchemaSchema

{ "recommendations": [ { "recommendation" : { "title":"", "image":"", "link":"", "description":"“ } } ]}

<recommendations> <recommendation> <title><title> <image></image> <link></link> <description></description> … </recommendation> …<recommendations>

XML JSON

Page 6: Open Recommender

SemanticsSemantics

RDF<foaf:Person rdf:ID="http://facebook.com/bcmoney"> <foaf:name> Bryan Copeland </foaf:name> <rec:recommends> <dc:title lang="ja">Akunin</dc:title> <dc:title lang="en">Villain</dc:title> <dc:image>...</dc:image> <dc:source> http://www.akunin.jp/ </dc:source> <dc:description>…</dc:description> </rec:recommends></foaf:Person>

n3@prefix foaf: <http://xmlns.com/foaf/0.1/>.@prefix dc: <http://purl.org/dc/elements/1.1/>.@prefix owl: <http://www.w3.org/2002/07/owl#>.@prefix rec: <http://openrecommender.org/schema/>.

<http://facebook.com/bcmoney> foaf:name “Bryan Copeland"; dc:publisher “Facebook“; rec:recommends <http://www.akunin.jp/>. <http://www.akunin.jp/> dc:Title "Akunin"; dc:Title “Villain"; owl:sameAs <http://imdb.com/title/tt1542840/>; owl:sameAs <http://freebase.com/view/m/0dlh7sg>

.

Page 7: Open Recommender

OntologyOntology

Mobile PhonesMobile TV

Broadcast Type One-seg DMB IPTV

XMLTV

Dublin CoreFOAFMusic

Page 8: Open Recommender

ArchetypesArchetypes

Lean ForwardResearcher TechieChannel SurferArmchair ActivistSuper FanParty organizerBargain hunter

Lean BackBusy ExecutiveBusiness OwnerCouch PotatoConcerned Parent Jock/CheerleaderParty hopperPack rat

Page 9: Open Recommender

AlgorithmsAlgorithms

Machine Learning (Stats)Non-negative matrix factorization Single Value DecompositionLaBarrie Theory (EQ)Collaborative Filtering (CF)Natural Language Processing (NLP)Fuzzy String Matching“Intelligent” Randomization

Page 10: Open Recommender

RelevanceRelevance

Ranking factor plots performance of algorithms for each Archetype against each Semantic type from Taxonomy

P x Q x R matrixHeight = 10 (# of algorithms)Width = 500 (# of users)Depth = 17 (# of categories in Taxonomy)

Page 11: Open Recommender

ExampleExample

User 1

User 2

… User N

CF 0.014 0.173

ML 0.158 0.092

A(n)

Audio…

Video

P

Q

R

P =

Page 12: Open Recommender

Cross-Platform?Cross-Platform?

Platform-specific plugins/apps: WordPress MediaWiki Firefox, IE, Safari, Opera browser plugin iPhone Blackberry Android Java Desktop client?

Web Service API (w/ SPARQL endpoint) PHP, AJAX, HTML5 toolkits W3C Widgets

Page 13: Open Recommender

Looking For…Looking For…

Code Contributors

Sponsors (contest)

Project Champion (industry)

Collaboration, Feedback

Page 14: Open Recommender

QuestionsQuestions

Recommendations replacement for Search?

How can Recommendation Engines (like Search Engines) be gamed?

Ideas on ways to prevent attacks?

Privacy issues? Others?