TWITTER SENTIMENT ANALYSIS USING NATURAL LANGUAGE PROCESSING

  • ABSTRACT

    The modern problems of twitter users these days are becoming alarming. One of which is the ability for twitter to analyze sentiments of comments on post (tweets) in order to determine its category. Sentiment analysis is a type of analysis techniques which analyses text and automatically detect polarity of those text. Though users can analyze sentiments on post, it becomes however too difficult to go through thousands of comments. Hence the user is unable to determine the polarity of a tweet when the number of comments becomes high. For this reason, it is seen a necessity to develop a system that will be able to analyze high number of comments on tweets within short period of time. The research work titled “Twitter sentiment analysis using natural language processing“ aims at developing such a system that will assuage the existing problem of tweet analysis by twitter users. Structured System Analysis and Design Methodology (SSADM) was used for the development of the proposed system. Development tools used for developing the proposed system includes; HTML for structuring the web interface, CSS for designing the structured interface, Javascript for user interface friendliness, PHP for the business logic, and MySQL for the database. This research work is only focused on building a web based software that will be able to analyze twitter post based on their comments, and determine whether it is negative, positive, or neutral. This is achieved using English language as the processed language.

    CHAPTER ONE

    INTRODUCTION

    1.1       Background of the Study

    The age of Internet has changed the way people express their views. It is now done through blog posts, online discussion forums, product review websites etc.

    Sentiment analysis (also known as opinion mining refers to the use of natural language processing, text analysis and computational linguistics extract subjective information in source materials. In other words, we can say Sentiment analysis is a type of natural language processing for tracking the mood of the public about a particular product or topic. The major task is to identify and extract sentiment in given string. It takes an input string and assigns a sentiment rating in the range [-1 to 1] (very negative to very positive). It involves in building a system to collect and examine opinions about the product made in blog posts, comments, reviews or tweets. Sentiment analysis can be useful in several ways. For example, in marketing it helps in judging the success of an ad campaign or new product launch, determine which versions of a product or service are popular and even identify which demographics like or dislike particular features (Neha et al, 2017).

    Social media websites have evolved to become a source of varied kind of information. This is due to its nature whereby people post real time messages about their opinions on a variety of topics, discuss current issues, complain, and express positive sentiment for products they use in daily life. In fact, companies manufacturing such products have started to poll these social media websites to get a sense of general sentiment for their product. Many times these companies study user reactions and reply to users on social media. One challenge is to build technology to detect and summarize an overall sentiment (Apoorv et al, 2010).

    When someone wants to buy a product, they will look up its reviews online before taking a decision. The amount of user generated content is too large for a normal user to analyse. So, to automate this, various sentiment analysis techniques are used. Sentiment analysis, or opinion mining, aims at user’s attitude and opinions by investigating, analysing and extracting subjective texts involving user’s opinions, preferences and sentiment. This is used particularly in data mining field for social media with many applications including product ratings and feedback analysis and customer decision making etc. Presence of emoticons, slang words and misspellings in tweets forced to have a pre-processing step before feature extraction.

    There are different feature extraction methods for collecting relevant features from text which can be applied to tweets also. But the feature extraction is to be done in two phases to extract relevant features. In the first phase, twitter specific features are extracted. Then these features are removed from the tweets to create normal text. Again, feature extraction is done to get more features. This is the idea used in several research papers to generate an efficient feature vector for analysing twitter sentiment. Since no standard dataset is available for twitter posts of electronic devices, researchers created dataset by collecting tweets for a certain period. By doing sentiment analysis on a specific domain, it is possible to identify the influence of domain information in choosing a feature vector (Sayali et al, 2018).

    Twitter is a “micro-blogging” social networking website that has a large and rapidly growing user base. Those who use twitter can write short 140 characters long or less updates called “tweets‟. “Tweets” are seen by those who “follow‟ the person who “tweeted‟. Due to the growing popularity of the website, twitter can provide a rich bank of data in the form of harvested “tweets”. Twitter by its very nature, allows people to convey their opinions and thought openly about whatever topic, discussion point or product that they are interested in sharing their opinion about. Therefore, twitter is a good medium to search for potentially interesting trends regarding prominent topic in the news or popular culture. Sentiment analysis refers to the use of natural language processing, text analysis and computational linguistics to identify and extract subjective information in source material.

    The value of twitter in recent year has increase in potential groups and curious internet user alike has started to assess the public’s general sentiment, their products and services from twitter posts. Sentiment analysis provides a mean of tracking opinions and attitudes on the web and determines if they are positively, negatively or neutrally received by the public (Sarang, 2017).

    It is best to show the result of sentiment analysis by combining the Lexicon Based Sentiment Analysis and the Machine Learning based Sentiment Analysis approaches. Usually Lexicon based approach perform entity level sentiment analysis and it gives high precision but low recall. To improve the performance measurements such as Recall, F-Score, Accuracy. Machine learning algorithm is trained using the polarity given by lexicon based approach. The hypothesis is that the accuracy given by such approach is to get increase with increase in size of training data (Thakare et al, 2017).

    1.2       Statement of the Problem

    Social Media websites such as Twitter, Facebook, Blogs, etc. have become important platforms where users can share their valuable opinion on certain topics. These opinions are often almost impossible for human to analyze because of their large amount available on a particular topic. This has posed to be a problem to an efficient and accurate sentiment analysis. Hence this, various opportunities and challenges arise to actively use various techniques to extract and understand the opinion of others. The research work Twitter Sentiment Analysis Using Natural Language Processing will aid in the extraction of twitter users opinion in tweets for analytical purposes in other to determine whether it is negative, positive, or neutral.

    1.3       Aim of the Study

    The aim of this study is to design and implement a system that will aid in the analysis of sentiments (opinion mining) using natural language in twitter.

    1.4       Objectives of the Study

    This study will aid in the realization of the following objectives:

    1. To find the sentiment of tweets posted by the followers of a person (user) on his/her post.
    2. To find the sentiment of each word and the final sentiment of tweets posted in a post.
    3. To classify the result of an analysis into three (3) major classifications which are positive post, neutral post, and negative post.
    4. To review the impact of sentiment analyzing system in social media websites.

    1.5       Significance of the Study

    This research work will note only be beneficial to social media owners, but also to business owners and potential customers of a particular product in the following ways:

    1. It will aid enterprises in determining the best marketing strategy for a product.
    2. It will aid improve customer services.
    3. It will aid improve on the campaign successes of an enterprise.
    4. It will aid business owners know the opinion of customers towards a product/service, hence improving the product quality.
    5. It will serve as a means of customers to know the actual quality of what they are about to purchase through other customer’s opinion.

     

     

    1.6       Scope of the Study

    The scope of this study is to design and implement a sentiment analyser for twitter users using natural language processing. The system will search through opinion of users on a particular post and determine whether it is a negative, positive, or neutral post. This study will strictly be limited to the analysis of opinion on posts using natural language processing.

    1.7       Definition of Terms

    1. Sentiment:     A general thought, feeling, or sense.
    2. Analysis:       Decomposition into components in order to study (a complex thing, concept, theory etc.).
    3. Sentiment Analysis: The use of computers to process natural language in an attempt to identify and extract information about the writer’s affective state.
    4. Natural Language:  Any human language that has evolved naturally in a community, usually in contrast to computer programming languages or to artificially constructed languages.
    5. Processing:                The act of taking something through a set of prescribed procedures.
    6. Natural Language Processing:       A field computer science and linguistics concerned with the interactions between computers and human (natural) languages.
    7. Micro-Blogging:       An online broadcast medium that exists as a specific form of blogging.
    8. Blog:              A website that allows users to reflect, share opinions, and discus various topics in the form of an online journal, sometimes letting readers comment on posts.
    9. Blogging:       The design and editing of a blog.
    10. Social Media:            Interactive forms of media that allow users to interact with and publish to each other, generally by means of the internet.

    SOFTWARE SCREENSHOTS

    Research: ₦5000 | Source Code: ₦15000 Download this Project

⚠️ Disclaimer: The documentation and software provided on this platform are for guidance purposes only. They are not a replacement for proper academic research and should be used only as reference guides.