Mini Project Final Doc.docx

  • Uploaded by: Ravali
  • 0
  • 0
  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Mini Project Final Doc.docx as PDF for free.

More details

  • Words: 6,109
  • Pages: 56
A Mini Project Report On “SENTIMENT CLASSIFICATION USING SENTIMENT

EMBEDDINGS FOR CROSS DOMAINS ” Submitted in partial fulfillment of the requirement for the award of the degree of

BACHELOR OF TECHNOLOGY In COMPUTER SCIENCE AND ENGINEERING

By

GURDEEP KAUR JANDU

(15UPIA0524)

PRANAVA CHINDAM

(15UP1A0511)

Under the guidance of Dr. A . GAUTAMI LATHA DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VIGNAN’S INSTITUTE OF MANAGEMENT AND TECHNOLOGY FOR WOMEN (Approved by AICTE, New Delhi & Affiliated to JNTU, Hyderabad) KONDAPUR (V), GHATKESAR (M), RANGAREDDY (DT), TELANGANA, INDIA501301 www.vmtw.in 2015-2019

VIGNAN’S INSTITUTE OF MANAGEMENT AND TECHNOLOGY FOR WOMEN

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING DECLARATION

We hereby declare that the project entitled “Sentiment Classification Using Sentiment Embeddings For Cross Domains” is bonafide work duly completed by us. It does not contain any part of the project or thesis submitted by any other candidate to this or any other institute of the university.

All such materials that have been obtained from other sources have been duly acknowledged.

GURDEEP KAUR JANDU (15UPIA0524) PRANAVA CHINDAM (15UP1A0511)

VIGNAN’S INSTITUTE OF MANAGEMENT AND TECHNOLOGY FOR WOMEN

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CERTIFICATE This is to certify that the thesis work titled “Sentiment Classification Using Sentiment Embeddings For Cross Domains” submitted by Gurdeep Kaur Jandu(15UP1A0524) , Pranava Chindam(15UP1A0511) in partial fulfillment of the requirements for the award of the degree of Bachelor of Technology in Computer Science & Engineering to the Vignan's Institute Of Management And Technology For Women, Ghatkesar

is a record of

bonafide work carried out by them under my guidance and supervision. The results embodied in this project report have not been submitted in any university for the award of any degree and the results are achieved successfully.

Mrs. A.GAUTAMI LATHA Associate Professor

Mrs. A.GAUTAMI LATHA Associate Professor

(Head of the Department)

(Head of the Department)

(EXTERNAL EXAMINER)

ACKNOWLEDGEMENT

We would like to express our sincere gratitude to Dr. P.Sudhakara Rao, Principal, Vignan’s Institute of Management and Technology for Women for his timely suggestions which helped us to complete the project.

We would also like to thank our madam Mrs.Dr.A.Gautami Latha, Associate Professor and Head of the Department, Computer Science and Engineering for providing us with constant encouragement and resources which helped us to complete the project.

We would like to thank our project guide, Mrs.Dr.A.Gautami Latha, Associate Professor and Head of the Department, Computer Science and Engineering for her timely cooperation and valuable suggestions throughout the project. We would also like to thank all our professors, lecturers, teaching and non-teaching staff-members, parents and friends for their motivation and encouragement which helped us complete the project. With the grace of Almighty, all the efforts put, have yielded fruitful results. We express our sincere gratitude towards each and everyone who has been supportive in the successful completion of this project.

GURDEEP KAUR JANDU (15UPIA0524) PRANAVA CHINDAM (15UP1A0511)

INDEX ABSTRACT

i

LIST OF FIGURES

ii

LIST OF TABLES

iii

1. INTRODUCTION

1

1.1. Existing System

1

1.2. Proposed System

2

2. LITERATURE SURVEY

3

2.1. Feasibility Analysis

3

2.2.Related Work

4

2.2.1. A neural probabilistic language model

4

2.2.2. Distributed representations of words and phrases

4

2.2.3. Word alignment modeling

5

2.2.4. Learning Sentiment-specific word embedding

5

3. SYSTEM REQUIREMENTS

6

4. SYSTEM ARCHITECTURE

7

5. SYSTEM DESIGN

8

5.1. Use case Diagram

9

5.2. Class Diagram

10

5.3. Sequence Diagram

11

5.4. Flowchart for User

12

5.5. Flowchart for Admin

13

6. IMPLEMENTATION 6.1. Modules

14 14

6.1.1 . Admin & User Entity

14

6.1.2. Word Level Sentiment Classification

14

6.1.3. Sentiment Level Sentiment Classification

14

6.2. Sample code 7. SYSYTEM TESTING

15 23

7.1. Types of tests

23

