• 沒有找到結果。

Nowadays, due to a huge number of mobile applications, recommendation system for mobile applications is influential because users look for apps that meet the requirements through it. Mobile application recommendation systems have been increasing not only at the industry but also at the research community [18, 6, 4, 5].

AppBrain [18] is an application discovery tool on Android platform. It monitors the installation history of applications of users and provides the recommendation in the same category. It also provides all-time popular applications to users.

The Sweet Setup [6] provides mobile application discovery service for iOS users. Their recommendations are sorted within app categories.

Apps4Review [4] is a community, where developers submit their iOS or Android ap-plications to the authors of a website. The authors will write the application reviews and articles.

AppJoy [5] makes personalized application recommendations on Android platform. Its function is based on measuring how users operates their installed applications. With the usage data, it practices item-based collaborative filtering recommendation systems.

After surveying recommendations of mobile applications, we find out there are little amount of systems focusing on behaviors of applications. For example, authors of rec-ommendation systems review applications manually, but it is hard to tackle a large scale data. Therefore, we develop a novel recommendation system, that automatically takes mobile behavior into consideration for recommendation.

2.2 Recommendation System

Recommendation system is a platform that provides users with suggestion of items. With recommendation systems, users save their times on searching similar items and approach-ing items ratapproach-ings and comments. In recent years, recommendation system technique has been widely applied to movies, music, games, books, news, products and so on [19, 20, 21].

Suggestions from recommendation systems may be based on users preference for items,

similarity within items, rating and etc.

Balabanovi´c and Shoham [22] classified recommendation systems according to how they recommend items. They divided these recommendation systems into three cat-egories: content-based recommendation system, collaborative filtering recommendation system and hybrid recommendation system. The first type is content-based recommen-dation system which recommends items similar to those a given user prefers. The an-other type is collaborative filtering recommendation system which identifies users whose tastes are similar to those of given users and recommends items they like. The other type is hybrid recommendation system which combined the content-based with collab-orative filtering recommendation system to incorporate the advantages while inheriting the disadvantages of neither side. In the following section, we investigate these three recommendation systems.

2.2.1 Content-based Recommendation

Content-based recommendation systems suggest items based on a users preference, inter-est and description of an item. For example, this kind of systems would recommend an item if the item is similar to some items that a user has preferred before.

The content-based approach roots in information retrieval and information filtering research [23]. First, with technique in information retrieval and information filtering, system could transfer item attribute, description, and content to a set of feature vectors from item. Then, it computes cosine value between two items with their vector to measure the similarity. If their cosine similarity is close to 1, it means that they are similar to each other. In contrast, if their cosine similarity is far away from 1, it means that they are totally different.

Content-based system uses text mining techniques and focuses on text-based item, such as news, websites, documents, and etc. The most used text mining approach is Term Fre-quency and Inverse Document FreFre-quency (TF-IDF), it uses term freFre-quency in document to export the characteristic of document. After the information retrieval, content-based

recommendation systems also consider the information about users tastes, preferences, and needs.

There are some popular recommendation systems adopting content-based approaches such as Rotten Tomatoes a movie recommendation platform and Pandora Radio a person-alized music platform. Some research and study apply content-based technique to their systems.

Pazzani, Muramatsu and Billsus [20] developed a content-base recommendation soft-ware, Syskill & Webert, recommending websites which might interest a user. First, they created a user profile which contained user’s preference by training data such as inter-ested pages and uninterinter-ested pages. Second, they indexed each website with topics, so they could understand user’s latent topic interest. Finally, they could recommend user a website based on the topic preference.

Van Meteren and Van Someren [21] also built up a websites recommendation systems, called PRES by using cosine measurement between user profiles and documents vector.

They constructed user profiles by a learning algorithm, which considered the users con-sumed time on reading a website.

2.2.2 Collaborative Filtering Recommendation

Collaborative filtering recommendation systems suggest items to a user based on opinions from other users. For example, systems would recommend an item to a user because another user with similar tastes and preferences has picked this item before. Generally, collaborative filtering is to predict the taste of a particular user from a database of user votes from a sample or population of other users. According to different predict approach, Breese, Heckerman and Kadie [24] have grouped collaborative filtering recommendation system into two types, 1. Memory-based collaborative filtering 2. Model-based collabo-rative filtering.

In memory-based collaborative filtering algorithms, they predict the preference of a user based on partial information regarding the user. By applying the similarity between

users or items, memory-based collaborative filtering can be separated into user-based type and item-based type.

User-based collaborative filtering is based on users preference similarity. If some users have similar preference on some items, system would consider that the users would also share similarity on other items preference.

For example, Resnick, Iacovou, Suchak, Bergstrom and Riedl [19] developed Grou-pLens which was a long history of user-based collaborative filtering and had lots of rec-ommendation system projects. In the original GroupLens, they used the technique to make a news article platform to help people find news and articles in which they are interested. At first, they asked users to assign their numeric ratings after reading news or articles. These ratings would be used in two ways. First, they computed the ratings to determine the preferences of users to find out which users ratings were most similar to each other. Second, they would predict what kinds of users would be interested in news or articles, based on ratings from similar users. Finally, they could suggest the user news and articles which met the users interest.

In order to determine the preferences of users, if the number of users has increased, the computing time of user-based recommendation system would be comparatively long. Sar-war, Karypis, Konstan, and Riedl [25] proposed item-based collaborative filtering which was based on item feature similarity such as rating history. First, they computed the similarity between different items. Then, they used the data of user rating on different items to predict the user’s preference for the specific item. For example, if there were high-rated histories of item A and item B, the system would recommend users item A when users were viewing item B and vice versa.

Memory-based collaborating filtering approaches use many storage space to store cus-tomer preference data, but it is hard to deal big data in real-time. To conquer the above weakness, there is the other type of memory-based collaborating filtering, model-based collaborating filtering [24]. Model-based collaborative filtering is based on using some data mining, machine learning algorithms to train data, and then using results to make

recom-‧

mendation. In contrast to memory-based collaborating filtering, model-based approach calculates the expected value of a vote with training model. With proper models, it can discover some latent factor behind observed users ratings, and make a good recommen-dation. There are many algorithms able to perform model-based collaborative filtering, such as Latent Semantic Analysis [26], Probabilistic Latent Semantic Analysis [27], Latent Dirichlet Allocation [1] and so on.

Krestel, Fankhauser and Nejdl [28] developed a tag recommendation system by using Latent Dirichlet Allocation and proved their performance better than using traditional association rules. First, they used LDA to elicit latent topics from resources and then made a set of tags to recommend topics for new resources with only a few tags. Second, they sorted out the tags belonging to topics so that they could recommend tags to a specific topic. Finally, the recommended tags are specified for a particular resource, and thus useful for searching and recommending resources to other users.

Hofmann [29] used probabilistic latent semantic analysis to apply to movie data and convinced that model-based collaborative filtering using pLSA would perform better than memory-based technique. He used the probabilistic latent semantic models to compress the data into a compact model that could automatically identify user communities and interest groups and then compute preference prediction in constant time.

When dealing with large data sets, model based collaborative can show up higher performance and lower processing time for a recommendation.

2.2.3 Hybrid Recommendation System

Both content-based and collaborative filtering recommendation systems have their advan-tages and disadvanadvan-tages. To combine the advantage of the above two approaches, hybrid recommendation system was invented.

Adomavicius and Tuzhilin [23] grouped hybrid recommendation system into four types:

1. Implement collaborative and content-based methods separately, using linear func-tion to combine result and deciding final recommendafunc-tion result.

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

2. Incorporate some content-based characteristics into a collaborative approach, using the users’ before preference as data to calculate the similarity within users.

3. Incorporate some collaborative characteristics into a content-based approach, using some dimensionality reduction technique to content-based profile to create a collaborative view of a collection of user profiles.

4. Construct a general unifying model that incorporates both content-based and col-laborative characteristics, e.g. adopting probabilistic model or Bayesian mixed-effect re-gression models to combine two approaches.

Some researchers try to combine content-based and collaborative filtering to gain performance in some cases [30, 31]. De Campos, Fern´andez-Luna, Huete, and Rueda-Morales [31] presented a new Bayesian network model to deal with the problem of hybrid recommendation system by combining content-based and collaborative features. They used Bayesian network to construct the relationships between users, items, features, and then used the strength of these relationships to recommend movies. First, they sorted out the active user votes the items to construct the user profile, which would include the information that content-based and collaborative approaches needed. Then they built up relationships related to the target item with user profiles. In the end, they could make predictions and recommendations to active users with relation models.

Yoshii, Goto, Komatani, Ogata, and Okuno [30] developed a hybrid recommendation system for music by combining content-based and collaborative filtering technique. They used probabilistic models to unify content-based and collaborative filtering approach to get their advantage. With content-based technique, the system could deal with music without rating situation which might make collaborative filtering perform badly. With collaborative filtering approach, the system could consider users’ preference in terms of music contents which were hard to be fully investigated.

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

2.2.4 Comparison of Recommendation Systems

After listing the above methods of recommendation system, we have to choose the most suitable approach on our research. We find a research in 2005 by Adomavicius and Tuzhilin [23], it compared the three recommendation methods, and pointed out their advantage and disadvantage respectively. The main difference between content-based and collaborative filtering system is that the former approach focuses on measuring the similarity between vectors of items, while the latter targets on calculating the similarity between vectors of the actual user-specified ratings. In AppReco, we focus on how the similarity within the applications, so we decide to choose content-based approach as our main method.

After surveying some content-based recommendation systems, we find out that some of them use topics model to make a recommendation model. For example, Godin, Slavkovikj, De Neve, Schrauwen and Van de Walle [32] used the Latent Dirichlet Allocation (LDA) to model the underlying topic assignment of language classified tweets. They used over 1.8 million tweets as data set, and randomly picked 100 tweets of them for constructing model. They ended up proving that they could recommend hashtags for tweets in a fully unsupervised manor. In our research, we are going to find out topic model approaches to construct our recommendation model.

相關文件