Online Movie Recommender
By
Naiya Patel & Jay Byrd
INTRODUCTION
The “Online Movie Recommender” is a movie database system that recommends movies to the user based on prior selections and current criteria. The user will enter movie information into one or all of the four fields (title, actor, actress, director) provided. Then, he/she will choose a specific year of release, MPAA rating, and/or genre (drama, comedy, romance, etc.). Lastly, the user will initiate a search. The system will return a list of recommended movies that meet the given requirements.
With each search performed, the system will begin to recognize the user’s preferences with respect to genre, performer (male & female), and filmmaker. For example: when a user enters “Keanu Reeves” into the “Actor” field and starts a search, he/she will get a list of all of the movies Reeves has appeared in. If the user selects “Science-Fiction” from the drop-down list of genre choices in addition to entering an actor’s name, then the search will cross-reference those two data elements.
Furthermore, the system will remember that the user (in this particular session) chose a science-fiction film that stars Keanu Reeves, and recommend other science-fiction movies and movies that star Keanu Reeves to the user the next time he search for either one. As usage increases, the system will begin to make more accurate recommendations to the user. For example: if the user searches for a drama 73% of the time, and for movies that star Julia Roberts 68% of the time, and for movies directed by Martin Scorcese 55% of the time, then the system will first recommend movies that match all three preferences.
If none are found, it will then suggest movies that match all possible combinations of two of the three preferences, with the search becoming increasingly flexible as it goes along. Users will need to log on in order for the system to allow for the learning of numerous unique users’ movie selection habits and tastes. However, the user does not have to participate in the tailoring process. To explain: a user may not want the system to provide him/her with recommendations. He/she may already know which film they want to select, and don’t care to know about any others. In this case, the user may go directly to the search screen, which will not provide recommendations after each search.
Sometimes, there may be a situation that sees the user having exhausted the list of recommendations offered by the system, and he/she wants to inform it that its picks are not very helpful. In this case, the user may assign an alphanumeric value to the system that reflects his/her opinion with regard to the quality of the system’s selection(s). The system will then incorporate this information into its decision-making process, and make changes accordingly.
Login Area:
Main Search Area:
Most of the functionality mentioned above has not been implemented in the accompanying Java Applet and Access Database. We intended for those two program/database items to be seen as conceptual, and not working, models. After due consideration, we believe (and we hope you agree) that the realization of such a complex system would take a lot longer than the amount of time we’ve been afforded. However, we believe (with hard-work and determination) we could create a system like, or close to, the one discussed earlier in this report, if afforded the time.
With this project, we hoped to simulate ‘machine learning’ by employing the multifaceted sections of A.I. known as “Data Mining” and “Search”. Our aim was to create a large ‘movie knowledge database’, with which to search for specific movie information. And, after finding that data, store certain parts of it in other smaller databases for use in other related areas. Then, the data would be ‘mined’ and used to produce results that don’t directly reflect what the user requested, but possible what the user is looking for.
This project, we think, only scratches the surface of those two topics specifically, and A.I. in general.