diff --git a/demo/experiments/selfcheckgpt-nli-on-wikibio.ipynb b/demo/experiments/selfcheckgpt-nli-on-wikibio.ipynb new file mode 100644 index 0000000..707eb31 --- /dev/null +++ b/demo/experiments/selfcheckgpt-nli-on-wikibio.ipynb @@ -0,0 +1,575 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "fd24ff19", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/data/miniconda3/envs/exp-punpun0/lib/python3.9/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from .autonotebook import tqdm as notebook_tqdm\n" + ] + } + ], + "source": [ + "import pickle\n", + "import numpy as np\n", + "from scipy.stats import entropy\n", + "from tqdm import tqdm\n", + "from datasets import load_dataset" + ] + }, + { + "cell_type": "markdown", + "id": "7fd0dde9-a886-4484-8d8d-7243f81126ae", + "metadata": {}, + "source": [ + "# SelfCheckGPT\n", + "- NLI variant (fast)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "e9e52003-ec6e-40ba-92c6-f7ad5f0905e7", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/data/miniconda3/envs/exp-punpun0/lib/python3.9/site-packages/transformers/utils/hub.py:124: FutureWarning: Using `TRANSFORMERS_CACHE` is deprecated and will be removed in v5 of Transformers. Use `HF_HOME` instead.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import torch\n", + "from selfcheckgpt.modeling_selfcheck import SelfCheckNLI" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "b2baecc7-57e7-45be-a5f5-aa5d22cd4499", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "cuda\n" + ] + } + ], + "source": [ + "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n", + "print(device)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "f117b6a2-dc46-4ac4-8a45-1c21becbf5a4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "SelfCheck-NLI initialized to device cuda\n" + ] + } + ], + "source": [ + "selfcheck = SelfCheckNLI(device=device)" + ] + }, + { + "cell_type": "markdown", + "id": "ddca8ce2", + "metadata": {}, + "source": [ + "## load `wiki_bio_gpt3_hallucination` data" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "452bb95c", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "dataset = load_dataset(\"potsawee/wiki_bio_gpt3_hallucination\")\n", + "dataset = dataset['evaluation']" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "e3a5cfce", + "metadata": {}, + "outputs": [], + "source": [ + "label_mapping = {\n", + " 'accurate': 0.0,\n", + " 'minor_inaccurate': 0.5,\n", + " 'major_inaccurate': 1.0,\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "2ae11066", + "metadata": {}, + "outputs": [], + "source": [ + "human_label_detect_False = {}\n", + "human_label_detect_False_h = {}\n", + "human_label_detect_True = {}\n", + "for i_ in range(len(dataset)):\n", + " dataset_i = dataset[i_]\n", + " idx = dataset_i['wiki_bio_test_idx']\n", + " raw_label = np.array([label_mapping[x] for x in dataset_i['annotation']])\n", + " human_label_detect_False[idx] = (raw_label > 0.499).astype(np.int32).tolist()\n", + " human_label_detect_True[idx] = (raw_label < 0.499).astype(np.int32).tolist()\n", + " average_score = np.mean(raw_label)\n", + " if average_score < 0.99:\n", + " human_label_detect_False_h[idx] = (raw_label > 0.99).astype(np.int32).tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "1ba31d5b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(238, 238, 206)" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(human_label_detect_False), len(human_label_detect_True), len(human_label_detect_False_h)" + ] + }, + { + "cell_type": "markdown", + "id": "d6414d0e", + "metadata": {}, + "source": [ + "# Experimental Setup" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "77dc4e8a", + "metadata": {}, + "outputs": [], + "source": [ + "def unroll_pred(scores, indices):\n", + " unrolled = []\n", + " for idx in indices:\n", + " unrolled.extend(scores[idx])\n", + " return unrolled" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "8882add7", + "metadata": {}, + "outputs": [], + "source": [ + "def get_PR_with_human_labels(preds, human_labels, pos_label=1, oneminus_pred=False):\n", + " indices = [k for k in human_labels.keys()]\n", + " unroll_preds = unroll_pred(preds, indices)\n", + " if oneminus_pred:\n", + " unroll_preds = [1.0-x for x in unroll_preds]\n", + " unroll_labels = unroll_pred(human_labels, indices)\n", + " assert len(unroll_preds) == len(unroll_labels)\n", + " print(\"len:\", len(unroll_preds))\n", + " P, R, thre = precision_recall_curve(unroll_labels, unroll_preds, pos_label=pos_label)\n", + " return P, R" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "ed1d5662", + "metadata": {}, + "outputs": [], + "source": [ + "def print_AUC(P, R):\n", + " print(\"AUC: {:.2f}\".format(auc(R, P)*100))" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "715545bd-949b-4950-a516-1890401487b6", + "metadata": {}, + "outputs": [], + "source": [ + "indices = [x['wiki_bio_test_idx'] for x in dataset] " + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "726b30b5", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 238/238 [11:09<00:00, 2.81s/it]\n" + ] + } + ], + "source": [ + "selfcheck_scores = {} # sentence-level scores\n", + "for i in tqdm(range(len(dataset))):\n", + " x = dataset[i]\n", + " idx = dataset[i]['wiki_bio_test_idx']\n", + " selfcheck_scores[idx] = selfcheck.predict(\n", + " sentences = x['gpt3_sentences'], # list of sentences\n", + " sampled_passages = x['gpt3_text_samples'], # list of sampled passages\n", + " ).tolist()" + ] + }, + { + "cell_type": "markdown", + "id": "f205c702", + "metadata": {}, + "source": [ + "## Experiment1: Detecting False" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "935890c4", + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.metrics import precision_recall_curve, auc\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "af27f9e3", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "len: 1908\n", + "-----------------------\n", + "SelfCheckGPT-NLI on WikiBio\n", + "AUC: 92.50\n" + ] + } + ], + "source": [ + "# with human label, Detecting False\n", + "Prec, Rec = get_PR_with_human_labels(selfcheck_scores, human_label_detect_False, pos_label=1)\n", + "print(\"-----------------------\")\n", + "print(\"SelfCheckGPT-NLI on WikiBio\")\n", + "print_AUC(Prec, Rec)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "04173dcb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.7295597484276729" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "arr = []\n", + "for v in human_label_detect_False.values():\n", + " arr.extend(v)\n", + "random_baseline = np.mean(arr)\n", + "random_baseline" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "021d80df", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, 'Recall')" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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V2DQExERldGeC9FSl/BCDHoiIqJSMlLqAAD+usSgJyIi0joTOjiK09l5+dIV8hIMeiIiolIa4G4nTv9+rmo+ZsegJyIiKqW65obidGJatoSVvBiDnoiIqJT0dOQY3MoeALDq0G2Jqykag56IiKgsnusrJyu36l2nZ9ATERGVwacDm4vTt+PSJKykaAx6IiKiMjDQVYjT/dcE496jdAmrKYxBT0REVAby/4xV2/WrIGkKeQEGPRERURntn9FZ471aXXUGuWHQExERlVFjG2OcnttDfL/4/65JWI0mBj0REVE5sDFVidP3EzMkrEQTg56IiKicDGlVBwBw9FYC8qvI6XsGPRERUTl5zclcnB783QkJK3mGQU9ERFROnh7RA8ClB8kQBOmP6hn0RERE5UQul+GTN5qJ729VgQ50GPRERETlqLuLlTidmC79QDcMeiIionLkYG4gTv91MVrCSgow6ImIiCrItrNRUpfAoCciIipvg1vai9PJmbkSVsKgJyIiKnf93ezE6QV7rkpYSRUJ+rVr18LR0REqlQoeHh44c+bMC9t27doVMpms0Ktfv35im/Hjxxf6vHfv3pWxKURERPBsUFuc1vnPoDeVTfKg3759O3x9feHn54fz58/Dzc0N3t7eiI+PL7L9rl27EBMTI76uXr0KhUKBoUOHarTr3bu3RrvffvutMjaHiIgIKl0F3u/REACg1JE2aiUP+hUrVmDy5MmYMGECmjZtivXr18PAwAAbN24ssr25uTlsbGzE18GDB2FgYFAo6JVKpUa7WrVqVcbmEBERAQD0FNIeyT8ladDn5OQgNDQUXl5e4jy5XA4vLy+cOnWqWOvw9/fHiBEjYGhoqDE/KCgIVlZWaNy4MaZOnYrExMQXriM7OxspKSkaLyIiovLwJCNH0u+XNOgfPXqE/Px8WFtba8y3trZGbGzsK5c/c+YMrl69ikmTJmnM7927N3766ScEBgZi2bJlOHr0KPr06YP8/Pwi17N06VKYmpqKLwcHh9JvFBEREYCsXDUAYP+1OEnr0JH028vI398frq6uaNeuncb8ESNGiNOurq5o0aIFGjRogKCgIPTo0eO/q8HcuXPh6+srvk9JSWHYExFRmVg/N2xtXr4aOgppjq0lPaK3sLCAQqFAXJzmXztxcXGwsbF56bLp6enYtm0b3nrrrVd+j5OTEywsLHDnzp0iP1cqlTAxMdF4ERERlYV7HTNx2nn+P5LVIWnQ6+npoXXr1ggMDBTnqdVqBAYGwtPT86XL/vHHH8jOzsaYMWNe+T0PHjxAYmIibG1ty1wzERFRcThZGr66USWQ/K57X19fbNiwAVu2bEFYWBimTp2K9PR0TJgwAQAwbtw4zJ07t9By/v7+GDhwIGrXrq0xPy0tDR999BFOnz6Ne/fuITAwEAMGDICzszO8vb0rZZuIiIgMlTr4+72O4vs78dKMZCf5Nfrhw4cjISEBixYtQmxsLNzd3REQECDeoBcZGQm5XPPvkZs3byI4OBgHDhwotD6FQoHLly9jy5YtSEpKgp2dHXr16oXPPvsMSqWyUraJiIgIAJrYPrsUHJ2UCWcro0qvQSYIglDp31rFpaSkwNTUFMnJybxeT0REZdJ39XFcj0nBTxPboXMjy3JZZ0lySvJT90RERNosK7fg0e5xG89AimNrBj0REVEFCn+ULk4npGZX+vcz6ImIiCrQwZmdxel8HtETERFpl4bWxtCTqLMcgEFPRESk1Rj0REREWoxBT0REpMUY9ERERBUsJ79gJLsn6bmV/t0MeiIiokpy7v7jSv9OBj0REVEF05HLAABL992o9O9m0BMREVWwVnVrAQAy/+0lrzIx6ImIiCrYjJ4NJftuBj0REVEFszPVBwAYKSt/0FjJh6mtCXJycgAAurq6kMkKrtPk5+cjPz8fcrkcOjo6Fd42NzcXgiBAR0dHHPZXrVYjLy8PMpkMurq6VaptXl4e1Go1FAoFFApFidsKgoDc3IK7W/X09CqkbVH7vSRtpfy31+afk8r4ty/rz0ll/dvzd0T5/3uW+t9eXfmn7J9i0FeCpUuXAgBmzZoFQ0NDAMCJEydw5MgRtGzZEm+88YbY9quvvkJubi4++OADmJmZAQDOnj2L/fv3w9XVFYMHDxbbrl69GhkZGZg6dSqsrKwAABcvXsTff/+Nxo0bY8SIEWLbtWvXIjk5GZMmTYK9vT0A4OrVq9i9ezecnJwwduxYse2GDRuQkJAAHx8fODo6AgBu3bqF7du3w8HBARMnThTbbt68GdHR0Rg5ciQaNWoEAIiIiMDPP/8Ma2trvPPOO2LbX375Bffv38ebb76JZs2aAQAePHiATZs2wdzcHO+9957Y9vfff8ft27cxYMAAuLu7AwDi4+Px/fffw9jYGL6+vmLb3bt34/r16+jTpw/atWsHAHj8+DHWrFkDpVKJOXPmiG3//vtvXLp0CV5eXujQoQMAIDU1FStXroRcLsfChQvFtvv378e5c+fQpUsXdO3aFQCQnZ2NZcuWAQAWLFgg/ucODAzEqVOn4OnpiV69egEo+KXz9N/+448/hkqlAgAcP34cR48eRZs2bdCvXz/x+5YtWwa1Wo2ZM2eKw06ePn0ahw4dgpubGwYOHCi2XbFiBbKzszF9+nTUrl0bABAaGop//vkHTZs2xdChQ8W23377LVJTU/H222/DxsYGAHDlyhX8+eefaNiwIUaNGiW2Xb9+PR4/fowJEyagbt26AICwsDDs2LED9erVw/jx48W2/v7+iIuLw5gxY9CgQQMAwJ07d/Dbb7/Bzs4OkydPFttu3boVUVFRGD58OFxcXAAAkZGR2LJlCywtLfHuu++Kbbdt24bw8HAMGjQILVq0AADExMTgxx9/hKmpKWbMmCG23bFjB27evInXX38drVu3BgAkJCRg3bp1MDAwwEcffSS2/euvv3DlyhV4e3vjtddeAwAkJydj9erV0NXVxbx588S2+/btw4ULF9CtWzd07lzQT3lGRga++uorAICfn5/Y9tChQwgJCUHHjh3Ro0cPAAWB9fTffu7cuWI4BAUFITg4GB4eHujdu7e4Dv6OKKDNvyNOnTwFqfDUPRERUQXTlQPW8lS0qler0r9bJkgxOG4Vl5KSAlNTUyQnJ4tHVmXB03Ilb1vtTsvx1L0kbXnqnr8jqtvviOeXL4uS5BSDvgjlHfRERETlqSQ5xVP3REREWoxBT0REpMUY9ERERFqMQU9ERKTFGPRERERajEFPRESkxRj0REREWoxBT0REpMUY9ERERFqMQU9ERKTFGPRERERajEFPRESkxRj0REREWoxBT0REpMUY9ERERFqMQU9ERKTFGPRERERajEFPRESkxRj0REREWoxBT0REpMUY9ERERFqMQU9ERKTFGPRERERajEFPRESkxRj0REREWqxKBP3atWvh6OgIlUoFDw8PnDlz5oVtu3btCplMVujVr18/sY0gCFi0aBFsbW2hr68PLy8v3L59uzI2hYiIqEqRPOi3b98OX19f+Pn54fz583Bzc4O3tzfi4+OLbL9r1y7ExMSIr6tXr0KhUGDo0KFim+XLl+Obb77B+vXrERISAkND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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# with human label, Detecting Non-factual\n", + "plt.figure(figsize=(5.5, 4.5))\n", + "plt.hlines(y=random_baseline, xmin=0, xmax=1.0, color='grey', linestyles='dotted', label='Random Guessing') \n", + "plt.plot(Rec, Prec, '-', label='SelfCheckGPT-NLI')\n", + "plt.legend()\n", + "plt.ylim(0.7,1.02)\n", + "plt.ylabel(\"Precision\")\n", + "plt.xlabel(\"Recall\")" + ] + }, + { + "cell_type": "markdown", + "id": "263cab97", + "metadata": {}, + "source": [ + "## Experiment2: Detect False* (harder/less-trivial)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "da8388a1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "len: 1632\n", + "-----------------------\n", + "SelfCheckGPT-NLI on WikiBio\n", + "AUC: 45.17\n" + ] + } + ], + "source": [ + "# with human label, Detecting False\n", + "Prec, Rec = get_PR_with_human_labels(selfcheck_scores, human_label_detect_False_h, pos_label=1)\n", + "print(\"-----------------------\")\n", + "print(\"SelfCheckGPT-NLI on WikiBio\")\n", + "print_AUC(Prec, Rec)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "63ae5415", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.2971813725490196" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "arr = []\n", + "for v in human_label_detect_False_h.values():\n", + " arr.extend(v)\n", + "random_baseline = np.mean(arr)\n", + "random_baseline" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "7e6e01d9", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, 'Recall')" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# with human label, Detecting Non-factual*\n", + "plt.figure(figsize=(5.5, 4.5))\n", + "plt.hlines(y=random_baseline, xmin=0, xmax=1.0, color='grey', linestyles='dotted', label='Random Guessing') \n", + "plt.plot(Rec, Prec, '-', label='SelfCheckGPT-NLI')\n", + "plt.legend()\n", + "plt.ylabel(\"Precision\")\n", + "plt.xlabel(\"Recall\")" + ] + }, + { + "cell_type": "markdown", + "id": "4d660a81", + "metadata": {}, + "source": [ + "## Experiment3: Detecting True" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "9fd5a85b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "len: 1908\n", + "-----------------------\n", + "SelfCheckGPT-NLI on WikiBio\n", + "AUC: 66.08\n" + ] + } + ], + "source": [ + "# with human label, Detecting True\n", + "Prec, Rec = get_PR_with_human_labels(selfcheck_scores, human_label_detect_True, pos_label=1, oneminus_pred=True)\n", + "print(\"-----------------------\")\n", + "print(\"SelfCheckGPT-NLI on WikiBio\")\n", + "print_AUC(Prec, Rec)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "5de7c978", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.27044025157232704" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "arr = []\n", + "for v in human_label_detect_True.values():\n", + " arr.extend(v)\n", + "random_baseline = np.mean(arr)\n", + "random_baseline" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "709d02e1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, 'Recall')" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# with human label, Detecting Non-factual*\n", + "plt.figure(figsize=(5.5, 4.5))\n", + "plt.hlines(y=random_baseline, xmin=0, xmax=1.0, color='grey', linestyles='dotted', label='Random Guessing') \n", + "plt.plot(Rec, Prec, '-', label='SelfCheckGPT-NLI')\n", + "plt.legend()\n", + "plt.ylabel(\"Precision\")\n", + "plt.xlabel(\"Recall\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.19" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}