Feature-based opinion mining and ranking


The proliferation of blogs and social networks presents a new set of challenges and
opportunities in the way information is searched and retrieved. Even though facts still
play a very important role when information is sought on a topic, opinions have become
increasingly important as well. Opinions expressed in blogs and social networks are
playing an important role influencing everything from the products people buy to the
presidential candidate they support. Thus, there is a need for a new type of search engine
which will not only retrieve facts, but will also enable the retrieval of opinions. Such a
search engine can be used in a number of diverse applications like product reviews to
aggregating opinions on a political candidate or issue. Enterprises can also use such an
engine to determine how users perceive their products and how they stand with respect
to competition. This paper presents an algorithm which not only analyzes the overall
sentiment of a document/review, but also identifies the semantic orientation of specific
components of the review that lead to a particular sentiment. The algorithm is integrated
in an opinion search engine which presents results to a query along with their overall tone
and a summary of sentiments of the most important features.

Opinion Mining and Social Networks: a Promising Match Project


Opinion Mining and Social Networks:
a Promising Match
Abstract—In this paper we discuss the role and importance of social networks as preferred environments for opinion mining and sentiment analysis especially. We begin by briefly describing selected properties of social networks that are relevant with respect to opinion mining and we outline the general relationships between the two disciplines. We present the related work and provide basic definitions used in opinion mining. Then, we introduce our original method of opinion classification and we test the presented algorithm on real world datasets acquired from popular Polish social networks, reporting on the results. The  results are promising and soundly support the main thesis of the paper, namely, that social networks exhibit properties that make them very suitable for opinion mining activities.

Keywords: opinion mining, sentiment analysis, social
computing, social networks

I. INTRODUCTION
Graphs and networks certainly rank among one of the most popular data representation models due to their universal applicability to various application domains. The need to analyze and mine interesting knowledge from graph and network structures has been long recognized, but only recently the advances in information systems have enabled the analysis of graph structures at huge scales. Analysis of graph and network structures gained new momentum with the advent of social networks. While the analysis of social networks has been a field of intensive research, particularly in the domains of social sciences and psychology, economy or chemistry, it is the emergence of huge social networking services over the Web that
spawned the research into large-scale structural properties of social networks.. Social networks exhibit a very clear community structure. Such community structure partially stems from objective limitations (e.g., internal organizational structure of a company can be closely represented by the ties within a particular social network) or, to some extent, may result from subjective user actions and activities (e.g., bonding with other people who share one’s interests and hobbies). Unveiling the true structure of a social network and understanding of communities forming within the network is the key factor in understanding what the future structure of network will be. The main goal of social network analysis is the study of structural properties of networks. Structural analysis of the social network investigates the properties of individual vertices and the global properties of the network as a whole. It answers two basic classes of questions about the network: what is the structural position of any given individual node and what can be said about groups (communities) forming within the network. The main measurement of a node’s social power (also called member’s prestige) is centrality, which allows to determine node’s relative and absolute importance in the network. There are several methods to determine node’s centrality, such as the degree centrality (the number of links that connect to a given node), the betweenness centrality (the number of shortest paths between any pair of nodes in the network that traverse a given node) or the closeness centrality (the mean of shortest paths lengths to other nodes in the network). From the point of view of opinion mining the ability to assess the node’s prestige is essential as it allows to differentiate between opinions of different individuals. More specifically, node’s prestige allows to assign different weights to opinions and associate more importance to opinions expressed by prominent individuals. Another factor that is often considered in opinion mining is the identification of influential individuals. An influential individual does not have to be necessarily characterized with high degree centrality to influence the average opinion within the network. Usually, such individuals are characterized by high betweenness
centrality, impacting the dissemination of opinion rather than forming the opinion. For instance, an individual with high betweenness centrality can stop a negative opinion from spreading through the network, or, on the other hand, she can amplify the opinion. Due to psychological reasons humans tend to form their opinions in such way that the opinions conform with the norm established within a given social group. Thus,
when mining opinions one has to take into consideration the influence of the context in which the opinion is forming, i.e. the social milieu of an individual. Social networks are highly effective in bolstering group formation