7.2. Unit Testing

23

7.3. Integration Testing

24

7.4. Acceptance Testing

24

7.5. Testing Methodologies

24

7.6. Other Testing Methodologies

25

7.7. Testing Strategy

27

7.8. Test Cases

27

8. RESULTS

28

9. CONCLUSIONS

44

10. REFERENCES

45

Sentiment Classification Using Sentiment Embeddings

ABSTRACT

Unsupervised Cross-domain Sentiment Classification is the task of adapting a sentiment classifier trained on a particular domain (source domain), to a different domain (target domain), without requiring any labeled data for the target domain. By adapting an existing sentiment classifier to previously unseen target domains, we can avoid the cost for manual data annotation for the target domain. We model this problem as embedding learning, and construct three objective functions that capture: (a) distributional properties of pivots (i.e., common features that appear in both source and target domains), (b) label constraints in the source domain documents, and (c) geometric properties in the unlabeled documents in both source and target domains. Unlike prior proposals that first learn a lower-dimensional embedding independent of the source domain sentiment labels, and next a sentiment classifier in this embedding, our joint optimisation method learns embeddings that are sensitive to sentiment classification. . Among the individual objective functions, the best performance is obtained by (c). Moreover, the proposed method reports cross-domain sentiment classification accuracies that are statistically comparable to the current state-of-the-art embedding learning methods for cross-domain sentiment classification.

Department of CSE

i

VMTW

Sentiment Classification Using Sentiment Embeddings

LIST OF FIGURES NAME

PAGE NO.

System Architecture

7

Use case Diagram

9

Class Diagram

10

Sequence Diagram

11

Flowchart for User

12

Flowchart for Admin

13

Home page

28

Admin login page

29

Admin home page

30

Adding new domains and list of added domains

31

Adding new products

32

Viewing all products

33

Search history of users

34

Registration page for users

35

User login page

36

User home page

37

User searching products

38

User reviews about product

39

Express feelings using emojis

40

Product reviews

41

Positive and negative reviews of products

42

Graph analyzation of product

43

Department of CSE

ii

VMTW

Sentiment Classification Using Sentiment Embeddings

LIST OF TABLES NAME

PAGE NO

Test case for user module

27

Test case for admin module

27

Department of CSE

iii

VMTW

Sentiment Classification Using Sentiment Embeddings

Department of CSE

iv

VMTW

Sentiment Classification Using Sentiment Embeddings

1. INTRODUCTION The ability to correctly identify the sentiment expressed in user-reviews about a particular product is an important task for several reasons . First, if there is a negative sentiment associated with a particular feature of a product, the manufacturer can take immediate actions to address the issue. From the users point-of-view, in online stores where one cannot physically touch and evaluate a product as in a real-world store, the user opinions are the only available subjective descriptors of the product . By automatically classifying the user-reviews , we can assist the potential buyers of a product to easily understand the overall opinion about that product. Sentiment classification can be considered as an instance of text classification where a given document must be classified into a pre-defined set of sentiment classes . We use the term document to refer various types of user reviews. In binary sentiment classification, a document must be classified into two classes depending on whether it expresses a positive or a negative sentiment towards an entity. We are proposing a system which classifies the reviews based on different domains .

1.1. EXISTING SYSTEM One popular solution to cross-domain sentiment classification is to first project the source and the target features into the same lower-dimensional embedding, and subsequently learn a sentiment classifier on this embedded feature space. This approach is particularly attractive when there is little overlap between the original source and the target feature spaces. Similarly distributed words in the source and the target domains get mapped to closer points in the embedded space, thereby reducing the mismatch of features in the two domains. Prior work on cross-domain sentiment classification use unlabeled data from the source and the target domains to first learn a low-dimensional embedding for the two domains. Next, labeled reviews in the source domain are projected onto this embedding. Finally, a binary sentiment classifier is trained using the projected source domain labeled training instances.

Department of CSE

1

VMTW

Sentiment Classification Using Sentiment Embeddings

A limitation of existing two-step approach that decouples the embedding learning and sentiment classifier training is that the embeddings learnt in the first step is agnostic to the sentiment of the documents, which is the ultimate goal in cross-domain sentiment classification. This method does not consider source domain labeled data during the PLSR step, which makes the projection agnostic to sentiment classification. Supervised dimensionality reduction methods are prone to overfitting when the number of labeled instances are small.

