3

How can I interpret whether a statement is a sarcastic one while dealing with various reviews from users? Stanford NLP (Natural Language Processing) can only tell whether it's a negative or a positive statement but sarcasm cannot be interpreted.

itoctopus
  • 4,133
  • 4
  • 32
  • 44
Sagar Ghai
  • 71
  • 1
  • 6
  • You will have to have some major artificial intelligence coded into your application to do that. That's a very interesting question by the way! – itoctopus Oct 06 '15 at 20:23
  • the application is itself meant to do sarcasm detection. Any idea what all will be required? @itoctopus – Sagar Ghai Oct 06 '15 at 20:33
  • But there isn't enough information in a statement to determine whether it is sarcastic. It is usually very context-specific. – Don Reba Oct 06 '15 at 22:48
  • "This program is such a pleasure to use" would be earnest for a program with a good UI or sarcastic for one where UI was clearly problematic. – Don Reba Oct 06 '15 at 22:50
  • 1
    A possible starting point: http://www.aclweb.org/anthology/P/P15/P15-2124.pdf – dmcc Oct 07 '15 at 01:13
  • An optional method (for building your training set) is using an existing sentiment classifier and classify reviews (let's say movie reviews for this example). The target is to find reviews that the classifier classified as negatives while they have the maximum number of stars and also reviews that were classified as positive that got the lowest amount of stars. Example: 'This movie is SO good' (classified as positive, # of stars: 1) – Lior Magen Apr 18 '16 at 10:38
  • Possible duplicate of [Can an algorithm detect sarcasm](http://stackoverflow.com/questions/14097388/can-an-algorithm-detect-sarcasm) – Ian Mercer Dec 03 '16 at 15:12

1 Answers1

1

there is a recent publication called "How Vector Space Mathematics Helps Machines Spot Sarcasm" that fits your question (link bellow).

I read this article, they use an supervided approach, that is, they extract few features from positives examples of sarcasm. Additionally, this article suggest Word2vec to increase the performance of the model.

To build a sarcasm classifier, you necessary need a training set. In this paper they use quotations from books in which users have tagged as #sarcastic from goodreads.com. You can crawler the quotes using this url: https://www.goodreads.com/quotes/tag/sarcastic

You can start building a simple model using TF-IDF to extract the features from your training set and after use SVM (support vector machine) to create a model (or follow the approach described in the article bellow).

http://orange.hosting.lsoft.com/trk/click?ref=znwrbbrs9_6-117fex3101cbx0109662&

I hope it could be helpful