Semantic Feature Based Arabic Opinion Mining Using Ontology

with the increase of opinionated reviews on the web, automatically analyzing and extracting knowledge from those reviews is very important. However, it is a challenging task to be done manually. Opinion mining is a text mining discipline that automatically performs such a task. Most researches done in this field were focused on English texts with very limited researches on Arabic language. This scarcity is because there are a lot of obstacles in Arabic. The aim of this paper is to develop a novel semantic feature-based opinion mining framework for Arabic reviews. This framework utilizes the semantic of ontologies and lexicons in the identification of opinion features and their polarity. Experiments showed that the proposed framework achieved a good level of performance compared with manually collected test data. Keywords—Opinion Mining; Sentimental Analysis; Ontology; Feature extraction; Polarity identification;


I. INTRODUCTION
As a result of dramatically increase of using the internet in the recent years; huge information of people opinions was produced on the web, people can post their views using Internet forums, discussion groups, product reviews and blogs.Analyzing this information manually is time consuming and maybe impossible mission.For example, if we wanted to judge the article or product positively or negatively according to the comments of the people, it is difficult to read all comments and classify them manually, so we need an automated technique to do such a task.Opinion mining is the appropriate way which automatically extracts knowledge from people comments.
Opinion mining (also called sentiment analysis, sentiment mining, sentiment classification, subjectivity analysis, and review mining or appraisal extraction) is a subtopic of text mining that it automatically extracts opinions, sentiments, and subjectivity from user-generated reviews [1].Basic task in opinion mining is to determine the subjectivity, polarity (positive or negative) of a piece of text in other words: What is the opinion of the writer.Opinion mining has a wide range of applications from different domains such as commercial, governmental, political, educational and others [2].
Nowadays, there are three levels of Sentiment Classification in Opinion mining (document, sentence and feature).According to [3], the sentence and document level analyses do not discover what exactly people liked or not.However, studying the opinion text, especially feature level, is extremely challenging.For the ordinary user, it is too complex to analyze opinions about object and object features in the online review sites on the Web.To do such analysis it is necessary to perform some kind of opinion mining, feature-based opinion mining so as to identify the features in the review and classify the sentiments of the opinion for each of these features [4].The feature-based opinion mining of object reviews is a difficult task, owing to both the high semantic variability of the opinions expressed, and the diversity of the features and sub-features that describe the products and the polarity of opinion words used to depict them [5].In the last few years, new approaches based on both semantic web technologies and domain-dependent corpora for feature-based opinion mining have appeared [6].In [7] Isidro et el.Believe that the already mature Semantic Web technology could be a valuable addition to traditional opinion mining approaches.More concretely, ontologies constitute the standard knowledge representation mechanism for the Semantic Web and can be used to structure information.The formal semantics underlying ontology languages enables the automatic processing of the information in ontologies and allows the use of semantic reasoners to infer new knowledge.
In the proposed work, an ontology is viewed as a formal and explicit specification of a shared conceptualization [8].Ontologies provide a structured knowledge representation and a common vocabulary for a domain (e.g.hotel domain).In this work, the Web Ontology Language (OWL), the W3C standard used to represent ontologies in the Semantic Web, has been used to represent the concepts and features of the application domain (in our case hotel domain).The main contribution of the proposed framework is how to classify Arabic views of people about an entity (Object) in a specific domain to positive or negative opinions.We need a point of view about an entity through extracting the view about its features (attributes).For example, if the entity is a hotel its features will be a room, bar, lunch and so on.Most of researches done in this field were focused on English texts with very limited researches in an Arabic language.Limitation of research work in this area is due to the following reasons: • Content found on Forums and Blogs is written in many forms of Arabic Dialect which makes the task of using a semantic approach for mining opinions very challenging.Moreover, the majority of the available preprocessing tools are mainly built for the modern standard Arabic.
of extracted subjective text.
The rest of this paper is organized as follows: Section II presents Related Work; Section III describes the Ontology and lexicon Development; Section IV details the Proposed Framework; experimental results and discussion are discussed in Section V; conclusions and future work are finally presented in Section VI.

