Files
SeismStart/Autoencoder.ipynb
2024-10-06 00:46:23 +01:00

446 lines
138 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 52,
"id": "b6d8016c-6a09-4717-891b-6f091c5a944e",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import tensorflow as tf\n",
"from tensorflow.keras import layers, models\n",
"\n",
"import scipy\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 130,
"id": "7eabca9a-7e3d-49c8-b0b4-4d360dfc51a9",
"metadata": {},
"outputs": [],
"source": [
"# Test signal generator\n",
"\n",
"def signal(A, t):\n",
" return A * np.sin(30*t) * np.exp(-t) + np.random.randn(t.shape[0])/2"
]
},
{
"cell_type": "code",
"execution_count": 149,
"id": "ea8f0359-e795-4ab3-aa8a-b8fc2a8d153b",
"metadata": {},
"outputs": [],
"source": [
"A1 = 3\n",
"t1 = np.linspace(0, 5, 40000)\n",
"s1 = signal(A1, t1)"
]
},
{
"cell_type": "code",
"execution_count": 159,
"id": "eee901c5-9be0-4439-8b4a-5b35964f613f",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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E4yIyAF169ZFs2bNsHTpUtmhEJEg7CNCRERE0jARISIiImmYiBAREZE07CNCRERE0rBGhIiIiKRhIkJERETSuHoekZKSEhw+fBhpaWlhi1wRERGRO3m9Xpw+fRq1atWKuqq1qxORw4cPh63ISURERLEhNzcXmZmZEfdxdSKSlpYGQPlH0tPTJUdDREREehQWFiIrK6v0Oh6JqxMRX3NMeno6ExEiIqIYo6dbBTurEhERkTRMRIiIiEgaJiJEREQkDRMRIiIikoaJCBEREUnDRISIiIikYSJCRERE0jARISIiImmYiBAREZE0TESIiIhIGiYiREREJA0TESIiIpKGiQgRERFJw0QkgMcD7NkjOwoiIqLEwUQkxKFDsiMgIiJKHExEiIiISBomIkRERCQNExEiIiKSholICI9HdgRERESJg4kIERERScNEhIiIiKRhIkJERETSMBEhIiIiaZiIEBERkTRMRIiIiEgaxxKRyZMnw+PxYNiwYU4dkoiIiFzOkURk69atmDVrFpo3b+7E4SzhPCJERETOsT0RKSoqwr333os33ngDl112WcR9i4uLUVhYGPRFRERE8cv2RGTIkCHo1asXunbtGnXfnJwcZGRklH5lZWXZHR4RERFJZGsiMnfuXGzfvh05OTm69h81ahQKCgpKv3Jzc+0ML8iFC44dioiIiP6/MnYVnJubiyeeeAKrVq1CamqqrsekpKQgJSXFrpAimjJF+c4+IkRERM7xeL1erx0FL168GLfffjuSk5NLt128eBEejwdJSUkoLi4O+puawsJCZGRkoKCgAOnp6XaEWcqXgKxZA3TsaOuhiIiI4pqR67dtNSJdunTBrl27grYNHDgQTZo0wTPPPBM1CZHFnrSMiIiI1NiWiKSlpaFZs2ZB2ypUqIDKlSuHbSciIqLExJlViYiISBrbakTUrF271snDmcLOqkRERM5hjUiITp1kR0BERJQ4mIgQERGRNExEiIiISBomIkRERCQNExEiIiKShokIgJkzZUdARESUmJiIAHjsMdkREBERJSYmIkRERCQNExEiIiKShomIYPn5wA8/yI6CiIgoNjAREeyuu4CGDWVHQUREFBuYiAhWVCQ7AiIiotjBRISIiIikYSKi4tw52REQERElBiYiKjp0kB0BERFRYmAiomLrVvOP9XrFxUFERBTvEj4RWbfOnnJ37mRSQkREFE3CJyKffSa2PI9H+Z6dDXz7rdiyiYiI4k3CJyJ2+v132REQERG5GxMRIiIikoaJiI18zTRERESkjomIYHZ1UH3jDWDDBnvKJiIikoWJiI1E1og89BAwerS48oiIiNyAiYiG48fNPY7NMURERPoxEdEgYn4RJiVERESRMREhIiIiaZiIaBDR6fQ//7H2+KIiYNEi/++cqZWIiOJNwiciZ8+KLS8wWVi2zFpZN98M3HGHtTKIiIjcLOETkWPH7C3f4wHOnDH32JMnxcZCRETkNgmfiGgR0Qzi66xaVGS9LCIionjERESwr78O32Y2qQl9nNXk6K23gPPnrZVBREQkUsInIp98IjsC5zz4ILBzp+woiIiI/BI+EdEicoQKR7sQERGpYyJio3PnZEdARETkbkxENIioxVi50lpZovuIiCqDiIhIFCYiAlWsKDsCIiKi2MJERCCz84Vo2b1b+c41a4iIKF4xEdFw6pS4ssw0h+zbJ+74REREbsVERMP338s9/p499pTLPiJEROQmTEQcIOrizySCiIjiDRMRDSKbZm6+WVxZRERE8YSJiIa33xZXFmczJSIiUsdExKXsGinD5h0iInITJiIxhEkEERHFGyYiMWTDBtkREBERicVExKV697an3J07gW++sadsIiIio8rIDoCc9cgjQPny4meBJSIiMoM1IkRERCQNExEiIiKSholIAuLoGyIicgsmIgniwgXZERAREYVjIuKQs2flHv/iRf/PZ88Cjz8uLxYiIiIfJiIO2b1b7vGXLQv+fcYMOXEQEREFYiKSIJ54QlxZv/0GPPecuPKIiChxMREhw3buBMaNkx0FERHFAyYiCSI3V1xZHHVDRESiMBEhw3yJiOwOuEREFPuYiCSAkhKx5S1dqnz/4APgyBGxZRMRUWJJ6LVmTp927lgymzNEj5CZPFn5/tBDQLVqwNGjYssnIqLEkdA1Itu3iyvr/HlxZYl24IB9ZR87Zr0Mr5f9ToiIElVCJyIinTwZ+e8ej/6yRHYsjQWPPgo0biw7CiIikiGhExEn78KNHOv33+2Lw402bwb27ZMdBRERyZDQicjChbIjiA9Llph/7Ndfs1mGiCiRJXQi8vHHsiNwxrRp4srati182/r15su79lrgm2/MP56IiGJbQiciIu/EE+WuvrBQfJmJ8twREVE4JiJEREQk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RBSfEj4RsVvHjsG/L1yo/7Effywujtq1/T+XLSuuXCIiim3RBkvYjYmIBXoWsLPS9HPXXeYfK0LnzpH/rmfq9T17gG++ERMPERGJJ3KgghlMRFTobaL4/HN74xDp738HmjdXftY7L8qaNZH/np2t/bfA55ATrxERkRbbE5FXXnkFdevWRWpqKtq2bYstW7bYfciYVFRkb/lXXAHcfrvYMvUmbE53CCYiothhayIyb948DB8+HOPGjcP27dvRokULdO/eHceOHbPzsDFpyRLZEehXrVr0fa66yv/zxo32xUJERLHN1kTkpZdewuDBgzFw4EA0bdoUr732GsqXL4+3337bzsNapvdOX89+evZZuxa4/359x4xGa8I0jwe49dbIE4I9/bS+Y9SqFX0fN4/AISIi97AtETl//jy2bduGrl27+g+WlISuXbtio8YtcnFxMQoLC4O+EsG2bfr2GzYs+j6ffab9t2uuAebOjV7G8uXuWF+HiIjin22JyPHjx3Hx4kVUr149aHv16tWRl5en+picnBxkZGSUfmVlZdkVXtyZPRto0kRMWT17Rv57xYrK9zIJPx0eERFZ5apRM6NGjUJBQUHpV25urpQ49DYrOF1roLYCr8+aNfoXmrMad2am8v3DD4ERI6yVRUREic22RKRKlSpITk7G0ZCla48ePYoaNWqoPiYlJQXp6elBX26mJ2EROXnY6NHiyhKhRg3g6qtlRxHO6fWDiIhimew+fbYlImXLlkXLli2xevXq0m0lJSVYvXo12rVrZ9dhXSfSXBs+et8EviaRSH76SX27yNqbKVPcPeV6pJojIiJyF1tb+YcPH47+/fujVatWaNOmDaZNm4YzZ85g4MCBdh7WshYtxJXldPON1shokXFkZvqbZ0RYsEDsLLJJrmpwJCKiSGxNRO655x7k5+dj7NixyMvLQ3Z2NpYvXx7WgdVt9MyTQYpbb7VehugWOI74ISKKHbaPexg6dCiGDh1q92ESlui2vR9+MLa/G7vxMBEhIoodrMS24PffxZRjJZm4cMH4YyJdqN97z3wsbsFEhIgodjARsUDP6rtq9FwoCwr0laV3tny9F2cZvadbtAB69AC2b3f+2EREJBcTEZcy2+RhdyLxxBPiy6xWDVi2TFx5VaqIK4uIKN7JrkVmImJBfr7sCJzXvn34tjFjxJRds6aYcmR/qIiI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aoKIiMg8JiIu0bCh7Aj8GjWSHQERESUKJiIuEbhYnBETJ4qNAwBq1BBfJhERkRomIjGOU4wTEVEsYyLiEldeKTsCMqNCBWDsWNlREBHFLiYiFt1wg5hy3LzyLWlLSgImTJAdBRFR7OLlz6JeveQe345RO2zuISIipzARiTMNGwJHjsiOgoiISB8mIjEutPbC4+GoFyIiih1MRHSYO1d2BERERPGJiYgOtWvbfwzWYhARUSJiIqKDEyvmjh4tphxOOU9ERLGkjOwAYsE119h/jEsusf8Yetx5J9Cpk+woiIgoUTAR0UGrlqFbN2fjiOSBB4D33rM+9HbBAjHxEBER6cGmGQtuvVV2BH7vvis7AiIiIuOYiFjA/hhERETWMBGxoEED2REQERHFNiYiFrRuLTsCID09+HfW0hARUSxhIhLjOnSQHQEREZF5TEQkaNRIXFmsASEioljGRESCihWV723aKN/vvNN8WVwpl4iIYhkTEQl69FC++5IIzt1BRESJiomIBBMnAmfPii+3ShWO5CEiotjCmVUtMDste3Ky8vXHPwLly4uL58cfgTJ8RYmIKIbwsmWBr6+HWePHCwmjVFqa2PKIiIjsxqYZIiIikoaJCBEREUnDRESnPn1kR0BERBR/mIgQERGRNExEYlzVqrIjICIiMo+JiEm9esmOQJGZydlViYgodjER0Sn0Ys81XoiIiKxjImJSSYnsCIiIiGIfExGT2BxCRERkHRMRk0ROzU5ERJSomIiYxMXliIiIrGMiQkRERNIwESEiIiJpmIgQERGRNExEiIiISBomIjpxuC4REZF4TERMqldPdgRERESxj4mICVWrAg8/LDsKIiKi2MdExIRy5bjWDBERkQhMRExgEkJERCQGExETmIgQERGJwUSEiIiIpGEiQkRERNIwETGBTTNERERiMBHRqXJl/89MRIiIiMRgIqLTSy8BubnKz5xllYiISIwysgOIFeXLK18AUL263FiIiIjiBWtETJgyRXYERERE8YGJiAnlysmOgIiIKD4wETEhJUV2BERERPGBiQgRERFJY3siUlxcjOzsbHg8HuzYscPuwxEREVEMsT0Refrpp1GrVi27D0NEREQxyNZEZNmyZVi5ciWmTp1q52EcV7Wq7AiIiIjig23ziBw9ehSDBw/G4sWLUd43AUcUxcXFKC4uLv29sLDQrvBM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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"def plot(x, y, title):\n",
" plt.figure()\n",
" plt.plot(x, y, linewidth=0.7, c='blue')\n",
" plt.title(title)\n",
" plt.savefig(title + '.png')\n",
" plt.show()\n",
"\n",
"plot(t1, s1, 'Example')"
]
},
{
"cell_type": "code",
"execution_count": 152,
"id": "6681ea57-27e9-480a-ad1f-ece1749ce3dc",
"metadata": {},
"outputs": [],
"source": [
"def data_generator(n_samples):\n",
" data = np.empty([n_samples, 40000])\n",
" for i in range(n_samples):\n",
" data[i] = signal(A1, t1)\n",
"\n",
" return data\n",
"\n",
"data = data_generator(200)\n",
"\n",
"# normalise\n",
"data = data / np.max(data)"
]
},
{
"cell_type": "code",
"execution_count": 153,
"id": "c0e83f5b-9b4e-4bfd-8de4-5b45231a709f",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAGzCAYAAADT4Tb9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABeuElEQVR4nO3deXgT5doG8Dst0LK1gEBLpey7LMUipQqKUimICh4XQJRFBA+CW5HNg6BylEXk46goyCK4AirgAbWAReAoZRGsAgKCgqwtewtFCrT5/ohJs0ySmcw7mcnk/l1XrjaTmXeepGnmybtarFarFUREREQmEaF3AEREREQiMbkhIiIiU2FyQ0RERKbC5IaIiIhMhckNERERmQqTGyIiIjIVJjdERERkKkxuiIiIyFSY3BAREZGpMLkhIpJp/fr1sFgsWL9+vd6hEJEPTG6ISJiFCxfCYrF4vW3evFnvEIkoDJTROwAiMp9XXnkF9evX99jeqFEjHaIhonDD5IaIhOvevTvatWundxhEFKbYLEVEQTVx4kREREQgKyvLZfvQoUNRrlw5/PzzzwCAK1euYMKECUhOTkZsbCwqVqyITp064bvvvnM57tChQ7BYLJg+fTpmzZqFBg0aoEKFCujatSuOHDkCq9WKSZMmoXbt2ihfvjx69uyJs2fPupRRr1493H333VizZg2SkpIQHR2NFi1aYNmyZbKe05YtW9CtWzfExsaiQoUKuO222/DDDz+oeJWISA0mN0QkXH5+Pk6fPu1yO3PmDABg/PjxSEpKwuDBg3HhwgUAwOrVqzF37lxMmDABbdq0AQAUFBRg3rx56Ny5M6ZOnYqXXnoJp06dQnp6OnJycjzO+fHHH+Odd97BU089hZEjR2LDhg146KGHMH78eGRmZmLMmDEYOnQoVq5cieeff97j+P3796N3797o3r07Jk+ejDJlyuDBBx/E2rVrfT7XdevW4dZbb0VBQQEmTpyI1157DefPn8cdd9yBrVu3qnwliSggViIiQd5//30rAMlbVFSUY7+dO3day5UrZ3388cet586ds15//fXWdu3aWa9everY59q1a9aioiKX8s+dO2eNi4uzPvbYY45tBw8etAKw1qhRw3r+/HnH9nHjxlkBWNu0aeNSbt++fa3lypWzXr582bGtbt26VgDWL774wrEtPz/fWqtWLWvbtm0d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Nm/ejEOHDiErKws9e/ZEo0aNkJ6ervXTkU1qTpt164IfBxERUbjRvM9N7969cerUKUyYMAG5ublISkpCZmamo5Px4cOHERHhmmPt27cP33//PdasWeNRXmRkJH755RcsWrQI58+fR0JCArp27YpJkyYhKipK66cjW06O57a//gp6GLJYLHpHQEREJI7Fag2/xpKCggLExsYiPz9fs/43W7YAHTq4bvvkE+OtMWWxAD//DLRurXckREREvsm9fnNtqSASkUZaLICXEe9EREQEJjeakUpk1CQ3V64A9nkMmdwQERF5x+QmRMydywUuiYiI5GByE0QnTgR+7JUr4uIgIiIyMyY3GpGaxmfUqMDKunIF+OkndfEQERGFCyY3IeC994APPyy9/847+sVCRERkdExuQoD7hIDPPQeUlKgrc8cO9WUQEREZEZObENWqlbrjk5MBiTkSiYiIQh6TmxD166/qy7h6VX0ZRERERsPkhoiIiExF87WlyFieeAJIStI7CiIiIu0wuQkz770HtG2rdxRERETaYbMUcVVwIiIyFSY3REREZCpMbsKQe03NCy/oEwcREZEWmNyEANHNRvbVyS9etP1ctUps+URERHpichOG7OtUPfywvnEQERFpgckNERERmQqTGyIiIjIVJjch4PRpvSMgIiIKHUxuQsCJE3pHQEREFDqY3BAREZGpMLkhIiIiU2Fyo4H8fL0jCK6SEuDgQb2jICIismFyo4GcHLHlGX3tp88/Bxo00DsKIiIiGyY3IcDoyc2FC3pHQEREVIrJTQiwL5dARERE/jG5IdXY34aIiIyEyU0IMHrNzauv2n4aPU4iIgoPTG7CSHGx3hEQERFpj8mNBjp3FlueqA7FI0eKKYeIiMjImNyEgGvXpLcXFCgrZ98+9bE4KyoCtm8XW6bVyuUmiIhIHSY3QXb0qPJjPvxQentsrLJyzp5Vfm5f3nsPaNdObJmLFwMJCWLLJCKi8MLkJsj0nBNGdJ+bK1dc7x8+rL5M0QkYERGFHyY3QabniCKtzy0iuSEiIlKLyQ0ZSl6e3hEQEVGoY3ITRkJhHprCQr0jICKiUBeU5GbWrFmoV68eoqOjkZKSgq1bt3rdd+HChbBYLC636Ohol32sVismTJiAWrVqoXz58khLS8P+/fu1fhohT+vkJhSSJyIiMj/Nk5slS5YgIyMDEydO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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot(t1, data[10], 'Example')"
]
},
{
"cell_type": "code",
"execution_count": 155,
"id": "8d5233d0-cf1a-4a93-9f90-979160f1a7ee",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\">Model: \"functional_31\"</span>\n",
"</pre>\n"
],
"text/plain": [
"\u001b[1mModel: \"functional_31\"\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
"┃<span style=\"font-weight: bold\"> Layer (type) </span>┃<span style=\"font-weight: bold\"> Output Shape </span>┃<span style=\"font-weight: bold\"> Param # </span>┃\n",
"┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
"│ input_layer_33 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">InputLayer</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">40000</span>) │ <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ functional_29 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Functional</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">64</span>) │ <span style=\"color: #00af00; text-decoration-color: #00af00\">10,281,408</span> │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ functional_30 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Functional</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">40000</span>) │ <span style=\"color: #00af00; text-decoration-color: #00af00\">10,321,344</span> │\n",
"└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
"</pre>\n"
],
"text/plain": [
"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
"┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
"┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
"│ input_layer_33 (\u001b[38;5;33mInputLayer\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m40000\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ functional_29 (\u001b[38;5;33mFunctional\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m10,281,408\u001b[0m │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ functional_30 (\u001b[38;5;33mFunctional\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m40000\u001b[0m) │ \u001b[38;5;34m10,321,344\u001b[0m │\n",
"└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Total params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">20,602,752</span> (78.59 MB)\n",
"</pre>\n"
],
"text/plain": [
"\u001b[1m Total params: \u001b[0m\u001b[38;5;34m20,602,752\u001b[0m (78.59 MB)\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">20,602,752</span> (78.59 MB)\n",
"</pre>\n"
],
"text/plain": [
"\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m20,602,752\u001b[0m (78.59 MB)\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Non-trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> (0.00 B)\n",
"</pre>\n"
],
"text/plain": [
"\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Define the input shape\n",
"input_shape = (40000,)\n",
"\n",
"# Build the encoder\n",
"def build_encoder(input_shape):\n",
" inputs = layers.Input(shape=input_shape)\n",
" encoded = layers.Dense(256, activation='relu')(inputs) \n",
" encoded = layers.Dense(128, activation='relu')(encoded) \n",
" encoded = layers.Dense(64, activation='relu')(encoded) \n",
" return models.Model(inputs, encoded)\n",
"\n",
"# Build the decoder\n",
"def build_decoder():\n",
" encoded_inputs = layers.Input(shape=(64,))\n",
" decoded = layers.Dense(128, activation='relu')(encoded_inputs)\n",
" decoded = layers.Dense(256, activation='relu')(decoded)\n",
" decoded = layers.Dense(40000, activation='linear')(decoded) \n",
" return models.Model(encoded_inputs, decoded)\n",
"\n",
"# Build the autoencoder\n",
"def build_autoencoder(input_shape):\n",
" encoder = build_encoder(input_shape)\n",
" decoder = build_decoder()\n",
" \n",
" autoencoder_input = layers.Input(shape=input_shape)\n",
" encoded = encoder(autoencoder_input)\n",
" reconstructed = decoder(encoded)\n",
" \n",
" autoencoder = models.Model(autoencoder_input, reconstructed)\n",
" return autoencoder\n",
"\n",
"# Create the autoencoder\n",
"autoencoder = build_autoencoder(input_shape)\n",
"\n",
"# Compile the autoencoder\n",
"autoencoder.compile(optimizer='adam', loss='mse')\n",
"\n",
"# Display architecture\n",
"autoencoder.summary()"
]
},
{
"cell_type": "code",
"execution_count": 156,
"id": "1e032edc-7aa6-4606-a9ae-10755b729c44",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m2s\u001b[0m 192ms/step - loss: 0.0311 - val_loss: 0.0214\n",
"Epoch 2/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 162ms/step - loss: 0.0179 - val_loss: 0.0134\n",
"Epoch 3/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 154ms/step - loss: 0.0134 - val_loss: 0.0125\n",
"Epoch 4/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 162ms/step - loss: 0.0122 - val_loss: 0.0118\n",
"Epoch 5/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 155ms/step - loss: 0.0117 - val_loss: 0.0117\n",
"Epoch 6/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 163ms/step - loss: 0.0116 - val_loss: 0.0116\n",
"Epoch 7/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 163ms/step - loss: 0.0115 - val_loss: 0.0115\n",
"Epoch 8/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 160ms/step - loss: 0.0113 - val_loss: 0.0114\n",
"Epoch 9/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 157ms/step - loss: 0.0113 - val_loss: 0.0114\n",
"Epoch 10/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 162ms/step - loss: 0.0113 - val_loss: 0.0114\n",
"Epoch 11/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 157ms/step - loss: 0.0113 - val_loss: 0.0114\n",
"Epoch 12/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 158ms/step - loss: 0.0113 - val_loss: 0.0114\n",
"Epoch 13/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 157ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 14/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 160ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 15/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 164ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 16/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 155ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 17/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 159ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 18/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 155ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 19/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 154ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 20/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 156ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 21/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 159ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 22/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 159ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 23/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 154ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 24/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 156ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 25/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 155ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 26/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 155ms/step - loss: 0.0112 - val_loss: 0.0114\n",
"Epoch 27/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 162ms/step - loss: 0.0111 - val_loss: 0.0114\n",
"Epoch 28/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 164ms/step - loss: 0.0111 - val_loss: 0.0114\n",
"Epoch 29/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 155ms/step - loss: 0.0111 - val_loss: 0.0114\n",
"Epoch 30/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 157ms/step - loss: 0.0111 - val_loss: 0.0115\n",
"Epoch 31/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 158ms/step - loss: 0.0111 - val_loss: 0.0114\n",
"Epoch 32/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 158ms/step - loss: 0.0110 - val_loss: 0.0114\n",
"Epoch 33/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 160ms/step - loss: 0.0110 - val_loss: 0.0114\n",
"Epoch 34/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 166ms/step - loss: 0.0109 - val_loss: 0.0114\n",
"Epoch 35/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 165ms/step - loss: 0.0109 - val_loss: 0.0114\n",
"Epoch 36/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 167ms/step - loss: 0.0108 - val_loss: 0.0114\n",
"Epoch 37/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 174ms/step - loss: 0.0108 - val_loss: 0.0114\n",
"Epoch 38/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 159ms/step - loss: 0.0108 - val_loss: 0.0114\n",
"Epoch 39/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 161ms/step - loss: 0.0107 - val_loss: 0.0115\n",
"Epoch 40/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 163ms/step - loss: 0.0107 - val_loss: 0.0115\n",
"Epoch 41/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 157ms/step - loss: 0.0107 - val_loss: 0.0115\n",
"Epoch 42/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 174ms/step - loss: 0.0107 - val_loss: 0.0114\n",
"Epoch 43/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 170ms/step - loss: 0.0105 - val_loss: 0.0115\n",
"Epoch 44/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 161ms/step - loss: 0.0105 - val_loss: 0.0115\n",
"Epoch 45/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 162ms/step - loss: 0.0104 - val_loss: 0.0115\n",
"Epoch 46/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 169ms/step - loss: 0.0103 - val_loss: 0.0115\n",
"Epoch 47/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 162ms/step - loss: 0.0103 - val_loss: 0.0115\n",
"Epoch 48/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 169ms/step - loss: 0.0102 - val_loss: 0.0115\n",
"Epoch 49/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 163ms/step - loss: 0.0101 - val_loss: 0.0116\n",
"Epoch 50/50\n",
"\u001b[1m4/4\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 164ms/step - loss: 0.0101 - val_loss: 0.0116\n"
]
},
{
"data": {
"text/plain": [
"<keras.src.callbacks.history.History at 0x255cb756630>"
]
},
"execution_count": 156,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"autoencoder.fit(data, data, epochs=50, batch_size=50, validation_split=0.2)"
]
},
{
"cell_type": "code",
"execution_count": 157,
"id": "fc11a70e-b56e-4595-8b2c-0de8d56b9838",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\u001b[1m7/7\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 19ms/step\n"
]
}
],
"source": [
"reconstructed = autoencoder.predict(data)"
]
},
{
"cell_type": "code",
"execution_count": 158,
"id": "9dccc169-5d08-420a-a962-c654cf129efd",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure()\n",
"plt.plot(t1, data[0], c='blue', label='Original signal', linewidth=0.7)\n",
"plt.plot(t1, reconstructed[0], c='red', label='Reconstructed signal', linewidth=0.7)\n",
"plt.legend(loc='best')\n",
"plt.title('Reconstruction example')\n",
"plt.savefig('Reconstruction_ex.png')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5ece85ed-eb24-4a24-b1c4-f0d3e16d95ca",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.5"
}
},
"nbformat": 4,
"nbformat_minor": 5
}