key: cord-0037865-4nnqw8gn authors: Weng, Sung-Shun; Liu, Mei-Ju title: Feature-based recommendations for one-to-one marketing date: 2003-11-27 journal: Expert Syst Appl DOI: 10.1016/j.eswa.2003.10.008 sha: ceb370b100fa285fe23465245b42c987dfc3f4df doc_id: 37865 cord_uid: 4nnqw8gn Most recommendation systems face challenges from products that change with time, such as popular or seasonal products, since traditional market basket analysis or collaborative filtering analysis are unable to recommend new products to customers due to the fact that the products are not yet purchased by customers. Although the recommendation systems can find customer groups that have similar interests as target customers, brand new products often lack ratings and comments. Similarly, products that are less often purchased, such as furniture and home appliances, have fewer records of ratings; therefore, the chances of being recommended are often lower. This research attempts to analyze customers' purchasing behaviors based on product features from transaction records and product feature databases. Customers' preferences toward particular features of products are analyzed and then rules of customer interest profiles are thus drawn in order to recommend customers products that have potential attraction with customers. The advantage of this research is its ability of recommending to customers brand new products or rarely purchased products as long as they fit customer interest profiles; a deduction which traditional market basket analysis and collaborative filtering methods are unable to do. This research uses a two-stage clustering technique to find customers that have similar interests as target customers and recommend products to fit customers' potential requirements. Customers' interest profiles can explain recommendation results and the interests on particular features of products can be referenced for product development, while a one-to-one marketing strategy can improve profitability for companies. considers the emergence of the Internet a great advantage for the growing trend of customer personalization. New enterprises can manage a particular customer's Web experience by customer personalization and retain the communication or interaction with the customer. Such understanding of customers can be applied to transform customer information into quality services or products. The maturity of the Internet has brought endless business opportunities for enterprises. However, the overload of information has brought to the notice of E-commerce operators, the necessity of providing more convenient or more intuitive product information. This information enables consumers to find the products they want, thus the consumer loyalty and desires of purchasing may be increased. Therefore, personalized services of recommendations have prospered, such as Amazon, CDNOW, and eBay, which provide services and personalization in order to retain their customers. Most enterprises are product oriented and blindly use the 'push' strategies, rather than use 'pull' strategies with customer orientation to sell products. To improve customer feedback rate, loyalty, Web sales, fame, and satisfaction, one-to-one marketing is seen as the most effective approach for customer relationship management. However, with the great number of customers, how do we identify their interests? The answer to this question is to build personalized Internet services. The purpose of personalization is to adjust promotion and advertisement to fit customer interest (Yu, 1999) . First, it is necessary to understand customer interests and preferences and then provide suitable products or services at an adequate time. A good recommendation system must be relied on in order to recommend products or services of interests. This mechanism not only promotes the rate of visiting, but also increases opportunities of sales, and even advertisement revenue, which shall increase a website's profitability. The purposes of this research are listed as the following: (1) Provide personalized product recommendation systems. This research recognizes the importance of filtering useful product information from websites in order to provide or recommend appropriate products to target customers or even potential customers. Thus, this research aims to provide a personalized recommendation system in order to increase customers' revisiting rate or repurchasing rate. (2) Increase the accuracy of recommendation systems. Through customers' purchasing history, the product relevance, such as brand, material, size, color, appearance, price, quality, etc., can be studied to understand customers' preference toward particular product features. When a customer browses products online, relevant products can be recommended. Meanwhile, this can help companies to understand a consumer's behavior. The aim of this research is to build a personalized recommendation system based on product features for oneto-one marketing. In the following, we will discuss issues of one-to-one marketing, personalization, and system recommendation. One-to-one marketing adopts an appropriate marketing strategy for individual customers. The purpose is to understand each customer well and foster high customer loyalty. This approach first tries to understand customers gradually and then actively recommend new products that would suit the particular customers' tastes. This is different from traditional marketing in terms of the broadness of customer contact, since traditional marketing mainly focuses on marketing mass consumers. One-to-one marketing focuses on customer satisfaction and is customeroriented. To implement one-to-one marketing, it is necessary to (a) identify customers; (b) differentiate customers; (c) interact with customers; and (d) personalize products or services to tailor-suit customers (Peppers, Rogers, & Dorf, 1999) . The four steps must be continuously repeated to identify the difference of customer needs in order to suit customers' requirements. 'One-to-one Internet Marketing' would have its developmental strength through boundless and timeless qualities to communicate with consumers. It is cost-saving, interactive and educating; by observing one's consumption and internet browsing habits, the records can be analyzed and personal needs can be tracked for active provision of products that suit a customer's interests. Personalization is that a website can sharply respond to a user's unique and particular needs. Mobasher, Dai, Luo, and Nakagawa (2002) defined Web personalization as an act of response according to the individual user's interest and hobby on Internet usage. Adomavicius and Tuzhilin (2001) proposed five stages of personalization (which operates from the bottom up) while customer responses are measured to monitor other stages, as shown in Fig. 1. Jeff Bezos, CEO of Amazon, once said: "If we have two million customers, then we should have two million shops on our website." This indicates the prospect of personalized service. E-commerce websites can predict a customer's future purchasing behavior through the information provided by suppliers, customer demographic data and a customer's past purchasing behavior. Therefore, personalized products can be recommended to customers and achieve effects of transforming people who just browse on the Web into consumers, increasing customer loyalty and enhancing cross selling (Schafer, Konstan, & Riedl, 1999) . Current common approaches for personalized recommendation systems are the content-based approach and collaborative filtering analysis (Chen & Chen, 2001; Ghani & Fano, 2002; Krulwich & Burkey, 1997; Lang, 1995; Lawrence, Almasi, Kotlyar, Viveros, & Duri, 2001; Sarwar, Karypis, Konstan, & Riedl, 2000; Wu, Aggarwal, & Yu, 2001 ). A content-based system relies mainly on content and relevant profiles as main recommendations to customers. For instance, a customer's past purchase may be traced and relevant products can be recommended to customers. The advantages include: (1) It can recommend to customers products pertaining to their specific interests or tastes, while these products may not be of interest to others. (2) The reasons of recommendations may also be given. (3) When customers accept the first recommendation and feedback to the system, collaborative filtering can support the recommendation system. The disadvantages also include: (1) Multimedia information, such as images, pictures, and sounds, cannot be analyzed by the system. The contents of multimedia are difficult to define. (2) Unique or different products may not be able to be presented to customers, since the system recommends according to customers' past browsing records or buying history. Collaborative filtering analysis groups members of similar characteristics. Their shared interests and hobbies are analyzed and items of the same interest can be recommended to the community members in need. The advantages include: (1) The system recommends products according to past purchasing history of community members who share the same interests. Therefore, product natures do not have to be analyzed, causing no problem even if products are of different properties. (2) The recommended products could be quite different from customers' past preferences. Therefore, it is possible to draw up potential needs and interests of customers (Herlocker, Konstan, & Riedl, 2000) . The disadvantages of this approach include: (1) The system must perform mass product comparisons prior to finding similar communities to target customers. (2) Products not yet purchased and rated could not be recommended to customers (Ghani & Fano, 2002) . The core of content-based recommendation focuses on the relation between products prior to recommending them to users. Yet, collaborative filtering methods group users of a community based on the similarity of their profiles. Through community members' hobbies, behaviors, or browsing paths, target customers of a particular community are recommended based on these groups. Each of the two approaches have their own strengths and weaknesses, and the best way is to combine both approaches in content-based orientation and collaborative filtering to promote system accuracy for better results of recommendation. This research is based on product features. Through customers' transaction records, their preferences toward specific product features can be learned. Thus the problems generated by traditional market basket analysis or collaborative filtering approaches, such as that they could not recommend new products or products not frequently bought by customers, can be solved. Customer interest profiles can be defined and products with potential attraction can be recommended. Meanwhile, by combining data mining and traditional collaborative filtering approaches, a two-stage clustering approach can be applied to find similar customers who may share the same interests as target customers, and potential needs of customers can be drawn. This research can be divided into two parts. Part 1 of the research analyzes customers' transaction records for preference analysis. Part 2 of the research groups customers with collaborative filtering concepts to find nearby groups of target customers and potential needs or interests of target customers can be recommended, which shall supplement recommendations that only target right on a customer's preference. The research structure is shown in Fig. 2 . For finding customer interests, the procedures are divided into product profile module and customer profile module. Product profile module mainly finds product features in the product database, where features of products constitute the profile. In customer profile module, product features from customers' past purchase records are drawn for customer profile. Then customer profile and product profile are later analyzed for similarity, and candidate products of recommendation are thus generated. In the recommendation modules, products not yet purchased or rarely purchased can still be recommended to customers with little inaccuracy. This mainly attributes to the research based on products purchased in the past, thus the recommendations are not likely to miss products out. For customer cluster module, consumer behaviors are adopted as variables for cluster filtering. Customers with similar purchasing habits and interests are grouped together in order to recommend products with surprises to target customers. Lastly, the candidate recommendations in the two major parts are brought forth to target customers through a recommendation engine and with the subsequent customers' feedback, the items of recommendations in the system are adjusted. This research is established on objective and recognizable features of products in the product database. For example, a table may be made of wood, dark brown in color, suitable as a dining table, etc. Such characteristics are matched with basic properties recorded in the database, such as price and brands. Then the product feature database can be built to enable the description of product feature profile, which can be expressed by vectors, as expressed in formula (1) In formula (1), M stands for total number of products with m being the assigned number of a particular product. Also, i is the number of the product's features while j is the jth feature value in the ith feature. The parameter k means that the feature domain of every product feature is not fixed, yet each feature value is weighted in a binary manner, i.e. if the product has the feature, the weight of feature value is 1, otherwise, the value is 0. This module analyzes customers' transaction history and finds whether a customer has any particular interests through the products he has previously purchased. Product features that have potential influence on customers are analyzed as system bases of recommendation. Stages of customer interest profile are listed in the following: 3.4.1. Calculate a customer's level of interest in product features In formula (2), CTI ij ðnÞ (Customer Interest) is the ratio of features among the products purchased by customers, which is customer n's interest in product feature ij: i is the feature of the product and j stands for the jth feature in product feature i; yet T ðmÞ is the product quantity purchased by a customer. As shown in the following, formula (3) calculates the average level of interest toward a particular feature based on customers' transaction history, which means target customers' levels of interest become quantified relevant to general customers. CTRI ij ðnÞ (Customer Relative Interest) is the target customers' level of interest toward a particular product feature relevant to general customers, while N is the number of customers. 3.4.2. Adjust customer profile weight A customer's interests and preferences change with time, thus recent product purchase can better reflect a customer's present interest. Therefore, time is a factor taken into consideration in this research, and products recently purchased are weighted more. In formula (4), a is a self-set weight greater than 1. When a customer purchased the product recently (when purchased_day , k), the product's weight of the product feature is higher and better suits customers' present consumption interest. After time is included for consideration, each customer's CTI ij ðnÞ also changes with it. CTRI ij ðnÞ is calculated the same as formula (3) in principle, and follow the movement of CTI ij ðnÞ : Its calculation is expressed in formula (5) as follows: Customer profile C ðnÞ is based on adjusted CTRI ij ðnÞ ; which is expressed in formula (6) as follows: In formula (7), Euclidean distance is used to calculate the similarity between customer profile and product profile, the shorter the distances, the higher the similarity, in order to find the first N products with highest customer profile. When a customer enters a system, categories of products a customer browses are observed, and products of the highest similarity to customer profiles are then found, of which the top five products would be recommended to the customer by the system. In formula (7), C ðnÞ is the customer profile and P ðmÞ is the product profile. lml is the number of transactions of product m: If the product has been purchased by the customer, then the recommendation score it receives is 0, and will not be recommended to the customer. This part mainly traces whether a customer clicks on recommended products. When a customer does not click, it shows that the products are not of his interest. Therefore, the system would automatically adjust the recommendation score. Since customer profile module uses Euclidean distance to calculate similarity prior to generating scores, and the closer distance demonstrates the higher similarity. The higher the recommendation score of a product is, the lower the chance that it would be recommended. As shown in formula (8), b must be greater than 1 to move the product recommendation order backwards. When the product'sR score is higher than other candidate products in recommendation, it is removed and then its rank is filled by a product with the next lowerR score : In formula (8), i is the product number, b is the weight for adjusting recommendation score and must be greater than 1. Customers with similar purchasing behaviors as target customers may have interests that are also potential interests of target customers, thus this research takes into consideration such potentials and integrates customer cluster profile module with collaborative filtering recommendation approach. In this task, through clustering analysis approach of data mining, two-stage clustering approach is used to effectively find customers with similar interests, preferences and behaviors as target customers. Each cluster's purchasing records are then analyzed, thus products purchased by other members in the cluster are recommended to target customers who have never purchased the items before, since such items could be of potential demand to the customer. Fig. 3 is the detailed procedure of customer cluster profile module, which clusters customers mainly by their purchasing behaviors. (1) Data preprocessing. The money spent or number of transactions on product categories can be treated as a customer's consumption behavior, and sole consideration of either money spent or number of transaction would cause deviation. Thus this research uses the average purchasing costs of each product category as input variables for clustering analysis. (2) Two-stage clustering. According to Abidi and Ong (2000) , two-stage clustering approach integrates Self-Organization Map (SOM) and K-means for clustering analysis and it can improve the problems of fuzzy cluster partition caused by SOM. The number of clusters generated by SOM can be used as the value of K in K-means clustering analysis. This improves the repeated trial and error tests that K-means analysis has to undergo for the value of K: As seen in Fig. 4 , the first stage of clustering collects data's cluster numbers and cluster center of each cluster by clustering data from SOM. The second stage uses the number of clusters from SOM as the value of K in K-means. The members of clusters are adjusted in this stage to solve the problems of fuzzy partition caused by SOM, thus the member similarity within a group becomes higher and the inter-group relationship becomes less similar. (3) Analyze each cluster. Cost of products purchased by each group of customers is analyzed for the level of interests in each product category. Formula (9) calculates the ratio of purchased products to all products by the particular group of customers. This represents customers' interests in the particular product relative to other products. As shown in formula (9), AmountðP ðtÞ Þ represents the total amount spent on purchases of product category t: P n[cluster total_ AmountðP ðnÞ Þ is the total transaction amount spent on all products by the group, and CLI t stands for money ratio spent on product category t out of the total purchasing amount. If CLI t is 0.8, then 80% of the group's total purchase is on product category t: Formula (10) calculates the group customer2s' interests toward a particular product category compared to average interest of all groups. In the above formula, ð1=NÞ P CLI t is the average transaction amount of all groups of customers spent on product t: N is the number of groups, and CRI t (Cluster Relative Interest) stands for the particular group of customers' average spending on product t relative to the all groups' average spending on product t: (4) Clustering profile weight adjustment. In formula (11), lP tu l is the number of a particular product's transaction. Customers' number of transactions of a particular product would affect the level of interests, thus this research includes 'number of transactions' as a factor for consideration. The number of transactions is used to adjust the weight of the recommendation score, therefore, the sum of money spent is still our main consideration, and getting a log from transaction number would prevent it from having too much influence. R n score ðtuÞ is the recommendation score of product tu among group n: However, if a customer has already purchased the product, then such product would not be recommended again. (5) Customer cluster feedback. This part is mainly feedback for customer clusters. When a customer clicks on a product recommended by a customer cluster profile, the system will automatically adjust the recommendation score of that product toward that group. The more people click on it, the more people recommend it. Thus the product's recommendation score gets higher, which would have a higher probability of recommendation, as demonstrated in formula (12) where i is the product's number, W is the value of weight of product's recommendation score, which must be greater than 1. Since it is difficult to obtain real data, this research has considered the prevalence of movie watching in real life, and consequently it would have a higher feasibility in obtaining the data for experiment simulation. In the mean time, the online experiment would likely receive more samples. Therefore, this experiment is designed based on movie rentals and an online video/audio rental store and its Tables 1 and 2 is the five major movie features classified in this research. For customer data gathering, this research called up 140 movie lovers who have experiences of video rental. Prior to the experiment, a simple survey was conducted to acquire each person's five rented movie titles and a total of 1065 data were obtained. The transaction records later became the recommendation source of customer profile module and customer cluster profile module. The evaluation of this research is mainly divided into two parts: evaluation of clustering effect and evaluation of the recommendation system. This research compares the results of clustering of the two-stage approach and SOM clustering analysis. Different clusters would result in different grouping of members, which would lead to great differences of the mean values (cluster center). Thus, this research uses coefficient of variance (CV) to measure the level of member concentration within a group. It is the most common statistic measurement for relative dispersion, which is the ratio of absolute dispersion measurement to some central tendency statistic measurement. As demonstrated in formula (13), it is the percentage of the ratio of standard deviation to the mean value. 4.2.2. Evaluation of recommendation system Precision and recall are used in this research as indices to evaluate the effects of the recommendation system; F1 is also used to represent the effects of combining precision and recall. This research combines customer profile module and customer cluster profile module to enhance the effects of recommendation in order to make up for the weakness of using only one approach. For customer cluster profile module, this research uses two-stage clustering in the hope of gaining a better effect. Thus the procedure is divided into two parts, as shown in Table 3 . Integrating SOM and K-means for clustering can improve the problems of group fuzzy partition in SOM, and if the number of groups generated by SOM is used as the value of K in K-means, it will avoid the problem that K-means must undergo a trialand-error process to find out the improved value of K: Thus, in experiment 1, the research focuses on verifying whether two-stage clustering approach can better concentrate members of the same similarity into one group than SOM clustering, while also testing whether it can effectively determine the value of K: (1) Experiment design. Experiment 1 of this research is divided into two procedures, as shown in Fig. 5 . In procedure 1, the research aims to prove whether two-stage clustering has a better effect than just using SOM. Thus the 140 test objects were clustered by a two-stage approach and SOM, while the member concentration of a group is compared. The input variable for clustering is based on the customers sum of money spent on all purchases in order to lower the shortcomings of over-detailed categorization, which may increase the difficulty, dispersion, or decrease the speed. As demonstrated in Fig. 6 , experiment 1 adopts the users' money spent on seven categories of movies as the variables of the two clustering approaches. The experiment target is the two-stage clustering, while the comparison target is the approach of SOM. Prior to clustering, customers' transaction data must be transformed into data matrix of transaction amount spent on each movie type, as shown in Table 4 . For SOM clustering, this research adopts Clementine 6.5 to implement the task. The learning speed (Eta 1) is set at 0.3, and the decreasing speed of learning (Eta 2) is set at 0.1. The initial neighboring radius is set at 3, and the decreasing speed of neighboring radius is set at 1. After SOM completes training stages, the trained model then progresses to the first level of clustering in order to rapidly receive the number of groups in stage 2. The comparison experiment completes this experiment in this stage, and the experiment group continues to stage 2 for K-means clustering. The clustering results in stage 1 are each used to calculate groups' centers for the beginning centers of K-means. The concentration of group members is calculated by dividing the group's standard deviation by group's mean value, which is also the center of a cluster. Then each group's CV is obtained, and finally the weighted CV is calculated to compare the level of member concentration of the two approaches. The weighted mean value is the number of members in a group times the group's CV divided by total numbers of data for obtaining more objective mean value. In experiment 2, SOM is tested to see whether it can effectively determine the value of K in K-means. Thus the best number of groups ðKÞ from experiment 1 is compared with different values of K in K-means, and average CV is used to compare the level of concentration of the group members. (2) Experiment results. Procedure 1: Comparison of group member concentration of two-stage clustering and SOM. In experiment 1, the research uses SOM (Eta 1 ¼ 0.3, Eta 1 ¼ 0.1) to cluster 140 customers. Fig. 6 shows each group's member distribution in experiment 1. In the first stage of SOM, 140 sets of data are grouped into nine (3 £ 3) output neurons, as shown in Fig. 6 . The second stage adopts K ¼ 9 and the centers of nine neurons are treated as the beginning centers of K-means clustering, to readjust the members in a group, shown in Fig. 7 . The comparison group adopts the cluster results in stage 1 and the standard deviation of each of the two groups is compared with the CV, as shown in Tables 5 and 6. The members in experiment group and comparison group have different mean values. Thus this research adopts CV in order to compare the dispersions within a group. In Fig. 8 , it is discovered that aside from type2, type3, and type7, where the average CV of two-stage clustering is higher than that of SOM, the remaining four variables all have the results that two-stage clustering has the lower average CV. Fig. 9 is the comparison after summing up the CV's of all seven variables. The CV value of two-stage clustering is 7.077, which is lower than SOM's 7.642. This shows two-stage clustering has resulted in higher concentration of its cluster members than that of SOM. Procedure 2: Test whether clustering in stage 1 can effectively determine the value of K in stage 2. In procedure 2, the same 140 data are again used and divided into 7, 8, 10, and 11 clusters by K-means clustering, and then compared with the nine clusters in experiment 1 to further calculate the average CV of clusters of 7, 8, 10, and 11. Table 7 demonstrates that experiment groups' (9 clusters) total CV (7.0768) and average CV (1.011) all appeared lower than other cluster numbers. This proves that SOM can effectively determine the value of K in K-means clustering. Fig. 10 is the bar chart of each cluster's CV sum by using K-means clustering. It is rather obvious that the total CV of nine clusters is the lowest, which shows that the member concentration is the highest. The purpose of the experiment is to test the effects of the recommendation system in this research. First, it compares the results between feature recommendation and non-feature recommendation. Then it tests whether the effects of combining customer profile and customer cluster profile is higher than any other types of recommendation module. Meanwhile, it also compares with non-personalized recommendation. In this research, the ranks of movies are treated as general recommendation, since it is part of mass marketing, not one-to-one marketing. This experiment will also test whether one-to-one marketing is more effective than mass marketing. (1) Experiment design. There are four procedures in experiment 2, as demonstrated in Fig. 11 . Procedure 1 tests whether the recommendation based on product features works better than the recommendation mechanism that does not use product features. Thus, during procedure 1, this experiment randomly chooses 30 testing data out of 140 data to be the testing objects of procedures 1 and 2. The movies seen by testing objects and movies not yet seen but interested by testing objects are used as testing data. Each testing object provides more than 30 of such movies. A total of 928 data are obtained. Procedure 1 tests the precision of the recommendation system based on these data. The experiment group tests the precision of the recommendation system in procedure 1. The experiment group is the recommendation model that is based on product features, listed in Table 2 . Meanwhile, the comparison group uses a non-feature recommendation, which is only based on movie categories (as the seven categories listed in Table 1 ). Both the experiment group and comparison group recommend top 10 movies to customers and precision is used as the measure index of this part of the procedure. For the experiment group, if seven movies out of 10 match the testing objects' provided movies, then the precision is 0.7. Procedure 2 aims to test the feedback weight b in formula (8). When a customer does not click on the recommended movie, the movie's recommendation Fig. 8 . Average CV of two-stage clustering and SOM at each variable. Fig. 9 . Comparison of the CV sum of two-stage clustering and SOM. score will be multiplied by this weight to serve as the system feedback. When the customer enters the system again, the movie will be ranked lower. Since the feedback weight setup is different due to different business, it would also affect the precision and learning effect of recommendation systems. Therefore, procedure 2 will test and find the better feedback weight. This part of the experiment mainly focuses on the repeated testing of different weight b; therefore, the 928 data from the 30 testing objects in the previous procedure will be used again to simulate their behaviors through the feedback weight on b ¼ 1:1; 1.2, 1.3, 1.4, and 1.5. Each testing object and each b is tested three times to observe the system's learning ability at different feedback weight. Calculation of recall is expressed by treating the data provided by the testing objects as the denominator to represent the transaction records. The numerator is the number of movies that are recommended by both the testing objects and the recommendation system. For instance, if customer 1001 has 30 movies on transaction records, and 20 of the movies are the same as recommended by the system, then the recall is 20/30 ¼ 0.6667. Procedure 3 of the experiment will test whether modules that combine customer profiles and customer cluster profiles work better than the one with sole profile. The experiment group is the module that combines customer profile and customer cluster profile while two comparison groups are formed. Comparison group 1 only uses customer profile, and comparison group 2 only uses customer cluster profile, where 140 testing objects are divided into three groups (see Table 8 ). The test is conducted online, user behaviors are observed from 05/11/03 to 05/18/03. Detailed procedures are shown in Fig. 12 , where the system will determine for users, which recommendation module to enter according to user account. In addition, since user interests may change anytime, the user's group may be changed accordingly. To make the clustering results closer to the most recent behavioral pattern, while considering online real-time clustering analysis may lead to customer's impatience due to the long wait, the system will batch customer clustering to achieve the optimal customer clustering results. For experiment group, the system recommends the top five movies each for customer profile module and customer cluster profile module, total of 10 movies. To have the same number of recommended movies, each comparison group recommends top 10 movies. Precision and recall are treated as evaluation index in this experiment. Precision is calculated by dividing the number of movies that customers click in the recommendation area by the number of recommended movies. For instance, in an experiment group, if users click on three movies out of the five recommended movies, the precision is 0.6. If a customer clicks four movies, then the precision is 0.8. The average precision would be (0.6 þ 0.8)/2 ¼ 0.7. Recall is calculated by recommended movies purchased in customers' transaction history. If customer 1001's transaction has 10 movies on May 11th, and eight of them are recommended by the system, then recall is 0.8. Finally, F1 is used as an index considering the precision and recall, which is 2 £ 0.7 £ 0.8/0.7 þ 0.8 ¼ 0.7467. Procedure 4 compares the effects of one-to-one marketing and mass marketing recommendations. This part of the experiment is conducted simultaneously with procedure 3. There is an expert's recommendation area on the experimental website which ranks the recommended popular movies. All customers see the same ranking information in this area. The result adopts precision, recall, and F1 as evaluation indices, which are calculated in the same manner as described in procedure 2. (2) Experiment results. Procedure 1: Comparison of the feature-based recommendations and the non-feature-based ones. This experiment is based on 30 users' behaviors and the precisions of recommendation are listed in Table 9 . Featurebased movie recommendations achieve precision of 0.6104 while non-feature-based recommendations only achieve 0.3067; about 30% lower than the experiment group. Since the comparison group only considers the classes of potential interests and neglects users' interests in other features (such as casts and directors), the recommended movies are restricted within certain types, and the precision is unable to increase. On the contrary, this research considers other features of movies and adopts them as bases of recommendation. The multiple considerations match user interests better. Fig. 13 demonstrates the comparison between experiment group and comparison group, which also shows the better effect in the experiment group. Procedure 2: Customer profile weight. According to the result, as b increases, the recall also gets higher (see Fig. 14) . When b ¼ 1:5; the recall also reaches 0.822. As shown in Table 10 , it is discovered when b . 1:5 the recall remains around 0.8. Thus, it is clear that the filtering of non-interested movies of customers has reached a certain level. When b gets higher, the recall and system precision does not get significantly higher. The higher value of b; on the contrary, would filter out too many movies. If a customer has a significant change in his transaction behavior, the system would omit some recommended movies due to a change of the customer's interest. When the value of b is small, the system feedback does not perform very well. This is possibly due to the fact that when movies are used as experiment data, a user's nonclicking of a particular movie implies his lack of interest in that movie. This would then result in a slim chance for that user to click the same movie when the system recommends the movie again. However, a user's interests would not Fig. 12 . Detailed steps in procedure 3. Table 9 Precision comparison of feature-based recommendation and non-featurebased movie recommendations change greatly within a short period, thus the system recall will increase with b: Procedure 3: Comparisons between modules that combine customer profile and customer cluster profile and modules with only one profile. Procedure 2 tests better b of customer feedback. Online experiments are conducted in procedure 3 with b ¼ 1:5 in a hope to effectively filter out users' non-interested movies without neglecting users' potential interests by filtering out too many movies. In the experiment group, each of the 47 testing objects has an average of 2.6 visits to the website. Thirty-two persons have visited the website three times or more, which is 68.1% of the total testing objects. Six people have visited only once, which is 12.8% of total. The remaining nine testing objects have visited the website twice. In comparison group 1, the customer profile module, 47 testing objects' average visit is 2.4, and the 29 testing objects have visited three times or more, which is 61.7% of total. Ten people have only visited once, which is 21.3% in total. The remaining people have visited twice. In comparison group 2, customer cluster profile module: 35 people have visited the website three times or more, and four people have visited only once, yet the remaining seven persons visited twice. Table 11 is the comparison of system recommendation precision during each visit for testing objects who visit the experimental website three times. As Fig. 15 shows, as the number of visits increases, the system precision also increases, which demonstrates that the system has the mechanism to learn customer behavior. Such a learning mechanism is more obvious in the results on experiment group, since it combines two recommendation modules and allows the system to learn user interests and behaviors more effectively. When a testing object visits the website for the second time, experiment group's precision is significantly higher than those of comparison groups. When a user visits the website for the third time, the precision becomes as high as 0.7857, which is 31.9% higher than that of comparison group 1 and 30% higher than that of comparison group 2. Fig. 15 also demonstrates when a user paid his first visit, the precision of experiment group is still higher than those of the comparison groups. This is possibly because the comparison group only adopts one recommendation module to come up with top 10 movies, while experiment groups use two recommendation modules to recommend five movies each; a total of 10. The overall average precision is the highest, meaning that the top five movies cover more user interests, achieving higher precision than top 10 movies. This demonstrates that the system is effective when calculating the recommendation scores. Table 12 shows the comparisons of average precision, recall and F1 measures in procedures 3 and 4, in terms of experiment group, comparison group 1, comparison group 2, and general recommendation area. Fig. 16 has demonstrated that the experiment group has the highest precision, with comparison group 2 being the next, general recommendation being the lowest. Comparison group 2 has higher precision than comparison group 1, attributing to comparison group 2's adopting of group recommendation, which recommends movies of interests among other customers, who are similar to target customers. Movies in this field tend to be more persuasive with peer recommendation. Customers tend to trust other customer's recommendations; therefore, its precision can also be assumed higher. Comparison group 1 recommends movies according to individual customer's interests. When the customer has obvious interests toward specific features, such as casts or directors, this module then has performance that is more obvious in recommendation. However, recall appears similar in experiment group and comparison groups, being over 80%. This demonstrates customers' higher confidence in system recommended movies. The experiment group and the two comparison groups are one-to-one marketing, and the general recommendation area is of mass marketing. It can be discovered from Figs. 16 and 17 that mass marketing achieves lower performance regardless of precision and recall. General recommendation is not of personalized recommendation, and same popular movies are recommended to all users. This approach does not have mechanisms that learn user behaviors, thus recommended movies only represent popular tastes and not individual interests. General recommended movies are only updated periodically and this may only have higher precision for the first time recommendation. Once a user visits the website again in a short timeframe and discovers the same movies are still recommended, the interests will become lower, which decreases overall precision and recall. Fig. 18 uses F1 measure to include the considerations of precision and recall, which also demonstrates that general recommendation methods perform worse than other personalized recommendation systems. In the past, many have considered E-commerce to be a bubble economy. Recently, the spread of Severe Acute Respiratory Syndrome (SARS) has stimulated and revived some E-commerce, which proved its importance. Many companies have constructed websites and started Internet businesses. To save customers' the effort to search for a product, as well as increase customers' loyalty, the recommendation system can truly serve as a mechanism to retain customers. The recommendation system of this research is constructed on a web-based system, mainly combining two recommendation systems, individual customer profile module and customer cluster module. Customer profile module mainly aims to discover a customer's potential interests based on product features, and customer cluster module finds peers of the same interests as target customers. The total amount spent by customers on a particular product is used as a clustering input variable in order to eliminate the disadvantages resulted by overdetailed spending amount, including too many or too scattered dimensions and slow speed. The research is based on movie data, and the result shows that the combined module functions better than just one module. In addition, the result also demonstrates that two-stage clustering can really cluster similar customers effectively, and thus bring recommendation items closer to target customers' interests. In general, the concept of an RFM model is applied in this research. The transaction recency, frequency and monetary value are all considered, which allows the system to rapidly learn customers' behavior change. The applied membership mechanism enables the system to minimize deviations in recommendations. There are three contributions in this research: (1) Explainable recommendation results. We can explain a customer's individual interest through an individual interest profile. Take customer 1001 for instance C ð1001Þ ¼ {3; 0; 0:5; …; 2:92; 0; 0:42; 0; 2:5; 0:83; 1; 1; 1; …} Taking the above data as an example, if the feature value of three stands for preference degree on actor Tom Cruise and the feature value of 2.92 stands for preference degree on director Luc Basson, then it can be guessed that customers would prefer movies with Tom Cruise or Luc Basson, which is three times or 2.92 times over general customers. For the sake of research feasibility, this research considers movie recommendations as an experiment target; however, other products or businesses can also apply the mechanism of this research, such as home appliances, clothing, or other products. When features of a particular product are extracted and personalized, customer recommendation can be conducted, and the setup of product features becomes very important since it will affect the precision of the recommendation system. Therefore, when an enterprise defines product features, it's better for them to do so from a customer's point of view. Approaches such as marketing survey can be conducted to understand general customers' interests. However, each recommendation system has its shortcomings. When a user has questions about a system recommendation, provision of sufficient information from the system can help a customer to understand it better. In the long run, a customer will gradually adapt to the recommendation system and even provide more feedback. This will definitely help a system to learn a user's behaviors. (2) Serve as references for developing new or potential products. Marketing of movies tends to target mass marketing due to considerations of cost and production, and new movies cannot be made according to individual preferences. Nowadays, customers require speedy changes, and product cycles are thus shortened. Many enterprises have gone from mass production to customer-oriented production, which tailor makes products to suit different customer needs. The customer profile module of this research can enable enterprises to better understand customers' levels of interest through analysis, and thus provide more references for enterprises' product development. (3) Bring benefits to enterprises from one-to-one marketing. Current recommendation system use browsers as their user interface, and the advertisement module is the most prevalent business module now. With recommendation functions, the advertisements become more advantageous. If a user gives high rating to a book, then the publisher would want the user to see more detailed information and advertisements to attract him to buy the book. Through oneto-one marketing on recommendation system, different products are recommended according to customers' interests and promote the willingness of online shopping. New customers can also be inspired by word-of-mouth through existing users, which would also have higher loyalty than general customers. Aside from applications on E-commerce, enterprises can also include this system on real shops, such as on outlet's POS systems to provide salespersons immediate information to interact with and respond to customer needs. In addition, personalized marketing strategy can also be formed according to individual differences, such as personalized advertisement marketing and e-mails. Enterprises can increase the profitability through these one-to-one mechanisms. There is a lot of research on recommendation systems, but most of them have not reached beyond research areas. The information gathering is difficult and often impossible to apply to actual industries. This mainly attributes to the high cost and limited execution results. Therefore, there is still plenty of room for improvement, and several fields may be detail-conducted, as listed in the following: (1) Diversified product recommendation. Most research, until now, tends to have single-profile users; therefore, when recommending different products, single-profile is often unable to be relied upon for useful and suitable products for a customer, since product features are often different. Future research may opt for multi-profile approaches, where a system must contain mechanisms that can learn from customer behaviors and can choose suitable profiles. Cross-category recommendations may receive extraordinary results. (2) Develop automatic gathering mechanism for product features. The features in this research are set by experts, yet men-operated processing of feature databases may become time-consuming with the growing products. Thus future research may aim to build an automatic feature gathering mechanism to save human resources while increasing system reliability. (3) Long term filed test. The recommendation system often uses simulation data or simulated testing objects for evaluation. This research is unable to maintain an extended time frame due to time restrictions, though online tests of users are conducted. Therefore, there may be deviations of customer behaviors. If a long-term field test could be conducted, the system application and practical usage may receive better results. (4) Improve system execution performance. The recommendation system of this research is conducted based on customer's transaction history when a customer logs on to a website. The recommended products of interests come from the customer's past records as well as a system's calculation of user profile, which must be matched with product similarities in databases. When a website has enormous accumulation of data, the operation may be slowed. To overcome such a problem, algorithms must be modified for more efficient execution. (5) Combine more recommendation modules. Different recommendations have different advantages and weaknesses. This research tempts to improve recommendation systems through combined approaches of customer profile module and customer cluster module. Future research may combine other recommendation models and integrate the advantages/disadvantages to get better system precision. Automated data clustering based on a synergy between self-organizing neural networks and K-means clustering techniques Using data mining methods to build customer profiles A music recommendation system based on music data grouping and user interests Building recommender systems using a knowledge base of product semantics Explaining collaborative filtering recommendations The InfoFinder agent: learning user interests through heuristic phrase extraction NewsWeeder: Learning to filter netnews Personalization of supermarket product recommendations Discovery and evaluation of aggregate usage profiles for web personalization Is your company ready for oneto-one marketing Analysis of recommendation algorithms for e-commerce Recommender systems in e-commerce How increasing value to customers improves business results Personalization with dynamic profiler. Proceedings of the third IEEE International Workshop on Advanced Issues of E-Commerce and Web-based Information Systems Data mining and personalization technologies