1.2. PROPOSED SYSTEM The embedding learnt by our method enforces three important requirements. First, a set of domain independent features (also known as pivots) are selected from the source and target domains which must be mapped as close as possible in the embedded space. Second, friend closeness and enemy dispersion of the source domain labeled documents must be preserved. In other words, positively labeled documents must be embedded closer to each other and far from the negatively labeled documents. Likewise, negatively labeled documents must be embedded closer to each other and far from the positively labeled documents. Third, within each domain, the local geometry among the documents must be preserved. For example, unlabeled neighbor documents in the source domain must be embedded closer to each other in the embedded space whereas, unlabeled neighbor documents in the target domain must be embedded closer to each other in the embedded space. We evaluate the effectiveness of sentiment embeddings empirically by applying them to two sentiment analysis tasks. Word level sentiment analysis on benchmark sentiment lexicons can help us see whether sentiment embeddings are useful to discover similarities between sentiment words. Sentence level sentiment classification on tweets and reviews help us understand whether sentiment embeddings are helpful in capturing discriminative features for predict the sentiment of text. The proposed method can be easily extended to more than two sentiment.

2.LITERATURE SURVEY Department of CSE

2

VMTW

Sentiment Classification Using Sentiment Embeddings

The purpose of the literature survey is to place the each work in the context of its contribution to understanding the research problem being studied. It also identifies new ways to interpret prior research .

2.1. FEASIBLITY ANALYSIS An important outcome of preliminary investigation is the determination that the system request is feasible. This is possible only if it is feasible within limited resource and time. The different feasibilities that have to be analyzed are 

Operational Feasibility



Economic Feasibility



Technical Feasibility

2.1.1 OPERATIONAL FEASIBILITY: Operational Feasibility deals with the study of prospects of the system to be developed. This system operationally eliminates all the tensions of the Admin and helps him in effectively tracking the project progress. This kind of automation will surely reduce the time and energy, which previously consumed in manual work. Based on the study, the system is proved to be operationally feasible.

2.1.2 ECONOMICAL FEASIBILITY: Economic Feasibility or Cost-benefit is an assessment of the economic justification for a computer based project. As hardware was installed from the beginning & for lots of purposes thus the cost on project of hardware is low. Since the system is a network based, any number of employees connected to the LAN within that organization can use this tool from at anytime. The Virtual Private Network is to be developed using the existing resources of the organization. So the project is economically feasible. 2.1.3. TECHNICAL FEASIBILITY:

Department of CSE

3

VMTW

Sentiment Classification Using Sentiment Embeddings

According to Roger S. Pressman, Technical Feasibility is the assessment of the technical resources of the organization. The organization needs IBM compatible machines with a graphical web browser connected to the Internet and Intranet. The system is developed for platform Independent environment. Java Server Pages, JavaScript, HTML, SQL server and WebLogic Server are used to develop the system. The technical feasibility has been carried out. The system is technically feasible for development and can be developed with the existing facility.

2.2. RELATED WORK 2.2.1. A neural probabilistic language model Authors: Y. Bengio, R. Ducharme, P. Vincent, and C. Janvin. A goal of statistical language modeling is to learn the joint probability function of sequences of words in a language. This is intrinsically difficult because of the curse of dimensionality: a word sequence on which the model will be tested is likely to be different from all the word sequences seen during training. Traditional but very successful approaches based on n-grams obtain generalization by concatenating very short overlapping sequences seen in the training set. They proposed to fight the curse of dimensionality by learning a distributed representation for words .

2.2.2. Distributed representations of words and phrases

Authors: T. Mikolov, I. Sutskever, K. Chen, G. Corrado, and J. Dean. The recently introduced continuous Skip-gram model is an efficient method for learning high-quality distributed vector representations that capture a large number of precise syntactic and semantic word relationships. In this they present several extensions that improve both the quality of the vectors and the training speed. By subsampling of the frequent words we obtain significant speedup and also learn more regular word representations. They also describe a simple alternative to the hierarchical softmax called negative sampling.

Department of CSE

4

VMTW

Sentiment Classification Using Sentiment Embeddings

2.2.3. Word alignment modeling with context dependent Authors: N. Yang, S. Liu, M. Li, M. Zhou, and N. Yu. They explored a novel bilingual word alignment approach based on DNN (Deep Neural Network), which has been proven to be very effective in various machine learning tasks . We describe in detail how we adapt and extend the CD-DNNHMM method introduced in speech recognition to the HMM based word alignment model, in which bilingual word embedding is discriminatively learnt to capture lexical translation information, and surrounding words are leveraged to model context information in bilingual sentences.

2.2.4. Learning Sentiment-specific word embedding Authors: D. Tang, F. Wei, N. Yang, M. Zhou, T. Liu, and B. They present a method that learns word embedding for Twitter sentiment classification. Most existing algorithms for learning continuous word representations typically only model the syntactic context of words but ignore the sentiment of text. This is problematic for sentiment analysis as they usually map words with similar syntactic context but opposite sentiment polarity, such as good and bad, to neighboring word vectors. It address this issue by learning sentiment specific word embedding (SSWE).

3. SYSTEM REQUIREMENTS

Department of CSE

5

VMTW

Sentiment Classification Using Sentiment Embeddings

3.1 SOFTWARE REQUIREMENTS Operating system

: Windows 7

Coding Language :

JAVA

Database

:

MYSQL

Web server

:

Apache Tomcat

3.2. HARDWARE REQUIREMENTS Processor

: intel core i3

Hard disk

: 120 GB

Monitor

: 15” LED

RAM

:

4 GB

4. SYSTEM ARCHITECTURE

Department of CSE

6

VMTW

Sentiment Classification Using Sentiment Embeddings

Figure(1): System architecture for Sentiment Embeddings for Cross Domains .

5. SYSTEM DESIGN UML DIAGRAMS Department of CSE

7

VMTW

Sentiment Classification Using Sentiment Embeddings

UML stands for Unified Modeling Language. UML is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created by, the Object Management Group. The goal is for UML to become a common language for creating models of object oriented computer software.

Use Case Diagram A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram defined by and created from a Use-case analysis. . The main purpose of a use case diagram is to show what system functions are performed for which actor. Roles of the actors in the system can be depicted. Class 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 the classes. It explains which class contains information . Sequence Diagram A sequence diagram in Unified Modeling Language (UML) is a kind of interaction diagram that shows how processes operate with one another and in what order.

5.1 USECASE DIAGRAM Sentiment Embedding using Sentiment Classification for cross domains

Department of CSE

8

VMTW

Sentiment Classification Using Sentiment Embeddings

Registration Login

Add And View Domains

Add New Products

Search Product

Give Reviews For Product

User

Admin

View Reviews For Products View User History

View All Products

View Positive and Negative Reviews For Domains

View Graph Analyzation of domain Reviews

Logout

This diagram explains about the various actors who interact with the system and view the products , give reviews and analyze the reviews . Each user has their specific function represented by oval shaped . It gives the functionality of the system .

5.2. CLASS DIAGRAM

Admin

User Department of CSE

9

VMTW Add And View Domain()

Sentiment Classification Using Sentiment Embeddings

username password

username password

This diagram gives the details of the attributes and operations that can be performed by each entity of the system . The system can be accessed only after successful authentication .

5.3. SEQUENCE DIAGRAM

Department of CSE

10

SERVICE VMTW

Sentiment Classification Using Sentiment Embeddings

DATABASE

This diagram shows the interaction between the user , admin and database which are shown in timelines .

5.4. FLOWCHART FOR USER This flowchart shows the actions performed by the user upon authorized login.

Department of CSE

11

VMTW

Sentiment Classification Using Sentiment Embeddings

USER login

Unauthorized user

Check

Search Products

Give Reviews

View Reviews

View Search History

View All Products

End process

5.5. FLOWCHART FOR ADMIN This flowchart shows the actions performed by the admin upon authorized login.

Department of CSE

12

VMTW

Sentiment Classification Using Sentiment Embeddings

ADMIN LOGIN

Yes

No Check

Unauthorized

Add And View Domain

Add New Product

View All Products

View Users Search History

View Positive and Negative Reviews of Domain

View Graph Analyzation Of Domain

End process

6 . IMPLEMENTATION 6.1. MODULES:

Department of CSE

13

VMTW

Sentiment Classification Using Sentiment Embeddings

This application that is designed is split into modules where module handles their respective tasks . The modules are : 1. Admin & user entity 2. Word level sentiment classification 3. Sentence level sentiment classification.

6.1.1 . ADMIN & USER ENTITY The users view the Uploaded product details and give reviews to that products and users expose their emotions by the way of emojis. Admin upload the products under the products domains for the users. Admin can view all uploaded products .Here admin is view domains the sentiment analysis of the Users reviews and emojis.

6.1.2. WORD LEVEL SENTIMENT CLASSIFICATION A sentiment embedding should have the ability to map positive words into close vectors, to map negative words into close vectors, and to separate positive words and negative words apart. We conduct word level sentiment classification to further investigate the effectiveness of sentiment embeddings in capturing similarities between sentiment words.

6.1.3. SENTENCE LEVEL SENTIMENT CLASSIFICATION This helps us to investigate whether sentiment embedding is capable of capturing discriminative features for classifying the polarity labels (e.g., emojis) of text.

6.2. SAMPLE CODE 6.2.1. SAMPLE CODE FOR CHECKING POSITIVE REVIEWS File name : checkingm2.jsp

Department of CSE

14

VMTW

Sentiment Classification Using Sentiment Embeddings

