Skip to content

Instantly share code, notes, and snippets.

@adriang133
Created June 17, 2020 20:27
Show Gist options
  • Save adriang133/b116f9725629ebc39f0911422afed54f to your computer and use it in GitHub Desktop.
Save adriang133/b116f9725629ebc39f0911422afed54f to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "rnn_simple_test.ipynb",
"provenance": [],
"collapsed_sections": []
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "code",
"metadata": {
"id": "5HzBNfQi6IhX",
"colab_type": "code",
"colab": {}
},
"source": [
"import tensorflow as tf\n",
"import numpy as np\n",
"from tensorflow.keras.preprocessing.sequence import TimeseriesGenerator\n",
"\n",
"\n",
"def gen_alternating_sequence(seq_length, num_ones, num_zeros):\n",
" \"\"\"\n",
" Generate an alternating sequence of 1s and 0s\n",
" For example, if num_ones=1 and num_zeros=2, the result will be [1 0 0 1 0 0 1 0 0 1 0 0 ... ]\n",
"\n",
" seq_length: The total length of the sequence\n",
" num_ones: The number of ones in a row\n",
" num_zeros: The number of 0s between each subsequence of ones\n",
" \"\"\"\n",
" ones_seq = np.ones(num_ones, dtype=np.int8)\n",
" zeros_seq = np.zeros(num_zeros, dtype=np.int8)\n",
"\n",
" seq = []\n",
" l = 0\n",
" while l < seq_length:\n",
" seq.append(ones_seq)\n",
" seq.append(zeros_seq)\n",
" l += len(ones_seq) + len(zeros_seq)\n",
" \n",
" return np.concatenate(seq)[:seq_length]\n",
"\n",
"\n",
"def plot_item(history, truth, pred=None):\n",
" last_time_step = history.shape[0]\n",
" x = range(last_time_step)\n",
" plt.plot(x, history)\n",
" plt.plot(last_time_step, truth, 'rx', label='Truth')\n",
" if pred is not None:\n",
" plt.plot(last_time_step, pred, 'go', label='Prediction')\n",
"\n",
" plt.legend()\n",
" plt.xlabel(\"Time-Step\")\n",
"\n",
" return plt"
],
"execution_count": null,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "zBp_ZeaRQnWe",
"colab_type": "text"
},
"source": [
"#Generate the data"
]
},
{
"cell_type": "code",
"metadata": {
"id": "UMH9FzA98SgB",
"colab_type": "code",
"colab": {}
},
"source": [
"DATA_LEN = 10000\n",
"TRAIN_SPLIT = int(0.8 * DATA_LEN)\n",
"\n",
"data = gen_alternating_sequence(DATA_LEN, 2, 3)\n",
"\n",
"train_data = data[:TRAIN_SPLIT].reshape(-1, 1)\n",
"val_data = data[TRAIN_SPLIT:].reshape(-1, 1)"
],
"execution_count": 103,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "B64FJWjc8r7o",
"colab_type": "code",
"colab": {}
},
"source": [
"WINDOW_SIZE = 10\n",
"BATCH_SIZE = 32\n",
"\n",
"train_gen = TimeseriesGenerator(train_data, train_data, WINDOW_SIZE, batch_size=BATCH_SIZE, shuffle=True)\n",
"val_gen = TimeseriesGenerator(val_data, val_data, WINDOW_SIZE, batch_size=BATCH_SIZE)"
],
"execution_count": 104,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "qG2gLEIzP2HN",
"colab_type": "text"
},
"source": [
"Plot a few examples from the first batch"
]
},
{
"cell_type": "code",
"metadata": {
"id": "OLzaI0YKPWFc",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "61ba18b2-80bc-4cd8-a264-18a2daab0d41"
},
"source": [
"for x_batch, y_batch in train_gen:\n",
" # the generator is batched so x_batch has shape (BATCH_SIZE, WINDOW_SIZE, 1)\n",
" for i in range(5):\n",
" plot_item(x_batch[i], y_batch[i]).show()\n",
" break"
],
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": [],
"needs_background": "light"
}
},
{
"output_type": "display_data",
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAEGCAYAAAB1iW6ZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3de5BcV30n8O9vXhpNt57TPdiWZiR1YwOySQSWjbMOWSvAlowpe2ttvHYVWUhYXLBxwnMdZ4MJZSpbxKQclsQ2682ywDprIlgq6xAHQ8g4SQFmJVtavxQT3avXSLbn9ujZLc37t3/ce3parXnc6b7d9/X9VLk03dOaPj2+96dzzzn3e0RVQURE8dcRdgOIiCgYLOhERAnBgk5ElBAs6ERECcGCTkSUEF1hvXEul9PNmzeH9fZERLH07LPPllQ1P9/3Qivomzdvxp49e8J6eyKiWBKRwwt9j0MuREQJwYJORJQQLOhERAnBgk5ElBAs6ERECbFkQReRr4nIqIi8uMD3RUS+IiIHROR5EXl78M0kIoq5Bx4AhocvfG542H0+IH566F8HsHOR798I4HLvv7sAPNJ8s4iIEuaaa4Dbb58r6sPD7uNrrgnsLZZch66q/yAimxd5yS0AvqluDu8zIrJWRC5V1VcDauMF9hw6gb/dP4rf2fkmiEgr3oIiYO+Rkxj+p9FQ3juzogu/8ctb0N3JEcmk+sd/dvD8yGnc9SuF9v1/3rED2LXLLeIf+xjwyCPu4x07AnuLIG4s2gDgaM3jEe+5iwq6iNwFtxePoaGhht7shWOn8dW/t/Abv7wZA6t6G/oZFH3/+cn92H3oJNr9b7bZHmDrZavxzsvnvRmPEuAHL72Ov9x3DP/hhmJ733jHDreYf+ELwH33BVrMgTbfKaqqjwJ4FAC2b9/e0M4ahXwWAGA7FRb0BLOcCu64ZhBfvPUX2vq+o2fHce0f/AjWaJkFPcHsUhmFfLb9V/nDw27P/L773D937Ai0qAdxrXEMwGDN443ecy1RzGcAuAWdkulkZRInKpMoev94t1M+uwKrertgl3h8JZk1WqnWkrYxY+a7dgH33z83/FI/UdqEIAr6EwD+nbfa5ToAp1s1fg4Al61Zid7uDlhOuVVvQSGzS+7/20K7TzgAIoJCPsvjK8EqE9N47cx4+zsMu3dfOGZuxtR37w7sLZYcchGRxwHcACAnIiMAfh9ANwCo6lcBPAngvQAOADgH4NcDa908OjoEW3JZ2DzhEsvyrr4KIfTQAaCYy+Cn9lgo702td9C7+mp7D/2eey5+LuAhFz+rXO5c4vsK4DcDa5EPhXwGL4ycbudbUhtZThndnYLBdStDef/iQBbf3XsMlYlpZFaEFkhKLWKuvsLqMLRSLNdlFfNZjJw8h/GpmbCbQi1gOxVs6s+gK6Rlg4Wc23M7yHH0RLKcCjoE2NTfF3ZTAhfTgp7BrAKHx86F3RRqAdspt/9yuEZxwO25cRw9mSynjMH1fVjR1Rl2UwIXy4JeyJmlizzhkmZqZhaHx86Fejm8qb8PHTI3lk/JYjuV6lVY0sSzoJuli7wkTpyjJ85helZDWbJorOjqxOD6PnYYEmh2VnGwVA71+GqlWBb0zIouXLK6F9YoT7ikmVvhEm4PqpDLsIeeQMdPn8f41GwiJ0SBmBZ0ACgOZGCxh544pldczIV7whXyWRwslTE729ANzRRR5obEMOdoWim2Bb2Qy8IeLUOVJ1yS2E4FuWwP1vR1h9qOYj6L8alZvHpmPNR2ULCSvGQRiHNBz2dwdmIaTnki7KZQgCynXJ30DpMZ8uGwXrLYTgWreruQy/aE3ZSWiG1BL9aEdFFy2KUKigPhXw7PHV8s6EliOe6EaFKjt2Nb0Ks9KJ5wiWFCuaLQQ89le7Cqt4sTowljO5XQJ9xbKbYF3YR0sYeeHCaUKwo9dBFBMZ+ttonirxxWKFcbxbagm5Au9tCTwxr1lixGoIcOuFeBpk0UfwcTvsIFiHFBB9z/MeyhJ4dVckO5NoYUylWvmM/itTPjqExMh90UCkD1CpA99Ggq5LM4ypCuxLCdCjaHGMpVz/TkGNKVDNZoGR0CDCUwlMuIxpnToGI+A2VIV2JYTjlSE1ZmrTKH9ZLBKlUSG8plxLygc2lZUkzNzOLI2LlIXQ4zpCtZbKcSqeOrFWJd0LfkuHQxKY54oVxRuoPPhHTx+Io/E8qV1JRFI9YFPbOiC5eu6eXEaALYEQnlqlfIceI9CUwol8m6T6pYF3TAW1rGHlTsRSWUq16RIV2JUE3xZA892gq5LGynwpCumLOcciRCueoVvJCu46fPh90UaoKd8FAuI/YFvciQrkRwb8mO3slmli5y2CXeLKeM1QkO5TJiX9CrS8t4R1+sWSHvI7oQLl1MBtNhSGoolxH7gm4mOZi5EV8nKpM4eW4qkkvKctkerO7tYg895tKwZBFIQEG/dHUvers72EOPsbnxzej10EUEhTwzg+LMhHJF8fgKWuwLekeHuBOj7KHHVnXJYsRWuBgFZgbF2lwoVzSPryDFvqADPOHiziqV0dPZEZlQrnompKvMkK5YMldXUZyjCVpCCjpDuuLMGq1gU39fZEK56lVDuthpiCXbSX4olxHNM2iZGNIVb3apHOnL4WpmEIf1YskqVTCU8FAuIyEFnUvL4sqEckV5wmrIhHRxw+hYskbLkbzHoRUSUdBNSBdTF+MniqFc9aohXcxFjx03lKuSivFzICEF3YR0MeY0fuyYbAtWzGc58R5Dx06dx8T0bKQ7DEHyVdBFZKeIvCIiB0Tk3nm+PyQiwyKyV0SeF5H3Bt/UxbkrXdhDjxsrJhkbhVyGIV0xZJfSEcplLFnQRaQTwEMAbgSwFcCdIrK17mWfBbBLVd8G4A4ADwfd0KWYHhRDuuLFdsrIZVdgzcpohXLVKw4wpCuOzLxH0mNzDT899GsBHFBVW1UnAXwLwC11r1EAq72v1wA4HlwT/SnkvJCuswzpihPLqUR6QtQoVDdT4bBLnNglN5SrP5PsUC7DT0HfAOBozeMR77lanwfwAREZAfAkgN+a7weJyF0iskdE9jiO00BzF2b+BeYJFy+2E+0li0Y1M4jDerFiOxUUB5IfymUENSl6J4Cvq+pGAO8F8D9F5KKfraqPqup2Vd2ez+cDemsXU/HiZy6UK/o99P6MG9LF4yteLKcc2UiJVvBT0I8BGKx5vNF7rtaHAewCAFX9KYBeALkgGujXpat7sbK7kysRYiTKoVz1TEgXj6/4KE9M4/UzEygORP/4Coqfgr4bwOUiskVEeuBOej5R95ojAN4FACLyFrgFPdgxlSV0dAi25DK8my9G7JiFJnHpYrxUOwzsoc9R1WkAdwN4CsB+uKtZXhKR+0XkZu9lnwbwERH5fwAeB/AhDWG5CfcXjRfLMaFc8cjYKOQzDOmKkbjc4xCkLj8vUtUn4U521j73uZqvXwZwfbBNW75iPou/fuFVjE/NoLc7+bkNcWc5FWzO9aGzIx4TVuZK4qBTwVs3rgm5NbQU2ymjs0NSEcplJOJOUaPghXQdGuNlcRzYMZuwMj09XgXGg+VUMLhuZSpCuYxEFfRqKh7HOSNvamYWR05EO5Srngnp4tLFeLBisiQ2SIkq6IU8Q7ri4vCYG8oVpxNuRVcnhtb38V6HGDChXHHqMAQhUQW9r4chXXERpyWLtbi/aDykLZTLSFRBB8zSMp5wUVcNTYrZCVfMZ3CwVGFIV8TNbTsXr+OrWYkr6O7SRYZ0RZ01Go9QrnqFfBYT07M4doohXVFW3Xg8ZleAzUpcQS/msygzpCvy7JhuOjC3HR2H9aLMLpWxZmV3akK5jMQVdPMv8gEOu0Sa5cRzWzBzfHE7umizRt0J0bSEchmJK+hcuhh9JyqTOBWTUK56JqSLERPRFvWNx1slcQX9EoZ0RZ4d4wkrEUFxgJkuUXZ2fAqvn5lI3fg5kMCCbkK6uLQsuqyYLlk0CjkuXYyyg9Vt5+LXYWhW4go64G5GwEvi6LKdSqxCueoVBzJ4/cwEQ7oiylw9vTFFsblGIgt6IZfByMnzGJ+aCbspNA/LKccqlKue6fnxfodoskwo13oW9EQoDmQZ0hVhtlOJ5fi5YXp+HEePJtupYGh9H3q6ElneFpXIT2w29OUJFz2T07M4HLNQrnpD6zPo7BCOo0eUu+1cfI+vZiSzoHOtcGQdOXEOM7Ma6wmrnq4ODK5byQ5DBM2kNJTLSGRB7+vpwmVrenk3XwRVlywOxLegA+6SS/bQo+e4F8oV5yG9ZiSyoANMxYsqKyEZGwWGdEXS3JJYFvREKeYzsBnSFTm2U0Z+1Qqs7o1XKFe9IkO6IimN+4jWSmxBLzCkK5KSMmFleoC8CowWy3FDudanLJTLSGxBN2NoDOmKFrtUScTl8NzuWJyniRJ3SWz6QrmMxBZ0nnDRE+dQrnr9mR6sWdnNO5IjJq4pnkFJbEE3IV28JI6OJO0iIyLuZiqj7DBExdnxKYyeTWcol5HYgt7R4Z5w7KFHR5xTFudTzDMzKEpMKFdSjq9GJLagA1y6GDWWU0FPVwc2rFsZdlMCUci7IV1nx6fCbgqh9gqQPfREKuYzOHaKIV1RYTtlbOnPxDaUq57pCR7kDWyRYDuV1IZyGYku6IU8Q7qixHKSdUu26QnyKjAaLKec2lAuI9Gf3Kx35sRV+CanZ3Ek5qFc9UxIF+dposF2Kom4x6EZyS7o1aWL7EGFzYRyJWnCqqerA0Pr+1jQI2BmVmGXKrHPCGpWogu6CeniJXH4kpqxUeB2h5Fw/NR5TE7Psofu50UislNEXhGRAyJy7wKvuV1EXhaRl0TkfwXbzMa529GxBxU2OyGhXPWKA1kcLFUww5CuUFkJSfFs1pIFXUQ6ATwE4EYAWwHcKSJb615zOYDfBXC9ql4J4BMtaGtDCjmGdEWBlZBQrnqFXAYT07M4zpCuUFVTPNlDX9K1AA6oqq2qkwC+BeCWutd8BMBDqnoSAFR1NNhmNq444IZ0jTKkK1R2QkK56jGkKxpsp4y1fekN5TL8FPQNAI7WPB7xnqt1BYArROTHIvKMiOyc7weJyF0iskdE9jiO01iLl8nsjMMTLjyqCstJ5oRVkZlBkWBSPNMaymUENSnaBeByADcAuBPAfxORtfUvUtVHVXW7qm7P5/MBvfXiqtvR8YQLzYnKJE6fn0pkD329F9LFDkO4bCcZKZ7N8lPQjwEYrHm80Xuu1giAJ1R1SlUPAvg53AIfuktW96Kvp5NLF0NkJqWT2EMXkepmKhQOE8qVpCWxjfJT0HcDuFxEtohID4A7ADxR95q/hNs7h4jk4A7B2AG2s2EdHYItOZ5wYTKbdRdjvDH0YpgZFK6krqBqxJIFXVWnAdwN4CkA+wHsUtWXROR+EbnZe9lTAMZE5GUAwwD+o6qOtarRy8UNfcNll5IVylWvmM9i9CxDusJiEi/ZQ3fHvpekqk8CeLLuuc/VfK0APuX9FzmFfAZ/9fxxjE/NoLe7M+zmpI41mqxQrnq1m6n84uBFU0fUYtaoCeXqC7spoUv0naJG0QvpYipeONxt55J7OVxd6cJs9FDYpTI2pTyUy0jFb4Db0YXHhHIl+XKYIV3hskaT3WFYjlQU9C05xpyG5cgJ97b4JJ9wJqSLx1f7zcwqDo5xyaKRioLe19OFDWtXculiCMz6/yT30AFw6WJITChXmncpqpWKgg64wy4M6Wq/uZTFZJ9whbwbAseQrvY6kNAUz0alpqAX81lYo2WGdLWZ7VSQX7UCqxIWylWvkMtgkiFdbWen5ArQr9QU9EI+g8rkDEO62sxyyqm4HDZ3wR7gsF5bWQzlukB6CroJ6RrlCdcuqpqajA2TU8Nx9PZKaopno1JT0IsD3koXjqO3jQnlSsPl8PpMD9b2dXPivc1sp5KK48uv1BR0hnS1n5WijA0R4XZ0bWZCudJwBehXagq6iKCQzzBGt43MP55vTMkJV8xnOeTSRnMTosnvMPiVmoIOuOPo7KG3j+WU0dPVgcvWJjOUq16BIV1tldSNx5uRqoJezGdx7NR5jE/NhN2UVLCdSqJDueoxYqK9bKeCrg7Bpn6GchmpKuiFfIYhXW1klyrVyeg0MJNzDOlqD8spY2h9H7o7U1XGFpWq3wR7UO1jQrkKCd3UYj5D6/vQ2SGwRnl8tYO7JDY9HQY/0lXQuWF025hQrjT10Hu6OrBpfR976G1gQrm4ZPFCqSroK3s6GdLVJge8XmqaeuiAexXIHnrrHTvphnKxh36hVBV0AFy62Caml5q2E66Yz+LgGEO6Ws3itnPzSl1Bd9cKM6Sr1azRCgZSEMpVr5B3Q7qOnWRIVyuZCA8uWbxQ6gq6Cel6/QxDulrJLpVT1zsH5gqMxXH0lrJLFYZyzSN1Bb26tIzj6C1jQrnSeDk8d3xxWK+VbKecyuNrKakr6KbXyJCu1hnzQrnSeDlsQrq4kqq1LKfClMV5pK6gm5Auxui2TtozNsw8DbXGmfEpOGcnqhn0NCd1Bd2EdHE7utYxvdO0XhK7qYs8vlrFdBjYQ79Y6go6MLcdHbWGnbJQrnqFfBYOQ7paxlz9sId+sVQW9EIui+OnGdLVKrY3vpmWUK56RUZMtJTllNHVIRhaz1Cueuks6AzpainLSeeSRaO6dJHj6C1hOxWGci0glb+RIk+4lpmYnsHRk+dTO34OAJv6+9DVIeyht0ha9qltRCoL+hZu6NsyR8bOYWZWU91D7+7swND6PnYYWmAulCu9x9diUlnQTUgXT7jgWdUli+nuQRW4HV1LmFCutB9fC0llQQfccXSecMEz/0huSfmSsmI+w5CuFpjbdi7dx9dCfBV0EdkpIq+IyAERuXeR190qIioi24NrYmswpKs1bCedoVz1GNLVGtxHdHFLFnQR6QTwEIAbAWwFcKeIbJ3ndasAfBzAz4JuZCsUGdLVEnaJGRtAzcQ7Q7oCZZcqWMdQrgX56aFfC+CAqtqqOgngWwBumed1XwDwhwDGA2xfyxQY0hU4VYU1mu4li0Z16SJvYAuUe3yxw7AQPwV9A4CjNY9HvOeqROTtAAZV9a8X+0EicpeI7BGRPY7jLLuxQeLSxeCNVSZxZnyaPXS4IV3r+roZMREwu8QVLotpelJURDoAPAjg00u9VlUfVdXtqro9n883+9ZNecPqFcj0dDJzI0Bzmw7whAPcXjp76MExoVzsoS/MT0E/BmCw5vFG7zljFYCrADwtIocAXAfgiahPjLohXVn20ANkeqPsobsKOYbABcnmktgl+SnouwFcLiJbRKQHwB0AnjDfVNXTqppT1c2quhnAMwBuVtU9LWlxgLh0MVi2U8aKFIdy1SsOuCFdZxjSFQheAS5tyYKuqtMA7gbwFID9AHap6ksicr+I3NzqBraSCek6P8mQriBYTgVbUhzKVa/AO5IDZZcYyrWULj8vUtUnATxZ99znFnjtDc03qz2KA3MhXVsvWx12c2LPdsq48rI1YTcjMky8q+2UsW1wbcitiT/bqWCon6Fci0n1b6aQ8044rhVu2sT0DI6cOMfL4RpD692QLs7TBMNyytVzluaX6oK+JZeBCGCN8pK4WUfGzmFWOWFVq7uzA0P9fRxyCcDMrOJQ6RyKA+wwLCbVBX1lTycuW7OSPfQAMGNjfoUcV1IFYeTkOUzOzKLIHvqiUl3QAa50CYpZz5/2UK56xXwGh7xIYWpcdR9RdhgWlfqCzpCuYNhOBW9YzVCuesV8liFdAUj7xuN+saAzpCsQnLCan+lRctilOZbjhnKtYyjXoljQmenSNFWF7ZQ5YTUPHl/BsB2mePqR+oLO1MXmlcpuKBd76Bdb54V0MTOoOZZT4fi5D6kv6Azpap7NFS6LKnjzNNSY0+enUCpPsIfuQ+oLOkO6msd9RBdXzGfYYWiCzV2KfEt9QQe4dLFZJpRrA0O55lXIZ1EqM6SrUVyy6B8LOtye5bFTDOlqlF1yQ7k6GMo1r2J1noadhkYwlMs/FnTM/ct/kNnVDbG4AmFR1aWL3OyiIdYoQ7n84m8IXFrWjInpGRw9cY7bgi3ChHQxYqIx3HjcPxZ0zIV08ZJ4+Q57oVycsFqYCeliCNzymVAujp/7w4IOoLebIV2N4pJFfwq5LI+vBjCUa3lY0D3FAS5dbIRVXYHAE24xxYEMDpUY0rVc1QwX3oXsCwu6p5Bzly4ypGt5LKeMN6xegewKX5tfpVYxl8XkzCxGTp4LuymxUl2yyB66LyzonuJAFucmZ/DamfGwmxIrtlPhhJUPpofJeZrlsZwK1md6GMrlEwu6p8gNfZdNVd2URY6fL8n0MDmstzxuiiePL79Y0D21G/qSP6XyJM6OT7OH7sO6TA/WZ3oYAbBMvAJcHhZ0z8AqhnQtl8WMjWUp5DLsoS+DCeXiFaB/LOgehnQt39yEFU84P5gZtDwM5Vo+FvQaRZ5wy8JQruUpeiFdp88zpMsPu5riyQ6DXyzoNQoM6VoWyykzlGsZuJnK8liOG8o1yFAu31jQa1RT8XhHny92qVKdTKalmZ4mrwL9sZ0KNjGUa1n4m6pR4AnnWzWUi+Pnvg16IV2cp/HHXRLLDsNysKDXYEiXfwzlWj4T0sXja2nTM7M4PMZQruViQa/R292JDWtXsgflgxkH5hrh5SnmGdLlx8jJ824oF4+vZWFBr1PgCeeLWa+/hT2oZSnkGdLlhzkHucJleXwVdBHZKSKviMgBEbl3nu9/SkReFpHnReRHIrIp+Ka2h1m6yJCuxVlOGZes7mUo1zIV8wzp8oOhXI1ZsqCLSCeAhwDcCGArgDtFZGvdy/YC2K6qvwDgOwAeCLqh7VLIM6TLD8upcHyzAabHyWG9xVlOmaFcDfDTQ78WwAFVtVV1EsC3ANxS+wJVHVZV0+V4BsDGYJvZPlxatjRVhc19RBtiepw8vhZnORUOtzTAT0HfAOBozeMR77mFfBjA38z3DRG5S0T2iMgex3H8t7KNuL/o0pzyBM6OT7OH3oC5kC4eX4uxnTKHWxoQ6KSoiHwAwHYAX5rv+6r6qKpuV9Xt+Xw+yLcOjAnpYg9qYTZ3KWqKG9LF42shbijXJDsMDfBT0I8BGKx5vNF77gIi8m4AvwfgZlWdCKZ57Sci3I5uCczYaE4xn2WHYRFcEts4PwV9N4DLRWSLiPQAuAPAE7UvEJG3AfivcIv5aPDNbC+zHR3Nz3LK6O3uwGVrGMrViEI+w5CuRcztU8sOw3ItWdBVdRrA3QCeArAfwC5VfUlE7heRm72XfQlAFsC3RWSfiDyxwI+LhSJDuhZlO2VsyWUZytWgIkO6FmU7ZXR3MpSrEb4WEavqkwCerHvuczVfvzvgdoWqUBPSdeVla0JuTfRYTgVv3cjfS6MK1aWLFbxtaF3IrYkeyyljaD1DuRrB39g8GNK1sInpGYycZChXM0xIF3vo87OdCifcG8SCPg8T0sWJ0YuZUC7G5jauu7MDmxjSNa/pmVkcGuM+oo1iQZ+HCeniCXcxa9TbFoxrhJvC7Q7nN3LyPKZmlBOiDWJBX0CRJ9y87BJXIAShmM/i8Ng5TM/Mht2USJkL5WKHoREs6Aso5DM4WGJIVz1r1A3lyjCUqymFfMYL6TofdlMixRrlPQ7NYEFfQJEhXfOyShUUB3iyNYvbHc7PLpXRn+nB2j6GcjWCBX0B1aVloxxHN1QV9igzNoJQ5PE1L2uUKZ7NYEFfAHtQF3PKEzg7wVCuIKztc0O6eHxdyC6xw9AMFvQFDKxageyKruqqDqrNcOEJF4RiniFdtU6fc0O5OKTXOBb0BYgICvlMdVUHza3LZw89GIVcljcX1bBKXBLbLBb0RTAV70K2U2EoV4CKAxmUypM4fY4hXUDNFSBvWmsYC/oiCrkMjp06j3OT02E3JRIshnIFyvRELY6jA3CPr+5OweA6dhgaxYK+CJMncZDDLgBMxgaHW4LCzKAL2V4oVxdDuRrG39wizOQMJ66A8akZHD15jhOiARpc34fuTuEdyR53H1EeX81gQV/E5n43pIsTV24olyrv4AtSd2cHhtb38fiCG8p1eIwpi81iQV9Eb3cnNq5jSBfAbcFahRPvLhPKxQ5Dc1jQl1DIMaQLmFuyuIU56IEq5LM4NFZJfUjX3JJYdhiawYK+BNODmp1Nd0iX7VRw6RqGcgWtmM9gakZTH9LFjceDwYK+hEI+g/NTDOmynDJXuLSA6ZGm/SrQchjKFQQW9CVwaZkXyuVUeAdfCxR5fAHgktigsKAv4Y3sQVVDuXg5HLy1fT3oZ0gX7FKZE+4B4IDoEvJeSFeal5aZiFdOWLVGIZ9JdYyuCeVaqoc+NTWFkZERjI+nY/izt7cXGzduRHd3t++/w4K+BBFBMeUhXdVtwZix0RLFfBZ/u//1sJsRGsvntnMjIyNYtWoVNm/eDJFkx0+oKsbGxjAyMoItW7b4/nsccvGhkM+mOkbXGnVDuS5d3Rt2UxKpkE93SFd14/ElCvr4+Dj6+/sTX8wBtyPZ39+/7KsRFnQfivkMjp8eT21Il9l0gKFcrWF6pmkN6bJLFd+hXGko5kYjn5UF3QfTc0jrSgQuWWyt6tLFlF4FWqNlbOrPMJQrAPwN+lBdupjCcfTxqRmMnDzPCdEWGly3Et2dksrjC3DPq0LQdyA/8AAwPHzhc8PD7vMNGhsbw7Zt27Bt2zZccskl2LBhQ/Xx5OTkon/31KlTePjhh6uPn376abzvfe9ruC0LYUH3Ic0hXQzlar2uzg5s6s+k8vgyoVyBT7hfcw1w++1zRX142H18zTUN/8j+/n7s27cP+/btw0c/+lF88pOfrD7u6enB9PTCQ7L1Bb1VuMrFBxPSlcYYXYuhXG1RyKVzf9GjXihX4D30HTuAXbvcIv6xjwGPPOI+3rEj0Lf50Ic+hN7eXuzduxfXX389Vq9ejWw2i8985jMAgKuuugrf+973cO+998KyLGzbtg3vec97cNNNN6FcLuO2227Diy++iKuvvhqPPfZY03ME7KH75Ga6pK8HZTOUqy2KA1kcTmFIVzXFsxVLYnfscIv5F77g/hlwMTdGRkbwk5/8BA8++OCCr/niF7+IYrGIffv24eMl12kAAAi4SURBVEtf+hIAYO/evfjyl7+Ml19+GbZt48c//nHTbWFB98nd0Dd9IV0WQ7naopBzQ7qOpiykq3oF2IpYieFht2d+333un/Vj6gF5//vfj87OzmX/vWuvvRYbN25ER0cHtm3bhkOHDjXdFl8FXUR2isgrInJARO6d5/srROQvvO//TEQ2N92yiElrSJfNFS5tMbeSKl1XgbZTQX+mB2v6/N8N6YsZM9+1C7j//rnhlxYU9Uxm7vzo6urC7OzcVdZi68hXrFhR/bqzs3PRMXi/lizoItIJ4CEANwLYCuBOEdla97IPAzipqm8E8McA/rDplkVMMYVLF00oF8fPWy+tIV0tO752775wzNyMqe/eHfx71di8eTOee+45AMBzzz2HgwcPAgBWrVqFs2fPtvS9AX+TotcCOKCqNgCIyLcA3ALg5ZrX3ALg897X3wHwpyIiqpqY8Qlzwn362/uwujfg3kREzari7MR08BNWdBET0vXQ0wewa8/RsJvTNofGKrj17RuD/8H33HPxczt2tGwc3bj11lvxzW9+E1deeSXe8Y534IorrgDgrpC5/vrrcdVVV+HGG2/ETTfd1JL3l6VqrojcBmCnqv577/GvAXiHqt5d85oXvdeMeI8t7zWlup91F4C7AGBoaOjqw4cPB/lZWkpV8cBTr+DwWLp6UD2dHbhn55tx2dql7+Kj5jz2zGH8xCot/cIEERF85J0FbBtcu+Rr9+/fj7e85S1taFV0zPeZReRZVd0+3+vbOtOlqo8CeBQAtm/fHqveu4jgd3a+OexmUIJ94LpN+MB1m8JuBsWYn0nRYwAGax5v9J6b9zUi0gVgDYCxIBpIRET++CnouwFcLiJbRKQHwB0Anqh7zRMAPuh9fRuAv0vS+DkRRUOaykojn3XJgq6q0wDuBvAUgP0AdqnqSyJyv4jc7L3svwPoF5EDAD4F4KKljUREzejt7cXY2FgqirrJQ+/tXV5k9ZKToq2yfft23bNnTyjvTUTxwx2LXJGZFCUialR3d/eydu9JI976T0SUECzoREQJwYJORJQQoU2KiogDoNFbRXMA0nVLHT9zWvAzp0Mzn3mTqubn+0ZoBb0ZIrJnoVnepOJnTgd+5nRo1WfmkAsRUUKwoBMRJURcC/qjYTcgBPzM6cDPnA4t+cyxHEMnIqKLxbWHTkREdVjQiYgSInYFfakNq5NGRAZFZFhEXhaRl0Tk42G3qR1EpFNE9orI98JuSzuIyFoR+Y6I/JOI7BeRXwq7Ta0mIp/0jukXReRxEVletGAMiMjXRGTU29XNPLdeRH4oIv/s/bkuqPeLVUH3uWF10kwD+LSqbgVwHYDfTMFnBoCPw41rTov/AuD7qvpmAL+IhH92EdkA4LcBbFfVqwB0wt1rIWm+DmBn3XP3AviRql4O4EcIMG48VgUdNRtWq+okALNhdWKp6quq+pz39Vm4J/qGcFvVWiKyEcBNAP4s7La0g4isAfArcPcVgKpOquqpcFvVFl0AVnq7nPUBOB5yewKnqv8A4ETd07cA+Ib39TcA/Oug3i9uBX0DgNot0UeQ8OJWS0Q2A3gbgJ+F25KW+zKAewDMht2QNtkCwAHwP7xhpj8TkUzYjWolVT0G4I8AHAHwKoDTqvqDcFvVNm9Q1Ve9r18D8IagfnDcCnpqiUgWwP8G8AlVPRN2e1pFRN4HYFRVnw27LW3UBeDtAB5R1bcBqCDhu35548a3wP3H7DIAGRH5QLitaj9vq87A1o7HraD72bA6cUSkG24x/3NV/W7Y7Wmx6wHcLCKH4A6p/aqIPBZuk1puBMCIqporr+/ALfBJ9m4AB1XVUdUpAN8F8C9CblO7vC4ilwKA9+doUD84bgXdz4bViSIiAndsdb+qPhh2e1pNVX9XVTeq6ma4/3//TlUT3XNT1dcAHBWRN3lPvQvAyyE2qR2OALhORPq8Y/xdSPhEcI0nAHzQ+/qDAP5PUD84VlvQqeq0iJgNqzsBfE1VXwq5Wa12PYBfA/CCiOzznvtPqvpkiG2i4P0WgD/3Oio2gF8PuT0tpao/E5HvAHgO7kquvUhgBICIPA7gBgA5ERkB8PsAvghgl4h8GG6E+O2BvR9v/SciSoa4DbkQEdECWNCJiBKCBZ2IKCFY0ImIEoIFnYgoIVjQKVZEpF9E9nn/vSYix7yvyyLycIve8/e8VMDnvfd6h/f8J0SkrxXvSdQILluk2BKRzwMoq+oftfA9fgnAgwBuUNUJEckB6FHV497drNtVtdSq9ydaDvbQKRFE5AaTnS4inxeRb4jIP4rIYRH5NyLygIi8ICLf96IUICJXi8jfi8izIvKUuR27zqUASqo6AQCqWvKK+W/DzSAZFpFh7+f9KxH5qYg8JyLf9vJ3ICKHat7//4rIG9vxO6H0YUGnpCoC+FUANwN4DMCwqr4VwHkAN3lF/U8A3KaqVwP4GoA/mOfn/ADAoIj8XEQeFpF/CQCq+hW4ca87VHWH13P/LIB3q+rbAewB8Kman3Pae/8/hZsmSRS4WN36T7QMf6OqUyLyAtyYiO97z78AYDOANwG4CsAP3SgRdMKNcb2AqpZF5GoA7wSwA8BfiMi9qvr1updeB3fTlR97P68HwE9rvv94zZ9/3OyHI5oPCzollRkimRWRKZ2bLJqFe9wLgJdU9YKt3kRkEMBfeQ+/qqpfVdUZAE8DeNr7B+KDcHeiueCvAvihqt65QHt0ga+JAsMhF0qrVwDkzd6dItItIleq6lFV3eb991UReZOIXF7z97bBDVQCgLMAVnlfPwPgejM+LiIZEbmi5u/925o/a3vuRIFhD51SSVUnReQ2AF/xtoDrgju2XZ/emQXwJyKyFm4q4AEAd3nfexTA90XkuDeO/iEAj4vICu/7nwXwc+/rdSLyPNwrh4V68URN4bJFohbj8kZqFw65EBElBHvoREQJwR46EVFCsKATESUECzoRUUKwoBMRJQQLOhFRQvx/EJG9RIRBaAgAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": [],
"needs_background": "light"
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": [],
"needs_background": "light"
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": [],
"needs_background": "light"
}
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": [],
"needs_background": "light"
}
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "AmRTSrhE9TXb",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 204
},
"outputId": "35b87034-1fa5-4da2-d514-466d6e9240d4"
},
"source": [
"EPOCHS = 5\n",
"\n",
"model = tf.keras.models.Sequential([\n",
" tf.keras.layers.LSTM(4, input_shape=(None, 1)),\n",
" tf.keras.layers.Dense(1, activation='sigmoid')\n",
"])\n",
"\n",
"optimizer = tf.keras.optimizers.Adam(learning_rate=0.001)\n",
"\n",
"model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])\n",
"\n",
"model.fit(train_gen, epochs=EPOCHS)"
],
"execution_count": 107,
"outputs": [
{
"output_type": "stream",
"text": [
"Epoch 1/5\n",
"250/250 [==============================] - 1s 6ms/step - loss: 0.6648 - accuracy: 0.6079\n",
"Epoch 2/5\n",
"250/250 [==============================] - 1s 6ms/step - loss: 0.5247 - accuracy: 0.7150\n",
"Epoch 3/5\n",
"250/250 [==============================] - 1s 6ms/step - loss: 0.1124 - accuracy: 1.0000\n",
"Epoch 4/5\n",
"250/250 [==============================] - 2s 6ms/step - loss: 0.0532 - accuracy: 1.0000\n",
"Epoch 5/5\n",
"250/250 [==============================] - 2s 6ms/step - loss: 0.0324 - accuracy: 1.0000\n"
],
"name": "stdout"
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<tensorflow.python.keras.callbacks.History at 0x7f22ad32a748>"
]
},
"metadata": {
"tags": []
},
"execution_count": 107
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "xztyuhax9yGU",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 476
},
"outputId": "e0ed4f4d-f9f7-4e8f-e23f-a2465fa0c90a"
},
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"for i in range(15):\n",
" TEST_WINDOW_SIZE = WINDOW_SIZE + i\n",
"\n",
" longer_data_gen = TimeseriesGenerator(train_data[:2000], train_data[:2000], TEST_WINDOW_SIZE, batch_size=2000)\n",
"\n",
" # Trying with sequences of different length yields surprising results. It seems like the model learns\n",
" # the pattern but it does not synchronize it to the input. So the output will have the right pattern (i.e. 2 ones followed by 3 zeros), but will be off-phase\n",
" # Also seems to happen less with larger WINDOW_SIZE\n",
" # adding dropout to the LSTM seems to fix it sometimes\n",
" [loss, acc] = model.evaluate(longer_data_gen)\n",
" if acc < 1.0:\n",
" print('For i={} accuracy is {}'.format(i, acc))\n",
"\n",
"# for i in range(20):\n",
"# x, y = longer_data_gen[i]\n",
"# plot_item(x[0], y[0], model.predict_classes(x)[0]).show()"
],
"execution_count": 108,
"outputs": [
{
"output_type": "stream",
"text": [
"1/1 [==============================] - 0s 1ms/step - loss: 0.0262 - accuracy: 1.0000\n",
"1/1 [==============================] - 0s 1ms/step - loss: 1.4942 - accuracy: 0.6003\n",
"For i=1 accuracy is 0.6003016829490662\n",
"1/1 [==============================] - 0s 1ms/step - loss: 2.9187 - accuracy: 0.2002\n",
"For i=2 accuracy is 0.20020121335983276\n",
"1/1 [==============================] - 0s 1ms/step - loss: 2.8696 - accuracy: 0.1998\n",
"For i=3 accuracy is 0.19979868829250336\n",
"1/1 [==============================] - 0s 3ms/step - loss: 1.4501 - accuracy: 0.5997\n",
"For i=4 accuracy is 0.5996978878974915\n",
"1/1 [==============================] - 0s 6ms/step - loss: 0.0251 - accuracy: 1.0000\n",
"1/1 [==============================] - 0s 1ms/step - loss: 1.5052 - accuracy: 0.6003\n",
"For i=6 accuracy is 0.6003023982048035\n",
"1/1 [==============================] - 0s 1ms/step - loss: 2.9298 - accuracy: 0.2002\n",
"For i=7 accuracy is 0.20020171999931335\n",
"1/1 [==============================] - 0s 2ms/step - loss: 2.8761 - accuracy: 0.1998\n",
"For i=8 accuracy is 0.19979818165302277\n",
"1/1 [==============================] - 0s 1ms/step - loss: 1.4519 - accuracy: 0.5997\n",
"For i=9 accuracy is 0.5996971130371094\n",
"1/1 [==============================] - 0s 2ms/step - loss: 0.0250 - accuracy: 1.0000\n",
"1/1 [==============================] - 0s 6ms/step - loss: 1.5059 - accuracy: 0.6003\n",
"For i=11 accuracy is 0.6003031730651855\n",
"1/1 [==============================] - 0s 1ms/step - loss: 2.9309 - accuracy: 0.2002\n",
"For i=12 accuracy is 0.20020222663879395\n",
"1/1 [==============================] - 0s 2ms/step - loss: 2.8770 - accuracy: 0.1998\n",
"For i=13 accuracy is 0.19979767501354218\n",
"1/1 [==============================] - 0s 2ms/step - loss: 1.4522 - accuracy: 0.5997\n",
"For i=14 accuracy is 0.5996963381767273\n"
],
"name": "stdout"
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment