SlideShare a Scribd company logo
1 of 47
Recommendation
Subsystem
Museum Radar
Panagiotis K. Gemos
The best way to learn is by asking
questions.
- I said that
What’s the subsystems purpose ?
What’s the subsystems purpose ?
It uses an algorithm to rearrange the museum list
that is given as input in a way that it best fits
what the user wants.
What’s the subsystems purpose ?
It uses an algorithm to rearrange the museum list
that is given as input in a way that it best fits
what the user wants.
Its purpose is to make suggestions based on info
about the museum.
What’s the subsystems purpose ?
It uses an algorithm to rearrange the museum list
that is given as input in a way that it best fits
what the user wants.
Its purpose is to make suggestions based on info
about the museum.
Hint: We do not use mind reading machine. That
might be our next project. Thus no 100% accuracy
So, what did we use ?
So, what did we use ?
We used an algorithm that produces suggestions
based on :
So, what did we use ?
We used an algorithm that produces suggestions
based on :
the distance of the museum
from the user
So, what did we use ?
We used an algorithm that produces suggestions
based on :
the distance of the museum
from the user
and the museum’s ratings.
The algorithm’s skeptic
The algorithm’s skeptic
It’s just an equation that does it’s job.
The algorithm’s skeptic
It’s just an equation that does it’s job.
It adjusts weights to the parameters:
The algorithm’s skeptic
It’s just an equation that does it’s job.
It adjusts weights to the parameters:
o Distance – 40%
The algorithm’s skeptic
It’s just an equation that does it’s job.
It adjusts weights to the parameters:
o Distance – 40%
o Rating – 60%
The algorithm’s skeptic
It’s just an equation that does it’s job.
It adjusts weights to the parameters:
o Distance – 40%
o Rating – 60%
…and according to these, it sorts the input list of
museums.
The algorithm’s skeptic
It’s just an equation that does it’s job.
It adjusts weights to the parameters:
o Distance – 40%
o Rating – 60%
…and according to these, it sorts the input list of
museums.
The sorted list is the output.
Why did we chose a 60-40 ratio ?
Why did we chose a 60-40 ratio ?
 We are convinced that users are more attracted to
others users’ ratings in general. So the ratings parameter
should have a greater influence to the suggestion metric
than the distance parameter.
Why did we chose a 60-40 ratio ?
 We are convinced that users are more attracted to
others users’ ratings in general. So the ratings parameter
should have a greater influence to the suggestion metric
than the distance parameter.
 The 60-40 is a ratio that we believe it fits best.
Why did we chose a 60-40 ratio ?
 We are convinced that users are more attracted to
others users’ ratings in general. So the ratings parameter
should have a greater influence to the suggestion metric
than the distance parameter.
 The 60-40 is a ratio that we believe it fits best.
Hint: No we haven’t done any statistical
analysis to find that 60-40 ratio.
Behold the maths :
Behold the maths :
Nice maths pal, where is the coding ?
Nice maths pal, where is the coding ?
 The algorithm is written in the famous PHP language and
its code has been inserted to the Museum REST controller
(Mymuseum.php).
Nice maths pal, where is the coding ?
 The algorithm is written in the famous PHP language and
its code has been inserted to the Museum REST controller
(Mymuseum.php).
 It is called by the function calc_weight which receives:
Nice maths pal, where is the coding ?
 The algorithm is written in the famous PHP language and
its code has been inserted to the Museum REST controller
(Mymuseum.php).
 It is called by the function calc_weight which receives:
o the museum’s rating
Nice maths pal, where is the coding ?
 The algorithm is written in the famous PHP language and
its code has been inserted to the Museum REST controller
(Mymuseum.php).
 It is called by the function calc_weight which receives:
o the museum’s rating
o the museum’s distance
Nice maths pal, where is the coding ?
 The algorithm is written in the famous PHP language and
its code has been inserted to the Museum REST controller
(Mymuseum.php).
 It is called by the function calc_weight which receives:
o the museum’s rating
o the museum’s distance
o the max distance and max rating
Looking into the Future…
Looking into the Future…
Looking into the Future…
 We may add extra parameters for the recommendation
algorithm like:
Looking into the Future…
 We may add extra parameters for the recommendation
algorithm like:
o The time till the museum closes in accordance with the average
time that a person spends on a museum.
Looking into the Future…
 We may add extra parameters for the recommendation
algorithm like:
o The time till the museum closes in accordance with the average
time that a person spends on a museum.
o The search history of the user, recommending museums that he
have searched in the past.
Looking into the Future…
 We may add extra parameters for the recommendation