RELATED WORK
Literature related to social network analysis is extremely abundant and rich. The first proposals toperform social network analysis originated in the domains of social sciences and psychology [12] or economy [13]. Interestingly, much of this research rephrased what has been previously discussed in physics within the context of complex systems [14]. The most thorough summary of social network analysis topics, models and algorithms can be found in [17]. Opinion mining is a relatively new domain spanning between the fields of data mining, machine learning and natural language processing. Sentiment Analysis methods can be regarded both as a supervised [1][5] and an unsupervised learning methods [6][15], and an information retrieval methods [16][18]. Many works concerning
opinion mining present conceptions based on dealing with text documents modelled as sets of words [1] or vectors, where dimensions represents words and values are weights of words in the document [2]. In the vast majority of sentiment analysis methods, information about connotations of a word with a positive or a negative class is used to calculate document’s
semantic orientation γ



where 􀝐􀯜 is the i-th term of the document d, |􀝀| is
the number of terms appearing in the document d, 􀜥􀯉 and
􀜥􀯇 are positive and negative classes, respectively, and
score() is a function that assigns positive or negative
values to terms, depending on their relationship with
the respective class. Semantic orientations of individual terms are aggregated using a dictionary method [5]. This method uses two small sets of manually identified positive and negative adjectives, which serve as seed sets. New terms are subsequently added to these sets if they are linked by semantically loaded conjunctions such as “and”, “but”, “however”, etc. Some opinion mining algorithms use the pointwise mutual information measure to determine semantic orientation of a term [3][4][6]. In this case semantic orientation of a term is inferred from the association between the term and a word (or a set of words) assigned unambiguously to only one class (positive or negative),
e.g. excellent and poor. The pointwise mutual information
of the term t and the word w is defined as



OUR APPROACH
The method proposed in this paper for determining term’s semantic orientation is a variant of the method used in [1]. The drawback of the original method is that it assigns maximum or minimum value to all terms if they occur in only one class, regardless of the number of occurrences. Therefore, we have proposed an alternative way of calculating the semantic orientation of a term. Our method is based on the ratio of term occurence frequency in documents assigned to positive and negative classes. According to our approach the scoring function for assigning positive and negative scores to terms becomes

Example: Let us compute token polarity evaluation in
the way presented above. Let’s assume training set
contains 1000 positive and 200 negative examples, token T
occured 9 times in positive examples, and 3 times in
negative examples.


Software and hardware requirements

4.2.2.1 Development Environment

·       Operating System: Windows 2000 Pro\NT\98\xp\7
The system will be built on windows compatible environment. The application will be web based using Java technology
·       Web Server: 
IIS – Internet Information Services
·       Server side Application Software:  Active Server Pages.NET (ASP.NET)
·       Client Side Application Software: Java Script, HTML
·       Data Base:  SQL Server 2000 \2005
The system requires SQL Server as a database, however the system will be ODBC complaint to work on any standard database.
·       Client Browsers:
Internet Explorer 5.0 or Netscape Navigator 4.7
The system requires Internet Explorer or Netscape Navigator browser for client side.
·       Hardware: Pentium PCs with 128 MB RAM/ 20 GB HDD.
4.2.2.2 Production Environment

·       Operating System: Windows 2000 Pro/NT/98 /xp/7 
The system will be built on windows compatible environment. The application will be web based using ASP.NET technology.
·       Web Server: 
IIS – Internet Information Services.
·       Server side Application Software: ASP.NET
Client Side Application Software: Java Script, HTML.
·       Data Base: SQL Server 2000 \2005
The system requires SQL Server as a database, however the system will be ODBC complaint to work on any standard database.

·       Client Browsers:
Internet Explorer 4.0 and above
        Netscape Navigator 4.0 and above
The system requires Internet Explorer or Netscape Navigator browser for client side.
·       Hardware: Pentium PCs with 128 MB RAM/ 20 GB HDD.


An Automatic Answering System with Template Matching for Natural Language Questions Project


An Automatic Answering System with Template
Matching for Natural Language Questions

