Created
June 5, 2024 21:29
-
-
Save jtrive84/581e38579c627ecc14f00c14ef9390d5 to your computer and use it in GitHub Desktop.
Severity Distributions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "# Estimating Size of Loss Distributions\n", | |
| "\n", | |
| "**Author: James D. Triveri**\n", | |
| "<br>\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "* Severity distributions are used in order to describe the loss process associated with a group of homogeneous claims, \n", | |
| "and in ERM settings to quantify operational risk. \n", | |
| "<br> \n", | |
| "\n", | |
| "* Empirical data can be useful in producing central estimates, but tend to fall short when attempting to quantify \n", | |
| "variability and/or tail behavior. \n", | |
| "<br> \n", | |
| "* Actuaries typically implement separate models for frequency and severity to obtain an aggregate loss distribution \n", | |
| "(compositie model). \n", | |
| "<br>\n", | |
| "* Losses are assumed to originate from specific heavy-tailed probability distributions, which are positively skewed \n", | |
| "and very often have relatively high probabilities in the right tails. \n", | |
| "<br>\n", | |
| "* Candidate distributions include: \n", | |
| "<br> \n", | |
| " - **exponential/gamma** \n", | |
| " - **lognormal** \n", | |
| " - **pareto/lomax** \n", | |
| " - **weibull** \n", | |
| " - **inverse gaussian** \n", | |
| " - **burr/log-logistic** \n", | |
| " - **gumbel** \n", | |
| " - **exponential mixture** \n", | |
| "<br>\n", | |
| "* Candidate models must have support on $[0, +\\infty)$.\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 58, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 720x360 with 3 Axes>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "# Example of long-tailed right-skewed distribution.\n", | |
| "import matplotlib.pyplot as plt\n", | |
| "import numpy as np\n", | |
| "from scipy import stats\n", | |
| "%matplotlib inline\n", | |
| "\n", | |
| "rv0 = stats.gamma(a=2.5, scale=1000)\n", | |
| "x0 = np.linspace(rv0.ppf(.0001), rv0.ppf(.9999), 100)\n", | |
| "vals0 = rv0.pdf(x0)\n", | |
| "\n", | |
| "rv1 = stats.lognorm(s=.5, scale=10)\n", | |
| "vals1 = rv1.pdf(np.arange(rv1.ppf(.0001), rv1.ppf(.9999)))\n", | |
| "\n", | |
| "rv2 = stats.lomax(c=3)\n", | |
| "vals2 = rv2.pdf(np.arange(rv2.ppf(.0001), rv2.ppf(.9999)))\n", | |
| "\n", | |
| "\n", | |
| "rv3 = stats.weibull_min(c=1.5)\n", | |
| "vals3 = rv3.pdf(np.arange(rv3.ppf(.0001), rv3.ppf(.9999)))\n", | |
| "\n", | |
| "rv4 = stats.invgauss(mu=.145)\n", | |
| "vals4 = rv4.pdf(np.arange(rv4.ppf(.0001), rv4.ppf(.9999)))\n", | |
| "\n", | |
| "fig, ax = plt.subplots(1, 3, tight_layout=True, figsize=(10, 5))\n", | |
| "\n", | |
| "ax[0].plot(vals0, lw=3, c=\"r\")\n", | |
| "ax[0].set_yticks([]); ax[0].set_xticks([])\n", | |
| "ax[0].set_title(\"gamma\")\n", | |
| "\n", | |
| "ax[1].plot(vals1, lw=3, c=\"b\")\n", | |
| "ax[1].set_yticks([]); ax[1].set_xticks([])\n", | |
| "ax[1].set_title(\"lognormal\")\n", | |
| "\n", | |
| "ax[2].plot(vals2, lw=3, c=\"g\")\n", | |
| "ax[2].set_yticks([]); ax[2].set_xticks([])\n", | |
| "ax[2].set_title(\"lomax\")\n", | |
| "\n", | |
| "plt.show()\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Considerations\n", | |
| "\n", | |
| "* Define the target metric (ground-up losses, paid losses, with or without ALAE)? \n", | |
| "* How far back should we look? \n", | |
| "* Treatment of open claims: How to bring to ultimate? \n", | |
| "* Trend considerations\n", | |
| "* How should claims be grouped (LOB, niche, sub-niche, AG)? \n", | |
| "* Individual or grouped data? \n", | |
| "\n", | |
| "\n", | |
| "<br> \n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "* Define the target metric: **ground-up loss** \n", | |
| "* How far back should we look?: **Claims that have closed within the last 3 years** \n", | |
| "* Treatment of open claims: **Only focus on closed claims** \n", | |
| "* Trend considerations: **No trend** \n", | |
| "* How should claims be grouped: **AG** \n", | |
| "* Individual or grouped data: **Individual**\n", | |
| "\n", | |
| "<br> \n", | |
| "\n", | |
| "<br> \n", | |
| "\n", | |
| "\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Severity Modeling Process\n", | |
| "\n", | |
| "The severity modeling process can be summarized in 3 steps:\n", | |
| "\n", | |
| "0. Assume claims arise as realizations from a certain distribution or family of distributions. \n", | |
| "\n", | |
| " \n", | |
| "1. Estimate the parameters of the selected parametric distribution using **maximum likelihood** using available loss data. \n", | |
| "\n", | |
| "\n", | |
| "2. Test whether the distribution provides an adequate fit to the data using likelihood, Kolmogorov-Smirnov, AIC and minimum $\\chi^{2}$. \n", | |
| "\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<br> \n", | |
| "\n", | |
| "\n", | |
| "## Modeling Approach: Probability vs. Likelihood\n", | |
| "\n", | |
| "**Probability quantifies anticipation of an outcome**: \n", | |
| "\n", | |
| "> *If a fair coin is flipped 10 times, what is the probability of observing 8 heads?*\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "$$\n", | |
| "P(k=8) = {10\\choose 8} .50^{8} .50^{2} = 0.087890625\n", | |
| "$$\n", | |
| "\n", | |
| "\n", | |
| "**Likelihood quantifies trust in a model**: \n", | |
| "\n", | |
| "> *A coin is flipped 10 times resulting in 8 heads. What is the most likely value of $p$? \n", | |
| "Is the coin fair? To what extent does the sample support the hypothesis that \n", | |
| "$P(H) = P(T) = .50$?* (e.g., a binomial distribution with $n=10$ and $p=.50$). \n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "Probability and likelihood are in a sense inverses of each other. For the former, we start with a known \n", | |
| "parameter, and estimate the probability of a given sample. The latter starts with the sample, and \n", | |
| "determines which parameter makes the sample most likely. \n", | |
| "\n", | |
| "\n", | |
| "When modeling real life stochastic processes, we often do not know $\\theta$. We observe process outcomes, \n", | |
| "and the goal is to arrive at the most plausible estimate for $\\theta$ given the data. \n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "<br>\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Maximum Likelihood Estimation\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "Our goal is to fit the following property losses to an exponential distribution:\n", | |
| "<br>\n", | |
| "\n", | |
| "```\n", | |
| "12750 15250 17000 21200 50000* 50000*\n", | |
| "```\n", | |
| "\n", | |
| "<br> \n", | |
| "\n", | |
| "The exponential distribution has a single parameter, $\\lambda$, and density given by: \n", | |
| "\n", | |
| "\n", | |
| "$$\n", | |
| "f(x) = \\lambda e^{-\\lambda x}, \\hspace{.50em} \\lambda > 0, x \\geq 0\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "Which $\\lambda$ makes our sample of property losses \n", | |
| "most likely, assuming they originate from an exponential distribution. \n", | |
| "\n", | |
| "<br> \n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "## Derivation\n", | |
| "\n", | |
| "I'll first present the setup for uncensored data. The maximum likelihood estimator for i.i.d. random \n", | |
| "variables can be expressed as a product of the proposed densities for each observation in the sample. \n", | |
| "For a sample consisting of $n$ observations, we have:\n", | |
| "\n", | |
| "$$\n", | |
| "L(\\lambda) = \\prod_{i=1}^{n} f(x_{i}|\\lambda)\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "It is generally easier to work with sums rather than products when computing derivatives. Therefore it is \n", | |
| "common (but not required) to obtain an expression for the *log-likelihood*. Recall that the log of the product \n", | |
| "of terms is equivalent to the sum of the logs, therefore our expression for the log-likelihood is:\n", | |
| "\n", | |
| "\n", | |
| "$$\n", | |
| "l(\\lambda) = \\mathrm{Ln}\\big(\\prod_{i=1}^{n} f(x_{i}|\\lambda)\\big) = \\sum_{i=1}^{n} \\mathrm{Ln}(f(x_{i}|\\lambda)), \n", | |
| "\\hspace{.50em} \\mathrm{for} \\hspace{.25em} 1 \\leq i \\leq n.\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "The expression for the log-likelihood is then set to 0, the derivative is computed, and parameters of interest \n", | |
| "solved for. In all but the simplest models, direct solutions are not available, and numerical techniques must \n", | |
| "be used to arrive at a solution.\n", | |
| "\n", | |
| "\n", | |
| "$$\n", | |
| "\\begin{align*} \n", | |
| "L(\\lambda) &= \\prod_{i=1}^{n} f(x_{i}|\\lambda)\\\\\n", | |
| "&=\\prod_{i=1}^{6} \\lambda e^{-\\lambda x_{i}}\\\\\n", | |
| "&=\\lambda^{6} \\cdot e^{-12750 \\lambda} \\cdot e^{-15250 \\lambda} \\cdot e^{-17000 \\lambda} \n", | |
| "\\cdot e^{-21200 \\lambda} \\cdot e^{-50000 \\lambda} \\cdot e^{-50000 \\lambda}\\\\\n", | |
| "&=\\lambda^{6} \\cdot e^{-\\lambda(12750 + 15250 + 17000 + 21200 + 50000 + 50000)}\\\\\n", | |
| "&=\\lambda^{6} \\cdot e^{-166200 \\lambda}\\\\\n", | |
| "&6 \\cdot \\mathrm{Ln}(\\lambda) - 166200 \\cdot \\lambda\\\\\n", | |
| "&\\frac{\\partial{l}}{\\partial{\\lambda}} = \\frac{6}{\\lambda} - 166200\\\\\n", | |
| "\\end{align*}\n", | |
| "$$\n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "Setting equal to 0 and rearranging provides a direct solution for $\\lambda$, the \n", | |
| "maximum likelihood estimator $\\hat{\\lambda}$:\n", | |
| "\n", | |
| "\n", | |
| "$$\n", | |
| "\\begin{align*} \n", | |
| "0 &= \\frac{6}{\\lambda} - 166200,\\\\\n", | |
| "166200 &= \\frac{6}{\\lambda}, \\\\\n", | |
| "\\hat{\\lambda} &= 6 / 166200 \\approx 3.61e-05\n", | |
| "\\end{align*}\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "## Accounting for Censored Data\n", | |
| "\n", | |
| "Because insurance losses are subject to policy limits, we need to make an adjustment to the likelihood specification \n", | |
| "for loss amounts equal to the policy limit. Specifically, for losses at the policy limit, we replace the probability \n", | |
| "density with the probability of exceeding the limit, or $1 - F(x)$, where $F(x)$ represents the cumulative distribution \n", | |
| "function. The likelihood for a sample with censored observations becomes: \n", | |
| "\n", | |
| "$$\n", | |
| "L(\\lambda) = \\prod_{i=1}^{m} f(x_{i}|\\lambda) \\prod_{j=1}^{n} 1 - F(x_{j}|\\lambda),\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "where $i$ indexes uncensored observations and $j$ censored observations. \n", | |
| "\n", | |
| "For the exponential distribution, $F(x) = 1 - e^{-\\lambda x}$, therefore $1 - F(x) = e^{-\\lambda x}$. \n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "Our goal is to fit the following property losses to an exponential distribution:\n", | |
| "<br>\n", | |
| "\n", | |
| "```\n", | |
| "12750 15250 17000 21200 50000* 50000*\n", | |
| "```\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "the likelihood becomes:\n", | |
| "\n", | |
| "$$\n", | |
| "\\begin{align*} \n", | |
| "L(\\lambda) &= \\prod_{i=1}^{4} f(x_{i}|\\lambda) \\prod_{j=1}^{2} 1 - F(x_{j}|\\lambda)\\\\\n", | |
| "&=\\lambda^{4} \\cdot e^{-12750 \\lambda} \\cdot e^{-15250 \\lambda} \\cdot e^{-17000 \\lambda} \n", | |
| "\\cdot e^{-21200 \\lambda} \\cdot e^{-50000 \\lambda} \\cdot e^{-50000 \\lambda}\\\\\n", | |
| "&=\\lambda^{4} \\cdot e^{-166200 \\lambda}\\\\\n", | |
| "&4 \\cdot \\mathrm{Ln}(\\lambda) - 166200 \\cdot \\lambda\\\\\n", | |
| "&\\frac{\\partial{l}}{\\partial{\\lambda}} = \\frac{4}{\\lambda} - 166200 = 0\\\\\n", | |
| "0 &= \\frac{4}{\\lambda} - 166200,\\\\\n", | |
| "166200 &= \\frac{4}{\\lambda}, \\\\\n", | |
| "\\hat{\\lambda} &= 4 / 166200 \\approx \\boldsymbol{2.407e-05}\\\\\n", | |
| "\\end{align*}\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "<br> \n", | |
| "\n", | |
| "\n", | |
| "* Expected loss *not* accounting for censored observations: 1 / 3.61e-05 = **27,700**. \n", | |
| "<br>\n", | |
| "* Expected loss accounting for censored observations: 1 / 2.407e-05 = **41,550**. \n", | |
| "\n", | |
| "<br> \n", | |
| "This is intuitive, since when accounting for censoring, we're explicitly incorporating the probability that \n", | |
| "our censored losses exceed the the point at which they are censored. \n", | |
| "\n", | |
| "\n", | |
| "\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 59, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "image/png": "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xo3j7bffpl+/fvzoRz9a99oee+wxRo4cyejRo5k6dSodOnRYLyGqt6IoqtYDaAVE3377baTMsHbt2uif//xntHbt2nSHojpge2ce2zzz2OaNw6pVq6IPP/wwWrVq1YYbYeOPoUPX3zc/f+P77rPP+vu2a1fxftXUpUuX6KabblpvXZ8+faKRI0cmwie6/PLL121bvnx5FEKInnvuuSiKouiSSy6JunXrttH3cKdOnaJHHnlkvXVXX311NHDgwCiKomjOnDkREN1zzz3rts+YMSMCopkzZ0ZRFEU77bRTNGrUqArLv/TSS6OePXtGJSUl69bdfvvtUYsWLaLi4uIoiqJon332ifr27bvecS+88ELUqlWraPXq1eut79GjR3T33XdHURRFAwcOjM4666z1tg8YMCDq06dPhbFE0YbvhbKf8SVLlkRABLSKqvm9vzoPr1RIkiSp3tl5553XLTdv3pyWLVvy9ddfAzBt2jQGDx5c4ezR33zzDfPnz+e0006jRYsW6x7XXHPNet2jytfRoUMHgHV1nH/++VxzzTUMGjSIkSNH8v7776/bd+bMmQwcOHC9+SEGDRrE8uXL+eKLL9at69+//3r1vf322yxfvpyCgoL1YpszZ8662ErLLqv83/VRkxofuXIlVDIlvCRJktJk+fJ1iyUlJSxdupRWrVqRlZUF2dnr75v4El2hrHK/P8+dm5TwsrKySnvArFM6Q3ip8glDCIGSkhIAmjVrttGyS/cZO3YsAwYMWG9bdrnXXraO0gSh9PjTTz+dgw46iGeffZb//ve/XHfddfzxj3/kvPPOI4qiDSacK309Zdc3b958g9g6dOjA5MmTN4i7TZs2G31NDUGNk4rw/vvQqVMyY5EkSVIylP0yW1ICxcXxuvJJQvl9q1NuLWy++eYsXLhw3d9Lly5lzpw5VT5+55135sEHH6SwsHCD5GPLLbekY8eOfPbZZ5xwwgm1irNTp06cddZZnHXWWVxyySWMHTuW8847j969e/PEE0+sl1y8+uqrtGzZko4dO260vH79+rFo0SKaNGlC165dK9ynV69evP7665x88snr1r3++uu1eh11ocbdn8LMmcmMQ5IkSRli//3356GHHmLKlCl88MEHnHLKKRtcRajMueeey9KlSzn22GOZOnUqs2bN4qGHHuLjjz8G4snirrvuOm655RY++eQTpk+fzv3338+NN95Y5TouuOACxo8fz5w5c3jnnXeYOHEivXr1AuDss89m/vz5nHfeeXz00Uf861//YuTIkVx44YXx1aCNOOCAAxg4cCBHHnkk48ePZ+7cubz66qtcfvnlTJ06FYBf//rX3Hfffdx333188sknjBw5khkzZlQ57nSpefenjz5KYhiSJEnKFJdccgmfffYZhx12GK1bt+bqq6+u1pWKgoICJk6cyPDhw9lnn33Izs6mb9++DBo0CIi7LuXn5/P73/+eESNG0Lx5c3baaScuuOCCKtdRXFzMOeecwxdffEGrVq04+OCDuemmmwDo2LEj48aNY/jw4fTp04fNNtuM0047jcsvv7zSMkMIjBs3jssuu4xTTz2Vb775hvbt27P33nuz5ZZbAjBs2DA+/fRTLrroIlavXs1PfvITfvWrXzF+/Pgqx54OoXx/tk0eEEIrYMl3e+5Jm1deSU1UqlcKCwsZN24cQ4cOrXBAlBoX2zvz2OaZxzZvHFavXs2cOXPo1q0beXl5G91vgzEVanTKvxfKfsZXrVpF69atAVpHUbQ0VTHUrvtTNRMSSZIkSY1PzZOK776DRYuSGYskSZKkBqh218A++CBJYUiSJElqqGqcVBTfcANsv30yY5EkSZLUANX47k8lp53m5HeSJEmSatn9SZIkSVLGq/lA7WnT4IEH4lkaJUmSJGWsGnd/yh46FNaupXCPPaBHj2TGpHqmsLBwvWc1brZ35rHNM49t3jgUFhYSRRElJSWUVPIjb+mcZKX7qvEpKSkhiiIKCwvJzs5e7zNeV5/zGk9+93mXLnT+/HPeuOQSFg0YkJroJEmSVKEmTZrQvn17OnXqRG5ubrrDURqtXbuW+fPns2jRIoqKitbbtnLlSo4//nhI8eR3Nb5S0aJ/f/j8c/rn5VEydGgyY1I9U1hYyIQJExgyZIgzr2YA2zvz2OaZxzZvHFavXs38+fNp0aJFpTNqR1HEsmXLaNmyJSGEOoxQANnZ2TzxxBMceeSRKatj9erVNGvWjL333nvdjNqln/FVq1alrN6yapxUhB12gCeeIPvDD8n2H6SMkJOT438+GcT2zjy2eeaxzRu24uJiQghkZWWRlbXxYbKlXZ5K91Xd21QbJaP8EMIGn+mcnJwNrlykLIaaHhj16hUvOAGeJEmSGqkoiursi3lDVvOkonTiu48/hrVrkxWPJEmSGrmSkhJuuOEGttlmG5o2bUrnzp0ZPXo0AF9++SXDhg2jbdu2FBQUcMQRRzB37tx1x/785z/nyCOP5A9/+AMdOnSgoKCAc845Z70ByXfccQfbbrsteXl5bLnllvz0pz9dt23NmjWcf/75bLHFFuTl5bHXXnvx1ltvrds+efJkQgiMHz+e/v3707RpU6ZMmQLA008/za677kpeXh7du3fnqquuWi/hmDVr1rouSL1792bChAmpOoX1To27P7H11tCqFSxdCp98AjvumMSwJEmSVF1RFLGycOV660pKSlhRuILstdkp7YKTn5Nf5TEbl1xyCWPHjuWmm25ir732YuHChXz00UesXLmS/fbbj8GDB/PSSy/RpEkTrrnmGg4++GDef//9dQPSJ02aRIcOHZg0aRKzZ89m2LBh9O3blzPOOIOpU6dy/vnn89BDD7HnnnuyePHidUkBwIgRI3jiiSd48MEH6dKlC2PGjOGggw5i9uzZbLbZZuvt94c//IHu3bvTpk0bxo8fz4knnsif/vQnBg8ezKeffsqZZ54JwMiRIykpKeHoo4+mXbt2vP766yxdupQLLrggiWe4fqt5UhEC3HkntGsHXbsmLyJJkiTVyMrClbS4rkVa6l5+yXKa5zbf5H7Lli3jlltu4bbbbuOUU04BoEePHuy1117cd999ZGVlcc8996xLUO6//37atGnD5MmTOfDAAwFo27Ytt912G9nZ2Wy//fYceuihvPDCC5xxxhnMmzeP5s2bc9hhh9GyZUu6dOnCLrvsAsCKFSu48847eeCBBzjkkEMAGDt2LBMmTODee+9l+PDh6+L83e9+x5AhQ9b9PXr0aC6++OJ1MXfv3p2rr76aESNGMHLkSJ5//nlmzpzJ3Llz2XrrrQG49tpr19XT2NU8qQCIb08lSZIkVcnMmTNZs2YNP/rRjzbY9vbbbzN79mxatmy53vrVq1fz6aefrvt7hx12IDs7e93fHTp0YPr06QAMGTKELl260L17dw4++GAOPvhgjjrqKPLz8/n0008pLCxk0KBB647Nyclh9913Z+bMmevV2b9//w1ie+utt9Z104J4sPzq1atZuXIlM2fOpHPnzusSCoCBAwdW59Q0aLVLKiRJklRv5Ofks/yS5eutKykpYemypbRq2Srl3Z+qolmzZhvdVlJSwq677srDDz+8wbbNN9983XL5u5aFENbd5aply5a88847TJ48mf/+979ceeWVjBo1irfeemvdRIDlu2lFUbTBuubN17/qUlJSwlVXXcXRRx+9QWx5eXlUNPdbJt3Ct3ZJxfLl8MwzMG8ejBiRpJAkSZJUEyGEDboglZSUUJxTTPPc5vXilrLbbrstzZo144UXXuD0009fb1u/fv149NFH2WKLLWjVqlWN62jSpAkHHHAABxxwACNHjqRNmzZMnDiRgw46iNzcXF5++eXSCeEoLCxk6tSpmxz/0K9fPz7++GO22WabCrf37t2befPmsWDBArbaaisAXnvttRq/hoamdknF6tVw3HHx8llnxQO3JUmSpI3Iy8vjoosuYsSIEeTm5jJo0CC++eYbZsyYwQknnMDvf/97jjjiCH73u9+x9dZbM2/ePJ588kmGDx++XteijXnmmWf47LPP2HvvvWnbti3jxo2jpKSEnj170rx5c371q18xfPhwNttsMzp37syYMWNYuXIlp512WqXlXnnllRx22GF06tSJY445hqysLN5//32mT5/ONddcwwEHHEDPnj05+eST+eMf/8jSpUu57LLLknXa6r3apavt2kEiEyPRj02SJEmqzBVXXMH//d//ceWVV9KrVy+GDRvG119/TX5+Pi+99BKdO3fm6KOPplevXpx66qmsWrWqylcu2rRpw5NPPsn+++9Pr169uOuuu/jb3/7GDjvsAMD111/PT37yE0466ST69evH7NmzGT9+PG3btq203IMOOohnnnmGCRMmsNtuu7HHHntw44030qVLFyCegO6pp55izZo17L777px++unrjb9o7EJF/b8qPSCEVsCSb7/9loKCAhg6FJ57Dm6/Hc4+OzVRKq0KCwsZN24cQ4cOdebVDGB7Zx7bPPPY5o3D6tWrmTNnDt26dSMvL2+j+5WUlLB06VJatUrtmAqlT/n3QtnP+KpVq2jdujVA6yiKlqYqhtq/s/r0iZ/ff7/WRUmSJElqeJKXVLz3Xq2LkiRJktTw1D6p2Hnn+Hn6dEjcykuSJElS5qh9UrHddtC0KaxYAWUmJZEkSZKUGWo/+V2TJvFA7a5d44ckSZKkjJKcGbX32y8pxUiSJKl6Sux+nvGqezfXVEhOUiFJkqQ6lZubS1ZWFgsWLGDzzTcnNzeXEMIG+5WUlLB27VpWr17tLWUboSiK+Oab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\n", | |
| "text/plain": [ | |
| "<Figure size 800x500 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "\"\"\"\n", | |
| "Graphical comparison of censored vs. uncensored distributions.\n", | |
| "\"\"\"\n", | |
| "import numpy as np\n", | |
| "import matplotlib.pyplot as plt\n", | |
| "from scipy import stats\n", | |
| "\n", | |
| "\n", | |
| " \n", | |
| "v = np.asarray([12750, 15250, 17000, 21200, 50000, 50000])\n", | |
| "\n", | |
| "\n", | |
| "rv0 = stats.expon(scale=27700.83)\n", | |
| "rv1 = stats.expon(scale=41545.49)\n", | |
| "\n", | |
| "x0 = np.linspace(rv0.ppf(.0), rv0.ppf(.999), 500)\n", | |
| "x1 = np.linspace(rv1.ppf(.0), rv1.ppf(.999), 500)\n", | |
| "fig, ax = plt.subplots(1, 1, figsize=(8, 5), dpi=100, tight_layout=True)\n", | |
| "\n", | |
| "\n", | |
| "ax.plot(x0, rv0.pdf(x0), color=\"red\", linewidth=1.5, linestyle=\"--\", label=\"uncensored\")\n", | |
| "ax.plot(x1, rv1.pdf(x1), color=\"green\", linewidth=1.5, label=\"censored\")\n", | |
| "ax.set_ylim(bottom=0), ax.set_xlim(left=0)\n", | |
| "ax.tick_params(\n", | |
| " axis=\"x\", which=\"both\", top=False, bottom=True, labeltop=False, \n", | |
| " labelbottom=True, direction=\"out\", labelsize=7\n", | |
| " )\n", | |
| "ax.tick_params(\n", | |
| " axis=\"y\", which=\"both\", left=False, right=False, labelleft=False,\n", | |
| " labelright=False\n", | |
| " )\n", | |
| "ax.set_title(\"Effect of accounting for censored observations\", loc=\"left\", size=10)\n", | |
| "ax.legend()\n", | |
| "ax.grid()\n", | |
| "\n", | |
| "plt.show()\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Assessment of Fit\n", | |
| "\n", | |
| "> *With four parameters I can fit an elephant, and with five I can make him wiggle his trunk...*\n", | |
| "\n", | |
| "(Attributed to John von Neumann, relayed by Enrico Fermi when asked about the legitimacy of a result that used four \n", | |
| "free parameters in fitting experimental results). \n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "We rely on a number of metrics to assess the overall fit of the proposed model:\n", | |
| "\n", | |
| "\n", | |
| "* Maximum log-likelihood \n", | |
| "<br>\n", | |
| "* Minimum AIC: $-2l + 2p$ \n", | |
| "<br>\n", | |
| "* Minimum BIC: $-2l + p * \\mathrm{Ln}(n)$ \n", | |
| "<br>\n", | |
| "* Minimum Chi-Square: $\\sum_{j=1}^{n} \\frac{(O_{j} - E_{j})^{2}}{E_{j}}$ \n", | |
| "<br>\n", | |
| "* Kolmogorov-Smirnov test \n", | |
| "<br>\n", | |
| "* Visual assessment (histograms, qq/pp plots) \n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| " \n", | |
| "\n", | |
| "**ks.test**: If p-value exceeds alpha (.05, .025, .01), then we cannot reject the null hypothesis that the \n", | |
| "data originate from the specified distribution. There are caveats when using the ks.test if parameters are estimated \n", | |
| "from the data, but we're using it more as a means to compare distribution adequacy across a number of estimates \n", | |
| "models and parameters. Generally, the higher the kspval p-value the more adequate the model. \n", | |
| "\n", | |
| "**pchisq**: The Chi-Square test may be thought of as a formal comparison of a histogram (empirical data) with \n", | |
| "the fitted density. \n", | |
| "<br>\n", | |
| " - $H_0$: the data follow a specified distribution \n", | |
| " - $H_a$: the data do not follow the specified distribution\n", | |
| "<br> \n", | |
| "The hypothesis that the data are from a population with the specified distribution is accepted if chi-square statistic \n", | |
| "is lower than the chi-square percent point function with k-p-1 dof and a significance level alpha. The chi-square test \n", | |
| "is sensitive to the number of bins. \n", | |
| " " | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Implementation Details\n", | |
| "\n", | |
| "1. Acquire data for target AG, add deductible and identify right-censored losses. \n", | |
| "<br>\n", | |
| "2. Fit each candidate distribution to data, evaluating the goodness of fit of each. \n", | |
| "<br>\n", | |
| "3. Select the distribution which minimizes AIC. \n", | |
| "<br>\n", | |
| "4. Generate 140-point tabular CDF using selected distribution and associated parameter estimates. \n", | |
| "<br>\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "With a selected parametric form, we can answer questions like:\n", | |
| "\n", | |
| "<br> \n", | |
| "<br> \n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "* ***What is the expected value for all losses under 100K?***\n", | |
| "\n", | |
| "$$\n", | |
| "E[X \\wedge 100,000] =\\int_{0}^{100,000} x \\ f_{X}(x) \\ dx + 100,000 \\cdot S_{X}(100,000) \n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "<br> \n", | |
| "\n", | |
| "* ***What percentage of losses are eliminated by the introduction of a 5,000 deductible?***\n", | |
| "\n", | |
| "$$\n", | |
| "\\mathrm{LER} = \\frac{E[X] - E[Y^{L}]}{E[X]}\n", | |
| "$$\n", | |
| "\n", | |
| "where:\n", | |
| "\n", | |
| "$$\n", | |
| "E[X] =\\int_{0}^{\\infty} x \\ f_{X}(x) \\ dx, \\hspace{.50em} \\mathrm{and} \\hspace{.50em} E[Y^{L}] = \\int_{d}^{\\infty} [1 - F_{X}(x)]dx.\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "Relationship between expected payment per loss $E[Y^{L}]$ and payment per payment $E[Y^{P}]$:\n", | |
| "\n", | |
| "<br>\n", | |
| "\n", | |
| "\n", | |
| "\n", | |
| "$$\n", | |
| "\\begin{align*}\n", | |
| "E[Y^{L}] &= E[(X - d_{+})] = \\int_{d}^{\\infty} [1 - F_{X}(x)]dx\\\\\n", | |
| "E[Y^{P}] &= E[(X - d_{+})] / S(d)\\\\\n", | |
| "E[Y^{L}] &= E[Y^{P}] \\cdot S(d)\\\\\n", | |
| "\\end{align*}\n", | |
| "$$\n", | |
| "\n", | |
| "<br>\n", | |
| "<br>\n", | |
| "\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Advantages of Current Approach\n", | |
| "\n", | |
| "0. Scalability. Any group of losses can be combined to generate a new severity distribution. \n", | |
| "<br>\n", | |
| "1. Easy to add new distributions. \n", | |
| "<br>\n", | |
| "2. Explicitly accounts for censored losses. \n", | |
| "<br> \n", | |
| " \n", | |
| "\n", | |
| "\n", | |
| "## Shortcomings of Current Approach\n", | |
| "\n", | |
| "0. Relies on point estimates (MLEs). A more robust approach leveraging MCMC may be a superior alternative \n", | |
| "(i.e., assume distribution parameters follow some pre-specified distribution, then sample from likelihood to obtain posterior \n", | |
| "samples of estimated severity distribution). \n", | |
| "<br> \n", | |
| "1. Not a lot of consideration given to tail. \n", | |
| "<br>\n", | |
| "2. No consideration given to cofactors. \n", | |
| "<br>\n", | |
| "3. Unable to discern between latent heterogeneities within a group. \n", | |
| "\n", | |
| "\n", | |
| "## Future Enhancements\n", | |
| "\n", | |
| "0. Leverage industry data. \n", | |
| "<br> \n", | |
| "1. Assess a regression approach to provide a more accurate whole-book view, by aggregating predictions from individual risks. \n", | |
| "<br> \n", | |
| "2. Use existing work as the basis for a \"large loss\" framework. \n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "## Questions?" | |
| ] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "Python 3", | |
| "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.7.4" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 2 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment