Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Mechanical Engineering Expert

Sentiment analysis is a subfield of NLP concerned with the determination of opinion and subjectivity in a text, which has application in the analysis of online product reviews, recommendations, blogs, and other types of opinionated documents.

In this assignment you will be developing classifiers for sentiment analysis of movie reviews using Support Vector Machines (SVMs), in the manner of the paper by Pang, Lee, and Vaithyanathan [1], which was the first research on this topic. The goal is to develop a classifier that performs sentiment analysis, assigning a movie review a label of "positive" or "negative" that predicts whether the author of the review liked the movie or disliked it.

You may use Java or Python programming and scripting languages of your choice for this assignment, but for the machine learning you must use SVMlight (section D). 

B. Data

The data (available on the course web page) consists of 1,000 positive and 1,000 negative reviews. These have been divided into training, validation, and test sets of 800, 100, and 100 reviews, respectively. In order to encourage you not to optimize against the testing set while developing your classifiers, the testing data will not be immediately available.

The reviews were obtained from Pang's website [2], and then part-of-speech tagged using a bidirectional Maximum Entropy Markov Model [3, 4].

Each document is formatted as one sentence per line. Each token is of the format word/POStag, where a "word" also includes punctuation. Each word is in lowercase. There is sometimes more than one slash in a token, such as in writer/director/NN.

C. Baseline system

For a baseline system, think of 20 words that you think would be indicative of a positive movie review, and 20 words that you think would be indicative of a negative review.

To develop the baseline classifier, take this approach: given a movie review, count how many times it contains either a positive word or a negative word (token occurrences). Assign the label POSITIVE if the review contains more positive words than negative words. Assign the label NEGATIVE if it contains more negative words than positive words. If there are an equal number of positive and negative words, it is a TIE.

D. Machine learning

The machine learning software to be used is SVMlight [5], which learns Support Vector Machines for binary classification. It is available for Unix systems, Windows, and Mac OS X.

You will need to read the documentation on the SVMlight website in order to figure out how to use the software. To test whether you know how to use it, it might be helpful to first create a small, "toy" dataset by hand, and then train and test the SVM on it.

When training the classifier, select the option for classification:

-z {c,r,p} - select between classification (c), regression (r), and

preference ranking (p)

A training file is of the format:

.=. : : ... : #

.=. +1 | -1 | 0 |

.=. | "qid"

.=.

.=.

Since we are doing binary classification, the value of should be +1 or -1.

Every feature (which may be expressed as an integer or a string) is associated with a value, which is a floating-point number. If you want a feature to be binary-valued, you may use values of 0.0 and 1.0.

With binary features, it is not necessary to include an explicit representation feature of features that do not occur. For example, suppose a document contains 100 different words out of a vocabulary of 50,000 possible words. If you are using binary features, it suffices to include a feature with a value of 1.0 for each of the words that do occur. You do not have to include a feature with a value of 0.0 for each of the 49,900 words that do not appear in the document.

You do not need to perform smoothing.

E. Feature sets

Use these feature sets for training and testing your classifier:

1. unigrams

2. bigrams

3. unigrams + POS

4. adjectives

5. top unigrams

6. optimized

Detailed explanation:

1. unigrams: use the word unigrams that occurred >= 4 times in the training data. Let this quantity be N.

2. bigrams: use the N most-frequent bigrams.

3. unigrams + POS: use all combinations of word/tag for each of the unigrams in (1). Since a word may occur with multiple tags, the quantity of this type of feature will be greater than N.

4. adjectives: use the adjectives that occurred >= 4 times. Let this quantity be M.

5. top unigrams: use the M most-frequent unigrams.

6. optimized: choose any combination of features you would like, to try to produce the best classifier possible. For example, you might choose different cutoff values for frequencies of different types of features. You could also create entirely new types of features. You could also try different settings for training the SVM. The optimized classifier should be produced through a process of repeatedly training the classifier and computing its performance on the validation set.

F. Evaluation