II. RELATED WORK
Sentiment classification approaches can be divided into machine-learning approaches and semantic orientation approaches.Machine learning approaches are typically supervised approaches in which a set of data labeled with its class such as positive or negative are represented by feature vectors.Then, these vectors are used by the classifier as a training data inferring that combination of specific features yields a specific class [9].Semantic orientation approaches (Dictionarybased approaches) are unsupervised approaches in which a sentiment lexicon is created.The sentiment lexicon performs classification based on positive and negative sentiment words and phrases contained in each evaluation text and mining the data requires no prior training.Several researches have been conducted in the opinion mining field.Researchers have proposed interesting approaches and developed various systems to solve this problem.Most of these systems are developed for English language and are not oriented to other languages.In this section, previous works of Arabic opinion mining systems based on sentiment classification techniques and levels is discussed.Some classic machine learning methods (Naive Bayes, Maximum Entropy, and SVM) have been experimented in [10] [11] [12] [13].Other works, such as [14] [15] are based on dictionary-based algorithms.[16] Use the both techniques.All studies presented before are either on sentence or document level.Moreover, their datasets (reviews) are collected from general websites that are not interested in specific domain.These classification techniques are useful and improve the effectiveness of Arabic sentiment classification but cannot determine what the user opinion on each particular feature.
Here we will show some studies on feature-based level.In feature based opinion mining some researchers use lexicon to store the domain features such as [17] [18] [19] [20] [21].While the others use the ontology to represent the domain features such as [7] [22] [23] [24] [25].Furthermore they use a general, specific domain lexicon or both for the opinion words polarity.None of the previously mentioned works is concerned with Arabic feature based opinion mining.In general, none of the existing works efficiently addresses the task of Arabic feature based opinion mining based on ontology which we are going to address.

III. ONTOLOGY AND LEXICON DEVELOPMENT
The main objective of the proposed framework is provide a feature-based opinion mining for a specific domain.It is significant to mention that the proposed framework is generally applicable for any application by changing both ontology and lexicon.Thus, this section would provide details of construction of domain ontology in case study (hotel) as well as a large scale Arabic opinion lexicon.

A. Ontology Building
Domain ontology describes the concepts of special domain, including concepts, attributes of the concepts, relationship between concepts, and constraints among the relationships.The concepts refer to different entities that may be a product, or an organization.The aim of using ontology in feature-based opinion mining is to identify the main features of domain by defining the common terminologies in the domain, and giving the definition of the relationships among the terminologies [22].

1) Ontology development:
In feature based opinion mining, ontology plays an important role.Thus, in the proposed model, ontology was used to identify the main features of domain (which in our case is hotel).In this section, we present the construction of the ontology.Generally, in order to design domain ontology two methods could be applied: (i) using an existing ontology, extending and adapting it to meet ones needs; and (ii) building one from scratch.Our work started by searching about the most well known ontology in our field in Arabic language but we did not find any.However, we found English hotel ontology Hontology [26] and manually translated it to Arabic.We have developed hotel ontology in Protg [27] with OWL 2. However, some of its concepts and relations do not satisfy what we need in Arabic hotel domain.Furthermore, lack of domain knowledge and ambiguity in the ontology hierarchy represent an obstacle that we have tackled through refinement phase.
2) Ontology refinement: Due to lack of knowledge in Hontology, therefore, we decided to further extend and adapt this ontology before using it in order to meet our needs.The extension process has been performed manually by three annotators.We assigned set of reviews (690 reviews) to each one of them .The main goal of the annotators is to identify and extract the relevant concepts of hotel domain based on the existing reviews.Each annotator separately generated a list of relevant concepts, those lists are combined such that repeated concepts have been removed.Next, each concept should be aligned in the existing translated ontology.During the alignment step, some concepts have the same meaning, so one of them is manually aligned in the corresponding place and others are considered as synonyms to this concept.These synonyms were collected into a dictionary which called synonyms dictionary.A snapshot of our ontology is presented in Figure 1 (1a,1b).There are 12 top level classes which are associated to hotel domain.In total there are 242 classes in our current hotel ontology.