algorithm like:
o The time till the museum closes in accordance with the average
time that a person spends on a museum.
o The search history of the user, recommending museums that he
have searched in the past.
o The ability to return a list that uses a selection of the above
parameters which will be defined by the user.
What we got from the Code Camp
What we got from the Code Camp
 Lots of experience.
What we got from the Code Camp
 Lots of experience.
 Learned more about web programming.
What we got from the Code Camp
 Lots of experience.
 Learned more about web programming.
 We did not know PHP and we had to learn it in half week.
What we got from the Code Camp
 Lots of experience.
 Learned more about web programming.
 We did not know PHP and we had to learn it in half week.
 We got to cooperate with other programmers.
What we got from the Code Camp
 Lots of experience.
 Learned more about web programming.
 We did not know PHP and we had to learn it in half week.
 We got to cooperate with other programmers.
 We got close into how a larger scale program than the tic-tac-
toe can be developed.
Is it Thanksgiving day ?
Is it Thanksgiving day ?
 Although it might not be, I would like to thank all the
people behind the Harokopeio Ellak Code Camp and
the group I worked to make the project.
Is it Thanksgiving day ?
 Although it might not be, I would like to thank all the
people behind the Harokopeio Ellak Code Camp and
the group I worked to make the project.
 Special thanks to Christos Tsolkas to whom we owe this
algorithm, because basically it was his idea. The one I
wrote was too complex and had a 50-50 weight ratio.
He also helped as to insert the algorithm inside the
controller (actually he inserted it).
My questions are off
My questions are off
but…
Maybe you got some questions for me

More Related Content

Similar to Recommendation Subsystem - Museum Radar

Explainability for Learning to Rank
Explainability for Learning to RankExplainability for Learning to Rank
Explainability for Learning to RankSease
 
A gentle introduction to algorithm complexity analysis
A gentle introduction to algorithm complexity analysisA gentle introduction to algorithm complexity analysis
A gentle introduction to algorithm complexity analysisLewis Lin 🦊
 
TwiSent: A Multi-Stage System for Analyzing Sentiment in Twitter
TwiSent: A Multi-Stage System for Analyzing Sentiment in TwitterTwiSent: A Multi-Stage System for Analyzing Sentiment in Twitter
TwiSent: A Multi-Stage System for Analyzing Sentiment in TwitterSubhabrata Mukherjee
 
Machine Learning with Spark
Machine Learning with SparkMachine Learning with Spark
Machine Learning with Sparkelephantscale
 
Session 5 coding handson Tensorflow
Session 5 coding handson Tensorflow Session 5 coding handson Tensorflow
Session 5 coding handson Tensorflow Rajagopal A
 
Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...
Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...
Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...Codemotion
 
Word embeddings as a service - PyData NYC 2015
Word embeddings as a service -  PyData NYC 2015Word embeddings as a service -  PyData NYC 2015
Word embeddings as a service - PyData NYC 2015François Scharffe
 
Testing Adhearsion Applications
Testing Adhearsion ApplicationsTesting Adhearsion Applications
Testing Adhearsion ApplicationsLuca Pradovera
 
Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...Simplilearn
 
Linking chemistry: wider lessons for how we publish research
Linking chemistry: wider lessons for how we publish researchLinking chemistry: wider lessons for how we publish research
Linking chemistry: wider lessons for how we publish researchRoyal Society of Chemistry
 
Intelligent Search
Intelligent SearchIntelligent Search
Intelligent SearchTed Dunning
 
Richard Morgan, What is your museum good at and how do you build an API for it?
Richard Morgan, What is your museum good at and how do you build an API for it?Richard Morgan, What is your museum good at and how do you build an API for it?
Richard Morgan, What is your museum good at and how do you build an API for it?museums and the web
 
Which library should you choose for data-science? That's the question!
Which library should you choose for data-science? That's the question!Which library should you choose for data-science? That's the question!
Which library should you choose for data-science? That's the question!Anastasia Bobyreva
 
Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...
Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...
Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...Simplilearn
 
Building AI-powered Apps on AWS
Building AI-powered Apps on AWSBuilding AI-powered Apps on AWS
Building AI-powered Apps on AWSAdrian Hornsby
 

Similar to Recommendation Subsystem - Museum Radar (20)

OpenML DALI
OpenML DALIOpenML DALI
OpenML DALI
 
Explainability for Learning to Rank
Explainability for Learning to RankExplainability for Learning to Rank
Explainability for Learning to Rank
 