<%@page import="network.DbConnection"%> <%@page import="java.io.InputStreamReader"%> <%@page import="java.io.BufferedReader"%> <%@page import="java.io.InputStream"%> <%@page import="java.util.regex.Matcher"%> <%@page import="java.util.regex.Pattern"%> <%@page import="java.sql.Statement"%> <%@page import="java.sql.Connection"%> <%@page import="java.sql.ResultSet"%> <%@page import="java.util.logging.Level"%> <%@page import="java.io.FileNotFoundException"%> <%@page import="java.util.Scanner"%> <%@page import="java.io.File"%> <%@page import="java.util.ArrayList"%> <%@page import="java.util.List"%> <%

Integer count=0; //creating Arraylist of Strings

List<String> timesArray = new ArrayList<String>(); File file = new File("E:\\poss.txt"); // opens poss.txt file Scanner scanner = null; Statement st4=null; Connection con4=null; scanner = new Scanner(file);

Department of CSE

15

VMTW

Sentiment Classification Using Sentiment Embeddings

try { while (scanner.hasNextLine()) { String[] times = scanner.nextLine().split(","); // creates an array of each string separated by a comma(,) for (String time : times) { timesArray.add(time);//adds strings to timesArray } System.out.println(timesArray); String text=null; String productname; String productid; String reviews; String InputStream; String domains; String topic; String ffid; String filename; String username; String domain = request.getParameter("domain"); //returns string value given in domain session.setAttribute("domain", domain); //saves an domain in session with unique name "domain" ResultSet rs3; Connection con3 = DbConnection .getConnection(); //connection is established

Department of CSE

16

VMTW

Sentiment Classification Using Sentiment Embeddings

Statement st3 = (Statement) con3.createStatement(); rs3 = (ResultSet) st3.executeQuery("SELECT * FROM review where domain = '" + domain + "' "); //retrieves review from database using SQL query StringBuffer sb=new StringBuffer(); //creates a empty string buffer of name sb while(rs3.next()) {

productid = rs3.getString("productid"); productname = rs3.getString("title"); domains = rs3.getString("domain"); reviews = rs3.getString("review"); text = reviews; String[] regexp = times; //creates the string for (int i=0;i<=regexp.length-1;i++) { System.out.println(regexp[i]); //prints data present regexp Pattern pattern = Pattern.compile(regexp[i]); //creates a pattern instance Matcher matcher = pattern.matcher(text); //creates a matcher instance

for (count = 0; matcher.find(); count++) ; //matcher.find() - find the match for the text that is passed String status = "dsfds"; String textt = "fgdfg"; System.out.println("Count: " + count); System.out.println("&&&&&&&&&&&&&&&"+regexp[i]); st4=(Statement) con3.createStatement();

Department of CSE

17

VMTW

Sentiment Classification Using Sentiment Embeddings

String sql = "insert into positive(productid,productname ,review, countt, reputation,domain)values ('" + productid + "','" + productname + "','" + text + "','" + count + "','" + regexp[i] + "','" + domains + "')"; //query to insert record in positive table int x=st4.executeUpdate(sql); if(x!=0){ System.out.println("not inserted"); } else{ System.out.println("uninserted"); }} System.out.println("Count: " +text);} con3.close(); st3.close(); st4.close(); }}

catch (Exception ex) { ex.printStackTrace(); } response.sendRedirect("checkingn3.jsp"); %>

6.2.2. SAMPLE CODE FOR CHECKING NEGATIVE REVIEWS File name: checkingn3.jsp Department of CSE

18

VMTW

Sentiment Classification Using Sentiment Embeddings

<%@page import="network.DbConnection"%> <%@page import="java.io.InputStreamReader"%> <%@page import="java.io.BufferedReader"%> <%@page import="java.io.InputStream"%> <%@page import="java.util.regex.Matcher"%> <%@page import="java.util.regex.Pattern"%> <%@page import="java.sql.Statement"%> <%@page import="java.sql.Connection"%> <%@page import="java.sql.ResultSet"%> <%@page import="java.util.logging.Level"%> <%@page import="java.io.FileNotFoundException"%> <%@page import="java.util.Scanner"%> <%@page import="java.io.File"%> <%@page import="java.util.ArrayList"%> <%@page import="java.util.List"%> <% Integer count=0; List<String> timesArray = new ArrayList<String>(); File file = new File("E:\\negative.txt");// opens negative.txt file Scanner scanner = null; Statement st4=null; Connection con4=null; scanner = new Scanner(file);

Department of CSE

19

VMTW

Sentiment Classification Using Sentiment Embeddings

try { while (scanner.hasNextLine()) { String[] times = scanner.nextLine().split(","); //creates an array of each string separated by a comma(,) for (String time : times) { timesArray.add(time);//adds string to timesArray } System.out.println(timesArray); String text=null; String productname; String productid; String reviews; String InputStream; String domains; String topic; String ffid; String filename; String username; String domain = request.getParameter("domain"); //returns a string value given in domain session.setAttribute("domain", domain); //saves the domain values in session with unique name "domain" ResultSet rs3; Connection con3 = DbConnection .getConnection();//connection is established

Department of CSE

20

VMTW

Sentiment Classification Using Sentiment Embeddings

Statement st3 = (Statement) con3.createStatement(); rs3 = (ResultSet) st3.executeQuery("SELECT * FROM review where domain = '" + domain + "' "); //retrieves review from the database using SQL query StringBuffer sb=new StringBuffer();//creates an empty string buffer of name sb while(rs3.next()) {

productid = rs3.getString("productid"); productname = rs3.getString("title"); domains = rs3.getString("domain"); reviews = rs3.getString("review"); text = reviews; String[] regexp = times; //creates a string for (int i=0;i<=regexp.length-1;i++) { System.out.println(regexp[i]); Pattern pattern = Pattern.compile(regexp[i]);//creates a pattern instance Matcher matcher = pattern.matcher(text);//creates matcher instance

for (count = 0; matcher.find(); count++) ; //matcher.find() - find the match for the text that is passed String status = "dsfds"; String textt = "fgdfg"; System.out.println("Count: " + count); System.out.println("&&&&&&&&&&&&&&&"+regexp[i]); st4=(Statement) con3.createStatement();

Department of CSE

21

VMTW

Sentiment Classification Using Sentiment Embeddings

String sql = "insert into negative(productid,productname ,review, countt, reputation,domain)values ('" + productid + "','" + productname + "','" + text + "','" + count + "','" + regexp[i] + "','" + domains + "')"; //query to insert record into negative table int x=st4.executeUpdate(sql); if(x!=0){ System.out.println("not inserted"); } else{ System.out.println("uninserted"); }} System.out.println("Count: " +text);} con3.close(); st3.close(); st4.close(); }}

catch (Exception ex) { ex.printStackTrace(); } response.sendRedirect("positiverev1.jsp"); %>

7. SYSTEM TESTING Department of CSE

22

VMTW

Sentiment Classification Using Sentiment Embeddings

System testing is series of different tests whose primary purpose is to fully exercise the computer based system. Although each test has a different purpose, all the work should verify that all system element have been properly integrated and perform allocated functions. System Implementation is the process of having systems personnel check out and put newly developed package into use, train users how to interact with it, install the new application and construct any files of data needed to use the package. The purpose of testing is to discover errors. Testing is the process of trying to discover every conceivable fault or weakness in a work product. It provides a way to check the functionality of components, sub assemblies, assemblies and/or a finished product It is the process of exercising software with the intent of ensuring that the software system meets its requirements and user expectations and does not fail in an unacceptable manner. There are various types of test. Each test type addresses a specific testing requirement.

7.1. TYPES OF TESTING The different types of testing are: 

Unit testing



Integration testing



Acceptance testing

7.2. UNIT TESTING Unit testing involves the design of test cases that validate that the internal program logic is functioning properly, and that program inputs produce valid outputs. All decision branches and internal code flow should be validated. It is the testing of individual software units of the application .it is done after the completion of an individual unit before integration. This is a structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform basic tests at component level and test a specific business process, application, and/or system configuration. Unit tests ensure that each unique path

Department of CSE

23

VMTW

Sentiment Classification Using Sentiment Embeddings

of a business process performs accurately to the documented specifications and contains clearly defined inputs and expected result.

7.3. INTEGRATION TESTING Integration tests are designed to test integrated software components to determine if they actually run as one program. Testing is event driven and is more concerned with the basic outcome of screens or fields. Integration tests demonstrate that although the components were individually satisfaction, as shown by successfully unit testing, the combination of components is correct and consistent. Integration testing is specifically aimed at exposing the problems that arise from the combination of components.

7.4. ACCEPTANCE TESTING User Acceptance Testing is a critical phase of any project and requires significant participation by the end user. It also ensures that the system meets the functional requirements.

7.5. TESTING METHODOLOGIES UNIT TESTING Unit Testing is defined as a type of software testing where individual units/ components of a software are tested .Unit Testing of software applications is done during the development (coding) of an application. The objective of Unit Testing is to isolate a section of code and verify its correctness. In procedural programming, a unit may be an individual function or procedure. Unit Testing is usually performed by the developer.

INTEGRATION TESTING Integration Testing is defined as a type of testing where software modules are integrated logically and tested as a group. A typical software project consists of multiple software modules, coded by different programmers. Integration Testing focuses on checking data communication amongst these modules.

Department of CSE

24

VMTW

Sentiment Classification Using Sentiment Embeddings

SYSTEM TESTING System testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. An example of system testing is the configuration oriented system integration test. System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points.

PERFORMANCE TESTING Performance Testing is defined as a type of software testing to ensure software applications will perform well under their expected workload. Features and Functionality supported by a software system is not the only concern. A software application's performance like its response time, reliability, resource usage and scalability do matter. The goal of Performance Testing is not to find bugs but to eliminate performance bottlenecks.

7.6 OTHER TESTING METHODOLOGIES

FUNCTIONAL TESTING Functional tests provide systematic demonstrations that functions tested are available as specified by the business and technical requirements, system documentation, and user manuals.

Functional testing is centered on the following items: Valid Input

: identified classes of valid input must be accepted.

Invalid Input

: identified classes of invalid input must be rejected.

Functions

: identified functions must be exercised.

Department of CSE

25

VMTW

Sentiment Classification Using Sentiment Embeddings

Output

: identified classes of application outputs must be exercised.

Systems/Procedures

: interfacing systems or procedures must be invoked.

Organization and preparation of functional tests is focused on requirements, key functions, or special test cases. In addition, systematic coverage pertaining to identify Business process flows; data fields, predefined processes, and successive processes must be considered for testing. Before functional testing is complete, additional tests are identified and the effective value of current tests is determined.

WHITE BOX TESTING White Box Testing is a testing in which in which the software tester has knowledge of the inner workings, structure and language of the software, or at least its purpose. It is purpose. It is used to test areas that cannot be reached from a black box level.

BLACK BOX TESTING Black Box Testing is testing the software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as specification or requirements document, such as specification or requirements document. It is a testing in which the software under test is treated, as a black box .you cannot “see” into it. The test provides inputs and responds to outputs without considering how the software works.

7.7. TESTING STRATEGIES Field testing will be performed manually and functional tests will be written in detail. The different types of testing strategies are : 

Unit testing



Integration testing



Validation testing



System testing

Department of CSE

26

VMTW

Sentiment Classification Using Sentiment Embeddings

7.8. TEST CASES Test case for user module :

Test Case

Input

Valid login

Username, password

Invalid login

Username, Password

Expected Output Success

Actual Output Success

Failed

Failed

Expected Output Success

Actual Output Success

Failed

Failed

Description Test Passed ,Control transferred to menu . Test Passed . Try Again or register If the first user

Test case for Admin module : Test Case

Input

Valid login

Username, password

Invalid login

Username, Password

Description Test Passed ,Control transferred to menu . Test Passed . Displays the message of Incompleteness of failure

8. RESULTS 8.1. FORMS AND REPORTS HOME PAGE : This is home page of our application which is started using web browser , which includes menus admin where like HOMEPAGE , USER,ADMIN

Department of CSE

27

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(ii): Home Page

FORM 1 : ADMIN LOGIN PAGE This login page is for admin where admin need to enter correct username and password to login .

Department of CSE

28

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(iii) : Admin Login Page

REPORT 1: ADMIN HOME PAGE : This page includes all the actions performed by admin such as adding domains , products and graph analyzation of reviews .

Department of CSE

29

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(iv) : Admin Home Page

FORM 2: ADDING NEW DOMAINS & LIST OF ADDED DOMAIN : Here admin is adding kitchen appliances as domain and previously added domains are also listed below i.e., laptops ,Books .

Department of CSE

30

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(v) : Adding New Domains & List of Added Domain

FORM 3: ADDING NEW PRODUCTS After adding domains , admin upload the products with fields such as product name , price , description and product image .

Department of CSE

31

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(vi) : Adding New Products

REPORT 2: VIEWING ALL PRODUCTS Admin can also view all product list been with fields such as product name , price , description uploaded with their associated description .

Department of CSE

32

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(vii) : Viewing All Products

REPORT 3: SEARCH HISTORY OF USERS Admin can view the user search history i.e., at what time a user searched for a product .

Department of CSE

33

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(viii) : Search History of Users

FORM 4: REGISTRATION PAGE FOR USERS: If user want to give reviews ,he need to first register by filling the details such as name , email , password , gender , dob , phone no. ,location .

Department of CSE

34

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(ix) : Registration Page for Users.

FORM 5: USER LOGIN PAGE This page shows the login page for the users . After registration only a user can login by entering valid username and password .

Department of CSE

35

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(x) : User Login Page

REPORT 4: USERS HOME PAGE : Once user logins ,user can search for a product and give Reviews for the products

.

Department of CSE

36

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xi) : Users home page

FORM 6: USER SEARCHING PRODUCT : User can search for product by entering product name and searched results will be viewed .

Department of CSE

37

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xii) : User Searching Product

REPORT 5: USER REVIEWS ABOUT PRODUCT : Users give reviews for a particular product either a in form of word or in a sentence .

Department of CSE

38

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xii) : User Reviews about Product

REPORT 6: EXPRESS FEELINGS USING EMOJIS : User can not only express his reviews on a particular product in text but also using emojis .

Department of CSE

39

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xiii) : Express Feelings using emojis