B. Building a large scale Arabic opinion lexicon
Most opinion mining approaches rely on opinion lexicons, such as English SentiWordnet (ESWN [28] and MPQA Lexicon [29] for identifying word polarity.In order to obtain higher accuracy, it is recommended to use a large scale Arabic opinion lexicon.Recently, some Arabic opining lexicon appear [30], however the availability of a large scale Arabic opinion lexicon is still limited and unavailable.Given the limitation of Arabic sentiment lexicons, we propose to address this limitation, by developing and refining a large-scale Arabic opinion lexicon (ArOpL).We integrate three opinion lexicons to build a common one that contains two lists: one for the www.ijacsa.thesai.org• The MPQA lexicon, which contains 8,000 English words that were manually annotated as (positive, negative, neutral, or both) [29].We depend on Darwish et al. [31] translating; they used Bing online MT system to translate the MPQA lexicon into Arabic.Because The MPQA lexicon had many translation errors, we have refined it, removed these errors and selected only the positive and negative words.
• The ArabSenti lexicon [30] containing 3,982 adjectives that was extracted from news data and labeled as positive, negative, or neutral.We have selected only the positive and negative words.
• Amira et.al.[32] Lists of Sentiment Words, which contains 652 Arabic words labeled as positive and negative.
After refining these lexicons, we remove duplicated words and as a result of annotation phase, another set consists of 100 new words was produced by annotators.Accordingly, it has been added to our lexicon to produce a final set of lexicon with 4420 Arabic words (1825 positive and 2395 negative).

IV. PROPOSED FRAMEWORK FOR SEMANTIC FEATURE-BASED ARABIC OPINION MINING
In this section, the proposed approach is explained.Figure 2 illustrates the Architecture of this system.This framework is composed of five main components: preprocessing, Semantic Feature Identification, Polarity Identification, Feature Polarity Identification and Opinion Mining.These components are described in detail below.

A. Preprocessing
Several NLP techniques must be applied over the dataset to ensure the cleaning of data and remove noise that may affect the accuracy of the system.These techniques include Tokenizer, De-noiser, Normalizer and Stemmer by Althobaiti et.al.[33].Finally Arabic Stanford Part-Of-Speech Tagger [34] is used to identify the nouns.

B. Semantic Feature Identification
Domain ontology is used for feature identification from hotel reviews.After preprocessed hotel review and determine the Nouns in the reviews using POS taggers, three steps were followed to find the corresponding feature using the domain ontology.According to workflow shown in Figure 3: • First, the domain concepts is determined in the reviews: Using semantic information encoded in the ontology, our system determines which features are useful for extracting reviews by comparing the nouns of reviews with concepts in the ontology.If the noun does not exist in the ontology, we go to step 2.
• Second, compare the nouns of reviews with the synonyms dictionary which we created.If the noun does not exist in the dictionary, we go to step 3. www.ijacsa.thesai.orgFig. 2: Proposed system architecture.
• Third, compare the nouns of reviews with the synonyms in AWN [35].If the noun does not exist, we ignore it.
I provides an example of feature identification from a review.According to the example in this table, the identified features within the given review will be .
" " and " " are identified as features because they are synonymous of the " " and " " classes from synonyms dictionary and AWN respectively.

C. Polarity Identification
For polarity identification, a list of opinion words is essential, i.e., an opinion lexicon.Opinion words are words that express positive or negative sentiments.Thus, we used the developed new large lexicon (ArOpL).During this phase we ignore the selected features which we already extracted in section IV-B.The polarity is determined by aggregating the polarity of the extracted words in reviews based on our new dictionary.In other words, for each review our method assigns the scores +1 and -1 to the positive and negative words respectively.Using the extracted features and the lists of positive and negative words generated by previous phases, we identify the opinion orientation expressed for each feature.This step generates a set of tuples containing features and their polarities.In order to generate these tuples, it is necessary to obtain the www.ijacsa.thesai.orgwords from around the feature.The words that are close to the feature can be obtained in different ways.The following three methods have been implemented to evaluate our solution: • N-GRAM Before: this method obtains the N-GRAM words before the feature in the users review.
• N-GRAM After: this method obtains the N-GRAM words after the feature in the users review.
• N-GRAM Around: this method obtains the N-GRAM words before the feature and the N-GRAM words after the feature in the users review.
N-GRAM indicates the number of words near the feature that are to be selected in the polarity identification process.Also a Negative Words have been handled, the negation word usually reverses the polarity of the word in the sentence.Our proposed technique recognizes Negation words such as " " and then reverses the opinion orientation.For example, the sentence, " " conforms to the negation word " " then it is assigned the negative orientation, although " " is a positive word.

E. Opinion Mining
The global polarity of a review is obtained by determining the majority of polarized features which our system already identified.If the major features are polarized as positive, then the global polarity is considered positive.Likewise, if the major features are polarized as negative, then it considered as negative.Otherwise the global polarity is considered as neutral.

A. Experiment setup
Since there was no tagged data in Arabic hotel domain, we collected the test reviews manually from a variety of related websites which have relevant to hotel domain.We crawled these reviews from different countries and three websites (www.tripadvisor.com),(http://www.booking.com)and (http://www.agoda.com) to find data related with the hotel domain.The total numbers of reviews that have been used are 890 reviews, 690 reviews were used for the sake of ontology extension and the rest 200 reviews, half of them are negative and the rest are positive were used for experiments.In order to measure the effectivnesss of the proposed model.
We manually tagged the reviews to collect the baseline results used to evaluate our proposed method.The details of the manual tagging are described as follows: The reviews have been shown to three educated annotators.They read the reviews and identified all features and associated polarities.According to features polarities they are classified into three categories: positive (1), negative (-1) and neutral (0).An example of the manual tagging is shown in Table II.Finally, the manual results and the output produced by our system are compared with each other.The following experiments have been conducted: 1) Experiment1 measuring the feature identification accuracy: The aim of this experiment is to measure the accuracy of the correctly identified features (feature accuracy) using the manually tagged reviews.We take the labeled features as baseline in contrast to the results from the proposed method which described in section IV-B to obtain the number of features correctly identified feature accuracy.The results of this experiment are shown in Table III.
2) Experiment 2 measuring the Feature Polarity Identification and global polarity accuracy: During this experiment, two levels of accuracy measurements were tackled.On the first level, feature polarity identification where we applied different value of N-GRAM to identify correct polarity to correct feature.While the second level aims to measure accuracy of complete review.The three N-GRAM methods, which explained before, are used to compare the manual results and the output produced to obtain the number of features correctly classified (feature polarity identification accuracy) and the review global polarity (opinion mining accuracy).Different values for the N-GRAM parameter (between 1 and 4) have been used to discover the best result as presented in Table IV.

