Search This Blog

Saturday, April 14, 2012

Factorization Meets the Neighborhood: a Multifaceted Collaborative Filtering Model

     This paper discusses matrix factorization methods that combine different methods including collaborative filtering with the neighborhood models. Since both of these methods focus on different aspects of selection, it would be to ones advantage to combine them and use their strengths and help hide the weaknesses of those algorithms.
     This paper did not go into much detail about all of the implementation, it does explain some of the vocabulary used. It also says that whenever a user gives a movie a rating, regardless if it is good or bad, it actually improves the recommendation. This paper also discusses the new neighborhood model and discusses its benefits. We are still in the process of building a recommendation systems and trying to merge different systems that we feel would be best.

http://dl.acm.org/citation.cfm?id=1401944

Group Recommendation: Semantics and Efficiency

     This paper discusses the problem that is apparent in group recommendation, creating a recommendation based on a group's overall tastes. This paper covers a summary of different methods for single users and talks about extending these functions to work for groups of users.
     The first approach is score aggregation. This method uses different scores obtained from analysis of single users and uses it to create a list of suggestions for the group. They do this by average and least misery to hopefully better predict the group's tastes. The other method used is the threshold algorithm. This gives you an implementation for the top k query processing using a variation of the common Threshold Algorithm.
     Both of these approaches could be used in our final implementation. Once we get a system that works on one algorithm, then we can keep adding more and more till it gets the best suggestion.


http://dl.acm.org/citation.cfm?id=2063576.2063839

Thursday, April 5, 2012

Client-server computing in mobile environments

     This paper is pretty straight forward. It goes into detail about the complexities of client server computing in the mobile environments. It is much different that the traditional client server model and since this paper was written in 1999, it predicts some of the problems that could arise using a mobile device that needs to connect to a server.    


     It talks about 3 different approaches to a client-server and some of the pros and cons of all of them. One big problem is that a mobile user may be on the move. This is a problem because you will have connection problems when they lose connection or switch to a different network. The server must robust enough to compensate for a client that is disconnecting and reconnecting all the time. Another problem discussed is battery life and computation power. Mobile devices have a set battery life and you do not want to do much computation on the actual device, but the wireless connection is generally slower than a wired one, so you must balance these two factors. 


Client-server computing in mobile environments

Thursday, March 22, 2012

Three complementary approaches to context aware movie recommendation

     This paper explains three different approaches to Context Aware Movie Recommendation Systems. Each one is a machine learning algorithm. The information they use for their study is a set of movie ratings given by users along with the users favorite actors and genre. They also use information such as gender and age.
    The first method is k-NN classifier. They figure out which other users are most similar to them. They then figure out a number they call "User Movie Interest Value" which indicates how much a person would want to watch that movie and enjoy it. The second method is regression based k-NN in which the main difference from the first one is the way similarity is measured. It is based on an average of two different users for each user/movie pair. The last method is inductive logic programming (ILP). This last approach seems to fit our project more closely because one example they use is inputting the ratings and then set 2 users as friends. Then they could make a rule that friends rate movies similarly. Each method has its own strengths and weaknesses. In order to make a better overall system, one could use all three to get a better recommendation for the user.


http://dl.acm.org/citation.cfm?id=1869652.1869662

Sunday, March 18, 2012

Android Permissions demystified

     This paper is about Android Permissions and figures out if developers use the least permission system or tries to gain as many permissions as possible. In order to accomplish this, they created a program called Stowaway that analyzed the API calls and compared the API calls to a permission map to see if some apps are over privileged. On the test set of about 1k apps, only about 1/3 are over privileged. Within these, about half only ask for one more permission than necessary. And only about 6% ask for 4 or more permissions than needed.
    This over privileged nature of apps can be partially attributed to a confusing permission map and developers have to check blogs and ask questions and in the end many developers have to guess. Developers also add permissions because they believe it is needed to make their application function properly. Most of the problems occur due to lack of developer understanding.


http://dl.acm.org/citation.cfm?id=2046707.2046779

Tuesday, February 28, 2012

Textable Movie

     This paper was fairly short and not too related to our project but it turned out to be very interesting. The basic principle is labeling clips and storing them in a way for easy retrieval. The labeling aspect is very important. If you do not label one of your clips correctly, then it will not show up when you want it.
     The idea is to create a movie based on a text file. The user types commands directly into text and it controls the movie clip and what the movie clip does. For example if you type discover a giant rock, it will shot a picture of a giant rock. If you type [close up] it will zoom on on the picture of the rock. In this manner you are able to create many different combinations of a movie novel.

This blog is written about the following paper:
Textable movie: improvising with a personal movie database
http://dl.acm.org/citation.cfm?id=965400.965575

Tuesday, February 14, 2012

Image Stabilization for 2D Barcode in Handheld Devices

     This paper talked about image stabilization for bar-code scanners for mobile devices. The current problem is most mobile devices are not made to take a close up picture. They are also not very good at anti shake features either.
     It address this fact and uses a few different methods to help recreate the bar-code from a blurry picture or even a picture that is taken at an angle. The process they use is first take the picture, then restore the QR code image, then convert it to a binary image, then use edge detection, then dilate the image, then create a block mapping of the image, then produce the output. They can accomplish this by the ratio of white to black in the image.


Image stablization for 2D barcode in handheld devices
http://dl.acm.org/citation.cfm?id=1291233.1291394

Thursday, February 9, 2012

Training and Testing of Recommender Systems on Data Missing Not at Random

     This paper talks about how users rate only a small portion of available movies. Normally recommender systems tend to ignore the missing ratings and treating all of them with the same weight. Some systems even try to correct the ratings or guess what they should be.
     This paper tells how the missing ratings are not random and have meaning that should be taken into effect. They state that people only rate the movies that they like or know. It is very unlikely for someone to rate a movie they have never even heard of before. They use the example that fans of horror movies rate horror films and fans of romance movies rate romance movies.  It is very unlikely for fans of either side to rate something from the other side unless they were fans of both. The missing ratings are not random and have just as much meaning as the traditional ratings. This approach helps users create a better recommender system.

Thanks and Gig 'em,
-Devin

The above blog was written about:
Training and testing of recommender systems on data missing not at random
http://dl.acm.org/citation.cfm?id=1835804.1835895

Tuesday, February 7, 2012

Mining mood-specific movie similarity with matrix factorization for context-aware recommendation

     This paper uses a few different methods in order to recommend a movie to the user, but the one that stands out most is the mood specific option. The team treats all movies as similar weights even if the rating is low. They use factors such as time of day, and other options in order to rate the similarity between the mood of movies and try to improve the recommendation.
     This is a new model for the context aware recommendation system. They also propose using a matrix factorization model which is less computationally expensive than other methods. This allows them to compare a large data set quicker than others. This fact was learned during the Netflix Challenge. The research in this paper takes place during the Movieplot Challenge.
     The reason that they do not rely solely on user ratings is because only a few movies actually receive high ratings from a large set of users and those movies would be recommended all the time. They try to use multiple inputs in order to select a movie based on the mood and interests of a user. They go on to show the algorithms they used to compute the various data and along with the sudocode. They then evaluate the results using Mean Average Precision (MAP) and Area Under Curve (AUC).


The above blog was written about the following paper, it can only be accessed while on the Texas A&M campus:

Mining mood-specific movie similarity with matrix factorization for context-aware recommendation
http://dl.acm.org/citation.cfm?id=1869658

Thursday, February 2, 2012

Content Aware Movie Recommendation

     Most recommendation systems do not take in different variables such as the persons mood, the time of day, location, or the weather. Most just use a system that figures out if a person will like something or not. For example, I like the movie Gladiator, but I do not want to watch it all the time. I have to be in the right mood in order to want to watch that movie. This paper explains how to create a content aware recommendation system.
     Some of the most popular and best systems use collaborative filtering. This system uses ratings from a large set of users to predict if you would like it or not. However, it fails to take account of age, gender, and education. It mainly uses the similarity between genres, actors, and directors to see if people would like this movie. This paper goes into calculating the users location so it can be added in to the recommendation system. Users in the same geographical area generally have more similar tastes than someone halfway across the world. Most movie recommendation systems also do not take into account multiple users on one account. It is becoming more common that a family will have an iTunes or Netflix subscription and more than one person will watch a movie. They usually watch it for different reasons and more than likely they have different tastes. So the recommendations not apply to every user.
     In conclusion, this paper talked about context aware movie recommendation systems. Machine learning is a way to improve the system. It also comes as no surprise that adding more input to the system will create a better system, such as location, time of day, etc. Even with these new data fields, it doesn't necessarily mean a better system. The difficult part will be how to integrate the new fields to create better recommendations.


This blog was written about the paper listed below:


Context-aware Movie Recommendation based on Signal
Processing and Machine Learning
http://dl.acm.org/citation.cfm?id=2096112.2096114

Wednesday, January 18, 2012

First Day of Class

This post is just a test to see if everything it working. This was one of the requirements for the first day of class.