{ "cells": [ { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "pp68FAQf9aMN" }, "source": [ "# Sarcasm Detection\n", " **Acknowledgement**\n", "\n", "Misra, Rishabh, and Prahal Arora. \"Sarcasm Detection using Hybrid Neural Network.\" arXiv preprint arXiv:1908.07414 (2019).\n", "\n", "**Required Files given in below link.**\n", "\n", "https://drive.google.com/drive/folders/1xUnF35naPGU63xwRDVGc-DkZ3M8V5mMk" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "S3Wj_mIZ8S3K" }, "source": [ "## Install `Tensorflow2.0` " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 679 }, "colab_type": "code", "id": "jW2Uk8otQvi8", "outputId": "08f2d715-7e92-4ea5-d85c-2b97e0cf9f2e" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Collecting tensorflow==2.0.0\n", " Using cached https://files.pythonhosted.org/packages/46/0f/7bd55361168bb32796b360ad15a25de6966c9c1beb58a8e30c01c8279862/tensorflow-2.0.0-cp36-cp36m-manylinux2010_x86_64.whl\n", "Requirement already satisfied: protobuf>=3.6.1 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (3.10.0)\n", "Requirement already satisfied: opt-einsum>=2.3.2 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (3.2.1)\n", "Requirement already satisfied: tensorflow-estimator<2.1.0,>=2.0.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (2.0.1)\n", "Requirement already satisfied: keras-applications>=1.0.8 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.0.8)\n", "Requirement already satisfied: wrapt>=1.11.1 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.12.1)\n", "Requirement already satisfied: numpy<2.0,>=1.16.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.18.4)\n", "Requirement already satisfied: grpcio>=1.8.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.28.1)\n", "Requirement already satisfied: wheel>=0.26 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (0.34.2)\n", "Requirement already satisfied: gast==0.2.2 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (0.2.2)\n", "Requirement already satisfied: google-pasta>=0.1.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (0.2.0)\n", "Requirement already satisfied: astor>=0.6.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (0.8.1)\n", "Requirement already satisfied: six>=1.10.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.12.0)\n", "Requirement already satisfied: keras-preprocessing>=1.0.5 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.1.0)\n", "Requirement already satisfied: tensorboard<2.1.0,>=2.0.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (2.0.2)\n", "Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (1.1.0)\n", "Requirement already satisfied: absl-py>=0.7.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==2.0.0) (0.9.0)\n", "Requirement already satisfied: setuptools in /usr/local/lib/python3.6/dist-packages (from protobuf>=3.6.1->tensorflow==2.0.0) (46.1.3)\n", "Requirement already satisfied: h5py in /usr/local/lib/python3.6/dist-packages (from keras-applications>=1.0.8->tensorflow==2.0.0) (2.10.0)\n", "Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.6/dist-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (1.0.1)\n", "Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.6/dist-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (3.2.1)\n", "Requirement already satisfied: google-auth<2,>=1.6.3 in /usr/local/lib/python3.6/dist-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (1.7.2)\n", "Requirement already satisfied: requests<3,>=2.21.0 in /usr/local/lib/python3.6/dist-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (2.23.0)\n", "Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.6/dist-packages (from tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (0.4.1)\n", "Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.6/dist-packages (from google-auth<2,>=1.6.3->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (0.2.8)\n", "Requirement already satisfied: cachetools<3.2,>=2.0.0 in /usr/local/lib/python3.6/dist-packages (from google-auth<2,>=1.6.3->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (3.1.1)\n", "Requirement already satisfied: rsa<4.1,>=3.1.4 in /usr/local/lib/python3.6/dist-packages (from google-auth<2,>=1.6.3->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (4.0)\n", "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (2020.4.5.1)\n", "Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (1.24.3)\n", "Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (3.0.4)\n", "Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (2.9)\n", "Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.6/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (1.3.0)\n", "Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /usr/local/lib/python3.6/dist-packages (from pyasn1-modules>=0.2.1->google-auth<2,>=1.6.3->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (0.4.8)\n", "Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.6/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard<2.1.0,>=2.0.0->tensorflow==2.0.0) (3.1.0)\n", "Installing collected packages: tensorflow\n", "Successfully installed tensorflow-2.0.0\n" ] } ], "source": [ "!!pip uninstall tensorflow\n", "!pip install tensorflow==2.0.0" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "v9kv9tyJ77eF" }, "source": [ "## Get Required Files from Drive" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 35 }, "colab_type": "code", "id": "D0O_n6OIEVyL", "outputId": "2f8098b6-740a-4e8d-ac4e-597c8727791a" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Drive already mounted at /content/drive/; to attempt to forcibly remount, call drive.mount(\"/content/drive/\", force_remount=True).\n" ] } ], "source": [ "from google.colab import drive\n", "drive.mount('/content/drive/')" ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "0mgRpOvFMjKR" }, "outputs": [], "source": [ "#Set your project path \n", "project_path = '/content/drive/My Drive/Colab Notebooks/NLP/'" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "WXYwajPeQbRq" }, "source": [ "#**## Reading and Exploring Data**" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "vAk6BRUh8CqL" }, "source": [ "## Read Data \"Sarcasm_Headlines_Dataset.json\". Explore the data and get some insights about the data.\n", "Hint - As its in json format you need to use pandas.read_json function. Give paraemeter lines = True." ] }, { "cell_type": "code", "execution_count": 0, "metadata": { "colab": {}, "colab_type": "code", "id": "StSLB-T8PuGr" }, "outputs": [], "source": [ "import pandas as pd\n", "import os\n", "\n", "data = pd.read_json(os.path.join(project_path,'Sarcasm_Headlines_Dataset.json'),lines=True)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 415 }, "colab_type": "code", "id": "m6LXx4qHqgWN", "outputId": "02f65927-d795-43a0-c991-eb338634eb3c" }, "outputs": [ { "data": { "text/html": [ "
\n", " | article_link | \n", "headline | \n", "is_sarcastic | \n", "
---|---|---|---|
0 | \n", "https://www.huffingtonpost.com/entry/versace-b... | \n", "former versace store clerk sues over secret 'b... | \n", "0 | \n", "
1 | \n", "https://www.huffingtonpost.com/entry/roseanne-... | \n", "the 'roseanne' revival catches up to our thorn... | \n", "0 | \n", "
2 | \n", "https://local.theonion.com/mom-starting-to-fea... | \n", "mom starting to fear son's web series closest ... | \n", "1 | \n", "
3 | \n", "https://politics.theonion.com/boehner-just-wan... | \n", "boehner just wants wife to listen, not come up... | \n", "1 | \n", "
4 | \n", "https://www.huffingtonpost.com/entry/jk-rowlin... | \n", "j.k. rowling wishes snape happy birthday in th... | \n", "0 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "
26704 | \n", "https://www.huffingtonpost.com/entry/american-... | \n", "american politics in moral free-fall | \n", "0 | \n", "
26705 | \n", "https://www.huffingtonpost.com/entry/americas-... | \n", "america's best 20 hikes | \n", "0 | \n", "
26706 | \n", "https://www.huffingtonpost.com/entry/reparatio... | \n", "reparations and obama | \n", "0 | \n", "
26707 | \n", "https://www.huffingtonpost.com/entry/israeli-b... | \n", "israeli ban targeting boycott supporters raise... | \n", "0 | \n", "
26708 | \n", "https://www.huffingtonpost.com/entry/gourmet-g... | \n", "gourmet gifts for the foodie 2014 | \n", "0 | \n", "
26709 rows × 3 columns
\n", "\n", " | is_sarcastic | \n", "
---|---|
count | \n", "26709.000000 | \n", "
mean | \n", "0.438953 | \n", "
std | \n", "0.496269 | \n", "
min | \n", "0.000000 | \n", "
25% | \n", "0.000000 | \n", "
50% | \n", "0.000000 | \n", "
75% | \n", "1.000000 | \n", "
max | \n", "1.000000 | \n", "