B. Discussion
The results are shown in Table IV have been divided into two different categories: the average accuracy of both feature polarity identification and opinion mining classification of the entire document for both positive and negative reviews.The results of the N-GRAM Around method for the opinion mining are shown in Table IV.As shown in the table, the best average success rate for the feature polarity identification process is obtained with N-GRAM = 4 with an accuracy of 72% in www.ijacsa.thesai.orgTable IV also shows the results obtained when using the N-GRAM After method.At first sight it will be noted that these results are worse than those obtained with the N-GRAM Around method.Here, the best average success rate for the feature polarity identification process is also obtained with N-GRAM = 4 with an accuracy of 66% in the Positive Reviews and 59% in the Negative Reviews.This means that the feature based polarity calculated using the next 4 words of the feature identified obtains good results.The best results for Opinion mining are obtained with N-GRAM=4 with an accuracy of 99% in the Positive Reviews and 85% in the Negative Reviews.
The results obtained with N-GRAM Before method are worse than those obtained with the "N-GRAM After method.More concretely, the best average success rate for the feature polarity identification process is also obtained with N-GRAM = 4 with a maximum accuracy of 50% in the Positive Reviews and 44% in the Negative Reviews.This means that the feature based polarity calculated using 4 words before of the feature identified obtains good results.The best results for Opinion mining are obtained with N-GRAM=4 with an accuracy of 86% in the Positive Reviews and 59% in the Negative Reviews.
Of the three proposed methods, the N-GRAM Around method is that which achieves the best results for both the feature polarity identification process and the Opining mining of users opinions in the Arabic language, obtaining accuracies of 67.5% and 95.5% in all Reviews, respectively.

VI. CONCLUSION AND FUTURE WORK
Arabic opinion mining is a challenging problem.It is concerned with analyzing the opinions that appear in users reviews, and determine whether these opinions are positive or negative.In this paper, a new methodology is proposed for feature-based Arabic opinion Mining.This approach is going through five different stages: Ontology and lexicon Development, Semantic Feature Identification, Polarity Identification, Feature Polarity Identification and Opinion Mining.
The main contributions of this work are: First, an ontology and lexicon development.Second, ontology-based feature identification, finally, three different configurable N-GRAM methods for feature polarity identification are proposed.These methods can be configured with different parameters to obtain the best polarity identification approach.
In spite of all the advantages and possibilities of the proposed method, it has several limitations that could be improved in the future.First, the proposed approach can be improved by incorporating opinion mining techniques based on machine learning.Second, since the current ontology is static and knowledge represented in it is not enough, it would be interesting to construct a semi-automatic ontology based on ontology learning techniques from the users reviews.Finally, we plan to apply the proposed approach in another domain such as product reviews.

TABLE I :
Example of Feature Identification D. Feature Polarity Identification (Tuple Generation)

TABLE II :
Example of Manual Tagging

TABLE IV :
Feature Polarity Identification and Opinion Mining accuracy