REPORT 7: PRODUCT REVIEWS : All the reviews given by a user can be viewed for a particular product in this page .

Department of CSE

40

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xiv) : product reviews

REPORT 8: POSITIVE AND NEGATIVE REVIEWS PRODUCT : Once users express their feelings and admin can differentiate positive and negative reviews for a particular domain .

Department of CSE

41

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xv) : Positive and Negative Reviews

REPORT 9: GRAPH ANALYZATION OF PRODUCT Admin can easily analyze the reviews in graphical representation where blue color represents positive reviews , red color represents negative reviews .

Department of CSE

42

VMTW

Sentiment Classification Using Sentiment Embeddings

Fig(xvi) : Graph Analyzation of Product

9. CONCLUSION As we have considered three constraints i.e., a) a set of domain independent features (also known as pivots)

Department of CSE

43

VMTW

Sentiment Classification Using Sentiment Embeddings

b) Label constraints in the source domain documents and c) Geometric properties of both domains. that must be satisfied by an embedding that can be used to train a cross

domain

sentiment classification method. We evaluated the performance of the individual constraints as well as their combinations using a benchmark dataset for cross domain sentiment classification. Our experimental results show that some of the combinations of the proposed constraints . Unlike previously proposed embedding learning approaches for cross-domain sentiment classification, our proposed method uses the label information available for the source domain reviews, thereby learning embeddings that are sensitive to the final task of application, which is sentiment classification.