Abstract
Using computers to answer natural language questions is an interesting and challenging problem. Generally such problems are handled under two categories: open domain problems and close domain problems. This paper presents a system that attempts to solve close domain problems.
Typically, in a close domain, answers to questions are not available in the public domain and therefore they cannot be searched  using a search engine. Hence answers have to be stored in a database by a domain expert. Then, the challenge is to understand the natural language question so that the solution could be matched to the respective answer in the database. We use a template matching technique to perform this matching. In addition, given that our target is to use this system with non-native English speakers, we developed a method to overcome the mismatches we might encounter due to spelling mistakes. The system is developed such that the questions can be asked using short messages from a mobile phone and therefore the system is designed to understand SMS language in addition to English. One of the main contributions of this paper is the outcome presented of a deployment of this system in a real environment.

KeywordsFAQ, Answering System, SMS, Template Matching

Introduction
EVELOPING mechanisms for using computers to answer user questions is becoming an interesting problem with the increased use of computers. Such mechanisms allow users to ask questions in a natural language and give a  concise and accurate answer. Understanding user questions in natural languages requires Natural Language Processing (NLP). Being an active area of research, NLP plays a big role in the ICT and Question Answering (QA) systems.
Natural language processing is the computerized approach to analyzing text based on both a set of theories and a set of technologies. It will become important to be able to ask queries and obtain answers, using natural language (NL) expressions, rather than the keyword based retrieval mechanisms. The QA system can better satisfy the needs of users as they will provide an accurate, quicker, convenient and effective way of giving answers to user questions. The approach we have adopted in this project is an automated FAQ (Frequently Asked Question) answering system that replies with pre-stored answers to user questions asked in ordinary English, rather than keyword or syntax based retrieval mechanisms. This is achieved using a template matching technique with some other mechanisms
like disemvoweling, matching synonyms, etc.


Related Work

         Q&A system research received considerable attention from the research community through Text Retrieval Conference Q&A track since 1999.
         The original aim of the track is to systematically evaluate both academic and commercial Q&A systems. Maybury has discussed the characteristics of Q&A systems and resources needed to develop and evaluate such systems.
          Main approaches in Q&A systems could be found in which template based approach discussed in detail.
         Although, most Q&A systems are based on Web environments, SMS has also been used as an environment in contexts such as in learning and agriculture.


Our Approach
Main modules:
         pre-processing,
         question template matching
         Answering
         SMS Abbreviation
         Stop Word
         Ward Parser
         Synonyms Matcher
         Security
         disemvoweling

Architecture

In this section we describe the architecture of our system. The overall architecture of the system can be subdivided into three main modules:
(1) pre-processing,
(2) question template matching, and
(3) answering.


A. Pre-Processing Module
Pre-processing module mainly consists of three operations: (1) converting SMS abbreviations into general English words, (2) removing stop words, and (3) removing vowels. Since the system is expected to process texts with both natural and SMS languages it is necessary to replace the SMS abbreviations with the corresponding English words before processing user questions further. This is done by referring to pre-stored frequently used SMS abbreviations. Stop words are the words that add no effect to the meaning of a sentence even if they are removed.
Removing stop words is done to increase the effectiveness of the system by saving time and disk space.
Examples of stop words are the, a, and, etc. Next step in this module is to remove vowels from the text to handle spelling
mistakes. This process is called disemvoweling which will be discussed in details in coming sections.


B. Question-Template Matching Module
The pre-processed text is matched against each and every pre stored template until it finds the best matched template with the received text. In order to do this, templates are created according to a specific syntax and the details are described in section IV. Further in this module, words that are considered to have synonyms are referred in a synonym file. This synonym file can be modified according to the relevant domain and are updated from a standard database such as WordNet [6]. It is worth noting that the templates here are for questions and not for answers. The main target of this system is to identify the closest template that matches the question we have received from the user.


C. Answering Module
Since each and every template representing a question are pre stored in a database with its answer, just when the best matched template for the question is found, the corresponding answer will be returned to the end user.

Algorithms
         Disemvowelling
         SMS Abbreviation Replace
         Stop Words
         Template Matching
         MD5
         Top-down parser


Software and hardware requirements

         Hardware :
         GSM Modem

         Software :
         JAVA  jdk 1.6
         Apache Tomcat 6
         MYSQL 5
         NetBeans 7.0