battery-anomaly-detection/notebooks/simple_anomaly_detection.ipynb

1490 lines
402 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Simple Univariate Time Series Anomaly Detection"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## boilerplate"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import torch\n",
"\n",
"import copy\n",
"import numpy as np\n",
"import pandas as pd\n",
"import seaborn as sns\n",
"from pylab import rcParams\n",
"import matplotlib.pyplot as plt\n",
"from matplotlib import rc\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.metrics import accuracy_score, confusion_matrix\n",
"\n",
"from torch import nn, optim\n",
"\n",
"import torch.nn.functional as F\n",
"import random\n",
"import datetime\n",
"# from arff2pandas import a2p"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<torch._C.Generator at 0x7f16083d1dd0>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# %matplotlib inline\n",
"# %config InlineBackend.figure_format='retina'\n",
"\n",
"sns.set(style='whitegrid', palette='muted', font_scale=0.7)\n",
"\n",
"HAPPY_COLORS_PALETTE = [\"#01BEFE\", \"#FFDD00\", \"#FF7D00\", \"#FF006D\", \"#ADFF02\", \"#8F00FF\"]\n",
"\n",
"sns.set_palette(sns.color_palette(HAPPY_COLORS_PALETTE))\n",
"\n",
"# rcParams['figure.figsize'] = 12, 8\n",
"\n",
"RANDOM_SEED = 42\n",
"np.random.seed(RANDOM_SEED)\n",
"torch.manual_seed(RANDOM_SEED) \n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"import polars as pl\n",
"from io import StringIO\n",
"import math\n",
"df = pl.read_csv('../data/battery_1.csv')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We only need 'PACK1_CRIDATA_BATT_VOL'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## visualize fault and non-fault regions"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"filter_condition = df['PACK1_CRIDATA_BATT_VOL'].cast(pl.Float32) != 0\n",
"voltage_data = (df['PACK1_CRIDATA_BATT_VOL']\n",
" .filter(filter_condition)\n",
" .cast(pl.Float32))\n",
"\n",
"def convert_values(values):\n",
" numerical_values = []\n",
" for value in values:\n",
" if value == 'False':\n",
" numerical_values.append(0)\n",
" elif value == 'True':\n",
" numerical_values.append(1)\n",
" else:\n",
" # numerical_values.append(np.nan)\n",
" numerical_values.append(-1)\n",
" return numerical_values\n",
"\n",
"\n",
"fault_data = convert_values(df['BATT_PACK_1_FAULT']\n",
" .filter(filter_condition))\n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 1.0, 'fault incidents')"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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trCwUPPnz9dll10WeDKSJL3wwgu66aabAu02b96stLQ0jRw5Ur/+9a9rzO/UqVN6+OGHNXbsWH3729/W448/roqKikBf7r33Xt19990aOnSoZsyYoS+//FKSdPPNN0uSJk2apKFDh2rr1q3697//rWnTpmno0KEaPXq0/t//+3+Nyh0A4AwKJABAs/zxj3/U8OHD9fOf/1w7duxQ165ddc4552jt2rXatm2brrvuOs2bN09lZWWNmu7DDz+sXr16ac2aNdqxY0et7zepS25urjwej959913NmTNHDz74YOC1+fPnKyoqSllZWXr77bd15ZVX1hr/66+/1t133637779f77zzjoqLi2tcFvfYY4/pq6++0iuvvKIXX3xRW7du1XPPPRd4/fXXX9d//dd/6f3339fAgQO1evVqSdJTTz0lyXp87Y4dOzRq1CgtW7ZMN998s3bs2KFXX31Vo0aNalQ+AABnUCABAELu8ssvV1JSkiIjI3XdddepvLxcOTk5js83JiZGt9xyi6KionTVVVepoKBAX3/9tQoKCrRlyxY98MADio+Pl9frDXxfVXWbN2/W4MGDNX78eHm9Xv3oRz9SRIS1qaz60sKf/OQnio+PV7du3XTTTTcpIyMjMP4ll1yikSNHKioqSldccYX27NlTb1+joqL05Zdf6ujRo+rUqZO++c1vhj4QAECjcQ8SACDkNm3apN/85jfav3+/JOnkyZM6evSo4/Pt1q1b4NvfvV6vIiMjVVxcrCNHjqhbt27q0KFDg+N/9dVXSkxMDPw/NjZWXbp0kWSdXSotLdUVV1wReL2yslK9e/cO/L979+6B32NiYlRcXFzvvH7+859r9erVSk9P13nnnacFCxZo6NChjXq/AIDQo0ACAIRUWVmZ7rnnHv3qV7/St7/9bUVGRurSSy9V1feSx8bGqrS0NND+yJEjjvcpMTFRX3/9tYqLixUXF1dvu3POOUdvv/124P+lpaWBwq5r166Kjo7Wa6+9pq5duza7T/3799fq1atVXl6up59+Wvfee6/eeOONZk8XANA8XGIHAAipsrIy+f3+wNmUtWvX1jh7dP755yszM1NlZWX69NNP9eqrr9Y7re7du+vAgQPN7lNCQoJGjhyphx9+WEVFRSorK9P27dtrtbv88su1a9cubd68WWVlZfr1r3+tyspKSVJERISuvvpq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jfzItnE2bNigSZMmBc7MseyGVksurw3Nq60qLS3V7bffrvT09MBZ0CoFBQWB3z/99FPl5uYG7lci37NryXVBe8u2urour2PZbZy69sPa47rXMN1yLqsN27t3rxYuXKiTJ0+qZ8+eWrFiRaC6xml79+7VlVdeqf79+8vr9UqSLrvsMg0dOlS//OUvFRERoYqKCk2bNk233XZbYLxVq1bp5ZdfliT94Ac/0PXXXy/JOiKxYMEC7du3T16vV0uWLNHw4cMD82pPn8n+/fs1Z84cVVZWqqKiQhdeeKEeeOABdejQQRkZGVq1apUqKio0atSowJEjiWwbKy0tTcuXL9fFF18sScrKymLZbaL58+dr69atKigoUEJCgoYPH67HH3+8RZfXhubV2tWV78UXX6xly5YpJSUl0O6HP/yhJk+erJUrV+qNN95QZGSkoqKidNddd+nyyy+XRL5nqivbSZMmtei6oK1mK9W/bsjNzdWUKVP0zjvv1Lh8nGU3ePXthy1cuLDdrXspkAAAAADAxiV2AAAAAGCjQAIAAAAAGwUSAAAAANgokAAAAADARoEEAAAAADYKJAAAAACwUSABAAAAgI0CCQAAAABsFEgAAAAAYKNAAgAAAADb/w/WQq8yeJk5EAAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 1000x600 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"\n",
"fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(10,3 * 2))\n",
"\n",
"axs[0].plot(voltage_data)\n",
"axs[0].set_title(\"voltage\")\n",
"axs[1].scatter(range(len(fault_data)), fault_data)\n",
"axs[1].set_title(\"fault incidents\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Train region: 145000-end\n",
"\n",
"Test region: 45000-60000"
]
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"train_voltage_data = voltage_data[145000:]\n",
"test_voltage_data = voltage_data[85000:100000]\n",
"val_voltage_data = voltage_data[120000:135000]\n",
"fault_voltage_data = voltage_data[45000:60000]"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"train_voltage_data = voltage_data[100000:]\n",
"test_voltage_data = voltage_data[60000:85000]\n",
"val_voltage_data = voltage_data[85000:100000]\n",
"fault_voltage_data = voltage_data[0:60000]"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 1.0, 'fault incidents')"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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weS065s4caJRXFzcYBp57dqWLl1qrFq1KvD/kSNHTJ1TepAi7OjRoyoqKtKUKVMkSbNnz1ZBQUEnR4X6Ro8erZSUlAbT3njjDY0aNUqDBw+WxWLR7NmztXnzZknS5s2bNXPmTNlsNvXu3Vt2u135+fmBeXPmzJEknXfeeerVq5f27NnDetDB+vTpo4svvliSFBMToxEjRqikpIS8dnE9e/YM3Hc4HJLYVrs6p9OpRx99VLm5uYFp5NScyGvXVVlZqddee0233357YNqAAQNMnVMKpAgrKytTenq6LBaLJCk5OVlWq1UVFRWdHBmaU1ZWpoyMjMD/6enpKisra3FeaWlpg3kZGRkqLS1lPehE1dXV2rBhgyZMmEBeTeCuu+7SZZddpldffVW5ubnktIt79NFHdcMNN6hv376BaeTUHBYsWKDp06dr5cqVcrvd5LULO3jwoPr166dHHnlEM2fO1I033qjCwkJT55QCKcIMwwg6vS75iE5N5a2pec3l02KxsB50Eq/Xq9zcXF1yySUaP348eTWBlStX6s0339SMGTP0+OOPk9MubNeuXTpw4ICuuuqqBtPJade3du1a5eXlae3atdq3b5+efPJJ8tqF1dbWqqioSKNHj9ZLL72kG264QT/96U9NnVMKpAirq5jrku5wOOR2u9WnT5/ODQzNSk9PV0lJSeD/0tJSpaWlBebVXRxeNy81NTXovJKSEqWlpbEedJJly5YpLi5O9957ryTyahYWi0Vz5sxRXl4eOe3Cdu7cqY8//liTJk3SpEmTJElTpkxR//79yWkXV5ev5ORkzZ49W7t372Zb7cLS09OVmJionJwcSdLEiRPlcDhMnVMKpAhLSUlRZmamtm7dKklav359YAVD9Bo/frx27dqlw4cPyzAMrVu3Tna7XZJkt9u1YcMG1dTU6OTJk8rPz28w769//ask6aOPPtKJEyc0YsQI1oNO8PDDD6u8vFwPPvhg4OgTee26KisrA6dnSL5z2IcNG0ZOu7B58+bpn//8p7Zt26Zt27ZJkgoKCjR58mRy2oU5nc7ANYK1tbUqKChQdnY222oX1r9/f5133nmB0eY++OADJSQkaNy4cabNqcVorn8MYbF3717l5uaqsrJSAwcO1IoVKwJVNDrf3XffrR07dqi8vFypqam66KKL9Oijj2rz5s1atWqVPB6PxowZE+iNkKRVq1bp1VdflSTdeOONuv766yX5jnYsWrRI+/btk81m09KlS3XRRRdJYj3oSHv37tWVV16ps88+WzabTZL07W9/W7m5ueS1izp69KhuvfVWVVdXS/IdgVy8eLHOOusscmoS2dnZ+uijjxQXF0dOu7CDBw9q/vz58nq98ng8uuCCC7RkyRL16NGDvHZhn3/+uRYvXiyHw6GEhAQtXrxYF154oWlzSoEEAAAAAH6cYgcAAAAAfhRIAAAAAOBHgQQAaLe///3vmjhxokaOHKlNmza1+XF27NjR4KLcSZMmaefOnU22/8Mf/qBf/epXbX4+SXr55Zd16623Njm/pRhClZ2d3WCgCQBAdIrr7AAAAF3fc889px/+8IeaO3duhz5vc4VNqKZPn67p06eHIRoAgBnQgwQAaJebb75Z//rXv/Tb3/5WI0eOVEVFhdavXy+73a6RI0dq+vTpeueddwLtf/SjHykvLy/w/+OPP6577rmn0eMuXrxYJSUlmjt3rkaOHKkNGzY0avPYY49p8eLFkk71Pj3xxBMaM2aMJk6cqO3btwfaVlRU6O6779a3v/3twGhLkvTSSy/pxz/+caDd9u3blZOTo9GjR+t3v/tdg+errq7WAw88oPHjx+uyyy7To48+Ko/HE4jlrrvu0h133KGRI0dq1qxZOnDggCTppptukiRNnTpVI0eO1I4dO/Tee+9pxowZGjlypMaOHas//elPrXrfAQCRQYEEAGiXp59+WhdddJF+85vfaPfu3erbt68GDBigNWvWaOfOnfr+97+vhQsXqqamplWP+8ADDygjI0PPPPOMdu/erWuuuabFZUpKSmS1WvWvf/1L8+fP13333ReYd/fddysuLk4FBQV68803deWVVzZa/quvvtIdd9yhe++9V//85z/ldDobnBb3yCOP6Msvv9SmTZv08ssva8eOHVq3bl1g/uuvv64f/OAHeuedd3TOOedo9erVkqQ//vGPkny/37R7926NGTNGy5cv10033aTdu3frtdde05gxY1r1/gAAIoMCCQAQdpdffrnS09MVGxur73//+6qtrVVxcXHEnzchIUFz585VXFycrrrqKpWXl+urr75SeXm53nrrLS1ZskTJycmy2Wz61re+1Wj57du3a8SIEZo4caJsNpt+9rOfKSbG91FZ90OI//Vf/6Xk5GT169dPP/7xj7V58+bA8pdccolGjx6tuLg4XXHFFfr000+bjDUuLk4HDhzQ8ePH1atXL33jG98I/xsCAGg1rkECAITd1q1b9fvf/14HDx6UJFVWVur48eMRf95+/frJYrFIkmw2m2JjY+V0OnXs2DH169dPPXr0aHb5L7/8UmlpaYH/ExMT1adPH0m+3qWqqipdccUVgfler1eDBg0K/N+/f//A/YSEBDmdziaf6ze/+Y1Wr16tKVOmaOjQoVq0aJFGjhzZqtcLAAg/CiQAQFjV1NTozjvv1GOPPabLLrtMsbGxuvTSS1X3u+SJiYmqqqoKtD927FjEY0pLS9NXX30lp9OppKSkJtsNGDBAb775ZuD/qqqqQGHXt29fxcfHa8uWLerbt2+7Yzr77LO1evVq1dbWau3atbrrrru0bdu2dj8uAKB9OMUOABBWNTU1crvdgd6UNWvWNOg9Ovfcc5Wfn6+amhp98skneu2115p8rP79++vQoUPtjik1NVWjR4/WAw88IIfDoZqaGu3atatRu8svv1x79uzR9u3bVVNTo9/97nfyer2SpJiYGF1zzTVavny5KioqZBiGDhw4EPIQ4P379w/0qEm+4cUrKioUFxennj17Bk7lAwB0LvbGAICwSk5O1qJFizR37lyNHTtWJ0+e1ODBgwPzf/zjH8vj8WjMmDF68MEHG5yydrpbbrlFjz76qC666CJt3LixXXGtWLFCLpdLkydP1rhx4/Tqq682atOvXz+tXLlSv/71rzV27FglJCQ0OOXuv/7rv5SSkqKZM2fqoosu0s9+9jMdOXIkpOf/6U9/qp///Oe66KKL9Pbbb2v79u2BUe3+/Oc/66GHHmrX6wMAhIfFqDvnAQAAAAC6OXqQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAgkAAAAA/OI6O4BI2r17twzDkNVq7exQAAAAAHQit9sti8WikSNHNtvO1D1IhmEoWn7myTAM1dTURE08aD9yak7k1XzIqTmRV/Mhp+YUTXkNtTYwdQ9SXc/Reeed18mRSE6nU4WFhcrKylJSUlJnh4MwIKfmRF7Nh5yaE3k1H3JqTtGU1w8//DCkdqbuQQIAAACA1qBAAgAAAAA/U59iBwBtVeOVfveFoT+XSyc80rAEaVgPKc4iZSVKtw+WbDGWzg4zojyGoX9USFu/kt51SD1ipLG9pQt6SkfdUrpNGtdHirWY+31AZHkMQ28el0pr2r9OOWoN/ehjqahKGpog/fkbUnJc914/67bjfxz3/T+xj3R53+bfY49h6PWvpP8rk/ZXSWfGSyN7+fKTZpPcXmntEcnhkS7rLc3LkJ4u8b3vmfHSeT2lIzXSlzXSAJs0wCq997X08lHppEc6L1n6UZpks0jlbmmg1feY/1diVVllpiYfjtWofob+dcIXz/jeUqy/bXPrSCivNZT1re5xtlX4Xr9F0hnxUopNSrVJ/eKkvKPSzpO+eZP6SqnxvnlpNt+00hqptEra7ZCKXZKzVjrulTySspOkX5wpje8jPXZA+tNh6Qu3b7n+VukHqdLU/i3nqaXXVH96/zhpT6X0hX/bqPsMc3kMLfzM957ZYqTrU6URydJzZb72veOkq1Kk85Ol7RWnPgvG9ZHmm/hz0GJEwxVTEVJ3nmE0XYM0fPjwTj//EuFBTs3J6XTqtt0n9OeaVPk+roKLlbTwDOnhLHN+OLz0paGffCIdq22+3eB46bfDpJkDovd9YFuNXi99aeiOvdKh6lPTQl2nTs/r6HcM7XQ0bndRsvT2xdG7fkZSU9tx/zjpf88N/h6/9KWhH38sObwdFGQbBFtHQnmtoaxvoe77OkJzearT1Gu6bqD0/JGG0+uLlTQkwVfUtlWMpDtD+ByMpn1wqLVB2E+xu/feezVu3DhlZ2ertjb42nXkyBHdcMMNstvtmjVrloqKigLzdu7cqSuvvFJTpkzR/PnzVVlZGe4QAaBJSw7E+Yuj5nkkrTgoLdpnvmNML31p6Ht7QvuCcLhaunaPbxmgNV760tC1exp/gWvLOtVUcSRJOx2++d1Nc9vxsVrpe0He47plork4khqvI6G81kX7Wl7fWrPv6whN5alOU9vQoWrf51NTxZHk+wxrT3EkSV6Z93Mw7AXSjBkztGHDhmbbrFy5UhMmTFB+fr7mzZun+++/X5Lk9Xp1zz33aPny5SooKFBqaqqeeeaZcIcIAEHVeA39trTuzOPQjjivOuhbziw8hqGffxZ6+7pXvnCvb1kgFB7Dd9Q72BrT2nXKUasmi6M6Ox2+0++6i1C34zvqvccew9CCTyMcWJjUX0dqvKG91lUHm1/f7vhMrdr3daQ7gmwLzW1DHc1sn4NSBK5BGj16dIttCgoKdN9990mSpkyZoqVLl+rYsWM6fPiwevXqpfPPP1+SNGfOHN1xxx1asGBBm+MxDENOp7PNy4eLy+VqcIuuj5yaz+9KYyXZWrWMR9Jvv6jR/HRPRGLqaG+cjNHhmvhWLWNIOlgtbSmv1vhe0XfomW01+rxxMkaHqptez0JZp+ryeeNnoR3r/f6HtfprtrvVsXZFoW7Hh+q9x2+cjFGJu3XbfmeqW0d++0WNDte0vN9ubg9tSDpUE67Iwu9QkG2hpW2oI7X0ORhN+2DDMGQJ4bquDh+koaKiQjabTcnJyZIki8WitLQ0lZaWqrS0VIMGDQq0zcjIUGlpabuez+12q7CwsF2PEU7FxcWdHQLCjJyax7uuwZIGtn650uMqPH4o/AF1gl3uvpIy27ZscYkGWCvCG1AYsa1Gj1DXs1DWqc8coR2c+OREjQoLPwmpbVfXmu247j1uz7bfmd4tPa627Le7mtO3hWjLVyifg9GyD7bZWi6oO7xAampMCIvFEnReKFVec6xWq7Kystr1GOHgcrlUXFysIUOGKDExsbPDQRiQU/P5Vmms1h1ow3LpfTQ8vWf4A+oEX56Mkdp4TGnUkAwN75UW3oDCgG01+oS6njW3TtXl9ZzkWBV93fJjndvbpuHZw1sZadfUmu247j1uz7bfmb6V3qdN++2u5vRtIdry1dznYDTtg/ft2xdSuw4vkPr166eamho5HA4lJyfLMAyVl5crLS1NHo9HJSUlgbYlJSVKS2vfh63FYun0ETPqS0xMjKp40H7k1DzuyDR0z4G6AzWhHZyJlXRHps00Q53mJBoaVCQdbsXpJhb5Rk3KSY2P6iG/2VajR06iocGf+y6QD3bYtDXr1J/O8Srt3Zaf8y/nxSkpztqmeLuaULfj+u9xTqKhjH1SSRc5C7FuHbkj06bHylp+rbHyDSrQ1Po2yOab15p9X0cJti20tA11pFA/B6NhHxxqx0un/FBsTk6O1q9fL0naunWrMjMz1b9/f40YMULHjx/Xnj17JEkvvPCC7HZ7Z4QIoBuyxVh0R3rd8EWhfeQsPMNcvwMRa7Fo9Tmht6975auG8XtICF2sxaLfDvPdP32tae06lRznG8q7ORcld6/fQwp1O/5tvfc41mLR/2RHOLAwqb+O2GJCe60Lz2i47OmP9dtz1Kp9X0f6bZBtobltqKOZ7XNQikCBdPfdd2v8+PGSpEmTJunOO+9UeXm5rr766kCbu+66S6+//rrsdrueeOIJLVu2zBdMTIwefPBB5ebmasqUKSotLdXcuXPDHSIANOk3Z9bqR7byFtvFSvqFSX8HaeYAi9aP8P0GR0sGx0vrRkT37yAhOs0cYNG6EdKg064zb8s69fbFliaLpO76O0jNbcf9rdL6IO9x3TLJnXL4PHSnryOhvNaHs1pe31qz7+sITeWpTlPb0Bnxvs+nwc2M4RAr3w/GtkeMzPs5yA/FdpBo+pEshAc5Nae6vA7NHq4nv0zUn8ulEx5pWII0rIcUZ5GyEk/9CrmZ1f2a/NavTv16+tje0gU9paMt/KJ9NGFbjW4ew9Cbx6XSmtatU8Hy6qg19KOPfb/vMjRB+vM3ulfPUTB12/E/jvv+n9hHurxv8++xxzD0+lfS/5VJ+6ukM+Olkb18+UmzSW6vtPaI5PBIl/WW5mVIT5f43vfMeOm8ntKRGunLGmmATRpgld77Wnr5qHTSI52XLP0oTbJZpHK3NNDqe8z/K6lV2fGvNTm9h0b1s+lfJ3zxjO8txfrbNreOhPJaQ1nf6h5nW4Xv9VvkKzpSbFKqTeoXJ+UdlXae9M2b1FdKjffNS7P5ppXWSKVV0m6HVOySnLXSca9vxLfsJOkXZ0rj+0iPHZD+dFj6wu1brr9V+kGqNLV/y3lq6TXVn94/TtpTKX3h3zbqPsNcHkMLP/O9Z7YY6fpUaUSy9FyZr33vOOmqFOn8ZGl7xanPgnF9pPkhfg5G0z441NqAAqmDRNPKgfAgp+ZEXs2HnJoTeTUfcmpO0ZTXUGuDKO9EBQAAAICOQ4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH5xkXjQoqIiLVq0SA6HQ6mpqVqxYoUGDhzYoM3VV18duO9wOHTy5Em98847kqTs7Gyde+65gflr1qxR3759IxEqAAAAAAREpEC6//77NW/ePNntdv3xj3/UypUr9dBDDzVok5eXF7i/atUqHT9+vMH8F198UXFxEQkPAAAAAIIKewVy9OhRFRUVacqUKZKk2bNna9y4cY0KpDqGYejll1/WqlWrwh1K4PGdTmdEHrs1XC5Xg1t0feTUnMir+ZBTcyKv5kNOzSma8moYhiwWS4vtwl4glZWVKT09PfDkycnJslqtqqioCHqa3FtvvaX4+HhdeOGFDabPmTNHXq9XV1xxhW6++eY2x+N2u1VYWNjm5cOtuLi4s0NAmJFTcyKv5kNOzYm8mg85NadoyavNZmuxTdgLJMMwgk5vqlrbuHGjrrnmmgbTtm/frrS0NB07dky33XabUlJSNGPGjDbFY7ValZWV1aZlw8nlcqm4uFhDhgxRYmJiZ4eDMCCn5kRezYecmhN5NR9yak7RlNd9+/aF1C7sBVJ6errKysoCXVgOh0Nut1t9+vRp1NbpdGrr1q169dVXG0xPS0uTJPXv31/Tp0/X7t2721wgWSwWJSUltWnZSEhMTIyqeNB+5NScyKv5kFNzIq/mQ07NKRryGsrpdVIEhvlOSUlRZmamtm7dKklav369cnJygrYtKCjQBRdcECiIJOnEiROqrq6WJFVVVWnbtm3Kzs4Od5gAAAAA0EhEfgdp6dKleuKJJ2S32/X666/rrrvuUnl5eYOhvSVpw4YNjXqGPv/8c33ve9/T9OnTNXPmTGVnZ2vOnDmRCBMAAAAAGojIONrDhg3TSy+91Gh6/aG9JenZZ59t1GbkyJF65ZVXIhEWAAAAADQrIj1IAAAAANAVUSABAAAAgB8FEgAAAAD4USABAAAAgB8FEgAAAAD4USABAAAAgB8FEgAAAAD4USABAAAAgB8FEgAAAAD4USABAAAAgB8FEgAAAAD4USABAAAAgB8FEgAAAAD4USABAAAAgB8FEgAAAAD4xUXiQYuKirRo0SI5HA6lpqZqxYoVGjhwYIM2P/rRj1RWVqakpCRJ0i9+8QuNGzdOkrRz504tXbpUNTU1Ouecc/TQQw+pR48ekQgVAAAAAAIi0oN0//33a968ecrPz9eECRO0cuXKoO2WLVumvLw85eXlBYojr9ere+65R8uXL1dBQYFSU1P1zDPPRCJMAAAAAGgg7D1IR48eVVFRkaZMmSJJmj17tsaNG6eHHnoopOX37NmjXr166fzzz5ckzZkzR3fccYcWLFjQpngMw5DT6WzTsuHkcrka3KLrI6fmRF7Nh5yaE3k1H3JqTtGUV8MwZLFYWmwX9gKprKxM6enpgSdPTk6W1WpVRUWF+vbt26DtAw88oJiYGI0aNUp33323kpOTVVpaqkGDBgXaZGRkqLS0tM3xuN1uFRYWtnn5cCsuLu7sEBBm5NScyKv5kFNzIq/mQ07NKVryarPZWmwT9gLJMIyg00+v1h555BGlpaWppqZGDzzwgJYvX67ly5cHXT6USq8pVqtVWVlZbV4+XFwul4qLizVkyBAlJiZ2djgIA3JqTuTVfMipOZFX8yGn5hRNed23b19I7cJeIKWnp6usrCzQheVwOOR2u9WnT58G7dLS0iT5qrjrr79eP//5zyX5eoxKSkoC7UpKSgJt28JisQQGgogGiYmJURUP2o+cmhN5NR9yak7k1XzIqTlFQ15D7XQJ+yANKSkpyszM1NatWyVJ69evV05OToM2tbW1OnbsWOD/1157TdnZ2ZKkESNG6Pjx49qzZ48k6YUXXpDdbg93mAAAAADQSESG+V66dKlyc3MDw3uvWLFC5eXlmjdvnvLy8lRTU6NbbrlFbrdbhmEoMzNTv/zlLyVJMTExevDBB5Wbmyu3261hw4bpjjvuiESYAAAAANBARAqkYcOG6aWXXmo0PS8vT5KUlJQUdH6diy++WK+++mokQgMAAACAJkXkd5AAAAAAoCuiQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAv7hIPGhRUZEWLVokh8Oh1NRUrVixQgMHDgzM93q9WrBggfbu3SubzabMzEz96le/Up8+fSRJ2dnZOvfccwPt16xZo759+0YiVAAAAAAIiEgP0v3336958+YpPz9fEyZM0MqVKxu1mTlzpjZv3qxXXnlFZ5xxhlavXt1g/osvvqi8vDzl5eVRHAEAAADoEGEvkI4ePaqioiJNmTJFkjR79mwVFBQ0fNKYGE2aNEkWi0WSdP7556ukpCTcoQAAAABAq4T9FLuysjKlp6cHip/k5GRZrVZVVFQE7QkyDEN//etflZOT02D6nDlz5PV6dcUVV+jmm29uczyGYcjpdLZ5+XBxuVwNbtH1kVNzIq/mQ07NibyaDzk1p2jKq2EYgRqlOWEvkAzDCDq9qWAefvhhJSUl6brrrgtM2759u9LS0nTs2DHddtttSklJ0YwZM9oUj9vtVmFhYZuWjYTi4uLODgFhRk7NibyaDzk1J/JqPuTUnKIlrzabrcU2YS+Q0tPTVVZWFqjQHA6H3G53YACG+p588kl99NFHeuqppxoUUGlpaZKk/v37a/r06dq9e3ebCySr1aqsrKw2LRtOLpdLxcXFGjJkiBITEzs7HIQBOTUn8mo+5NScyKv5kFNziqa87tu3L6R2YS+QUlJSlJmZqa1btyonJ0fr169vdPqcJD333HMqKCjQmjVrFB8fH5h+4sQJJSQkKD4+XlVVVdq2bZsmT57c5ngsFouSkpLavHy4JSYmRlU8aD9yak7k1XzIqTmRV/Mhp+YUDXkN5fQ6KULDfC9dulS5ubmB4b1XrFih8vJyzZs3T3l5eXI4HPr1r3+twYMH6/rrr5ckZWVlaeXKlfr888/1y1/+UhaLRbW1tbr88ss1Z86cSIQJAAAAAA1EpEAaNmyYXnrppUbT8/LyJPkGbvjkk0+CLjty5Ei98sorkQgLAAAAAJoVkd9BAgAAAICuiAIJAAAAAPwokAAAAADAjwIJAAAAAPwokAAAAADAjwIJAAAAAPwokAAAAADAjwIJAAAAAPwokAAAAADAjwIJAAAAAPwokAAAAADAjwIJAAAAAPwokAAAAADAjwIJAAAAAPziOjuA7uDxTw3NL7FJulDaIUlG5waEMIkXOTUj8mo+5NScyKv5kFNzsmmCpL91dhitEJEepKKiIs2aNUt2u1033HCDjhw50qjNkSNHdMMNN8hut2vWrFkqKioKzNu5c6euvPJKTZkyRfPnz1dlZWUkwuwQMX83NL9EkmLle7vptDOPGJFTMyKv5kNOzYm8mg85NadY/UMjlbzD1tmBhCwia+D999+vefPmKT8/XxMmTNDKlSsbtVm5cqUmTJig/Px8zZs3T/fff78kyev16p577tHy5ctVUFCg1NRUPfPMM5EIM+Ji/s7RDwAAAECK6TLfjcNeIB09elRFRUWaMmWKJGn27NkqKCho1K6goECzZ8+WJE2ZMkVFRUU6duyY9uzZo169eun888+XJM2ZM0ebN28Od5gR9/inXWMFAAAAACLLErg3qwsUSWG/BqmsrEzp6emyWHxvRHJysqxWqyoqKtS3b19JUkVFhWw2m5KTkyVJFotFaWlpKi0tVWlpqQYNGhR4vIyMDJWWlrY5HsMw5HQ62/GK2sZ3zVFshz8vAAAAEH18tcEGeeR01nRKBIZhBGqU5oS9QDKM4FVh/WCaaxNsXigvpClut1uFhYVtXr7tLuyE5wQAAACimaWTvpv72GwtXwsV9gIpPT1dZWVlgQrN4XDI7XarT58+gTb9+vVTTU2NHA6HkpOTZRiGysvLlZaWJo/Ho5KSkkDbkpISpaWltTkeq9WqrKys9rykttkR/d2HAAAAQMcyNHz48E555n379oXULuwFUkpKijIzM7V161bl5ORo/fr1ysnJadSubt6Pf/xjbd26VZmZmerfv7/69u2r48ePa8+ePRoxYoReeOEF2e32NsdjsViUlJTUnpfUJr/LqBu9DgAAAOjuDEkWXaPYTvluLoV+VprFaOp8t3bYu3evcnNzVVlZqYEDB2rFihWSpHnz5ikvL0+SVF5erl/84hc6cuSIevTooYcffjjQ0/POO+9o6dKlcrvdGjZsmB566KHA9Uqt8eGHH0qSzjvvvDC9stbpKiN1AAAAAJFT953YIu/Etl86016h1gYRKZCiRWcXSBJFEgAAALo7Q5JX3olhP3mtVUKtDfglrgjzTrTodxmS5JHk9f/BHLwip2ZEXs2HnJoTeTUfcmpOHk3QbjnGdM7IdW3RuWVcN3F7tkU/PqNGhYWFGj58eKedd4nwcjqryakJkVfzIafmRF7Nh5yak9NZo04ctK5N6EECAAAAAD8KJAAAAADwo0ACAAAAAD8KJAAAAADwo0ACAAAAAD8KJAAAAADwo0ACAAAAAD8KJAAAAADwo0ACAAAAAD8KJAAAAADwo0ACAAAAAD8KJAAAAADwo0ACAAAAAL+4cD5YUVGRFi1aJIfDodTUVK1YsUIDBw5s0Mbr9WrBggXau3evbDabMjMz9atf/Up9+vSRJGVnZ+vcc88NtF+zZo369u0bzjABAAAAIKiw9iDdf//9mjdvnvLz8zVhwgStXLkyaLuZM2dq8+bNeuWVV3TGGWdo9erVDea/+OKLysvLU15eHsURAAAAgA4TtgLp6NGjKioq0pQpUyRJs2fPVkFBQeMnjInRpEmTZLFYJEnnn3++SkpKwhUGAAAAALRZ2E6xKysrU3p6eqDwSU5OltVqVUVFRZO9QIZh6K9//atycnIaTJ8zZ468Xq+uuOIK3Xzzze2KyzAMOZ3Odj1GOLhcrga36PrIqTmRV/Mhp+ZEXs2HnJpTNOXVMIxArdKcVhVI3//+91VeXt5o+tChQ7VgwYKgyzQXxMMPP6ykpCRdd911gWnbt29XWlqajh07pttuu00pKSmaMWNGa8JswO12q7CwsM3Lh1txcXFnh4AwI6fmRF7Nh5yaE3k1H3JqTtGSV5vN1mKbVhVIf/nLX5qcd/ToUZWVlQUqM4fDIbfbHRh84XRPPvmkPvroIz311FMNiqi0tDRJUv/+/TV9+nTt3r27XQWS1WpVVlZWm5cPF5fLpeLiYg0ZMkSJiYmdHQ7CgJyaE3k1H3JqTuTVfMipOUVTXvft2xdSu7CdYpeSkqLMzExt3bpVOTk5Wr9+faNT5+o899xzKigo0Jo1axQfHx+YfuLECSUkJCg+Pl5VVVXatm2bJk+e3K64LBaLkpKS2vUY4ZSYmBhV8aD9yKk5kVfzIafmRF7Nh5yaUzTkNZTT66QwD/O9dOlS5ebmBob3XrFihSSpvLxc8+bNU15enhwOh379619r8ODBuv766yVJWVlZWrlypT7//HP98pe/lMViUW1trS6//HLNmTMnnCECAAAAQJPCWiANGzZML730UqPpqampysvLk+QbvOGTTz4JuvzIkSP1yiuvhDMkAAAAAAhZWH8HCQAAAAC6MgokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAv7hwPlhRUZEWLVokh8Oh1NRUrVixQgMHDmzU7kc/+pHKysqUlJQkSfrFL36hcePGSZJ27typpUuXqqamRuecc44eeugh9ejRI5xhAgAAAEBQYe1Buv/++zVv3jzl5+drwoQJWrlyZZNtly1bpry8POXl5QWKI6/Xq3vuuUfLly9XQUGBUlNT9cwzz4QzRAAAAABoUtgKpKNHj6qoqEhTpkyRJM2ePVsFBQWteow9e/aoV69eOv/88yVJc+bM0ebNm8MVIgAAAAA0K2yn2JWVlSk9PV0Wi0WSlJycLKvVqoqKCvXt27dR+wceeEAxMTEaNWqU7r77biUnJ6u0tFSDBg0KtMnIyFBpaWm74jIMQ06ns12PEQ4ul6vBLbo+cmpO5NV8yKk5kVfzIafmFE15NQwjUKs0p1UF0ve//32Vl5c3mj506FAtWLAg6DLBgnjkkUeUlpammpoaPfDAA1q+fLmWL18uwzBCWr413G63CgsL2/UY4VRcXNzZISDMyKk5kVfzIafmRF7Nh5yaU7Tk1WaztdimVQXSX/7ylybnHT16VGVlZYHKzOFwyO12q0+fPo3apqWlBQK8/vrr9fOf/1ySr8eopKQk0K6kpCTQtq2sVquysrLa9Rjh4HK5VFxcrCFDhigxMbGzw0EYkFNzIq/mQ07NibyaDzk1p2jK6759+0JqF7ZT7FJSUpSZmamtW7cqJydH69evV05OTqN2tbW1OnHihPr37y9Jeu2115SdnS1JGjFihI4fP649e/ZoxIgReuGFF2S329sVl8ViCYyWFw0SExOjKh60Hzk1J/JqPuTUnMir+ZBTc4qGvIZ6ZlpYh/leunSpcnNzA8N7r1ixQpJUXl6uefPmKS8vTzU1NbrlllvkdrtlGIYyMzP1y1/+UpIUExOjBx98ULm5uXK73Ro2bJjuuOOOcIYIAAAAAE0Ka4E0bNgwvfTSS42mp6amKi8vT5KUlJQUtE2diy++WK+++mo4wwIAAACAkIT1d5AAAAAAoCujQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCjQAIAAAAAPwokAAAAAPCLC+eDFRUVadGiRXI4HEpNTdWKFSs0cODARu2uvvrqwH2Hw6GTJ0/qnXfekSRlZ2fr3HPPDcxfs2aN+vbtG84wAQAAACCosBZI999/v+bNmye73a4//vGPWrlypR566KFG7fLy8gL3V61apePHjzeY/+KLLyouLqyhAQAAAECLwlaFHD16VEVFRZoyZYokafbs2Ro3blzQAqmOYRh6+eWXtWrVqnCFEfQ5nE5nxB4/VC6Xq8Etuj5yak7k1XzIqTmRV/Mhp+YUTXk1DEMWi6XFdmErkMrKypSenh540uTkZFmtVlVUVDR5itxbb72l+Ph4XXjhhQ2mz5kzR16vV1dccYVuvvnmdsXldrtVWFjYrscIp+Li4s4OAWFGTs2JvJoPOTUn8mo+5NScoiWvNputxTatKpC+//3vq7y8vNH0oUOHasGCBUGXaa5K27hxo6655poG07Zv3660tDQdO3ZMt912m1JSUjRjxozWhNmA1WpVVlZWm5cPF5fLpeLiYg0ZMkSJiYmdHQ7CgJyaE3k1H3JqTuTVfMipOUVTXvft2xdSu1YVSH/5y1+anHf06FGVlZUFuq4cDofcbrf69OkTtL3T6dTWrVv16quvNpielpYmSerfv7+mT5+u3bt3t6tAslgsSkpKavPy4ZaYmBhV8aD9yKk5kVfzIafmRF7Nh5yaUzTkNZTT66QwDvOdkpKizMxMbd26VZK0fv165eTkNNm+oKBAF1xwQaAgkqQTJ06ourpaklRVVaVt27YpOzs7XCECAAAAQLPC+jtIS5cu1RNPPCG73a7XX39dd911lySpvLy8wdDekrRhw4ZGPUOff/65vve972n69OmaOXOmsrOzNWfOnHCGCAAAAABNCutY2sOGDdNLL73UaHpqamqDob0l6dlnn23UbuTIkXrllVfCGRIAAAAAhCysPUgAAAAA0JVRIAEAAACAHwUSAAAAAPhRIAEAAACAHwUSAAAAAPhRIAEAAACAHwUSAAAAAPhRIAEAAACAHwUSAAAAAPhRIAEAAACAHwUSAAAAAPhRIAEAAACAHwUSAAAAAPjFdXYAQH0n3Iau/EDaXy2dFS/97Xypt9XS2WEBAAB0K7P/bmj9adP6x0oOr9QnTtp9kZSWEPw72heVhoa+XfdfvKQLZd1haP+lRpPLRBMKJESNYf8xVFR16v9D1VLff0pDEwztvTT6NyYAAAAziPm7EXT6MY/vttwtZfxHSoox5Li84Xe0uL8b8jZ8NEmSW00vE23Ceordvffeq3Hjxik7O1u1tbVNtjty5IhuuOEG2e12zZo1S0VFRYF5O3fu1JVXXqkpU6Zo/vz5qqysDGeIiFKnF0f1FVX55gMAACCymiqOgnF6peTtp9o3Lo5aXiYahbVAmjFjhjZs2NBiu5UrV2rChAnKz8/XvHnzdP/990uSvF6v7rnnHi1fvlwFBQVKTU3VM888E84QEYVOuJsujuoUVfnaAQAAIDJmt6I4quP0SmVVhr6obLk4On2ZaBXWU+xGjx4dUruCggLdd999kqQpU6Zo6dKlOnbsmA4fPqxevXrp/PPPlyTNmTNHd9xxhxYsWNDmmAzDkNPpbPPy4eJyuRrc4pTv7rFJim253W6Pto6oiXxAISKn5kRezYecmhN5NR9y2vnWK7TvZKe78G2PTnrUqmUvfNujzy/q2O91hmHIYmn59L4OvwapoqJCNptNycnJkiSLxaK0tDSVlpaqtLRUgwYNCrTNyMhQaWlpu57P7XarsLCwXY8RTsXFxZ0dQtT5vPKbCmWD+ryyNqpyWYecmhN5NR9yak7k1XzIaWe6sE1LVXgkt1p3XVGFR53yvc5ms7XYplUF0ve//32Vl5c3mj506FA99dRTIT2GYQTvTrNYLEHnhVLlNcdqtSorK6tdjxEOLpdLxcXFGjJkiBITEzs7nKhy9p44HQnhUrOze8Rp+PDhkQ8oROTUnMir+ZBTcyKv5kNOo8COtp321jdWOukx1MIVE42W6ejvdfv27QupXasKpL/85S9tCqa+fv36qaamRg6HQ8nJyTIMQ+Xl5UpLS5PH41FJSUmgbUlJidLS0tr1fBaLRUlJSe0NO2wSExOjKp5o8NpIQ33/GUq7WCVZo++9I6fmRF7Nh5yaE3k1H3Laeb6nxkN7h+K90bFyeVRvaO/QlklK6Ng8h9rx0ik/FJuTk6P1631v/9atW5WZman+/ftrxIgROn78uPbs2SNJeuGFF2S32zsjRHSg3laLhiY032ZoAr+HBAAAEEkvTGz9d62kGN/vIWX2sIRcWNQtE63CWiDdfffdGj9+vCRp0qRJuvPOOyVJ5eXluvrqqwPt7rrrLr3++uuy2+164okntGzZMl8wMTF68MEHlZubqylTpqi0tFRz584NZ4iIUnsvbbpIGpogfgcJAACgA3hbUSQlxajBbxrVTmy5SDp9mWgU1kEaHnnkkaDTU1NTlZeX1+D/P//5z0HbXnzxxXr11VfDGRa6iL2XWnTCbejKD6T91dJZ8dLfzqfnCAAAoCN5J1o0+++NT7frHys5vFKfOGn3RcF7gWonWvRFpVHvdDvf4N9WGdp/aWxU9xzV6fBR7IDm9LZa9Oa3OjsKAACA7q0tp9vVyexhkXei777TWa3CwkINHz68w685aqtOuQYJAAAAAKIRBRIAAAAA+FmMpn6YyAR27dolwzBC+kGoSDMMQ263W1artd2/7YToQE7NibyaDzk1J/JqPuTUnKIprzU1NbJYLBo1alSz7Ux9DVJnJ6E+i8USFYUawoecmhN5NR9yak7k1XzIqTlFU14tFktI9YGpe5AAAAAAoDW4BgkAAAAA/CiQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAgkAAAAA/CiQAAAAAMCPAqkDFBUVadasWbLb7brhhht05MiRzg4J9dx7770aN26csrOzVVtbG5i+ZcsW2e125eTk6L777pPH4wnMW716tSZPnqycnBytXbs2ML2yslLz58/XlClTdOWVV+rdd98NzGM96DgVFRW6+eabNXXqVF111VVavHixampqJJHXruwnP/mJpk+frquvvlpz585VaWmpJHJqBosXL26wDyanXdukSZM0bdo0XX311br66qv16aefSiKvXVlVVZWWLFkiu92u7373u1q9erUkE+fUQMRdf/31xubNmw3DMIxnnnnGWLRoUSdHhPp27NhhfPnll8Y555xjuN1uwzAM4+uvvzbGjh1rHDx40PB6vcatt95qrF+/3jAMw/jPf/5jXHPNNUZ1dbVx/PhxY+LEicb+/fsNwzCM1atXG7/61a8MwzCMDz74wPjOd75jeDwewzBYDzpSRUWF8fbbbxuGYRgej8dYuHCh8dRTT5HXLu7kyZOB+88++6xx5513klMT+Pe//23k5uYG9sHktOubOHGiUVxc3GAaee3ali5daqxatSrw/5EjR0ydU3qQIuzo0aMqKirSlClTJEmzZ89WQUFBJ0eF+kaPHq2UlJQG09544w2NGjVKgwcPlsVi0ezZs7V582ZJ0ubNmzVz5kzZbDb17t1bdrtd+fn5gXlz5syRJJ133nnq1auX9uzZw3rQwfr06aOLL75YkhQTE6MRI0aopKSEvHZxPXv2DNx3OByS2Fa7OqfTqUcffVS5ubmBaeTUnMhr11VZWanXXntNt99+e2DagAEDTJ1TCqQIKysrU3p6uiwWiyQpOTlZVqtVFRUVnRwZmlNWVqaMjIzA/+np6SorK2txXmlpaYN5GRkZKi0tZT3oRNXV1dqwYYMmTJhAXk3grrvu0mWXXaZXX31Vubm55LSLe/TRR3XDDTeob9++gWnk1BwWLFig6dOna+XKlXK73eS1Czt48KD69eunRx55RDNnztSNN96owsJCU+eUAinCDMMIOr0u+YhOTeWtqXnN5dNisbAedBKv16vc3FxdcsklGj9+PHk1gZUrV+rNN9/UjBkz9Pjjj5PTLmzXrl06cOCArrrqqgbTyWnXt3btWuXl5Wnt2rXat2+fnnzySfLahdXW1qqoqEijR4/WSy+9pBtuuEE//elPTZ1TCqQIq6uY65LucDjkdrvVp0+fzg0MzUpPT1dJSUng/9LSUqWlpQXm1V0cXjcvNTU16LySkhKlpaWxHnSSZcuWKS4uTvfee68k8moWFotFc+bMUV5eHjntwnbu3KmPP/5YkyZN0qRJkyRJU6ZMUf/+/clpF1eXr+TkZM2ePVu7d+9mW+3C0tPTlZiYqJycHEnSxIkT5XA4TJ1TCqQIS0lJUWZmprZu3SpJWr9+fWAFQ/QaP368du3apcOHD8swDK1bt052u12SZLfbtWHDBtXU1OjkyZPKz89vMO+vf/2rJOmjjz7SiRMnNGLECNaDTvDwww+rvLxcDz74YODoE3ntuiorKwOnZ0i+c9iHDRtGTruwefPm6Z///Ke2bdumbdu2SZIKCgo0efJkctqFOZ3OwDWCtbW1KigoUHZ2NttqF9a/f3+dd955gdHmPvjgAyUkJGjcuHGmzanFaK5/DGGxd+9e5ebmqrKyUgMHDtSKFSsCVTQ63913360dO3aovLxcqampuuiii/Too49q8+bNWrVqlTwej8aMGRPojZCkVatW6dVXX5Uk3Xjjjbr++usl+Y52LFq0SPv27ZPNZtPSpUt10UUXSWI96Eh79+7VlVdeqbPPPls2m02S9O1vf1u5ubnktYs6evSobr31VlVXV0vyHYFcvHixzjrrLHJqEtnZ2froo48UFxdHTruwgwcPav78+fJ6vfJ4PLrgggu0ZMkS9ejRg7x2YZ9//rkWL14sh8OhhIQELV68WBdeeKFpc0qBBAAAAAB+nGIHAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADgR4EEAAAAAH4USAAAAADg9/8Df8KMTBHOfxUAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 1000x600 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# fault region\n",
"fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(10,3 * 2))\n",
"\n",
"axs[0].plot(fault_voltage_data)\n",
"axs[0].set_title(\"voltage\")\n",
"fault_incidents = fault_data[0:60000]\n",
"axs[1].scatter(range(len(fault_incidents)), fault_incidents)\n",
"axs[1].set_title(\"fault incidents\")"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f151091b6d0>]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# test region\n",
"plt.plot(test_voltage_data)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f15116719d0>]"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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mjVrooV+tnn88cdx5MgRPPbYY9EoeebMmdi6dSsOHz4MIQRee+216ElfUVGB119/HX6/H83NzaiqqtJM+8Mf/gAA+Oyzz3Dq1KnoxUEG3/3ud/F///d/2LhxIzZu3AgAeOuttzB79uyczC8ADBw4EFOnTo32ut+2bRsKCgpwySWX5GSehw4ditraWhw6dAiAUpg7HI6czW9Eqs9Z2cs4n8+HJUuWYO7cubjxxhs103Ixv7/61a/w7rvvYuPGjXjqqacwZcoUvPLKKwByM789krk+tXLavXu3uOaaa8TcuXPF1772NdHQ0GB2kpK2e/duMX78eHH55ZeLq6++Wlx99dXiscceE0IIsX79ejF37lxx2WWXiWXLlml6gT/11FPisssuE5dddpl46aWXot+3tLSI22+/XcyZM0dceeWV4sMPP8x4npKh7t2ey/ndu3evuPHGG8X8+fPFV77yFfHxxx8LIXI3z6+//rq48sorxVVXXSWuueYa8cEHHwghcie/d911l7jkkkvE+PHjxSWXXCIqKyuFEKnPnyxlnFF+X3rpJTFp0qRouXX11VeLtWvXRpfJtfyqbd68WfP0jRDZnd9UsQjRSSMmERERUYb06uYbIiIikgeDEiIiIpICgxIiIiKSAoMSIiIikgKDEiIiIpICgxIiIiKSAoMSIiIikgKDEiIiIpICgxIiIiKSAoMSIiIikgKDEiIiIpLC/wczI/ztaeO7CgAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# test region\n",
"plt.plot(val_voltage_data)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f1511629cd0>]"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"\n",
"# train region\n",
"# plt.plot(voltage_data[145000:])\n",
"plt.plot(train_voltage_data)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Data Processing"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(100774,)"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"train_voltage_data.to_numpy().shape"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(25000,)"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test_voltage_data.to_numpy().shape"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [],
"source": [
"data = train_voltage_data.to_numpy()\n",
"segment_size = 100\n",
"segments = [ torch.tensor(data[i:i + segment_size]).unsqueeze(1).float() for i in range(0, len(data), segment_size) ]\n"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"if (segments[-1].shape[0] != segment_size):\n",
" segments.pop()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"torch.Size([1007, 100, 1])"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"torch.stack(segments).shape"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [],
"source": [
"def create_dataset(series, segment_size, mean, stdev):\n",
" # normalize the data\n",
" data = (series.to_numpy() - mean)/stdev\n",
" segments = [ torch.tensor(data[i:i + segment_size]).unsqueeze(1).float() for i in range(0, len(data), segment_size) ]\n",
" # reject the last segment if it doesn't fit the shape\n",
" if (segments[-1].shape[0] != segment_size):\n",
" segments.pop()\n",
" n_seq, seq_len, n_features = torch.stack(segments).shape\n",
"\n",
" return segments, seq_len, n_features\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"data = train_voltage_data.to_numpy()\n",
"mean = np.mean(data)\n",
"stdev = np.std(data)\n",
"\n",
"\n",
"segment_size = 60\n",
"train_dataset, seq_len, n_features = create_dataset(train_voltage_data, segment_size, mean, stdev)\n",
"val_dataset, _, _ = create_dataset(val_voltage_data, segment_size, mean, stdev)\n",
"test_normal_dataset, _, _ = create_dataset(test_voltage_data, segment_size, mean, stdev)\n",
"test_anomaly_dataset, _, _ = create_dataset(fault_voltage_data, segment_size, mean, stdev)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Encoder Decoder"
]
},
{
"cell_type": "code",
"execution_count": 26,
"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": 27,
"metadata": {},
"outputs": [],
"source": [
"class Encoder(nn.Module):\n",
"\n",
" def __init__(self, seq_len, n_features, embedding_dim=64):\n",
" super(Encoder, self).__init__()\n",
"\n",
" self.seq_len, self.n_features = seq_len, n_features\n",
" self.embedding_dim, self.hidden_dim = embedding_dim, 2 * embedding_dim\n",
"\n",
" self.rnn1 = nn.LSTM(\n",
" input_size=n_features,\n",
" hidden_size=self.hidden_dim,\n",
" num_layers=1,\n",
" batch_first=True\n",
" )\n",
" \n",
" self.rnn2 = nn.LSTM(\n",
" input_size=self.hidden_dim,\n",
" hidden_size=embedding_dim,\n",
" num_layers=1,\n",
" batch_first=True\n",
" )\n",
"\n",
" def forward(self, x):\n",
" x = x.reshape((1, self.seq_len, self.n_features))\n",
"\n",
" x, (_, _) = self.rnn1(x)\n",
" x, (hidden_n, _) = self.rnn2(x)\n",
"\n",
" return hidden_n.reshape((self.n_features, self.embedding_dim))"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"class Decoder(nn.Module):\n",
"\n",
" def __init__(self, seq_len, input_dim=64, n_features=1):\n",
" super(Decoder, self).__init__()\n",
"\n",
" self.seq_len, self.input_dim = seq_len, input_dim\n",
" self.hidden_dim, self.n_features = 2 * input_dim, n_features\n",
"\n",
" self.rnn1 = nn.LSTM(\n",
" input_size=input_dim,\n",
" hidden_size=input_dim,\n",
" num_layers=1,\n",
" batch_first=True\n",
" )\n",
"\n",
" self.rnn2 = nn.LSTM(\n",
" input_size=input_dim,\n",
" hidden_size=self.hidden_dim,\n",
" num_layers=1,\n",
" batch_first=True\n",
" )\n",
"\n",
" self.output_layer = nn.Linear(self.hidden_dim, n_features)\n",
"\n",
" def forward(self, x):\n",
" x = x.repeat(self.seq_len, self.n_features)\n",
" x = x.reshape((self.n_features, self.seq_len, self.input_dim))\n",
"\n",
" x, (hidden_n, cell_n) = self.rnn1(x)\n",
" x, (hidden_n, cell_n) = self.rnn2(x)\n",
" x = x.reshape((self.seq_len, self.hidden_dim))\n",
"\n",
" return self.output_layer(x)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [],
"source": [
"class RecurrentAutoencoder(nn.Module):\n",
"\n",
" def __init__(self, seq_len, n_features, embedding_dim=64):\n",
" super(RecurrentAutoencoder, self).__init__()\n",
"\n",
" self.encoder = Encoder(seq_len, n_features, embedding_dim).to(device)\n",
" self.decoder = Decoder(seq_len, embedding_dim, n_features).to(device)\n",
"\n",
" def forward(self, x):\n",
" x = self.encoder(x)\n",
" x = self.decoder(x)\n",
"\n",
" return x"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [],
"source": [
"model = RecurrentAutoencoder(seq_len, n_features, 128)\n",
"model = model.to(device)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Training"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"def train_model(model, train_dataset, val_dataset, n_epochs):\n",
" optimizer = torch.optim.Adam(model.parameters(), lr=1e-5)\n",
" criterion = nn.L1Loss(reduction='sum').to(device)\n",
" history = dict(train=[], val=[])\n",
"\n",
" best_model_wts = copy.deepcopy(model.state_dict())\n",
" best_loss = 10000.0\n",
" \n",
" for epoch in range(1, n_epochs + 1):\n",
" model = model.train()\n",
"\n",
" train_losses = []\n",
" for seq_true in train_dataset:\n",
" optimizer.zero_grad()\n",
"\n",
" seq_true = seq_true.to(device)\n",
" seq_pred = model(seq_true)\n",
"\n",
" loss = criterion(seq_pred, seq_true)\n",
"\n",
" loss.backward()\n",
" optimizer.step()\n",
"\n",
" train_losses.append(loss.item())\n",
"\n",
" val_losses = []\n",
" model = model.eval()\n",
" with torch.no_grad():\n",
" for seq_true in val_dataset:\n",
"\n",
" seq_true = seq_true.to(device)\n",
" seq_pred = model(seq_true)\n",
"\n",
" loss = criterion(seq_pred, seq_true)\n",
" val_losses.append(loss.item())\n",
"\n",
" train_loss = np.mean(train_losses)\n",
" val_loss = np.mean(val_losses)\n",
"\n",
" history['train'].append(train_loss)\n",
" history['val'].append(val_loss)\n",
"\n",
" if val_loss < best_loss:\n",
" best_loss = val_loss\n",
" best_model_wts = copy.deepcopy(model.state_dict())\n",
"\n",
" print(f'Epoch {epoch}: train loss {train_loss} val loss {val_loss}')\n",
"\n",
" model.load_state_dict(best_model_wts)\n",
" return model.eval(), history"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1: train loss 7.188362143299209 val loss 10.97716400551796\n",
"Epoch 2: train loss 7.061609009534848 val loss 10.861721575021743\n",
"Epoch 3: train loss 7.050498445725213 val loss 10.759196199297905\n",
"Epoch 4: train loss 6.953788480228296 val loss 10.529170639157295\n",
"Epoch 5: train loss 6.819667443375704 val loss 10.165040640830993\n",
"Epoch 6: train loss 6.738479136036151 val loss 9.992541402816773\n",
"Epoch 7: train loss 6.614317140013353 val loss 9.791294813871383\n",
"Epoch 8: train loss 6.452131601406606 val loss 9.845977551937104\n",
"Epoch 9: train loss 6.408218298855107 val loss 9.518717983603478\n",
"Epoch 10: train loss 6.238182526727458 val loss 9.489320818185806\n",
"Epoch 11: train loss 6.234057898515033 val loss 9.289050007283688\n",
"Epoch 12: train loss 6.202264721316195 val loss 9.33216683781147\n",
"Epoch 13: train loss 6.1222286748257755 val loss 9.25562231683731\n",
"Epoch 14: train loss 6.28904679132722 val loss 10.131250357687474\n",
"Epoch 15: train loss 6.073458283509507 val loss 11.110596370041371\n",
"Epoch 16: train loss 6.161009409070512 val loss 9.410741286337375\n",
"Epoch 17: train loss 6.021980724913723 val loss 9.270162648320198\n",
"Epoch 18: train loss 6.039738698001061 val loss 11.261745161175728\n",
"Epoch 19: train loss 6.115699894411213 val loss 9.005485089600086\n",
"Epoch 20: train loss 5.929479124247496 val loss 9.085405830562115\n",
"Epoch 21: train loss 5.9451709336347704 val loss 10.106599816918374\n",
"Epoch 22: train loss 5.924677521709248 val loss 9.108658552646636\n",
"Epoch 23: train loss 5.908539707831785 val loss 8.512088710725308\n",
"Epoch 24: train loss 5.818426139967793 val loss 9.660966635107995\n",
"Epoch 25: train loss 5.953280821415979 val loss 8.881353223979474\n",
"Epoch 26: train loss 5.762612802924465 val loss 8.796815033614635\n",
"Epoch 27: train loss 6.0233771145752035 val loss 9.594733444035054\n",
"Epoch 28: train loss 5.884460732465063 val loss 8.864278678059579\n",
"Epoch 29: train loss 5.812006496509816 val loss 9.826941768109798\n",
"Epoch 30: train loss 5.818772723404619 val loss 9.912757200181485\n",
"Epoch 31: train loss 5.6362157306673275 val loss 9.99971356779337\n",
"Epoch 32: train loss 5.646149147277506 val loss 10.41991896033287\n",
"Epoch 33: train loss 5.785268129284996 val loss 9.180850823998451\n",
"Epoch 34: train loss 5.6033936036066185 val loss 8.335838904500008\n",
"Epoch 35: train loss 5.639638055348907 val loss 8.63649248892069\n",
"Epoch 36: train loss 5.496804546314098 val loss 8.519725093007088\n",
"Epoch 37: train loss 5.45866653725212 val loss 8.703529002845288\n",
"Epoch 38: train loss 5.5987114275740755 val loss 7.895355988562107\n",
"Epoch 39: train loss 5.397800835968839 val loss 8.712894497811794\n",
"Epoch 40: train loss 5.615536484239427 val loss 9.162039269328117\n",
"Epoch 41: train loss 5.468912153788235 val loss 8.45761411190033\n",
"Epoch 42: train loss 5.371571399009675 val loss 7.897047997713089\n",
"Epoch 43: train loss 5.266479222919346 val loss 7.756879223942756\n",
"Epoch 44: train loss 5.268004156937551 val loss 7.302376929938793\n",
"Epoch 45: train loss 5.267588082587811 val loss 9.525786200582981\n",
"Epoch 46: train loss 5.373221474869966 val loss 7.77464767986536\n",
"Epoch 47: train loss 5.32135811762273 val loss 8.563139500975609\n",
"Epoch 48: train loss 5.412440207110692 val loss 7.822439022362232\n",
"Epoch 49: train loss 5.406725116318149 val loss 7.7465962873101235\n",
"Epoch 50: train loss 5.159115838695666 val loss 7.441654227137565\n",
"Epoch 51: train loss 5.258179729568099 val loss 7.8189039084911345\n",
"Epoch 52: train loss 5.251028409168931 val loss 7.743886261582374\n",
"Epoch 53: train loss 5.242734800604854 val loss 7.365176262140274\n",
"Epoch 54: train loss 5.16607915904282 val loss 8.90385246372223\n",
"Epoch 55: train loss 5.2259016893338135 val loss 8.867705811679363\n",
"Epoch 56: train loss 5.194666571919587 val loss 7.8739802262187\n",
"Epoch 57: train loss 5.249035688970258 val loss 7.216172798454761\n",
"Epoch 58: train loss 5.070800466896737 val loss 6.85274638992548\n",
"Epoch 59: train loss 5.001781966748019 val loss 7.9121731922626495\n",
"Epoch 60: train loss 5.1056873312374185 val loss 7.273398827493191\n",
"Epoch 61: train loss 4.9760447693428445 val loss 7.714040239751339\n",
"Epoch 62: train loss 5.0596290826797485 val loss 7.861135354578495\n",
"Epoch 63: train loss 5.159216250112683 val loss 8.330905803859235\n",
"Epoch 64: train loss 5.089301896732502 val loss 8.29973559910059\n",
"Epoch 65: train loss 5.077050341283232 val loss 7.0275069693923\n",
"Epoch 66: train loss 5.104413759262878 val loss 7.527150939106941\n",
"Epoch 67: train loss 5.011002344894154 val loss 7.2104483036994935\n",
"Epoch 68: train loss 5.031821377153834 val loss 7.462278498470783\n",
"Epoch 69: train loss 4.93549394425606 val loss 7.092176900625229\n",
"Epoch 70: train loss 4.902165090153798 val loss 7.506531097173691\n",
"Epoch 71: train loss 5.044680127577813 val loss 8.029633438766002\n",
"Epoch 72: train loss 5.078257953991061 val loss 7.620706166148186\n",
"Epoch 73: train loss 5.02238962424341 val loss 7.4123868288993835\n",
"Epoch 74: train loss 4.943703004306026 val loss 7.7856830370426175\n",
"Epoch 75: train loss 5.058452894515122 val loss 7.487752008140087\n",
"Epoch 76: train loss 4.983188311229369 val loss 6.923008233428002\n",
"Epoch 77: train loss 4.91655006462474 val loss 7.989273576080799\n",
"Epoch 78: train loss 5.02005114208878 val loss 7.763792626202107\n",
"Epoch 79: train loss 5.119667072916329 val loss 7.779459906995297\n",
"Epoch 80: train loss 4.815837256517206 val loss 6.943657228469848\n",
"Epoch 81: train loss 4.94981735579097 val loss 8.068133530378342\n",
"Epoch 82: train loss 4.966924919932637 val loss 7.317310967862606\n",
"Epoch 83: train loss 4.9220759348634315 val loss 7.525299256563186\n",
"Epoch 84: train loss 4.896259387266146 val loss 7.622523278236389\n",
"Epoch 85: train loss 4.785323318562172 val loss 7.6916364338994025\n",
"Epoch 86: train loss 4.898927788957376 val loss 7.980075287938118\n",
"Epoch 87: train loss 4.846099264995195 val loss 7.757217339038849\n",
"Epoch 88: train loss 4.897296259353884 val loss 7.217446682631969\n",
"Epoch 89: train loss 4.8730314556085474 val loss 7.53286054366827\n",
"Epoch 90: train loss 4.7620205258403665 val loss 8.212237065553666\n",
"Epoch 91: train loss 4.7782756012951495 val loss 7.190876980245114\n",
"Epoch 92: train loss 4.864514986617783 val loss 7.239515961110592\n",
"Epoch 93: train loss 4.675690712807716 val loss 8.097305634975433\n",
"Epoch 94: train loss 4.7876884221515885 val loss 6.623932673871517\n",
"Epoch 95: train loss 4.722695211113884 val loss 7.503434510350227\n",
"Epoch 96: train loss 4.745365573961938 val loss 7.175907820641995\n",
"Epoch 97: train loss 4.659669167756538 val loss 7.756110722780227\n",
"Epoch 98: train loss 4.662637394221146 val loss 6.194095297515393\n",
"Epoch 99: train loss 4.6344790222781125 val loss 7.093573769330979\n",
"Epoch 100: train loss 4.656862292254589 val loss 7.243564149618149\n"
]
}
],
"source": [
"model, history = train_model(\n",
" model, \n",
" train_dataset, \n",
" val_dataset, \n",
" n_epochs=100\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"ename": "NameError",
"evalue": "name 'history' is not defined",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[0;32mIn[23], line 3\u001b[0m\n\u001b[1;32m 1\u001b[0m ax \u001b[39m=\u001b[39m plt\u001b[39m.\u001b[39mfigure()\u001b[39m.\u001b[39mgca()\n\u001b[0;32m----> 3\u001b[0m ax\u001b[39m.\u001b[39mplot(history[\u001b[39m'\u001b[39m\u001b[39mtrain\u001b[39m\u001b[39m'\u001b[39m])\n\u001b[1;32m 4\u001b[0m ax\u001b[39m.\u001b[39mplot(history[\u001b[39m'\u001b[39m\u001b[39mval\u001b[39m\u001b[39m'\u001b[39m])\n\u001b[1;32m 5\u001b[0m plt\u001b[39m.\u001b[39mylabel(\u001b[39m'\u001b[39m\u001b[39mLoss\u001b[39m\u001b[39m'\u001b[39m)\n",
"\u001b[0;31mNameError\u001b[0m: name 'history' is not defined"
]
},
{
"data": {
"image/png": "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BwAAACABQh4AAACABAh5AAAAABIg5AEAAABIgJAHAAAAIAFCHgAAAIAECHkAAAAAEiDkAQAAAEiAkAcAAAAgAUIeAAAAgAQIeQAAAAASIOQBAAAASICQBwAAACABQh4AAACABHRq6ws2NDREdXV1LFu2LN5///0oLy+Pfv36RVVVVZSVlbVZH8uXL48333wzVq9eHZs3b46uXbtGr169YsSIETF48ODo2FH+BQAAAHx4tFnIU19fH1OnTo3p06fHqlWrdvt5WVlZnHLKKTFp0qSoqKgoSA+NjY3x6KOPxr/927/FggUL9jqusrIyzjnnnPjmN78ZnTt3LkgvAAAAAPnUJrerbNy4Mc4777y4/fbb9xjwRERs2bIlHnrooRg3blz88Y9/zHsPmzdvjgkTJsT3vve9fQY8ERE1NTVx++23xxlnnBErV67Mey8AAAAA+VbwO3l27twZV111VVRXV2efHXbYYTFu3LiorKyMtWvXxtNPPx1vvPFGRESsXLkyJk6cGA8//HD07ds3Lz00NjbG5ZdfHnPmzMk+Ky0tjTFjxsSxxx4bFRUVUVtbG2+++WbMnDkztm7dGhER77zzTnzjG9+Ixx9/PLp06ZKXXgAAAAAKoeAhzwMPPJATrpx66qlx88035zwGdckll8S0adPipptuisbGxli1alVcd911ce+99+alh6eeeiqnh0GDBsWUKVPiL/7iL3Yb++1vfzsuu+yyLHRasmRJTJ06NS677LK89AIAAABQCAV9XKu2tjbuv//+rB4xYkTceuute9znZvz48fH1r389q5977rl49dVX89LHf/zHf2THHTt2jDvvvHOPAU9ERN++feOf//mfczaB/s///M+89AEAAABQKAUNeR5//PFYv359Vk+aNCk6ddr7zUNXX311dO3aNaunTZuWlz7eeuut7Pioo46K4cOH73N8nz594vjjj8/qJUuWxLZt2/LSCwAAAEAhFDTkeeaZZ7LjysrKOO644/Y5vkePHnHSSSdl9ezZs2PHjh2t7mPDhg3Z8YABA1o05/DDD9/rOQAAAACKTcFCnm3btsVLL72U1aNGjYoOHTrsd96oUaOy482bN+flka0ePXpkx1u2bGnRnF2bL0d88IhXoV7rDgAAAJAPBQt5Fi9eHHV1dVl9zDHHtGjesccem1PPnz+/1b00vfZrr73WoruDmgZU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smVLPPTQQzFu3Lj44x//WLBetm7dGt/97nfjG9/4Rjz//PN7DXh29TRz5szYsGFDwfoBAAAAyIeC38mzc+fOuOqqq6K6ujr77LDDDotx48ZFZWVlrF27Np5++ul44403IiJi5cqVMXHixHj44Yejb9++ee1l+/bt8fd///fxwgsvZJ9169Ytjj/++BgxYkT06tUrtm/fHitWrIh58+bF3Llzo76+Pq89AAAAABRCwUOeBx54IObMmZPVp556atx8883RuXPn7LNLLrkkpk2bFjfddFM0NjbGqlWr4rrrrot77703r71ce+21OQHP2WefHZMmTYry8vI9jl+3bl089thj7bJXEAAAAMCBKOjjWrW1tXH//fdn9YgRI+LWW2/NCXh2GT9+fHz961/P6ueeey5effXVvPXym9/8Jn71q19l9aWXXho/+tGP9hrwRER87GMfiwkTJkTv3r3z1gcAAABAIRQ05Hn88cdj/fr1WT1p0qTo1GnvNw9dffXV0bVr16yeNm1aXvrYuXNn3HjjjVl97LHHxpVXXpmXcwMAAAAUg4KGPM8880x2XFlZGccdd9w+x/fo0SNOOumkrJ49e3bs2LGj1X3MmjUrVq5cmdXf+c53okOHDq0+LwAAAECxKFjIs23btnjppZeyetSoUS0KVkaNGpUdb968OS+PbD388MPZ8aBBg2LkyJGtPicAAABAMSlYyLN48eKoq6vL6mOOOaZF84499ticev78+a3qo76+PidsGj16dKvOBwAAAFCMCvZ2rUWLFuXUhx9+eIvmVVZWRklJSfbq8sWLF7eqj4ULF8aWLVuy+lOf+lRERKxZsyYeeeSRmDlzZqxYsSI2b94cvXr1iiFDhsTo0aPjzDPP3OemzAAAAADFpGAhz4oVK3Lqfv36tWheSUlJ9OnTJ/785z9HRMTy5ctb1cef/vSnnHrQoEHxq1/9Kq6//vqcTaEjIlauXBkrV66M3//+9/HP//zPce2118ZXv/rVVl0fAAAAoC0U7HGt2tranLqioqLFc3v06JEdb968uVV9rFu3Lqd+9dVX4+qrr84Cno4dO0bv3r3j4x//eM6eQRs3bozvf//7cffdd7fq+gAAAABtoWB38jR9RCoi4pBDDmnx3C5duuz1PAdq48aNOfVtt90WjY2N0bVr17j00kvjrLPOil69ekVExOrVq+PnP/95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/i3kaYVnnnkmO66srIzjjjtun+N79OgRJ510UlbPnj17v5tGHWgfVVVVMWjQoH2OHzRoUM5bhJrOh9YqlnVxoD772c9mx/X19fHuu++2eQ+krZjXxqxZs7I/bf2rv/qrOPPMMwtyHWiuWNbFrFmzYuXKlVn9ne98p12/QPDRVizroumj7C296+Dwww/f6zkgFcX+/VvIc5C2bdsWL730UlaPGjWqRb8MjBo1KjvevHnzbpu+HqilS5fGkiVL9nj+lvaxZMmSWLZsWav6gIjiWRcHo1u3bjl1080DobWKeW1s2bIl22y8U6dOccMNN/hyS5sopnXx8MMPZ8eDBg2KkSNHtvqccDCKaV306NEjO971CNb+NP39qWPHjgV7rTu0lw/D928hz0FavHhxzutljznmmBbNO/bYY3Pq1j4v2HQ379b00fw8cDCKZV0cjBUrVuTUH//4x9u8B9JVzGvjn/7pn7I718aPH9/iN1dAaxXLuqivr8/5Ut308V1oa8WyLppf+7XXXmvR3UFN19JRRx3l7Vok58Pw/VvIc5AWLVqUUze/NXFvKisro6SkJKubvrmkLftofstl8/PAwSiWdXEwmt42+YlPfCL69+/f5j2QrmJdG2+++WZMnz49IiL69esXV1xxRV7PD/tSLOti4cKFOXcpfOpTn4qIiDVr1sS9994bZ511Vvz1X/91HHXUUXHCCSfEhAkT4oEHHoiNGze26rqwJ8WyLiI+eAvQLmvXrt3nxrIREb/4xS9ywqUJEya0ugcoNh+G799CnoPU/E/9+/Xr16J5JSUl0adPn6xevnx53vro2LFj9O3bt0Xz+vbtGx07/r//97e2D4gonnVxoGbNmhX//d//ndVf+tKXPK5CXhXj2qivr4//9b/+V9TX10fEB5sZlpWV5e38sD/Fsi7+9Kc/5dSDBg2KX/3qV3HyySfH7bffHm+88UasW7cuduzYEStXrozf//73ccstt8QXvvCFeOihh1p1bWiuWNZFRMTxxx8fZ599dlb/7Gc/i+9+97uxcOHCnHHLly+Pm266Kee10H/7t38bX/rSl1rdAxSbD8P375a9eobd1NbW5tQH8rxpjx494s9//nNEfPDMbL766NatW4vfJlRaWhpdu3bNrt/aPiCieNbFgaitrY0f/ehHWX3IIYfExRdf3GbX56OhGNfGtGnTsjenfP7zn4+xY8fm7dzQEsWyLtatW5dTv/rqq3HLLbdEY2NjRHzwS/zHP/7xaGhoiLVr12afb9y4Mb7//e/He++9l/PqdWiNYlkXu9xwww3Rq1evmDp1atTV1cWjjz4ajz76aPTo0SPKy8tj8+bNOW8CKy8vj8suuyy+8Y1v5OX6UGw+DN+/3clzkJpvPnbIIYe0eG7TZ1NbuolZS/o4kB7y3QdEFM+6OBDf+973oqamJqsvu+yyFify0FLFtjbefffduPPOO7PzX3fddXk5LxyIYlkXzR+7uu2226KxsTG6du0a3/72t+P3v/99PP/88zFnzpyYPXt2XH755VFaWpqNv/vuu2PWrFmt6gF2KZZ1sUtJSUl861vfiqeeeipn49hNmzZFTU1NTsDzqU99KmbMmBHf/OY33RFNsj4M37+FPAdp+/btOXXT/7Hfn86dO2fH27Zty1sfB9JDvvuAiOJZFy31s5/9LHttdETEyJEj46KLLmqTa/PRUmxr4wc/+EH2y8Wll15qDyraRbGsi+ZvU6yrq4vS0tK477774uKLL45evXplP+vdu3dcccUVcffdd2e33Tc2NsYtt9wSDQ0NreoDIopnXTT1i1/8Is4777yYM2fOPse9/vrrcfrpp8f3vve92LRpU96uD8Xkw/D9W8hzkJqndk13wd+fpjvTt3bH+aZ9HEgP+e4DIopnXbTEQw89lN3JEPHBhoV33HFHzrOykC/FtDaeeuqp+O1vfxsREUOGDLExJu2mWNZF01+6d7nggguiqqpqr3M+//nP5+xVsmTJkpg9e3ar+oCI4lkXERENDQ1x7bXXxnXXXRfvvfdeRHzw9rkpU6bEnDlz4s0334w//OEP8cADD8Spp54aER/s9/bII4/EueeeG2vXrm11D1BsPgzfv32bOUjNN6dsnrrvS9PUrrWbXDadfyA95LsPiCiedbE/v/71r3M2B+zdu3c88MADORsWQj4Vy9rYtGlT3HTTTVl9ww03HPCfQkG+FMu66NatW07doUOHnLcK7c348eNz6hdeeKFVfUBE8ayLiIgpU6bE448/ntWTJk2K+++/P0488cT4+Mc/HqWlpfGxj30sRo0aFbfffnv84z/+Y/aHZe+8805873vfa3UPUGw+DN+/hTwHqXv37jn1hg0bWjy36bPfzX+xaE0fmzdvjp07d7ZoXl1dXc7tya3tAyKKZ13sy+zZs+Pb3/529kahioqKmDp1agwcOLBg14RiWRs/+clPYvXq1RERcfrpp8dnPvOZVp0PWqNY1kXz+QMHDmzR3mxDhgzJeZTr7bffblUfEFE862LdunXxL//yL1k9duzYuPDCC/c555RTTonzzjsvq2fNmhXz5s1rVR9QbD4M37+FPAep+f4Fu3ay35+dO3dmv2BHRAwYMCBvfTQ0NGS3Uu7PypUrc54db20fEFE862JvXn755bj88suzWyu7desW999/fwwfPrwg14NdimFtvP322/GLX/wiIj4IN6+99tqDPhfkQzGsiz3NP+yww1o8t+nrrZu/pQsORrGsi2eeeSbnroOm4c2+NB/3m9/8plV9QLH5MHz/9gr1gzR48OCceunSpS36E9GamprsDoI9nae1fSxbtiwqKyv3O2/58uX7PA8cjGJZF3syb968mDhxYvYLS5cuXWLKlClx9NFH5/1a0FwxrI2amprs1c91dXVxzjnn7HN88w0Bb7vttrjnnnuyesqUKTFkyJCD7geKYV1ERAwdOjSn3tMePXvTdOyB3rYPe1Is62LBggU59RFHHNGieQMHDozu3btnr5letGhRq/qAYvNh+P7tTp6DNHjw4Jx9DF5//fUWzZs7d25OPWzYsFb10fwOhNdee61d+oCI4lkXzf3pT3+KCy+8MDZv3hwRH+yEf/fdd3tUhTZTbGtjy5YtsWzZsn3+tWrVqpw5a9asyfl5080D4WAUy7o47LDDoqKiIqsP5PGYpmN79uzZqj4gonjWRfO3znXt2rXFc5uOFX6Smg/D928hz0Hq2rVrzlsX5syZk/0J6b40ffVgWVlZjBw5slV9DBw4MGcvkf292nBP4wYNGmQ/EvKiWNZFU4sXL44JEyZkv4h36tQp7rjjjhg9enTergH7U4xrA9pbMa2LE044ITtesGBBi16HvnXr1li2bFlWN3/MBg5GsayL8vLynPr9999v0by6urpYv359VjcNUCEFH4bv30KeVhg7dmx2XFNTs9+3KmzatClmzpyZ1aNHjz6gW4L35gtf+EJ2/PLLL8eSJUv2OX7JkiXxyiuvZPWYMWNa3QPsUizrIiJixYoV8c1vfjPWrFkTEREdO3aMm2++Ob74xS/m5fxwINp7bYwdOzbmz5/f4r+mTZuWM//mm2/O+fn/+B//46B7gV3ae13s8jd/8zfZ8ebNm1v0OvTf/OY3ORtuujuUfCmGddH8C+jzzz/fonkvvfRSzmul/UEyKSr2799CnlYYN25cTjp922237XN37Z/+9Kc5tz42f/VmU2PGjInhw4fH8OHD9/svwbnnnpvd1tnY2Bi33nrrPsffcsst2XFpaWmLXhMKLVUs62LVqlVx/vnn52yG9oMf/CDGjRvXkr8NyLtiWRtQTIplXZx44ok5X0bvuOOOnC+qzW3bti3uvvvurC4rK/MHCORNMayLUaNG5dT33Xdfts/O3tTV1cWdd96Z89nnPve5fc6BYpHS928hTyv06NEj51WCb731VkyePHmPvxRMnz49ZsyYkdWjR4/O2233hx9+eJxxxhlZ/eyzz8ZPfvKT3W7tbGxsjB//+Mcxa9as7LMzzzzTm7XIq2JYF+vXr48JEybk3Eb/3e9+N84+++xWnxsOVjGsDSg2xbIuOnXqFFdffXVWv/322/Gtb31rj19q169fH5deemksXbo0++y8887LeZ06tEYxrIv+/fvn3FG0dOnSuPjii/f6JqENGzbElVdembM/ydFHHx2f/vSnW90LFJti//7dobElD3myV3V1dXHBBRfEiy++mH1WWVkZp512WvTv3z/Wrl0bTz/9dMybNy/7ee/evePhhx+OQw89dK/nHTNmTNTU1GTne/bZZ/fZR21tbZxzzjnxzjvvZJ8NHTo0vvzlL0ffvn3jvffeiyeffDIWL16c/fyTn/xk/PznP4/u3bsf8N837Et7r4uf/exnOX+SVFJS0qJd75v6u7/7u33+SRgcjPZeGwfixRdfzFkDN998c84vNJAvxbQuvv/978dDDz2U1Z/4xCfi5JNPjqFDh0ZDQ0MsWLAgnnrqqZw9R4455piYPn163h41hojiWBfLly+Ps88+O9auXZt9dsghh8TYsWPj6KOPjvLy8qitrY0//vGPMXPmzOwFFxEf3N327//+7y1+Kxe0xLRp02L69Om7fb5mzZqcf/8OP/zw3cYceuihe5y7S0rfv71CvZVKS0vjrrvuiokTJ2Y7ZtfU1MSUKVP2OL5Pnz5xzz337PM/vgeje/fuMWXKlLjooouyf5EWLlwYd9111x7HDx48OKZMmSLgoSDae1003zCzvr4+566eljiQt6tAS7X32oBiVEzr4oYbboitW7fGf/3Xf0XEB5vNNt+fqqm//uu/jjvvvFPAQ94Vw7oYMGBA3H///XHFFVdkX363b98eTz75ZDz55JN7nderV6/4x3/8RwEPebdhw4YW/U6/pzH19fV57aWYv397XCsPKioqYsaMGXHNNddE79699zimrKwszjrrrHjiiSfiyCOPLEgf/fv3j8ceeywmTJiw153sKyoqYsKECfHYY495CwQFVSzrAoqNtQG7K5Z10alTp7j99tvjjjvu2OfrbSsrK+MHP/hBTJ061duDKJhiWBdHHHFE/Od//mdcdtlle+1hl549e8b5558fTzzxRBx33HF57wWKTbF+//a4Vp7V19dHdXV1LF26NNasWRPl5eXRr1+/qKqqim7durVZHzt27IiXX345ampqYt26dfGxj30sKisro6qqyp820eaKZV1AsbE2YHfFtC7eeeed+NOf/hSrV6+OhoaG6NWrVxxxxBExfPjwNu0DimFdNDY2xuLFi+Ott96KtWvXxpYtW6Jr167Rs2fP+Mu//MsYNmxYlJSUtEkvUGyK6fu3kAcAAAAgAR7XAgAAAEiAkAcAAAAgAUIeAAAAgAQIeQAAAAASIOQBAAAASICQBwAAACABQh4AAACABAh5AAAAABIg5AEAAABIgJAHAAAAIAFCHgAAAIAECHkAAAAAEiDkAQAAAEiAkAcAAAAgAUIeAAAAgAQIeQAAAAASIOQBAAAASICQBwAAACABQh4AAACABAh5AAAAABIg5AEAAABIgJAHAAAAIAFCHgAAAIAECHkAAAAAEiDkAQAAAEiAkAcAAAAgAf8/c7LXGQf7D2kAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {
"image/png": {
"height": 427,
"width": 572
}
},
"output_type": "display_data"
}
],
"source": [
"ax = plt.figure().gca()\n",
"\n",
"ax.plot(history['train'])\n",
"ax.plot(history['val'])\n",
"plt.ylabel('Loss')\n",
"plt.xlabel('Epoch')\n",
"plt.legend(['train', 'test'])\n",
"plt.title('Loss over training epochs')\n",
"plt.show();"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Save the model\n"
]
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"date = datetime.date.today().strftime('%y-%m-%d')\n",
"MODEL_PATH = f'model_save/model_{date}.pth'\n",
"\n",
"torch.save(model, MODEL_PATH)"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [],
"source": [
"# reload the model\n",
"model = torch.load('model_save/model_23-08-29_1647.pth')\n",
"model = model.to(device)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Check reconstruction error"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [],
"source": [
"def predict(model, dataset):\n",
" predictions, losses = [], []\n",
" criterion = nn.L1Loss(reduction='sum').to(device)\n",
" with torch.no_grad():\n",
" model = model.eval()\n",
" for seq_true in dataset:\n",
" seq_true = seq_true.to(device)\n",
" seq_pred = model(seq_true)\n",
"\n",
" loss = criterion(seq_pred, seq_true)\n",
"\n",
" predictions.append(seq_pred.cpu().numpy().flatten())\n",
" losses.append(loss.item())\n",
" return predictions, losses"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [],
"source": [
"_, losses = predict(model, test_normal_dataset)"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<Axes: ylabel='Density'>"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"_, losses = predict(model, train_dataset)\n",
"plt.xlim(0, 50)\n",
"sns.kdeplot(losses)"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<Axes: ylabel='Density'>"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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9OKLL5KTk8P69euHvG8YhkJQErksF6o+tB6hEQybuFI0JSYiIvFl1CFo9erV41GHxJkzj4J8F7QH4fndcGGO3RWJiIiMzqjXBAE0Njby3//939x7770ANDU18d5770W1MHG2FMPA1397vNYFiYhIPBp1CHryySdZuHAhbW1trFmzBoC9e/fyH//xH1EvTpzt0v4QVK8QJCIicWjU02E/+tGP+J//+R9mzJjB448/DsCJJ57Iu+++G/XixNnKc8EAXvVDc69JUbrWBYmISPwY9UjQ7t27OeEEa4c8w7B+6ZmmSVraqPOUxLlJboOzjrKONRokIiLxZtQh6Mwzz+R///d/h7z361//mrPOOitqRUn80JSYiIjEq1EP33z3u9/lpptu4te//jXd3d1cccUVGIbBAw88MB71icNdmgf3boV1uyAUNknTrfIiIhInRh2CCgoKWLFiBbt27eLll1/mc5/7HKeffjqpqanjUZ843LlHQXYadIbg5b3wuYl2VyQiIjIyowpBv/nNb/jhD39IV1cXYK0FWr16NTfffDNf+cpXxqM+cbi0FIPyXJPftsGfOhSCREQkfox4TdCGDRv4z//8T775zW/S0NDAa6+9RkNDA9/85je57777hu0gLcnDp3VBIiISh0Y8EvTQQw+xePFivvSlL0Xemzp1Ktdeey0ZGRk89NBDXHzxxeNSpDjbQAh6ZS/sDJhMcmtdkIiION+IR4LefvttLrnkkoN+rqysjLfffjtqRUl8OTrd4AwvmFgLpEVEROLBiENQIBAgJ+fgD4jKzs4mGAxGrSiJP5oSExGReDPi6bBwOMymTZswTfOgnz/U+5IcLs2F5dusEBQ2TVIMTYmJiIizjTgE5ebmUllZecjPH2qUSJLD+RPhqFTYGYSNe+HsCXZXJCIicngjDkEbNmwYzzokzrlTDC7OMXms3XqqvEKQiIg43agfmyFyKFoXJCIi8UQhSKLm0jzr9YXd0BnUGjEREXE2hSCJmmkZBidlQhho6LS7GhERkcNTCJKoGpgS+1OHvXWIiIh8GoUgiarL+qfEBm6VFxERcSqFIImq2RPBmwrNAXhpj93ViIiIHJpCkERVRqrB3P7RoNqd9tYiIiJyOLaEoMbGRubPn4/P52PhwoW0tbUNO6etrY2FCxfi8/mYP38+jY2NAASDQRYsWMC8efOYO3cuN998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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# _, losses = predict(model, train_dataset)\n",
"_, losses = predict(model, test_normal_dataset)\n",
"plt.xlim(0, 50)\n",
"sns.kdeplot(losses)"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<Axes: ylabel='Density'>"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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G92+JiIiIhIAClUiIiIiAaBQJSIiIhIAClUiIiIiAaBQJSIiIhIAClUiIiIiAaBQJSIiIhIAClUiIiIiAaBQ1UXl5eXMmjULl8vF3LlzqampsbpJYa2uro5bbrmFqVOnMn36dO6++268Xi8Aa9euxeVykZmZSW5uLq2trf73PfbYY0yZMoXMzExeeOEFq5oftu6++27GjBlDS0sLoFpY4eDBg9xzzz24XC6+//3v89hjjwGqhRXeeecdZs6cyYwZM7jmmmvYsGEDoFr0ll/+8pdMmjTpiP8nQfd+/g0NDcyfP5+srCymTZvGxx9/3LXGmNIlP/zhD801a9aYpmmaK1euNO+8806LWxTe6urqzL/97W+maZpma2ur+fOf/9xcsWKFeeDAAfPiiy82d+7caba1tZk//elPzaKiItM0TfODDz4wr776avPQoUNmfX29eemll5pfffWVlZcRVt5//30zJyfHPO2008zm5mbVwiL5+fnmI4884v++pqZGtbDIRRddZG7fvt00TdNct26dOWPGDNWiF3300Ufm7t27/f9PMk2z2z//xx57zLz//vtN0zTNzZs3m5dffrnZ2tra6baop6oLamtrKS8vJysrC4DZs2dTWlpqcavCW1xcHOeddx4ADoeDcePGUVlZybvvvsvEiRMZPnw4hmEwe/Zs1qxZA8CaNWu45ppriI6OZvDgwbhcLkpKSqy8jLDR2NjI8uXLycnJ8b+mWvS+hoYG3njjDX72s5/5XxsyZIhqYaEDBw74/0xOTlYtetH5559PUlLSEa919+e/Zs0a5syZA8D48eMZNGgQW7du7XRbFKq6oKqqitTUVAzDAMDpdBIVFUVdXZ3FLesbDh06xCuvvEJGRgZVVVWkpaX596WmplJVVQVwwn3SM8uXL2fu3LnEx8f7X1Mtet/OnTtJSEjgV7/6Fddccw033ngj27ZtUy0s8sgjjzBv3jwyMjIoKCjgnnvuUS0s1t2fv9vtPmJfWloabre705+rUNUF5nGePd0RsiR42trayMnJ4YILLmDy5MnHrQUcu06qUc9t3LiRHTt2MH369CNeVy16X0tLC+Xl5Zx//vm8/PLLzJ07l9tuu021sEBraytPPfUUzzzzDG+//Tb5+fnMnz+ftra2475HtQi+QP4udKU2ClVd0JFmOwri8Xhobm4mLi7O2ob1Affddx+RkZH88pe/BHy1qKys9O93u92kpKT49x3+Lwu3201ycnLvNjgMbdiwgU8++YTLLruMyy67DICsrCwSExNVi16WmppKTEwMmZmZAFx66aV4PB79Xljgk08+ob6+nnHjxgFw2WWXUVlZSVpammphoe7+LnxzX2Vlpf99naFQ1QVJSUmkp6dTVlYGQFFRkf9/ahI8y5Yto7q6miVLlvj/xTB58mQ2btzIrl27ME2TP/7xj7hcLgBcLhevvPIKXq+X/fv3U1JS4t8n3Zednc17773HunXrWLduHQClpaVMmTJFtehliYmJjB8/3n9n0ubNm+nfvz+TJk1SLXpZSkoKO3fu5OuvvwZ8PbrR0dGqhcW6+3eEy+XiD3/4AwD//Oc/2bdvnz8wd0Zk4C8lvOXn55OTk0NBQQFDhw6loKDA6iaFte3bt7Ny5UpGjhzJrFmzALjooovIycnhnnvu4aabbqK1tZXvfve7zJw5E4ALL7yQiy++mCuuuAKAm2++mZNPPtmqSwh7TqdTtbDAfffdx913343H46F///78+te/ZuDAgapFLxsyZAh33303P/3pT3E4HERGRvLII4+oFr3ojjvu4KOPPgJ8PYXnnnsuy5cv79bP/+abb+bOO+8kKyuL6Oholi5disPR+f4nwzzRwKOIiIiIdIqG/0REREQCQKFKREREJAAUqkREREQCQKFKREREJAAUqkREREQCQKFKREREJAAUqkREREQCQKFKREREJAAUqkREREQCQKFKREREJAD+f9ld/t1uPLJiAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# _, losses = predict(model, train_dataset)\n",
"_, losses = predict(model, test_anomaly_dataset)\n",
"plt.xlim(0, 1000)\n",
"sns.kdeplot(losses)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Predictions"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Compute THRESHOLD with training set data"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [],
"source": [
"predictions, losses = predict(model, train_dataset)"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
"loss_array = np.array(losses)"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [],
"source": [
"stdev = np.std(loss_array)\n",
"mean = np.mean(loss_array)\n",
"THRESHOLD = mean + stdev * 1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Check on test_normal_dataset"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number of intervals exceeding 1 std dev loss: 33/416\n"
]
}
],
"source": [
"_, losses = predict(model, test_normal_dataset)\n",
"exceed_count = sum(l > THRESHOLD for l in losses)\n",
"print(f'number of intervals exceeding 1 std dev loss: {exceed_count}/{len(test_normal_dataset)}')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Check on test_anomaly_dataset"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number of intervals exceeding 1 std dev loss: 333/416\n"
]
}
],
"source": [
"_, losses = predict(model, test_anomaly_dataset)\n",
"exceed_count = sum(l > THRESHOLD for l in losses)\n",
"print(f'number of intervals exceeding 1 std dev loss: {exceed_count}/{len(test_normal_dataset)}')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## plot construction error vs original"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [],
"source": [
"def plot_prediction(data, model, title, ax):\n",
" predictions, pred_losses = predict(model, [data])\n",
"\n",
" ax.scatter(range(60), data, label='true')\n",
" ax.scatter(range(60), predictions[0], label='reconstructed')\n",
" ax.set_title(f'{title} (loss: {np.around(pred_losses[0], 2)})')\n",
" ax.legend()"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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DNXV1emyyy6T5E/kDz74oF544QW98soruuyyy3TLLbfotdde0/r16/W///u/kiSfz6dzzjlHdXV1evrpp/X+++9rxYoVUc25rq5Ohx12mO1jn3/+ua6//nr98Ic/1J///GdVVlZqyZIlkqRVq1aptbVVdXV1evPNNwdsl6SLLrpI//mf/xnVvN577z3tu+++/faZP3++vv71r+uaa64JqzJ85JFHNHPmTJ111ll68803Qx477LDDgtXjALILeTpxeTpa27Zt01/+8hdVV1cH2/Ly8vS1r31Nb7zxRkKfC0DmIw8PPg8fffTR6ujo0N///nd1dnZq9erVqqqqiiqG/uzYsUPr168PWXuzXgayB3k5NevjdevWqaysTMuXL9fMmTN1yimn6IUXXgg+3tHRodraWttdSiTyMpBtyM2pu3bx5ptvateuXTr22GPDHvvmN7+pP/7xj+ro6ND69ev1wQcf6Igjjgg+Tm4Gsgd5efB5+bPPPtOUKVOCX1dWVionJ0dffvml7bx69y0sLNTee++tdevWBdssywr+t8/nC/mADXkZFJIg41122WX6+c9/rq6urpD2Z599VmeeeaYmT56soqIiLV68WH/84x+DSS8vL08XX3yxcnNzVVBQIMlfKDFmzBiNHDlSM2bM0MEHH6x9991XJSUlmjVrlv7xj39IkoYPH665c+cqLy9Po0eP1llnnRVyP8dIWltbVV9fr/Hjx9s+/txzz+m4447TjBkzlJeXp8WLF+vdd9/Vli1blJOTox07dmjDhg3KyckJbo8VqV3y32vywgsvHHBef/vb3/T444/re9/7XsQ+v/3tb/XKK6/omWeeUVdXl6655prgY+edd56ef/551dXV6bzzztP3vve9kPuo7bPPPvrkk08GnAcAdyJPx5+nY/GHP/xBBx54oCZOnBjSPnHiRHIxkKXIw4PLw0VFRZo7d67mz5+vf/u3f9Ozzz6rq666asAY+uPz+XTdddfp5JNP1oQJE4LtrJeB7EJeTv76uLGxUZ9++qn22msv1dXV6eabb9Y111wTvID+y1/+UnPmzFFlZaXtePIykH3IzcnPzV1dXbrrrrsi3i7ykEMO0dq1azVt2jSdcMIJOu2007T//vsHHyc3A9mFvDy4vNza2qqSkpKQtpKSErW2tob13b17d1jf4uLi4DGmTZumBx98UB0dHXrjjTf09ttvq62tLdiXvIycdE8AGMiRRx6pUaNGafXq1SHtW7Zs0fTp04Nfjxs3Tu3t7dqxY4ckaeTIkcrJCX2JDx8+PPjfBQUFGjFiRMjX3WNbWlr0gx/8QG+++aZaWlrk8/l00EEHDTjX7u21ioqKbB/fsmWLysvLg18XFxdr2LBh2rJli6qrq7Vp0yZddtll6ujo0MKFC3XRRRdFbI/Wp59+qkWLFqm2tlb77LNPxH7db1IjRozQTTfdpKOOOkqtra0qKirSgQceGOx38skn65lnnlFdXZ2++c1vBuPojh1A9iFPx5enY7V69WrV1NSEtRcXF2vnzp1Je14AmYs8PLg8/Pjjj+uPf/yj1qxZo7Fjx2rNmjU6//zz9eyzz6qwsHDA8XZuu+027dmzR7fccktIO+tlILuQl5O/Pi4oKFBubq4uueQS5eTk6PDDD9fMmTP1xhtvKD8/X6tWrdLKlSsjjicvA9mH3Jz83Pyb3/xGhx12mO2u2F6vV9/97nd1/vnn67zzztOOHTu0ePFi/eY3v9G3vvWtYBzkZiB7kJcHl5eLiorU0tIS0tbS0mI7t+Li4rC+u3fvDvatra3VbbfdpqqqKu23336aO3euiouLQ8aTl7MbO5LAEborE71eb7Bt1KhRamhoCH69adMm5eXladiwYZIkwzAG/Xy/+tWvtG3bNj399NN69913dfXVV0c1rruyz67yz27Ora2t2rFjh0aNGqW8vDwtWrRIa9as0cMPP6xf//rXwfuX2bVH46uvvtJ3vvMd3XjjjZo1a1ZUYyTJ4/Gnht5bWvVmGEbIY7t379aQIUOiPj4A9yFPDy5Px+rzzz/XJ598om984xthj5GLgexGHo49D3/yySc69thjVVlZKdM09Y1vfEPt7e0h27jG4p577tHHH3+sn/3sZ2H3gydHA9mHvJzc9fHkyZMjPrZ27Vpt2rRJc+fO1cyZM/Vf//VfeuaZZ3TuuecG+5CXgexEbk5ubv7rX/+qVatWaebMmZo5c6YaGhp08cUXa8WKFdq5c6caGxv1rW99S7m5uSorK9PJJ58ccssEcjOQfcjLseflfffdV59++mnw6/r6enV1ddnuljJp0qSQvnv27NFXX30VLPirrKzUf//3f+utt97So48+qq1bt+rggw8O9icvg0ISOMLRRx+t0tJSvfLKK8G2b3zjG3r88cf1+eefq7W1VcuWLdM3vvGNuN5Euu3evVuFhYUaMmSINm7cqN///vdRjSsuLta4ceNs70UmSSeeeKJefPFFvfvuu+ro6NDy5cs1ffp0jRo1Sm+++abWrVsnn8+nIUOGyDRNmaYZsX0gmzdv1gUXXKBLLrnE9g+Ova1bt07/+Mc/5PV6tWvXLt1xxx064ogjgpWHa9asUWtrq7xer5577jm99dZbOvroo4Pjv/jiC+23335RfY8AuBN5OvY8Lfnv3d7e3h7235E888wzOuaYY0Kq7LuRi4HsRh6OPQ8fdNBBevnll7Vp0yZZlqU//vGPam1t1d57723bvztPW5alzs7O4H9L0oMPPqhXX31VDz/8cMind7qRo4HsQ15O7vp4woQJmjp1qn7xi1+oq6tL77zzjt5++20deeSRqqqq0gsvvKDVq1dr9erVWrhwoY4//ngtX748OJ68DGQncnNyc/Mdd9yhZ599Nph/R40apbvuukunnHKKRowYoXHjxumxxx6T1+vVtm3b9Oyzz4bkYnIzkH3Iy7Hn5Xnz5unDDz/Ua6+9pra2Nv3sZz/T8ccfH7zNT28zZ87Unj179OSTT6qjo0MPPfSQDjjggOB1j+7v8Z49e/TII49o8+bNOuOMM4LjycugkASOcemllwa3n5Kkr3/967rooov03e9+V3PmzFFubm7E+y/G6rzzztPWrVt1+OGH6/vf/77mzp0b9diqqqqI91SbNGmSli5dquuvv15HH320vvjiC917772SpK1bt+rSSy/VoYceqvnz5+uss87SjBkzIrZL0ne+8x39/Oc/t32uJ598Uhs3btQ999yj6dOna/r06Tr55JODj/ce29TUpEWLFunQQw/VSSedJJ/PF5yX5K/SrKqq0uGHH67/+q//0v333x9yz/e3335bX//616P+HgFwJ/J0bHla8p9kHHzwwfJ6vTrppJNCKr77jrUsS//7v/+r6urqsON0dHToo48+0pFHHhn19wGA+5CHY8vDp59+uo499lgtXLhQhx56qH7+859r2bJl2muvvWzH/sd//IcOPvhgbdiwIfjfGzdulCT95Cc/0Zdffqk5c+YE197PPPNMcCzrZSA7kZeTuz7+8Y9/rL/+9a867LDDdNNNN+nuu+/W+PHjlZ+frzFjxgT/V1JSooKCApWWlgbHkpeB7EVuTl5uHj58eEj+NU1T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2ZDU54z38yqMj298Mo7JeMYnWirn5DEsjTPr9a7nH5qqqfE9cS8UkgBIvT11odsNhrEk7wZ/v8LZg36a0047TZLU2tqqd955R9dff33wMZ/Pp6+++koffPCBjj32WI0bN06SVFJSIkl68803dcopp6ioqEher1fV1dV64YUXggv94447Trm5ucrNzdXEiRNVX1+vAw44QJs3b9Ztt92mo48+WlVVVRHnNmTIEB177LEDxvDFF18oLy9PxxxzjCTJNE0NHTo0rF9/Mb777ruaM2eO9tprr+D3JdKJBYAsRV4mL2e4ho70jAXShrxMXgaQWcjL5GUAmYW8TF7upfd5v0deVeXX6YDcv6dvQgCQJl5jW0KPRyEJgNTzRlkNHG2/CIqKiiT5F7ymaWrVqlVh93t8//33ZdiU9VmWFdJu9bk5Yl5eXvC/TdOU1+vV0KFDtXr1ar3xxht6+eWX9eMf/1jPPPNMv3Pre4xu7e3ttvOIpL8Y33333bDYACAEeZm8nOHK8wbuk4yxQNqQl8nLADILeZm8DCCzkJfJy710n/efXrhSy0dcEXJLG7tbQ/TXDgBOZlojEno8z8BdACDBzPLE9htASUmJpk6dqt/85jfBto8++kiWZemoo47SSy+9pI0bN0qSdu/erY6ODh155JH6wx/+oLa2NnV1demZZ57REUcc0e/zbNu2TR0dHZozZ45uvPFGbd26VS0tLSopKdHu3bv7HVtZWam1a9dKkt5++201NTVJkvbZZx91dHTo1VdflSR5vV7t2rVLklRcXBw8bn8xzpw5U6+88op27twpn8+n1atXx/LtA5ANyMthyMuZpWqYVJEvxXKNx5BUme8fCzgOeTkMeRlAWpGXw5CXAaQVeTlMNuflqmHSd4au1BNlCzTODN+ppm/di88K/TdSv/7EW0vD+PjGJ+OYjGd8oqVyTj7L0EZvhUb79o/vSfugkARA6hVUSWaFIv85yJDMSn+/BKmtrQ1uJ3jyySdr2bJlsixLkyZN0o033qjvfe97OvXUU3XBBReopaVFc+bM0dy5czV//nzV1NRo77331oIFC/p9joaGBp1//vk69dRTNX/+fF188cUaPny4jjjiCG3btk01NTV68MEHbcd+5zvf0Zo1a7RgwQK98MILGjt2rCQpNzdX999/vx5++GGdcsopqqmp0UcffSTJf1/Ob37z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77065ZRTho6/++67mjdv3tCebgD8hbycnrz85ptv6s9//rMsy9KBAwd044036pOf/OTQVTcjHXLIITr00EN1xx13qLe3V//v//0/2batY445RhJ5GQg68nJ68vLLL7+sl19+WX19fero6NCtt96qgw46SIccckhU3127dg317erq0q233qqysjLNmzdPhx12mB5//HHV1dWprq5O69at0yc+8Qn9/Oc/HxpPXgb8jbycnrzc3t6uL37xi1q+fHnMvd8HXXrppXrwwQeHcu/ixYt1+eWXD4074ogjtH37dvX29qq9vV21tbU6/PDDh8aTlwF/Iy+n7/1lyVl14OSTT9a0adNi9ikqKtLKlSv1L//yL+rt7dXbb7+tBx98cGjbhIaGBn3wwQfq6+vTAw88oPr6en3hC18YGk9eBvyFPOyN9y1+9KMf6emnn9add97p+h7zSOO9Ph78PHH014PefffdiP4IHgpJ4Am//vWvtWbNGs2YMUPl5eUqLy/XzJkztXr16qhlr9x85Stf0fz583XGGWfoggsu0Jlnnqlzzz034XlUVVVpyZIlOuWUU3TWWWfpyCOPHLP/SSedpNbWVp166qljvqCtqqrSCy+84Hps+vTp+uEPf6jbbrtNxx9/vB599FH98Ic/VG5urtrb2/Wd73xHxx57rFatWqWjjjpKZ511Vsx2SbrmmmvGXKrqH/7hH/SJT3xCDQ0NQ183NTXFHBtricL7779fp556qo4++mjdcMMNuvbaa3XssccOHf/9738fczlZAN5HXk5PXm5tbdW6det09NFH64wzzlA4HNatt946dHz02M2bN+vZZ5/VMccco1/84he6/fbblZubK4m8DAQdeTk9ebm7u1tXX321jjvuOC1fvlxvv/22/vVf/3XoCp6RYzs6OnTNNdfo2GOP1bJly/TOO+/oX/7lX5STk6Pc3FzNmjVr6N+UKVOUl5cXsVQ3eRnwN/JyevLyo48+qtdee00///nPtWTJkqF/g0aOPeiggyJyb15enqZMmTJ0leRNN92kt956SyeeeKJOPfVU9ff361vf+tbQucjLgL+Rl9P3/rJt2/r1r3/t+p7x6LHXXnut9u/fr+OPP14XX3yx1q1bN3RBzCuvvKIzzzxTxx57rH7605/qjjvuUFlZ2dBY8jLgL+Rhb7xvsXXrVv3lL3/RKaecMvTaefDn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",
"text/plain": [
"<Figure size 2200x800 with 12 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axs = plt.subplots(\n",
" nrows=2,\n",
" ncols=6,\n",
" sharey=True,\n",
" sharex=True,\n",
" figsize=(22, 8)\n",
")\n",
"\n",
"sample_size = 6\n",
"sample_indices = random.sample(range(0,len(test_normal_dataset)), sample_size)\n",
"\n",
"sampled_test_normal_dataset = [test_normal_dataset[i] for i in sample_indices]\n",
"sampled_test_anomaly_dataset = [test_anomaly_dataset[i] for i in sample_indices]\n",
"\n",
"for i, data in enumerate(sampled_test_normal_dataset):\n",
" plot_prediction(data, model, title='Normal', ax=axs[0, i])\n",
"\n",
"for i, data in enumerate(sampled_test_anomaly_dataset):\n",
" plot_prediction(data, model, title='Anomaly', ax=axs[1, i])\n",
"\n",
"fig.tight_layout();"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Assess quality of prediction of flagged intervals"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [],
"source": [
"# we want to identify the count of anomalies in each interval in the \"test_anomaly_dataset\"\n",
"# range: 45000:60000\n",
"start_point = 0\n",
"end_point = 60000\n",
"fault_segments = [ fault_data[start_point+seq_len * i:start_point + seq_len * i + seq_len] for i in range(len(test_anomaly_dataset)) ]\n",
"# len(test_anomaly_dataset)\n",
"anomaly_count_list = [ fault_segments[i].count(1) for i in range(len(fault_segments))]\n",
"anomaly_flag_actual = [ count > 0 for count in anomaly_count_list ]"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"69"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# there are 50 - 100 minute segments where there is an anomaly\n",
"sum(np.array(anomaly_count_list) > 0)"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [],
"source": [
"_, losses = predict(model, test_anomaly_dataset)"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [],
"source": [
"anomaly_flag_prediction = [ l > THRESHOLD for l in losses ]"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [],
"source": [
"result_mat = confusion_matrix(anomaly_flag_actual, anomaly_flag_prediction)"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[642 289]\n",
" [ 25 44]]\n"
]
}
],
"source": [
"print(result_mat)"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"642 289 25 44\n"
]
}
],
"source": [
"tn, fp, fn, tp = result_mat.ravel()\n",
"\n",
"print(tn, fp, fn, tp)\n",
"\n",
"# actual negative actual positive \n",
"# predicted negative: tn fp\n",
"# predicted positive: fn tp"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.6895810955961332\n",
"0.6376811594202898\n",
"0.686\n"
]
}
],
"source": [
"# accuracy of negatives\n",
"specificity = tn / (tn + fp)\n",
"print(specificity)\n",
"\n",
"# accuracy of positives\n",
"sensitivity = tp / (tp + fn)\n",
"print(sensitivity)\n",
"\n",
"\n",
"overall_accuracy = (tn + tp) / (tn + fp + fn + tp)\n",
"print(overall_accuracy)"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"only 13.213213213213212 of flagged intervals are actual\n"
]
}
],
"source": [
"print(f\"only {tp / (fp + tp) * 100} of flagged intervals are actual\")"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.6376811594202898"
]
},
"execution_count": 59,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tp / (fn + tp)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## plot regions of predicted anomalies"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### juxtapose over anomalous region"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [],
"source": [
"_, losses = predict(model, test_anomaly_dataset)"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [],
"source": [
"anomaly_flag_prediction = [ l > THRESHOLD for l in losses ]"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [],
"source": [
"x_segments = []\n",
"count = 0\n",
"for i in anomaly_flag_prediction:\n",
" count = count + 1\n",
" x_segments.append([count*60, count*60 + 60])\n",
"y_segments = [ [0,0] for i in x_segments]"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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Z2enVq5cqa9//eu6+uqr9d3vflddXV2SyCqRf/qnf1JpaakWL16sm266ScFgUBJ5JfLd7363388hOcW3cOFC/cM//IMWL16sxYsX67333pNEXvEcOXJE3/ve9xQIBHTllVfqkUcekWRJVgZDdsMNN5iXXnrJGGPMli1bzNq1a0d5Rsn3xhtvmE8++cSce+65JhqNGmOM+fTTT81Xv/pV89FHH5menh7zrW99y9TU1BhjjPntb39rrrnmGnP06FFz4MABc9lll5k//elPxhhjHnnkEXPfffcZY4x5++23zeWXX266u7uNMfZn29nZaX73u98ZY4zp7u42t912m3niiSfI6iQOHToU+/rpp582t99+O3kl8Nprr5mKiorYzyE5JXbZZZeZ5ubmfsvIK77KykqzefPm2Pf79++3JiuOxAxRe3u7mpqaVFJSIklavny56urqRnlWyXfJJZcoOzu737Jf/epXuuiiizRz5kw5jqPly5frpZdekiS99NJLWrp0qdLT03XmmWcqEAho586dsXVlZWWSpPPPP1+TJk3S3r17UyLbyZMn6+KLL5YkpaWlae7cuWppaSGrk/jc5z4X+zoUCkli34onHA7r4YcfVkVFRWwZOQ0NeQ10+PBhvfjii/r2t78dW3bWWWdZkxUlZohaW1uVm5srx3EkSVlZWfL5fOrs7BzlmZ16ra2tmjFjRuz73Nxctba2DrouGAz2WzdjxgwFg8GUy/bo0aPatm2bFixYQFaDuOOOO/T3f//32rFjhyoqKsgrjocfflgrVqzQlClTYsvI6eRWrVql0tJSVVdXKxqNklccH330kaZOnaqHHnpIS5cu1Te/+U01NDRYkxUlZoiMMXGX9z0xp5NEWSRad7KMHMdJqWx7enpUUVGhL33pS7r00kvJahDV1dV69dVXtWTJEj366KPkdYK33npLH374oa6++up+y8kpsWeeeUa1tbV65pln1NjYqMcff5y84jh27Jiampp0ySWXaOvWrVqxYoX++Z//2ZqsKDFD1Nc4+56QUCikaDSqyZMnj+7ERkFubq5aWlpi3weDQfn9/ti6vg9o9q3LycmJu66lpUV+vz+lsr333ns1fvx43XXXXZLIyg3HcVRWVqba2lryOsHu3bv1hz/8QQsXLtTChQslSSUlJZo2bRo5JdCXQ1ZWlpYvX649e/awX8WRm5urjIwMFRcXS5Iuu+wyhUIha7KixAxRdna28vLyVF9fL0mqqamJPfmnm0svvVRvvfWWPv74Yxlj9JOf/ESBQECSFAgEtG3bNnV1denQoUPauXNnv3XPPfecJOndd9/VwYMHNXfu3JTJ9sEHH1RbW5s2btwY+18GWcV3+PDh2GFoqff99IKCAvI6QXl5uX79619r165d2rVrlySprq5OV1xxBTnFEQ6HY5+vOnbsmOrq6lRYWMh+Fce0adN0/vnnx84ievvttzVx4kQVFRXZkdWIPxp8Gnr//ffNNddcY0pKSsw3vvEN09raOtpTSro1a9aYoqIic+6555qioiJz2223GWOMefHFF01JSYm5/PLLzV133RU7c8kYYx5++GFz+eWXm8svv9z86Ec/ii3/9NNPzS233GKKi4vNVVddZd58883YOtuzff/99825555rvv71r5vS0lJTWlpqNm7caIwhq3g++eQTs2zZMrNo0SKzaNEic/PNN8fOKCGvxI4/S5CcBvrwww9NaWmpWbRokbnyyivNunXrTCgUMsaQVzxNTU3muuuuM4sWLTLXXnut2bNnjzHGjqwcY07yxhcAAMAYxdtJAADASpQYAABgJUoMAACwEiUGAABYiRIDAACsRIkBAABWosQAAAArUWIAAICVKDEAAMBKlBgAAGCl/w8oAaRcTRNB7QAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# fault region\n",
"# fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(10,3 * 2))\n",
"\n",
"fig, ax = plt.subplots()\n",
"fault_incidents = fault_data[0:60000]\n",
"ax.scatter(range(len(fault_incidents)), fault_incidents)\n",
"true_color =\"green\"\n",
"false_color = \"red\"\n",
"\n",
"labels = anomaly_flag_prediction\n",
"sequences = x_segments\n",
"\n",
"y_level = 0.5\n",
"for i, (sequence, label) in enumerate(zip(sequences, labels)):\n",
" if label:\n",
" ax.plot((sequence[0],sequence[1]), (y_level,y_level), color=\"red\")\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### juxtapose over whole dataset"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {},
"outputs": [],
"source": [
"_, losses = predict(model, train_dataset)"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {},
"outputs": [],
"source": [
"anomaly_flag_prediction = [ l > THRESHOLD for l in losses ]\n",
"x_segments = []\n",
"count = 0\n",
"for i in anomaly_flag_prediction:\n",
" count = count + 1\n",
" x_segments.append([count*60, count*60 + 60])\n",
"y_segments = [ [0,0] for i in x_segments]"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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AQBAAnA0xBQVFamgoECBQEA/+clPVFZWpu3bt/dpV1FREf19x44dOnnyZK/1r7zyiiZOdHRoAAAgwTiWFJqbmxUMBpWbmytJysvLU3Z2dr8h5hzbtvXaa69px44dTg2j3320tbU52md7e3uvn4ko0WukPrNRn9moz3xu12jbtizLGrKdYyGmsbFR6enp0Z2mpKTI4/GotbV1wI+D3nzzTU2aNEnXXHNNr+X5+fnq7u7W8uXLtW7dulGNKxKJqLa2dlR9DKS+vt6VfuNJotdIfWajPrNRn/ncrNHr9Q7ZZlgh5s4771RTU1Of5XPmzNGGDRv63WawJPXqq6/q1ltv7bXs0KFD8vv9amlp0X333afU1FStXr16OMPsxePxKDMzc8Tb96e9vV319fWaPXu2fD6fo33Hi0SvkfrMRn1moz7zuV1jXV1dTO2GFWJefPHFAdc1NzersbExOgUUDocViUQ0ZcqUftu3tbWpurpa+/bt67Xc7/dLkqZPn66VK1fqyJEjowoxlmUpOTl5xNsPxufzudZ3vEj0GqnPbNRnNuozn1s1xvJRkuTgV6xTU1OVkZGh6upqSVJ5eblycnIGbF9VVaWrr746Glok6dSpUzp79qwk6cyZMzp48KCysrKcGiIAAEggjt4npri4WDt37lQgENCBAwe0adMmSVJTU1Ovr1VL0p49e/rMsBw7dky33367Vq5cqTVr1igrK0v5+flODhEAACQIR7/HPHfuXO3evbvP8rS0tF5fq5akn/70p33aLVq0SHv37nVySAAAIEFxx14AAGAkQgwAADASIQYAABiJEAMAAIxEiAEAAEYixAAAACMRYgAAgJEIMQAAwEiEGAAAYCRCDAAAMBIhBgAAGIkQAwAAjESIAQAARiLEAAAAIxFiAACAkQgxAADASIQYAABgJEIMAAAwEiEGAAAYiRADAACMRIgBAABGIsQAAAAjEWIAAICRCDEAAMBIhBgAAGAkQgwAADASIQYAABiJEAMAAIxEiAEAAEYixAAAACMRYgAAgJEmjvcALianIrZWvCf95az0N5Ok/1goXeaxxntYGIW//7WtyvEeRL8mSbpGekuS7PEdiivMrO9Bn1T69fh6zn/n17b2OdznmRukZz+RgmekOZdIP7hc8ibFV91IDISYMTL3D7aCZ/769ydnpalvSHMusXX0Gzy5TZT063h+80z0SVYz63u6XXr617a6b4yP57xb5/Alh3r/vTkoPXCFrScz46NuJA5HXwkeeeQRZWdnKysrS52dnQO2O3HihO6++24FAgHddtttCgaD0XWHDx/WihUrlJubq/Xr1+v06dNODnFcXBhgzhc807MeZonvAIN4Fw/nz1iOoUtS6XFpS934143E4miIWb16tfbs2TNku7KyMi1btkyVlZUqKChQUVGRJKm7u1sPP/ywSkpKVFVVpbS0NO3atcvJIY65U5GBA8w5wTM97WCGv4+DNyCY76E3x+88+s44ncM7jksd3Tx/4BxHP05asmRJTO2qqqr06KOPSpJyc3NVXFyslpYWffrpp5o8ebIWLlwoScrPz9fGjRu1YcOGEY/Jtm21tbWNePv+tLe39/o5mL+v8UqaMHS7I12qXtAx2qE5Zjg1mmg09VUqtmMKDObp9i493tb/c97t59++cTqHuyT9+OMO3TOF1xfTuV2jbduyrKE/fhzza2JaW1vl9XqVkpIiSbIsS36/X6FQSKFQSLNmzYq2nTlzpkKh0Kj2F4lEVFtbO6o+BlJfXz9km2On/6diebE4drrTtXGORiw1mmxk9V3j8ChwcbKGfM679/y7xqV+h/an0El96+Qnknh9SQRu1uj1eodsM6wQc+edd6qpqanP8jlz5uj555+PqQ/b7n8q0bKsftfFksQG4/F4lJmZOao+LtTe3q76+nrNnj1bPp9v0LZfrZmoEzFc1vPVSydq/vz5Do1w9IZTo4lGVd9bTIfDCfaAz3nXn3/jeA5flz5Fs6dM5PXFcG7XWFdXF1O7YYWYF198cUSDOd+0adPU0dGhcDislJQU2batpqYm+f1+dXV1qaGhIdq2oaFBfr9/VPuzLEvJycmjHXa/fD7fkH2/vsjW1DeG7uv1RROU7HFnnKMRS40mG0l9AcXr16phkgd9E4Y899x6/i2X81+rjsUESRszvOo80/Omx+uL+dyqMdYJjHH5nmJOTo7Ky8slSdXV1crIyND06dO1YMECnTx5UjU1NZKkl19+WYFAYDyG6JjLPJbmXDJ4mzmXcL8Yk7weJ1+PhdnG834xe8fpHH7gCu4XA2c5GmI2b96spUuXSpJuuukmPfjgg5KkpqYmrVq1Ktpu06ZNOnDggAKBgHbu3KmtW7f2DCYpSdu2bVNhYaFyc3MVCoV0zz33ODnEcXH0GwMHmTmXiPvEGChe7vMBM8XD+TOWY5gg6aErxH1i4DhHL+x96qmn+l2elpamioqKXn//7Gc/67ft4sWLtW/feEx0uuvoNyzu2Jtgum+04viOvd3n/W7mjeEGZ2Z98XbH3u4bLe7YC6Nxx94xdJnH0m+vG+9RwEnx+tFSW9tZ1dbWav78+Qn5mXyi1zeW3PpoaeNXXOkW6MWc/4UBAAA4DyEGAAAYiRADAACMRIgBAABGIsQAAAAjEWIAAICRCDEAAMBIhBgAAGAkQgwAADCSZdv2+P2b7C575513ZNu2vF6vo/3atq1IJCKPxxPzv7RpmkSvkfrMRn1moz7zuV1jR0eHLMvStddeO2i7hP5nB9w6eSzLcjwYxZtEr5H6zEZ9ZqM+87ldo2VZMb2HJ/RMDAAASFxcEwMAAIxEiAEAAEYixAAAACMRYgAAgJEIMQAAwEiEGAAAYCRCDAAAMBIhBgAAGIkQAwAAjESIAQAARiLEAAAAIxFiAACAkQgxIxAMBnXbbbcpEAjo7rvv1okTJ8Z7SH20trZq3bp1uuWWW/Sd73xHP/zhD9XR0aFPPvlECxYs0KpVq7Rq1Sp997vf7bXdM888o5tvvlk5OTn6xS9+EV1++vRprV+/Xrm5uVqxYoX+9Kc/RdeN5+Nx00036dvf/na0no8++kiS9Ktf/UqBQEA5OTl69NFH1dXVZVyNTU1N0bpWrVqlpUuXavXq1UYfw0ceeUTZ2dnKyspSZ2dndPlYHq/B9uVGfe+8847y8vK0fPlyrVixQv/+7/8ebb97924tWbIkeiy3bt1qXH1jfT6OdX0HDhzo9Ty8/vrrVVJSIsm84zfQ+8JQ+43rY2hj2NauXWvv37/ftm3b3rVrl71ly5ZxHlFfra2t9h//+Efbtm27q6vLfuCBB+znn3/ePn78uJ2dnd3vNn/4wx/sW2+91T579qx98uRJ+8Ybb7T/8pe/2LZt288884z9+OOP27Zt2++99579rW99y+7q6rJte3wfjxtvvNGur6/vteyLL76wv/nNb9rHjx+3u7u77e9///t2eXm5bdtm1njOgw8+aP/bv/2b0cfwrbfesj/77DP7yiuvtCORiG3bY3u8BtuXW/V99NFH0TF/8cUXdm5urv3uu+/atm3br7zyir1p06Z++zKlvrE8H8ejvvN1dXXZN9xwg/3nP//Ztm3zjt9A7wsmPweZiRmm5uZmBYNB5ebmSpLy8vJUVVU1zqPqa8qUKVq8eLEkKSkpSQsWLFBDQ8Og2+zfv19r1qyR1+vVZZddpkAgoMrKyui6/Px8SdJVV12lyZMnq6amJi4fj9/85je69tprdfnll8uyLOXl5Wn//v2SzK0xHA7r4MGDWrVq1aDt4r2+JUuWKDU1tdeysTxeg+3LrfquvPJKfeUrX5EkpaSkKCMjY8jnokn1DVWD6cfvfG+++aZ8Pp+uvvrqIfuKx/oGel8w+TlIiBmmxsZGpaeny7IsST0vSh6PR62treM8soGdPXtWe/bs0bJlyyT1TCmuWbNGt99+u1599dVou8bGRs2cOTP6d3p6uhobGyVJoVCo17qZM2cqFArFxeOxYcMGrVy5UmVlZYpEIoPWYWqN+/fv17XXXqu0tDRJiXUMx/J4DdbfWPj444/13nvvacmSJdFlv//977Vy5Ur9wz/8g959993ocpPqG6vzcbyP36uvvqpbb7211zJTj9/57wsmPwcnjnjLi5Rt2/0uP3ew4k13d7cKCwv19a9/XUuXLlVHR4cOHTqkadOm6ZNPPtH3vvc9zZo1S4sXL+63tsHqsixr3B+PX/ziF/L7/QqHw9q8ebOee+45XXLJJQO2N7FGqefF84477pAkzZgxI6GO4UD7H2jdaOoZbF9ua21t1fr161VUVKRp06ZJkm688UYtX75ckyZN0u9+9zv94Ac/0P79+/WlL32p3z7isb6xPB/H8/idPn1a1dXVevDBB6PLTD1+F74vHD16dMC28X4MmYkZpnOp8dyBCIfDikQimjJlyvgObABbt27VxIkT9cgjj0iSvF5v9AX08ssv180336wjR45I6qktFApFtw2FQtH/879wXUNDg/x+/7g/Hn6/X1JP0s/Ly9ORI0eUnp7ea7o+FApF25lY4yeffKKPPvpIN998s6TEO4ZjebwG25ebwuGw7r33Xt11110KBALR5VOnTtWkSZMkSd/85jeVlpamY8eOGVXfWJ6P43X8JKmyslLXXHNNr/2ZevwufF8w+TlIiBmm1NRUZWRkqLq6WpJUXl6unJyccR5V/5588kk1NTVp27Zt0eTc0tISver+1KlTeuONN5SVlSVJCgQC2rNnjzo6OvT555+rsrIy+oIbCAT00ksvSZI++OADnTp1SgsWLBjXx6OtrU3hcFiS1NnZqaqqKmVlZWnp0qV655139Omnn8q2bf3yl7/sVYdJNUo9szC33HJLdIYpkY6hpDE9XoPtyy1nzpzR97//feXm5kZn085pamqK/v7hhx+qoaEhev2MKfWN5fk4HvWd099HSSYev/7eF0x+Dlr2eM7PGero0aMqLCzU6dOnNWPGDJWWlkaTabw4evSoVqxYoa9+9avyer2SpL/927/VokWL9M///M9KSkpSV1eXVq9erXvvvTe63Y4dO7Rv3z5J0ve+9z2tXbtWUk+S3rJli+rq6uT1elVcXKzrr78+uq/xeDyOHz+u9evXq7u7W11dXbr66qv1T//0T7r00ku1f/9+7dixQ11dXfra174W/T8P02qUpJycHG3btk3XXXedJKmqqsrYY7h582a99dZbampqUlpamq6//no9/fTTY3q8BtuXG/Vdd911KikpUWZmZrTdP/7jP+rb3/62ysrKdPDgQU2YMEETJ07U/fffrxtuuMGo+m655ZYxPR/Hur6nn35aDQ0NWrlypd54441eH1ebdvwGel8oLCw09jlIiAEAAEbi4yQAAGAkQgwAADASIQYAABiJEAMAAIxEiAEAAEYixAAAACMRYgAAgJEIMQAAwEiEGAAAYCRCDAAAMNL/Bw0s1POAW+UsAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# fault region\n",
"# fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(10,3 * 2))\n",
"\n",
"fig, ax = plt.subplots()\n",
"fault_incidents = fault_data\n",
"ax.scatter(range(len(fault_incidents)), fault_incidents)\n",
"true_color =\"green\"\n",
"false_color = \"red\"\n",
"\n",
"labels = anomaly_flag_prediction\n",
"sequences = x_segments\n",
"\n",
"y_level = 0.5\n",
"for i, (sequence, label) in enumerate(zip(sequences, labels)):\n",
" if label:\n",
" ax.plot((sequence[0],sequence[1]), (y_level,y_level), color=\"red\")\n",
"\n"
]
}
],
"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.11.5"
},
"orig_nbformat": 4
},
"nbformat": 4,
"nbformat_minor": 2
}