A gentle introduction to algorithm complexity analysis
A gentle introduction to algorithm complexity analysisA gentle introduction to algorithm complexity analysis
A gentle introduction to algorithm complexity analysis
 
TwiSent: A Multi-Stage System for Analyzing Sentiment in Twitter
TwiSent: A Multi-Stage System for Analyzing Sentiment in TwitterTwiSent: A Multi-Stage System for Analyzing Sentiment in Twitter
TwiSent: A Multi-Stage System for Analyzing Sentiment in Twitter
 
Machine Learning with Spark
Machine Learning with SparkMachine Learning with Spark
Machine Learning with Spark
 
Session 5 coding handson Tensorflow
Session 5 coding handson Tensorflow Session 5 coding handson Tensorflow
Session 5 coding handson Tensorflow
 
Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...
Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...
Paul Hofmann - Recruiting with Jenkins - How engineers can recruit engineers ...
 
Word embeddings as a service - PyData NYC 2015
Word embeddings as a service -  PyData NYC 2015Word embeddings as a service -  PyData NYC 2015
Word embeddings as a service - PyData NYC 2015
 
Testing Adhearsion Applications
Testing Adhearsion ApplicationsTesting Adhearsion Applications
Testing Adhearsion Applications
 
OpenML Tutorial ECMLPKDD 2015
OpenML Tutorial ECMLPKDD 2015OpenML Tutorial ECMLPKDD 2015
OpenML Tutorial ECMLPKDD 2015
 
Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...
 
Linking chemistry: wider lessons for how we publish research
Linking chemistry: wider lessons for how we publish researchLinking chemistry: wider lessons for how we publish research
Linking chemistry: wider lessons for how we publish research
 
Recommender Systems and Linked Open Data
Recommender Systems and Linked Open DataRecommender Systems and Linked Open Data
Recommender Systems and Linked Open Data
 
Walter api
Walter apiWalter api
Walter api
 
Intelligent Search
Intelligent SearchIntelligent Search
Intelligent Search
 
Richard Morgan, What is your museum good at and how do you build an API for it?
Richard Morgan, What is your museum good at and how do you build an API for it?Richard Morgan, What is your museum good at and how do you build an API for it?
Richard Morgan, What is your museum good at and how do you build an API for it?
 
Which library should you choose for data-science? That's the question!
Which library should you choose for data-science? That's the question!Which library should you choose for data-science? That's the question!
Which library should you choose for data-science? That's the question!
 
Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...
Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...
Machine Learning Engineer Salary, Roles And Responsibilities, Skills and Resu...
 
Building AI-powered Apps on AWS
Building AI-powered Apps on AWSBuilding AI-powered Apps on AWS
Building AI-powered Apps on AWS
 
Btp 3rd Report
Btp 3rd ReportBtp 3rd Report
Btp 3rd Report
 

Recently uploaded

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 

Recently uploaded (20)

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

