Opinion mining on Digital Camera Reviews: A Natural Language Processing Approach Mr. Amey D S Kerkar Ms. Manisha Fal Dessai Assistant Professor, Don Bosco College of Engineering, Fatorda-Goa, India. Assistant Professor, Don Bosco College of Engineering, Fatorda-Goa, India. amecop47@gmail.com manishagfd@gmail.com ABSTRACT Our paper deals with the technique of extracting the opinions about a product which are written in the form of reviews by the product users on the various E-Commerce and the product review sites and then summarize these opinions to present a one page summary which ultimately acts as a recommendation system for a willing-to-buy customer. We have implemented a system that extracts the reviews from different review sites and then, from each review it tries to find out the opinions and the features on which the opinions are made. For the implementation we have considered reviews for Sony Cyber shot Digital Camera. Then using natural language processing (NLP) techniques we have designed and implemented opinion orientation (OO) algorithm that decides positivity or negativity for an opinion and finally produces one page graphical summary and recommendation about the product. The paper also presents various observations that we recorded after the implementation. Keywords Opinion mining, opinion orientation, feature, opinion, review, Part-of-Speech, Natural Language Processing 1. INTRODUCTION Today E-Commerce has become a way of life and website owners that satisfy the requirements of the online shopper are fattening their wallets. People prefer buying goods online rather than having to travel from store to store. online shoppers simply navigate from one web page to the next comparing the stores and the wares of those stores. With online shopping they can review and compare dozens of stores and products at once. Just before deciding upon which brand or which model of a product to buy, the potential customer likes to review the product with respect to its performance, quality and price. The customer then seeks for the opinions from those who have been already using this product. Almost all the well-known E-commerce sites have the provision for the customers to share their experience by writing reviews on the products they have purchased once they start using the product. As the popularity of product grows, the number of reviews that the product receives also grows rapidly. The reviews are written using a natural language like English which has enormous amount of vocabulary of words which is still growing. On Every day basis new words are being added to this list. A single word might have a number of synonyms Ex. “Murder” and “Kill” means the same, a sentence sometimes can be written in terms of acronym. Ex. “As soon as possible” can be written as “ASAP” or” asap”. English language has lot of grammatical rules based on Part-Of-Speech (POS) elements. So in order to extract opinions from these sentences the opinion mining system has to first understand the sentence. Identify whether the sentence is a factual sentence or an opinion sentence. A popular product might have a huge number of reviews written on a single review site. . In a recent observation made we have found that Canon EOS 600D DSLR digital cameras have got over 170 reviews on flipkart.com alone and 219 reviews on amazon.in. Also, it is seen that reviews are sometimes very long which makes it hard for a potential customer to read each and every sentence and then make a decision. In Natural Language form of writing we cannot keep any restrictions on the reviewer and hence out of say 120 sentences written by him hardly say 5 or 6 sentences might be opinionated sentences. On the other hand, if the willing-to-buy customer reads only the first few reviews or first few lines of a review then he or she gets a biased view. Many a times a review is lengthy, which makes it hard for a potential customer to read it completely and make decision on whether to purchase the product or not. If the potential customer reads only a few reviews, he gets a biased view. The large number of reviews also makes it hard for product manufacturers or businesses to keep track of customer opinions and sentiments on their products and services. It is thus highly desirable to produce a summary of reviews [3]. 1.1.Existing System Textual information processing has been focused on mining and retrieval of factual information, e.g. information retrieval, Web search, text classification, text clustering and many other text mining tasks. Opinion mining Opinion mining topic is explored and researched upon by many researchers worldwide. Our work is related to mining opinion features in customer reviews (Minqing Hu and Bing Liu 2004).where much of the work is done using association rule mining a concept in data mining. In our paper we have tried to mine the opinions using Natural Language Processing technique and list the consequences involved in using this technique. 1.2.Proposed System Our proposed system uses a corpus of text documents, where each document is a review written by each user. We have collected over 500 reviews. These reviews are regarding Sony Cyber Shot Camera and are collected manually from various reliable review sources like amazon.com, epinion.com, Google.com, gsmarena.com, rediff.com. There is a known feature list consisting of all the features any willing-to-buy user will like to stress upon before purchasing the digital camera. There is also an opinion lexicon which is generated during the execution which determines an opinion word and its corresponding orientation i.e. positive, negative or neutral. By using the opinionated feature list and Opinion Lexicon on the corpus, the proposed system does five important activities [4]: 1. Identifies the opinionated sentences from the user generated content. 2. For each such sentence, finds out the features on which the opinions are expressed. 3. For each feature finds out the opinion orientation i.e. positive or negative or neutral (in case of context dependent words). 4. Summarization of opinions on the most relevant features (i.e. most opinionated features). The summary thus generated is textual as well as graphical which can be now presented to the user along with the recommendation page which helps him/her to make a decision. feature mapping is required so that all the synonyms converge down to one feature. Features can be identified in two ways: 2.2.1. Natural Language processing can be used here where we have to determine part-of-speech tags also called POS tagging [4]. First, we have to find the frequent nouns and noun phrases. Nouns and noun phrases (or groups) are identified by using a POS tagger. Their occurrence frequencies are counted, and only the frequent ones are kept. A frequency threshold can be determined. The reason for using this approach is that when people comment on product features, the vocabulary that they use usually converges, and most product features are nouns. Thus, those nouns that are frequently talked about are usually genuine and important features. Those nouns that are infrequent are likely to be non-features or less important features [2]. 2.2.2. 2. OPINION MINING TECHNIQUE 2.1. PRE-PROCESSING The text corpus collected from different sites has to be preprocessed before being used for opinion mining purpose. Preprocessing involves: 2.1.1. Tokenization Tokenization is the process of breaking a stream of text up into words, phrases, symbols, or other meaningful elements called tokens. All contiguous strings of alphabetic characters are part of one token; likewise with numbers. Tokens are separated by whitespace characters, such as a space or line break, or by punctuation characters. Punctuation and whitespace may or may not be included in the resulting list of tokens. 2.1.2. Stop-word removal Stop-words are the frequently occurring unimportant words, removing which does not have much effect on the information contained in the document but its removal only helps to reduce the size of the corpus and thus leads to faster processing. 2.2.Feature Extraction Given a text review document, this step identifies features of the product on which the customer have expressed their opinions on. The features of the reviewed product must be known in advance [4]. The main difficulty is to determine the features. There might be hundreds of features and sub-features in a product. For example, if the product is a car then there are more than 50 features on which users can comment on. All the features are not important but only some are more important. If a person wants to buy a car he would be rather interested in only the opinions on key features of the car rather than other common and unimportant features like seat covers etc. Second difficulty is that each feature will have n number of synonyms. Hence, if in one sentence user says “display is bright and powerful” and in other sentence “screen is bright and powerful”, then the system should identify that both these sentences are actually opinions on the same word called display which is sometimes also called as screen. Thus, Part of Speech Tagging (dynamic feature extraction) Known Feature List [2] The advantage of using this approach is that it solves domain related issues as the feature list is manually constructed. If we know the product domain, then it is easy to determine what features the user is generally interested in are. For example, if the product is a digital camera then we know in advance the features which are to be reviewed for any digital camera and also the commonly used synonyms for each feature. Table 1 . Sample Feature List with Synonyms for some features of a Digital Camera Feature Synonyms Battery charge, powerup, charger, power Picture Images, shots, photos, pics, shots Screen display, lcd Resolution pixel, firmness, closure Memory storage, capacity, store, retention Price cost, value, rate, amount Body look, feel, design, pattern, figure This feature list is then compared with the sentences in each document of the corpus. Feature mapping is done where each synonym of a feature is replaced by the feature word. Thus features from the document are determined. 2.3.Opinion Identification and Orientation We use the Lexicon based approach by first extracting the adjectives and adverbs from the POS tagged Corpus. These words are extracted in three files by comparing with a generalized list of positive and negative opinion words where the first file stores all positive words, the second stores all negative ones and the third stores context dependent or neutral words. Then the opinion list is generated with the opinion word and its initial orientation assigned i.e. positive, negative or neutral. Examples of positive opinion words are: beautiful, wonderful, good, and amazing. Examples of negative opinion words are: bad, poor, and terrible. Examples of neutral opinion words are: large, long and small. 2.3.1. Feature Orientation Identification Given a sentence that contains a feature, this step identifies all opinion words and phrases. Each positive word is assigned the opinion score of +1, each negative word is assigned the opinion score of -1, and each neutral word is assigned the opinion score of 0. For example, we have the sentence, “The picture quality of this camera is not great, but the battery life is long.” After this step, the sentence is turned into “The picture quality of this camera is not great [+1], but the battery life is long [0]” because “great” is a positive opinion word and “long” is neutral or context dependent. Negation words and phrases are used to revise the opinion scores based on some negation handling rules. For example “The picture quality of this camera is not great [-1], but the battery life is long [0]”. Strength of Opinions: Besides detecting the polarity of opinions as positive, negative or neutral, it is equally important to determine the strength of the opinions present in the reviews. Opinions with words like “very”, “too” before them, need to have a higher orientation than those that don’t have. Example: “The camera is good.” Here, good has a positive orientation of +1.But a sentence such as “The camera is very good.” should have an orientation of greater than +1 because the word “very” adds a certain amount of strength to the word “good”. Fig. 1 Final Summary and Graph Taking into account the positive as well as the negative score for the overall product, a recommendation is provided to help the willing-to-buy customer to make a decision. 2.4.Opinion Aggregation and Summarization This step applies an opinion aggregation function to the resulting opinion scores to determine the final orientation of the opinion on each object feature in the sentence. After all the previous steps, we are ready to generate the final featurebased review summary. Fig. 2 Final Recommendation For each discovered feature, related opinion sentences are put into positive and negative categories according to the opinion sentences’ orientations. A count is computed to show how many reviews give positive/negative opinions to the feature. All features are ranked according to their aggregate scores.as follows: π΄πΊπ (πΉ) = πππ(πΉ) − πππ(πΉ) (1) Where TPS (F) is the total positive score for a particular feature F, TNS (F) is the total negative score for the same feature F and AGR (F) is the resultant aggregate score. Then a summary is generated which comprises of total no of positive, negative and neutral opinions for each of the features and each of the feature is ranked according to descending order of aggregate value. 3. OBSERVATION 3.1.For Pre-processing Phase During stop-word removal we usually use a known stopword list for removing frequently occurring unimportant words. The words such as “the”, ‘a’, “not”, “but”, “an” occur frequently in the corpus and are unimportant and hence should be treated as stop-words. But since we deal with natural language here, we need to refine the known stop-word list as there are words such as “not”, ”but”, ”and” which have a serious impact on opinion orientations. 3.2.For Feature Identification and Extraction Phase Nouns should be identified using POS tagger [2]. Their occurrence frequencies are counted, and only the frequent ones are kept. A frequency threshold can be decided experimentally [2]. In our model of opinion mining, the threshold value is entered by the user. Only those features will be displayed whose cross document frequency is greater than the threshold value selected by the user. The reason for using this approach is that when people comment on product features, the vocabulary that they use usually converges, and most product features are nouns. Thus, those nouns that are frequently talked about are usually genuine and important features. The POS tagger tags a word as noun (NN), verb (VB), and adjective (JJ) based on the current sense in the sentence. For example “Signals from the boat suddenly stopped.” Here signal is a noun. “He signed his disapproval with a massive gesture.” Here it means a verb. “The year saw one signal triumph for labour party.” Here it means an adjective. As a result of above consequences, the same word appears in the noun list as well as adjective adverbs list also. Hence there is a high probability of generation of false feature words. False feature words are the frequently occurring nouns which are not actually feature words. The noun words were extracted with their frequencies across the documents in the corpus and different values for threshold were tried. But, it was observed that along with the actual features, false features also enter the list. Fig. 4 Graph showing only Feature words 3.3. For Opinion-Feature Identification The research has shown that Phrases containing adjectives or adverbs are good indicators of subjectivity and opinions [2]. Accordingly, for construction of opinion lexicon the adjectives and adverbs from POS tagged documents were extracted. Besides detecting the polarity of opinions as positive, negative or neutral, it is equally important to determine the strength of the opinions present in the reviews. Opinions with words like “very”, “too” before them, need to have a higher orientation than those that don’t have. Example: “The camera is good.” Here, good has a positive orientation of +1.But a sentence such as “The camera is very good.” should have an orientation of greater than +1 because the word “very” adds a certain amount of strength to the word “good”. 3.3.1. Comparative Study: Fig. 3 Graph Showing False Features Therefore, after POS tagging is done, we extract nouns and compare each noun with some reference source to determine if the noun is a feature or not. Thus, the following graph shows all the features with their cross document frequency i.e. the number of users expressing their opinion on that particular feature. The white line indicates threshold equal to 50 where only the features above the threshold are selected for further processing. Fig. 5 Graph of Feature v/s Aggregate without considering the strength of opinions The following graph shows the relation between the aggregate score and the individual positive, negative and neutral score. It is observed that the FAS (f, D) is independent of the neutral opinions. Consider battery which has 16 positive opinions and 13 negative opinions. With this aggregate is calculated as 3 i.e. aggregate=positive – negative. This shows that the aggregate value is independent of neutral opinion. Fig. 6 Graph of Feature v/s Aggregate considering the strength of opinions As seen from the above two graphs, the features observed for a particular threshold are the same. But the aggregates in fig 5 are higher than those in fig 6. Thus by considering the strength of the opinions the weightage of the feature strongly increases. Our observation is that the strength of opinions gives a better aggregate score. 3.4. For Aggregation and Summarization Phase It is observed that final aggregated score is directly dependent on number of positive and negative reviews and is independent of the neutral reviews. Thus, the feature with the highest score will be the best feature of the product. The following relation is observed: FAS (f, D) = TPS (f, D) – TNS (f, D) (2) Where, FAS (f, D) is Final Aggregate Score for a feature f in corpus D. TPS (f, D) is Total Positive Score for a feature f in corpus D, and TNS (f, D) is Total Negative Score for a feature f in corpus D. When strength is considered, it is observed that TPS does not give the actual number of users having positive opinions about the feature. But, we have noticed that when strength is considered, the quality of scores improves. As a result, we can say that the aggregate also improves. Fig. 7 Relation Graph for 500 documents(corpus 1) In the following graph, battery has 6 negative opinions and 2 positive opinions, thus the aggregate score is -4. Also button has aggregate score -1. This shows that battery and button are bad features of the product. 3. 4. 5. 6. 7. 8. 9. This model is done considering only one model of the digital camera. As a future scope, it can be extended to consider models of camera of different brands and perform opinion mining on each of these, thereby recommending the best model out of all. As a part of future scope, we can have a functionality to find the opinion spam i.e. detection of illegitimate, unauthentic and false opinions about the product, only retaining the legitimate opinionated sentences. Further, comparative sentences can also be processed. Currently, our model of opinion mining works with Natural Language Processing tools like Part of Speech Tagging and Rule based Analysis. Other alternative means data mining techniques like Bayesian belief network, neural network can also be used. For feature extraction, instead of capturing features based on exact word, fuzzy logic could be used. The current model of opinion mining works with only a few basic Natural Language Rules like rule for but clause, not clause, and clause, but also and so on. In order to have more accuracy, the system can be trained with more natural language rules eventually increasing the accuracy. However, 100% accuracy is impossible since English is a free flow natural language and working with NLP is still a challenging task. Opinion mining can be done on other languages with Devnagri scripts or even based on speaking styles and accent followed in different regions across the world. 6. REFERENCES [1] Bing Liu, Phillips S.Yu, Xiao Wen Ding. KDD'04, 2004, A holistic approach to Opinion Mining,. Fig. 8 Relation Graph for 126 documents (corpus 2) 4. [2] Bing Liu. Sentiment analysis and subjectivity, Handbook of Natural Language Processing, Second Edition, 2010 CONCLUSION The model for opinion mining using NLP approach is created successfully, which provides a summary of the opinions on each individual feature of the Digital Camera. As a part of summary it provides the mostly opinionated features, their aggregate scores and the number of positive, negative and neutral opinions on each feature. It also provides summary in a graphical form and finally provides the recommendation page for the willing-to;buy customer. With NLP approach alone however, 100% accuracy is impossible since English is a free flow natural language and working with NLP is still a challenging task. Some issues like false feature words, strength of opinion need to be considered. [3] M.Hu and B.Liu. KDD’04, summarizing customer reviews. 2004, Mining and [4] Yee W Lo .Review Mining & Sentiment Classification in Social Networks, IEEE. [5] L. Zhuang, F. Jing, X.-Yan Zhu, and L. Zhang, CIKM-06, 2006, Movie Review Mining and Summarization. [6] .N. Jindal, and B. Liu, In AAAI’06, 2006, Mining Comparative Sentences and Relations. [7] B. Liu, Springer, 2006, Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data. 5. FUTURE SCOPE 1. 2. In this model, the opinion mining is carried out in the light of known feature list and a known set of synonyms [1]. Dynamicity can be achieved when both the feature list and the synonyms for the feature are dynamically generated which is still a challenging task. This model takes as input the text corpus where each document is a text review extracted manually. An automated mechanism for extraction of text reviews from various review sites could be incorporated i.e. a Scrapper could be created which will dynamically extract all the reviews from the review sites and store them in text files. 7. WEBSITES 1. http://www.cs.uic.edu/~liub/FBS/sentiment-analysis.html 2. http://www.cis.upenn.edu/~treebank/ 3. http://sentiwordnet.isti.cnr.it/ 4. http://videolectures.net/wsdm08_liu_hlbaom/