10.REFERENCES 1. D. Tang, F. Wei, N. Yang, M. Zhou, T. Liu, and B. Qin, “Learning Sentiment-specific word embedding for twitter sentiment classification,” in Proc. 52th Annu. Meeting Assoc. Comput. Linguistics., 2014, pp. 1555– 1565. Department of CSE

44

VMTW

Sentiment Classification Using Sentiment Embeddings

2. D. Tang, F. Wei, B. Qin, M. Zhou, and T. Liu, “Building large-scale twitterspecific sentiment lexicon: A representation learning approach,” in Proc. 25th Int. Conf. Comput. Linguistics, 2014, pp. 172–182.

3.

D. Tang, F. Wei, B. Qin, T. Liu, and M. Zhou, “Coooolll: A deep learning system for twitter sentiment classification,” in Proc. 8th Int. Workshop Semantic Eval., 2014, pp. 208–212.

4.

C. D. Manning and H. Sch€utze, Foundations of Statistical Natural Language Processing. Cambridge, MA, USA: MIT Press, 1999.

5. D. Jurafsky and H. James, Speech and Language Processing: An Introduction to Natural

Language

Processing,

Computational

Linguistics,

and

Speech

Recognition. Englewood Cliffs, NJ, USA: Prentice-Hall, 2000. 6. ] Y. Bengio, R. Ducharme, P. Vincent, and C. Janvin, “A neural probabilistic language model,” J. Mach. Learning Res., vol. 3, pp. 1137–1155, 2003. 7. T. Mikolov, I. Sutskever, K. Chen, G. Corrado, and J. Dean, “Distributed representations of words and phrases and their compositionality,” in Proc. Conf. Neural Inf. Process. Syst., 2013, pp. 3111–3119.

8. J. Pennington, R. Socher, and C. Manning, “Glove: Global vectors for word representation,” in Proc. Conf. Empirical Methods Natural Lang. Process., 2014, pp. 1532–1543.

9. Z. S. Harris, “Distributional structure,” Word, vol. 10, pp. 146–162, 1954.

Department of CSE

45

VMTW

Sentiment Classification Using Sentiment Embeddings

10. N. Yang, S. Liu, M. Li, M. Zhou, and N. Yu, “Word alignment modeling with context dependent deep neural network,” in Proc. 51st Annu. Meeting Assoc. Comput. Linguistics, 2013, pp. 166–175.

Department of CSE

46

VMTW

Related Documents

Mini Project Final Doc.docx
December 2019 10
Mini Project
April 2020 15
Mini Project
June 2020 13
Tqm Mini Project
June 2020 10

More Documents from "Noni Minty Belantric"