Recommendation Subsystem - Museum Radar

  • 2. The best way to learn is by asking questions. - I said that
  • 4. What’s the subsystems purpose ? It uses an algorithm to rearrange the museum list that is given as input in a way that it best fits what the user wants.
  • 5. What’s the subsystems purpose ? It uses an algorithm to rearrange the museum list that is given as input in a way that it best fits what the user wants. Its purpose is to make suggestions based on info about the museum.
  • 6. What’s the subsystems purpose ? It uses an algorithm to rearrange the museum list that is given as input in a way that it best fits what the user wants. Its purpose is to make suggestions based on info about the museum. Hint: We do not use mind reading machine. That might be our next project. Thus no 100% accuracy
  • 7. So, what did we use ?
  • 8. So, what did we use ? We used an algorithm that produces suggestions based on :
  • 9. So, what did we use ? We used an algorithm that produces suggestions based on : the distance of the museum from the user
  • 10. So, what did we use ? We used an algorithm that produces suggestions based on : the distance of the museum from the user and the museum’s ratings.
  • 12. The algorithm’s skeptic It’s just an equation that does it’s job.
  • 13. The algorithm’s skeptic It’s just an equation that does it’s job. It adjusts weights to the parameters:
  • 14. The algorithm’s skeptic It’s just an equation that does it’s job. It adjusts weights to the parameters: o Distance – 40%
  • 15. The algorithm’s skeptic It’s just an equation that does it’s job. It adjusts weights to the parameters: o Distance – 40% o Rating – 60%
  • 16. The algorithm’s skeptic It’s just an equation that does it’s job. It adjusts weights to the parameters: o Distance – 40% o Rating – 60% …and according to these, it sorts the input list of museums.
  • 17. The algorithm’s skeptic It’s just an equation that does it’s job. It adjusts weights to the parameters: o Distance – 40% o Rating – 60% …and according to these, it sorts the input list of museums. The sorted list is the output.
  • 18. Why did we chose a 60-40 ratio ?
  • 19. Why did we chose a 60-40 ratio ?  We are convinced that users are more attracted to others users’ ratings in general. So the ratings parameter should have a greater influence to the suggestion metric than the distance parameter.
  • 20. Why did we chose a 60-40 ratio ?  We are convinced that users are more attracted to others users’ ratings in general. So the ratings parameter should have a greater influence to the suggestion metric than the distance parameter.  The 60-40 is a ratio that we believe it fits best.
  • 21. Why did we chose a 60-40 ratio ?  We are convinced that users are more attracted to others users’ ratings in general. So the ratings parameter should have a greater influence to the suggestion metric than the distance parameter.  The 60-40 is a ratio that we believe it fits best. Hint: No we haven’t done any statistical analysis to find that 60-40 ratio.
  • 24. Nice maths pal, where is the coding ?
  • 25. Nice maths pal, where is the coding ?  The algorithm is written in the famous PHP language and its code has been inserted to the Museum REST controller (Mymuseum.php).
  • 26. Nice maths pal, where is the coding ?  The algorithm is written in the famous PHP language and its code has been inserted to the Museum REST controller (Mymuseum.php).  It is called by the function calc_weight which receives:
  • 27. Nice maths pal, where is the coding ?  The algorithm is written in the famous PHP language and its code has been inserted to the Museum REST controller (Mymuseum.php).  It is called by the function calc_weight which receives: o the museum’s rating
  • 28. Nice maths pal, where is the coding ?  The algorithm is written in the famous PHP language and its code has been inserted to the Museum REST controller (Mymuseum.php).  It is called by the function calc_weight which receives: o the museum’s rating o the museum’s distance
  • 29. Nice maths pal, where is the coding ?  The algorithm is written in the famous PHP language and its code has been inserted to the Museum REST controller (Mymuseum.php).  It is called by the function calc_weight which receives: o the museum’s rating o the museum’s distance o the max distance and max rating
  • 30. Looking into the Future…
  • 31. Looking into the Future…
  • 32. Looking into the Future…  We may add extra parameters for the recommendation algorithm like:
  • 33. Looking into the Future…  We may add extra parameters for the recommendation algorithm like: o The time till the museum closes in accordance with the average time that a person spends on a museum.
  • 34. Looking into the Future…  We may add extra parameters for the recommendation algorithm like: o The time till the museum closes in accordance with the average time that a person spends on a museum. o The search history of the user, recommending museums that he have searched in the past.
  • 35. Looking into the Future…  We may add extra parameters for the recommendation algorithm like: o The time till the museum closes in accordance with the average time that a person spends on a museum. o The search history of the user, recommending museums that he have searched in the past. o The ability to return a list that uses a selection of the above parameters which will be defined by the user.
  • 36. What we got from the Code Camp
  • 37. What we got from the Code Camp  Lots of experience.
  • 38. What we got from the Code Camp  Lots of experience.  Learned more about web programming.
  • 39. What we got from the Code Camp  Lots of experience.  Learned more about web programming.  We did not know PHP and we had to learn it in half week.
  • 40. What we got from the Code Camp  Lots of experience.  Learned more about web programming.  We did not know PHP and we had to learn it in half week.  We got to cooperate with other programmers.
  • 41. What we got from the Code Camp  Lots of experience.  Learned more about web programming.  We did not know PHP and we had to learn it in half week.  We got to cooperate with other programmers.  We got close into how a larger scale program than the tic-tac- toe can be developed.
  • 43. Is it Thanksgiving day ?  Although it might not be, I would like to thank all the people behind the Harokopeio Ellak Code Camp and the group I worked to make the project.
  • 44. Is it Thanksgiving day ?  Although it might not be, I would like to thank all the people behind the Harokopeio Ellak Code Camp and the group I worked to make the project.  Special thanks to Christos Tsolkas to whom we owe this algorithm, because basically it was his idea. The one I wrote was too complex and had a 50-50 weight ratio. He also helped as to insert the algorithm inside the controller (actually he inserted it).
  • 46. My questions are off but…
  • 47. Maybe you got some questions for me