Train the SVMs on the training data and perform preliminary tests on the validation data. To evaluate your classifiers, compute the accuracy rate on the testing data, which is percentage of movie reviews correctly classified. For the baseline classifier, also compute the number of ties.

Evaluate your classifiers on the testing data when it is released. Do not further optimize your system based on performance on the testing data.

G. Turn in

Produce a document that states:

- Short descriptions of attached files

- A list of the positive and negative words chosen for your baseline system

- Performance of the baseline system on the test set

- A table listing the number of distinct features for each feature set. Since the split of the data into training and testing is not exactly the same as Pang et al.¡¦s, the quantity of different features will be similar, but not identical.

- A table of performance of the classifiers on the validation set and test set

- A written comparison of your results with Pang et al.'s (minimum 5 lines)

- produce a table listing the 50 most-frequently misclassified reviews (across all 6 classifiers) in the validation set, and the number of classifiers by which they were misclassified. For example, the review cv808_12635.txt might have been misclassified by 4 classifiers. Describe 5 different characteristics of the frequently misclassified reviews, showing excerpts from 2 reviews for each characteristic. For each of these characteristics, describe a possible feature that could be added to improve performance.

Mechanical Engineering, Engineering

  • Category:- Mechanical Engineering
  • Reference No.:- M9530655

Have any Question?


Related Questions in Mechanical Engineering

Question - truss structureconsider the three membered

Question - Truss Structure Consider the three membered planar truss structure shown in the figure below. All members of the truss have identical square cross-sectional area (A) of 25 mm x 25 mm, and Youngs Modulus (E) = ...

Projectflow processing of liquor in a mineral refining

Project Flow Processing of Liquor in a Mineral Refining Plant The aim of this project is to design a flow processing system of liquor (slurry) in a mineral (aluminum) refining plant. Aluminum is manufactured in two phase ...

5star questions amp answers1a define heat treatment bname

5 STAR QUESTIONS & Answers 1. A) Define Heat treatment B) Name different types of heat treatment processes C) Write any 4 purposes of Heat treatment 2. Explain various Heat treatment processes 3. A) Compare Thermo plasti ...

1 explain the term critical equipment and provide two clear

1. Explain the term "critical equipment" and provide two clear examples of machinery which falls into this category on board a twin screw motor vessel. 2. Explain the process of Charpy lmpact Testing including sample mar ...

Alocate ten minutes for the presentationuse audio visual

Allocate ten minutes for the presentation Use audio / visual / technological supports / aids where appropriate Use a minimum of 3 properly referenced articles. THEMES PRESENTATION TOPIC MEMORY Discuss the three learning ...

Fluid mechanics assignment - viscous flow in pipesq1 as

Fluid Mechanics Assignment - Viscous Flow in Pipes Q1. As shown in the figure below, water "bubbles up" 3 in. above the exit of the vertical pipe attached to three horizontal pipe segments. The total length of the 0.75-i ...

Fluid mechanics assignment - finite control volume analysis

Fluid Mechanics Assignment - Finite Control Volume Analysis and Dimensional Analysis Q1. The wind blows through a 7ft × 10ft garage door opening with a speed of 5 ft/s as shown in the figure. Determine the average speed, ...

Force exerted by jet on moving cart1 you need to determine

Force Exerted By Jet On Moving cart. 1. You need to determine the velocity of water that comes out from the nozzle of this system. need the equation please formulate the equation. 2. This water will strike a small cart a ...

Assignment - machine learning for signal processingproblem

Assignment - Machine Learning for Signal Processing Problem 1: Instantaneous Source Separation 1. As you might have noticed from my long hair, I've got a rock spirit. However, for this homework I dabbled to compose a pie ...

Questions -q1 a qualitative estimate of the effect of a

Questions - Q1. A qualitative estimate of the effect of a wind-tunnel contraction (Figure) on turbulent motion can be obtained by assuming that the angular momentum of eddies does not change through the contraction. Let ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As