Giter VIP home page Giter VIP logo

sarcasmdetect's Introduction

Project Instructions

  • Run below commands in their respective directories.

cd sarcasm

  • npm install
  • npm start
  • Press Ctrl+C to exit the localhost app

cd service

  • source bin/activate
  • python app.py
  • Press Ctrl+C to exit the localhost app
  • deactivate (to deactivate the virtualenv)

Project Name: SarcasmDetect

Description: Based on sarcastic (The Onion) and non-sarcastic headlines (HuffPost), the system would help in sarcastic headline awareness and detection. We are diving into sarcastic commentary to see if we can predict sarcasm in a headline.

Abstract

A business needs to drive product marketing, sales, and operations according to the user feedback, product market fit, and public sentiment. The user feedback cycle, driven by dopamine generative experiences, is very clear and there product managers hired with the sole responsibility to make sure the user's are 'hooked' to the product. Companies like Mixpanel have built industry leading software to understand the meaning behind each user activity to understand UX friction to help their customers get closer to product market fit. Social media analysis is currently avaliable via companies like Sprinklr, but they rely heavily on existing marketing, ads, and social sentiment campaign data to tell their clients whether certain sentiment behind a certain ad was postivie or negative. In a nutshell, they can only analyze social media sentiment based on past sentiment and tell their customers if they are doing well or worse.

But there is a missing link. Sarcasm Detection for business use case is that link. We intend to provide a way for businesses to use our tool to help them understand if the media sentiment they see from other tools is actually the sentiment the users/media is expressing or if its sarcasm. We intend to use a Kaggle dataset of news headlines (https://www.kaggle.com/rmisra/news-headlines-dataset-for-sarcasm-detection) and also try to use small sized posts from media platforms and apply similar logic to understand posts behind a 'trending' topic on a social media platform.

Our main goal is to get a working prototype with the Kaggle dataset. The Kaggle dataset's point, according to the dataset description, was to circumvent the noise in Twitter data. We will move to social media data once we can have satisfying outcome from Kaggle. The search can be based on hashtags or profile name. Sarcastic comments related to the input will get displayed along with key KPI’s on the dashboard.

Architecture Diagram

Tech stack

Overview: React <-> tableau-react <-> Flask Python Server <-> TabPy <-> Python ML

  • tableau-react: will load Tableau report in React
  • TabPy: will update Tableau reports with update from Python
  • Datasets: Kaggle dataset (json), Social media APIs, Cornell sarcasm dataset (For training the model)
  • ML frameworks: SKlearn, Tensor flow, Pandas, NLTK/Stanford NER
  • Visualization: Tableau
  • Web application: ReactJS
  • Cloud/Infra Platform: AWS EC2, docker, MongoDB
  • To be determined

Design Thinking

Personas

  • Product manager: A product manager's responsibilities include making judgements based on market sentiment.
  • Sales team member: A sales team member can find correlation between sarcastic sentiment with product performance in a market.
  • Marketing team person: A marketing team member can use sarcasm detection to decide market campaign to counter negative sarcasm.

Hill Statements

  • A product manager can generate a dashboard of user sarcasm sentiment around the company's product in a region to show other stakeholders and take necessary actions to address the sentiment.
  • A sales team member can use SarcasmDetection to know which regions under/over performed and why.
  • A marketing team member can use SarcasmDetection to adjust ads/outreach campaigns for a product in a region.
Original Professor Feedback :- If you can bring NER to pin point people, product or processes for sarcasm detection then it will be useful. Provide actionable insights based on NER so for ex. If you discover 50% sarcasm in the headlines / tweets about new samsung fold phone then samsung can learn a lot with further insight you provide on the article using NLP

sarcasmdetect's People

Contributors

pranavpatilsce avatar kartiksjsu avatar kalyanideshmukh11 avatar mukeshmogal avatar kartik7786 avatar cdslabs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

James Cloos avatar  avatar

sarcasmdetect's Issues

How can the contextual information be incorporated in making accurate predictions for sarcasm on an input text?

Human sarcasm is a product of human brain and we must not forget that the possibilities are numerous in which a human brain could frame words to express its opinion. There is a complex relationship between sarcasm and sentiment as a feature, which could be hard to uncover using models and algorithms.
An example of a business use case of Sarcasm Detection for identifying the popularity of a product is mentioned below where it is difficult to comprehend the actual tone of the review texts for a product.

For IPhone handset, the social media post texts could be as below:
“Wow..Apple has launched such an awesome phone..IPhone 10.. I wish I had not donated my kidney earlier for IPhone6!”

For a certain kind of crafting paper, review text could be as below:
“I love this paper so much that I made a garbage bag out of it.”

The tone of these kind of texts is hard to be figured out, since it contains quite a lot of positive words, yet there is a tone of sarcasm in it as per human interpretation.

Accuracy could be greater if the author’s information was incorporated into training data. Without contextual information (for example, author’s background info, responses, audience) consideration in the prediction algorithm and merely analyzing text content may not be appropriate to train the model.

Technology choices

  1. If visualisation will be done using tableau, then what will be done using React js?
  2. Which technology are you guys planning to use for developing API's for fetching data?
  3. How you guys are planning to deploy tableau on Aws EC2?

How is the application different from all the other algorithms/applications currently detecting sarcasm ?

I understand from the abstract that you feel social media analysis rely on past data. But you can get the current feed from Twitter, Facebook etc. And isn't it the same with news headlines as well. It contains past articles as well as current happenings. So what is the differentiating factor that will help out a business?

Also, news is a generic report about a current happening and usually does not contain much information about public sentiments about a product. How will you bring the correlation between a current happening to a product for it to be useful for the business ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.