Projects 1920 C 5
Projects 1920 C 5
Submitted by
BONAFIDE CERTIFICATE
This is to certify that the project report entitled “ANALYSIS OF STUDENT FEEDBACK ON
FACULTY TEACHING USING SENTIMENT ANALYSIS AND NLP TECHNIUQES”
submitted by M.Ravi Varma (316126510160), R.Venkatesh (316126510172), S.V.Pavan
(316126510176), P.Sai Teja (316126510183) in partial fulfillment of the requirements for the
award of the degree of Bachelor of Technology in Computer Science and Engineering of Anil
Neerukonda Institute of technology and sciences (A), Visakhapatnam is a record of bonafide work
carried out under my guidance and supervision.
SIGNATURE SIGNATURE
DR.R.SIVARANJINI S.JOSHUA JOHNSON
HEAD OF THE DEPARTMENT ASSISTANT PROFESSOR
COMPUTER SCIENCE ENGINEERING COMPUTER SCIENCE ENGINEERING
ANIL NEERUKONDA INSTITUTE OF ANIL NEERUKONDA INSTITUTE OF
TECHNOLOGY&SCIENCES TECHNOLOGY&SCIENCES
(AUTONOMOUS) (AUTONOMOUS)
DECLARATION
This is to certify that the project work entitled “Analysis of Student Feedback on Faculty
Teaching Using Sentiment Analysis and NLP Techniques” is a bonafide work carried
out by M.Ravi Varma, R.Venkatesh, S.V.Pavan, P.Sai Teja as a part of B.TECH final
year 2nd semester of Computer science & engineering of ANITS, Visakhapatnam during the
year 2016-2020.
We, M.Ravi Varma, R.Venkatesh, S.V.Pavan, P.Sai Teja of final semester B.TECH ,in
the department of Computer Science Engineering from ANITS, Visakhapatnam, hereby declare
that the project work entitled “Analysis of Student Feedback on Faculty Teaching
Using Sentiment Analysis and NLP Techniques” is carried out by us and submitted
in partial fulfilment of the requirements for the award of Bachelor of Technology in Computer
Science & Engineering , under Anil Neerukonda Institute Of Technology & Sciences during
the academic year 2016-2020 and has not been submitted to any other university for the award
of any kind of degree.
An endeavor over a long period can be advice and support of many well-wishers. We take
this opportunity to express our gratitude and appreciation to all of them. We owe our tributes
to Dr.R.Sivaranjani, Head of the Department, Computer Science & Engineering for her
valuable support and guidance during the period of project implementation.
We wish to express our sincere thanks and gratitude to our project guide S.Joshua Johnson,
Assistant Professor, Department of Computer Science And Engineering, ANITS for their
simulating discussions, in analyzing problems associated with our project work and for
guiding us throughout the project. Project meeting were highly informative. We express our
sincere thanks for the encouragement, untiring guidance and the confidence they had shown in
us. We are immensely indebted for their valuable guidance throughout our project. We also
thank our B.Tech project coordinator B.Mahesh, for his support and encouragement.
We also thank all the staff members of Computer Science & Engineering department
for their valuable advice. We also thank Principal and supporting staff for providing
resources as and when required.
Key words: Opinion mining, Sentiment Analysis, Teaching Evaluation, Lexicon based
approach, corpus based approach, Dictionary based approach, Qualitative information,
quantitative information, Afinn lexicon.
CONTENTS
ABSTRACT Vi
LIST OF FIGURES viii
LIST OF TABLES ix
LIST OF ABBREVATIONS x
CHAPTER 1 INTRODUCTION 1
1.1 Supervised methods 2
1.2 Unsupervised methods 3
1.3 Semi Supervised methods 6
1.4 Problem Statement 7
CHAPTER 2 LITERATURE SURVEY
2.1 Introduction 8
2.2 Existing methods for research papers 8
CHAPTER 3 SENTIMENT ANALYSIS PROCESS
3.1 Lexicon based approach 12
3.1.1 Dictionary based approach 13
3.1.2 Corpus based approach 14
3.2 Machine Learning based approach 15
3.3 Hybrid approach 16
CHAPTER 4 METHODOLOGY
4.1 Proposed System 17
4.2 Analyzing sentiment in student feedback 19
4.2.1 Liu Lexicon 20
4.2.2 Afinn Lexicon 20
4.3 System Architecture 22
4.3.1 Preprocessing 23
4.3.2 Opinion words identification 23
4.3.3 Assign polarity values 24
4.3.4 Total sentiment score 24
4.3.5 Calculate average polarity value 25
REFERENCES 72
LIST OF FIGURES
Sentimental analysis is a method for identifying the sentiment expressed in texts. The need of
Sentiment Analysis of text has gained more importance in today’s situations faced by the
people of the world. Generally, there are three approaches in sentimental analysis. They are
lexicon based, machine learning and hybrid approach. In machine learning technique, it uses
unsupervised learning or supervised learning. Classification problem can be carried out using
several algorithms like support vector machine, naive bayes, random forest. In lexicon based
method sentiment polarity of the textual content is detected using sentiment lexicon. A lexicon
is a list of words with associated sentiment polarity Sentiment analysis is a process for tracking
the mood of the people about any particular topic by review. In general, opinion may be the
result of people’s personal feelings, beliefs, sentiments and desires etc. This research work
focus on students comments Analyzing students comments using sentiment analysis
approaches can classify the students positive or negative feelings. Student’s feedback can
highlight various issues students may have with a lecture. Sometimes students do not
understand what the lecturer is trying to explain, thus by providing feedbacks, students can
indicate this to the lecturer. The Input we take is qualitative data rather than quantitative data.
The processing of qualitative data analysis is very important and it can enhance the teacher
evaluation effectiveness. Evaluating performance of faculty members is becoming an essential
component of an education management system. It not only helps in improving the course
contents and quality but is also often used during the annual appraisal process of faculty
members. The evaluation is typically collected at the end of each course on a set of question
which are answered. The evaluation form, however, also provides room for open feedback
which typically is not included in the performance evaluation/appraisal due to lack of
automated text analytics methods. The textual data may contain useful insight about subject
knowledge of the teacher, regularity, and presentation skills and may also provide suggestions
to improve the teaching of quality. Students provide feedback in quantitative ratings and
qualitative comments related to preparation, contents, delivery methods, punctual, skills,
appreciation, and learning experience. The delivery methods and preparation component refers
1
to instructor’s interaction, delivery style, ability to motivate students, out of class support, etc.
The content refers to course details such as concepts, lecture notes, labs, exams, projects, etc.
The preparation refers to student’s learning experience such as understanding concepts,
developing skills, applying acquired skills, etc. The paper correction refers to correction of
mistakes and providing solutions to overcome it. The punctual refers to the class timing and
assignment or record submission. The appreciation refers to the comments given when
something is done perfectly. Analyzing and evaluating this qualitative data helps us to make
better sense of student feedback on instruction and curriculum. Recent methods for analyzing
student course evaluations are manual and it mainly focuses on the quantitative feedback. It
does not support for deeper analysis. This paper focus on providing qualitative and quantitative
feedback to analyze and provide better teaching to improve the student’s performance.
Supervised Learning is one of the types of Sentiment Analysis. Supervised learning as the
name indicates the presence of a supervisor as a teacher. Basically supervised learning is a
learning in which we teach or train the machine using data which is well labeled that means
some data is already tagged with the correct answer. After that, the machine is provided with a
new set of examples (data) so that supervised learning algorithm analyses the training data(set
of training examples) and produces a correct outcome from labeled data. The increasing
availability of labelled data has played an important role in the application of supervised
machine learning methods to sentiment analysis. These methods represent the labelled data in
the form of a set of features. The features are then used to learn a function for classification of
unseen data. In this dissertation, I approach the problem of sentiment analysis as a
classification task.
Supervised learning can also be performed using multiple classifiers, particularly if the labeling
scheme allows for hierarchical relations. As described earlier, one example of this is the work
by Pang and Lee. They represented sentences in the given document as graph nodes and
calculated the minimal cut on that graph to identify the subjective sentences. Afterwards,
standard machine learning classification algorithms (NB and SVMs) were applied only on the
extracted subjective sentences to predict their polarity. On a balanced polarity corpus of 2,000
2
reviews, the minimum-cut framework resulted in an accuracy of 86.4%, which represents a
statistically significant improvement in polarity classification accuracy over previous attempts.
Supervised learning with dependency trees was also used by Joshi and Penstein-Rose (2009),
who worked on solving the problem of identifying opinions from product reviews. Their
method was to transform syntactic dependency relation triplets into features for classification.
The motivation was to capture the general relationship between opinionated phrases by
‘backing off’ to the head word in the triplet. For instance, consider the phrases a great camera
and a great mp3 player with the relations {amod, camera, great} and {amod,player,great}.
Here, backing off the head words (camera and player) to their POS tags results in a more
generalised form {amod,NN,great}, which makes a better indicator for opinion extraction. A
collection of 2,200 reviews from the extended version of the Amazon.com/CNet.com product
review corpus3 was used, 1,053 of which were subjective. With 11-fold cross-validation in an
SVM learner, their method of backing off the head word to the POS achieved approximately
68% accuracy. For obtaining a balanced corpus, 700 documents of each label were selected. N-
grams, part-of-speech (POS) tags and their combinations were used as features, and three-fold
cross validation was used. Their best system achieved an accuracy of 82.9% when using the
unigram presence feature set with SVMs. It should be noted that the corpus used in this work
was balanced artificially, thus avoiding the problem of data sparsity for under-represented
classes.
Next one, Unsupervised Learning, It is the training of machine using information that is neither
classified nor labeled and allowing the algorithm to act on that information without guidance.
Here the task of machine is to group unsorted information according to similarities, patterns
and differences without any prior training of data.
Unlike supervised learning, no teacher is provided that means no training will be given to the
machine. Therefore, machine is restricted to find the hidden structure in unlabeled data by our-
self.
3
Another common approach for the detection of sentiment is to develop a sentiment lexicon in
an unsupervised way, and then to classify the input text as being positive, negative or neutral
using some scoring function based on that lexicon.
The simplest way to explore the sentiment attributed to an object is perhaps to examine the
adjectives used to describe that object. Hatzivassiloglou and McKeown (1997) presented an
automatic method to classify positive or negative semantic orientation information for
adjectives. They proposed that conjunctions between adjectives provide indirect information
about orientation. For instance, most adjectives joined by the word and have similar orientation
(fair and legitimate) and the ones joined by but have different orientation (simple but popular).
They extracted conjunctions of adjectives from the Wall Street Journal corpus along with their
morphological relations. This information was used in a log-linear regression model to
determine if each pair of conjoined adjectives was of the same or different orientation.
A graph was then obtained where the vertices were the adjectives and the edges represented the
orientation link between them. This graph was partitioned into two subsets using clustering.
Since these clusters were not labelled, some criteria was needed to distinguish between the
positive and negative one. Using the premises that the unmarked member in a pair of antonyms
is almost always positive (Lehrer, 1985), and that the unmarked member is likely to be the
most frequent term (Hatzivassiloglou and McKeown, 1995), the average frequencies in each
subset were compared and the subset with the higher value was labelled as positive. Their best
configuration achieved a classification.
Turney extracted phrases containing adjectives and adverbs by using POS tag patterns. He then
estimated the PMI of each phrase combined with one of the two target phrases, poor and
excellent, using the hit count reported by the AltaVista search engine4 with the NEAR
operator. The semantic orientation of a phrase was calculated by subtracting the PMI between
that phrase and the word poor from the PMI between that phrase and the word excellent.
Each review was then classified as positive or negative based on the sign of the average
semantic orientation.
The system was tested on 410 reviews collected from epinions.com on four different domains.
The accuracy achieved ranged from 66% to 84% over these domains, with an average of 74%.
4
A similar approach was taken by Taboada and Grieve (2004), who used information about the
position of the text in a document to expand the lexicon. They assigned more weight to certain
parts of the text where they believed most subjective content was concentrated. Using the
AltaVista search engine, this method achieved an overall accuracy of 65%.
Another way to increase the number of items in the lexicon is to use bootstrapping. The general
approach is to start with a limited number of polar phrases in the lexicon and to extract similar
phrases from unlabelled data. These extracted phrases are then added to the polar lexicon and
the process is repeated until a stopping criterion is reached. Riloff and Wiebe’s (2003)
bootstrapping algorithm learns linguistically rich patterns for subjective expressions. For
example, the pattern <subj> was satisfied will match all sentences with the passive form of the
verb satisfied. High precision classifiers trained on known subjective vocabulary were used to
automatically identify objective and subjective sentences in unannotated text. The labelled
sentences from these classifiers were fed to an extraction pattern learner. The remaining
unlabelled sentences were filtered through a separate pattern-based subjective sentence
classifier that used the extraction pattern previously learned. To close the bootstrap loop, the
output of the pattern-based classifier was returned back to the extraction pattern learner and the
extracted patterns were used again in the initial high-precision classifiers. This system was
used on a balanced corpus of roughly 34,000 sentences and achieved a precision of 0.902 and a
recall of 0.401.
Exploring more lexical features in a later work, Wiebe and Riloff (2005) developed a Naive
Bayes (NB) classifier using data extracted by a pattern learner. This pattern learner was seeded
with known subjective data. Additional features for this NB classifier included strong and
weak subjective clues from a pre-existing rule-based system, POS tags, pronouns, modals,
adjectives, cardinal number data and adjectives. The classifier was used to classify the
unlabelled text corpus, and the most confidently classified sentences were added to the training
set for another cycle. They trained the system for two cycles. Using test corpus of 9,289
sentences, 5,104 of which were subjective, they reported up to 0.863 subjective recalls with a
subjective precision of 0.713 (corresponding to 73.4% accuracy).
5
1.3. Semi Supervised Method:
Semi supervised learning is an approach to machine learning that combines a small amount of
labeled data with a large amount of unlabeled data during training. Semi-supervised learning
falls between unsupervised learning (with no labeled training data) and supervised learning (with
only labeled training data).
Unlabeled data, when used in conjunction with a small amount of labeled data, can produce
considerable improvement in learning accuracy. The acquisition of labeled data for a learning
problem often requires a skilled human agent (e.g. to transcribe an audio segment) or a physical
experiment (e.g. determining the 3D structure of a protein or determining whether there is oil at a
particular location). The cost associated with the labeling process thus may render large, fully
labeled training sets infeasible, whereas acquisition of unlabeled data is relatively inexpensive. In
such situations, semi-supervised learning can be of great practical value. Semi-supervised
learning is also of theoretical interest in machine learning and as a model for human learning.
A set of independently identically disturbuted examples with corresponding labels and unlabeled
examples are processed. Semi-supervised learning combines this information to surpass the
classification performance that can be obtained either by discarding the unlabeled data and doing
supervised learning or by discarding the labels and doing unsupervised learning.
Semi-supervised learning may refer to either transductive learning or inductive learning. The
goal of transductive learning is to infer the correct labels for the given unlabeled data only. The
goal of inductive learning is to infer the correct mapping from X to Y
Intuitively, the learning problem can be seen as an exam and labeled data as sample problems
that the teacher solves for the class as an aid in solving another set of problems. In the
transductive setting, these unsolved problems act as exam questions. In the inductive setting,
they become practice problems of the sort that will make up the exam.
6
practice, algorithms formally designed for transduction or induction are often used
interchangeably.
This research shows the use of sentiment analysis to evaluate the student’s narrative comment in
the evaluation of their respective Faculty. The rest of the project is organized as follows: One
Section presents a review of literature; proposed methodology is presented in another section. It
also describes the construction of sentiment word database for teaching evaluation and also
presents the architecture of our proposed system. It also presents the case study and results of the
teaching evaluation and the final chapter presents the conclusion.
7
CHAPTER 2. LITERATURE SURVEY
2.1 Introduction
There are some papers which are based on various work carried out in literature on sentiment
classification and opinion mining are reviewed. In this project various techniques used for
Opinion mining and sentiment classification is investigated. Subsequently feature selection
techniques which are critical for unstructured data classification is reviewed. The following are
the some of the works on Student feedback using sentiment Analysis.
• Tanvi Hardeniya and Dilipkumar A.Borikar[8] in 2016 self-addressed the Dictionary- Based
strategy to Sentiment analysis. They reviewed on sentiment analysis is completed and so the
challenges and problems concerned inside the method are mentioned. The approaches to
sentiment analysis mistreatment dictionaries like SenticNet, SentiFul, SentiWordNet, and
WorldNet are studied. Lexicon-based approaches are economical over a website of study.
Though a generalized lexicon like WorldNet might even be used, the accuracy of the classifier
gets affected due to problems like negation, synonyms, sarcasm, etc. This has provided impetus
to substantial growth of online buying creating opinion analysis a very important issue for
business development.
• Another Approach was developed by Bhagyashree Gore supported Lexicon based mostly
Sentiment Analysis of Parent Feedback to gauge their Satisfaction Level[10] in 2018.They used
lexicon based mostly approach and commutating of polarity values. Throughout this approach
they produce a lexicon of words with opinion score assigned to that. A database of English
sentiment words is created for reference in the domain of satisfaction level with the opinion
score assigned to it. They extracted data from parent’s comments and then analyze the level of
positive and negative opinion. The opinion result of parents Satisfaction on teaching learning
process is represented as to whether strongly positive, positive, strongly negative, negative, or
neutral.
8
• R Mehana from Dr.Mahalingam school of Engineering and Technology Pollachi, Tamlinadu,
India[6] developed Student feedback mining system adopting sentiment analysis in 2017.They
projected a system to mine the feedback given by the students and acquire information from
that and gift that info in qualitative method. they have known the frequency of each word and
extract the topic that has the perfect frequency count. Similar comments in every topic are
clustered then the clustered words are classified into positive or negative comments.
• Other interesting approach of Sentiment Analysis was presented in the work of M. A. Ullah
[5] wherein they extract sentiments with polarities of positive and negative for specific
subjects from a document, instead of classifying if the document is positive or negative. In
this paper, they applied semantic analysis with a syntactic parser and semantic lexicon which
gave them a high precision of 75% to 95% in finding the sentiments within web pages and
news articles.
• LI Caiqiang and Ma Junming [10] perform online education teacher evaluation model based
on opinion mining. They collect the students’ comments written in Chinese language
published in the LMS (learning management system) by using web crawler. They didn’t
indicate the words polarity strength in their work. If sentiment words of subjective text are
not in the polarity word dictionary, they used point wise mutual information (PMI) method to
judge the polarity of it. This model gets an overall evaluation of each teacher. They collect
the students’ comments written in Chinese language published in the LMS (learning
management system) by using web crawler. They didn’t indicate the words polarity strength
in their work. If sentiment words of subjective text are not in the polarity word dictionary,
they used point wise mutual information (PMI) method to judge the polarity of it. This model
gets an overall evaluation of each teacher.
9
• Sajjad Haider and Sayeed Ghani projected Lexicon-Based Sentiment Analysis of Teachers’
Evaluation in 2016. They analyze textual feedback automatically and to develop quantitative
and qualitative metrics that can aid in assessing a teacher’s performance and highlighting her
major areas of appreciations/concerns. The primary focus of the sentiment analysis is to
determine a writer’s feeling from a given text. The feeling might be his/her attitude, emotion,
or opinion. The most important step of this analysis is to classify the polarity of the given text
as positive, negative, or neutral. In a similar fashion, the presented work aims to identify the
polarity of a student’s feedback in terms of positive, neutral, and negative. In addition, the
paper also suggests methods to identify the recurring theme in students’ feedback by
generating word clouds for visualization, sentiment score, and other frequency-based filters.
• Ayesha Rashid perform Feature level opinion mining of educational student feedback data
using sequential pattern mining and association rule mining in 2013.They want to extract the
nuggets of knowledge from massive volume of student feedback dataset on faculty
performance. There main objective is to compare two renowned association rule mining and
sequential pattern mining algorithms namely Apriori and Generalized Sequential Pattern
(GSP) mining in the context of extracting frequent features and opinion words. Sentence
level sentiment classification is one level deeper to document level opinion mining. It
extracts such sentences from reviews documents which contains object, noun and adjectives.
Polarity about opinionated object is found by counting positive and negative adjective words
used to express opinion about product and its features. If positive words are more than
negative, opinion about object is positive otherwise negative, if both are same then opinion is
neutral. To extract nuggets of knowledge from huge amount of opinionated text in databases
data mining techniques are used.
10
• A. Sagum, Jessiree Grace M. de Vera, Prince John S. Lansang, Danica Sharon R. Narciso and
Jahren K. Respeto projected Application of Language Modelling in Sentiment Analysis for
Faculty Comment Evaluation, in 2015. Faculty evaluation is the process of gathering and
processing data to measure the effectiveness of teaching. There are different areas to be
considered for evaluating a faculty [1] such as teaching, advising and research and scholarly
activities. There are different studies of Sentiment Analysis wherein the researchers used
reviews to identify the sentiment of user where companies can use this so they can easily
determine the sentiment of a review, whether it’s positive or negative.
• H. Saif, M. Fernandez, Y. He, and H. Alani perform Evaluation datasets for twitter sentiment
analysis in 2013. With the emergence of social media, the performance of sentiment analysis
tools has become increasingly critical. Developing accurate sentiment analysis methods
requires the creation of evaluation datasets that can be used to assess their performances. They
present STS-Gold, an evaluation dataset for Twitter sentiment analysis that targets sentiment
annotation at both, tweet and entity levels. this paper summarises eight publicly available and
manually annotated evaluation datasets for Twitter sentiment analysis.
11
CHAPTER 3. SENTIMENT ANALYSIS PROCESS
12
analysis. The algorithm consists of two key components, namely sentiment normalisation and
evidence-based combination function, which have been used in order to estimate the intensity of
the sentiment rather than positive/negative label and to support the mixed sentiment
classification process. Finally, we illustrate a case study examining the relation between negative
sentiment of twitter posts related to English Defence League and the level of disorder during the
organisation’s related events.
Lexicon based approach can further be divided into two categories: Dictionary based approach
(based on dictionary words i.e. WordNet or other entries) and Corpus based approach (using
corpus data, can further be divided into Statistical and Semantic approaches).
13
Machine translation can use a method based on dictionary entries, which means that the
words will be translated as a dictionary does – word by word, usually without much
correlation of meaning between them. Dictionary lookups may be done with or without
morphological analysis or lemmatization. While this approach to machine translation is
probably the least sophisticated, dictionary-based machine translation is ideally suitable for
the translation of long lists of phrases on the sub sentential (i.e., not a full sentence) level, e.g.
It can also be used to expedite manual translation, if the person carrying it out is fluent in
both languages and therefore capable of correcting syntax and grammar.
Using the corpus-based approach alone to identify all opinion words, however, is not as effective
as a result of the dictionary-Based approach as a result of its arduous to prepare a huge corpus to
14
cover all English words. However it will facilitate to hunt out domain and context specific
opinion words using a website corpus that is that the massive advantage of this technique. The
corpus-based approach is performed in applied math approach or linguistics approach.
Corpus linguistics has generated a number of research methods, which attempt to trace a path
from data to theory. Wallis and Nelson first introduced what they called the 3A perspective:
Annotation, Abstraction and Analysis
Most lexical corpora today are part-of-speech-tagged (POS-tagged). However even corpus
linguists who work with 'un annotated plain text' inevitably apply some method to isolate salient
terms. In such situations annotation and abstraction are combined in a lexical search. The
advantage of publishing an annotated corpus is that other users can then perform experiments on
the corpus (through corpus managers). Linguists with other interests and differing perspectives
than the originators' can exploit this work. By sharing data, corpus linguists are able to treat the
corpus as a locus of linguistic debate and further study.
15
volume before testing. It is time consuming and low on accuracy when training data is not
sufficient.
16
CHAPTER 4. METHODOLOGY
17
classification is that, it's adaptable to changes and helps single out useful features that distinguish
different groups.
• Classification: Data classification is that the process of organizing data into categories
for its best and efficient use. A well-planned data arrangement makes essential data easy to seek
out and retrieve. This will be of particular importance for risk management, legal discovery, and
compliance.
18
4.2. ANALYSING SENTIMENT IN STUDENT FEEDBACK
Sentiment analysis (also known as opinion mining or emotion AI) refers to the use of natural
language processing, text analysis, computational linguistics, and biometrics to systematically
identify, extract, quantify, and study affective states and subjective information. Sentiment
analysis is widely applied to voice of the customer materials such as reviews and survey
responses, online and social media, and healthcare materials for applications that range from
marketing to customer service to clinical medicine.
A basic task in sentiment analysis is classifying the polarity of a given text at the document,
sentence, or feature/aspect level—whether the expressed opinion in a document, a sentence or an
entity feature/aspect is positive, negative, or neutral. Advanced, "beyond polarity" sentiment
classification looks, for instance, at emotional states such as "angry", "sad", and "happy".
Precursors to sentimental analysis include the General Inquirer, which provided hints toward
quantifying patterns in text and, separately, psychological research that examined a person's
psychological state based on analysis of their verbal behavior.
Subsequently, the method described in a patent by Volcani and Fogel, looked specifically at
sentiment and identified individual words and phrases in text with respect to different emotional
scales. A current system based on their work, called EffectCheck, presents synonyms that can be
used to increase or decrease the level of evoked emotion in each scale.
Many other subsequent efforts were less sophisticated, using a mere polar view of sentiment,
from positive to negative, such as work by Turney, and Pang who applied different methods for
detecting the polarity of product reviews and movie reviews respectively. This work is at the
document level. One can also classify a document's polarity on a multi-way scale, which was
attempted by Pang and Snyder among others: Pang and Lee expanded the basic task of
classifying a movie review as either positive or negative to predict star ratings on either a 3- or a
4-star scale, while Snyder performed an in-depth analysis of restaurant reviews, predicting
ratings for various aspects of the given restaurant, such as the food and atmosphere (on a five-
star scale).
19
In this project we learn about various lexicons that are used to get the opinion of student
analysis. The lexicon- based approach depends on opinion (or sentiment) words, which are
words that express positive or negative sentiments. Choosing the sentiment lexicon to rely on is
very important. The following section describes some popular sentiment lexicon.
20
Fig 4.2.2. Lexicon based sentiment predictor
21
4.3. SYSTEM ARCHITECTURE
System Architecture corresponds to a set of techniques used to extract pattern or trends implicit
in textual databases. This process can be divided into following steps:
22
4.3.1 PREPROCESSING:
The preprocessing has done in the following ways:
A) Text extraction:
The comments, which consist of few sentences, are split up into clause based on clause level
punctuation mark. The clause level punctuation mark is any word from regular expression
^[.,:;!?].
B) Text cleaning:
This is used to remove special characters and change Uppercase into Lowercase letters.
C) Stemming:
Stemming is a heuristic method for collapsing distinct word forms by trying to remove affixes.
Noun can be in either singular or plural form using either –es or –s suffix. Similarly, verb can be
in either present or past participle form using –ing and –ed respectively. Adjectives can be in
comparative form using -er suffix or superlative form using –est suffix. The base form is then
used for looking up the word in dictionary.
23
occurs in a sentence its polarity is immediately labeled as negative and assigned the opinion
score to (-2).
If there is only one opinion word in a sentence, the corresponding positive scores or negative
scores are assigned using
= ---(Eq 4.3.3.1)
If one intensifier word and one opinion word are found together,
=( %+ ) ∗ --- (Eq 4.3.3.2)
If two intensifier words and one opinion word are found in a sentence
=( %+ )∗( %+ )∗ --- (Eq 4.3.3.3)
If a negation word in front of the opinion word is found in a sentence
= ∗ (− ). --- (Eq 4.3.3.4)
24
4.3.5. CALCULATE AVERAGE POLARITY FOR ALL THE SENTENCES:
The average can be calculated by dividing the total scores by total opinion words.
P = ∑ =1 / --- (Eq 4.3.6)
25
CHAPTER 5. MODULES DIVISION & UML DIAGRAMS
The student gives feedback for each teacher of particular subject belongs to their class.
Here, the questions are telling about the teacher’s performance in a certain field.
Example: Does he/she giving a clear Explanation? Is the voice Audible?
26
The data of teachers have to change for every semester.
The admin also adds the students and faculty details in the database.
The admin also can delete the student’s as well as the faculty data.
The admin can view all the feedbacks results present in the database.
UML is linked with object-oriented design and analysis. UML makes the use of elements and
forms associations between them to form diagrams.
27
5.2.1 USECASE DIAGRAM:
A Use case diagram at its simplest is a representation of a user's interaction with the
system that shows the relationship between the user and the different use cases in which
the user is involved. The use cases are represented by either circles or ellipses.
The purpose of use case diagram is to capture the dynamic aspect of a system. However, this
definition is too generic to describe the purpose, as other four diagrams (activity, sequence,
collaboration, and State chart) also have the same purpose. We will look into some specific
purpose, which will distinguish it from other four diagrams.
Use case diagrams are used to gather the requirements of a system including internal and
external influences. These requirements are mostly design requirements. Hence, when a system
is analyzed to gather its functionalities, use cases are prepared and actors are identified.
Use case diagrams are considered for high level requirement analysis of a system. When the
requirements of a system are analysed, the functionalities are captured in use cases. We can say
that use cases are nothing but the system functionalities written in an organized manner. The
second thing which is relevant to use cases are the actors. Actors can be defined as something
that interacts with the system.
This Use Case is a graphic depiction of the interactions among the elements of Student
Feedback System. It represents the methodology used in the system analysis to identify, clarify
and organize system requirements of Student feedback System. The main actors of Student
Feedback System in this use case diagram are: Admin and Student.
Use cases of Admin are Manage student, Manage Feedback, Manage Class, Manage Faculty,
Manage users and full student feedback system operations. Use cases of Student are Submit
Feedback, Search Faculty.
28
Fig5.2.1.1 Use-case diagram for student login
29
Fig5.2.1.2. Use-case diagram for faculty login
30
5.2.2 CLASS DIAGRAM:
Class diagram is a static diagram. A Class diagram in the Unified Modeling Language (UML)
is a type of static structure diagram that describes the structure of a system by showing the
system's classes, their attributes, operations (or methods), and the relationships among objects It
represents the static view of an application. Class diagram is not only used for visualizing,
describing, and documenting different aspects of a system but also for constructing executable
code of the software application. Class diagram describes the attributes and operations of a class
and also the constraints imposed on the system. The class diagrams are widely used in the
modeling of object-oriented systems because they are the only UML diagrams, which can be
mapped directly with object-oriented languages. Class diagram shows a collection of classes,
interfaces, associations, collaborations, and constraints. It is also known as a structural diagram.
The purpose of class diagram is to model the static view of an application. Class diagrams are
the only diagrams which can be directly mapped with object-oriented languages and thus widely
used at the time of construction. UML diagrams like activity diagram, sequence diagram can
only give the sequence flow of the application, and however class diagram is a bit different. It is
the most popular UML diagram in the coder community.
In this Class diagram, first, the student has to register. Only registered Student will log in by his
username and password. . In the dashboard all the contents of the feedback forms will be
displayed.. Student can tell his likes and dislikes about the teachers by attending every
questions.
Next, Faculty logins into their portal and can see the total of all marks will be calculated and
according to it percentage is calculated .On this percentage basis Faculty can take print out of
the summary list and keep a backup of it.
We can also have Admin which is the main part of the System.The main tasks of Admin are:
Admin can Login,Admin can add new faculty,Admin can View faculty list,Admin can Update
faculty data,Admin can Delete faculty,Admin can Manage Student,Admin can Check feedback
given by student,Admin can update the contact details dynamically,Admin can update password.
31
Fig5.2.2. Class diagram for Proposed System
32
5.2.3 ACTIVITY DIAGRAM:
The control flow is drawn from one operation to another. This flow can be sequential,
branched, or concurrent. Activity diagrams deal with all type of flow control by using
different elements such as fork, join, etc. The basic purposes of activity diagrams are
similar to other four diagrams. It captures the dynamic behavior of the system. Other
four diagrams are used to show the message flow from one object to another but activity
diagram is used to show message flow from one activity to another.
Activity is a particular operation of the system. Activity diagrams are not only used for
visualizing the dynamic nature of a system, but they are also used to construct the
executable system by using forward and reverse engineering techniques. The only
missing thing in the activity diagram is the message part. It does not show any message
flow from one activity to another. Activity diagram is sometimes considered as the
flowchart. Although the diagrams look like a flowchart, they are not. It shows different
flows such as parallel, branched, concurrent, and single.
This is the login Activity Diagram of Student Feedback System, which shows the flows
of login activity, where admin will be able to login using their user name and password.
After login user can manage all the operations on Class, Feedback, Student, Teacher.All
the pages such as Feedback, Faculty, and Student are secure and user can access these
page after login. The three diagrams below help demonstrate how login page works in a
Student Feedback System. The various objects in Student, Class, Feedback and Faculty
page--interact over the course of activity, and the user will not be able to access this
page without verifying their identity.
33
Fig5.2.3.1. Activity Diagram for Admin Login
34
Fig5.2.3.2. Activity Diagram for Faculty Login
35
Fig5.2.3.3. Activity Diagram for Student Login
36
CHAPTER 6. SYSTEM REQIREMENTS
SYSTEM CONFIGURATION:
This project can run on commodity hardware. We ran entire project on an Intel Pentium or
higher processor with 256MB Ram, 2 GB NVidia Graphic Processor, It also has 2 cores which
runs at 1.7 GHz, 2.1 GHz respectively. First part of the project just takes very little amount of
time that depends on the size of data set upon which classifier is working upon. Second part
sentiment analysis takes some time around 5-10 mins to produce results because of its large
volume data set.
Following are the software and modules that needs to be installed for successful
execution of the project. They are:
37
6.2 HARDWARE REQUIREMENTS
XAMPP is a software distribution which provides the Apache web server, MySQL database
(actually Maria DB), Php and Perl (as command-line executables and Apache modules) all in one
package. It is available for Windows, MAC and Linux systems. No configuration is necessary to
integrate Php with MySQL.
It is a great fit for this course and provides a relatively painless installation and way to manage the
configuration changes. Also provided is PhpMyadmin which gives a GUI tool for managing your
MySQL databases.
xampp-win32-5.6.23-0-VC11-installer.exe
Install in the usual way. It gives some notification messages for which you can just click OK. Close
whatever installation brings upon completion. It installs into C:\xampp
At some point the Windows Firewall may invoke notifications; just click Allow access and then
Finish
38
RUN XAMPP IN CONTROL PANEL:
What you want to run is the XAMPP Control Panel found under XAMPP in the Start menu.
Right-click and run this as administrator.
Start both MySQL and Apache (unless you have an alternative Apache installation). I do not
recommend messing with the Modules service column. When you start MySQL, you should see it
running on port 3306. The Apache service gives you access to the Admin buttons next to the
services. For Apache Admin, you get:
http://localhost/dashboard
For MySQL Admin you get PhpMyadmin:
http://localhost/phpmyadmin
DESCRIPTION:
Together with a list of Python packages, tools like editors, Python distributions include the Python
interpreter. Anaconda is one of several Python distributions. Anaconda is a new distribution of the
Python and R data science package. It was formerly known as Continuum Analytics. Anaconda has
more than 100 new packages. This work environment, Anaconda is used for scientific computing,
data science, statistical analysis, and machine learning. The latest version of Anaconda 5.0.1 is
released in October 2017.
The released version 5.0.1 addresses some minor bugs and adds useful features, such as updated R
language support. All of these features weren’t available in the original 5.0.0 release.
39
Anaconda can help with –
1. Installing Python on multiple platforms
2. Separating out different environments
3. Dealing with not having correct privileges and
4. Getting up and running with specific packages and libraries
The free version of Anaconda distribution community edition can be downloaded directly from
Anaconda’s website. For the enterprise edition, one need professional support from Anaconda’s
sales team.
Conda treats Python the same as any other package, so it is easy to manage and update multiple
installations.
Anaconda supports Python 2.7, 3.4, 3.5 and 3.6. The default is Python 2.7 or 3.6, depending on
which installer you used:
• For the installers “Anaconda” and “Miniconda,” the default is 2.7.
• For the installers “Anaconda 3” or “Miniconda 3,” the default is 3.6.
Install Anaconda
• Once downloaded the .exe file, run through the installer. Do accept the terms, and finish the
installation. To check, close the browser and pull up the terminal.
• Once the installation is complete, it should have automatically added that to the path. To test
this, go ahead and type ‘python’.
• The version of python i.e. 3 will show and also the anaconda distribution will be seen. If you
install the 4 versions of Anaconda, then all the packages, which are there in the packages, can
also be imported easily.
• To check type import numpy or import matplotlib and run that.
40
CHAPTER 7. RESULTS AND DISCUSSIONS
Firstly, there’s admin module which has admin login portal. The username and password of
admin is initially fixed. After login, Admin views the students as well as faculty accounts and
can modify their details. The whole data is stored in the database. The admin also adds the
students and faculty details in the database. The admin also can delete the student’s as well as the
faculty data. The admin can view all the feedbacks results present in the database. The identity of
the student who gave the feedback is given by the admin.
Then there’s student module which has student login portal. Each and every valid student has
their unique username and password which is given by admin. The username and password when
entered are checked with data present in the database. After login, the student can view the
subject’s feedback which he/she wants to submit. Then in the feedback form, the name of the
faculty automatically comes who teaches that particular subject. In the feedback form, there are
multiple fields for which student has to show his opinion. The fields are Vocabulary and Body
language, Audibility, Explanation, Subject Command etc., after the submission of feedback the
answers of all the questions are analyzed and the result is stored in database. If the student has
already given the feedback of that particular teacher, then he/she can’t give the feedback again.
Then at last there’s faculty module which has teacher login portal. Each and every faculty has
their unique username and password which is given by the admin. The username and password
when entered are checked with data present in the database. The faculty can view their overall
performance according to the student’s feedback. And student’s identity is not revealed to the
faculty. There will be a graphical representation of student's feedback so that faculty can clearly
understand his/her strengths.
Next, the polarity of the words in each sentences were calculated. The polarity scores are
assigned as given below:
If there's only 1 opinion word in an exceedingly sentence, the corresponding positive scores or negative scores area unit allotted mistreatment = --- (Eq 6.1)
41
If one modifier word and one opinion word area unit found along, = ( %+ ) ∗ --- (Eq 6.2)
If 2 modifier words and one opinion word area unit found in an exceedingly sentence = ( %+ )∗( %+ ) ∗ --- (Eq 6.3)
If a negation word ahead of the opinion word is found in an exceedingly sentence = ∗ (− ).----(Eq 6.4)
Where
‘Ws’ is that the linguistics orientation score of mixing words.
‘Sinf’ is that the qualifier worth of word supported 100 percent.
‘Os’ is that the score of opinion word from sentiment word info
42
7.1Student Login:
Only registered Student will log in by his username and password. Each and every valid student
has their unique username and password which is given by admin. The username and password
when entered are checked with data present in the database. In the dashboard all the contents of
the feedback forms will be displayed. Student can tell his likes and dislikes about the teachers by
attending every questions. The following figure represents the Login Page of Student:
43
After login, the student can view the subject’s feedback which he/she wants to submit. Then in
the feedback form, the name of the faculty automatically comes who teaches that particular
subject. In the feedback form, there are multiple fields for which student has to show his opinion.
The fields are Vocabulary and Body language, Audibility, Explanation, Subject Command etc.,
after the submission of feedback the answers of all the questions are analyzed and the result is
stored in database. If the student has already given the feedback of that particular teacher, then
he/she can’t give the feedback again.
The following figure represents the Student Feedback Page:
44
Fig.7.2.2: Student Feedback Form
45
Fig7.3.1 Admin Portal
Following are some of the Screenshots which shows the process to upload Student data and also
the Rules and Regulations to Upload a File:
46
Fig7.3.2Instructions to upload a file
47
Fig7.3.3Uploading the Excel File
48
Fig7.3.4 Faculty Data to Enter
49
7.4 FACULTY PORTAL
Faculty login details are fixed by faculty only but maintained by admin, if Sir/Madam
want to change login details must be contact with admin. After login faculty can see the feedback
from a student which shows only positive percentage given by a student feedback. Sir/Madam
can see previous feedback result as well as present details. Sir/Madam can select specific section
year, semester and also academic year and subject. The details are automatically shown in form
by using faculty details maintained by a admin.
50
Fig7.4.2 Selection of Result’s
51
7.5 SAMPLE INPUT:
Class&Section: 3 - C
I am not satisfied with good Doubts are clarified All topics covered
the explanation even outside the in time
classroom
52
7.6 GRAPHICAL OUTPUT:
We have the graphical output through which Faculty logins into their portal and can see the
total of all marks will be calculated and according to it percentage is calculated .On this
percentage basis Faculty can take print out of the summary list and keep a backup of it. The
following fig shows the Graphical Representation of Students positive feedback on Faculty:
53
7.6. SAMPLE CODE
section=row[3]
ESM=row[4]
VBL=row[5]
data2=1
54
cur.execute("select * from feedback_data_analyze") set=cur.fetchall() for row2 in set:
test11=row2[0] test12=row2[2] test13=row2[3]
feedback_data_analyze(name1,subject1,year,section,ESM,VBL,DCI,ISC)
VALUES(%s,%s,%s,%s,%s,%s,%s,%s)",(name,subject,year,section,data
1,data2,data3,data4)) cur.execute("update feedback_data set activated='yes' where name=%s
and
ESM1=row1[4]
VBL1=row1[5]
DCI1=row1[6]
ISC1=row1[7]
55
section=%s ",(data1,data2,data3,data4,name,subject,year,section) connection.commit()
connection.close()
<?php
session_start();
$b=mysql_connect("localhost","root","") or die("ksajdflk");
$i=0;
$YEAR=0;
$SECTION="";
$NAME="";
56
$SUBJECT="";
$rollnumber=$_SESSION['user'];
$numrows=mysql_num_rows($query); if($numrows!=0)
{ while($row=mysql_fetch_assoc($query)) {
$YEAR=$row['year']
$SECTION=$row['section'];
$numrows=mysql_num_rows($query); if($numrows!=0) {
while($row=mysql_fetch_assoc($query))
$NAME=$row['f_name'];
$SUBJECT=$row['f_subject'];
?>
57
<font size="05" color="mocha"> * ENTER WHATEVER YOUR FEELING FREELY *</font>
<tr> <td>
<tr> <td>
</center>
</font>
</td>
<td> </td>
</tr>
<tr> <td>
<tr>
58
<td><font color="green" size="05"> VOICE & BODY LANGUAGE</font>
</td>
</tr>
<tr>
<td>
</td>
</textarea>
</td>
</tr>
<tr> <td>
</td>
<br />
59
<br />
<?php
} else
?><script>
FACULTY"); window.location.href="Student_Home.html";
</script>
<?php
} else
?><script>
</script> <?php
} ?>
60
</table>
</div>
</div></section>
<footer id="footer">
<div class="inner">
<div class="copyright">
</div>
</div>
</footer>
61
<!-- Scripts -->
<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/browser.min.js"></script>
<script src="assets/js/breakpoints.min.js"></script>
src="assets/js/main.js"></script>
</body>
</html>
Frontend code:
<html>
<head>
<title>STUDENT FEEDBACK
62
<link rel="icon" type="image/jpg" href="images/res.jpg"
/> </head>
<header id="header">
<nav>
<a href="#menu">Menu</a>
</nav>
</header>
<nav id="menu">
<ul class="links">
<li><a href="index.html">Home</a></li>
class="inner"> <h1>WELCOME
TO ANITS</h1>
63
<p>ANIL NEERUKONDA INSTITUTE OF
</ div>
src="images/banner.mp4"></video>
</section>
src="images/hod.jpg" border="1"
height="50%" width="50%"><br>
size="+3">Dr.R.Sivaranjani</font><br>
<p></p>
</header>
64
<div class="highlights">
</div>
</div>
</section>
<div class="inner">
</div>
</section>
<section class="wrapper">
</section>
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br/> <!-- Footer -->
<footer id="footer">
<div class="inner">
65
href="team.html">5C</a></b> Team <br /> Department of CSE</font>
</div>
<div class="copyright">
<font face="Baskerville Old Face" size="5px" color="#ffffff"> All Rights Reserved <br
/>ANITS 2018-2019</font> </div> </div> </footer>
<?php
require('library/php-excel-reader/excel_reader2.php');
require('library/SpreadsheetReader.php');
require('db_config.php');
$setti=1;
$NAME =NULL;
$SECTION =NULL;
$YEAR=0;
$SUBJECT=NULL;
$TEST=NULL;
$P_YEAR=0;
$SEM=0;
66
if(isset($_POST['Submit']))
$mimes=['application/vnd.ms-
excel','text/xls','text/xlsx','application/vnd.oasis.opendocument.spreadsheet'];
if(in_array($_FILES["file"]["type"],$mimes))
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$uploadFilePath = 'uploads/'.basename($_FILES['file']['name']);
move_uploaded_file($_FILES['file']['tmp_name'], $uploadFilePath);
$totalSheet = count($Reader->sheets());
$html="<table border='1'>";
$html.="<tr>
<th>NAME</th>
<th>SUBJECT</th><
th>YEAR</th>
67
<th>SECTION</th>
<th>PRESENT YEAR</th><th>SEM</th>
</tr>";
$i=0;
if($i<$totalSheet){
$Reader->ChangeSheet($i);
$html.="<tr>";
if($NAME!=Null)
68
{
$html.="<td>".$NAME."</td>";
$html.="<td>".$SUBJECT."</td>";
$html.="<td>".$YEAR."</td>";
$html.="<td>".$SECTION."</td>";
$html.="<td>".$P_YEAR."</td>";
$html.="<td>".$SEM."</td>";
$i=$i+1;
$html.="</tr>";
if($NAME!=NULL)
&& $YEAR>0 && $YEAR<5 && $SECTION!=NULL && $P_YEAR>1000 && $SEM>0 )
$mysqli->query($query);
69
}
else
echo "namaste";
?>
<script>
window.location.href="upload_file_faculty.php";
</script>
<?php
}//foreach loop
}//total_sheet if is closed
$html.="</table>";
echo $html;
?> <script>
70
CHAPTER 8. CONCLUSION AND FUTURE SCOPE
In this paper we have discussed about the sentiment analysis in detail. Sentiment Analysis deals
with evaluating whether this expressed opinion about the entity has a positive or a negative
orientation. Sentiment Analysis problem has been a research interest for recent years.
Sentimental analysis is an emerging field of data mining used to extract the knowledge from a
huge volume of customer comments, feedback and reviews on any product or topic etc. A lot of
work in opinion mining in customer reviews has been conducted to mine opinions in form of
document, sentence and feature level sentiment analysis. In future, Sentiment analysis can be
carried out on set of discovered feature expressions extracted from reviews. The Sentiment
analysis and in natural language processing community, Sentiment Analysis become a most
interesting research area. A more innovative and effective techniques needed to be invented
which should overcome the current challenges faced by Sentiment Analysis.
Although several notable works have come in this field, a fully automated and highly efficient
system has not been introduced till now. This is because of the unstructured nature of natural
language. The vocabulary of natural language is very large that things become even hard. Several
challenges still exist in the field of machine learning and some of them are Named entity
Recognition, Co reference Resolution, domain dependency etc. These problems have to be
tackled separately and those solutions can be used to improve the methods to do sentiment
analysis.
71
REFERENCES
[1] Student Feedback Mining System Using Sentiment Analysis Prabu Palanisamy, Vineet
Yadavand Harsha Elchuri “ Simple and Practical lexicon- based approach to Sentiment
Analysis”,pp.october- 2017
[7] Z Nasim, Q Rajput, S Haider. “Sentiment Analysis of Student Feedback Using Machine
Learning and Lexicon Based Approaches” , pp.1-6, 2017.
[8] Bhagyashree Gore “Sentiment Analysis of Parent Feedback” to guage their Satisfaction
Level, pp.march, 2018.
[9] Sajjad Haider and Sayeed Ghani “Lexicon-Based Sentiment Analysis of Teachers’
Evaluation”, pp.october, 2016.
[10] A. Rashid, “Feature level opinion mining of educational student feedback data using
sequential pattern mining and association rule mining,” International Journal of
Computer Applications (0975-8887). 81 (10), pp. 31-38, 2013.
72
[11] A. Sagum, Jessiree Grace M. de Vera, Prince John S. Lansang, Danica Sharon R.
Narciso and Jahren K. Respeto, “Application of Language Modelling in Sentiment
Analysis for Faculty Comment Evaluation,” Proceedings of the International Multi Conference of
Engineers and Computer Scientists, vol.1, March 2015.
[12] H. Saif, M. Fernandez, Y. He, and H. Alani, “Evaluation datasets for twitter sentiment analysis,” in
Proceedings of the 1st International Workshop on Emotion and Sentiment in Social and Expressive
Abstract— In education system, students’ feedback is important scale by statistical techniques, but it is difficult to interpret the
to measure the quality of teaching. Students’ feedback can be qualitative data from the students' comments[14]. Most
analyzed using lexicon based approach to identify the students’ researchers on teacher evaluation focused to quantitative data but
positive or negative attitude. In most of the existing teaching ignored qualitative data. However, the personal answers from
evaluation system, the intensifier words and blind negation words open-ended questions contain the sentences or phrases regarding
are not considered. The level of opinion result isn’t displayed:
the teaching methods. The processing of qualitative data analysis
whether positive or negative opinion. To address this problem, we
propose to analyze the students’ text feedback automatically using
is very important and it can enhance the teacher evaluation
lexicon based approach to predict the level of teaching effectiveness[9].
performance. A database of English sentiment words is created as a This paper is organized as follows. In Section 2, the relevant
lexical source to get the polarity of words. By analyzing the previous work on sentiment analysis in education domain is
sentiment information including intensifier words extracting from presented. The methods in sentiment analysis are discussed in
students’ feedback, we are able to determine opinion result of section 3. Section 4 describes the construction of sentiment word
teachers, describing the level of positive or negative opinions. This database for teaching evaluation. Section 5 presents the
system shows the opinion result of teachers that is represented as to
architecture of our proposed system. The next section presents
whether strongly positive, moderately positive, weakly positive,
strongly negative, moderately negative, weakly negative or neutral.
the case study and results of the teaching evaluation. Finally, we
conclude the paper in section 7.
Keywords— opinion mining; sentiment analysis; teaching
evaluation; students’ comments; lexicon based II. RELATED WORKS
Sentiment analysis has been studied in wide area of domain
I. INTRODUCTION such as movie review, teaching review [1] [4] [13], product
Opinion mining is a process for tracking the mood of the review [11], e-learning[2], hotel review and many more. Most
people about any particular topic by review. In general, opinion scholars focused to quantitative data analysis. However, some
may be the result of people’s personal feelings, beliefs, studies have been done on qualitative data using sentiment
sentiments and desires etc. Most of the opinion mining research analysis[14], we found six works that mentioned the idea of
has focused on business and e-commerce applications, such as using opinion mining and sentiment analysis in education.
product reviews, hotel review and movie ratings etc. This El-Halees [1] proposed course evaluation model using
research work focus on students’ feedback comments. Feedback students’ attitudes posted on discussion forum written in Arabic
analysis is more important to measure the performance of language to improve course evaluation. Naive Bays, k-nearest
teacher. Analyzing students’ comments using sentiment analysis and Support Vector Machine are used in opinion classification.
approaches can classify the students’ positive or negative To extract the features for each course, the author used Gate
feelings. Students’ feedback can highlight various issues Information Extraction tool and Rapidminer data mining tool to
students may have with a lecture [8]. Sometimes students do not classify the students’ posts. The experimental result shows that
understand what the lecturer is trying to explain, thus by Naive Bays method has better performance than the other two
providing feedbacks, students can indicate this to the lecturer. methods. Their system calculates the positive or negative
The answers of student evaluation consist of quantitative and orientation by computing the difference between the number of
qualitative data collected by two question types; the quantitative positive and negative adjective words. The author didn’t
data was collected by close-ended questions as multiple choices consider the score of opinion words. This work suggests the
and the qualitative data was collected by open-ended questions effectiveness of user-generated content to improve course
as comments and suggestions from student opinions in textual evaluation.
form. It is easy to analyze quantitative data in numerical rating
150
score of opinion words are given by a language expert from the teaching review domain. For example ‘I understand her teaching
Department of Languages, the University of Computer Studies, but speed of presentation is very fast for other students’. In this
Mandalay. sentence ‘fast’ is negative opinion (-1) and ‘very’ depicts
There are 745 words in sentiment word database. Total intensifier word that increased by 50%. The sentiment word
intensifier words are 24, total positive words are 448 words and database contains the scores of the polarity of every word. Some
total negative words are 263 words, the remaining words are words are not included in existing lexicon. The polarity of some
neutral words. The sentiment score ranges from -3 to +3. The words written by students in teaching review needs to add in
sentiment lexicon. Consider the following sentences in students’
score ranging from 1 to 3 are considered as positive; whereas
feedback.
any negative score ranging from -1 to -3. The sentiment score
equals to zero is considered as neutral category. Some example “She can’t explain the theory in detail.”
words are shown in Table 1.
“She doesn't have interactive teaching with her students
while teaching.”
TABLE I. SAMPLE WORDS IN SENTIMENT WORD DATABASE
“Our teacher is very helpful, knowledgeable. We can ask her
Example Opinion Words about our lessons outside the class.”
Opinion word Score Description
“She is a practiced teacher in C ++ programming.”
care +2 verb
“His calculation idea in programming is complex.”
useful +2 adjective
“We feel sleepy while he teaching.”
helpful +2 adjective
“She always gives complicated questions in exam.”
clear +2 adjective, verb
“Her teaching speed is fast for other student but I understand
good +2 adjective, verb
her teaching.”
joyful +1 adjective
“Her voice is very low.”
marvellous +3 adjective
“Available outside the class”
brilliant +3 adjective
“Over serious while explaining.”
ordinary 0 adjective
The words “explain, interactive, ask, understand, practiced,
complex -3 adjective knowledgeable, available, slow, fast, talented, complex,
confuse -3 verb complicated, sleepy, overcome, concern, etc.” need to consider
as opinion words to get the correct opinion result. Some words
normal 0 adjective are not included in Afinn lexicon [5]and Vader lexicon.
complicated -3 adjective 1) Negation words: The negation words are the words which
sleepy -2 adjective reverse the polarity of sentiment[15], changing good (+2) into
not good (-2). (e.g. no, not, neither, nor, nothing, never, none)
fast -1 adjective are very important in identifying the sentiments, as their
daily 0 adjective presence can reverse the polarity of the sentence. In the proposed
approach, whenever a negation word is encountered in a
most +100% Intensifier
comment, the opinion score is reversed by a certain amount.
slightly -50% Intensifier 2) Blind negation words: (e.g. Need, needed, require,
really +25% Intensifier required) are also very important in identifying the sentiments.
For example ‘Her teaching method needed to be better’, ‘better’
little -50% Intensifier
depicts a positive sentiment but the inclusion of the blind
very +50% Intensifier negation word ‘needed’ suggests that this sentence is really
easily +25% Intensifier depicting negative sentiment. In the proposed approach
whenever a blind negation word occurs in a sentence its polarity
is immediately labeled as negative and assigned the opinion
Same word in different domains can have different score to (-2).
meanings. In our lexicon ‘fast’ is negative opinion and its 3) Adjective, adverb, verb, noun words: Most of the opinion
polarity score is -1. For example ‘I feel IPAD2 is fast running words are adjective. Our dictionary contains several different
speed and higher screen resolution’. In this sentence ‘fast’ is the adjectives, adverb, verb and noun. For example ‘She is
positive opinion in phone review domain but negative opinion in knowledgeable. Her discussions are interesting. I understand her
151
teaching’. In this sentence ‘knowledgeable’ and ‘interesting’ are next step is preprocessing that removes the unwanted and noisy
positive adjective opinion words, ‘understand’ is a positive verb data. This step includes case conversion, split sentences, replace
opinion. “n’t” with “not”, punctuation removal, tokenization.
4) Intensifier words: They are classified into two major The next step is opinion word identification. This system
categories, depending on their polarity. Amplifiers (e.g., very) compares each tokenized word in the comment with blind
increase the semantic intensity of a neighboring lexical item, negation word or negation word or positive opinion word or
whereas down toners (e.g., slightly) decrease it [12]. For negative opinion word or intensifier word by using sentiment
example, “Her explanation is really very good”. In this sentence word database. And then the polarity scores are assigned to each
‘really and very’ are intensifiers that increase the positive word by using sentiment word database. The presence of the
sentiment polarity. blind negation word indicates negative sentiment value (-2).
A heuristic technique is used to calculate the semantic
V. SYSTEM ARCHITECTURE orientation score of combining words for automated students'
feedback comments analysis. In the following equations, ‘Ws’ is
Students’ feedback the semantic orientation score of combining words. ‘Sinf’ is the
comment intensifier value of word based on 100%. ‘Os’ is the score of
opinion word from sentiment word database.
Ws=Os (1)
Preprocessing
Ws=(100%+Sinf) * Os (2)
152
moderately positive. If P>2, the opinion result is defined as
strongly positive. If P<0 or >= (-1), the opinion result is defined
as weakly negative. If P< (-1) or >= (-2), the opinion result is
defined as moderately negative. If P< ( -2), the opinion result is
defined as strongly negative. If P=0, the opinion result is defined
as neutral.
153
Average Polarity Score of all Comments [4] A. Sagum, Jessiree Grace M. de Vera, Prince John S. Lansang, Danica
Teacher Average Polarity Score Average Polarity Score Sharon R. Narciso and Jahren K. Respeto, “Application of Language
Name Using Our Lexicon Using Afinn Lexicon Modelling in Sentiment Analysis for Faculty Comment Evaluation,”
Proceedings of the International Multi Conference of Engineers and
Teacher 7 3.0 ( strongly positive) 3.17 ( strongly positive) Computer Scientists, vol.1, March 2015.
Teacher 8 1.9 (moderately positive) 1.93 (moderately positive) [5] AFINN word database an affective lexicon by Finn Årup Nielsen,
http://www2.imm.dtu.dk/pubdb/views/edoc_download.php/6010/zip/im
1.78 (moderately m6010.zip.
Teacher 9 1.64 (moderately positive)
positive)
[6] B. Jagtap and V. Dhotre, “SVM and HMM based hybrid approach of
Teacher 10 2.83 ( strongly positive) 2.46 ( strongly positive) sentiment Analysis for Teacher Feedback Assessment,” International
Journal of Emerging Trends of technology in computer science. (IJETCS).
Teacher 11 2.32 ( strongly positive) 2.21 ( strongly positive) 3 (3), pp. 229-232, 2014.
Teacher 12 2.14 ( strongly positive) 2.14 ( strongly positive) [7] B. Liu, “Sentiment analysis and subjectivity,” Handbook of natural
language processing, pp. 627-666, 2010.
[8] C. Pong-inwong and W. Rungworawut, "Teaching Evaluation Using Data
VII. CONCLUSION
Mining on Moodle LMS Forum" , 6th International Conference on New
In this paper, lexicon based sentiment analysis is used to Trends in Information Science, Service Science and Data Mining
evaluate the level of teaching performance from students’ (Issdm2012), Taipei: IEEE, 2012, pp. 550–555.
[9] C. Pong-inwong, & W. Songpan (Rungworawut), “TeachingSenti-Lexicon
textual feedback comment. A database of English sentiment for Automated Sentiment Polarity Definition in Teaching Evaluation,” 10th
words is constructed to identify the polarity of words as a lexical International Conference on Semantics, Knowledge and Grids (SKG),
source. Our sentiment word database contains the opinion words Beijing: IEEE, pp. 84-91, 2014.
concerning with the academic domain to achieve the better [10] L. Caiqiang, and M. Junming, “Research on online education teacher
result. Every opinion word in the database is given a value. The evaluation model based on opinion mining,” National Conference on
Information Technology and Computer Science (CITCS), 2012.
sentiment value is ranged from -3 to +3. This paper proposes the
[11] L. V. Avanco, M.G.V.Nunes, “Lexicon-based Sentiment Analysis for
level of teaching evaluation method based on lexicon based Reviews of Products in Brazillian Portugues,” 2014 IEEE Brazillian
approach. This method analyzes automatically the students’ Conference on Intelligent Systems, 2014, pp. 277-281, 2014.
feedback comments to strongly negative, or moderately [12] M. Taboada, J. Brooke, M. Tofiloski, K. Voll and M. Stede, “Lexicon-
negative, or weakly negative, or strongly positive, or moderately based methods for sentiment analysis,” Association for Computational
positive, or weakly positive or neutral category using two Linguistics, vol. 37, Issue 2, pp. 267-307, June 2011.
[13] N. Altrabsheh, M. Cocea, S. Fallahkhair, “Sentiment analysis: towards a
lexicons. The level of opinion result for any teacher is given out tool for analyzing real-time students feedback,” 2014 IEEE 26th
from students’ feedback comments. Internationaal Conference on Tools with Artificial Intelligence, pp.419-
423, 2014.
[14] P. Kaewyong, A. Sukprasert, N. Salim and F.A. Phang, “The possibility of
References students’ comments automatic interpret using Lexicon based sentiment
analysis to teacher evaluation,” 3rd International Conference on Artificial
[1] A. El-Halees, “Mining opinions in user- generated contents to improve Intelligence and Computer Science (AICS2015), pp. 179-189, 2015.
course evaluation,” Software Engineering and Computer Systems, pp. 107- [15] P. Palanisamy, V. Yadav, H. Elchuri, “Serendio: Simple and Practical
115, 2011. lexicon based approach to Sentiment Analysis,” Seventh International
[2] A. Ortigosa, J.M. Martín and R.M. Carro, “Sentiment analysis in Facebook Workshop on Semantic Evaluation (SemEval 2013), (2), pp. 543-548,
and its application to e-learning,” Computers in Human Behavior, 31(1), 2013.
pp. 527-541, 2014. [16] P.T.Ngoc, M.Yoo, “The Lexicon-based Sentiment Analysis for Fan Page
[3] A. Rashid, “Feature level opinion mining of educational student feedback Ranking in Facebook,” 2014 IEEE International Conference on
data using sequential pattern mining and association rule mining,” Information Networking (ICOIN), Phuket, pp. 444-448, 2014.
International Journal of Computer Applications (0975-8887). 81 (10),
pp. 31-38, 2013.
154
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 04 | Apr 2020 www.irjet.net p-ISSN: 2395-0072
( PUBLISHED PAPER)
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 1
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 04 | Apr 2020 www.irjet.net p-ISSN: 2395-0072
info in qualitative method. they have known the frequency accustomed describe surplus things. the method started with
of each word and extract the topic that has the perfect the pre-processing of the input texts were the comments for
frequency count. Similar comments in every topic are the school, that were composed of 1 or several sentences
clustered then the clustered words are classified into connected to a precise person, specifically a academic. For
positive or negative comments. this project, the comments were assumed to be correct in
terms of writing system and synchronic linguistics.
• S. MacKim and R. A. Calvo projected Sentiment analysis
in student experiences of learning [7] in 2016.they Classify IV. SENTIMENT WORD DATABASE CONSTRUCTION
the text supported the presence of unambiguous have an
effect on words. In their approach, a bit set of opinion Throughout this paper we have a tendency to learned
words is collected manually as a seed. They have a transient description regarding the strategies that we have
sentiment lexicon contains a listing of words aboard their a tendency to adopted to extract the key words from the
individual polarity. many like corpora are developed and student’s feedback document. They are:
that they created freely out there. 1. Tokenization
Tokenization is that the act of ending a sequence of strings
• Other interesting approach of Sentiment Analysis was into things like words, keywords, phrases, symbols and
presented in the work of M. A. Ullah [5] wherein they totally different elements named as tokens. Tokens will be
extract sentiments with polarities of positive and negative individual words, phrases or perhaps whole sentences.
for specific subjects from a document, instead of within the strategy of tokenization, some characters like
classifying if the document is positive or negative. In this punctuation marks square measure discarded.
paper, they applied semantic analysis with a syntactic
parser and semantic lexicon which gave them a high 2. Stop word removal
precision of 75% to 95% in finding the sentiments within Stop words square measure words that square measure
web pages and news articles. filtered out before or once method of tongue info. These
words square measure removed to extract only the pregnant
information. The list of stop words may even be ' the, is, at,
III. METHODS IN SENTIMENT ANALYSIS
which, on, who, where, how, hi, before, when’ etc.
There are two main approaches for lexicon based in
Sentiment analysis:
A. Corpus based Approach
Using the corpus-based approach alone to identify all
opinion words, however, it is not as effective as a result of
the results of the lexicon-Based approach as a result of it's
arduous to rearrange an outsized corpus to cover all
English words. however, it's going to facilitate to hunt out
domain and context specific opinion words using an online
website corpus that is that the big advantage of this
methodology. The corpus-based approach is performed in
arithmetic approach or linguistics approach. Fig 4.1: Diagram of proposed System
B. Dictionary based Approach We projected a system to mine the feedback given by the
One amongst the simple techniques throughout this approach scholars and procure data from that and gift that info in
is supported bootstrapping pattern slightly set of seed qualitative approach. Feedback was collected for a course;
opinion words and a web reference, e.g., WordNet. The those feedback were pre-processed victimization text process
strategy is to initial collect slightly set of opinion words techniques. In preprocessing, the feedback files square
manually with celebrated orientations then to grow this set measure generated as a file. The file is tokenized into
by making an attempt inside the WordNet for his or her sentences and also the keywords square measure listed when
synonyms and antonyms. The modern found words unit of removing the stop words. we've known the frequency of
activity supplementary to the seed list. ulterior iteration every word and extract the subject that has the best
starts. The repetitious technique stops once no additional frequency count. Similar comments in every topic square
new words unit of activity found. once the manoeuvre measure clustered then the clustered words square measure
completes, manual examination unit of activity usually classified into positive or negative comments. The classified
administered to urge obviate and/or correct errors. comments square measure generated as a chart for
During this approach, opinion words unit of activity divided straightforward visualization. This method of planned system
in an exceedingly combine of classes. Positive opinion words started with the pre-processing of the input texts were the
unit of activity accustomed categorical some necessary things, comments for the school, that were composed of 1 or several
and negative opinion words unit of activity sentences connected to a precise person, specifically a
academic. For this project, the comments were
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 2
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 04 | Apr 2020 www.irjet.net p-ISSN: 2395-0072
assumed to be correct in terms of writing system and equals to zero (0), it's thought of as neutral class. Some
synchronic linguistics. example words are shown in below Table 4.1.1.
3. Classification of information
Classification is that the strategy of organizing info into
categories for its best and economical use. A well-planned
info arrangement makes essential info straightforward to
hunt out and retrieve. this will be of specific importance
for risk management, legal discovery, and compliance.
Faculty matter Comments exploitation Lexicon based
Approach throughout this paper we've got a bent to
learned concerning varied lexicons that unit won’t to urge
the opinion of student analysis. The lexicon- based
approach depends on opinion (or sentiment) words, that
unit words that express positive or negative sentiments.
choosing the sentiment lexicon to just accept is
extraordinarily necessary. the following section describes
some common sentiment lexicon.
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 3
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 04 | Apr 2020 www.irjet.net p-ISSN: 2395-0072
Intensifier words:
They're classified into two major categories, depending on
their polarity. Amplifiers (e.g., very) increase the
linguistics intensity of an in-depth lexical item, whereas
down toners (e.g., slightly) decrease it. For example, “Her
clarification is de facto very good”. throughout this
sentence ‘really and very’ unit intensifiers that increase
the positive sentiment polarity.
Next, the polarity of the words in every sentence were
summed up, and divided by the overall range of subjective
words. Then, it had been classified as powerfully Positive,
Positive, Negative or powerfully Negative. Then, the
polarities of all the sentences were averaged. when the
averaging, the ultimate output was classified supported 3
classifications: Positive, Neutral or Negative.
During this paper, we have a tendency to use Text Blob
that could be a python library and offers an easy API to
access its strategies and perform basic information
processing tasks. Since, it's engineered on the shoulders of
Fig. 5.1: The Architecture model of sentiment analysis NLTK and Pattern, thus creating it easy by providing
Associate in Nursing intuitive interface to NLTK. Here, the
The first a part of the pre-processing module is that the sentiment property returns a named section of the shape
sentence splitter. it's the method wherever the comment Sentiment (polarity, subjectivity) It very depends on what
was broken down into smaller components, specifically in type of text analysis we wish to perform and what
sentence level below the method. Afterwards, these information feels like. Text Blob is less complicated to use
sentences dampened from the sentence splitter were if we're simply obtaining started with information
additional dampened into words processing primarily because of 2 reasons - it's an honest
Then the words are labelled in their individual a part of interface and a superb documentation.
speech. within the opinion word identification. The words In this way, the opinion result will be showed.
that unit used for opinion analysing unit categorizes into
following:
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 4
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 04 | Apr 2020 www.irjet.net p-ISSN: 2395-0072
VI. CASE STUDY AND RESULTS Then eventually there’s faculty module that has teacher
login portal. every and each school has their distinctive
In this system, there are basically three different modules username and password that is given by the admin. The
which are as following: username and password once entered are checked with
ØAdmin Module data in database. The faculty will read their overall
ØStudent Module performance in keeping with the student’s feedback. And
ØFaculty Module student’s identity isn't unconcealed to the faculty.
There will be a graphical illustration of student's feedback
Firstly, there’s admin module which has admin login portal.
in order that faculty will clearly perceive his/her
The username and password of admin is initially fixed. After
strengths. Next, the polarity of the words in each sentence
login, Admin views the students as well as faculty accounts
were calculated. The polarity scores are assigned as given
and can modify their details. The whole data is stored in the
below: If there's only 1 opinion word in an exceedingly
database. The admin also adds the students and faculty
sentence, the corresponding positive scores or negative
details in the database. The admin also can delete the
scores area unit allotted mistreatment Ws=Os
student’s as well as the faculty data. The admin can view all
If one modifier word and one opinion word area unit
the feedbacks results present in the database. The identity of
found along,
the student who gave the feedback is given by the admin.
Ws=(100%+Sinf) * Os
Then there’s student module that has student login portal. If 2 modifier words and one opinion word area unit found in
every and each valid student has their distinctive username an exceedingly sentence Ws=(100%+Sinf) * (100%+Sinf) *
and password that is given by admin. The username and
Os
password once entered are checked with data in database.
If a negation word ahead of the opinion word is found in
when login, the coed will read the subject’s feedback that
an exceedingly sentence Ws=Ws*(-1).
he/she needs to submit. Then in the feedback form, the name
Where
of the faculty automatically comes who teaches that
‘Ws’ is that the linguistics orientation score of mixing words.
particular subject. within the feedback from, there are
‘Sinf’ is that the qualifier worth of word supported 100
multiple fields that student should show his opinion. The
percent.
fields are Vocabulary and visual communication, Audibility,
‘Os’ is that the score of opinion word from sentiment word
clarification, Subject Command etc., when the submission of
info.
feedback the answers of all the queries are analyzed and also
the result's hold on in information.
Student Feedback Table:
Let us consider there are 6 students. They have to give
ESM VBL DCI ISC feedback to one of their faculty.
Everythi Voice Friendly Intime following table represents the feedback form for one
ng is is so interaction syllabus faculty(say):
good fast was Subject: OST lab
completed Faculty: S.Joshua Johnson Class&Section:3&C Academic
Good Bad Bad Good year:2018-2019
I am not good Doubts are All topics
satisfied clarified covered in ISC: Intime Syllabus Coverage
with the even time
explanati outside Graphical Representation of student feedback on faculty
on the teaching:
classroom
Good Very Very good Very good
good
Good Good Good Good
Good Good Good Good
Where
ESM: - Explanation and subject Command VBL: -Voice
and visual communication DCI: -Doubt clearance and
Interaction
If the coed has already given the feedback of that specific
Fig. 6.1: Feedback result of Faculty in Graphical Notation
teacher, then he/she can’t provide the feedback once more.
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 5
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 04 | Apr 2020 www.irjet.net p-ISSN: 2395-0072
REFERENCES
[1] A. El-Halees, “Mining opinions in user- generated
contents to improve course evaluation,” Software
Engineering and Computer Systems, pp. 107-115, 2011.
http://www.cdtl.nus.edu.sg/publications/studfeedback
/StudFeedback_Teach Quality. pdf.
[4] Khin Zezawar Aung,"Analysing Sentiment in Student-
Teacher Textual Comments Using Lexicon Based
Approach". pp. 29-06,2017.
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 6