{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Introduction to Neural Networks\n",
    "\n",
    "## TO DO: Almost all the figues and schematics will be replaced or improved slowly\n",
    "\n",
    "<img src=\"./images/neuralnets/Colored_neural_network.svg\"/>\n",
    "source: https://en.wikipedia.org/wiki/Artificial_neural_network\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## History of Neural networks\n",
    "\n",
    "**TODO: Make it more complete and format properly**\n",
    "\n",
    "1943 - Threshold Logic\n",
    "\n",
    "1940s - Hebbian Learning\n",
    "\n",
    "1958 - Perceptron\n",
    "\n",
    "1975 - Backpropagation\n",
    "\n",
    "1980s - Neocognitron\n",
    "\n",
    "1982: Hopfield Network\n",
    "\n",
    "1986: Convolutional Neural Networks\n",
    "\n",
    "1997: Long-short term memory (LSTM) model\n",
    "\n",
    "2014: Gated Recurrent Units, Generative Adversarial Networks(Check)?"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Why the boom now?\n",
    "* Data\n",
    "* Data\n",
    "* Data\n",
    "* Availability of GPUs\n",
    "* Algorithmic developments which allow for efficient training and training for deeper networks\n",
    "* Much easier access than a decade ago"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Building blocks\n",
    "### Perceptron\n",
    "\n",
    "Smallest unit of a neural network is a **perceptron** like node.\n",
    "\n",
    "**What is a Perceptron?**\n",
    "\n",
    "It is a simple function which has multiple inputs and a single output.\n",
    "\n",
    "Step 1: Weighted sum of the inputs is calculated\n",
    "\n",
    "\\begin{equation*}\n",
    "weighted\\_sum = \\sum_{k=1}^{num\\_inputs} w_{i} x_{i}\n",
    "\\end{equation*}\n",
    "\n",
    "Step 2: The following activation function is applied\n",
    "\n",
    "$$\n",
    "f(weighted\\_sum) = \\left\\{\n",
    "        \\begin{array}{ll}\n",
    "            0 & \\quad weighted\\_sum < threshold \\\\\n",
    "            1 & \\quad weighted\\_sum \\geq threshold\n",
    "        \\end{array}\n",
    "    \\right.\n",
    "$$\n",
    "\n",
    "You can see that this is also a linear classifier as we introduced in script 02."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "%config IPCompleter.greedy=True\n",
    "%config InlineBackend.figure_format = 'retina'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import numpy as np\n",
    "def perceptron(X, w, threshold=1):\n",
    "    # This function computes sum(w_i*x_i) and \n",
    "    # applies a perceptron activation\n",
    "    linear_sum = np.dot(X,w)\n",
    "    output=0\n",
    "    if linear_sum >= threshold:\n",
    "        output = 1\n",
    "        # print(\"The perceptron has peaked\")\n",
    "    return output\n",
    "X = [1,0]\n",
    "w = [1,1]\n",
    "perceptron(X,w)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Boolean AND\n",
    "\n",
    "| x$_1$ | x$_2$ | output |\n",
    "| --- | --- | --- |\n",
    "| 0 | 0 | 0 |\n",
    "| 1 | 0 | 0 |\n",
    "| 0 | 1 | 0 |\n",
    "| 1 | 1 | 1 |"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 158,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Perceptron output for x1, x2 =  [0, 0]  is  0\n",
      "Perceptron output for x1, x2 =  [1, 0]  is  0\n",
      "Perceptron output for x1, x2 =  [0, 1]  is  0\n",
      "Perceptron output for x1, x2 =  [1, 1]  is  1\n"
     ]
    }
   ],
   "source": [
    "# Calculating Boolean AND using a perceptron\n",
    "import matplotlib.pyplot as plt\n",
    "threshold = 1.5\n",
    "w=[1,1]\n",
    "X=[[0,0],[1,0],[0,1],[1,1]]\n",
    "for i in X:\n",
    "    print(\"Perceptron output for x1, x2 = \" , i , \" is \" , perceptron(i,w,threshold))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In this simple case we can rewrite our equation to $x_2 = ...... $ which describes a line in 2D:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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6JFHHtHChQsVEhKi119/XWlpabZjAQAAZEJBAPLJypUrtXnzZknSqVOn9Nhjj6lhw4basWOH5WQAAAD/h4IA5JNmzZpp9erVqlSpkmu2evVqVa1aVRMmTFBycrLFdAAAAOkoCEA+qlOnjqKjozVy5EjX3Y0SExM1fPhwhYeHKzo62nJCAADg6ygIQD4rUKCAnn/+eW3cuFE1atRwzaOjo1WrVi0NHz5cCQkJFhMCAABfRkEALKlatarWrVunSZMmqWDBgpKk1NRUTZo0iesSAACANRQEwKKAgAANGTJEW7duVcOGDSVJQ4cOVdWqVS0nAwAAvopHvAJu4I477tDy5cs1Z84cderUKcv6AwcO6MYbb7SQDAAA+BrOIABuws/PTw8//LDr40Zn7du3TxUqVFC3bt30zz//WEoHAAB8BQUBcGOO46hv3746ceKEZs2apUqVKumzzz6zHQsAAHgxCgLgxhITE1WsWDHX60OHDun+++9Xhw4ddODAAYvJAACAt6IgAG6sYMGC+uijj7RgwQL95z//cc0///xzBQcH6/3335fjOBYTAgAAb0NBADzAvffeq9jYWPXq1cs1O3bsmB555BFFRERo9+7dFtMBAABvQkEAPESJEiX09ttva9myZSpbtqxrvnTpUlWuXFkzZ860Fw4AAHgNCgLgYZo2bapt27bpySeflJ9f+iF8+vRplSpVynIyAADgDSgIgAcqXLiwXn75Za1Zs0YhISHq0qWL7rnnHtuxAACAF+BBaYAHCw8PV1RUlBISErKsW7lypYoWLaoaNWpYSAYAADwVZxAADxcUFKSrrroq0+z48ePq0qWLwsPD9fTTT+vMmTOW0gEAAE9DQQC80LPPPqs//vhDqampmjRpkqpWraoffvjBdiwAAOABKAiAF3r88cfVpEkT1+udO3eqUaNG6tevn44fP24xGQAAcHcUBMALlStXTsuWLdPbb7+d6eNHb775pipXrqxFixZZTAcAANwZBQHwUsYY9erVS3FxcWrTpo1rvm/fPrVq1Updu3bV4cOHLSYEAADuiIIAeLnSpUtrwYIF+uijj3Tttde65nPmzFGdOnWUkpJiMR0AAHA3FATABxhj9MADD2j79u166KGHXPMhQ4YoIIC7HQMAgP9DQQB8yLXXXqs5c+bo66+/1kMPPaSePXvajgQAANwMBQHwQa1atdKc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mJgYNW3aVH369FHjxo1txwIAjxFgOwAAAHmhbNmyWrp06XkvVP76669ljFGrVq0sJAMA98YZBACA1zLGqECBAplmR44cUWRkpFq3bq0uXbro8OHDltIBgHuiIAAAfMqoUaN06NAhSdL//vc/VapUSXPnzpXjOJaTAYB7oCAAAHzKmDFj9NBDD7leHz58WJ07d1bbtm31559/WkwGAO6BggAA8CnXXnut5syZo6+//lo33XSTa/7ll18qODhY77zzDmcTAPg0CgIAwCe1atVKsbGx6tu3r2t2/Phx9e7dW82aNdOvv/5qMR0A2ENBAACYiqozAAAgAElEQVT4rKuuukrTp0/XihUrdMcdd7jmy5cvV5MmTZScnGwxHQDYQUEAAPi8Ro0aacuWLRo6dKj8/NL/apwwYYICAwMtJwOA/EdBAABAUqFChfTiiy/qp59+0pNPPqkHH3wwyzZpaWkWkgFA/qIgAADwLzVr1tTLL78sY0ym+erVq1W9enWtX7/eUjIAyB8UBAAALiIhIUGRkZHaunWr6tSpo8GDB+v06dO2YwFAnqAgAABwEVFRUdq3b5+k9I8ZvfzyywoNDdXy5cstJwOA3EdBAADgIurWrauYmBjdddddrtlvv/2mpk2bqk+fPoqPj7eYDgByFwUBAIAcuO2227R48WLNmDFDJUqUcM3ffvttBQcH66uvvrKYDgByDwUBAIAcMsaoR48eiouLU7t27Vzz/fv3695771Xnzp31999/W0wIAFeOggAAwCW68cYbNW/ePH366acqVaqUaz5//nz9888/FpMBwJWjIAAAcBmMMerYsaO2b9+ubt26SZJGjx6tChUqWE4GAFeGggAAwBUoWbKkZs6cqRUrVuipp57Ksn7Lli08YA2AR6EgAACQCxo1aqTAwMBMs507d6p27dpq2rSpdu7caSkZAFwaCgIAAHkgLS1NvXr1UkJCglauXKkqVapo8uTJSklJsR0NAC6IggAAQB5ITU1V3bp15e/vLyn9acxDhw5VnTp1tHXrVsvpACB7FAQAAPJAYGCgxo8fr/Xr16tatWqu+caNG1WjRg2NGjVKiYmJFhMCwPlREAAAyENhYWFav369xo8frwIFCkiSUlJSNHbsWFWvXl1r1661nBAAMqMgAACQxwIDA/XMM89o8+bNqlu3rmu+fft21atXT5MnT7aYDgAy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mq9bt07NmzdXUlKSxXQALpdb3ebUcZx9knrkcNss91VzHGebpO65HAsAAFzAnXfeqU2bNmnixIl64YUXlJycrJdeeklBQUG2owG4DG5zBgEAAHiuoKAgjRo1StHR0Ro+fLg6deqUZZvzPVMBgPuhIAAAgFwTEhKicePGZXmA2sqVKxUcHKyVK1daSgYgpygIAAAgT505c0Y9e/bUzp071bhxY/Xt21fHjx+3HQtANigIAAAgT23btk1///236/Vbb72lkJAQLVy40GIqANmhIAAAgDx15513KjY2Vvfee69r9scff6h169bq0qWLDh/m+aWAO6EgAACAPFe6dGl98cUX+vjjj3Xddde55v/73/9UqVIlzZ07V47jWEwI4CwKAgAAyBfGGHXq1Enbt29Xly5dXPPDhw+rc+fOatu2rfbv328xIQCJggAAAPLZNddco9mzZ2vhwoW66aabXPPFixfr9OnTFpMBkCgIAADAknvuuUexsbHq27evJGns2LG6/fbbLacCQEEAAADWXHXVVZo+fbrWrVunQYMGZVm/fv16paamWkgG+C4KAgAAsC48PFwBAQGZZj///LMaNmyoOnXqKCYmxlIywPdQEAAAgNtJS0tTZGSkEhMTtWHDBoWFhWn06NFKSkqyHQ3wehQEAADgdtLS0nTPPfcoKChIkpScnKwxY8YoLCxM69evt5wO8G4UBAAA4HYCAgI0YsQIbd68WXXq1HHNY2NjVadOHT311FPc8QjIIxQEAADgtipVqqRVq1Zp6tSpKly4sKT0swuvvPKKQkNDtXz5cssJAe9DQQAAAG7N399fAwcOVExMjO666y7X/LffflPTpk31wgsvWEwHeB8KAgAA8Ai33XabFi9erBkzZqhEiRKS0p/O3LRpU8vJAO8ScPFNAAAA3IMxRj169FCLFi3Uv39/3Xzzzapbt67tWIBXoSAAAACPc+ONN+rzzz9XSkpKlnWffvqpkpKS9OCDD8oYYyEd4Nn4iBEAAPBY5z5c7eDBg3r00UfVpUsXtWnTRvv27bOUDPBcFAQAAOA1xo4dq3/++UeStHDhQoWEhOitt95SWlqa5WSA56AgAAAArzFhwgQNGDDA9frEiRPq27evmjZtqp07d1pMBngOCgIAAPAaxYoV07Rp07Rq1SpVqFDBNV+5cqWqVKmiyZMnn/e6BQD/h4IAAAC8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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fe999f134e0>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 252,
       "width": 388
      },
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Plotting the decision boundary\n",
    "plt.xlim(-1,2)\n",
    "plt.ylim(-1,2)\n",
    "for i in X:\n",
    "    plt.plot(i,\"o\",color=\"b\");\n",
    "# Plotting the decision boundary\n",
    "# that is a line given by w_1*x_1+w_2*x_2-threshold=0\n",
    "plt.plot(np.arange(-3,4), 1.5-np.arange(-3,4), \"--\", color=\"black\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Exercise :Can you compute a Boolean \"OR\" using a perceptron?**\n",
    "\n",
    "Hint: copy the code from the \"AND\" example and edit the weights and/or threshold"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Boolean OR\n",
    "\n",
    "| x$_1$ | x$_2$ | output |\n",
    "| --- | --- | --- |\n",
    "| 0 | 0 | 0 |\n",
    "| 1 | 0 | 1 |\n",
    "| 0 | 1 | 1 |\n",
    "| 1 | 1 | 1 |"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Calculating Boolean OR using a perceptron\n",
    "# Edit the code below"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 157,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Perceptron output for x1, x2 =  [0, 0]  is  0\n",
      "Perceptron output for x1, x2 =  [1, 0]  is  1\n",
      "Perceptron output for x1, x2 =  [0, 1]  is  1\n",
      "Perceptron output for x1, x2 =  [1, 1]  is  1\n"
     ]
    },
    {
     "data": {
      "image/png": "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4A8oCPlUkyZNtH37dvXv319BQUGqUKGCBg8e7HYsAAAA5HMhbgfA5StQoIBGjx6tu+66SykpKYqMjMyw/8iRIypYsKDCwsJcSggAAID8hjMIfqB27dqqX79+hpm1Vt27d1dsbKw2b97sUjIAAADkNxQEP/Xuu+8qLi5OCQkJatCggfr166eTJ0+6HQsAAAA+joLgp44fP66CBQtKktLS0jR+/HhVq1ZNK1ascDkZAAAAfBkFwU91795du3bt0q233urMvv32W91yyy3q1auXEhMTXUwHAAAAX0VB8GPlypXTZ599prlz56pYsWLOfNasWYqKitKHH37oYjoAAAD4IgqCnzPGqFu3bvJ4PLrzzjud+cGDB9W2bVvde++9SkrKlx8wDQAAgFxAQQgQV199td5//329++67Kl26tDO31nIbVAAAADgoCAGmQ4cO8ng86tq1q0qUKKFJkya5HQkAAAA+hIIQgK644grNmzdPHo9HpUqVyrDv+PHjmjt3rtLS0lxKBwAAADdREALY+eVAkp577jn16NFDzZo10759+1xIBQAAADdREODYuHGjpkyZIklavXq1qlevrjFjxiglJcXlZAAAAMgrFAQ4YmJiNGDAAAUHB0uSTp8+rWeeeUb169fX9u3bXU4HAACAvEBBgCMiIkIjR47UF198oZiYGGceHx+v2rVra9CgQTpz5oyLCQEAAJDbKAj4i5o1a2rz5s0aOXKkwsPDJUkpKSl68cUXVbNmTW3YsMHlhAAAAMgtFARcUGhoqJ599llt27ZNjRo1cua7d+9Wo0aNtGbNGhfTAQAAILdQEPC3KleurNWrV2vy5MkqWLCgJKlhw4YZSgMAAAD8BwUBFxUUFKTHHntMCQkJatu2rebMmaOgIP6nAwAA4I/4LQ9Zdv311ysuLk6VKlXKME9JSVHbtm21aNEil5IBAAAgp1AQkG2vvPKKPvzwQ7Vv31533323fv31V7cjAQAA4DJREJAtSUlJmj59uvP4nXfeUZUqVTR//nxZa11MBgAAgMtBQUC2hIWFacuWLerRo4czO3LkiLp27arWrVvrwIEDLqYDAADApaIgINuKFy+uOXPm6PPPP1e5cuWc+aeffqqqVatq6tSpSktLcy8gAAAAsoyCgBzTokUL7dy5U3369JExRpJ0/PhxPfbYY2ratKn27t3rckIAAABcDAUBOapQoUKaMGGC1q1bpypVqjjztWvXat68ee4FAwAAQJZQEJArGjRooC+//FLPP/+8QkJCdNNNN2nw4MFuxwIAAMBFhLgdAP4rPDxcL7zwgjp27KgzZ86oQIECGfYfPnxYBQsWVEREhEsJAQAAcD7OICDX1ahRQ3Xr1s0ws9aqe/fuiomJ0bp161xKBgAAgPNREOCKhQsX6sMPP9TevXvVuHFjPf744zp27JjbsQAAAAIeBQGuSEpKUuHChSWln02YMmWKoqOj9dlnn7mcDAAAILBREOCKzp07KyEhQa1bt3ZmBw4cUKtWrdStWzf98ccfLqYDAAAIXBQEuObaa6/VRx99pAULFqhEiRLO/LXXXlNUVJTee+89F9MBAAAEJgoCXGWM0f333y+Px6N//etfzvzXX39Vx44d1aFDByUlJbmYEAAAILBQEOATSpUqpbfeektxcXG65pprnHl4eLjCwsJcTAYAABBYKAjwKW3btlVCQoL+/e9/q2TJkpo4caLbkQAAAAIKBQE+p1ixYpo5c6Z2796tkiVLZth39OhRzZw5U6mpqS6lAwAA8G8UBPiscy9cPuvZZ5/Vgw8+qCZNmmj37t0upAIAAPBvFATkGxs3btS0adMkSevXr1dMTIxGjBih5ORkl5MBAAD4DwoC8o2aNWtqyJAhCgkJkZT+YWvPP/+86tSpo61bt7qcDgAAwD9QEJBvhIeHa+jQodq6datq167tzLdv3666detqwIABOnXqlIsJAQAA8j8KAvKdatWqacOGDRo3bpwKFCggSUpNTdXo0aNVo0YNrV692uWEAAAA+RcFAflSSEiI+vXrpx07dujmm2925vv27VPTpk21atUq98IBAADkYxQE5GsVKlTQsmXLNGPGDBUpUkSS1KRJEzVu3NjlZAAAAPkTBQH5XlBQkHr16qWEhAR16NBBs2bNUlAQ/9MGAAC4HPwWBb9RtmxZvfvuu6pYsWKGeUpKim677TYtXLhQ1lqX0gEAAOQPFAT4vZdfflmffvqp7rnnHt155506ePCg25EAAAB8FgUBfi05OVmzZ892HsfFxSkqKkpz5szhbAIAAMAFUBDg10JDQ7VlyxY9+OCDziwxMVEPPPCAWrRooW+//dbFdAAAAL6HggC/V7RoUU2fPl0rVqxQ+fLlnfny5ctVrVo1TZgwQampqS4mBAAA8B0UBASMm2++WTt27NBTTz3l3OXo5MmT6tu3rxo1aqSEhASXEwIAALiPgoCAEhkZqbFjx2rjxo2qVq2aM9+0aZPeeOMNF5MBAAD4BgoCAlKdOnW0ZcsWDR8+XKGhoapYsaIGDx7sdiwAAADXhbgdAHBLWFiYBg0apPbt2+vUqVOKiIjIsP/3339XwYIFFRkZ6VJCAACAvMcZBAS8qlWrqnbt2hlm1lp1795dNWrU0MqVK90JBgAA4AIKAnABb775pj7++GN9/fXXatasmR566CElJia6HQsAACDX+URBMMZ0NMZMNsasMcYcNcZYY8yCy1yrrDHmVWPMQWPMGWPMfmPMBGNM8ZzODf9ljFHRokWdxzNmzFDVqlX10UcfuZgqcMXFSR06SC1apG/j4txOBAQGjj0gMPlEQZD0vKTHJMVI+ulyFzHGlJcUL6m7pM2SXpH0raQ+kjYYY0pkPyoCwX333SePx6M77rjDmf3000+6/fbbdd999+n33393MV3gGDtWKlZMatdOev99admy9G27dunzsWPdTgj4J449ILD5SkHoK6mipCKSHs7GOtMklZLU21rbzlo7wFp7i9KLQiVJI7KdFAHjmmuu0aJFi7Rw4UKVKlXKmb/11luKiorSW2+9JWutiwn9W7duUv/+Umbv7EpMTN/fvXuexgL8HsceAJ8oCNbaFdbafTYbv20ZY26U1FLSfklTz9s9RNIJSZ2NMQUvOygCjjFGd911lzwejzp37uzMDx06pPvuu09t27ZVUlKSiwn909ix0muvZe258+bx10wgp3DsAZB8pCDkkFu82yXW2rRzd1hrj0laJylSUv28Dob8r0SJEpo/f74WL16sa6+91pkXK1ZMYWFhLibzTyMu8VzfpT4fwIVx7AGQ/KsgVPJuv8pk/z7vtmIeZIGfuu2227Rr1y498sgjKl26tF555RW3I/mduLjM39qQmcRELp4EsotjD8BZ/lQQzt5yJrN/3s7Oi2VlMWNM/IW+JFXOblDkb0WKFNHUqVO1Z88eXXnllRn2HT16VFOmTFFqaqpL6fK/+fPz9nUA0nHsATjLnwrCxRjvlqtKkSOKFftr13zmmWf0+OOPq0GDBtq1a5cLqfK/y/24CT6mAsgejj0AZ/lTQTj7T1TRTPYXOe95f8taW+tCX5L2ZDco/NOGDRs0ffp0SdIXX3yh2NhYDR06lIuYL1HRzI7gXHodgHQcewDO8qeCsNe7zewag5u828yuUQCypXbt2hoxYoRz0XJycrKGDRum2NhYbd682eV0+UeXLnn7OgDpOPYAnOVPBWGFd9vSGJPh5zLGFJbUSNIpSRvzOhgCQ2hoqJ577jlt27ZNDRo0cOYJCQlq0KCB+vXrpxMnTriYMH+4445L/4tk0aLprwNw+Tj2AJyV7wqCMSbUGFPZ+6nJDmvtN5KWSCon6dHzXjZMUkFJ8621/IaGXFWlShWtWbNGkyZNUsGC6R+7kZaWpvHjx6t69epavny5ywl938CBuft8ABfGsQdAkowvfBKsMaadpHbeh1dJ+qekbyWt8c4OWWuf8j63nKTvJH1vrS133jrlJa1X+qcpx0naLamepGZKf2tRQ2vt4WxmjY+NjY2Nj4/PzjIIEPv371evXr30+eefZ5ivXLlSTZs2dSlV/tCtW9Y+sKlbN2nu3NxOAwQOjj3Ad9SqVUtbt27d6r0ONs/4yhmEGEldvV//9M5uPGfWMSuLeM8i1JY0T+nFoJ+k8pImSWqQ3XIAXKpy5crps88+09y5c527Ht18881q3Lixy8l837x50pgxmb/loWjR9P38ggLkLI49AD5xBiE/4QwCLtfPP/+sJ598Ui+88IIqVKiQYZ+1VsaYTF6JuLj0e60nJqb/ctKlC+97BvICxx7gLrfOIFAQLhEFATktOTlZrVu3VteuXXX//fdTFAAAgCTeYgQErHHjxmnp0qXq3Lmz/u///k8//PCD25EAAEAAoyAALkpOTtZr51wNuHjxYlWtWlX/+c9/lJaW5mIyAAAQqCgIgItCQ0O1ZcsWPf74485bi44dO6ZHHnlEzZo10759+1xOCAAAAg0FAXBZoUKFNGnSJK1Zs0aVKlVy5qtXr1b16tU1ZswYpaSkuJgQAAAEEgoC4CMaNWqkbdu26bnnnlNwcLAk6fTp03rmmWdUv359bd++3eWEAAAgEFAQAB8SERGhESNGaMuWLapZs6Yzj4+P1zvvvONiMgAAECgoCIAPiomJ0aZNmzRq1CiFh4ercuXKGjRokNuxAABAAAhxOwCACwsNDdWAAQN055136uTJkwoPD8+w/7ffflNkZKQKFSrkUkIAAOCPOIMA+LhKlSpleLuRlP7Jy926dVO1atX0+eefu5QMAAD4IwoCkA8tWLBAn3zyifbv36+WLVuqR48eOnLkiNuxAACAH6AgAPlQeHi4rrjiCufx3LlzFRUVpUWLFrmYCgAA+AMKApAP3X333fJ4PLrrrruc2S+//KL27dvrrrvu0i+//OJiOgAAkJ9REIB8qnTp0lq4cKHef/99XXXVVc783XffVVRUlObPny9rrYsJAQBAfkRBAPK5O++8Ux6PRz169HBmR44cUdeuXdW6dWudOXPGxXQAACC/oSAAfqB48eKaM2eOPv/8c5UrV86ZlypV6i+3RwUAAPg7FATAj7Ro0UI7d+5Unz59dPXVV+uVV15xOxIAAMhnKAiAnylUqJAmTJigPXv2ZLjTkSQlJibqlVdeUXJyskvpAACAr6MgAH6qSJEif5n1799fTz75pOrVq6cvv/zShVQAAMDXURCAALFhwwbNnDlTkvTll1+qTp06eu6553T69GmXkwEAAF9CQQACRJ06dTRmzBhFRERIklJTUzVq1CjFxMRo3bp1LqcDAAC+goIABIiQkBA9/fTT2rFjh5o0aeLM9+7dq8aNG+vxxx/XsWPHXEwIAAB8AQUBCDA33XSTVqxYof/85z8qXLiwJMlaqylTpig6OlqfffaZywkBAICbKAhAAAoKCtJDDz2khIQEtW7d2pkfOHBArVq10sqVK90LBwAAXEVBAALYtddeq48++kgLFixQiRIlJEnNmjVT06ZNXU4GAADcQkEAApwxRvfff788Ho+6dOmiWbNmyRiT4TnWWpfSAQCAvEZBACBJKlWqlF577TWVL18+wzwpKUnNmjXT3LlzKQoAAAQACgKAvzVmzBitWrVKPXr0UMuWLfXdd9+5HQkAAOQiCgKATCUnJ+utt95yHi9dulTR0dGaNGmSUlNTXUwGAAByCwUBQKZCQ0P1xRdfqF+/fgoKSv/n4uTJk+rTp48aN26s3bt3u5wQAADkNAoCgL8VGRmpcePGacOGDYqOjnbmGzZsUExMjEaMGKHk5GQXEwIAgJxEQQCQJXXr1lV8fLyGDh2q0NBQSekXMD///POqXbu24uPjXU4IAAByAgUBQJaFhYVpyJAh2rp1q+rWrevMd+zYobi4OBeTAQCAnEJBAHDJoqOjtX79er388ssqUKCAoqKiNHDgQLdjAQCAHBDidgAA+VNwcLCefPJJ3XHHHTp+/LjCw8Mz7P/ll18UGRmpIkWKuJQQAABcDs4gAMiW8uXLq0aNGhlm1lp17dpVVatW1eLFi11KBgAALgcFAUCOmz9/vpYsWaIff/xRbdq0UadOnXTo0CG3YwEAgCygIADIcUWKFFHJkiWdx2+88YaioqL03//+V9ZaF5MBAICLoSAAyHF33nmnPB6P7r//fmf2+++/61//+pfatWungwcPupgOAAD8HQoCgFxx5ZVXasGCBfroo49UtmxZZ/6///1PUVFRmj17NmcTAADwQRQEALmqTZs2SkhI0EMPPeTMEhMT9e9//1stWrTQmTNnXEwHAADOR0EAkOuKFCmi//znP1q5cqUqVKjgzK+77rq/3B4VAAC4i4IAIM80bdpU27dv19NPP60yZcpo/PjxbkcCAADnoSAAyFORkZEaM2aM9uzZo+LFi2fY9+eff2rMmDFKSkpyKR0AAKAgAHBFoUKF/jJ7+umn9cwzz6hWrVr64osvXEgFAAAoCAB8woYNGzR79mxJ0q5du1S/fn099dRTOnnypMvJAAAILBQEAD6hbt26mjBhgiIjIyVJaWlpevnll1W9enWtXLnS3XAAAAQQCgIAnxAcHKw+ffpo586dat68uTP/5ptv1KxZMz344INKTEx0MSEAAIGBggDAp9x44436/PPPNWfOHBUtWtSZz5w5U1WrVtVHH33kYjoAAPwfBQGAzzHGqEePHvJ4PLrjjjuc+U8//aTbb79dK1ascDEdAAD+jYIAwGddc801WrRokRYuXKhSpUpJklq0aKGbb77Z3WAAAPgxCgIAn2aM0V133SWPx6OePXtq5syZMsZkeI611qV0AAD4HwoCgHyhRIkSmj17tm644YYM86SkJDVu3FgzZsxQWlqaS+kAAPAfFAQA+dpLL72kdevW6aGHHtItt9yiffv2uR0JAIB8jYIAIN9KTk7Wu+++6zxetWqVqlevrnHjxiklJcXFZAAA5F8UBAD5VmhoqDZv3qwBAwYoODhYknT69Gk9/fTTatCggXbs2OFyQgAA8h8KAoB8LSIiQqNGjdLmzZsVExPjzLds2aJatWppyJAhOnPmjIsJAQDIXygIAPxCbGysNm/erJEjRyo8PFySlJKSouHDhys2NlYbN250OSEAAPmDTxUEY0xZY8yrxpiDxpgzxpj9xpgJxpjil7DGSmOM/ZuviNz8GQC4JzQ0VM8++6y2bdumhg0bOnOPx6NPP/3UxWQAAOQfIW4HOMsYU17SekmlJMVJ2iOprqQ+kloZYxpZaw9fwpLDMplz5SLg5ypXrqw1a9Zo2rRpGjBggG644QY999xzbscCACBf8JmCIGma0stBb2vt5LNDY8x4SX0ljZD0UFYXs9YOzemAAPKPoKAgPfbYY7r99tt19OhRhYWFZdh/8OBBRUZGqlixYi4lBADAN/nEW4yMMTdKailpv6Sp5+0eIumEpM7GmIJ5HA1APnf99derWrVqGWbWWnXt2lVRUVGKi4tzKRkAAL7JJwqCpFu82yXW2gwfhWqtPSZpnaRISfWzuqAx5h5jzABjzJPGmNuMMeEqxjqGAAAgAElEQVQ5FxdAfjZv3jwtXbpUP//8s9q1a6d77rlHv/76q9uxAADwCb5SECp5t19lsv/sR6NWvIQ135Y0StLLkhZLOmCM6ZjVFxtj4i/0JanyJWQA4INKlCih0qVLO48XLlyoqKgoLViwQNZaF5MBAOA+XykIRb3bxEz2n51n5c3CcZJul1RWUgGl/0I/yvva/xpjbstGTgB+oG3btvJ4POrWrZsz++OPP9S5c2e1adNGBw4ccC8cAAAu85WCcDHGu73on/asta9Yaz+y1v5krT1trd1rrX1OUj+l/7wjs/INrbW1LvSl9LsrAcjnrrjiCs2dO1efffaZrr/+emf+ySefqGrVqpo2bZrS0tL+ZgUAAPyTrxSEs2cIimayv8h5z7scs5V+i9MYY0zhbKwDwI+0bNlSu3btUu/evWVM+t8ijh8/rkcffVTNmjXjU5gBAAHHVwrCXu82s2sMbvJuM7tG4aKstaclHfM+5G5IAByFChXSxIkTtWbNGlWu/P8vM6pQoYLzqcwAAAQKXykIK7zblsaYDJm8f+1vJOmUpI2X+w2MMZUkFVd6STh0uesA8F+NGjXSl19+qYEDB+q6667Tyy+/7HYkAADynE8UBGvtN5KWSCon6dHzdg9T+l/851trT5wdGmMqG2My3FHIGHOjMabM+esbY66UNNf78G1rLZ+mDOCCIiIi9OKLL2rPnj1/+RC1I0eOaMSIETp9+rRL6QAAyH0+URC8HpH0m6RJxpgPjDGjjDHLlf4pyl9JGnje83d7v87VRNL3xphlxpiZxpiXjDFvSvpaUgNJWyT1z9WfAoBfKFCgwF9m/fr10/PPP6+aNWtq/fr1LqQCACD3+UxB8J5FqC1pnqR6Sr/rUHlJkyQ1sNYezsIy8ZIWSColqYN3jVaSdkrqLamRtfbPHA8PwO9t2LBBc+emn4jcs2eP/vGPf6hPnz46fvy4y8kAAMhZPlMQJMla+4O1tru19mprbZi19nprbR9r7R8XeK6x1przZjuttd2stdWstSWstaHW2iustY2ttZOttUl599MA8Cf16tXT1KlTVahQIUmStVaTJk1SdHS0lixZ4nI6AAByjk8VBADwVUFBQXrkkUeUkJCgVq1aOfPvv/9e//znP9W9e3cdOXLExYQAAOQMCgIAXILrrrtOixcv1vz583XFFVc483nz5ikqKkrvv/++i+kAAMg+CgIAXCJjjDp37iyPx6O7777bmf/yyy/q0KGDli1b5mI6AACyh4IAAJepdOnS+u9//6tFixbp6quvlpT+ycy33HKLy8kAALh8FAQAyKZ27drJ4/Ho4Ycf1owZM2RMhvsnKC0tzaVkAABcOgoCAOSAYsWKadq0aSpXrlyG+ZkzZ9SwYUNNnjyZogAAyBcoCACQi0aOHKlNmzapd+/eatKkifbs2eN2JAAA/hYFAQBySXJysuLi4pzH69atU40aNTRy5EglJye7mAwAgMxREAAgl4SGhmrTpk0aNGiQQkJCJElJSUkaOHCg6tatqy+//NLlhAAA/BUFAQByUXh4uIYPH674+HjVrl3bmW/btk116tTRs88+q1OnTrmYEACAjCgIAJAHqlevrg0bNmjs2LGKiIiQJKWmpuqll15STEyM1qxZ43JCAADSURAAII+EhIToqaee0s6dO9W0aVNn/tVXX2nlypXuBQMA4BwUBADIYxUqVNDy5cs1ffp0FS5cWNWqVdMzzzzjdiwAACRJIW4HAIBAFBQUpAcffFBt2rRRYmKiwsLCMuz/8ccfVaBAAZUoUcKlhACAQMUZBABwUdmyZVW1atUMM2utunbtqqioKL377ruy1rqUDgAQiCgIAOBj5syZo+XLl+u3337TXXfdpQ4dOujnn392OxYAIEBQEADAx5QpU0ZlypRxHi9atEhVqlTRq6++ytkEAECuoyAAgI+57bbblJCQoF69ejmzxMRE9ezZUy1bttR3333nYjoAgL+jIACADypatKhmzJih5cuXq3z58s586dKlio6O1sSJE5WamupiQgCAv6IgAIAPa9asmXbs2KF+/fopKCj9n+yTJ0/qiSee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z57asmWLJKlBgwaUg4vg2AMCk0+8xQgAgNxWvXp1bdiwQWPHjlWlSpU0atQotyMBgE+iIAAAAkZISIieeuop7dy5U0WKFMmw79ChQ+rfv7+OHTvmUjoA8A0UBABAwDn/k5cl6YknntDYsWMVHR2tTz/91IVUAOAbKAgAgIC3adMmvfHGG5KkAwcO6LbbblPXrl11+HCWbqIHAH6FggAACHh169bVm2++qSuvvNKZzZ8/X1FRUXrnnXfEHf8ABBIKAgAg4BljdO+998rj8ejee+915r/99pvuvvtutW/fXj///LOLCQEg71AQAADwKlmypN58803973//U5kyZZz5Bx98oCpVqujVV1/lbAIAv0dBAADgPLfffrsSEhL04IMPOrPExET17NlTS5cudTEZAOQ+CgIAABdQtGhRTZ8+XcuXL1f58uUlpReHFi1auJwMAHIXBQEAgL/RrFkz7dixQwMGDNC0adNkjMmwPyUlxaVkAJA7KAgAAFxEZGSkRo0apbJly2aYnzp1SrGxsXrhhReUlJTkUjoAyFkUBAAALtPw4cO1c+dODR48WHXq1NGWLVvcjgQA2UZBAADgMqSkpGj16tXO4x07dqhevXrq37+/Tp486WIyAMgeCgIAAJchJCREq1ev1vjx41WgQAFJUlpamsaOHasaNWpo1apVLicEgMtDQQAA4DIFBwerb9++2rlzp5o1a+bMv/76a9188816+OGHdfToURcTAsCloyAAAJBN5cuX17JlyzRr1iwVKVLEmU+fPl1Vq1bV4sWLXUwHAJeGggAAQA4wxuiBBx6Qx+NR27ZtnfmPP/6oXbt2uZgMAC4NBQEAgBxUpkwZffDBB3r77bdVsmRJ1apVS08++aTbsQAgy0LcDgAAgL8xxuiee+5R8+bN9eeffyokJOP/3X733XcKCwtTmTJlXEoIAJnjDAIAALnkyiuvVIUKFTLM0tLS1KVLF0VFRWnWrFmy1rqUDgAujIIAAEAemj59utauXaujR4+qV69eat68ub755hu3YwGAg4IAAEAeqlatmm666Sbn8YoVK1StWjWNHz9eqampLiYDgHQUBAAA8lDjxo21fft29e/fX0FB6f83fOrUKfXr108NGzbkjkcAXEdBAAAgjxUoUECjR4/Wpk2bVL16dWe+efNmxcbGatiwYUpKSnIxIYBARkEAAMAltWvX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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fe8e711fc18>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 252,
       "width": 388
      },
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Solution\n",
    "# Calculating Boolean OR using a perceptron\n",
    "import matplotlib.pyplot as plt\n",
    "threshold=0.6\n",
    "w=[1,1]\n",
    "X=[[0,0],[1,0],[0,1],[1,1]]\n",
    "for i in X:\n",
    "    print(\"Perceptron output for x1, x2 = \" , i , \" is \" , perceptron(i,w,threshold))\n",
    "# Plotting the decision boundary\n",
    "plt.xlim(-1,2)\n",
    "plt.ylim(-1,2)\n",
    "for i in X:\n",
    "    plt.plot(i,\"o\",color=\"b\");\n",
    "# Plotting the decision boundary\n",
    "# that is a line given by w_1*x_1+w_2*x_2-threshold=0\n",
    "plt.plot(np.arange(-3,4), threshold-np.arange(-3,4), \"--\", color=\"black\");"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Optional exercise: Create a NAND gate with perceptrons**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Calculating Boolean NAND using a perceptron\n",
    "\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In fact a single perceptron can compute \"AND\", \"OR\" and \"NOT\" boolean functions.\n",
    "However, it cannot compute some other boolean functions such as \"XOR\"\n",
    "\n",
    "WHAT CAN WE DO?\n",
    "Hint: What is the significance of the NAND gate we created above\n",
    "\n",
    "We said a single perceptron can't compute these functions. We didn't say that about **multiple Perceptrons**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**XOR function**\n",
    "\n",
    "**TO DO: INSERT IMAGE HERE!!!!!!!!!!!!!!**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Google Playground\n",
    "\n",
    "UWE: move up before discussing gradient stuff etc\n",
    "\n",
    "https://playground.tensorflow.org/\n",
    "\n",
    "<img src=\"./images/neuralnets/google_playground.png\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Learning\n",
    "\n",
    "Now we know that we can compute complex functions if we stack together a number of perceptrons.\n",
    "\n",
    "However, we can DO NOT want to set the weights and thresholds by hand as we did in the examples above.\n",
    "\n",
    "We want some algorithm to do this for us!\n",
    "\n",
    "In order to achieve this we first need to choose a loss function for the problem at hand\n",
    "\n",
    "\n",
    "### Loss function\n",
    "As in the case of other machine learning algorithms we need to define a so-called \"Loss function\". In simple words this function measures how close are the predictions of our network to the supplied labels. Once we have this function we need an algorithm to update the weights of the network such that this loss decreases. As one can already imagine the choice of an appropriate loss function is very important to the success of the trained model. Fortunately, for classification and regression (which comprise of a large range of probelms) these loss functions are well known. Generally **crossentropy** and **mean squared error** loss functions are chosen for classification and regression problems, respectively.\n",
    "\n",
    "### Gradient based learning\n",
    "Once we have a loss function we want to solve an **optimization problem** which minimizes this loss by updating the weights of the network and this is how the learning actually happens.\n",
    "\n",
    "One of the most popular optimization method used in machine learning is **Gradient-descent**\n",
    "\n",
    "INSERT MORE EXPLAINATIONS HERE\n",
    "\n",
    "### Activation Functions\n",
    "\n",
    "In order to train the network we need to change Perceptron's **step** activation function as it does not allow training using the back-propagation algorithm among other drawbacks.\n",
    "\n",
    "Non-Linear functions such as:\n",
    "\n",
    "* ReLU (Rectified linear unit)\n",
    "\n",
    "\\begin{equation*}\n",
    "f(z) = \\mathrm{max}(0,z)\n",
    "\\end{equation*}\n",
    "\n",
    "* Sigmoid\n",
    "\n",
    "\\begin{equation*}\n",
    "f(z) = \\frac{1}{1+e^{-z}}\n",
    "\\end{equation*}\n",
    "\n",
    "* tanh\n",
    "\n",
    "\\begin{equation*}\n",
    "f(z) = \\frac{e^{z} - e^{-z}}{e^{z} + e^{-z}}\n",
    "\\end{equation*}\n",
    "\n",
    "\n",
    "are some of the most popular choices used as activation functions.\n",
    "\n",
    "Linear activations are **NOT** used because it can be mathematically shown that if linear activations are used then output is just a linear function of the input. So adding any number of hidden layers does not help to learn interesting functions.\n",
    "\n",
    "Non-linear activation functions allow the network to learn more complex representations."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 135,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fe8eb5e6978>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 250,
       "width": 597
      },
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "plt.figure(figsize=(10, 4))\n",
    "\n",
    "pts=np.arange(-20,20, 0.1)\n",
    "\n",
    "plt.subplot(1, 3, 1)\n",
    "# Sigmoid\n",
    "plt.plot(pts, 1/(1+np.exp(-pts))) ;\n",
    "\n",
    "plt.subplot(1, 3, 2)\n",
    "# tanh\n",
    "plt.plot(pts, np.tanh(pts*np.pi)) ;\n",
    "\n",
    "# Rectified linear unit (ReLu)\n",
    "plt.subplot(1, 3, 3)\n",
    "pts_relu=[max(0,i) for i in pts];\n",
    "plt.plot(pts, pts_relu) ;"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Suggestion Uwe:\n",
    "\n",
    "1. more layers might improve power of single perctptron.\n",
    "\n",
    "2. regrettably math show that just \"stacking\" perceptrons only adds little improvements\n",
    "\n",
    "3. way around: look at nature how neuron works and introduce non linear activation functions.\n",
    "\n",
    "4. theoretical background: universal approximation theorem.\n",
    "\n",
    "\n",
    "\n",
    "### Multi-layer preceptron neural network\n",
    "Universal function theorem\n",
    "\n",
    "epochs\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Introduction to Keras"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "What is **Keras**?\n",
    "\n",
    "* It is a high level API to create and work with neural networks\n",
    "* Supports multiple backends such as TensorFlow from Google, Theano (Although Theano is dead now) and CNTK (Microsoft Cognitive Toolkit)\n",
    "* Very good for creating neural nets very quickly and hides away a lot of tedious work\n",
    "* Has been incorporated into official TensorFlow (which obviously only works with tensforflow) and as of TensorFlow 2.0 this will the main api to use TensorFlow (check reference)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "dense_9 (Dense)              (None, 4)                 36        \n",
      "_________________________________________________________________\n",
      "activation_7 (Activation)    (None, 4)                 0         \n",
      "_________________________________________________________________\n",
      "dense_10 (Dense)             (None, 4)                 20        \n",
      "_________________________________________________________________\n",
      "dense_11 (Dense)             (None, 1)                 5         \n",
      "_________________________________________________________________\n",
      "activation_8 (Activation)    (None, 1)                 0         \n",
      "=================================================================\n",
      "Total params: 61\n",
      "Trainable params: 61\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "# Say hello to keras\n",
    "\n",
    "from keras.models import Sequential\n",
    "from keras.layers import Dense, Activation\n",
    "\n",
    "# Creating a model\n",
    "model = Sequential()\n",
    "\n",
    "# Adding layers to this model\n",
    "# 1st Hidden layer\n",
    "# A Dense/fully-connected layer which takes as input a \n",
    "# feature array of shape (samples, num_features)\n",
    "# Here input_shape = (8,) means that the layer expects an input with num_features = 8 \n",
    "# and the sample size could be anything\n",
    "# Then we specify an activation function\n",
    "model.add(Dense(units=4, input_shape=(8,)))\n",
    "model.add(Activation(\"relu\"))\n",
    "\n",
    "# 2nd Hidden layer\n",
    "# This is also a fully-connected layer and we do not need to specify the\n",
    "# shape of the input anymore (We need to do that only for the first layer)\n",
    "# NOTE: Now we didn't add the activation seperately. Instead we just added it\n",
    "# while calling Dense(). This and the way used for the first layer are Equivalent!\n",
    "model.add(Dense(units=4, activation=\"relu\"))\n",
    "\n",
    "          \n",
    "# The output layer\n",
    "model.add(Dense(units=1))\n",
    "model.add(Activation(\"sigmoid\"))\n",
    "\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Fitting the model "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**TO DO: Move the MNIST example after the previous dataset examples**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### MNIST Dataset\n",
    "\n",
    "MNIST datasets is a very common dataset used in machine learning. It is widely used to train and validate models.\n",
    "\n",
    "\n",
    ">The MNIST database of handwritten digits, available from this page, has a training set of 60,000 examples, and a >test set of 10,000 examples. It is a subset of a larger set available from NIST. The digits have been size->normalized and centered in a fixed-size image.\n",
    ">It is a good database for people who want to try learning techniques and pattern recognition methods on real-world >data while spending minimal efforts on preprocessing and formatting.\n",
    ">source: http://yann.lecun.com/exdb/mnist/\n",
    "\n",
    "The problem we want to solve using this dataset is: multi-class classification\n",
    "This dataset consists of images of handwritten digits between 0-9 and their corresponsing labels. We want to train a neural network which is able to predict the correct digit on the image. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 184,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Loading the dataset in keras\n",
    "# Later you can explore and play with other datasets with come with Keras\n",
    "from keras.datasets import mnist\n",
    "\n",
    "# Loading the train and test data\n",
    "\n",
    "(X_train, y_train), (X_test, y_test) = mnist.load_data()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 185,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(60000, 28, 28)\n"
     ]
    }
   ],
   "source": [
    "# Looking at the dataset\n",
    "print(X_train.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 186,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "This digit is:  8\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fe8e68579e8>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 250,
       "width": 253
      },
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# We can see that the training set consists of 60,000 images of size 28x28 pixels\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "i=np.random.randint(0,X_train.shape[0])\n",
    "plt.imshow(X_train[i], cmap=\"gray_r\") ;\n",
    "print(\"This digit is: \" , y_train[i])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 187,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   3  18  18  18 126 136\n",
      "  175  26 166 255 247 127   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0  30  36  94 154 170 253 253 253 253 253\n",
      "  225 172 253 242 195  64   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0  49 238 253 253 253 253 253 253 253 253 251\n",
      "   93  82  82  56  39   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0  18 219 253 253 253 253 253 198 182 247 241\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0  80 156 107 253 253 205  11   0  43 154\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0  14   1 154 253  90   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0 139 253 190   2   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0  11 190 253  70   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0  35 241 225 160 108   1\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0  81 240 253 253 119\n",
      "   25   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0  45 186 253 253\n",
      "  150  27   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0  16  93 252\n",
      "  253 187   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 249\n",
      "  253 249  64   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0  46 130 183 253\n",
      "  253 207   2   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0  39 148 229 253 253 253\n",
      "  250 182   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0  24 114 221 253 253 253 253 201\n",
      "   78   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0  23  66 213 253 253 253 253 198  81   2\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0  18 171 219 253 253 253 253 195  80   9   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0  55 172 226 253 253 253 253 244 133  11   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0 136 253 253 253 212 135 132  16   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]\n",
      " [  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0\n",
      "    0   0   0   0   0   0   0   0   0   0]]\n"
     ]
    }
   ],
   "source": [
    "# Look at the data values for a couple of images\n",
    "print(X_train[0])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The data consists of values between 0-255 representing the **grayscale level**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 188,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(60000,)\n"
     ]
    }
   ],
   "source": [
    "# The labels are the digit on the image\n",
    "print(y_train.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 190,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Scaling the data\n",
    "# It is important to normalize the input data to (0-1) before providing it to a neural net\n",
    "# We could use the previously introduced function from SciKit learn. However, here it is sufficient to\n",
    "# just divide the input data by 255\n",
    "X_train_norm = X_train/255.\n",
    "X_test_norm = X_test/255.\n",
    "\n",
    "# Also we need to reshape the input data such that each sample is a vector and not a 2D matrix\n",
    "X_train_prep = X_train_norm.reshape(X_train_norm.shape[0],28*28)\n",
    "X_test_prep = X_test_norm.reshape(X_test_norm.shape[0],28*28)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**IMPORTANT: One-Hot encoding**\n",
    "\n",
    "**TODO: Better frame the explaination**\n",
    "In such problems the labels are provided as something called **One-hot encodings**. What this does is to convert a categorical label to a vector.\n",
    "\n",
    "For the MNIST problem where we have **10 categories** one-hot encoding will create a vector of length 10 for each of the labels. All the entries of this vector will be zero **except** for the index which is equal to the integer value of the label.\n",
    "\n",
    "For example:\n",
    "if label is 4. The one-hot vector will look like **[0 0 0 0 1 0 0 0 0 0]**\n",
    "\n",
    "Fortunately, we don't have to code this ourselves because Keras has a built-in function for this."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 191,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(60000, 10)\n"
     ]
    }
   ],
   "source": [
    "from keras.utils.np_utils import to_categorical\n",
    "\n",
    "y_train_onehot = to_categorical(y_train, num_classes=10)\n",
    "y_test_onehot = to_categorical(y_test, num_classes=10)\n",
    "\n",
    "print(y_train_onehot.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 194,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/20\n",
      "60000/60000 [==============================] - 2s 34us/step - loss: 0.5888 - acc: 0.8434\n",
      "Epoch 2/20\n",
      "60000/60000 [==============================] - 1s 20us/step - loss: 0.2569 - acc: 0.9267\n",
      "Epoch 3/20\n",
      "60000/60000 [==============================] - 1s 16us/step - loss: 0.2024 - acc: 0.9416\n",
      "Epoch 4/20\n",
      "60000/60000 [==============================] - 1s 17us/step - loss: 0.1706 - acc: 0.9497\n",
      "Epoch 5/20\n",
      "60000/60000 [==============================] - 1s 23us/step - loss: 0.1475 - acc: 0.9563\n",
      "Epoch 6/20\n",
      "60000/60000 [==============================] - 1s 20us/step - loss: 0.1290 - acc: 0.9627\n",
      "Epoch 7/20\n",
      "60000/60000 [==============================] - 1s 23us/step - loss: 0.1162 - acc: 0.9651\n",
      "Epoch 8/20\n",
      "60000/60000 [==============================] - 1s 19us/step - loss: 0.1035 - acc: 0.9691\n",
      "Epoch 9/20\n",
      "60000/60000 [==============================] - 2s 28us/step - loss: 0.0939 - acc: 0.9716\n",
      "Epoch 10/20\n",
      "60000/60000 [==============================] - 1s 22us/step - loss: 0.0848 - acc: 0.9743\n",
      "Epoch 11/20\n",
      "60000/60000 [==============================] - 1s 25us/step - loss: 0.0777 - acc: 0.9763\n",
      "Epoch 12/20\n",
      "60000/60000 [==============================] - 1s 20us/step - loss: 0.0720 - acc: 0.9780\n",
      "Epoch 13/20\n",
      "60000/60000 [==============================] - 1s 22us/step - loss: 0.0655 - acc: 0.9808\n",
      "Epoch 14/20\n",
      "60000/60000 [==============================] - 2s 30us/step - loss: 0.0610 - acc: 0.9817\n",
      "Epoch 15/20\n",
      "60000/60000 [==============================] - 1s 16us/step - loss: 0.0563 - acc: 0.9832\n",
      "Epoch 16/20\n",
      "60000/60000 [==============================] - 1s 20us/step - loss: 0.0527 - acc: 0.9842\n",
      "Epoch 17/20\n",
      "60000/60000 [==============================] - 1s 21us/step - loss: 0.0478 - acc: 0.9854\n",
      "Epoch 18/20\n",
      "60000/60000 [==============================] - 1s 15us/step - loss: 0.0453 - acc: 0.9864\n",
      "Epoch 19/20\n",
      "60000/60000 [==============================] - 1s 18us/step - loss: 0.0419 - acc: 0.9874\n",
      "Epoch 20/20\n",
      "60000/60000 [==============================] - 1s 20us/step - loss: 0.0387 - acc: 0.9885\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<keras.callbacks.History at 0x7fe8e7465438>"
      ]
     },
     "execution_count": 194,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Building the keras model\n",
    "from keras.models import Sequential\n",
    "from keras.layers import Dense\n",
    "\n",
    "model = Sequential()\n",
    "\n",
    "model.add(Dense(64,input_shape=(28*28,), activation=\"relu\"))\n",
    "\n",
    "model.add(Dense(64, activation = \"relu\"))\n",
    "\n",
    "model.add(Dense(10, activation = \"softmax\"))\n",
    "\n",
    "model.compile(loss=\"categorical_crossentropy\", optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n",
    "\n",
    "model_history = model.fit(X_train_prep, y_train_cat, epochs=20, batch_size=512);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 196,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "10000/10000 [==============================] - 1s 85us/step\n",
      "The [loss, accuracy] are:  [0.08737125840586377, 0.974]\n"
     ]
    }
   ],
   "source": [
    "# Evaluating the model on test dataset\n",
    "print(\"The [loss, accuracy] on test dataset are: \" , model.evaluate(X_test_prep, y_test_onehot))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Work in Progress\n",
    "\n",
    "## Network results on dataset used in previous notebooks"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "from sklearn.model_selection import train_test_split\n",
    "from keras.models import Sequential\n",
    "from keras.layers import Dense\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Creating a network to solve the XOR problem\n",
    "# Loading and plotting the data\n",
    "xor = pd.read_csv(\"xor.csv\")\n",
    "xv = xor[\"x\"]\n",
    "yv = xor[\"y\"]\n",
    "\n",
    "colors = [[\"steelblue\", \"chocolate\"][i] for i in xor[\"label\"]]\n",
    "plt.figure(figsize=(5, 5))\n",
    "plt.xlim([-2, 2])\n",
    "plt.ylim([-2, 2])\n",
    "plt.title(\"Blue points are False\")\n",
    "\n",
    "\n",
    "plt.scatter(xv, yv, color=colors, marker=\"o\");"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Using x and y coordinates as featues\n",
    "features = xor.iloc[:, :-1]\n",
    "# Convert boolean to integer values (True->1 and False->0)\n",
    "labels = xor.iloc[:, -1].astype(int)\n",
    "\n",
    "# Building a Keras model\n",
    "\n",
    "def a_simple_NN():\n",
    "    \n",
    "    model = Sequential()\n",
    "\n",
    "    model.add(Dense(4, input_shape = (2,), activation = \"relu\"))\n",
    "\n",
    "    model.add(Dense(4, activation = \"relu\"))\n",
    "\n",
    "    model.add(Dense(1, activation = \"sigmoid\"))\n",
    "\n",
    "    model.compile(loss=\"binary_crossentropy\", optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n",
    "    \n",
    "    return model\n",
    "\n",
    "model = a_simple_NN()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 350 samples, validate on 150 samples\n",
      "Epoch 1/100\n",
      "350/350 [==============================] - 0s 83us/step - loss: 0.3633 - acc: 0.7457 - val_loss: 0.3889 - val_acc: 0.7733\n",
      "Epoch 2/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3632 - acc: 0.7457 - val_loss: 0.3894 - val_acc: 0.7733\n",
      "Epoch 3/100\n",
      "350/350 [==============================] - 0s 150us/step - loss: 0.3629 - acc: 0.7429 - val_loss: 0.3898 - val_acc: 0.7667\n",
      "Epoch 4/100\n",
      "350/350 [==============================] - 0s 75us/step - loss: 0.3627 - acc: 0.7429 - val_loss: 0.3903 - val_acc: 0.7667\n",
      "Epoch 5/100\n",
      "350/350 [==============================] - 0s 80us/step - loss: 0.3626 - acc: 0.7457 - val_loss: 0.3904 - val_acc: 0.7667\n",
      "Epoch 6/100\n",
      "350/350 [==============================] - 0s 108us/step - loss: 0.3627 - acc: 0.7457 - val_loss: 0.3905 - val_acc: 0.7667\n",
      "Epoch 7/100\n",
      "350/350 [==============================] - 0s 103us/step - loss: 0.3627 - acc: 0.7457 - val_loss: 0.3906 - val_acc: 0.7667\n",
      "Epoch 8/100\n",
      "350/350 [==============================] - 0s 91us/step - loss: 0.3625 - acc: 0.7457 - val_loss: 0.3909 - val_acc: 0.7667\n",
      "Epoch 9/100\n",
      "350/350 [==============================] - 0s 88us/step - loss: 0.3625 - acc: 0.7457 - val_loss: 0.3912 - val_acc: 0.7667\n",
      "Epoch 10/100\n",
      "350/350 [==============================] - 0s 97us/step - loss: 0.3627 - acc: 0.7457 - val_loss: 0.3912 - val_acc: 0.7667\n",
      "Epoch 11/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3627 - acc: 0.7457 - val_loss: 0.3912 - val_acc: 0.7667\n",
      "Epoch 12/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3914 - val_acc: 0.7667\n",
      "Epoch 13/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3626 - acc: 0.7457 - val_loss: 0.3916 - val_acc: 0.7667\n",
      "Epoch 14/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3626 - acc: 0.7457 - val_loss: 0.3917 - val_acc: 0.7667\n",
      "Epoch 15/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3627 - acc: 0.7457 - val_loss: 0.3916 - val_acc: 0.7667\n",
      "Epoch 16/100\n",
      "350/350 [==============================] - 0s 106us/step - loss: 0.3625 - acc: 0.7486 - val_loss: 0.3915 - val_acc: 0.7667\n",
      "Epoch 17/100\n",
      "350/350 [==============================] - 0s 102us/step - loss: 0.3625 - acc: 0.7457 - val_loss: 0.3917 - val_acc: 0.7667\n",
      "Epoch 18/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3919 - val_acc: 0.7667\n",
      "Epoch 19/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3624 - acc: 0.7457 - val_loss: 0.3918 - val_acc: 0.7667\n",
      "Epoch 20/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3626 - acc: 0.7486 - val_loss: 0.3920 - val_acc: 0.7667\n",
      "Epoch 21/100\n",
      "350/350 [==============================] - 0s 105us/step - loss: 0.3624 - acc: 0.7486 - val_loss: 0.3920 - val_acc: 0.7667\n",
      "Epoch 22/100\n",
      "350/350 [==============================] - 0s 95us/step - loss: 0.3622 - acc: 0.7457 - val_loss: 0.3919 - val_acc: 0.7667\n",
      "Epoch 23/100\n",
      "350/350 [==============================] - 0s 102us/step - loss: 0.3624 - acc: 0.7486 - val_loss: 0.3920 - val_acc: 0.7667\n",
      "Epoch 24/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3920 - val_acc: 0.7667\n",
      "Epoch 25/100\n",
      "350/350 [==============================] - 0s 105us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3922 - val_acc: 0.7667\n",
      "Epoch 26/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3923 - val_acc: 0.7667\n",
      "Epoch 27/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3624 - acc: 0.7486 - val_loss: 0.3923 - val_acc: 0.7667\n",
      "Epoch 28/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3622 - acc: 0.7486 - val_loss: 0.3921 - val_acc: 0.7667\n",
      "Epoch 29/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3621 - acc: 0.7486 - val_loss: 0.3921 - val_acc: 0.7667\n",
      "Epoch 30/100\n",
      "350/350 [==============================] - 0s 90us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3923 - val_acc: 0.7667\n",
      "Epoch 31/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3622 - acc: 0.7486 - val_loss: 0.3924 - val_acc: 0.7667\n",
      "Epoch 32/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3622 - acc: 0.7486 - val_loss: 0.3925 - val_acc: 0.7667\n",
      "Epoch 33/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3623 - acc: 0.7486 - val_loss: 0.3926 - val_acc: 0.7667\n",
      "Epoch 34/100\n",
      "350/350 [==============================] - 0s 91us/step - loss: 0.3620 - acc: 0.7486 - val_loss: 0.3927 - val_acc: 0.7667\n",
      "Epoch 35/100\n",
      "350/350 [==============================] - 0s 85us/step - loss: 0.3621 - acc: 0.7486 - val_loss: 0.3927 - val_acc: 0.7667\n",
      "Epoch 36/100\n",
      "350/350 [==============================] - 0s 112us/step - loss: 0.3622 - acc: 0.7486 - val_loss: 0.3926 - val_acc: 0.7667\n",
      "Epoch 37/100\n",
      "350/350 [==============================] - 0s 87us/step - loss: 0.3621 - acc: 0.7486 - val_loss: 0.3926 - val_acc: 0.7667\n",
      "Epoch 38/100\n",
      "350/350 [==============================] - 0s 122us/step - loss: 0.3620 - acc: 0.7486 - val_loss: 0.3927 - val_acc: 0.7667\n",
      "Epoch 39/100\n",
      "350/350 [==============================] - 0s 87us/step - loss: 0.3620 - acc: 0.7457 - val_loss: 0.3926 - val_acc: 0.7667\n",
      "Epoch 40/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3620 - acc: 0.7486 - val_loss: 0.3928 - val_acc: 0.7667\n",
      "Epoch 41/100\n",
      "350/350 [==============================] - 0s 80us/step - loss: 0.3618 - acc: 0.7457 - val_loss: 0.3929 - val_acc: 0.7667\n",
      "Epoch 42/100\n",
      "350/350 [==============================] - 0s 82us/step - loss: 0.3622 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 43/100\n",
      "350/350 [==============================] - 0s 100us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 44/100\n",
      "350/350 [==============================] - 0s 111us/step - loss: 0.3619 - acc: 0.7486 - val_loss: 0.3931 - val_acc: 0.7667\n",
      "Epoch 45/100\n",
      "350/350 [==============================] - 0s 80us/step - loss: 0.3621 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 46/100\n",
      "350/350 [==============================] - 0s 104us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3931 - val_acc: 0.7667\n",
      "Epoch 47/100\n",
      "350/350 [==============================] - 0s 88us/step - loss: 0.3619 - acc: 0.7486 - val_loss: 0.3931 - val_acc: 0.7667\n",
      "Epoch 48/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3621 - acc: 0.7486 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 49/100\n",
      "350/350 [==============================] - 0s 98us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 50/100\n",
      "350/350 [==============================] - 0s 104us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 51/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3618 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 52/100\n",
      "350/350 [==============================] - 0s 103us/step - loss: 0.3620 - acc: 0.7486 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 53/100\n",
      "350/350 [==============================] - 0s 101us/step - loss: 0.3618 - acc: 0.7486 - val_loss: 0.3931 - val_acc: 0.7667\n",
      "Epoch 54/100\n",
      "350/350 [==============================] - 0s 91us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3931 - val_acc: 0.7667\n",
      "Epoch 55/100\n",
      "350/350 [==============================] - 0s 102us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 56/100\n",
      "350/350 [==============================] - 0s 86us/step - loss: 0.3618 - acc: 0.7486 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 57/100\n",
      "350/350 [==============================] - 0s 86us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3929 - val_acc: 0.7667\n",
      "Epoch 58/100\n",
      "350/350 [==============================] - 0s 97us/step - loss: 0.3620 - acc: 0.7457 - val_loss: 0.3930 - val_acc: 0.7667\n",
      "Epoch 59/100\n",
      "350/350 [==============================] - 0s 78us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3932 - val_acc: 0.7667\n",
      "Epoch 60/100\n",
      "350/350 [==============================] - 0s 95us/step - loss: 0.3618 - acc: 0.7486 - val_loss: 0.3932 - val_acc: 0.7667\n",
      "Epoch 61/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "350/350 [==============================] - 0s 88us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3932 - val_acc: 0.7667\n",
      "Epoch 62/100\n",
      "350/350 [==============================] - 0s 97us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3933 - val_acc: 0.7667\n",
      "Epoch 63/100\n",
      "350/350 [==============================] - 0s 106us/step - loss: 0.3617 - acc: 0.7457 - val_loss: 0.3935 - val_acc: 0.7667\n",
      "Epoch 64/100\n",
      "350/350 [==============================] - 0s 95us/step - loss: 0.3619 - acc: 0.7457 - val_loss: 0.3936 - val_acc: 0.7667\n",
      "Epoch 65/100\n",
      "350/350 [==============================] - 0s 101us/step - loss: 0.3618 - acc: 0.7457 - val_loss: 0.3936 - val_acc: 0.7667\n",
      "Epoch 66/100\n",
      "350/350 [==============================] - 0s 91us/step - loss: 0.3617 - acc: 0.7486 - val_loss: 0.3937 - val_acc: 0.7667\n",
      "Epoch 67/100\n",
      "350/350 [==============================] - 0s 98us/step - loss: 0.3616 - acc: 0.7486 - val_loss: 0.3937 - val_acc: 0.7667\n",
      "Epoch 68/100\n",
      "350/350 [==============================] - 0s 93us/step - loss: 0.3618 - acc: 0.7457 - val_loss: 0.3939 - val_acc: 0.7667\n",
      "Epoch 69/100\n",
      "350/350 [==============================] - 0s 84us/step - loss: 0.3617 - acc: 0.7457 - val_loss: 0.3938 - val_acc: 0.7667\n",
      "Epoch 70/100\n",
      "350/350 [==============================] - 0s 90us/step - loss: 0.3617 - acc: 0.7457 - val_loss: 0.3939 - val_acc: 0.7667\n",
      "Epoch 71/100\n",
      "350/350 [==============================] - 0s 98us/step - loss: 0.3617 - acc: 0.7457 - val_loss: 0.3939 - val_acc: 0.7667\n",
      "Epoch 72/100\n",
      "350/350 [==============================] - 0s 90us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3938 - val_acc: 0.7667\n",
      "Epoch 73/100\n",
      "350/350 [==============================] - 0s 89us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3941 - val_acc: 0.7667\n",
      "Epoch 74/100\n",
      "350/350 [==============================] - 0s 95us/step - loss: 0.3615 - acc: 0.7486 - val_loss: 0.3945 - val_acc: 0.7667\n",
      "Epoch 75/100\n",
      "350/350 [==============================] - 0s 90us/step - loss: 0.3614 - acc: 0.7457 - val_loss: 0.3942 - val_acc: 0.7667\n",
      "Epoch 76/100\n",
      "350/350 [==============================] - 0s 81us/step - loss: 0.3617 - acc: 0.7486 - val_loss: 0.3940 - val_acc: 0.7667\n",
      "Epoch 77/100\n",
      "350/350 [==============================] - 0s 91us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3941 - val_acc: 0.7667\n",
      "Epoch 78/100\n",
      "350/350 [==============================] - 0s 103us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3943 - val_acc: 0.7667\n",
      "Epoch 79/100\n",
      "350/350 [==============================] - 0s 65us/step - loss: 0.3616 - acc: 0.7486 - val_loss: 0.3945 - val_acc: 0.7667\n",
      "Epoch 80/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3617 - acc: 0.7457 - val_loss: 0.3945 - val_acc: 0.7667\n",
      "Epoch 81/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 82/100\n",
      "350/350 [==============================] - 0s 95us/step - loss: 0.3617 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 83/100\n",
      "350/350 [==============================] - 0s 107us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3946 - val_acc: 0.7667\n",
      "Epoch 84/100\n",
      "350/350 [==============================] - 0s 93us/step - loss: 0.3614 - acc: 0.7486 - val_loss: 0.3947 - val_acc: 0.7667\n",
      "Epoch 85/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3614 - acc: 0.7457 - val_loss: 0.3943 - val_acc: 0.7667\n",
      "Epoch 86/100\n",
      "350/350 [==============================] - 0s 102us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 87/100\n",
      "350/350 [==============================] - 0s 91us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3945 - val_acc: 0.7667\n",
      "Epoch 88/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3614 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 89/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 90/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 91/100\n",
      "350/350 [==============================] - 0s 93us/step - loss: 0.3615 - acc: 0.7429 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 92/100\n",
      "350/350 [==============================] - 0s 90us/step - loss: 0.3618 - acc: 0.7457 - val_loss: 0.3943 - val_acc: 0.7667\n",
      "Epoch 93/100\n",
      "350/350 [==============================] - 0s 74us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3943 - val_acc: 0.7667\n",
      "Epoch 94/100\n",
      "350/350 [==============================] - 0s 94us/step - loss: 0.3614 - acc: 0.7486 - val_loss: 0.3942 - val_acc: 0.7667\n",
      "Epoch 95/100\n",
      "350/350 [==============================] - 0s 96us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3943 - val_acc: 0.7667\n",
      "Epoch 96/100\n",
      "350/350 [==============================] - 0s 99us/step - loss: 0.3613 - acc: 0.7457 - val_loss: 0.3943 - val_acc: 0.7667\n",
      "Epoch 97/100\n",
      "350/350 [==============================] - 0s 98us/step - loss: 0.3616 - acc: 0.7457 - val_loss: 0.3945 - val_acc: 0.7667\n",
      "Epoch 98/100\n",
      "350/350 [==============================] - 0s 93us/step - loss: 0.3615 - acc: 0.7457 - val_loss: 0.3945 - val_acc: 0.7667\n",
      "Epoch 99/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3612 - acc: 0.7486 - val_loss: 0.3944 - val_acc: 0.7667\n",
      "Epoch 100/100\n",
      "350/350 [==============================] - 0s 92us/step - loss: 0.3614 - acc: 0.7457 - val_loss: 0.3944 - val_acc: 0.7667\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Here we split the dataset into training (80%) and validation sets (20%) \n",
    "X_train, X_test, y_train, y_test = train_test_split(features, labels, test_size=0.3)\n",
    "\n",
    "num_epochs = 100\n",
    "\n",
    "model_run = model.fit(X_train, y_train, epochs=num_epochs, validation_data = (X_test,y_test))\n",
    "\n",
    "history_model = model_run.history\n",
    "\n",
    "plt.plot(np.arange(1,num_epochs+1)[5:], history_model[\"acc\"][5:], \"--\") ;\n",
    "\n",
    "plt.plot(np.arange(1,num_epochs+1)[5:], history_model[\"val_acc\"][5:]) ;"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Using SciKit learn functions on Keras models\n",
    "\n",
    "As we have seen from the previous chapters, SciKit learn offers very handy functions for evaluating and tuning the machine learning models.\n",
    "\n",
    "So the question is: Can we somehow use those functions with the models we build in Keras?\n",
    "\n",
    "The Answer is **YES !**\n",
    "\n",
    "Keras offers wrappers which allow its Sequential models to be used with SciKit learn. There 2 such wrappers: **KerasClassifier** and **KerasRegressor**.\n",
    "\n",
    "For more information:\n",
    "https://keras.io/scikit-learn-api/\n",
    "\n",
    "**Now lets see how this works!**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/100\n",
      "280/280 [==============================] - 1s 3ms/step - loss: 0.9489 - acc: 0.3321\n",
      "Epoch 2/100\n",
      "280/280 [==============================] - 0s 98us/step - loss: 0.9255 - acc: 0.3321\n",
      "Epoch 3/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.9084 - acc: 0.3429\n",
      "Epoch 4/100\n",
      "280/280 [==============================] - 0s 141us/step - loss: 0.8940 - acc: 0.3357\n",
      "Epoch 5/100\n",
      "280/280 [==============================] - 0s 117us/step - loss: 0.8808 - acc: 0.3464\n",
      "Epoch 6/100\n",
      "280/280 [==============================] - 0s 126us/step - loss: 0.8685 - acc: 0.3393\n",
      "Epoch 7/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.8571 - acc: 0.3357\n",
      "Epoch 8/100\n",
      "280/280 [==============================] - 0s 73us/step - loss: 0.8462 - acc: 0.3393\n",
      "Epoch 9/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.8360 - acc: 0.3321\n",
      "Epoch 10/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.8264 - acc: 0.3286\n",
      "Epoch 11/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.8170 - acc: 0.3321\n",
      "Epoch 12/100\n",
      "280/280 [==============================] - 0s 95us/step - loss: 0.8079 - acc: 0.3321\n",
      "Epoch 13/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.7991 - acc: 0.3321\n",
      "Epoch 14/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.7907 - acc: 0.3286\n",
      "Epoch 15/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.7828 - acc: 0.3393\n",
      "Epoch 16/100\n",
      "280/280 [==============================] - 0s 115us/step - loss: 0.7749 - acc: 0.3500\n",
      "Epoch 17/100\n",
      "280/280 [==============================] - 0s 84us/step - loss: 0.7673 - acc: 0.3536\n",
      "Epoch 18/100\n",
      "280/280 [==============================] - 0s 96us/step - loss: 0.7602 - acc: 0.3536\n",
      "Epoch 19/100\n",
      "280/280 [==============================] - 0s 112us/step - loss: 0.7535 - acc: 0.3571\n",
      "Epoch 20/100\n",
      "280/280 [==============================] - 0s 110us/step - loss: 0.7468 - acc: 0.3643\n",
      "Epoch 21/100\n",
      "280/280 [==============================] - 0s 100us/step - loss: 0.7405 - acc: 0.3750\n",
      "Epoch 22/100\n",
      "280/280 [==============================] - 0s 99us/step - loss: 0.7345 - acc: 0.3821\n",
      "Epoch 23/100\n",
      "280/280 [==============================] - 0s 98us/step - loss: 0.7290 - acc: 0.3893\n",
      "Epoch 24/100\n",
      "280/280 [==============================] - 0s 107us/step - loss: 0.7235 - acc: 0.3857\n",
      "Epoch 25/100\n",
      "280/280 [==============================] - 0s 84us/step - loss: 0.7184 - acc: 0.3893\n",
      "Epoch 26/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.7134 - acc: 0.3893\n",
      "Epoch 27/100\n",
      "280/280 [==============================] - 0s 96us/step - loss: 0.7084 - acc: 0.4036\n",
      "Epoch 28/100\n",
      "280/280 [==============================] - 0s 108us/step - loss: 0.7037 - acc: 0.4071\n",
      "Epoch 29/100\n",
      "280/280 [==============================] - 0s 99us/step - loss: 0.6993 - acc: 0.4107\n",
      "Epoch 30/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.6951 - acc: 0.4250\n",
      "Epoch 31/100\n",
      "280/280 [==============================] - 0s 105us/step - loss: 0.6908 - acc: 0.4321\n",
      "Epoch 32/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6867 - acc: 0.4464\n",
      "Epoch 33/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.6826 - acc: 0.4607\n",
      "Epoch 34/100\n",
      "280/280 [==============================] - 0s 109us/step - loss: 0.6785 - acc: 0.4714\n",
      "Epoch 35/100\n",
      "280/280 [==============================] - 0s 98us/step - loss: 0.6746 - acc: 0.5071\n",
      "Epoch 36/100\n",
      "280/280 [==============================] - 0s 88us/step - loss: 0.6708 - acc: 0.5179\n",
      "Epoch 37/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6670 - acc: 0.5250\n",
      "Epoch 38/100\n",
      "280/280 [==============================] - 0s 106us/step - loss: 0.6634 - acc: 0.5286\n",
      "Epoch 39/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6599 - acc: 0.5429\n",
      "Epoch 40/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6563 - acc: 0.5643\n",
      "Epoch 41/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6529 - acc: 0.5857\n",
      "Epoch 42/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6495 - acc: 0.6071\n",
      "Epoch 43/100\n",
      "280/280 [==============================] - 0s 99us/step - loss: 0.6461 - acc: 0.6107\n",
      "Epoch 44/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6426 - acc: 0.6143\n",
      "Epoch 45/100\n",
      "280/280 [==============================] - 0s 92us/step - loss: 0.6390 - acc: 0.6500\n",
      "Epoch 46/100\n",
      "280/280 [==============================] - 0s 101us/step - loss: 0.6355 - acc: 0.6679\n",
      "Epoch 47/100\n",
      "280/280 [==============================] - 0s 103us/step - loss: 0.6321 - acc: 0.6821\n",
      "Epoch 48/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.6287 - acc: 0.6893\n",
      "Epoch 49/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6254 - acc: 0.6964\n",
      "Epoch 50/100\n",
      "280/280 [==============================] - 0s 98us/step - loss: 0.6220 - acc: 0.7036\n",
      "Epoch 51/100\n",
      "280/280 [==============================] - 0s 92us/step - loss: 0.6185 - acc: 0.7107\n",
      "Epoch 52/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6152 - acc: 0.7250\n",
      "Epoch 53/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.6120 - acc: 0.7250\n",
      "Epoch 54/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6087 - acc: 0.7393\n",
      "Epoch 55/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.6057 - acc: 0.7286\n",
      "Epoch 56/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.6026 - acc: 0.7429\n",
      "Epoch 57/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.5995 - acc: 0.7393\n",
      "Epoch 58/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.5966 - acc: 0.7429\n",
      "Epoch 59/100\n",
      "280/280 [==============================] - 0s 81us/step - loss: 0.5934 - acc: 0.7536\n",
      "Epoch 60/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.5905 - acc: 0.7571\n",
      "Epoch 61/100\n",
      "280/280 [==============================] - 0s 87us/step - loss: 0.5878 - acc: 0.7571\n",
      "Epoch 62/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.5850 - acc: 0.7571\n",
      "Epoch 63/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.5823 - acc: 0.7571\n",
      "Epoch 64/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.5795 - acc: 0.7607\n",
      "Epoch 65/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.5766 - acc: 0.7536\n",
      "Epoch 66/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.5738 - acc: 0.7679\n",
      "Epoch 67/100\n",
      "280/280 [==============================] - 0s 87us/step - loss: 0.5714 - acc: 0.7679\n",
      "Epoch 68/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.5687 - acc: 0.7643\n",
      "Epoch 69/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.5662 - acc: 0.7679\n",
      "Epoch 70/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.5635 - acc: 0.7714\n",
      "Epoch 71/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.5610 - acc: 0.7714\n",
      "Epoch 72/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.5583 - acc: 0.7750\n",
      "Epoch 73/100\n",
      "280/280 [==============================] - 0s 100us/step - loss: 0.5559 - acc: 0.7750\n",
      "Epoch 74/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.5533 - acc: 0.7750\n",
      "Epoch 75/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.5507 - acc: 0.7750\n",
      "Epoch 76/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.5482 - acc: 0.7714\n",
      "Epoch 77/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.5458 - acc: 0.7821\n",
      "Epoch 78/100\n",
      "280/280 [==============================] - 0s 87us/step - loss: 0.5434 - acc: 0.7786\n",
      "Epoch 79/100\n",
      "280/280 [==============================] - 0s 88us/step - loss: 0.5409 - acc: 0.7857\n",
      "Epoch 80/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.5387 - acc: 0.7893\n",
      "Epoch 81/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.5364 - acc: 0.7893\n",
      "Epoch 82/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.5341 - acc: 0.7893\n",
      "Epoch 83/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.5318 - acc: 0.7929\n",
      "Epoch 84/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "280/280 [==============================] - 0s 89us/step - loss: 0.5294 - acc: 0.7929\n",
      "Epoch 85/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.5271 - acc: 0.7929\n",
      "Epoch 86/100\n",
      "280/280 [==============================] - 0s 87us/step - loss: 0.5248 - acc: 0.7929\n",
      "Epoch 87/100\n",
      "280/280 [==============================] - 0s 88us/step - loss: 0.5223 - acc: 0.7929\n",
      "Epoch 88/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.5201 - acc: 0.7929\n",
      "Epoch 89/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.5179 - acc: 0.7893\n",
      "Epoch 90/100\n",
      "280/280 [==============================] - 0s 75us/step - loss: 0.5158 - acc: 0.7893\n",
      "Epoch 91/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.5135 - acc: 0.7893\n",
      "Epoch 92/100\n",
      "280/280 [==============================] - 0s 84us/step - loss: 0.5114 - acc: 0.7893\n",
      "Epoch 93/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.5091 - acc: 0.7929\n",
      "Epoch 94/100\n",
      "280/280 [==============================] - 0s 81us/step - loss: 0.5072 - acc: 0.7964\n",
      "Epoch 95/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.5050 - acc: 0.8000\n",
      "Epoch 96/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.5032 - acc: 0.7964\n",
      "Epoch 97/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.5012 - acc: 0.7964\n",
      "Epoch 98/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.4993 - acc: 0.7964\n",
      "Epoch 99/100\n",
      "280/280 [==============================] - 0s 104us/step - loss: 0.4976 - acc: 0.7929\n",
      "Epoch 100/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.4958 - acc: 0.7929\n",
      "70/70 [==============================] - 0s 3ms/step\n",
      "Epoch 1/100\n",
      "280/280 [==============================] - 1s 4ms/step - loss: 0.9036 - acc: 0.3107\n",
      "Epoch 2/100\n",
      "280/280 [==============================] - 0s 129us/step - loss: 0.8788 - acc: 0.2143\n",
      "Epoch 3/100\n",
      "280/280 [==============================] - 0s 100us/step - loss: 0.8610 - acc: 0.1821\n",
      "Epoch 4/100\n",
      "280/280 [==============================] - 0s 126us/step - loss: 0.8447 - acc: 0.1643\n",
      "Epoch 5/100\n",
      "280/280 [==============================] - 0s 104us/step - loss: 0.8288 - acc: 0.1750\n",
      "Epoch 6/100\n",
      "280/280 [==============================] - 0s 121us/step - loss: 0.8148 - acc: 0.1750\n",
      "Epoch 7/100\n",
      "280/280 [==============================] - 0s 123us/step - loss: 0.8015 - acc: 0.1786\n",
      "Epoch 8/100\n",
      "280/280 [==============================] - 0s 118us/step - loss: 0.7890 - acc: 0.1714\n",
      "Epoch 9/100\n",
      "280/280 [==============================] - 0s 101us/step - loss: 0.7776 - acc: 0.1786\n",
      "Epoch 10/100\n",
      "280/280 [==============================] - 0s 108us/step - loss: 0.7665 - acc: 0.1821\n",
      "Epoch 11/100\n",
      "280/280 [==============================] - 0s 111us/step - loss: 0.7560 - acc: 0.1964\n",
      "Epoch 12/100\n",
      "280/280 [==============================] - 0s 102us/step - loss: 0.7466 - acc: 0.2179\n",
      "Epoch 13/100\n",
      "280/280 [==============================] - 0s 110us/step - loss: 0.7379 - acc: 0.2357\n",
      "Epoch 14/100\n",
      "280/280 [==============================] - 0s 97us/step - loss: 0.7294 - acc: 0.2786\n",
      "Epoch 15/100\n",
      "280/280 [==============================] - 0s 100us/step - loss: 0.7220 - acc: 0.3036\n",
      "Epoch 16/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.7153 - acc: 0.3143\n",
      "Epoch 17/100\n",
      "280/280 [==============================] - 0s 80us/step - loss: 0.7096 - acc: 0.3607\n",
      "Epoch 18/100\n",
      "280/280 [==============================] - 0s 95us/step - loss: 0.7049 - acc: 0.3821\n",
      "Epoch 19/100\n",
      "280/280 [==============================] - 0s 112us/step - loss: 0.7008 - acc: 0.4107\n",
      "Epoch 20/100\n",
      "280/280 [==============================] - 0s 107us/step - loss: 0.6977 - acc: 0.4571\n",
      "Epoch 21/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6954 - acc: 0.4607\n",
      "Epoch 22/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.6936 - acc: 0.4714\n",
      "Epoch 23/100\n",
      "280/280 [==============================] - 0s 99us/step - loss: 0.6922 - acc: 0.4750\n",
      "Epoch 24/100\n",
      "280/280 [==============================] - 0s 84us/step - loss: 0.6908 - acc: 0.4821\n",
      "Epoch 25/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6896 - acc: 0.4821\n",
      "Epoch 26/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6886 - acc: 0.4857\n",
      "Epoch 27/100\n",
      "280/280 [==============================] - 0s 88us/step - loss: 0.6875 - acc: 0.4893\n",
      "Epoch 28/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.6864 - acc: 0.4964\n",
      "Epoch 29/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.6851 - acc: 0.4964\n",
      "Epoch 30/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.6838 - acc: 0.4964\n",
      "Epoch 31/100\n",
      "280/280 [==============================] - 0s 98us/step - loss: 0.6823 - acc: 0.4964\n",
      "Epoch 32/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6807 - acc: 0.4964\n",
      "Epoch 33/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6788 - acc: 0.4964\n",
      "Epoch 34/100\n",
      "280/280 [==============================] - 0s 87us/step - loss: 0.6770 - acc: 0.4964\n",
      "Epoch 35/100\n",
      "280/280 [==============================] - 0s 162us/step - loss: 0.6749 - acc: 0.4964\n",
      "Epoch 36/100\n",
      "280/280 [==============================] - 0s 112us/step - loss: 0.6728 - acc: 0.4964\n",
      "Epoch 37/100\n",
      "280/280 [==============================] - 0s 100us/step - loss: 0.6706 - acc: 0.4964\n",
      "Epoch 38/100\n",
      "280/280 [==============================] - 0s 97us/step - loss: 0.6683 - acc: 0.4964\n",
      "Epoch 39/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6661 - acc: 0.4964\n",
      "Epoch 40/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6638 - acc: 0.5071\n",
      "Epoch 41/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.6614 - acc: 0.6821\n",
      "Epoch 42/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6590 - acc: 0.6893\n",
      "Epoch 43/100\n",
      "280/280 [==============================] - 0s 67us/step - loss: 0.6566 - acc: 0.6821\n",
      "Epoch 44/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6542 - acc: 0.6821\n",
      "Epoch 45/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.6519 - acc: 0.6821\n",
      "Epoch 46/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6496 - acc: 0.6821\n",
      "Epoch 47/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.6473 - acc: 0.6964\n",
      "Epoch 48/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6449 - acc: 0.7071\n",
      "Epoch 49/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6425 - acc: 0.7000\n",
      "Epoch 50/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.6401 - acc: 0.7000\n",
      "Epoch 51/100\n",
      "280/280 [==============================] - 0s 75us/step - loss: 0.6377 - acc: 0.7071\n",
      "Epoch 52/100\n",
      "280/280 [==============================] - 0s 78us/step - loss: 0.6352 - acc: 0.7107\n",
      "Epoch 53/100\n",
      "280/280 [==============================] - 0s 75us/step - loss: 0.6326 - acc: 0.7107\n",
      "Epoch 54/100\n",
      "280/280 [==============================] - 0s 88us/step - loss: 0.6299 - acc: 0.7286\n",
      "Epoch 55/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.6273 - acc: 0.7214\n",
      "Epoch 56/100\n",
      "280/280 [==============================] - 0s 81us/step - loss: 0.6247 - acc: 0.7250\n",
      "Epoch 57/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.6221 - acc: 0.7429\n",
      "Epoch 58/100\n",
      "280/280 [==============================] - 0s 73us/step - loss: 0.6193 - acc: 0.7500\n",
      "Epoch 59/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.6166 - acc: 0.7571\n",
      "Epoch 60/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.6137 - acc: 0.7714\n",
      "Epoch 61/100\n",
      "280/280 [==============================] - 0s 71us/step - loss: 0.6107 - acc: 0.7679\n",
      "Epoch 62/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.6077 - acc: 0.7786\n",
      "Epoch 63/100\n",
      "280/280 [==============================] - 0s 70us/step - loss: 0.6047 - acc: 0.7893\n",
      "Epoch 64/100\n",
      "280/280 [==============================] - 0s 68us/step - loss: 0.6016 - acc: 0.7893\n",
      "Epoch 65/100\n",
      "280/280 [==============================] - 0s 67us/step - loss: 0.5985 - acc: 0.7929\n",
      "Epoch 66/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5952 - acc: 0.8000\n",
      "Epoch 67/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "280/280 [==============================] - 0s 76us/step - loss: 0.5920 - acc: 0.7964\n",
      "Epoch 68/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.5889 - acc: 0.8036\n",
      "Epoch 69/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.5857 - acc: 0.8000\n",
      "Epoch 70/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.5825 - acc: 0.8071\n",
      "Epoch 71/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.5792 - acc: 0.8071\n",
      "Epoch 72/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.5760 - acc: 0.8071\n",
      "Epoch 73/100\n",
      "280/280 [==============================] - 0s 95us/step - loss: 0.5726 - acc: 0.8143\n",
      "Epoch 74/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.5693 - acc: 0.8143\n",
      "Epoch 75/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.5660 - acc: 0.8143\n",
      "Epoch 76/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.5627 - acc: 0.8143\n",
      "Epoch 77/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.5593 - acc: 0.8179\n",
      "Epoch 78/100\n",
      "280/280 [==============================] - 0s 84us/step - loss: 0.5557 - acc: 0.8179\n",
      "Epoch 79/100\n",
      "280/280 [==============================] - 0s 73us/step - loss: 0.5522 - acc: 0.8393\n",
      "Epoch 80/100\n",
      "280/280 [==============================] - 0s 78us/step - loss: 0.5487 - acc: 0.8321\n",
      "Epoch 81/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5452 - acc: 0.8429\n",
      "Epoch 82/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.5417 - acc: 0.8464\n",
      "Epoch 83/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5382 - acc: 0.8464\n",
      "Epoch 84/100\n",
      "280/280 [==============================] - 0s 69us/step - loss: 0.5347 - acc: 0.8429\n",
      "Epoch 85/100\n",
      "280/280 [==============================] - 0s 73us/step - loss: 0.5312 - acc: 0.8500\n",
      "Epoch 86/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.5278 - acc: 0.8536\n",
      "Epoch 87/100\n",
      "280/280 [==============================] - 0s 88us/step - loss: 0.5243 - acc: 0.8571\n",
      "Epoch 88/100\n",
      "280/280 [==============================] - 0s 78us/step - loss: 0.5208 - acc: 0.8571\n",
      "Epoch 89/100\n",
      "280/280 [==============================] - 0s 86us/step - loss: 0.5174 - acc: 0.8571\n",
      "Epoch 90/100\n",
      "280/280 [==============================] - 0s 80us/step - loss: 0.5139 - acc: 0.8607\n",
      "Epoch 91/100\n",
      "280/280 [==============================] - 0s 78us/step - loss: 0.5105 - acc: 0.8643\n",
      "Epoch 92/100\n",
      "280/280 [==============================] - 0s 80us/step - loss: 0.5072 - acc: 0.8714\n",
      "Epoch 93/100\n",
      "280/280 [==============================] - 0s 71us/step - loss: 0.5039 - acc: 0.8714\n",
      "Epoch 94/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.5003 - acc: 0.8714\n",
      "Epoch 95/100\n",
      "280/280 [==============================] - 0s 142us/step - loss: 0.4969 - acc: 0.8750\n",
      "Epoch 96/100\n",
      "280/280 [==============================] - 0s 104us/step - loss: 0.4933 - acc: 0.8750\n",
      "Epoch 97/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.4899 - acc: 0.8750\n",
      "Epoch 98/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.4866 - acc: 0.8714\n",
      "Epoch 99/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.4836 - acc: 0.8714\n",
      "Epoch 100/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.4804 - acc: 0.8750\n",
      "70/70 [==============================] - 0s 3ms/step\n",
      "Epoch 1/100\n",
      "280/280 [==============================] - 1s 4ms/step - loss: 0.6613 - acc: 0.6929\n",
      "Epoch 2/100\n",
      "280/280 [==============================] - 0s 138us/step - loss: 0.6544 - acc: 0.7214\n",
      "Epoch 3/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.6492 - acc: 0.7357\n",
      "Epoch 4/100\n",
      "280/280 [==============================] - 0s 81us/step - loss: 0.6440 - acc: 0.7250\n",
      "Epoch 5/100\n",
      "280/280 [==============================] - 0s 73us/step - loss: 0.6389 - acc: 0.7321\n",
      "Epoch 6/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.6336 - acc: 0.7429\n",
      "Epoch 7/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.6283 - acc: 0.7429\n",
      "Epoch 8/100\n",
      "280/280 [==============================] - 0s 68us/step - loss: 0.6229 - acc: 0.7679\n",
      "Epoch 9/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6177 - acc: 0.7571\n",
      "Epoch 10/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6121 - acc: 0.7714\n",
      "Epoch 11/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.6066 - acc: 0.7714\n",
      "Epoch 12/100\n",
      "280/280 [==============================] - 0s 70us/step - loss: 0.6008 - acc: 0.7929\n",
      "Epoch 13/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.5951 - acc: 0.8036\n",
      "Epoch 14/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.5894 - acc: 0.8214\n",
      "Epoch 15/100\n",
      "280/280 [==============================] - 0s 69us/step - loss: 0.5839 - acc: 0.8250\n",
      "Epoch 16/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.5782 - acc: 0.8321\n",
      "Epoch 17/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5723 - acc: 0.8500\n",
      "Epoch 18/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5664 - acc: 0.8500\n",
      "Epoch 19/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5605 - acc: 0.8750\n",
      "Epoch 20/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.5541 - acc: 0.8821\n",
      "Epoch 21/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5475 - acc: 0.9000\n",
      "Epoch 22/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5411 - acc: 0.9000\n",
      "Epoch 23/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.5345 - acc: 0.9071\n",
      "Epoch 24/100\n",
      "280/280 [==============================] - 0s 56us/step - loss: 0.5279 - acc: 0.9107\n",
      "Epoch 25/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5212 - acc: 0.9071\n",
      "Epoch 26/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.5145 - acc: 0.9107\n",
      "Epoch 27/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.5076 - acc: 0.9214\n",
      "Epoch 28/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5007 - acc: 0.9179\n",
      "Epoch 29/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4937 - acc: 0.9143\n",
      "Epoch 30/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4867 - acc: 0.9179\n",
      "Epoch 31/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4795 - acc: 0.9143\n",
      "Epoch 32/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4725 - acc: 0.9143\n",
      "Epoch 33/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.4655 - acc: 0.9286\n",
      "Epoch 34/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.4587 - acc: 0.9286\n",
      "Epoch 35/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4517 - acc: 0.9357\n",
      "Epoch 36/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.4448 - acc: 0.9321\n",
      "Epoch 37/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.4379 - acc: 0.9357\n",
      "Epoch 38/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4310 - acc: 0.9321\n",
      "Epoch 39/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4244 - acc: 0.9321\n",
      "Epoch 40/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.4178 - acc: 0.9321\n",
      "Epoch 41/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.4112 - acc: 0.9321\n",
      "Epoch 42/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4048 - acc: 0.9321\n",
      "Epoch 43/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3985 - acc: 0.9321\n",
      "Epoch 44/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.3921 - acc: 0.9321\n",
      "Epoch 45/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.3860 - acc: 0.9321\n",
      "Epoch 46/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.3799 - acc: 0.9321\n",
      "Epoch 47/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.3742 - acc: 0.9321\n",
      "Epoch 48/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.3682 - acc: 0.9321\n",
      "Epoch 49/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3624 - acc: 0.9321\n",
      "Epoch 50/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "280/280 [==============================] - 0s 58us/step - loss: 0.3567 - acc: 0.9321\n",
      "Epoch 51/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3512 - acc: 0.9286\n",
      "Epoch 52/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3458 - acc: 0.9321\n",
      "Epoch 53/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3407 - acc: 0.9321\n",
      "Epoch 54/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.3355 - acc: 0.9321\n",
      "Epoch 55/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.3304 - acc: 0.9286\n",
      "Epoch 56/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3252 - acc: 0.9357\n",
      "Epoch 57/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.3201 - acc: 0.9286\n",
      "Epoch 58/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3152 - acc: 0.9321\n",
      "Epoch 59/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.3102 - acc: 0.9429\n",
      "Epoch 60/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.3055 - acc: 0.9321\n",
      "Epoch 61/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3011 - acc: 0.9357\n",
      "Epoch 62/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2967 - acc: 0.9393\n",
      "Epoch 63/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.2922 - acc: 0.9429\n",
      "Epoch 64/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2877 - acc: 0.9464\n",
      "Epoch 65/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2832 - acc: 0.9536\n",
      "Epoch 66/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2788 - acc: 0.9536\n",
      "Epoch 67/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2749 - acc: 0.9500\n",
      "Epoch 68/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2708 - acc: 0.9536\n",
      "Epoch 69/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2668 - acc: 0.9536\n",
      "Epoch 70/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2632 - acc: 0.9571\n",
      "Epoch 71/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2592 - acc: 0.9607\n",
      "Epoch 72/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.2555 - acc: 0.9536\n",
      "Epoch 73/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2518 - acc: 0.9607\n",
      "Epoch 74/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2484 - acc: 0.9571\n",
      "Epoch 75/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.2451 - acc: 0.9607\n",
      "Epoch 76/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2420 - acc: 0.9607\n",
      "Epoch 77/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.2385 - acc: 0.9607\n",
      "Epoch 78/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2352 - acc: 0.9607\n",
      "Epoch 79/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.2320 - acc: 0.9607\n",
      "Epoch 80/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2289 - acc: 0.9643\n",
      "Epoch 81/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.2258 - acc: 0.9643\n",
      "Epoch 82/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2230 - acc: 0.9679\n",
      "Epoch 83/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.2200 - acc: 0.9643\n",
      "Epoch 84/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.2169 - acc: 0.9679\n",
      "Epoch 85/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2141 - acc: 0.9643\n",
      "Epoch 86/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2113 - acc: 0.9679\n",
      "Epoch 87/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.2086 - acc: 0.9679\n",
      "Epoch 88/100\n",
      "280/280 [==============================] - 0s 56us/step - loss: 0.2057 - acc: 0.9679\n",
      "Epoch 89/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2036 - acc: 0.9679\n",
      "Epoch 90/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.2009 - acc: 0.9679\n",
      "Epoch 91/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.1983 - acc: 0.9679\n",
      "Epoch 92/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.1958 - acc: 0.9679\n",
      "Epoch 93/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.1935 - acc: 0.9714\n",
      "Epoch 94/100\n",
      "280/280 [==============================] - 0s 56us/step - loss: 0.1909 - acc: 0.9750\n",
      "Epoch 95/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.1889 - acc: 0.9714\n",
      "Epoch 96/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.1867 - acc: 0.9750\n",
      "Epoch 97/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.1844 - acc: 0.9714\n",
      "Epoch 98/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.1821 - acc: 0.9750\n",
      "Epoch 99/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.1798 - acc: 0.9714\n",
      "Epoch 100/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.1777 - acc: 0.9750\n",
      "70/70 [==============================] - 0s 3ms/step\n",
      "Epoch 1/100\n",
      "280/280 [==============================] - 1s 3ms/step - loss: 0.7067 - acc: 0.4179\n",
      "Epoch 2/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.7000 - acc: 0.4214\n",
      "Epoch 3/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6954 - acc: 0.3929\n",
      "Epoch 4/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6917 - acc: 0.3964\n",
      "Epoch 5/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6882 - acc: 0.4036\n",
      "Epoch 6/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6849 - acc: 0.4000\n",
      "Epoch 7/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6815 - acc: 0.4250\n",
      "Epoch 8/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6783 - acc: 0.4750\n",
      "Epoch 9/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.6751 - acc: 0.5250\n",
      "Epoch 10/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6717 - acc: 0.5714\n",
      "Epoch 11/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.6684 - acc: 0.5929\n",
      "Epoch 12/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6649 - acc: 0.6071\n",
      "Epoch 13/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.6613 - acc: 0.6179\n",
      "Epoch 14/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6575 - acc: 0.6464\n",
      "Epoch 15/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6535 - acc: 0.6607\n",
      "Epoch 16/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6494 - acc: 0.6750\n",
      "Epoch 17/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6451 - acc: 0.6714\n",
      "Epoch 18/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.6407 - acc: 0.6929\n",
      "Epoch 19/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6362 - acc: 0.7036\n",
      "Epoch 20/100\n",
      "280/280 [==============================] - 0s 65us/step - loss: 0.6316 - acc: 0.7143\n",
      "Epoch 21/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6268 - acc: 0.7286\n",
      "Epoch 22/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.6218 - acc: 0.7464\n",
      "Epoch 23/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6167 - acc: 0.7536\n",
      "Epoch 24/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.6114 - acc: 0.7643\n",
      "Epoch 25/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.6059 - acc: 0.7714\n",
      "Epoch 26/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.6001 - acc: 0.7929\n",
      "Epoch 27/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5945 - acc: 0.8036\n",
      "Epoch 28/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5887 - acc: 0.8179\n",
      "Epoch 29/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5827 - acc: 0.8321\n",
      "Epoch 30/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5765 - acc: 0.8393\n",
      "Epoch 31/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5700 - acc: 0.8393\n",
      "Epoch 32/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5634 - acc: 0.8429\n",
      "Epoch 33/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "280/280 [==============================] - 0s 60us/step - loss: 0.5570 - acc: 0.8464\n",
      "Epoch 34/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5505 - acc: 0.8536\n",
      "Epoch 35/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5442 - acc: 0.8500\n",
      "Epoch 36/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5379 - acc: 0.8464\n",
      "Epoch 37/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.5317 - acc: 0.8464\n",
      "Epoch 38/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5252 - acc: 0.8500\n",
      "Epoch 39/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5187 - acc: 0.8536\n",
      "Epoch 40/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5120 - acc: 0.8643\n",
      "Epoch 41/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5053 - acc: 0.8643\n",
      "Epoch 42/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4983 - acc: 0.8714\n",
      "Epoch 43/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4916 - acc: 0.8750\n",
      "Epoch 44/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4847 - acc: 0.8786\n",
      "Epoch 45/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4782 - acc: 0.8821\n",
      "Epoch 46/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4716 - acc: 0.8893\n",
      "Epoch 47/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.4650 - acc: 0.8893\n",
      "Epoch 48/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4586 - acc: 0.8893\n",
      "Epoch 49/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.4524 - acc: 0.9036\n",
      "Epoch 50/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4461 - acc: 0.9000\n",
      "Epoch 51/100\n",
      "280/280 [==============================] - 0s 67us/step - loss: 0.4399 - acc: 0.9000\n",
      "Epoch 52/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4335 - acc: 0.9000\n",
      "Epoch 53/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.4273 - acc: 0.9036\n",
      "Epoch 54/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4213 - acc: 0.9071\n",
      "Epoch 55/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4154 - acc: 0.9179\n",
      "Epoch 56/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4095 - acc: 0.9143\n",
      "Epoch 57/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.4038 - acc: 0.9214\n",
      "Epoch 58/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.3983 - acc: 0.9214\n",
      "Epoch 59/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3925 - acc: 0.9250\n",
      "Epoch 60/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3868 - acc: 0.9250\n",
      "Epoch 61/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3810 - acc: 0.9357\n",
      "Epoch 62/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3755 - acc: 0.9321\n",
      "Epoch 63/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.3703 - acc: 0.9429\n",
      "Epoch 64/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3650 - acc: 0.9500\n",
      "Epoch 65/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3602 - acc: 0.9357\n",
      "Epoch 66/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.3553 - acc: 0.9429\n",
      "Epoch 67/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.3506 - acc: 0.9536\n",
      "Epoch 68/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3462 - acc: 0.9464\n",
      "Epoch 69/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3418 - acc: 0.9464\n",
      "Epoch 70/100\n",
      "280/280 [==============================] - 0s 65us/step - loss: 0.3375 - acc: 0.9500\n",
      "Epoch 71/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3331 - acc: 0.9536\n",
      "Epoch 72/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3288 - acc: 0.9536\n",
      "Epoch 73/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.3244 - acc: 0.9571\n",
      "Epoch 74/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.3202 - acc: 0.9643\n",
      "Epoch 75/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3159 - acc: 0.9607\n",
      "Epoch 76/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3119 - acc: 0.9607\n",
      "Epoch 77/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.3080 - acc: 0.9607\n",
      "Epoch 78/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.3038 - acc: 0.9607\n",
      "Epoch 79/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.3001 - acc: 0.9607\n",
      "Epoch 80/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.2963 - acc: 0.9607\n",
      "Epoch 81/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2925 - acc: 0.9571\n",
      "Epoch 82/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.2888 - acc: 0.9643\n",
      "Epoch 83/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.2852 - acc: 0.9643\n",
      "Epoch 84/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.2815 - acc: 0.9679\n",
      "Epoch 85/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2782 - acc: 0.9643\n",
      "Epoch 86/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.2747 - acc: 0.9643\n",
      "Epoch 87/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.2716 - acc: 0.9643\n",
      "Epoch 88/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.2682 - acc: 0.9679\n",
      "Epoch 89/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.2651 - acc: 0.9679\n",
      "Epoch 90/100\n",
      "280/280 [==============================] - 0s 65us/step - loss: 0.2620 - acc: 0.9679\n",
      "Epoch 91/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.2592 - acc: 0.9679\n",
      "Epoch 92/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.2561 - acc: 0.9679\n",
      "Epoch 93/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.2533 - acc: 0.9714\n",
      "Epoch 94/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.2504 - acc: 0.9714\n",
      "Epoch 95/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.2474 - acc: 0.9714\n",
      "Epoch 96/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2449 - acc: 0.9714\n",
      "Epoch 97/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2424 - acc: 0.9679\n",
      "Epoch 98/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.2396 - acc: 0.9714\n",
      "Epoch 99/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.2371 - acc: 0.9750\n",
      "Epoch 100/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.2348 - acc: 0.9714\n",
      "70/70 [==============================] - 0s 3ms/step\n",
      "Epoch 1/100\n",
      "280/280 [==============================] - 1s 4ms/step - loss: 0.6880 - acc: 0.5214\n",
      "Epoch 2/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.6785 - acc: 0.5429\n",
      "Epoch 3/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.6711 - acc: 0.5679\n",
      "Epoch 4/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.6646 - acc: 0.6214\n",
      "Epoch 5/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.6586 - acc: 0.6429\n",
      "Epoch 6/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.6525 - acc: 0.6714\n",
      "Epoch 7/100\n",
      "280/280 [==============================] - 0s 80us/step - loss: 0.6468 - acc: 0.6821\n",
      "Epoch 8/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.6413 - acc: 0.6929\n",
      "Epoch 9/100\n",
      "280/280 [==============================] - 0s 82us/step - loss: 0.6358 - acc: 0.7107\n",
      "Epoch 10/100\n",
      "280/280 [==============================] - 0s 100us/step - loss: 0.6304 - acc: 0.7393\n",
      "Epoch 11/100\n",
      "280/280 [==============================] - 0s 93us/step - loss: 0.6249 - acc: 0.7607\n",
      "Epoch 12/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6196 - acc: 0.7750\n",
      "Epoch 13/100\n",
      "280/280 [==============================] - 0s 89us/step - loss: 0.6144 - acc: 0.7929\n",
      "Epoch 14/100\n",
      "280/280 [==============================] - 0s 94us/step - loss: 0.6095 - acc: 0.8000\n",
      "Epoch 15/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.6048 - acc: 0.8143\n",
      "Epoch 16/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "280/280 [==============================] - 0s 73us/step - loss: 0.6001 - acc: 0.8143\n",
      "Epoch 17/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5954 - acc: 0.8214\n",
      "Epoch 18/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5906 - acc: 0.8250\n",
      "Epoch 19/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.5860 - acc: 0.8179\n",
      "Epoch 20/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.5814 - acc: 0.8250\n",
      "Epoch 21/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.5769 - acc: 0.8250\n",
      "Epoch 22/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5724 - acc: 0.8214\n",
      "Epoch 23/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.5680 - acc: 0.8179\n",
      "Epoch 24/100\n",
      "280/280 [==============================] - 0s 80us/step - loss: 0.5634 - acc: 0.8107\n",
      "Epoch 25/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.5590 - acc: 0.8143\n",
      "Epoch 26/100\n",
      "280/280 [==============================] - 0s 96us/step - loss: 0.5550 - acc: 0.8107\n",
      "Epoch 27/100\n",
      "280/280 [==============================] - ETA: 0s - loss: 0.5588 - acc: 0.750 - 0s 79us/step - loss: 0.5508 - acc: 0.8071\n",
      "Epoch 28/100\n",
      "280/280 [==============================] - 0s 85us/step - loss: 0.5466 - acc: 0.8036\n",
      "Epoch 29/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.5425 - acc: 0.8071\n",
      "Epoch 30/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.5382 - acc: 0.8107\n",
      "Epoch 31/100\n",
      "280/280 [==============================] - 0s 75us/step - loss: 0.5341 - acc: 0.8071\n",
      "Epoch 32/100\n",
      "280/280 [==============================] - 0s 68us/step - loss: 0.5300 - acc: 0.8071\n",
      "Epoch 33/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.5259 - acc: 0.8071\n",
      "Epoch 34/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.5218 - acc: 0.8071\n",
      "Epoch 35/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.5176 - acc: 0.8107\n",
      "Epoch 36/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.5133 - acc: 0.8143\n",
      "Epoch 37/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5091 - acc: 0.8143\n",
      "Epoch 38/100\n",
      "280/280 [==============================] - 0s 63us/step - loss: 0.5050 - acc: 0.8107\n",
      "Epoch 39/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.5008 - acc: 0.8107\n",
      "Epoch 40/100\n",
      "280/280 [==============================] - 0s 65us/step - loss: 0.4970 - acc: 0.8143\n",
      "Epoch 41/100\n",
      "280/280 [==============================] - 0s 76us/step - loss: 0.4929 - acc: 0.8143\n",
      "Epoch 42/100\n",
      "280/280 [==============================] - 0s 102us/step - loss: 0.4890 - acc: 0.8179\n",
      "Epoch 43/100\n",
      "280/280 [==============================] - 0s 104us/step - loss: 0.4850 - acc: 0.8107\n",
      "Epoch 44/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.4813 - acc: 0.8107\n",
      "Epoch 45/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.4776 - acc: 0.8143\n",
      "Epoch 46/100\n",
      "280/280 [==============================] - 0s 81us/step - loss: 0.4741 - acc: 0.8143\n",
      "Epoch 47/100\n",
      "280/280 [==============================] - 0s 91us/step - loss: 0.4706 - acc: 0.8107\n",
      "Epoch 48/100\n",
      "280/280 [==============================] - 0s 77us/step - loss: 0.4669 - acc: 0.8107\n",
      "Epoch 49/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4633 - acc: 0.8143\n",
      "Epoch 50/100\n",
      "280/280 [==============================] - 0s 65us/step - loss: 0.4597 - acc: 0.8250\n",
      "Epoch 51/100\n",
      "280/280 [==============================] - 0s 67us/step - loss: 0.4562 - acc: 0.8321\n",
      "Epoch 52/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.4529 - acc: 0.8286\n",
      "Epoch 53/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4493 - acc: 0.8250\n",
      "Epoch 54/100\n",
      "280/280 [==============================] - 0s 69us/step - loss: 0.4458 - acc: 0.8321\n",
      "Epoch 55/100\n",
      "280/280 [==============================] - 0s 65us/step - loss: 0.4421 - acc: 0.8321\n",
      "Epoch 56/100\n",
      "280/280 [==============================] - 0s 71us/step - loss: 0.4385 - acc: 0.8393\n",
      "Epoch 57/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.4348 - acc: 0.8393\n",
      "Epoch 58/100\n",
      "280/280 [==============================] - 0s 67us/step - loss: 0.4313 - acc: 0.8464\n",
      "Epoch 59/100\n",
      "280/280 [==============================] - 0s 66us/step - loss: 0.4278 - acc: 0.8464\n",
      "Epoch 60/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.4244 - acc: 0.8500\n",
      "Epoch 61/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4214 - acc: 0.8429\n",
      "Epoch 62/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.4188 - acc: 0.8500\n",
      "Epoch 63/100\n",
      "280/280 [==============================] - 0s 64us/step - loss: 0.4156 - acc: 0.8536\n",
      "Epoch 64/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.4130 - acc: 0.8571\n",
      "Epoch 65/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.4104 - acc: 0.8571\n",
      "Epoch 66/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.4075 - acc: 0.8571\n",
      "Epoch 67/100\n",
      "280/280 [==============================] - 0s 90us/step - loss: 0.4048 - acc: 0.8607\n",
      "Epoch 68/100\n",
      "280/280 [==============================] - 0s 62us/step - loss: 0.4021 - acc: 0.8607\n",
      "Epoch 69/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.3992 - acc: 0.8643\n",
      "Epoch 70/100\n",
      "280/280 [==============================] - 0s 66us/step - loss: 0.3962 - acc: 0.8643\n",
      "Epoch 71/100\n",
      "280/280 [==============================] - 0s 58us/step - loss: 0.3936 - acc: 0.8643\n",
      "Epoch 72/100\n",
      "280/280 [==============================] - 0s 57us/step - loss: 0.3904 - acc: 0.8679\n",
      "Epoch 73/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3877 - acc: 0.8643\n",
      "Epoch 74/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3850 - acc: 0.8607\n",
      "Epoch 75/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3824 - acc: 0.8643\n",
      "Epoch 76/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3798 - acc: 0.8750\n",
      "Epoch 77/100\n",
      "280/280 [==============================] - 0s 66us/step - loss: 0.3773 - acc: 0.8679\n",
      "Epoch 78/100\n",
      "280/280 [==============================] - 0s 59us/step - loss: 0.3750 - acc: 0.8714\n",
      "Epoch 79/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.3723 - acc: 0.8714\n",
      "Epoch 80/100\n",
      "280/280 [==============================] - 0s 69us/step - loss: 0.3698 - acc: 0.8679\n",
      "Epoch 81/100\n",
      "280/280 [==============================] - 0s 68us/step - loss: 0.3671 - acc: 0.8714\n",
      "Epoch 82/100\n",
      "280/280 [==============================] - 0s 68us/step - loss: 0.3647 - acc: 0.8786\n",
      "Epoch 83/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.3627 - acc: 0.8786\n",
      "Epoch 84/100\n",
      "280/280 [==============================] - 0s 74us/step - loss: 0.3602 - acc: 0.8786\n",
      "Epoch 85/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.3579 - acc: 0.8786\n",
      "Epoch 86/100\n",
      "280/280 [==============================] - 0s 97us/step - loss: 0.3556 - acc: 0.8821\n",
      "Epoch 87/100\n",
      "280/280 [==============================] - 0s 80us/step - loss: 0.3535 - acc: 0.8821\n",
      "Epoch 88/100\n",
      "280/280 [==============================] - 0s 79us/step - loss: 0.3513 - acc: 0.8821\n",
      "Epoch 89/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.3490 - acc: 0.8786\n",
      "Epoch 90/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.3468 - acc: 0.8786\n",
      "Epoch 91/100\n",
      "280/280 [==============================] - 0s 83us/step - loss: 0.3445 - acc: 0.8893\n",
      "Epoch 92/100\n",
      "280/280 [==============================] - 0s 71us/step - loss: 0.3424 - acc: 0.8857\n",
      "Epoch 93/100\n",
      "280/280 [==============================] - 0s 72us/step - loss: 0.3402 - acc: 0.8857\n",
      "Epoch 94/100\n",
      "280/280 [==============================] - 0s 67us/step - loss: 0.3382 - acc: 0.8929\n",
      "Epoch 95/100\n",
      "280/280 [==============================] - 0s 71us/step - loss: 0.3358 - acc: 0.8929\n",
      "Epoch 96/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3339 - acc: 0.8929\n",
      "Epoch 97/100\n",
      "280/280 [==============================] - 0s 61us/step - loss: 0.3320 - acc: 0.8929\n",
      "Epoch 98/100\n",
      "280/280 [==============================] - 0s 60us/step - loss: 0.3304 - acc: 0.8929\n",
      "Epoch 99/100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "280/280 [==============================] - 0s 62us/step - loss: 0.3281 - acc: 0.8964\n",
      "Epoch 100/100\n",
      "280/280 [==============================] - 0s 71us/step - loss: 0.3263 - acc: 0.9000\n",
      "70/70 [==============================] - 0s 4ms/step\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "0.9085714285714287"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# We wrap the Keras model we created above with KerasClassifier\n",
    "from keras.wrappers.scikit_learn import KerasClassifier \n",
    "from sklearn.model_selection import cross_val_score\n",
    "model_scikit = KerasClassifier(build_fn=a_simple_NN, epochs=num_epochs)\n",
    "cross_validation = cross_val_score(model_scikit, X_train, y_train, cv=5)\n",
    "np.mean(cross_validation)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Might Remove the following: This beer example is not good for neural networks. Basically the dataset is far too small**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(225, 4)"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Revisiting the beer example\n",
    "\n",
    "import pandas as pd\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import MinMaxScaler\n",
    "from keras.models import Sequential\n",
    "\n",
    "# Loading the beer data\n",
    "beer = pd.read_csv(\"beers.csv\")\n",
    "\n",
    "# Extracting the features and labels\n",
    "#beer_data.describe()\n",
    "features = beer.iloc[:, :-1]\n",
    "labels = beer.iloc[:, -1]\n",
    "features.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Revisiting the beer example\n",
    "\n",
    "# Loading and preparing the data\n",
    "\n",
    "import pandas as pd\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import MinMaxScaler\n",
    "\n",
    "# Loading the beer data\n",
    "beer = pd.read_csv(\"beers.csv\")\n",
    "\n",
    "# Extracting the features and labels\n",
    "#beer_data.describe()\n",
    "features = beer.iloc[:, :-1]\n",
    "labels = beer.iloc[:, -1]\n",
    "\n",
    "# Here we split the dataset into training (70%) and validation sets (30%) \n",
    "#X_train, X_test, y_train, y_test = train_test_split(features, labels, test_size=0.5, random_state=42)\n",
    "X_train, X_test, y_train, y_test = train_test_split(features, labels, test_size=0.3)\n",
    "\n",
    "# Scaling the data\n",
    "# NOTE: The features should be normalized before being fed into the neural network\n",
    "scaling = MinMaxScaler()\n",
    "scaling.fit(X_train)\n",
    "\n",
    "X_train_scaled = scaling.transform(X_train)\n",
    "X_test_scaled = scaling.transform(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 157 samples, validate on 68 samples\n",
      "Epoch 1/1000\n",
      "157/157 [==============================] - 1s 6ms/step - loss: 0.6730 - acc: 0.5350 - val_loss: 0.6769 - val_acc: 0.5147\n",
      "Epoch 2/1000\n",
      "157/157 [==============================] - 0s 406us/step - loss: 0.6704 - acc: 0.5350 - val_loss: 0.6754 - val_acc: 0.5147\n",
      "Epoch 3/1000\n",
      "157/157 [==============================] - 0s 256us/step - loss: 0.6693 - acc: 0.5350 - val_loss: 0.6740 - val_acc: 0.5147\n",
      "Epoch 4/1000\n",
      "157/157 [==============================] - 0s 215us/step - loss: 0.6679 - acc: 0.5350 - val_loss: 0.6728 - val_acc: 0.5147\n",
      "Epoch 5/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.6668 - acc: 0.5350 - val_loss: 0.6716 - val_acc: 0.5147\n",
      "Epoch 6/1000\n",
      "157/157 [==============================] - 0s 107us/step - loss: 0.6658 - acc: 0.5350 - val_loss: 0.6704 - val_acc: 0.5147\n",
      "Epoch 7/1000\n",
      "157/157 [==============================] - 0s 303us/step - loss: 0.6652 - acc: 0.5350 - val_loss: 0.6693 - val_acc: 0.5147\n",
      "Epoch 8/1000\n",
      "157/157 [==============================] - 0s 98us/step - loss: 0.6637 - acc: 0.5350 - val_loss: 0.6682 - val_acc: 0.5147\n",
      "Epoch 9/1000\n",
      "157/157 [==============================] - 0s 92us/step - loss: 0.6626 - acc: 0.5350 - val_loss: 0.6670 - val_acc: 0.5147\n",
      "Epoch 10/1000\n",
      "157/157 [==============================] - 0s 90us/step - loss: 0.6616 - acc: 0.5350 - val_loss: 0.6657 - val_acc: 0.5147\n",
      "Epoch 11/1000\n",
      "157/157 [==============================] - 0s 92us/step - loss: 0.6605 - acc: 0.5350 - val_loss: 0.6644 - val_acc: 0.5147\n",
      "Epoch 12/1000\n",
      "157/157 [==============================] - 0s 305us/step - loss: 0.6596 - acc: 0.5350 - val_loss: 0.6633 - val_acc: 0.5147\n",
      "Epoch 13/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.6587 - acc: 0.5350 - val_loss: 0.6622 - val_acc: 0.5147\n",
      "Epoch 14/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.6578 - acc: 0.5350 - val_loss: 0.6612 - val_acc: 0.5147\n",
      "Epoch 15/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.6567 - acc: 0.5350 - val_loss: 0.6601 - val_acc: 0.5147\n",
      "Epoch 16/1000\n",
      "157/157 [==============================] - 0s 179us/step - loss: 0.6558 - acc: 0.5350 - val_loss: 0.6591 - val_acc: 0.5147\n",
      "Epoch 17/1000\n",
      "157/157 [==============================] - 0s 98us/step - loss: 0.6551 - acc: 0.5350 - val_loss: 0.6580 - val_acc: 0.5147\n",
      "Epoch 18/1000\n",
      "157/157 [==============================] - 0s 106us/step - loss: 0.6540 - acc: 0.5350 - val_loss: 0.6570 - val_acc: 0.5147\n",
      "Epoch 19/1000\n",
      "157/157 [==============================] - 0s 97us/step - loss: 0.6531 - acc: 0.5350 - val_loss: 0.6559 - val_acc: 0.5147\n",
      "Epoch 20/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.6523 - acc: 0.5350 - val_loss: 0.6549 - val_acc: 0.5147\n",
      "Epoch 21/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.6512 - acc: 0.5350 - val_loss: 0.6537 - val_acc: 0.5147\n",
      "Epoch 22/1000\n",
      "157/157 [==============================] - 0s 288us/step - loss: 0.6506 - acc: 0.5350 - val_loss: 0.6527 - val_acc: 0.5147\n",
      "Epoch 23/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.6496 - acc: 0.5414 - val_loss: 0.6517 - val_acc: 0.5147\n",
      "Epoch 24/1000\n",
      "157/157 [==============================] - 0s 257us/step - loss: 0.6486 - acc: 0.5414 - val_loss: 0.6506 - val_acc: 0.5147\n",
      "Epoch 25/1000\n",
      "157/157 [==============================] - 0s 95us/step - loss: 0.6477 - acc: 0.5478 - val_loss: 0.6495 - val_acc: 0.5147\n",
      "Epoch 26/1000\n",
      "157/157 [==============================] - 0s 112us/step - loss: 0.6466 - acc: 0.5414 - val_loss: 0.6483 - val_acc: 0.5147\n",
      "Epoch 27/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.6458 - acc: 0.5541 - val_loss: 0.6472 - val_acc: 0.5147\n",
      "Epoch 28/1000\n",
      "157/157 [==============================] - 0s 257us/step - loss: 0.6447 - acc: 0.5541 - val_loss: 0.6461 - val_acc: 0.5147\n",
      "Epoch 29/1000\n",
      "157/157 [==============================] - 0s 134us/step - loss: 0.6437 - acc: 0.5541 - val_loss: 0.6449 - val_acc: 0.5147\n",
      "Epoch 30/1000\n",
      "157/157 [==============================] - 0s 111us/step - loss: 0.6427 - acc: 0.5669 - val_loss: 0.6438 - val_acc: 0.5147\n",
      "Epoch 31/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.6417 - acc: 0.5669 - val_loss: 0.6426 - val_acc: 0.5147\n",
      "Epoch 32/1000\n",
      "157/157 [==============================] - 0s 103us/step - loss: 0.6407 - acc: 0.5669 - val_loss: 0.6414 - val_acc: 0.5147\n",
      "Epoch 33/1000\n",
      "157/157 [==============================] - 0s 269us/step - loss: 0.6394 - acc: 0.5732 - val_loss: 0.6401 - val_acc: 0.5294\n",
      "Epoch 34/1000\n",
      "157/157 [==============================] - 0s 119us/step - loss: 0.6384 - acc: 0.5732 - val_loss: 0.6387 - val_acc: 0.5294\n",
      "Epoch 35/1000\n",
      "157/157 [==============================] - 0s 92us/step - loss: 0.6371 - acc: 0.5732 - val_loss: 0.6373 - val_acc: 0.5294\n",
      "Epoch 36/1000\n",
      "157/157 [==============================] - 0s 298us/step - loss: 0.6361 - acc: 0.5796 - val_loss: 0.6360 - val_acc: 0.5294\n",
      "Epoch 37/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.6349 - acc: 0.5860 - val_loss: 0.6347 - val_acc: 0.5441\n",
      "Epoch 38/1000\n",
      "157/157 [==============================] - 0s 122us/step - loss: 0.6336 - acc: 0.5860 - val_loss: 0.6333 - val_acc: 0.5441\n",
      "Epoch 39/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.6323 - acc: 0.5860 - val_loss: 0.6318 - val_acc: 0.5441\n",
      "Epoch 40/1000\n",
      "157/157 [==============================] - 0s 321us/step - loss: 0.6310 - acc: 0.5860 - val_loss: 0.6302 - val_acc: 0.5441\n",
      "Epoch 41/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.6297 - acc: 0.5924 - val_loss: 0.6286 - val_acc: 0.5441\n",
      "Epoch 42/1000\n",
      "157/157 [==============================] - 0s 229us/step - loss: 0.6285 - acc: 0.5924 - val_loss: 0.6273 - val_acc: 0.5441\n",
      "Epoch 43/1000\n",
      "157/157 [==============================] - 0s 201us/step - loss: 0.6271 - acc: 0.5924 - val_loss: 0.6258 - val_acc: 0.5441\n",
      "Epoch 44/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.6260 - acc: 0.5924 - val_loss: 0.6243 - val_acc: 0.5441\n",
      "Epoch 45/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.6245 - acc: 0.5987 - val_loss: 0.6228 - val_acc: 0.5588\n",
      "Epoch 46/1000\n",
      "157/157 [==============================] - 0s 113us/step - loss: 0.6234 - acc: 0.6051 - val_loss: 0.6213 - val_acc: 0.5588\n",
      "Epoch 47/1000\n",
      "157/157 [==============================] - 0s 537us/step - loss: 0.6218 - acc: 0.6178 - val_loss: 0.6197 - val_acc: 0.5588\n",
      "Epoch 48/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.6205 - acc: 0.6178 - val_loss: 0.6181 - val_acc: 0.5588\n",
      "Epoch 49/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.6191 - acc: 0.6178 - val_loss: 0.6164 - val_acc: 0.5735\n",
      "Epoch 50/1000\n",
      "157/157 [==============================] - 0s 200us/step - loss: 0.6176 - acc: 0.6178 - val_loss: 0.6146 - val_acc: 0.5882\n",
      "Epoch 51/1000\n",
      "157/157 [==============================] - 0s 286us/step - loss: 0.6165 - acc: 0.6178 - val_loss: 0.6130 - val_acc: 0.5882\n",
      "Epoch 52/1000\n",
      "157/157 [==============================] - 0s 254us/step - loss: 0.6152 - acc: 0.6242 - val_loss: 0.6116 - val_acc: 0.6029\n",
      "Epoch 53/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.6136 - acc: 0.6242 - val_loss: 0.6100 - val_acc: 0.6029\n",
      "Epoch 54/1000\n",
      "157/157 [==============================] - 0s 202us/step - loss: 0.6127 - acc: 0.6242 - val_loss: 0.6085 - val_acc: 0.6029\n",
      "Epoch 55/1000\n",
      "157/157 [==============================] - 0s 108us/step - loss: 0.6114 - acc: 0.6242 - val_loss: 0.6070 - val_acc: 0.6029\n",
      "Epoch 56/1000\n",
      "157/157 [==============================] - 0s 157us/step - loss: 0.6098 - acc: 0.6242 - val_loss: 0.6053 - val_acc: 0.6029\n",
      "Epoch 57/1000\n",
      "157/157 [==============================] - 0s 118us/step - loss: 0.6085 - acc: 0.6242 - val_loss: 0.6036 - val_acc: 0.6029\n",
      "Epoch 58/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.6070 - acc: 0.6242 - val_loss: 0.6018 - val_acc: 0.6029\n",
      "Epoch 59/1000\n",
      "157/157 [==============================] - 0s 165us/step - loss: 0.6057 - acc: 0.6242 - val_loss: 0.6001 - val_acc: 0.6029\n",
      "Epoch 60/1000\n",
      "157/157 [==============================] - 0s 263us/step - loss: 0.6039 - acc: 0.6242 - val_loss: 0.5982 - val_acc: 0.6176\n",
      "Epoch 61/1000\n",
      "157/157 [==============================] - 0s 244us/step - loss: 0.6023 - acc: 0.6242 - val_loss: 0.5963 - val_acc: 0.6176\n",
      "Epoch 62/1000\n",
      "157/157 [==============================] - 0s 409us/step - loss: 0.6006 - acc: 0.6306 - val_loss: 0.5943 - val_acc: 0.6176\n",
      "Epoch 63/1000\n",
      "157/157 [==============================] - 0s 104us/step - loss: 0.5991 - acc: 0.6306 - val_loss: 0.5922 - val_acc: 0.6324\n",
      "Epoch 64/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.5981 - acc: 0.6369 - val_loss: 0.5906 - val_acc: 0.6324\n",
      "Epoch 65/1000\n",
      "157/157 [==============================] - 0s 104us/step - loss: 0.5958 - acc: 0.6433 - val_loss: 0.5889 - val_acc: 0.6471\n",
      "Epoch 66/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.5945 - acc: 0.6433 - val_loss: 0.5871 - val_acc: 0.6471\n",
      "Epoch 67/1000\n",
      "157/157 [==============================] - 0s 378us/step - loss: 0.5929 - acc: 0.6433 - val_loss: 0.5852 - val_acc: 0.6471\n",
      "Epoch 68/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.5917 - acc: 0.6497 - val_loss: 0.5836 - val_acc: 0.6471\n",
      "Epoch 69/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.5901 - acc: 0.6497 - val_loss: 0.5816 - val_acc: 0.6471\n",
      "Epoch 70/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.5885 - acc: 0.6497 - val_loss: 0.5797 - val_acc: 0.6765\n",
      "Epoch 71/1000\n",
      "157/157 [==============================] - 0s 208us/step - loss: 0.5867 - acc: 0.6561 - val_loss: 0.5778 - val_acc: 0.6765\n",
      "Epoch 72/1000\n",
      "157/157 [==============================] - 0s 200us/step - loss: 0.5850 - acc: 0.6561 - val_loss: 0.5755 - val_acc: 0.6765\n",
      "Epoch 73/1000\n",
      "157/157 [==============================] - 0s 279us/step - loss: 0.5831 - acc: 0.6624 - val_loss: 0.5733 - val_acc: 0.6765\n",
      "Epoch 74/1000\n",
      "157/157 [==============================] - 0s 263us/step - loss: 0.5812 - acc: 0.6688 - val_loss: 0.5712 - val_acc: 0.6912\n",
      "Epoch 75/1000\n",
      "157/157 [==============================] - 0s 263us/step - loss: 0.5791 - acc: 0.6752 - val_loss: 0.5688 - val_acc: 0.7059\n",
      "Epoch 76/1000\n",
      "157/157 [==============================] - 0s 223us/step - loss: 0.5771 - acc: 0.6752 - val_loss: 0.5665 - val_acc: 0.7059\n",
      "Epoch 77/1000\n",
      "157/157 [==============================] - 0s 252us/step - loss: 0.5750 - acc: 0.6879 - val_loss: 0.5643 - val_acc: 0.7059\n",
      "Epoch 78/1000\n",
      "157/157 [==============================] - 0s 217us/step - loss: 0.5728 - acc: 0.6879 - val_loss: 0.5619 - val_acc: 0.7059\n",
      "Epoch 79/1000\n",
      "157/157 [==============================] - 0s 123us/step - loss: 0.5708 - acc: 0.6943 - val_loss: 0.5596 - val_acc: 0.7059\n",
      "Epoch 80/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.5687 - acc: 0.7006 - val_loss: 0.5570 - val_acc: 0.7206\n",
      "Epoch 81/1000\n",
      "157/157 [==============================] - 0s 181us/step - loss: 0.5666 - acc: 0.7070 - val_loss: 0.5545 - val_acc: 0.7206\n",
      "Epoch 82/1000\n",
      "157/157 [==============================] - 0s 109us/step - loss: 0.5643 - acc: 0.7006 - val_loss: 0.5519 - val_acc: 0.7206\n",
      "Epoch 83/1000\n",
      "157/157 [==============================] - 0s 258us/step - loss: 0.5623 - acc: 0.7134 - val_loss: 0.5495 - val_acc: 0.7206\n",
      "Epoch 84/1000\n",
      "157/157 [==============================] - 0s 123us/step - loss: 0.5600 - acc: 0.7197 - val_loss: 0.5469 - val_acc: 0.7206\n",
      "Epoch 85/1000\n",
      "157/157 [==============================] - 0s 120us/step - loss: 0.5577 - acc: 0.7197 - val_loss: 0.5443 - val_acc: 0.7206\n",
      "Epoch 86/1000\n",
      "157/157 [==============================] - 0s 166us/step - loss: 0.5550 - acc: 0.7197 - val_loss: 0.5411 - val_acc: 0.7353\n",
      "Epoch 87/1000\n",
      "157/157 [==============================] - 0s 134us/step - loss: 0.5529 - acc: 0.7325 - val_loss: 0.5383 - val_acc: 0.7353\n",
      "Epoch 88/1000\n",
      "157/157 [==============================] - 0s 185us/step - loss: 0.5498 - acc: 0.7325 - val_loss: 0.5347 - val_acc: 0.7353\n",
      "Epoch 89/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.5471 - acc: 0.7516 - val_loss: 0.5314 - val_acc: 0.7647\n",
      "Epoch 90/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.5451 - acc: 0.7452 - val_loss: 0.5283 - val_acc: 0.7941\n",
      "Epoch 91/1000\n",
      "157/157 [==============================] - 0s 292us/step - loss: 0.5430 - acc: 0.7580 - val_loss: 0.5258 - val_acc: 0.8088\n",
      "Epoch 92/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.5399 - acc: 0.7580 - val_loss: 0.5234 - val_acc: 0.8088\n",
      "Epoch 93/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.5383 - acc: 0.7643 - val_loss: 0.5210 - val_acc: 0.8088\n",
      "Epoch 94/1000\n",
      "157/157 [==============================] - 0s 231us/step - loss: 0.5356 - acc: 0.7643 - val_loss: 0.5184 - val_acc: 0.8088\n",
      "Epoch 95/1000\n",
      "157/157 [==============================] - 0s 96us/step - loss: 0.5334 - acc: 0.7643 - val_loss: 0.5158 - val_acc: 0.8235\n",
      "Epoch 96/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.5309 - acc: 0.7707 - val_loss: 0.5128 - val_acc: 0.8235\n",
      "Epoch 97/1000\n",
      "157/157 [==============================] - 0s 214us/step - loss: 0.5291 - acc: 0.7898 - val_loss: 0.5100 - val_acc: 0.8235\n",
      "Epoch 98/1000\n",
      "157/157 [==============================] - 0s 179us/step - loss: 0.5263 - acc: 0.7898 - val_loss: 0.5074 - val_acc: 0.8235\n",
      "Epoch 99/1000\n",
      "157/157 [==============================] - 0s 182us/step - loss: 0.5243 - acc: 0.7962 - val_loss: 0.5044 - val_acc: 0.8088\n",
      "Epoch 100/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.5234 - acc: 0.7834 - val_loss: 0.5024 - val_acc: 0.8088\n",
      "Epoch 101/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.5198 - acc: 0.8025 - val_loss: 0.5002 - val_acc: 0.8088\n",
      "Epoch 102/1000\n",
      "157/157 [==============================] - 0s 320us/step - loss: 0.5184 - acc: 0.7962 - val_loss: 0.4978 - val_acc: 0.8088\n",
      "Epoch 103/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.5162 - acc: 0.8025 - val_loss: 0.4956 - val_acc: 0.8088\n",
      "Epoch 104/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.5136 - acc: 0.8025 - val_loss: 0.4932 - val_acc: 0.8088\n",
      "Epoch 105/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.5115 - acc: 0.7962 - val_loss: 0.4903 - val_acc: 0.8235\n",
      "Epoch 106/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.5091 - acc: 0.8025 - val_loss: 0.4877 - val_acc: 0.8382\n",
      "Epoch 107/1000\n",
      "157/157 [==============================] - 0s 351us/step - loss: 0.5065 - acc: 0.8089 - val_loss: 0.4851 - val_acc: 0.8382\n",
      "Epoch 108/1000\n",
      "157/157 [==============================] - 0s 370us/step - loss: 0.5041 - acc: 0.8025 - val_loss: 0.4822 - val_acc: 0.8529\n",
      "Epoch 109/1000\n",
      "157/157 [==============================] - 0s 345us/step - loss: 0.5016 - acc: 0.8089 - val_loss: 0.4795 - val_acc: 0.8529\n",
      "Epoch 110/1000\n",
      "157/157 [==============================] - 0s 121us/step - loss: 0.4996 - acc: 0.8025 - val_loss: 0.4765 - val_acc: 0.8529\n",
      "Epoch 111/1000\n",
      "157/157 [==============================] - 0s 135us/step - loss: 0.4972 - acc: 0.8089 - val_loss: 0.4739 - val_acc: 0.8529\n",
      "Epoch 112/1000\n",
      "157/157 [==============================] - 0s 266us/step - loss: 0.4944 - acc: 0.8280 - val_loss: 0.4716 - val_acc: 0.8529\n",
      "Epoch 113/1000\n",
      "157/157 [==============================] - 0s 218us/step - loss: 0.4918 - acc: 0.8153 - val_loss: 0.4686 - val_acc: 0.8529\n",
      "Epoch 114/1000\n",
      "157/157 [==============================] - 0s 174us/step - loss: 0.4894 - acc: 0.8471 - val_loss: 0.4656 - val_acc: 0.8529\n",
      "Epoch 115/1000\n",
      "157/157 [==============================] - 0s 157us/step - loss: 0.4869 - acc: 0.8408 - val_loss: 0.4624 - val_acc: 0.8676\n",
      "Epoch 116/1000\n",
      "157/157 [==============================] - 0s 276us/step - loss: 0.4846 - acc: 0.8089 - val_loss: 0.4592 - val_acc: 0.8676\n",
      "Epoch 117/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.4818 - acc: 0.8408 - val_loss: 0.4565 - val_acc: 0.8676\n",
      "Epoch 118/1000\n",
      "157/157 [==============================] - 0s 246us/step - loss: 0.4792 - acc: 0.8535 - val_loss: 0.4539 - val_acc: 0.8676\n",
      "Epoch 119/1000\n",
      "157/157 [==============================] - 0s 116us/step - loss: 0.4768 - acc: 0.8408 - val_loss: 0.4506 - val_acc: 0.8676\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 120/1000\n",
      "157/157 [==============================] - 0s 229us/step - loss: 0.4756 - acc: 0.8471 - val_loss: 0.4482 - val_acc: 0.8676\n",
      "Epoch 121/1000\n",
      "157/157 [==============================] - 0s 204us/step - loss: 0.4726 - acc: 0.8599 - val_loss: 0.4463 - val_acc: 0.8676\n",
      "Epoch 122/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.4708 - acc: 0.8471 - val_loss: 0.4438 - val_acc: 0.8676\n",
      "Epoch 123/1000\n",
      "157/157 [==============================] - 0s 245us/step - loss: 0.4682 - acc: 0.8599 - val_loss: 0.4415 - val_acc: 0.8676\n",
      "Epoch 124/1000\n",
      "157/157 [==============================] - 0s 200us/step - loss: 0.4658 - acc: 0.8535 - val_loss: 0.4390 - val_acc: 0.8676\n",
      "Epoch 125/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.4635 - acc: 0.8599 - val_loss: 0.4361 - val_acc: 0.8824\n",
      "Epoch 126/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.4614 - acc: 0.8535 - val_loss: 0.4332 - val_acc: 0.8824\n",
      "Epoch 127/1000\n",
      "157/157 [==============================] - 0s 327us/step - loss: 0.4584 - acc: 0.8726 - val_loss: 0.4307 - val_acc: 0.8824\n",
      "Epoch 128/1000\n",
      "157/157 [==============================] - 0s 181us/step - loss: 0.4571 - acc: 0.8535 - val_loss: 0.4279 - val_acc: 0.8824\n",
      "Epoch 129/1000\n",
      "157/157 [==============================] - 0s 268us/step - loss: 0.4550 - acc: 0.8726 - val_loss: 0.4258 - val_acc: 0.8824\n",
      "Epoch 130/1000\n",
      "157/157 [==============================] - 0s 176us/step - loss: 0.4517 - acc: 0.8599 - val_loss: 0.4230 - val_acc: 0.8824\n",
      "Epoch 131/1000\n",
      "157/157 [==============================] - 0s 281us/step - loss: 0.4497 - acc: 0.8726 - val_loss: 0.4204 - val_acc: 0.8824\n",
      "Epoch 132/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.4476 - acc: 0.8662 - val_loss: 0.4178 - val_acc: 0.8824\n",
      "Epoch 133/1000\n",
      "157/157 [==============================] - 0s 177us/step - loss: 0.4456 - acc: 0.8726 - val_loss: 0.4153 - val_acc: 0.8824\n",
      "Epoch 134/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.4433 - acc: 0.8790 - val_loss: 0.4131 - val_acc: 0.8824\n",
      "Epoch 135/1000\n",
      "157/157 [==============================] - 0s 121us/step - loss: 0.4409 - acc: 0.8854 - val_loss: 0.4108 - val_acc: 0.8824\n",
      "Epoch 136/1000\n",
      "157/157 [==============================] - 0s 167us/step - loss: 0.4381 - acc: 0.8726 - val_loss: 0.4082 - val_acc: 0.8824\n",
      "Epoch 137/1000\n",
      "157/157 [==============================] - 0s 272us/step - loss: 0.4357 - acc: 0.8854 - val_loss: 0.4053 - val_acc: 0.8824\n",
      "Epoch 138/1000\n",
      "157/157 [==============================] - 0s 286us/step - loss: 0.4338 - acc: 0.8726 - val_loss: 0.4025 - val_acc: 0.8824\n",
      "Epoch 139/1000\n",
      "157/157 [==============================] - 0s 164us/step - loss: 0.4308 - acc: 0.8726 - val_loss: 0.3994 - val_acc: 0.8824\n",
      "Epoch 140/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.4286 - acc: 0.8790 - val_loss: 0.3968 - val_acc: 0.8824\n",
      "Epoch 141/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.4266 - acc: 0.8726 - val_loss: 0.3944 - val_acc: 0.8824\n",
      "Epoch 142/1000\n",
      "157/157 [==============================] - 0s 285us/step - loss: 0.4241 - acc: 0.8790 - val_loss: 0.3924 - val_acc: 0.8824\n",
      "Epoch 143/1000\n",
      "157/157 [==============================] - 0s 136us/step - loss: 0.4224 - acc: 0.8726 - val_loss: 0.3902 - val_acc: 0.8824\n",
      "Epoch 144/1000\n",
      "157/157 [==============================] - 0s 243us/step - loss: 0.4204 - acc: 0.8726 - val_loss: 0.3882 - val_acc: 0.8824\n",
      "Epoch 145/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.4177 - acc: 0.8726 - val_loss: 0.3860 - val_acc: 0.8824\n",
      "Epoch 146/1000\n",
      "157/157 [==============================] - 0s 210us/step - loss: 0.4167 - acc: 0.8854 - val_loss: 0.3840 - val_acc: 0.8824\n",
      "Epoch 147/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.4133 - acc: 0.8726 - val_loss: 0.3815 - val_acc: 0.8824\n",
      "Epoch 148/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.4112 - acc: 0.8790 - val_loss: 0.3791 - val_acc: 0.8824\n",
      "Epoch 149/1000\n",
      "157/157 [==============================] - 0s 274us/step - loss: 0.4098 - acc: 0.8854 - val_loss: 0.3771 - val_acc: 0.8824\n",
      "Epoch 150/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.4075 - acc: 0.8726 - val_loss: 0.3743 - val_acc: 0.8824\n",
      "Epoch 151/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.4047 - acc: 0.8854 - val_loss: 0.3721 - val_acc: 0.8824\n",
      "Epoch 152/1000\n",
      "157/157 [==============================] - 0s 282us/step - loss: 0.4033 - acc: 0.8726 - val_loss: 0.3694 - val_acc: 0.8824\n",
      "Epoch 153/1000\n",
      "157/157 [==============================] - 0s 167us/step - loss: 0.4013 - acc: 0.9108 - val_loss: 0.3680 - val_acc: 0.8824\n",
      "Epoch 154/1000\n",
      "157/157 [==============================] - 0s 313us/step - loss: 0.3985 - acc: 0.8854 - val_loss: 0.3655 - val_acc: 0.8824\n",
      "Epoch 155/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.3970 - acc: 0.8981 - val_loss: 0.3635 - val_acc: 0.8824\n",
      "Epoch 156/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.3944 - acc: 0.8981 - val_loss: 0.3613 - val_acc: 0.8824\n",
      "Epoch 157/1000\n",
      "157/157 [==============================] - 0s 124us/step - loss: 0.3928 - acc: 0.8981 - val_loss: 0.3594 - val_acc: 0.8824\n",
      "Epoch 158/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.3903 - acc: 0.8917 - val_loss: 0.3567 - val_acc: 0.8824\n",
      "Epoch 159/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.3881 - acc: 0.8981 - val_loss: 0.3543 - val_acc: 0.8824\n",
      "Epoch 160/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.3871 - acc: 0.8917 - val_loss: 0.3523 - val_acc: 0.8824\n",
      "Epoch 161/1000\n",
      "157/157 [==============================] - 0s 123us/step - loss: 0.3840 - acc: 0.9108 - val_loss: 0.3503 - val_acc: 0.8824\n",
      "Epoch 162/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.3833 - acc: 0.8854 - val_loss: 0.3481 - val_acc: 0.8971\n",
      "Epoch 163/1000\n",
      "157/157 [==============================] - 0s 222us/step - loss: 0.3810 - acc: 0.8917 - val_loss: 0.3463 - val_acc: 0.8971\n",
      "Epoch 164/1000\n",
      "157/157 [==============================] - 0s 210us/step - loss: 0.3785 - acc: 0.9236 - val_loss: 0.3449 - val_acc: 0.8824\n",
      "Epoch 165/1000\n",
      "157/157 [==============================] - 0s 278us/step - loss: 0.3774 - acc: 0.9045 - val_loss: 0.3431 - val_acc: 0.8971\n",
      "Epoch 166/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.3751 - acc: 0.8917 - val_loss: 0.3406 - val_acc: 0.8971\n",
      "Epoch 167/1000\n",
      "157/157 [==============================] - 0s 183us/step - loss: 0.3735 - acc: 0.8981 - val_loss: 0.3388 - val_acc: 0.8971\n",
      "Epoch 168/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.3711 - acc: 0.9172 - val_loss: 0.3368 - val_acc: 0.8971\n",
      "Epoch 169/1000\n",
      "157/157 [==============================] - 0s 304us/step - loss: 0.3701 - acc: 0.9108 - val_loss: 0.3346 - val_acc: 0.8971\n",
      "Epoch 170/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.3674 - acc: 0.9236 - val_loss: 0.3330 - val_acc: 0.8971\n",
      "Epoch 171/1000\n",
      "157/157 [==============================] - 0s 287us/step - loss: 0.3666 - acc: 0.9172 - val_loss: 0.3312 - val_acc: 0.8971\n",
      "Epoch 172/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.3638 - acc: 0.9108 - val_loss: 0.3291 - val_acc: 0.8971\n",
      "Epoch 173/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.3617 - acc: 0.9236 - val_loss: 0.3275 - val_acc: 0.8971\n",
      "Epoch 174/1000\n",
      "157/157 [==============================] - 0s 136us/step - loss: 0.3595 - acc: 0.9236 - val_loss: 0.3257 - val_acc: 0.8971\n",
      "Epoch 175/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.3579 - acc: 0.9236 - val_loss: 0.3240 - val_acc: 0.8971\n",
      "Epoch 176/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.3565 - acc: 0.9172 - val_loss: 0.3219 - val_acc: 0.8971\n",
      "Epoch 177/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.3540 - acc: 0.9236 - val_loss: 0.3205 - val_acc: 0.8971\n",
      "Epoch 178/1000\n",
      "157/157 [==============================] - 0s 374us/step - loss: 0.3529 - acc: 0.9108 - val_loss: 0.3181 - val_acc: 0.8971\n",
      "Epoch 179/1000\n",
      "157/157 [==============================] - 0s 307us/step - loss: 0.3500 - acc: 0.9236 - val_loss: 0.3156 - val_acc: 0.8971\n",
      "Epoch 180/1000\n",
      "157/157 [==============================] - 0s 319us/step - loss: 0.3485 - acc: 0.9236 - val_loss: 0.3136 - val_acc: 0.8971\n",
      "Epoch 181/1000\n",
      "157/157 [==============================] - 0s 166us/step - loss: 0.3467 - acc: 0.9236 - val_loss: 0.3116 - val_acc: 0.8971\n",
      "Epoch 182/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.3450 - acc: 0.9236 - val_loss: 0.3103 - val_acc: 0.8971\n",
      "Epoch 183/1000\n",
      "157/157 [==============================] - 0s 282us/step - loss: 0.3439 - acc: 0.9172 - val_loss: 0.3084 - val_acc: 0.8971\n",
      "Epoch 184/1000\n",
      "157/157 [==============================] - 0s 287us/step - loss: 0.3413 - acc: 0.9172 - val_loss: 0.3064 - val_acc: 0.8971\n",
      "Epoch 185/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.3405 - acc: 0.9108 - val_loss: 0.3047 - val_acc: 0.9118\n",
      "Epoch 186/1000\n",
      "157/157 [==============================] - 0s 238us/step - loss: 0.3376 - acc: 0.9236 - val_loss: 0.3028 - val_acc: 0.9118\n",
      "Epoch 187/1000\n",
      "157/157 [==============================] - 0s 291us/step - loss: 0.3358 - acc: 0.9299 - val_loss: 0.3014 - val_acc: 0.9118\n",
      "Epoch 188/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.3347 - acc: 0.9236 - val_loss: 0.2989 - val_acc: 0.9118\n",
      "Epoch 189/1000\n",
      "157/157 [==============================] - 0s 231us/step - loss: 0.3334 - acc: 0.9299 - val_loss: 0.2972 - val_acc: 0.9118\n",
      "Epoch 190/1000\n",
      "157/157 [==============================] - 0s 208us/step - loss: 0.3302 - acc: 0.9299 - val_loss: 0.2961 - val_acc: 0.8971\n",
      "Epoch 191/1000\n",
      "157/157 [==============================] - 0s 213us/step - loss: 0.3284 - acc: 0.9299 - val_loss: 0.2943 - val_acc: 0.8971\n",
      "Epoch 192/1000\n",
      "157/157 [==============================] - 0s 184us/step - loss: 0.3265 - acc: 0.9299 - val_loss: 0.2917 - val_acc: 0.9118\n",
      "Epoch 193/1000\n",
      "157/157 [==============================] - 0s 369us/step - loss: 0.3259 - acc: 0.9299 - val_loss: 0.2908 - val_acc: 0.8971\n",
      "Epoch 194/1000\n",
      "157/157 [==============================] - 0s 218us/step - loss: 0.3226 - acc: 0.9299 - val_loss: 0.2889 - val_acc: 0.8971\n",
      "Epoch 195/1000\n",
      "157/157 [==============================] - 0s 203us/step - loss: 0.3237 - acc: 0.9236 - val_loss: 0.2873 - val_acc: 0.8971\n",
      "Epoch 196/1000\n",
      "157/157 [==============================] - 0s 207us/step - loss: 0.3194 - acc: 0.9236 - val_loss: 0.2857 - val_acc: 0.8971\n",
      "Epoch 197/1000\n",
      "157/157 [==============================] - 0s 291us/step - loss: 0.3173 - acc: 0.9236 - val_loss: 0.2830 - val_acc: 0.9118\n",
      "Epoch 198/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.3165 - acc: 0.9299 - val_loss: 0.2819 - val_acc: 0.9118\n",
      "Epoch 199/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.3166 - acc: 0.9236 - val_loss: 0.2805 - val_acc: 0.8971\n",
      "Epoch 200/1000\n",
      "157/157 [==============================] - 0s 308us/step - loss: 0.3128 - acc: 0.9236 - val_loss: 0.2790 - val_acc: 0.9118\n",
      "Epoch 201/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.3109 - acc: 0.9299 - val_loss: 0.2772 - val_acc: 0.9118\n",
      "Epoch 202/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.3092 - acc: 0.9236 - val_loss: 0.2755 - val_acc: 0.9118\n",
      "Epoch 203/1000\n",
      "157/157 [==============================] - 0s 230us/step - loss: 0.3076 - acc: 0.9236 - val_loss: 0.2736 - val_acc: 0.9118\n",
      "Epoch 204/1000\n",
      "157/157 [==============================] - 0s 123us/step - loss: 0.3056 - acc: 0.9236 - val_loss: 0.2724 - val_acc: 0.9118\n",
      "Epoch 205/1000\n",
      "157/157 [==============================] - 0s 118us/step - loss: 0.3046 - acc: 0.9236 - val_loss: 0.2703 - val_acc: 0.9118\n",
      "Epoch 206/1000\n",
      "157/157 [==============================] - 0s 319us/step - loss: 0.3018 - acc: 0.9299 - val_loss: 0.2682 - val_acc: 0.9118\n",
      "Epoch 207/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.2998 - acc: 0.9427 - val_loss: 0.2670 - val_acc: 0.9118\n",
      "Epoch 208/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.2988 - acc: 0.9299 - val_loss: 0.2651 - val_acc: 0.9118\n",
      "Epoch 209/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.2970 - acc: 0.9299 - val_loss: 0.2626 - val_acc: 0.9118\n",
      "Epoch 210/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.2945 - acc: 0.9427 - val_loss: 0.2626 - val_acc: 0.8971\n",
      "Epoch 211/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.2932 - acc: 0.9299 - val_loss: 0.2599 - val_acc: 0.9118\n",
      "Epoch 212/1000\n",
      "157/157 [==============================] - 0s 317us/step - loss: 0.2919 - acc: 0.9427 - val_loss: 0.2590 - val_acc: 0.8971\n",
      "Epoch 213/1000\n",
      "157/157 [==============================] - 0s 241us/step - loss: 0.2898 - acc: 0.9236 - val_loss: 0.2560 - val_acc: 0.9118\n",
      "Epoch 214/1000\n",
      "157/157 [==============================] - 0s 396us/step - loss: 0.2892 - acc: 0.9427 - val_loss: 0.2547 - val_acc: 0.9118\n",
      "Epoch 215/1000\n",
      "157/157 [==============================] - 0s 317us/step - loss: 0.2863 - acc: 0.9427 - val_loss: 0.2529 - val_acc: 0.9118\n",
      "Epoch 216/1000\n",
      "157/157 [==============================] - 0s 254us/step - loss: 0.2870 - acc: 0.9363 - val_loss: 0.2518 - val_acc: 0.9118\n",
      "Epoch 217/1000\n",
      "157/157 [==============================] - 0s 255us/step - loss: 0.2839 - acc: 0.9363 - val_loss: 0.2511 - val_acc: 0.9118\n",
      "Epoch 218/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.2816 - acc: 0.9363 - val_loss: 0.2490 - val_acc: 0.9118\n",
      "Epoch 219/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.2807 - acc: 0.9427 - val_loss: 0.2484 - val_acc: 0.9118\n",
      "Epoch 220/1000\n",
      "157/157 [==============================] - 0s 140us/step - loss: 0.2789 - acc: 0.9427 - val_loss: 0.2471 - val_acc: 0.9118\n",
      "Epoch 221/1000\n",
      "157/157 [==============================] - 0s 267us/step - loss: 0.2770 - acc: 0.9363 - val_loss: 0.2438 - val_acc: 0.9118\n",
      "Epoch 222/1000\n",
      "157/157 [==============================] - 0s 251us/step - loss: 0.2760 - acc: 0.9427 - val_loss: 0.2423 - val_acc: 0.9118\n",
      "Epoch 223/1000\n",
      "157/157 [==============================] - 0s 298us/step - loss: 0.2745 - acc: 0.9299 - val_loss: 0.2407 - val_acc: 0.9118\n",
      "Epoch 224/1000\n",
      "157/157 [==============================] - 0s 218us/step - loss: 0.2726 - acc: 0.9490 - val_loss: 0.2411 - val_acc: 0.9118\n",
      "Epoch 225/1000\n",
      "157/157 [==============================] - 0s 293us/step - loss: 0.2707 - acc: 0.9363 - val_loss: 0.2380 - val_acc: 0.9118\n",
      "Epoch 226/1000\n",
      "157/157 [==============================] - 0s 157us/step - loss: 0.2703 - acc: 0.9427 - val_loss: 0.2386 - val_acc: 0.9118\n",
      "Epoch 227/1000\n",
      "157/157 [==============================] - 0s 213us/step - loss: 0.2681 - acc: 0.9490 - val_loss: 0.2374 - val_acc: 0.9118\n",
      "Epoch 228/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.2680 - acc: 0.9363 - val_loss: 0.2365 - val_acc: 0.9118\n",
      "Epoch 229/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.2668 - acc: 0.9236 - val_loss: 0.2342 - val_acc: 0.9118\n",
      "Epoch 230/1000\n",
      "157/157 [==============================] - 0s 213us/step - loss: 0.2652 - acc: 0.9363 - val_loss: 0.2324 - val_acc: 0.9118\n",
      "Epoch 231/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.2634 - acc: 0.9490 - val_loss: 0.2320 - val_acc: 0.9118\n",
      "Epoch 232/1000\n",
      "157/157 [==============================] - 0s 258us/step - loss: 0.2624 - acc: 0.9427 - val_loss: 0.2310 - val_acc: 0.9118\n",
      "Epoch 233/1000\n",
      "157/157 [==============================] - 0s 245us/step - loss: 0.2627 - acc: 0.9427 - val_loss: 0.2299 - val_acc: 0.9118\n",
      "Epoch 234/1000\n",
      "157/157 [==============================] - 0s 396us/step - loss: 0.2597 - acc: 0.9490 - val_loss: 0.2293 - val_acc: 0.9118\n",
      "Epoch 235/1000\n",
      "157/157 [==============================] - 0s 192us/step - loss: 0.2584 - acc: 0.9490 - val_loss: 0.2292 - val_acc: 0.9118\n",
      "Epoch 236/1000\n",
      "157/157 [==============================] - 0s 294us/step - loss: 0.2579 - acc: 0.9427 - val_loss: 0.2271 - val_acc: 0.9118\n",
      "Epoch 237/1000\n",
      "157/157 [==============================] - 0s 200us/step - loss: 0.2564 - acc: 0.9427 - val_loss: 0.2262 - val_acc: 0.9118\n",
      "Epoch 238/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "157/157 [==============================] - 0s 251us/step - loss: 0.2542 - acc: 0.9490 - val_loss: 0.2261 - val_acc: 0.9118\n",
      "Epoch 239/1000\n",
      "157/157 [==============================] - 0s 183us/step - loss: 0.2552 - acc: 0.9363 - val_loss: 0.2241 - val_acc: 0.9118\n",
      "Epoch 240/1000\n",
      "157/157 [==============================] - 0s 281us/step - loss: 0.2531 - acc: 0.9490 - val_loss: 0.2243 - val_acc: 0.9118\n",
      "Epoch 241/1000\n",
      "157/157 [==============================] - 0s 158us/step - loss: 0.2508 - acc: 0.9490 - val_loss: 0.2222 - val_acc: 0.9118\n",
      "Epoch 242/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.2530 - acc: 0.9427 - val_loss: 0.2201 - val_acc: 0.9118\n",
      "Epoch 243/1000\n",
      "157/157 [==============================] - 0s 185us/step - loss: 0.2502 - acc: 0.9554 - val_loss: 0.2198 - val_acc: 0.9118\n",
      "Epoch 244/1000\n",
      "157/157 [==============================] - 0s 125us/step - loss: 0.2478 - acc: 0.9490 - val_loss: 0.2190 - val_acc: 0.9118\n",
      "Epoch 245/1000\n",
      "157/157 [==============================] - 0s 247us/step - loss: 0.2477 - acc: 0.9490 - val_loss: 0.2185 - val_acc: 0.9118\n",
      "Epoch 246/1000\n",
      "157/157 [==============================] - 0s 164us/step - loss: 0.2458 - acc: 0.9490 - val_loss: 0.2167 - val_acc: 0.9118\n",
      "Epoch 247/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.2445 - acc: 0.9490 - val_loss: 0.2152 - val_acc: 0.9118\n",
      "Epoch 248/1000\n",
      "157/157 [==============================] - 0s 215us/step - loss: 0.2437 - acc: 0.9299 - val_loss: 0.2130 - val_acc: 0.9118\n",
      "Epoch 249/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.2420 - acc: 0.9554 - val_loss: 0.2124 - val_acc: 0.9118\n",
      "Epoch 250/1000\n",
      "157/157 [==============================] - 0s 305us/step - loss: 0.2404 - acc: 0.9490 - val_loss: 0.2109 - val_acc: 0.9118\n",
      "Epoch 251/1000\n",
      "157/157 [==============================] - 0s 237us/step - loss: 0.2428 - acc: 0.9618 - val_loss: 0.2121 - val_acc: 0.9118\n",
      "Epoch 252/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.2383 - acc: 0.9490 - val_loss: 0.2106 - val_acc: 0.9118\n",
      "Epoch 253/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.2370 - acc: 0.9618 - val_loss: 0.2111 - val_acc: 0.9118\n",
      "Epoch 254/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.2370 - acc: 0.9490 - val_loss: 0.2096 - val_acc: 0.9118\n",
      "Epoch 255/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.2390 - acc: 0.9172 - val_loss: 0.2082 - val_acc: 0.9118\n",
      "Epoch 256/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.2338 - acc: 0.9490 - val_loss: 0.2063 - val_acc: 0.9118\n",
      "Epoch 257/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.2332 - acc: 0.9554 - val_loss: 0.2063 - val_acc: 0.9118\n",
      "Epoch 258/1000\n",
      "157/157 [==============================] - 0s 135us/step - loss: 0.2319 - acc: 0.9490 - val_loss: 0.2060 - val_acc: 0.9118\n",
      "Epoch 259/1000\n",
      "157/157 [==============================] - 0s 214us/step - loss: 0.2329 - acc: 0.9299 - val_loss: 0.2034 - val_acc: 0.9118\n",
      "Epoch 260/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.2304 - acc: 0.9490 - val_loss: 0.2044 - val_acc: 0.9118\n",
      "Epoch 261/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.2307 - acc: 0.9554 - val_loss: 0.2025 - val_acc: 0.9118\n",
      "Epoch 262/1000\n",
      "157/157 [==============================] - 0s 205us/step - loss: 0.2277 - acc: 0.9554 - val_loss: 0.2018 - val_acc: 0.9118\n",
      "Epoch 263/1000\n",
      "157/157 [==============================] - 0s 118us/step - loss: 0.2265 - acc: 0.9554 - val_loss: 0.2022 - val_acc: 0.9118\n",
      "Epoch 264/1000\n",
      "157/157 [==============================] - 0s 112us/step - loss: 0.2261 - acc: 0.9490 - val_loss: 0.2007 - val_acc: 0.9118\n",
      "Epoch 265/1000\n",
      "157/157 [==============================] - 0s 183us/step - loss: 0.2256 - acc: 0.9554 - val_loss: 0.1985 - val_acc: 0.9118\n",
      "Epoch 266/1000\n",
      "157/157 [==============================] - 0s 125us/step - loss: 0.2233 - acc: 0.9618 - val_loss: 0.1982 - val_acc: 0.9118\n",
      "Epoch 267/1000\n",
      "157/157 [==============================] - 0s 202us/step - loss: 0.2220 - acc: 0.9554 - val_loss: 0.1957 - val_acc: 0.9118\n",
      "Epoch 268/1000\n",
      "157/157 [==============================] - 0s 125us/step - loss: 0.2226 - acc: 0.9554 - val_loss: 0.1957 - val_acc: 0.9118\n",
      "Epoch 269/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.2213 - acc: 0.9554 - val_loss: 0.1935 - val_acc: 0.9118\n",
      "Epoch 270/1000\n",
      "157/157 [==============================] - 0s 140us/step - loss: 0.2214 - acc: 0.9554 - val_loss: 0.1968 - val_acc: 0.9118\n",
      "Epoch 271/1000\n",
      "157/157 [==============================] - 0s 165us/step - loss: 0.2187 - acc: 0.9554 - val_loss: 0.1965 - val_acc: 0.9118\n",
      "Epoch 272/1000\n",
      "157/157 [==============================] - 0s 222us/step - loss: 0.2174 - acc: 0.9490 - val_loss: 0.1925 - val_acc: 0.9118\n",
      "Epoch 273/1000\n",
      "157/157 [==============================] - 0s 130us/step - loss: 0.2188 - acc: 0.9618 - val_loss: 0.1925 - val_acc: 0.9118\n",
      "Epoch 274/1000\n",
      "157/157 [==============================] - 0s 112us/step - loss: 0.2157 - acc: 0.9554 - val_loss: 0.1923 - val_acc: 0.9118\n",
      "Epoch 275/1000\n",
      "157/157 [==============================] - 0s 120us/step - loss: 0.2170 - acc: 0.9490 - val_loss: 0.1908 - val_acc: 0.9118\n",
      "Epoch 276/1000\n",
      "157/157 [==============================] - 0s 201us/step - loss: 0.2149 - acc: 0.9618 - val_loss: 0.1918 - val_acc: 0.9118\n",
      "Epoch 277/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.2140 - acc: 0.9618 - val_loss: 0.1924 - val_acc: 0.9118\n",
      "Epoch 278/1000\n",
      "157/157 [==============================] - 0s 121us/step - loss: 0.2128 - acc: 0.9554 - val_loss: 0.1899 - val_acc: 0.9118\n",
      "Epoch 279/1000\n",
      "157/157 [==============================] - 0s 205us/step - loss: 0.2123 - acc: 0.9618 - val_loss: 0.1881 - val_acc: 0.9118\n",
      "Epoch 280/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.2115 - acc: 0.9554 - val_loss: 0.1889 - val_acc: 0.9118\n",
      "Epoch 281/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.2115 - acc: 0.9490 - val_loss: 0.1863 - val_acc: 0.9118\n",
      "Epoch 282/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.2100 - acc: 0.9554 - val_loss: 0.1854 - val_acc: 0.9118\n",
      "Epoch 283/1000\n",
      "157/157 [==============================] - 0s 127us/step - loss: 0.2099 - acc: 0.9618 - val_loss: 0.1872 - val_acc: 0.9118\n",
      "Epoch 284/1000\n",
      "157/157 [==============================] - 0s 108us/step - loss: 0.2085 - acc: 0.9618 - val_loss: 0.1867 - val_acc: 0.9118\n",
      "Epoch 285/1000\n",
      "157/157 [==============================] - 0s 216us/step - loss: 0.2070 - acc: 0.9618 - val_loss: 0.1862 - val_acc: 0.9118\n",
      "Epoch 286/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.2061 - acc: 0.9618 - val_loss: 0.1858 - val_acc: 0.9118\n",
      "Epoch 287/1000\n",
      "157/157 [==============================] - 0s 115us/step - loss: 0.2074 - acc: 0.9554 - val_loss: 0.1866 - val_acc: 0.9118\n",
      "Epoch 288/1000\n",
      "157/157 [==============================] - 0s 134us/step - loss: 0.2052 - acc: 0.9554 - val_loss: 0.1864 - val_acc: 0.9118\n",
      "Epoch 289/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.2045 - acc: 0.9554 - val_loss: 0.1839 - val_acc: 0.9118\n",
      "Epoch 290/1000\n",
      "157/157 [==============================] - 0s 246us/step - loss: 0.2035 - acc: 0.9618 - val_loss: 0.1817 - val_acc: 0.9118\n",
      "Epoch 291/1000\n",
      "157/157 [==============================] - 0s 127us/step - loss: 0.2043 - acc: 0.9618 - val_loss: 0.1828 - val_acc: 0.9118\n",
      "Epoch 292/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.2014 - acc: 0.9618 - val_loss: 0.1832 - val_acc: 0.9118\n",
      "Epoch 293/1000\n",
      "157/157 [==============================] - 0s 165us/step - loss: 0.2014 - acc: 0.9554 - val_loss: 0.1829 - val_acc: 0.9118\n",
      "Epoch 294/1000\n",
      "157/157 [==============================] - 0s 198us/step - loss: 0.2003 - acc: 0.9618 - val_loss: 0.1822 - val_acc: 0.9118\n",
      "Epoch 295/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.2019 - acc: 0.9618 - val_loss: 0.1799 - val_acc: 0.9118\n",
      "Epoch 296/1000\n",
      "157/157 [==============================] - 0s 165us/step - loss: 0.1995 - acc: 0.9554 - val_loss: 0.1778 - val_acc: 0.9118\n",
      "Epoch 297/1000\n",
      "157/157 [==============================] - 0s 165us/step - loss: 0.1990 - acc: 0.9618 - val_loss: 0.1810 - val_acc: 0.9118\n",
      "Epoch 298/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.1975 - acc: 0.9618 - val_loss: 0.1822 - val_acc: 0.9118\n",
      "Epoch 299/1000\n",
      "157/157 [==============================] - 0s 169us/step - loss: 0.1975 - acc: 0.9490 - val_loss: 0.1800 - val_acc: 0.9118\n",
      "Epoch 300/1000\n",
      "157/157 [==============================] - 0s 270us/step - loss: 0.1964 - acc: 0.9618 - val_loss: 0.1784 - val_acc: 0.9118\n",
      "Epoch 301/1000\n",
      "157/157 [==============================] - 0s 249us/step - loss: 0.1957 - acc: 0.9618 - val_loss: 0.1755 - val_acc: 0.9118\n",
      "Epoch 302/1000\n",
      "157/157 [==============================] - 0s 368us/step - loss: 0.1977 - acc: 0.9618 - val_loss: 0.1741 - val_acc: 0.9118\n",
      "Epoch 303/1000\n",
      "157/157 [==============================] - 0s 214us/step - loss: 0.1941 - acc: 0.9554 - val_loss: 0.1766 - val_acc: 0.9118\n",
      "Epoch 304/1000\n",
      "157/157 [==============================] - 0s 283us/step - loss: 0.1930 - acc: 0.9618 - val_loss: 0.1742 - val_acc: 0.9118\n",
      "Epoch 305/1000\n",
      "157/157 [==============================] - 0s 299us/step - loss: 0.1932 - acc: 0.9618 - val_loss: 0.1752 - val_acc: 0.9118\n",
      "Epoch 306/1000\n",
      "157/157 [==============================] - 0s 284us/step - loss: 0.1930 - acc: 0.9618 - val_loss: 0.1766 - val_acc: 0.9118\n",
      "Epoch 307/1000\n",
      "157/157 [==============================] - 0s 217us/step - loss: 0.1914 - acc: 0.9618 - val_loss: 0.1746 - val_acc: 0.9118\n",
      "Epoch 308/1000\n",
      "157/157 [==============================] - 0s 303us/step - loss: 0.1918 - acc: 0.9490 - val_loss: 0.1736 - val_acc: 0.9118\n",
      "Epoch 309/1000\n",
      "157/157 [==============================] - 0s 561us/step - loss: 0.1892 - acc: 0.9618 - val_loss: 0.1723 - val_acc: 0.9118\n",
      "Epoch 310/1000\n",
      "157/157 [==============================] - 0s 379us/step - loss: 0.1897 - acc: 0.9618 - val_loss: 0.1725 - val_acc: 0.9118\n",
      "Epoch 311/1000\n",
      "157/157 [==============================] - 0s 219us/step - loss: 0.1880 - acc: 0.9618 - val_loss: 0.1721 - val_acc: 0.9118\n",
      "Epoch 312/1000\n",
      "157/157 [==============================] - 0s 181us/step - loss: 0.1872 - acc: 0.9618 - val_loss: 0.1693 - val_acc: 0.9118\n",
      "Epoch 313/1000\n",
      "157/157 [==============================] - 0s 206us/step - loss: 0.1880 - acc: 0.9554 - val_loss: 0.1679 - val_acc: 0.9118\n",
      "Epoch 314/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.1857 - acc: 0.9618 - val_loss: 0.1690 - val_acc: 0.9118\n",
      "Epoch 315/1000\n",
      "157/157 [==============================] - 0s 579us/step - loss: 0.1847 - acc: 0.9554 - val_loss: 0.1694 - val_acc: 0.9118\n",
      "Epoch 316/1000\n",
      "157/157 [==============================] - 0s 199us/step - loss: 0.1843 - acc: 0.9618 - val_loss: 0.1727 - val_acc: 0.9118\n",
      "Epoch 317/1000\n",
      "157/157 [==============================] - 0s 244us/step - loss: 0.1853 - acc: 0.9554 - val_loss: 0.1714 - val_acc: 0.9118\n",
      "Epoch 318/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.1843 - acc: 0.9618 - val_loss: 0.1680 - val_acc: 0.9118\n",
      "Epoch 319/1000\n",
      "157/157 [==============================] - 0s 249us/step - loss: 0.1815 - acc: 0.9554 - val_loss: 0.1686 - val_acc: 0.9118\n",
      "Epoch 320/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.1828 - acc: 0.9618 - val_loss: 0.1669 - val_acc: 0.9118\n",
      "Epoch 321/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.1807 - acc: 0.9618 - val_loss: 0.1646 - val_acc: 0.9118\n",
      "Epoch 322/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.1695 - acc: 0.968 - 0s 170us/step - loss: 0.1819 - acc: 0.9554 - val_loss: 0.1626 - val_acc: 0.9118\n",
      "Epoch 323/1000\n",
      "157/157 [==============================] - 0s 234us/step - loss: 0.1799 - acc: 0.9618 - val_loss: 0.1626 - val_acc: 0.9118\n",
      "Epoch 324/1000\n",
      "157/157 [==============================] - 0s 167us/step - loss: 0.1795 - acc: 0.9554 - val_loss: 0.1648 - val_acc: 0.9118\n",
      "Epoch 325/1000\n",
      "157/157 [==============================] - 0s 421us/step - loss: 0.1801 - acc: 0.9554 - val_loss: 0.1642 - val_acc: 0.9118\n",
      "Epoch 326/1000\n",
      "157/157 [==============================] - 0s 287us/step - loss: 0.1787 - acc: 0.9554 - val_loss: 0.1667 - val_acc: 0.9118\n",
      "Epoch 327/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.1770 - acc: 0.9618 - val_loss: 0.1638 - val_acc: 0.9118\n",
      "Epoch 328/1000\n",
      "157/157 [==============================] - 0s 268us/step - loss: 0.1777 - acc: 0.9618 - val_loss: 0.1619 - val_acc: 0.9118\n",
      "Epoch 329/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.1759 - acc: 0.9554 - val_loss: 0.1634 - val_acc: 0.9118\n",
      "Epoch 330/1000\n",
      "157/157 [==============================] - 0s 282us/step - loss: 0.1774 - acc: 0.9618 - val_loss: 0.1606 - val_acc: 0.9118\n",
      "Epoch 331/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.1752 - acc: 0.9554 - val_loss: 0.1633 - val_acc: 0.9118\n",
      "Epoch 332/1000\n",
      "157/157 [==============================] - 0s 524us/step - loss: 0.1749 - acc: 0.9618 - val_loss: 0.1638 - val_acc: 0.9118\n",
      "Epoch 333/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.1772 - acc: 0.9618 - val_loss: 0.1624 - val_acc: 0.9118\n",
      "Epoch 334/1000\n",
      "157/157 [==============================] - 0s 89us/step - loss: 0.1730 - acc: 0.9618 - val_loss: 0.1599 - val_acc: 0.9118\n",
      "Epoch 335/1000\n",
      "157/157 [==============================] - 0s 307us/step - loss: 0.1734 - acc: 0.9554 - val_loss: 0.1576 - val_acc: 0.9118\n",
      "Epoch 336/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.1722 - acc: 0.9554 - val_loss: 0.1603 - val_acc: 0.9118\n",
      "Epoch 337/1000\n",
      "157/157 [==============================] - 0s 270us/step - loss: 0.1731 - acc: 0.9554 - val_loss: 0.1617 - val_acc: 0.9118\n",
      "Epoch 338/1000\n",
      "157/157 [==============================] - 0s 234us/step - loss: 0.1704 - acc: 0.9618 - val_loss: 0.1619 - val_acc: 0.9118\n",
      "Epoch 339/1000\n",
      "157/157 [==============================] - 0s 400us/step - loss: 0.1709 - acc: 0.9618 - val_loss: 0.1589 - val_acc: 0.9118\n",
      "Epoch 340/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.1708 - acc: 0.9554 - val_loss: 0.1590 - val_acc: 0.9118\n",
      "Epoch 341/1000\n",
      "157/157 [==============================] - 0s 390us/step - loss: 0.1694 - acc: 0.9618 - val_loss: 0.1590 - val_acc: 0.9118\n",
      "Epoch 342/1000\n",
      "157/157 [==============================] - 0s 122us/step - loss: 0.1713 - acc: 0.9618 - val_loss: 0.1567 - val_acc: 0.9118\n",
      "Epoch 343/1000\n",
      "157/157 [==============================] - 0s 201us/step - loss: 0.1708 - acc: 0.9554 - val_loss: 0.1574 - val_acc: 0.9118\n",
      "Epoch 344/1000\n",
      "157/157 [==============================] - 0s 223us/step - loss: 0.1679 - acc: 0.9618 - val_loss: 0.1572 - val_acc: 0.9118\n",
      "Epoch 345/1000\n",
      "157/157 [==============================] - 0s 126us/step - loss: 0.1690 - acc: 0.9618 - val_loss: 0.1560 - val_acc: 0.9118\n",
      "Epoch 346/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.1676 - acc: 0.9618 - val_loss: 0.1558 - val_acc: 0.9118\n",
      "Epoch 347/1000\n",
      "157/157 [==============================] - 0s 169us/step - loss: 0.1666 - acc: 0.9618 - val_loss: 0.1556 - val_acc: 0.9118\n",
      "Epoch 348/1000\n",
      "157/157 [==============================] - 0s 198us/step - loss: 0.1675 - acc: 0.9618 - val_loss: 0.1548 - val_acc: 0.9118\n",
      "Epoch 349/1000\n",
      "157/157 [==============================] - 0s 515us/step - loss: 0.1679 - acc: 0.9554 - val_loss: 0.1564 - val_acc: 0.9118\n",
      "Epoch 350/1000\n",
      "157/157 [==============================] - 0s 200us/step - loss: 0.1647 - acc: 0.9554 - val_loss: 0.1566 - val_acc: 0.9118\n",
      "Epoch 351/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.1647 - acc: 0.9618 - val_loss: 0.1564 - val_acc: 0.9118\n",
      "Epoch 352/1000\n",
      "157/157 [==============================] - 0s 258us/step - loss: 0.1645 - acc: 0.9554 - val_loss: 0.1550 - val_acc: 0.9118\n",
      "Epoch 353/1000\n",
      "157/157 [==============================] - 0s 230us/step - loss: 0.1639 - acc: 0.9618 - val_loss: 0.1523 - val_acc: 0.9118\n",
      "Epoch 354/1000\n",
      "157/157 [==============================] - 0s 370us/step - loss: 0.1632 - acc: 0.9554 - val_loss: 0.1571 - val_acc: 0.9118\n",
      "Epoch 355/1000\n",
      "157/157 [==============================] - 0s 126us/step - loss: 0.1624 - acc: 0.9618 - val_loss: 0.1561 - val_acc: 0.9118\n",
      "Epoch 356/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "157/157 [==============================] - 0s 169us/step - loss: 0.1626 - acc: 0.9554 - val_loss: 0.1579 - val_acc: 0.9118\n",
      "Epoch 357/1000\n",
      "157/157 [==============================] - 0s 159us/step - loss: 0.1629 - acc: 0.9618 - val_loss: 0.1585 - val_acc: 0.9118\n",
      "Epoch 358/1000\n",
      "157/157 [==============================] - 0s 405us/step - loss: 0.1603 - acc: 0.9618 - val_loss: 0.1544 - val_acc: 0.9118\n",
      "Epoch 359/1000\n",
      "157/157 [==============================] - 0s 236us/step - loss: 0.1603 - acc: 0.9618 - val_loss: 0.1535 - val_acc: 0.9118\n",
      "Epoch 360/1000\n",
      "157/157 [==============================] - 0s 242us/step - loss: 0.1589 - acc: 0.9618 - val_loss: 0.1526 - val_acc: 0.9118\n",
      "Epoch 361/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.1592 - acc: 0.9618 - val_loss: 0.1506 - val_acc: 0.9118\n",
      "Epoch 362/1000\n",
      "157/157 [==============================] - 0s 115us/step - loss: 0.1594 - acc: 0.9682 - val_loss: 0.1509 - val_acc: 0.9118\n",
      "Epoch 363/1000\n",
      "157/157 [==============================] - 0s 370us/step - loss: 0.1597 - acc: 0.9618 - val_loss: 0.1533 - val_acc: 0.9118\n",
      "Epoch 364/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.1570 - acc: 0.9618 - val_loss: 0.1521 - val_acc: 0.9118\n",
      "Epoch 365/1000\n",
      "157/157 [==============================] - 0s 266us/step - loss: 0.1576 - acc: 0.9682 - val_loss: 0.1506 - val_acc: 0.9118\n",
      "Epoch 366/1000\n",
      "157/157 [==============================] - 0s 177us/step - loss: 0.1570 - acc: 0.9618 - val_loss: 0.1503 - val_acc: 0.9118\n",
      "Epoch 367/1000\n",
      "157/157 [==============================] - 0s 211us/step - loss: 0.1559 - acc: 0.9682 - val_loss: 0.1476 - val_acc: 0.9118\n",
      "Epoch 368/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.1570 - acc: 0.9618 - val_loss: 0.1474 - val_acc: 0.9118\n",
      "Epoch 369/1000\n",
      "157/157 [==============================] - 0s 226us/step - loss: 0.1546 - acc: 0.9618 - val_loss: 0.1506 - val_acc: 0.9118\n",
      "Epoch 370/1000\n",
      "157/157 [==============================] - 0s 217us/step - loss: 0.1558 - acc: 0.9618 - val_loss: 0.1481 - val_acc: 0.9118\n",
      "Epoch 371/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.1538 - acc: 0.9682 - val_loss: 0.1487 - val_acc: 0.9118\n",
      "Epoch 372/1000\n",
      "157/157 [==============================] - 0s 183us/step - loss: 0.1553 - acc: 0.9618 - val_loss: 0.1535 - val_acc: 0.9118\n",
      "Epoch 373/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.1530 - acc: 0.9682 - val_loss: 0.1485 - val_acc: 0.9118\n",
      "Epoch 374/1000\n",
      "157/157 [==============================] - 0s 234us/step - loss: 0.1523 - acc: 0.9682 - val_loss: 0.1469 - val_acc: 0.9118\n",
      "Epoch 375/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.1525 - acc: 0.9554 - val_loss: 0.1511 - val_acc: 0.9118\n",
      "Epoch 376/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.1517 - acc: 0.9682 - val_loss: 0.1465 - val_acc: 0.9118\n",
      "Epoch 377/1000\n",
      "157/157 [==============================] - 0s 251us/step - loss: 0.1517 - acc: 0.9554 - val_loss: 0.1484 - val_acc: 0.9118\n",
      "Epoch 378/1000\n",
      "157/157 [==============================] - 0s 212us/step - loss: 0.1517 - acc: 0.9682 - val_loss: 0.1423 - val_acc: 0.9265\n",
      "Epoch 379/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.1503 - acc: 0.9554 - val_loss: 0.1454 - val_acc: 0.9118\n",
      "Epoch 380/1000\n",
      "157/157 [==============================] - 0s 236us/step - loss: 0.1516 - acc: 0.9618 - val_loss: 0.1442 - val_acc: 0.9118\n",
      "Epoch 381/1000\n",
      "157/157 [==============================] - 0s 510us/step - loss: 0.1500 - acc: 0.9554 - val_loss: 0.1458 - val_acc: 0.9118\n",
      "Epoch 382/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.1501 - acc: 0.9618 - val_loss: 0.1458 - val_acc: 0.9118\n",
      "Epoch 383/1000\n",
      "157/157 [==============================] - 0s 248us/step - loss: 0.1480 - acc: 0.9682 - val_loss: 0.1443 - val_acc: 0.9118\n",
      "Epoch 384/1000\n",
      "157/157 [==============================] - 0s 187us/step - loss: 0.1478 - acc: 0.9682 - val_loss: 0.1416 - val_acc: 0.9118\n",
      "Epoch 385/1000\n",
      "157/157 [==============================] - 0s 216us/step - loss: 0.1494 - acc: 0.9554 - val_loss: 0.1457 - val_acc: 0.9118\n",
      "Epoch 386/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.1468 - acc: 0.9554 - val_loss: 0.1471 - val_acc: 0.9118\n",
      "Epoch 387/1000\n",
      "157/157 [==============================] - 0s 287us/step - loss: 0.1498 - acc: 0.9618 - val_loss: 0.1455 - val_acc: 0.9118\n",
      "Epoch 388/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.1461 - acc: 0.9618 - val_loss: 0.1428 - val_acc: 0.9118\n",
      "Epoch 389/1000\n",
      "157/157 [==============================] - 0s 238us/step - loss: 0.1462 - acc: 0.9682 - val_loss: 0.1408 - val_acc: 0.9118\n",
      "Epoch 390/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.1461 - acc: 0.9682 - val_loss: 0.1391 - val_acc: 0.9265\n",
      "Epoch 391/1000\n",
      "157/157 [==============================] - 0s 248us/step - loss: 0.1469 - acc: 0.9618 - val_loss: 0.1421 - val_acc: 0.9118\n",
      "Epoch 392/1000\n",
      "157/157 [==============================] - 0s 286us/step - loss: 0.1452 - acc: 0.9618 - val_loss: 0.1442 - val_acc: 0.9118\n",
      "Epoch 393/1000\n",
      "157/157 [==============================] - 0s 219us/step - loss: 0.1450 - acc: 0.9682 - val_loss: 0.1417 - val_acc: 0.9118\n",
      "Epoch 394/1000\n",
      "157/157 [==============================] - 0s 304us/step - loss: 0.1441 - acc: 0.9682 - val_loss: 0.1389 - val_acc: 0.9265\n",
      "Epoch 395/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.1445 - acc: 0.9618 - val_loss: 0.1395 - val_acc: 0.9118\n",
      "Epoch 396/1000\n",
      "157/157 [==============================] - 0s 136us/step - loss: 0.1428 - acc: 0.9618 - val_loss: 0.1397 - val_acc: 0.9118\n",
      "Epoch 397/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.1423 - acc: 0.9618 - val_loss: 0.1434 - val_acc: 0.9118\n",
      "Epoch 398/1000\n",
      "157/157 [==============================] - 0s 101us/step - loss: 0.1423 - acc: 0.9618 - val_loss: 0.1395 - val_acc: 0.9118\n",
      "Epoch 399/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.1431 - acc: 0.9618 - val_loss: 0.1416 - val_acc: 0.9118\n",
      "Epoch 400/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.1409 - acc: 0.9682 - val_loss: 0.1410 - val_acc: 0.9118\n",
      "Epoch 401/1000\n",
      "157/157 [==============================] - 0s 107us/step - loss: 0.1412 - acc: 0.9682 - val_loss: 0.1374 - val_acc: 0.9265\n",
      "Epoch 402/1000\n",
      "157/157 [==============================] - 0s 208us/step - loss: 0.1421 - acc: 0.9618 - val_loss: 0.1356 - val_acc: 0.9265\n",
      "Epoch 403/1000\n",
      "157/157 [==============================] - 0s 104us/step - loss: 0.1397 - acc: 0.9682 - val_loss: 0.1400 - val_acc: 0.9118\n",
      "Epoch 404/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.1398 - acc: 0.9682 - val_loss: 0.1353 - val_acc: 0.9265\n",
      "Epoch 405/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.1405 - acc: 0.9618 - val_loss: 0.1359 - val_acc: 0.9265\n",
      "Epoch 406/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.1382 - acc: 0.9682 - val_loss: 0.1353 - val_acc: 0.9265\n",
      "Epoch 407/1000\n",
      "157/157 [==============================] - 0s 251us/step - loss: 0.1390 - acc: 0.9682 - val_loss: 0.1349 - val_acc: 0.9265\n",
      "Epoch 408/1000\n",
      "157/157 [==============================] - 0s 96us/step - loss: 0.1378 - acc: 0.9682 - val_loss: 0.1368 - val_acc: 0.9118\n",
      "Epoch 409/1000\n",
      "157/157 [==============================] - 0s 245us/step - loss: 0.1372 - acc: 0.9682 - val_loss: 0.1443 - val_acc: 0.9118\n",
      "Epoch 410/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.1363 - acc: 0.9745 - val_loss: 0.1365 - val_acc: 0.9118\n",
      "Epoch 411/1000\n",
      "157/157 [==============================] - 0s 164us/step - loss: 0.1366 - acc: 0.9682 - val_loss: 0.1385 - val_acc: 0.9118\n",
      "Epoch 412/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.1371 - acc: 0.9745 - val_loss: 0.1335 - val_acc: 0.9265\n",
      "Epoch 413/1000\n",
      "157/157 [==============================] - 0s 175us/step - loss: 0.1374 - acc: 0.9682 - val_loss: 0.1359 - val_acc: 0.9118\n",
      "Epoch 414/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.1346 - acc: 0.9682 - val_loss: 0.1370 - val_acc: 0.9118\n",
      "Epoch 415/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.1352 - acc: 0.9682 - val_loss: 0.1363 - val_acc: 0.9118\n",
      "Epoch 416/1000\n",
      "157/157 [==============================] - 0s 130us/step - loss: 0.1364 - acc: 0.9745 - val_loss: 0.1368 - val_acc: 0.9118\n",
      "Epoch 417/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.1350 - acc: 0.9682 - val_loss: 0.1334 - val_acc: 0.9265\n",
      "Epoch 418/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.1272 - acc: 0.968 - 0s 196us/step - loss: 0.1331 - acc: 0.9682 - val_loss: 0.1357 - val_acc: 0.9118\n",
      "Epoch 419/1000\n",
      "157/157 [==============================] - 0s 169us/step - loss: 0.1353 - acc: 0.9682 - val_loss: 0.1349 - val_acc: 0.9118\n",
      "Epoch 420/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.1324 - acc: 0.9682 - val_loss: 0.1378 - val_acc: 0.9118\n",
      "Epoch 421/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.1327 - acc: 0.9682 - val_loss: 0.1348 - val_acc: 0.9118\n",
      "Epoch 422/1000\n",
      "157/157 [==============================] - 0s 167us/step - loss: 0.1332 - acc: 0.9618 - val_loss: 0.1372 - val_acc: 0.9118\n",
      "Epoch 423/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.1327 - acc: 0.9745 - val_loss: 0.1362 - val_acc: 0.9118\n",
      "Epoch 424/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.1312 - acc: 0.9682 - val_loss: 0.1381 - val_acc: 0.9118\n",
      "Epoch 425/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.1311 - acc: 0.9745 - val_loss: 0.1374 - val_acc: 0.9118\n",
      "Epoch 426/1000\n",
      "157/157 [==============================] - 0s 262us/step - loss: 0.1334 - acc: 0.9745 - val_loss: 0.1333 - val_acc: 0.9118\n",
      "Epoch 427/1000\n",
      "157/157 [==============================] - 0s 115us/step - loss: 0.1305 - acc: 0.9745 - val_loss: 0.1298 - val_acc: 0.9265\n",
      "Epoch 428/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.1292 - acc: 0.9682 - val_loss: 0.1335 - val_acc: 0.9118\n",
      "Epoch 429/1000\n",
      "157/157 [==============================] - 0s 135us/step - loss: 0.1336 - acc: 0.9745 - val_loss: 0.1308 - val_acc: 0.9265\n",
      "Epoch 430/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.1289 - acc: 0.9682 - val_loss: 0.1346 - val_acc: 0.9118\n",
      "Epoch 431/1000\n",
      "157/157 [==============================] - 0s 182us/step - loss: 0.1287 - acc: 0.9682 - val_loss: 0.1320 - val_acc: 0.9118\n",
      "Epoch 432/1000\n",
      "157/157 [==============================] - 0s 93us/step - loss: 0.1281 - acc: 0.9745 - val_loss: 0.1291 - val_acc: 0.9265\n",
      "Epoch 433/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.1292 - acc: 0.9682 - val_loss: 0.1353 - val_acc: 0.9118\n",
      "Epoch 434/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.1274 - acc: 0.9682 - val_loss: 0.1329 - val_acc: 0.9118\n",
      "Epoch 435/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.1275 - acc: 0.968 - 0s 161us/step - loss: 0.1285 - acc: 0.9618 - val_loss: 0.1295 - val_acc: 0.9265\n",
      "Epoch 436/1000\n",
      "157/157 [==============================] - 0s 272us/step - loss: 0.1267 - acc: 0.9809 - val_loss: 0.1263 - val_acc: 0.9265\n",
      "Epoch 437/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.1276 - acc: 0.9745 - val_loss: 0.1332 - val_acc: 0.9118\n",
      "Epoch 438/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.1263 - acc: 0.9809 - val_loss: 0.1271 - val_acc: 0.9265\n",
      "Epoch 439/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.1260 - acc: 0.9682 - val_loss: 0.1315 - val_acc: 0.9118\n",
      "Epoch 440/1000\n",
      "157/157 [==============================] - 0s 324us/step - loss: 0.1257 - acc: 0.9682 - val_loss: 0.1332 - val_acc: 0.9118\n",
      "Epoch 441/1000\n",
      "157/157 [==============================] - 0s 97us/step - loss: 0.1251 - acc: 0.9745 - val_loss: 0.1377 - val_acc: 0.9118\n",
      "Epoch 442/1000\n",
      "157/157 [==============================] - 0s 95us/step - loss: 0.1241 - acc: 0.9809 - val_loss: 0.1281 - val_acc: 0.9265\n",
      "Epoch 443/1000\n",
      "157/157 [==============================] - 0s 121us/step - loss: 0.1252 - acc: 0.9745 - val_loss: 0.1287 - val_acc: 0.9265\n",
      "Epoch 444/1000\n",
      "157/157 [==============================] - 0s 247us/step - loss: 0.1250 - acc: 0.9682 - val_loss: 0.1315 - val_acc: 0.9118\n",
      "Epoch 445/1000\n",
      "157/157 [==============================] - 0s 166us/step - loss: 0.1244 - acc: 0.9745 - val_loss: 0.1322 - val_acc: 0.9118\n",
      "Epoch 446/1000\n",
      "157/157 [==============================] - 0s 174us/step - loss: 0.1242 - acc: 0.9809 - val_loss: 0.1319 - val_acc: 0.9118\n",
      "Epoch 447/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.1229 - acc: 0.9809 - val_loss: 0.1292 - val_acc: 0.9118\n",
      "Epoch 448/1000\n",
      "157/157 [==============================] - 0s 244us/step - loss: 0.1223 - acc: 0.9682 - val_loss: 0.1276 - val_acc: 0.9265\n",
      "Epoch 449/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.1216 - acc: 0.9745 - val_loss: 0.1283 - val_acc: 0.9265\n",
      "Epoch 450/1000\n",
      "157/157 [==============================] - 0s 251us/step - loss: 0.1211 - acc: 0.9745 - val_loss: 0.1277 - val_acc: 0.9265\n",
      "Epoch 451/1000\n",
      "157/157 [==============================] - 0s 252us/step - loss: 0.1208 - acc: 0.9682 - val_loss: 0.1333 - val_acc: 0.9118\n",
      "Epoch 452/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.1207 - acc: 0.9745 - val_loss: 0.1294 - val_acc: 0.9118\n",
      "Epoch 453/1000\n",
      "157/157 [==============================] - 0s 195us/step - loss: 0.1214 - acc: 0.9745 - val_loss: 0.1307 - val_acc: 0.9118\n",
      "Epoch 454/1000\n",
      "157/157 [==============================] - 0s 198us/step - loss: 0.1217 - acc: 0.9745 - val_loss: 0.1293 - val_acc: 0.9118\n",
      "Epoch 455/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.1203 - acc: 0.9682 - val_loss: 0.1302 - val_acc: 0.9118\n",
      "Epoch 456/1000\n",
      "157/157 [==============================] - 0s 268us/step - loss: 0.1188 - acc: 0.9682 - val_loss: 0.1237 - val_acc: 0.9265\n",
      "Epoch 457/1000\n",
      "157/157 [==============================] - 0s 285us/step - loss: 0.1221 - acc: 0.9682 - val_loss: 0.1258 - val_acc: 0.9265\n",
      "Epoch 458/1000\n",
      "157/157 [==============================] - 0s 277us/step - loss: 0.1183 - acc: 0.9745 - val_loss: 0.1293 - val_acc: 0.9118\n",
      "Epoch 459/1000\n",
      "157/157 [==============================] - 0s 124us/step - loss: 0.1191 - acc: 0.9745 - val_loss: 0.1256 - val_acc: 0.9265\n",
      "Epoch 460/1000\n",
      "157/157 [==============================] - 0s 204us/step - loss: 0.1178 - acc: 0.9682 - val_loss: 0.1273 - val_acc: 0.9118\n",
      "Epoch 461/1000\n",
      "157/157 [==============================] - 0s 118us/step - loss: 0.1176 - acc: 0.9682 - val_loss: 0.1316 - val_acc: 0.9118\n",
      "Epoch 462/1000\n",
      "157/157 [==============================] - 0s 124us/step - loss: 0.1192 - acc: 0.9809 - val_loss: 0.1270 - val_acc: 0.9118\n",
      "Epoch 463/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.1189 - acc: 0.9809 - val_loss: 0.1244 - val_acc: 0.9265\n",
      "Epoch 464/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.1176 - acc: 0.9682 - val_loss: 0.1269 - val_acc: 0.9118\n",
      "Epoch 465/1000\n",
      "157/157 [==============================] - 0s 122us/step - loss: 0.1179 - acc: 0.9809 - val_loss: 0.1228 - val_acc: 0.9265\n",
      "Epoch 466/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.1171 - acc: 0.9682 - val_loss: 0.1279 - val_acc: 0.9118\n",
      "Epoch 467/1000\n",
      "157/157 [==============================] - 0s 111us/step - loss: 0.1173 - acc: 0.9745 - val_loss: 0.1255 - val_acc: 0.9265\n",
      "Epoch 468/1000\n",
      "157/157 [==============================] - 0s 116us/step - loss: 0.1161 - acc: 0.9745 - val_loss: 0.1241 - val_acc: 0.9265\n",
      "Epoch 469/1000\n",
      "157/157 [==============================] - 0s 221us/step - loss: 0.1147 - acc: 0.9745 - val_loss: 0.1247 - val_acc: 0.9265\n",
      "Epoch 470/1000\n",
      "157/157 [==============================] - 0s 211us/step - loss: 0.1158 - acc: 0.9809 - val_loss: 0.1220 - val_acc: 0.9265\n",
      "Epoch 471/1000\n",
      "157/157 [==============================] - 0s 126us/step - loss: 0.1143 - acc: 0.9682 - val_loss: 0.1254 - val_acc: 0.9118\n",
      "Epoch 472/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.0983 - acc: 1.000 - 0s 138us/step - loss: 0.1152 - acc: 0.9745 - val_loss: 0.1270 - val_acc: 0.9118\n",
      "Epoch 473/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "157/157 [==============================] - 0s 162us/step - loss: 0.1152 - acc: 0.9745 - val_loss: 0.1234 - val_acc: 0.9265\n",
      "Epoch 474/1000\n",
      "157/157 [==============================] - 0s 139us/step - loss: 0.1172 - acc: 0.9682 - val_loss: 0.1206 - val_acc: 0.9265\n",
      "Epoch 475/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.1132 - acc: 0.9745 - val_loss: 0.1195 - val_acc: 0.9265\n",
      "Epoch 476/1000\n",
      "157/157 [==============================] - 0s 140us/step - loss: 0.1137 - acc: 0.9682 - val_loss: 0.1242 - val_acc: 0.9265\n",
      "Epoch 477/1000\n",
      "157/157 [==============================] - 0s 165us/step - loss: 0.1127 - acc: 0.9682 - val_loss: 0.1263 - val_acc: 0.9118\n",
      "Epoch 478/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.0833 - acc: 0.968 - 0s 168us/step - loss: 0.1156 - acc: 0.9682 - val_loss: 0.1246 - val_acc: 0.9118\n",
      "Epoch 479/1000\n",
      "157/157 [==============================] - 0s 169us/step - loss: 0.1123 - acc: 0.9745 - val_loss: 0.1227 - val_acc: 0.9265\n",
      "Epoch 480/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.1129 - acc: 0.9809 - val_loss: 0.1195 - val_acc: 0.9265\n",
      "Epoch 481/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.1133 - acc: 0.9682 - val_loss: 0.1225 - val_acc: 0.9265\n",
      "Epoch 482/1000\n",
      "157/157 [==============================] - 0s 205us/step - loss: 0.1130 - acc: 0.9745 - val_loss: 0.1259 - val_acc: 0.9118\n",
      "Epoch 483/1000\n",
      "157/157 [==============================] - 0s 140us/step - loss: 0.1113 - acc: 0.9745 - val_loss: 0.1233 - val_acc: 0.9265\n",
      "Epoch 484/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.1114 - acc: 0.9745 - val_loss: 0.1219 - val_acc: 0.9265\n",
      "Epoch 485/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.1110 - acc: 0.9809 - val_loss: 0.1184 - val_acc: 0.9265\n",
      "Epoch 486/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.1107 - acc: 0.9745 - val_loss: 0.1186 - val_acc: 0.9265\n",
      "Epoch 487/1000\n",
      "157/157 [==============================] - 0s 157us/step - loss: 0.1109 - acc: 0.9745 - val_loss: 0.1221 - val_acc: 0.9265\n",
      "Epoch 488/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.1108 - acc: 0.9745 - val_loss: 0.1222 - val_acc: 0.9265\n",
      "Epoch 489/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.1097 - acc: 0.9745 - val_loss: 0.1182 - val_acc: 0.9265\n",
      "Epoch 490/1000\n",
      "157/157 [==============================] - 0s 190us/step - loss: 0.1088 - acc: 0.9745 - val_loss: 0.1242 - val_acc: 0.9118\n",
      "Epoch 491/1000\n",
      "157/157 [==============================] - 0s 209us/step - loss: 0.1098 - acc: 0.9809 - val_loss: 0.1260 - val_acc: 0.9118\n",
      "Epoch 492/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.1094 - acc: 0.9809 - val_loss: 0.1200 - val_acc: 0.9265\n",
      "Epoch 493/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.1081 - acc: 0.9745 - val_loss: 0.1216 - val_acc: 0.9265\n",
      "Epoch 494/1000\n",
      "157/157 [==============================] - 0s 212us/step - loss: 0.1083 - acc: 0.9745 - val_loss: 0.1202 - val_acc: 0.9265\n",
      "Epoch 495/1000\n",
      "157/157 [==============================] - 0s 223us/step - loss: 0.1083 - acc: 0.9809 - val_loss: 0.1167 - val_acc: 0.9412\n",
      "Epoch 496/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.1081 - acc: 0.9809 - val_loss: 0.1146 - val_acc: 0.9412\n",
      "Epoch 497/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.1083 - acc: 0.9745 - val_loss: 0.1203 - val_acc: 0.9265\n",
      "Epoch 498/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.1076 - acc: 0.9745 - val_loss: 0.1177 - val_acc: 0.9265\n",
      "Epoch 499/1000\n",
      "157/157 [==============================] - 0s 158us/step - loss: 0.1064 - acc: 0.9745 - val_loss: 0.1182 - val_acc: 0.9265\n",
      "Epoch 500/1000\n",
      "157/157 [==============================] - 0s 134us/step - loss: 0.1057 - acc: 0.9745 - val_loss: 0.1216 - val_acc: 0.9265\n",
      "Epoch 501/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.1051 - acc: 0.9809 - val_loss: 0.1191 - val_acc: 0.9265\n",
      "Epoch 502/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.1072 - acc: 0.9809 - val_loss: 0.1160 - val_acc: 0.9265\n",
      "Epoch 503/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.1057 - acc: 0.9745 - val_loss: 0.1191 - val_acc: 0.9265\n",
      "Epoch 504/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.1049 - acc: 0.9745 - val_loss: 0.1157 - val_acc: 0.9265\n",
      "Epoch 505/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.1047 - acc: 0.9745 - val_loss: 0.1153 - val_acc: 0.9265\n",
      "Epoch 506/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.1035 - acc: 0.9745 - val_loss: 0.1202 - val_acc: 0.9265\n",
      "Epoch 507/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.1053 - acc: 0.9745 - val_loss: 0.1162 - val_acc: 0.9265\n",
      "Epoch 508/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.1041 - acc: 0.9745 - val_loss: 0.1157 - val_acc: 0.9265\n",
      "Epoch 509/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.1039 - acc: 0.9745 - val_loss: 0.1160 - val_acc: 0.9265\n",
      "Epoch 510/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.1037 - acc: 0.9745 - val_loss: 0.1190 - val_acc: 0.9265\n",
      "Epoch 511/1000\n",
      "157/157 [==============================] - 0s 135us/step - loss: 0.1018 - acc: 0.9809 - val_loss: 0.1144 - val_acc: 0.9412\n",
      "Epoch 512/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.1041 - acc: 0.9745 - val_loss: 0.1220 - val_acc: 0.9118\n",
      "Epoch 513/1000\n",
      "157/157 [==============================] - 0s 166us/step - loss: 0.1027 - acc: 0.9745 - val_loss: 0.1166 - val_acc: 0.9265\n",
      "Epoch 514/1000\n",
      "157/157 [==============================] - 0s 132us/step - loss: 0.1014 - acc: 0.9745 - val_loss: 0.1172 - val_acc: 0.9265\n",
      "Epoch 515/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.1013 - acc: 0.9745 - val_loss: 0.1135 - val_acc: 0.9412\n",
      "Epoch 516/1000\n",
      "157/157 [==============================] - 0s 336us/step - loss: 0.1011 - acc: 0.9809 - val_loss: 0.1219 - val_acc: 0.9118\n",
      "Epoch 517/1000\n",
      "157/157 [==============================] - 0s 199us/step - loss: 0.1009 - acc: 0.9745 - val_loss: 0.1199 - val_acc: 0.9265\n",
      "Epoch 518/1000\n",
      "157/157 [==============================] - 0s 139us/step - loss: 0.1040 - acc: 0.9745 - val_loss: 0.1156 - val_acc: 0.9265\n",
      "Epoch 519/1000\n",
      "157/157 [==============================] - 0s 114us/step - loss: 0.1007 - acc: 0.9809 - val_loss: 0.1185 - val_acc: 0.9265\n",
      "Epoch 520/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.1000 - acc: 0.9809 - val_loss: 0.1175 - val_acc: 0.9265\n",
      "Epoch 521/1000\n",
      "157/157 [==============================] - 0s 187us/step - loss: 0.1008 - acc: 0.9745 - val_loss: 0.1102 - val_acc: 0.9559\n",
      "Epoch 522/1000\n",
      "157/157 [==============================] - 0s 145us/step - loss: 0.1014 - acc: 0.9809 - val_loss: 0.1169 - val_acc: 0.9265\n",
      "Epoch 523/1000\n",
      "157/157 [==============================] - 0s 139us/step - loss: 0.0998 - acc: 0.9745 - val_loss: 0.1142 - val_acc: 0.9265\n",
      "Epoch 524/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.1006 - acc: 0.9809 - val_loss: 0.1158 - val_acc: 0.9265\n",
      "Epoch 525/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.1005 - acc: 0.9745 - val_loss: 0.1154 - val_acc: 0.9265\n",
      "Epoch 526/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.0992 - acc: 0.9745 - val_loss: 0.1177 - val_acc: 0.9265\n",
      "Epoch 527/1000\n",
      "157/157 [==============================] - 0s 145us/step - loss: 0.0990 - acc: 0.9745 - val_loss: 0.1193 - val_acc: 0.9118\n",
      "Epoch 528/1000\n",
      "157/157 [==============================] - 0s 139us/step - loss: 0.0984 - acc: 0.9745 - val_loss: 0.1163 - val_acc: 0.9265\n",
      "Epoch 529/1000\n",
      "157/157 [==============================] - 0s 147us/step - loss: 0.0990 - acc: 0.9745 - val_loss: 0.1127 - val_acc: 0.9412\n",
      "Epoch 530/1000\n",
      "157/157 [==============================] - 0s 340us/step - loss: 0.0972 - acc: 0.9809 - val_loss: 0.1201 - val_acc: 0.9118\n",
      "Epoch 531/1000\n",
      "157/157 [==============================] - 0s 277us/step - loss: 0.0994 - acc: 0.9745 - val_loss: 0.1132 - val_acc: 0.9412\n",
      "Epoch 532/1000\n",
      "157/157 [==============================] - 0s 287us/step - loss: 0.0974 - acc: 0.9745 - val_loss: 0.1083 - val_acc: 0.9559\n",
      "Epoch 533/1000\n",
      "157/157 [==============================] - 0s 209us/step - loss: 0.0983 - acc: 0.9809 - val_loss: 0.1158 - val_acc: 0.9265\n",
      "Epoch 534/1000\n",
      "157/157 [==============================] - 0s 231us/step - loss: 0.0970 - acc: 0.9809 - val_loss: 0.1187 - val_acc: 0.9118\n",
      "Epoch 535/1000\n",
      "157/157 [==============================] - 0s 176us/step - loss: 0.0970 - acc: 0.9745 - val_loss: 0.1159 - val_acc: 0.9265\n",
      "Epoch 536/1000\n",
      "157/157 [==============================] - 0s 350us/step - loss: 0.0962 - acc: 0.9745 - val_loss: 0.1169 - val_acc: 0.9265\n",
      "Epoch 537/1000\n",
      "157/157 [==============================] - 0s 226us/step - loss: 0.0974 - acc: 0.9745 - val_loss: 0.1178 - val_acc: 0.9265\n",
      "Epoch 538/1000\n",
      "157/157 [==============================] - 0s 330us/step - loss: 0.0957 - acc: 0.9809 - val_loss: 0.1080 - val_acc: 0.9559\n",
      "Epoch 539/1000\n",
      "157/157 [==============================] - 0s 259us/step - loss: 0.0956 - acc: 0.9873 - val_loss: 0.1122 - val_acc: 0.9412\n",
      "Epoch 540/1000\n",
      "157/157 [==============================] - 0s 208us/step - loss: 0.0954 - acc: 0.9745 - val_loss: 0.1095 - val_acc: 0.9559\n",
      "Epoch 541/1000\n",
      "157/157 [==============================] - 0s 140us/step - loss: 0.0965 - acc: 0.9809 - val_loss: 0.1096 - val_acc: 0.9559\n",
      "Epoch 542/1000\n",
      "157/157 [==============================] - 0s 139us/step - loss: 0.0943 - acc: 0.9809 - val_loss: 0.1129 - val_acc: 0.9265\n",
      "Epoch 543/1000\n",
      "157/157 [==============================] - 0s 209us/step - loss: 0.0951 - acc: 0.9809 - val_loss: 0.1135 - val_acc: 0.9265\n",
      "Epoch 544/1000\n",
      "157/157 [==============================] - 0s 130us/step - loss: 0.0950 - acc: 0.9809 - val_loss: 0.1144 - val_acc: 0.9265\n",
      "Epoch 545/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.0944 - acc: 0.9745 - val_loss: 0.1093 - val_acc: 0.9559\n",
      "Epoch 546/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0939 - acc: 0.9745 - val_loss: 0.1086 - val_acc: 0.9559\n",
      "Epoch 547/1000\n",
      "157/157 [==============================] - 0s 208us/step - loss: 0.0935 - acc: 0.9745 - val_loss: 0.1047 - val_acc: 0.9559\n",
      "Epoch 548/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0938 - acc: 0.9809 - val_loss: 0.1097 - val_acc: 0.9559\n",
      "Epoch 549/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.0938 - acc: 0.9809 - val_loss: 0.1163 - val_acc: 0.9265\n",
      "Epoch 550/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.1062 - acc: 0.968 - 0s 177us/step - loss: 0.0944 - acc: 0.9809 - val_loss: 0.1127 - val_acc: 0.9265\n",
      "Epoch 551/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.0920 - acc: 0.9809 - val_loss: 0.1087 - val_acc: 0.9559\n",
      "Epoch 552/1000\n",
      "157/157 [==============================] - 0s 159us/step - loss: 0.0917 - acc: 0.9873 - val_loss: 0.1094 - val_acc: 0.9559\n",
      "Epoch 553/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0946 - acc: 0.9809 - val_loss: 0.1089 - val_acc: 0.9559\n",
      "Epoch 554/1000\n",
      "157/157 [==============================] - 0s 181us/step - loss: 0.0914 - acc: 0.9809 - val_loss: 0.1117 - val_acc: 0.9265\n",
      "Epoch 555/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.0918 - acc: 0.9873 - val_loss: 0.1154 - val_acc: 0.9265\n",
      "Epoch 556/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.0916 - acc: 0.9745 - val_loss: 0.1064 - val_acc: 0.9559\n",
      "Epoch 557/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.0930 - acc: 0.9809 - val_loss: 0.1102 - val_acc: 0.9559\n",
      "Epoch 558/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.0911 - acc: 0.9809 - val_loss: 0.1076 - val_acc: 0.9559\n",
      "Epoch 559/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.0908 - acc: 0.9809 - val_loss: 0.1167 - val_acc: 0.9118\n",
      "Epoch 560/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.0902 - acc: 0.9745 - val_loss: 0.1082 - val_acc: 0.9559\n",
      "Epoch 561/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.0918 - acc: 0.9745 - val_loss: 0.1033 - val_acc: 0.9559\n",
      "Epoch 562/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.0896 - acc: 0.9873 - val_loss: 0.1126 - val_acc: 0.9265\n",
      "Epoch 563/1000\n",
      "157/157 [==============================] - 0s 132us/step - loss: 0.0903 - acc: 0.9809 - val_loss: 0.1043 - val_acc: 0.9559\n",
      "Epoch 564/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.0901 - acc: 0.9745 - val_loss: 0.1031 - val_acc: 0.9559\n",
      "Epoch 565/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.0889 - acc: 0.9873 - val_loss: 0.1165 - val_acc: 0.9118\n",
      "Epoch 566/1000\n",
      "157/157 [==============================] - 0s 120us/step - loss: 0.0889 - acc: 0.9809 - val_loss: 0.1029 - val_acc: 0.9559\n",
      "Epoch 567/1000\n",
      "157/157 [==============================] - 0s 138us/step - loss: 0.0892 - acc: 0.9873 - val_loss: 0.1111 - val_acc: 0.9265\n",
      "Epoch 568/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.0887 - acc: 0.9809 - val_loss: 0.1072 - val_acc: 0.9559\n",
      "Epoch 569/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.0903 - acc: 0.9809 - val_loss: 0.1057 - val_acc: 0.9559\n",
      "Epoch 570/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.0879 - acc: 0.9873 - val_loss: 0.1071 - val_acc: 0.9559\n",
      "Epoch 571/1000\n",
      "157/157 [==============================] - 0s 254us/step - loss: 0.0902 - acc: 0.9745 - val_loss: 0.1026 - val_acc: 0.9559\n",
      "Epoch 572/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.0894 - acc: 0.9809 - val_loss: 0.1060 - val_acc: 0.9559\n",
      "Epoch 573/1000\n",
      "157/157 [==============================] - 0s 233us/step - loss: 0.0878 - acc: 0.9809 - val_loss: 0.1063 - val_acc: 0.9559\n",
      "Epoch 574/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.0903 - acc: 0.9809 - val_loss: 0.1055 - val_acc: 0.9559\n",
      "Epoch 575/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.0873 - acc: 0.9809 - val_loss: 0.1051 - val_acc: 0.9559\n",
      "Epoch 576/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.0896 - acc: 0.9745 - val_loss: 0.1032 - val_acc: 0.9559\n",
      "Epoch 577/1000\n",
      "157/157 [==============================] - 0s 190us/step - loss: 0.0873 - acc: 0.9809 - val_loss: 0.1079 - val_acc: 0.9559\n",
      "Epoch 578/1000\n",
      "157/157 [==============================] - 0s 176us/step - loss: 0.0868 - acc: 0.9745 - val_loss: 0.1049 - val_acc: 0.9559\n",
      "Epoch 579/1000\n",
      "157/157 [==============================] - 0s 605us/step - loss: 0.0879 - acc: 0.9809 - val_loss: 0.1005 - val_acc: 0.9559\n",
      "Epoch 580/1000\n",
      "157/157 [==============================] - 0s 201us/step - loss: 0.0862 - acc: 0.9873 - val_loss: 0.1069 - val_acc: 0.9559\n",
      "Epoch 581/1000\n",
      "157/157 [==============================] - 0s 175us/step - loss: 0.0891 - acc: 0.9809 - val_loss: 0.1084 - val_acc: 0.9559\n",
      "Epoch 582/1000\n",
      "157/157 [==============================] - 0s 262us/step - loss: 0.0857 - acc: 0.9809 - val_loss: 0.1103 - val_acc: 0.9265\n",
      "Epoch 583/1000\n",
      "157/157 [==============================] - 0s 147us/step - loss: 0.0861 - acc: 0.9809 - val_loss: 0.1083 - val_acc: 0.9559\n",
      "Epoch 584/1000\n",
      "157/157 [==============================] - 0s 243us/step - loss: 0.0890 - acc: 0.9809 - val_loss: 0.1060 - val_acc: 0.9559\n",
      "Epoch 585/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0853 - acc: 0.9809 - val_loss: 0.1076 - val_acc: 0.9559\n",
      "Epoch 586/1000\n",
      "157/157 [==============================] - 0s 294us/step - loss: 0.0869 - acc: 0.9745 - val_loss: 0.1027 - val_acc: 0.9559\n",
      "Epoch 587/1000\n",
      "157/157 [==============================] - 0s 279us/step - loss: 0.0859 - acc: 0.9809 - val_loss: 0.1073 - val_acc: 0.9559\n",
      "Epoch 588/1000\n",
      "157/157 [==============================] - 0s 215us/step - loss: 0.0849 - acc: 0.9873 - val_loss: 0.1131 - val_acc: 0.9265\n",
      "Epoch 589/1000\n",
      "157/157 [==============================] - 0s 357us/step - loss: 0.0856 - acc: 0.9745 - val_loss: 0.1021 - val_acc: 0.9559\n",
      "Epoch 590/1000\n",
      "157/157 [==============================] - 0s 113us/step - loss: 0.0865 - acc: 0.9873 - val_loss: 0.1045 - val_acc: 0.9559\n",
      "Epoch 591/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "157/157 [==============================] - 0s 132us/step - loss: 0.0840 - acc: 0.9809 - val_loss: 0.1031 - val_acc: 0.9559\n",
      "Epoch 592/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0847 - acc: 0.9873 - val_loss: 0.1088 - val_acc: 0.9559\n",
      "Epoch 593/1000\n",
      "157/157 [==============================] - 0s 241us/step - loss: 0.0844 - acc: 0.9809 - val_loss: 0.1104 - val_acc: 0.9412\n",
      "Epoch 594/1000\n",
      "157/157 [==============================] - 0s 289us/step - loss: 0.0846 - acc: 0.9873 - val_loss: 0.1109 - val_acc: 0.9265\n",
      "Epoch 595/1000\n",
      "157/157 [==============================] - 0s 119us/step - loss: 0.0841 - acc: 0.9809 - val_loss: 0.1089 - val_acc: 0.9559\n",
      "Epoch 596/1000\n",
      "157/157 [==============================] - 0s 166us/step - loss: 0.0842 - acc: 0.9809 - val_loss: 0.1101 - val_acc: 0.9265\n",
      "Epoch 597/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.0845 - acc: 0.9809 - val_loss: 0.1052 - val_acc: 0.9559\n",
      "Epoch 598/1000\n",
      "157/157 [==============================] - 0s 239us/step - loss: 0.0824 - acc: 0.9809 - val_loss: 0.1039 - val_acc: 0.9559\n",
      "Epoch 599/1000\n",
      "157/157 [==============================] - 0s 203us/step - loss: 0.0832 - acc: 0.9936 - val_loss: 0.1032 - val_acc: 0.9559\n",
      "Epoch 600/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0825 - acc: 0.9809 - val_loss: 0.1041 - val_acc: 0.9559\n",
      "Epoch 601/1000\n",
      "157/157 [==============================] - 0s 224us/step - loss: 0.0831 - acc: 0.9809 - val_loss: 0.1038 - val_acc: 0.9559\n",
      "Epoch 602/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.0829 - acc: 0.9809 - val_loss: 0.1097 - val_acc: 0.9412\n",
      "Epoch 603/1000\n",
      "157/157 [==============================] - 0s 259us/step - loss: 0.0830 - acc: 0.9809 - val_loss: 0.1023 - val_acc: 0.9559\n",
      "Epoch 604/1000\n",
      "157/157 [==============================] - 0s 224us/step - loss: 0.0824 - acc: 0.9873 - val_loss: 0.1132 - val_acc: 0.9118\n",
      "Epoch 605/1000\n",
      "157/157 [==============================] - 0s 96us/step - loss: 0.0827 - acc: 0.9809 - val_loss: 0.1121 - val_acc: 0.9265\n",
      "Epoch 606/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0831 - acc: 0.9873 - val_loss: 0.1072 - val_acc: 0.9559\n",
      "Epoch 607/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.0813 - acc: 0.9809 - val_loss: 0.1062 - val_acc: 0.9559\n",
      "Epoch 608/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.0817 - acc: 0.9809 - val_loss: 0.1049 - val_acc: 0.9559\n",
      "Epoch 609/1000\n",
      "157/157 [==============================] - 0s 112us/step - loss: 0.0817 - acc: 0.9809 - val_loss: 0.1018 - val_acc: 0.9559\n",
      "Epoch 610/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0808 - acc: 0.9873 - val_loss: 0.1021 - val_acc: 0.9559\n",
      "Epoch 611/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.0812 - acc: 0.9873 - val_loss: 0.1007 - val_acc: 0.9559\n",
      "Epoch 612/1000\n",
      "157/157 [==============================] - 0s 502us/step - loss: 0.0817 - acc: 0.9873 - val_loss: 0.1089 - val_acc: 0.9412\n",
      "Epoch 613/1000\n",
      "157/157 [==============================] - 0s 312us/step - loss: 0.0810 - acc: 0.9809 - val_loss: 0.1070 - val_acc: 0.9559\n",
      "Epoch 614/1000\n",
      "157/157 [==============================] - 0s 203us/step - loss: 0.0806 - acc: 0.9873 - val_loss: 0.1112 - val_acc: 0.9265\n",
      "Epoch 615/1000\n",
      "157/157 [==============================] - 0s 243us/step - loss: 0.0797 - acc: 0.9809 - val_loss: 0.1005 - val_acc: 0.9559\n",
      "Epoch 616/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.0810 - acc: 0.9809 - val_loss: 0.1057 - val_acc: 0.9559\n",
      "Epoch 617/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.0825 - acc: 0.9809 - val_loss: 0.1116 - val_acc: 0.9265\n",
      "Epoch 618/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.0801 - acc: 0.9809 - val_loss: 0.1021 - val_acc: 0.9559\n",
      "Epoch 619/1000\n",
      "157/157 [==============================] - 0s 198us/step - loss: 0.0788 - acc: 0.9809 - val_loss: 0.1018 - val_acc: 0.9559\n",
      "Epoch 620/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0816 - acc: 0.9809 - val_loss: 0.1011 - val_acc: 0.9559\n",
      "Epoch 621/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.0807 - acc: 0.9809 - val_loss: 0.1004 - val_acc: 0.9559\n",
      "Epoch 622/1000\n",
      "157/157 [==============================] - 0s 203us/step - loss: 0.0795 - acc: 0.9809 - val_loss: 0.0986 - val_acc: 0.9559\n",
      "Epoch 623/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.0804 - acc: 0.9809 - val_loss: 0.1027 - val_acc: 0.9559\n",
      "Epoch 624/1000\n",
      "157/157 [==============================] - 0s 295us/step - loss: 0.0787 - acc: 0.9873 - val_loss: 0.1072 - val_acc: 0.9559\n",
      "Epoch 625/1000\n",
      "157/157 [==============================] - 0s 215us/step - loss: 0.0798 - acc: 0.9809 - val_loss: 0.1022 - val_acc: 0.9559\n",
      "Epoch 626/1000\n",
      "157/157 [==============================] - 0s 288us/step - loss: 0.0779 - acc: 0.9873 - val_loss: 0.1063 - val_acc: 0.9559\n",
      "Epoch 627/1000\n",
      "157/157 [==============================] - 0s 257us/step - loss: 0.0777 - acc: 0.9809 - val_loss: 0.1014 - val_acc: 0.9559\n",
      "Epoch 628/1000\n",
      "157/157 [==============================] - 0s 230us/step - loss: 0.0779 - acc: 0.9873 - val_loss: 0.0965 - val_acc: 0.9706\n",
      "Epoch 629/1000\n",
      "157/157 [==============================] - 0s 198us/step - loss: 0.0782 - acc: 0.9809 - val_loss: 0.1018 - val_acc: 0.9559\n",
      "Epoch 630/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.0772 - acc: 0.9873 - val_loss: 0.1039 - val_acc: 0.9559\n",
      "Epoch 631/1000\n",
      "157/157 [==============================] - 0s 190us/step - loss: 0.0771 - acc: 0.9873 - val_loss: 0.1081 - val_acc: 0.9559\n",
      "Epoch 632/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.0780 - acc: 0.9809 - val_loss: 0.0956 - val_acc: 0.9706\n",
      "Epoch 633/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.0770 - acc: 0.9809 - val_loss: 0.0983 - val_acc: 0.9559\n",
      "Epoch 634/1000\n",
      "157/157 [==============================] - 0s 166us/step - loss: 0.0787 - acc: 0.9809 - val_loss: 0.1033 - val_acc: 0.9559\n",
      "Epoch 635/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.0765 - acc: 0.9809 - val_loss: 0.0989 - val_acc: 0.9559\n",
      "Epoch 636/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0778 - acc: 0.9809 - val_loss: 0.1014 - val_acc: 0.9559\n",
      "Epoch 637/1000\n",
      "157/157 [==============================] - 0s 125us/step - loss: 0.0762 - acc: 0.9873 - val_loss: 0.1015 - val_acc: 0.9559\n",
      "Epoch 638/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0757 - acc: 0.9873 - val_loss: 0.1073 - val_acc: 0.9559\n",
      "Epoch 639/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.0777 - acc: 0.9873 - val_loss: 0.1046 - val_acc: 0.9559\n",
      "Epoch 640/1000\n",
      "157/157 [==============================] - 0s 128us/step - loss: 0.0768 - acc: 0.9873 - val_loss: 0.1076 - val_acc: 0.9559\n",
      "Epoch 641/1000\n",
      "157/157 [==============================] - 0s 147us/step - loss: 0.0783 - acc: 0.9745 - val_loss: 0.1049 - val_acc: 0.9559\n",
      "Epoch 642/1000\n",
      "157/157 [==============================] - 0s 256us/step - loss: 0.0751 - acc: 0.9873 - val_loss: 0.1052 - val_acc: 0.9559\n",
      "Epoch 643/1000\n",
      "157/157 [==============================] - 0s 252us/step - loss: 0.0759 - acc: 0.9809 - val_loss: 0.0991 - val_acc: 0.9559\n",
      "Epoch 644/1000\n",
      "157/157 [==============================] - 0s 302us/step - loss: 0.0753 - acc: 0.9809 - val_loss: 0.0980 - val_acc: 0.9559\n",
      "Epoch 645/1000\n",
      "157/157 [==============================] - 0s 325us/step - loss: 0.0758 - acc: 0.9809 - val_loss: 0.0942 - val_acc: 0.9706\n",
      "Epoch 646/1000\n",
      "157/157 [==============================] - 0s 242us/step - loss: 0.0751 - acc: 0.9873 - val_loss: 0.0975 - val_acc: 0.9559\n",
      "Epoch 647/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.0740 - acc: 0.9873 - val_loss: 0.1068 - val_acc: 0.9559\n",
      "Epoch 648/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.0754 - acc: 0.9745 - val_loss: 0.0966 - val_acc: 0.9559\n",
      "Epoch 649/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.0736 - acc: 0.9873 - val_loss: 0.1073 - val_acc: 0.9559\n",
      "Epoch 650/1000\n",
      "157/157 [==============================] - 0s 119us/step - loss: 0.0754 - acc: 0.9809 - val_loss: 0.0996 - val_acc: 0.9559\n",
      "Epoch 651/1000\n",
      "157/157 [==============================] - 0s 125us/step - loss: 0.0730 - acc: 0.9873 - val_loss: 0.1035 - val_acc: 0.9559\n",
      "Epoch 652/1000\n",
      "157/157 [==============================] - 0s 100us/step - loss: 0.0745 - acc: 0.9873 - val_loss: 0.1131 - val_acc: 0.9118\n",
      "Epoch 653/1000\n",
      "157/157 [==============================] - 0s 176us/step - loss: 0.0778 - acc: 0.9809 - val_loss: 0.1017 - val_acc: 0.9559\n",
      "Epoch 654/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.0732 - acc: 0.9809 - val_loss: 0.0970 - val_acc: 0.9559\n",
      "Epoch 655/1000\n",
      "157/157 [==============================] - 0s 214us/step - loss: 0.0734 - acc: 0.9873 - val_loss: 0.1025 - val_acc: 0.9559\n",
      "Epoch 656/1000\n",
      "157/157 [==============================] - 0s 240us/step - loss: 0.0732 - acc: 0.9809 - val_loss: 0.1020 - val_acc: 0.9559\n",
      "Epoch 657/1000\n",
      "157/157 [==============================] - 0s 255us/step - loss: 0.0733 - acc: 0.9809 - val_loss: 0.0967 - val_acc: 0.9559\n",
      "Epoch 658/1000\n",
      "157/157 [==============================] - 0s 187us/step - loss: 0.0724 - acc: 0.9873 - val_loss: 0.0989 - val_acc: 0.9559\n",
      "Epoch 659/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.0740 - acc: 0.9873 - val_loss: 0.0978 - val_acc: 0.9559\n",
      "Epoch 660/1000\n",
      "157/157 [==============================] - 0s 378us/step - loss: 0.0744 - acc: 0.9873 - val_loss: 0.0978 - val_acc: 0.9559\n",
      "Epoch 661/1000\n",
      "157/157 [==============================] - 0s 243us/step - loss: 0.0719 - acc: 0.9873 - val_loss: 0.0981 - val_acc: 0.9559\n",
      "Epoch 662/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.0727 - acc: 0.9873 - val_loss: 0.0941 - val_acc: 0.9706\n",
      "Epoch 663/1000\n",
      "157/157 [==============================] - 0s 114us/step - loss: 0.0730 - acc: 0.9873 - val_loss: 0.1029 - val_acc: 0.9559\n",
      "Epoch 664/1000\n",
      "157/157 [==============================] - 0s 411us/step - loss: 0.0738 - acc: 0.9809 - val_loss: 0.0987 - val_acc: 0.9559\n",
      "Epoch 665/1000\n",
      "157/157 [==============================] - 0s 329us/step - loss: 0.0722 - acc: 0.9809 - val_loss: 0.0947 - val_acc: 0.9559\n",
      "Epoch 666/1000\n",
      "157/157 [==============================] - 0s 335us/step - loss: 0.0732 - acc: 0.9873 - val_loss: 0.0993 - val_acc: 0.9559\n",
      "Epoch 667/1000\n",
      "157/157 [==============================] - 0s 206us/step - loss: 0.0710 - acc: 0.9809 - val_loss: 0.0935 - val_acc: 0.9706\n",
      "Epoch 668/1000\n",
      "157/157 [==============================] - 0s 101us/step - loss: 0.0709 - acc: 0.9873 - val_loss: 0.0988 - val_acc: 0.9559\n",
      "Epoch 669/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0705 - acc: 0.9873 - val_loss: 0.1039 - val_acc: 0.9559\n",
      "Epoch 670/1000\n",
      "157/157 [==============================] - 0s 122us/step - loss: 0.0711 - acc: 0.9809 - val_loss: 0.1019 - val_acc: 0.9559\n",
      "Epoch 671/1000\n",
      "157/157 [==============================] - 0s 105us/step - loss: 0.0704 - acc: 0.9809 - val_loss: 0.1007 - val_acc: 0.9559\n",
      "Epoch 672/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.0749 - acc: 0.9873 - val_loss: 0.0974 - val_acc: 0.9559\n",
      "Epoch 673/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.0726 - acc: 0.9873 - val_loss: 0.1020 - val_acc: 0.9559\n",
      "Epoch 674/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.0713 - acc: 0.9809 - val_loss: 0.0986 - val_acc: 0.9559\n",
      "Epoch 675/1000\n",
      "157/157 [==============================] - 0s 216us/step - loss: 0.0705 - acc: 0.9873 - val_loss: 0.1031 - val_acc: 0.9559\n",
      "Epoch 676/1000\n",
      "157/157 [==============================] - 0s 291us/step - loss: 0.0723 - acc: 0.9809 - val_loss: 0.1020 - val_acc: 0.9559\n",
      "Epoch 677/1000\n",
      "157/157 [==============================] - 0s 242us/step - loss: 0.0709 - acc: 0.9809 - val_loss: 0.0967 - val_acc: 0.9559\n",
      "Epoch 678/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.0705 - acc: 0.9873 - val_loss: 0.1041 - val_acc: 0.9559\n",
      "Epoch 679/1000\n",
      "157/157 [==============================] - 0s 226us/step - loss: 0.0711 - acc: 0.9873 - val_loss: 0.1024 - val_acc: 0.9559\n",
      "Epoch 680/1000\n",
      "157/157 [==============================] - 0s 330us/step - loss: 0.0696 - acc: 0.9873 - val_loss: 0.0955 - val_acc: 0.9559\n",
      "Epoch 681/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0697 - acc: 0.9809 - val_loss: 0.0930 - val_acc: 0.9706\n",
      "Epoch 682/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.0700 - acc: 0.9809 - val_loss: 0.0955 - val_acc: 0.9559\n",
      "Epoch 683/1000\n",
      "157/157 [==============================] - 0s 282us/step - loss: 0.0687 - acc: 0.9873 - val_loss: 0.1031 - val_acc: 0.9559\n",
      "Epoch 684/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0697 - acc: 0.9873 - val_loss: 0.1033 - val_acc: 0.9559\n",
      "Epoch 685/1000\n",
      "157/157 [==============================] - 0s 111us/step - loss: 0.0702 - acc: 0.9809 - val_loss: 0.0906 - val_acc: 0.9706\n",
      "Epoch 686/1000\n",
      "157/157 [==============================] - 0s 121us/step - loss: 0.0692 - acc: 0.9873 - val_loss: 0.0927 - val_acc: 0.9706\n",
      "Epoch 687/1000\n",
      "157/157 [==============================] - 0s 216us/step - loss: 0.0679 - acc: 0.9873 - val_loss: 0.1006 - val_acc: 0.9559\n",
      "Epoch 688/1000\n",
      "157/157 [==============================] - 0s 204us/step - loss: 0.0714 - acc: 0.9809 - val_loss: 0.0951 - val_acc: 0.9559\n",
      "Epoch 689/1000\n",
      "157/157 [==============================] - 0s 271us/step - loss: 0.0684 - acc: 0.9873 - val_loss: 0.1033 - val_acc: 0.9559\n",
      "Epoch 690/1000\n",
      "157/157 [==============================] - 0s 239us/step - loss: 0.0685 - acc: 0.9873 - val_loss: 0.0967 - val_acc: 0.9559\n",
      "Epoch 691/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.0684 - acc: 0.9873 - val_loss: 0.1023 - val_acc: 0.9559\n",
      "Epoch 692/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.0690 - acc: 0.9809 - val_loss: 0.0969 - val_acc: 0.9559\n",
      "Epoch 693/1000\n",
      "157/157 [==============================] - 0s 237us/step - loss: 0.0699 - acc: 0.9745 - val_loss: 0.0944 - val_acc: 0.9559\n",
      "Epoch 694/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.0678 - acc: 0.9873 - val_loss: 0.0987 - val_acc: 0.9559\n",
      "Epoch 695/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.0668 - acc: 0.9873 - val_loss: 0.0994 - val_acc: 0.9559\n",
      "Epoch 696/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.0692 - acc: 0.9809 - val_loss: 0.1031 - val_acc: 0.9559\n",
      "Epoch 697/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.0689 - acc: 0.9809 - val_loss: 0.0985 - val_acc: 0.9559\n",
      "Epoch 698/1000\n",
      "157/157 [==============================] - 0s 299us/step - loss: 0.0676 - acc: 0.9873 - val_loss: 0.0983 - val_acc: 0.9559\n",
      "Epoch 699/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.0671 - acc: 0.9809 - val_loss: 0.0983 - val_acc: 0.9559\n",
      "Epoch 700/1000\n",
      "157/157 [==============================] - 0s 209us/step - loss: 0.0695 - acc: 0.9809 - val_loss: 0.1002 - val_acc: 0.9559\n",
      "Epoch 701/1000\n",
      "157/157 [==============================] - 0s 175us/step - loss: 0.0665 - acc: 0.9873 - val_loss: 0.0976 - val_acc: 0.9559\n",
      "Epoch 702/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.0687 - acc: 0.9873 - val_loss: 0.0940 - val_acc: 0.9559\n",
      "Epoch 703/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0663 - acc: 0.9873 - val_loss: 0.0949 - val_acc: 0.9559\n",
      "Epoch 704/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.0661 - acc: 0.9873 - val_loss: 0.0946 - val_acc: 0.9559\n",
      "Epoch 705/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.0677 - acc: 0.9809 - val_loss: 0.0947 - val_acc: 0.9559\n",
      "Epoch 706/1000\n",
      "157/157 [==============================] - 0s 127us/step - loss: 0.0674 - acc: 0.9809 - val_loss: 0.0942 - val_acc: 0.9559\n",
      "Epoch 707/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.0664 - acc: 0.9873 - val_loss: 0.0948 - val_acc: 0.9559\n",
      "Epoch 708/1000\n",
      "157/157 [==============================] - 0s 125us/step - loss: 0.0664 - acc: 0.9873 - val_loss: 0.0964 - val_acc: 0.9559\n",
      "Epoch 709/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "157/157 [==============================] - 0s 150us/step - loss: 0.0652 - acc: 0.9873 - val_loss: 0.0961 - val_acc: 0.9559\n",
      "Epoch 710/1000\n",
      "157/157 [==============================] - 0s 120us/step - loss: 0.0680 - acc: 0.9809 - val_loss: 0.0943 - val_acc: 0.9559\n",
      "Epoch 711/1000\n",
      "157/157 [==============================] - 0s 138us/step - loss: 0.0652 - acc: 0.9809 - val_loss: 0.0913 - val_acc: 0.9706\n",
      "Epoch 712/1000\n",
      "157/157 [==============================] - 0s 127us/step - loss: 0.0655 - acc: 0.9873 - val_loss: 0.0945 - val_acc: 0.9559\n",
      "Epoch 713/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.0666 - acc: 0.9873 - val_loss: 0.0895 - val_acc: 0.9706\n",
      "Epoch 714/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.0658 - acc: 0.9936 - val_loss: 0.0982 - val_acc: 0.9559\n",
      "Epoch 715/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.0653 - acc: 0.9873 - val_loss: 0.0988 - val_acc: 0.9559\n",
      "Epoch 716/1000\n",
      "157/157 [==============================] - 0s 310us/step - loss: 0.0642 - acc: 0.9873 - val_loss: 0.0943 - val_acc: 0.9559\n",
      "Epoch 717/1000\n",
      "157/157 [==============================] - 0s 223us/step - loss: 0.0660 - acc: 0.9809 - val_loss: 0.0910 - val_acc: 0.9706\n",
      "Epoch 718/1000\n",
      "157/157 [==============================] - 0s 237us/step - loss: 0.0649 - acc: 0.9873 - val_loss: 0.0950 - val_acc: 0.9559\n",
      "Epoch 719/1000\n",
      "157/157 [==============================] - 0s 221us/step - loss: 0.0636 - acc: 0.9873 - val_loss: 0.0951 - val_acc: 0.9559\n",
      "Epoch 720/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.0661 - acc: 0.9809 - val_loss: 0.0948 - val_acc: 0.9559\n",
      "Epoch 721/1000\n",
      "157/157 [==============================] - 0s 219us/step - loss: 0.0644 - acc: 0.9809 - val_loss: 0.0915 - val_acc: 0.9559\n",
      "Epoch 722/1000\n",
      "157/157 [==============================] - 0s 127us/step - loss: 0.0644 - acc: 0.9936 - val_loss: 0.0999 - val_acc: 0.9559\n",
      "Epoch 723/1000\n",
      "157/157 [==============================] - 0s 183us/step - loss: 0.0641 - acc: 0.9809 - val_loss: 0.0966 - val_acc: 0.9559\n",
      "Epoch 724/1000\n",
      "157/157 [==============================] - 0s 190us/step - loss: 0.0634 - acc: 0.9873 - val_loss: 0.0916 - val_acc: 0.9559\n",
      "Epoch 725/1000\n",
      "157/157 [==============================] - 0s 139us/step - loss: 0.0638 - acc: 0.9873 - val_loss: 0.0897 - val_acc: 0.9706\n",
      "Epoch 726/1000\n",
      "157/157 [==============================] - 0s 229us/step - loss: 0.0631 - acc: 0.9873 - val_loss: 0.0922 - val_acc: 0.9559\n",
      "Epoch 727/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.0635 - acc: 0.9809 - val_loss: 0.0877 - val_acc: 0.9706\n",
      "Epoch 728/1000\n",
      "157/157 [==============================] - 0s 222us/step - loss: 0.0632 - acc: 0.9936 - val_loss: 0.0944 - val_acc: 0.9559\n",
      "Epoch 729/1000\n",
      "157/157 [==============================] - 0s 143us/step - loss: 0.0631 - acc: 0.9809 - val_loss: 0.0848 - val_acc: 0.9706\n",
      "Epoch 730/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.0641 - acc: 0.9873 - val_loss: 0.0898 - val_acc: 0.9706\n",
      "Epoch 731/1000\n",
      "157/157 [==============================] - 0s 132us/step - loss: 0.0624 - acc: 0.9873 - val_loss: 0.0859 - val_acc: 0.9706\n",
      "Epoch 732/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0627 - acc: 0.9936 - val_loss: 0.0920 - val_acc: 0.9559\n",
      "Epoch 733/1000\n",
      "157/157 [==============================] - 0s 147us/step - loss: 0.0618 - acc: 0.9936 - val_loss: 0.0944 - val_acc: 0.9559\n",
      "Epoch 734/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.0655 - acc: 0.9745 - val_loss: 0.0916 - val_acc: 0.9559\n",
      "Epoch 735/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.0619 - acc: 0.9936 - val_loss: 0.0957 - val_acc: 0.9559\n",
      "Epoch 736/1000\n",
      "157/157 [==============================] - 0s 136us/step - loss: 0.0646 - acc: 0.9809 - val_loss: 0.0965 - val_acc: 0.9559\n",
      "Epoch 737/1000\n",
      "157/157 [==============================] - 0s 132us/step - loss: 0.0623 - acc: 0.9809 - val_loss: 0.0920 - val_acc: 0.9559\n",
      "Epoch 738/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.0618 - acc: 0.9873 - val_loss: 0.0971 - val_acc: 0.9559\n",
      "Epoch 739/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0612 - acc: 0.9936 - val_loss: 0.0957 - val_acc: 0.9559\n",
      "Epoch 740/1000\n",
      "157/157 [==============================] - 0s 160us/step - loss: 0.0626 - acc: 0.9873 - val_loss: 0.0922 - val_acc: 0.9559\n",
      "Epoch 741/1000\n",
      "157/157 [==============================] - 0s 158us/step - loss: 0.0620 - acc: 0.9936 - val_loss: 0.0915 - val_acc: 0.9559\n",
      "Epoch 742/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.0297 - acc: 1.000 - 0s 213us/step - loss: 0.0619 - acc: 0.9936 - val_loss: 0.0895 - val_acc: 0.9706\n",
      "Epoch 743/1000\n",
      "157/157 [==============================] - 0s 179us/step - loss: 0.0621 - acc: 0.9936 - val_loss: 0.0893 - val_acc: 0.9706\n",
      "Epoch 744/1000\n",
      "157/157 [==============================] - 0s 329us/step - loss: 0.0629 - acc: 0.9809 - val_loss: 0.0915 - val_acc: 0.9559\n",
      "Epoch 745/1000\n",
      "157/157 [==============================] - 0s 194us/step - loss: 0.0617 - acc: 0.9809 - val_loss: 0.0920 - val_acc: 0.9559\n",
      "Epoch 746/1000\n",
      "157/157 [==============================] - 0s 199us/step - loss: 0.0602 - acc: 0.9936 - val_loss: 0.0965 - val_acc: 0.9559\n",
      "Epoch 747/1000\n",
      "157/157 [==============================] - 0s 271us/step - loss: 0.0611 - acc: 0.9745 - val_loss: 0.0925 - val_acc: 0.9559\n",
      "Epoch 748/1000\n",
      "157/157 [==============================] - 0s 189us/step - loss: 0.0606 - acc: 0.9936 - val_loss: 0.1003 - val_acc: 0.9559\n",
      "Epoch 749/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.0601 - acc: 0.9873 - val_loss: 0.0938 - val_acc: 0.9559\n",
      "Epoch 750/1000\n",
      "157/157 [==============================] - 0s 103us/step - loss: 0.0618 - acc: 0.9809 - val_loss: 0.0885 - val_acc: 0.9706\n",
      "Epoch 751/1000\n",
      "157/157 [==============================] - 0s 196us/step - loss: 0.0602 - acc: 0.9936 - val_loss: 0.0954 - val_acc: 0.9559\n",
      "Epoch 752/1000\n",
      "157/157 [==============================] - 0s 164us/step - loss: 0.0627 - acc: 0.9873 - val_loss: 0.0938 - val_acc: 0.9559\n",
      "Epoch 753/1000\n",
      "157/157 [==============================] - 0s 134us/step - loss: 0.0601 - acc: 0.9873 - val_loss: 0.0922 - val_acc: 0.9559\n",
      "Epoch 754/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0621 - acc: 0.9809 - val_loss: 0.0881 - val_acc: 0.9706\n",
      "Epoch 755/1000\n",
      "157/157 [==============================] - 0s 119us/step - loss: 0.0610 - acc: 0.9936 - val_loss: 0.0950 - val_acc: 0.9559\n",
      "Epoch 756/1000\n",
      "157/157 [==============================] - 0s 110us/step - loss: 0.0597 - acc: 0.9936 - val_loss: 0.0900 - val_acc: 0.9706\n",
      "Epoch 757/1000\n",
      "157/157 [==============================] - 0s 126us/step - loss: 0.0595 - acc: 0.9809 - val_loss: 0.0857 - val_acc: 0.9706\n",
      "Epoch 758/1000\n",
      "157/157 [==============================] - 0s 110us/step - loss: 0.0592 - acc: 0.9936 - val_loss: 0.0940 - val_acc: 0.9559\n",
      "Epoch 759/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.0606 - acc: 0.9936 - val_loss: 0.0983 - val_acc: 0.9559\n",
      "Epoch 760/1000\n",
      "157/157 [==============================] - 0s 135us/step - loss: 0.0590 - acc: 0.9873 - val_loss: 0.0945 - val_acc: 0.9559\n",
      "Epoch 761/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0595 - acc: 0.9809 - val_loss: 0.0845 - val_acc: 0.9706\n",
      "Epoch 762/1000\n",
      "157/157 [==============================] - 0s 130us/step - loss: 0.0599 - acc: 0.9873 - val_loss: 0.0842 - val_acc: 0.9706\n",
      "Epoch 763/1000\n",
      "157/157 [==============================] - 0s 136us/step - loss: 0.0598 - acc: 0.9936 - val_loss: 0.0896 - val_acc: 0.9706\n",
      "Epoch 764/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0580 - acc: 0.9936 - val_loss: 0.0914 - val_acc: 0.9559\n",
      "Epoch 765/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.0588 - acc: 0.9936 - val_loss: 0.0892 - val_acc: 0.9706\n",
      "Epoch 766/1000\n",
      "157/157 [==============================] - 0s 200us/step - loss: 0.0588 - acc: 0.9936 - val_loss: 0.0994 - val_acc: 0.9559\n",
      "Epoch 767/1000\n",
      "157/157 [==============================] - 0s 249us/step - loss: 0.0592 - acc: 0.9936 - val_loss: 0.0977 - val_acc: 0.9559\n",
      "Epoch 768/1000\n",
      "157/157 [==============================] - 0s 222us/step - loss: 0.0583 - acc: 0.9809 - val_loss: 0.0848 - val_acc: 0.9706\n",
      "Epoch 769/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.0591 - acc: 0.9936 - val_loss: 0.0839 - val_acc: 0.9706\n",
      "Epoch 770/1000\n",
      "157/157 [==============================] - 0s 146us/step - loss: 0.0587 - acc: 0.9873 - val_loss: 0.0837 - val_acc: 0.9706\n",
      "Epoch 771/1000\n",
      "157/157 [==============================] - 0s 225us/step - loss: 0.0594 - acc: 0.9936 - val_loss: 0.0918 - val_acc: 0.9559\n",
      "Epoch 772/1000\n",
      "157/157 [==============================] - 0s 410us/step - loss: 0.0575 - acc: 0.9809 - val_loss: 0.0849 - val_acc: 0.9706\n",
      "Epoch 773/1000\n",
      "157/157 [==============================] - 0s 458us/step - loss: 0.0594 - acc: 0.9936 - val_loss: 0.0926 - val_acc: 0.9559\n",
      "Epoch 774/1000\n",
      "157/157 [==============================] - 0s 380us/step - loss: 0.0587 - acc: 0.9936 - val_loss: 0.0882 - val_acc: 0.9706\n",
      "Epoch 775/1000\n",
      "157/157 [==============================] - 0s 278us/step - loss: 0.0587 - acc: 0.9936 - val_loss: 0.0944 - val_acc: 0.9559\n",
      "Epoch 776/1000\n",
      "157/157 [==============================] - 0s 210us/step - loss: 0.0579 - acc: 0.9936 - val_loss: 0.0958 - val_acc: 0.9559\n",
      "Epoch 777/1000\n",
      "157/157 [==============================] - 0s 221us/step - loss: 0.0574 - acc: 0.9873 - val_loss: 0.0911 - val_acc: 0.9559\n",
      "Epoch 778/1000\n",
      "157/157 [==============================] - 0s 187us/step - loss: 0.0602 - acc: 0.9809 - val_loss: 0.0920 - val_acc: 0.9559\n",
      "Epoch 779/1000\n",
      "157/157 [==============================] - 0s 159us/step - loss: 0.0567 - acc: 0.9873 - val_loss: 0.0883 - val_acc: 0.9706\n",
      "Epoch 780/1000\n",
      "157/157 [==============================] - 0s 209us/step - loss: 0.0570 - acc: 0.9936 - val_loss: 0.0914 - val_acc: 0.9559\n",
      "Epoch 781/1000\n",
      "157/157 [==============================] - 0s 214us/step - loss: 0.0562 - acc: 0.9936 - val_loss: 0.0909 - val_acc: 0.9559\n",
      "Epoch 782/1000\n",
      "157/157 [==============================] - 0s 203us/step - loss: 0.0574 - acc: 0.9873 - val_loss: 0.0836 - val_acc: 0.9706\n",
      "Epoch 783/1000\n",
      "157/157 [==============================] - 0s 179us/step - loss: 0.0572 - acc: 0.9936 - val_loss: 0.0966 - val_acc: 0.9559\n",
      "Epoch 784/1000\n",
      "157/157 [==============================] - 0s 137us/step - loss: 0.0567 - acc: 0.9873 - val_loss: 0.0908 - val_acc: 0.9559\n",
      "Epoch 785/1000\n",
      "157/157 [==============================] - 0s 400us/step - loss: 0.0568 - acc: 0.9936 - val_loss: 0.0955 - val_acc: 0.9559\n",
      "Epoch 786/1000\n",
      "157/157 [==============================] - 0s 459us/step - loss: 0.0569 - acc: 0.9936 - val_loss: 0.0988 - val_acc: 0.9559\n",
      "Epoch 787/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0567 - acc: 0.9745 - val_loss: 0.0899 - val_acc: 0.9559\n",
      "Epoch 788/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.0572 - acc: 0.9936 - val_loss: 0.0927 - val_acc: 0.9559\n",
      "Epoch 789/1000\n",
      "157/157 [==============================] - 0s 190us/step - loss: 0.0556 - acc: 0.9936 - val_loss: 0.0914 - val_acc: 0.9559\n",
      "Epoch 790/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.0571 - acc: 0.9809 - val_loss: 0.0939 - val_acc: 0.9559\n",
      "Epoch 791/1000\n",
      "157/157 [==============================] - 0s 220us/step - loss: 0.0582 - acc: 0.9745 - val_loss: 0.0904 - val_acc: 0.9559\n",
      "Epoch 792/1000\n",
      "157/157 [==============================] - 0s 97us/step - loss: 0.0563 - acc: 0.9936 - val_loss: 0.0966 - val_acc: 0.9559\n",
      "Epoch 793/1000\n",
      "157/157 [==============================] - 0s 124us/step - loss: 0.0577 - acc: 0.9873 - val_loss: 0.0959 - val_acc: 0.9559\n",
      "Epoch 794/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0564 - acc: 0.9809 - val_loss: 0.0863 - val_acc: 0.9706\n",
      "Epoch 795/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.0560 - acc: 0.9936 - val_loss: 0.0951 - val_acc: 0.9559\n",
      "Epoch 796/1000\n",
      "157/157 [==============================] - 0s 229us/step - loss: 0.0563 - acc: 0.9936 - val_loss: 0.0908 - val_acc: 0.9559\n",
      "Epoch 797/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.0545 - acc: 0.9936 - val_loss: 0.0927 - val_acc: 0.9559\n",
      "Epoch 798/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.0572 - acc: 0.9873 - val_loss: 0.0914 - val_acc: 0.9559\n",
      "Epoch 799/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0559 - acc: 0.9936 - val_loss: 0.0895 - val_acc: 0.9559\n",
      "Epoch 800/1000\n",
      "157/157 [==============================] - 0s 220us/step - loss: 0.0555 - acc: 0.9936 - val_loss: 0.0900 - val_acc: 0.9559\n",
      "Epoch 801/1000\n",
      "157/157 [==============================] - 0s 103us/step - loss: 0.0555 - acc: 0.9936 - val_loss: 0.0897 - val_acc: 0.9559\n",
      "Epoch 802/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0569 - acc: 0.9873 - val_loss: 0.0896 - val_acc: 0.9559\n",
      "Epoch 803/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.0556 - acc: 0.9936 - val_loss: 0.0899 - val_acc: 0.9559\n",
      "Epoch 804/1000\n",
      "157/157 [==============================] - 0s 116us/step - loss: 0.0539 - acc: 0.9936 - val_loss: 0.0897 - val_acc: 0.9559\n",
      "Epoch 805/1000\n",
      "157/157 [==============================] - 0s 184us/step - loss: 0.0559 - acc: 0.9873 - val_loss: 0.0864 - val_acc: 0.9706\n",
      "Epoch 806/1000\n",
      "157/157 [==============================] - 0s 233us/step - loss: 0.0539 - acc: 0.9936 - val_loss: 0.0901 - val_acc: 0.9559\n",
      "Epoch 807/1000\n",
      "157/157 [==============================] - 0s 151us/step - loss: 0.0538 - acc: 0.9936 - val_loss: 0.0855 - val_acc: 0.9706\n",
      "Epoch 808/1000\n",
      "157/157 [==============================] - 0s 223us/step - loss: 0.0547 - acc: 0.9936 - val_loss: 0.0852 - val_acc: 0.9706\n",
      "Epoch 809/1000\n",
      "157/157 [==============================] - 0s 216us/step - loss: 0.0545 - acc: 0.9936 - val_loss: 0.0941 - val_acc: 0.9559\n",
      "Epoch 810/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.0549 - acc: 0.9936 - val_loss: 0.0935 - val_acc: 0.9559\n",
      "Epoch 811/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.0560 - acc: 0.9873 - val_loss: 0.0872 - val_acc: 0.9706\n",
      "Epoch 812/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0557 - acc: 0.9809 - val_loss: 0.0842 - val_acc: 0.9706\n",
      "Epoch 813/1000\n",
      "157/157 [==============================] - 0s 156us/step - loss: 0.0540 - acc: 0.9936 - val_loss: 0.0859 - val_acc: 0.9706\n",
      "Epoch 814/1000\n",
      "157/157 [==============================] - 0s 183us/step - loss: 0.0529 - acc: 0.9936 - val_loss: 0.0885 - val_acc: 0.9559\n",
      "Epoch 815/1000\n",
      "157/157 [==============================] - 0s 96us/step - loss: 0.0549 - acc: 0.9873 - val_loss: 0.0855 - val_acc: 0.9706\n",
      "Epoch 816/1000\n",
      "157/157 [==============================] - 0s 105us/step - loss: 0.0535 - acc: 0.9936 - val_loss: 0.0943 - val_acc: 0.9559\n",
      "Epoch 817/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.0554 - acc: 0.9809 - val_loss: 0.0882 - val_acc: 0.9559\n",
      "Epoch 818/1000\n",
      "157/157 [==============================] - 0s 135us/step - loss: 0.0531 - acc: 0.9936 - val_loss: 0.0934 - val_acc: 0.9559\n",
      "Epoch 819/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.0549 - acc: 0.9936 - val_loss: 0.0899 - val_acc: 0.9559\n",
      "Epoch 820/1000\n",
      "157/157 [==============================] - 0s 182us/step - loss: 0.0555 - acc: 0.9936 - val_loss: 0.0914 - val_acc: 0.9559\n",
      "Epoch 821/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.0533 - acc: 0.9873 - val_loss: 0.0841 - val_acc: 0.9706\n",
      "Epoch 822/1000\n",
      "157/157 [==============================] - 0s 221us/step - loss: 0.0531 - acc: 0.9936 - val_loss: 0.0844 - val_acc: 0.9706\n",
      "Epoch 823/1000\n",
      "157/157 [==============================] - 0s 112us/step - loss: 0.0531 - acc: 0.9873 - val_loss: 0.0826 - val_acc: 0.9706\n",
      "Epoch 824/1000\n",
      "157/157 [==============================] - 0s 202us/step - loss: 0.0533 - acc: 0.9936 - val_loss: 0.0897 - val_acc: 0.9559\n",
      "Epoch 825/1000\n",
      "157/157 [==============================] - 0s 263us/step - loss: 0.0525 - acc: 1.0000 - val_loss: 0.0800 - val_acc: 0.9706\n",
      "Epoch 826/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.0544 - acc: 0.9936 - val_loss: 0.0937 - val_acc: 0.9559\n",
      "Epoch 827/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "157/157 [==============================] - 0s 183us/step - loss: 0.0521 - acc: 0.9936 - val_loss: 0.0847 - val_acc: 0.9706\n",
      "Epoch 828/1000\n",
      "157/157 [==============================] - 0s 266us/step - loss: 0.0524 - acc: 0.9936 - val_loss: 0.0902 - val_acc: 0.9559\n",
      "Epoch 829/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.0525 - acc: 0.9873 - val_loss: 0.0839 - val_acc: 0.9706\n",
      "Epoch 830/1000\n",
      "157/157 [==============================] - 0s 228us/step - loss: 0.0528 - acc: 0.9809 - val_loss: 0.0829 - val_acc: 0.9706\n",
      "Epoch 831/1000\n",
      "157/157 [==============================] - 0s 251us/step - loss: 0.0530 - acc: 0.9936 - val_loss: 0.0832 - val_acc: 0.9706\n",
      "Epoch 832/1000\n",
      "157/157 [==============================] - 0s 275us/step - loss: 0.0544 - acc: 0.9873 - val_loss: 0.0876 - val_acc: 0.9706\n",
      "Epoch 833/1000\n",
      "157/157 [==============================] - 0s 233us/step - loss: 0.0526 - acc: 0.9936 - val_loss: 0.0859 - val_acc: 0.9706\n",
      "Epoch 834/1000\n",
      "157/157 [==============================] - 0s 366us/step - loss: 0.0527 - acc: 0.9936 - val_loss: 0.0853 - val_acc: 0.9706\n",
      "Epoch 835/1000\n",
      "157/157 [==============================] - 0s 220us/step - loss: 0.0514 - acc: 0.9936 - val_loss: 0.0911 - val_acc: 0.9559\n",
      "Epoch 836/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0529 - acc: 0.9873 - val_loss: 0.0923 - val_acc: 0.9559\n",
      "Epoch 837/1000\n",
      "157/157 [==============================] - 0s 255us/step - loss: 0.0513 - acc: 0.9936 - val_loss: 0.0843 - val_acc: 0.9706\n",
      "Epoch 838/1000\n",
      "157/157 [==============================] - 0s 117us/step - loss: 0.0514 - acc: 0.9936 - val_loss: 0.0900 - val_acc: 0.9559\n",
      "Epoch 839/1000\n",
      "157/157 [==============================] - 0s 104us/step - loss: 0.0509 - acc: 0.9936 - val_loss: 0.0868 - val_acc: 0.9706\n",
      "Epoch 840/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.0530 - acc: 0.9873 - val_loss: 0.0874 - val_acc: 0.9706\n",
      "Epoch 841/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0510 - acc: 0.9809 - val_loss: 0.0826 - val_acc: 0.9706\n",
      "Epoch 842/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0512 - acc: 0.9936 - val_loss: 0.0835 - val_acc: 0.9706\n",
      "Epoch 843/1000\n",
      "157/157 [==============================] - 0s 174us/step - loss: 0.0505 - acc: 0.9936 - val_loss: 0.0914 - val_acc: 0.9559\n",
      "Epoch 844/1000\n",
      "157/157 [==============================] - 0s 116us/step - loss: 0.0551 - acc: 0.9936 - val_loss: 0.0913 - val_acc: 0.9559\n",
      "Epoch 845/1000\n",
      "157/157 [==============================] - 0s 224us/step - loss: 0.0502 - acc: 0.9936 - val_loss: 0.0861 - val_acc: 0.9706\n",
      "Epoch 846/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.0504 - acc: 0.9936 - val_loss: 0.0863 - val_acc: 0.9706\n",
      "Epoch 847/1000\n",
      "157/157 [==============================] - 0s 150us/step - loss: 0.0500 - acc: 0.9873 - val_loss: 0.0803 - val_acc: 0.9706\n",
      "Epoch 848/1000\n",
      "157/157 [==============================] - 0s 198us/step - loss: 0.0511 - acc: 0.9936 - val_loss: 0.0844 - val_acc: 0.9706\n",
      "Epoch 849/1000\n",
      "157/157 [==============================] - 0s 182us/step - loss: 0.0497 - acc: 0.9936 - val_loss: 0.0830 - val_acc: 0.9706\n",
      "Epoch 850/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.0515 - acc: 0.9936 - val_loss: 0.0926 - val_acc: 0.9559\n",
      "Epoch 851/1000\n",
      "157/157 [==============================] - 0s 185us/step - loss: 0.0502 - acc: 0.9809 - val_loss: 0.0829 - val_acc: 0.9706\n",
      "Epoch 852/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.0501 - acc: 0.9936 - val_loss: 0.0916 - val_acc: 0.9559\n",
      "Epoch 853/1000\n",
      "157/157 [==============================] - 0s 206us/step - loss: 0.0509 - acc: 0.9809 - val_loss: 0.0803 - val_acc: 0.9706\n",
      "Epoch 854/1000\n",
      "157/157 [==============================] - 0s 131us/step - loss: 0.0507 - acc: 0.9936 - val_loss: 0.0835 - val_acc: 0.9706\n",
      "Epoch 855/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.0497 - acc: 0.9936 - val_loss: 0.0848 - val_acc: 0.9706\n",
      "Epoch 856/1000\n",
      "157/157 [==============================] - 0s 106us/step - loss: 0.0501 - acc: 0.9936 - val_loss: 0.0889 - val_acc: 0.9559\n",
      "Epoch 857/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.0745 - acc: 1.000 - 0s 99us/step - loss: 0.0493 - acc: 0.9936 - val_loss: 0.0840 - val_acc: 0.9706\n",
      "Epoch 858/1000\n",
      "157/157 [==============================] - 0s 106us/step - loss: 0.0512 - acc: 0.9936 - val_loss: 0.0918 - val_acc: 0.9559\n",
      "Epoch 859/1000\n",
      "157/157 [==============================] - 0s 169us/step - loss: 0.0507 - acc: 0.9936 - val_loss: 0.0846 - val_acc: 0.9706\n",
      "Epoch 860/1000\n",
      "157/157 [==============================] - 0s 180us/step - loss: 0.0494 - acc: 0.9873 - val_loss: 0.0875 - val_acc: 0.9559\n",
      "Epoch 861/1000\n",
      "157/157 [==============================] - 0s 154us/step - loss: 0.0507 - acc: 0.9873 - val_loss: 0.0861 - val_acc: 0.9706\n",
      "Epoch 862/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.0524 - acc: 0.9873 - val_loss: 0.0799 - val_acc: 0.9706\n",
      "Epoch 863/1000\n",
      "157/157 [==============================] - 0s 252us/step - loss: 0.0493 - acc: 0.9936 - val_loss: 0.0896 - val_acc: 0.9559\n",
      "Epoch 864/1000\n",
      "157/157 [==============================] - 0s 216us/step - loss: 0.0494 - acc: 0.9936 - val_loss: 0.0929 - val_acc: 0.9559\n",
      "Epoch 865/1000\n",
      "157/157 [==============================] - 0s 167us/step - loss: 0.0505 - acc: 0.9936 - val_loss: 0.0885 - val_acc: 0.9559\n",
      "Epoch 866/1000\n",
      "157/157 [==============================] - 0s 177us/step - loss: 0.0513 - acc: 0.9936 - val_loss: 0.0919 - val_acc: 0.9559\n",
      "Epoch 867/1000\n",
      "157/157 [==============================] - 0s 121us/step - loss: 0.0500 - acc: 0.9873 - val_loss: 0.0859 - val_acc: 0.9706\n",
      "Epoch 868/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0502 - acc: 0.9936 - val_loss: 0.0889 - val_acc: 0.9559\n",
      "Epoch 869/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.0502 - acc: 0.9936 - val_loss: 0.0886 - val_acc: 0.9559\n",
      "Epoch 870/1000\n",
      "157/157 [==============================] - 0s 241us/step - loss: 0.0486 - acc: 0.9936 - val_loss: 0.0878 - val_acc: 0.9559\n",
      "Epoch 871/1000\n",
      "157/157 [==============================] - 0s 252us/step - loss: 0.0483 - acc: 0.9873 - val_loss: 0.0808 - val_acc: 0.9706\n",
      "Epoch 872/1000\n",
      "157/157 [==============================] - 0s 239us/step - loss: 0.0482 - acc: 0.9936 - val_loss: 0.0869 - val_acc: 0.9559\n",
      "Epoch 873/1000\n",
      "157/157 [==============================] - 0s 199us/step - loss: 0.0500 - acc: 0.9936 - val_loss: 0.0901 - val_acc: 0.9559\n",
      "Epoch 874/1000\n",
      "157/157 [==============================] - 0s 175us/step - loss: 0.0495 - acc: 0.9873 - val_loss: 0.0881 - val_acc: 0.9559\n",
      "Epoch 875/1000\n",
      "157/157 [==============================] - 0s 155us/step - loss: 0.0485 - acc: 0.9936 - val_loss: 0.0923 - val_acc: 0.9559\n",
      "Epoch 876/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.0482 - acc: 0.9873 - val_loss: 0.0821 - val_acc: 0.9706\n",
      "Epoch 877/1000\n",
      "157/157 [==============================] - 0s 177us/step - loss: 0.0493 - acc: 0.9936 - val_loss: 0.0955 - val_acc: 0.9559\n",
      "Epoch 878/1000\n",
      "157/157 [==============================] - 0s 218us/step - loss: 0.0499 - acc: 0.9809 - val_loss: 0.0851 - val_acc: 0.9706\n",
      "Epoch 879/1000\n",
      "157/157 [==============================] - 0s 204us/step - loss: 0.0475 - acc: 0.9936 - val_loss: 0.0855 - val_acc: 0.9706\n",
      "Epoch 880/1000\n",
      "157/157 [==============================] - 0s 209us/step - loss: 0.0490 - acc: 0.9936 - val_loss: 0.0826 - val_acc: 0.9706\n",
      "Epoch 881/1000\n",
      "157/157 [==============================] - 0s 349us/step - loss: 0.0474 - acc: 0.9936 - val_loss: 0.0813 - val_acc: 0.9706\n",
      "Epoch 882/1000\n",
      "157/157 [==============================] - 0s 153us/step - loss: 0.0479 - acc: 0.9936 - val_loss: 0.0924 - val_acc: 0.9559\n",
      "Epoch 883/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.0527 - acc: 0.9873 - val_loss: 0.0853 - val_acc: 0.9706\n",
      "Epoch 884/1000\n",
      "157/157 [==============================] - 0s 122us/step - loss: 0.0473 - acc: 0.9936 - val_loss: 0.0863 - val_acc: 0.9706\n",
      "Epoch 885/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.0469 - acc: 0.9873 - val_loss: 0.0787 - val_acc: 0.9706\n",
      "Epoch 886/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.0477 - acc: 0.9936 - val_loss: 0.0853 - val_acc: 0.9706\n",
      "Epoch 887/1000\n",
      "157/157 [==============================] - 0s 176us/step - loss: 0.0475 - acc: 0.9936 - val_loss: 0.0957 - val_acc: 0.9559\n",
      "Epoch 888/1000\n",
      "157/157 [==============================] - 0s 173us/step - loss: 0.0478 - acc: 0.9936 - val_loss: 0.0922 - val_acc: 0.9559\n",
      "Epoch 889/1000\n",
      "157/157 [==============================] - 0s 223us/step - loss: 0.0477 - acc: 0.9873 - val_loss: 0.0834 - val_acc: 0.9706\n",
      "Epoch 890/1000\n",
      "157/157 [==============================] - 0s 204us/step - loss: 0.0477 - acc: 0.9873 - val_loss: 0.0862 - val_acc: 0.9706\n",
      "Epoch 891/1000\n",
      "157/157 [==============================] - 0s 386us/step - loss: 0.0466 - acc: 0.9873 - val_loss: 0.0829 - val_acc: 0.9706\n",
      "Epoch 892/1000\n",
      "157/157 [==============================] - 0s 254us/step - loss: 0.0477 - acc: 0.9936 - val_loss: 0.0824 - val_acc: 0.9706\n",
      "Epoch 893/1000\n",
      "157/157 [==============================] - 0s 115us/step - loss: 0.0466 - acc: 0.9873 - val_loss: 0.0840 - val_acc: 0.9706\n",
      "Epoch 894/1000\n",
      "157/157 [==============================] - 0s 122us/step - loss: 0.0480 - acc: 0.9936 - val_loss: 0.0870 - val_acc: 0.9559\n",
      "Epoch 895/1000\n",
      "157/157 [==============================] - 0s 176us/step - loss: 0.0477 - acc: 0.9873 - val_loss: 0.0866 - val_acc: 0.9559\n",
      "Epoch 896/1000\n",
      "157/157 [==============================] - 0s 177us/step - loss: 0.0467 - acc: 0.9873 - val_loss: 0.0824 - val_acc: 0.9706\n",
      "Epoch 897/1000\n",
      "157/157 [==============================] - 0s 319us/step - loss: 0.0467 - acc: 0.9873 - val_loss: 0.0852 - val_acc: 0.9706\n",
      "Epoch 898/1000\n",
      "157/157 [==============================] - 0s 133us/step - loss: 0.0483 - acc: 0.9936 - val_loss: 0.0878 - val_acc: 0.9559\n",
      "Epoch 899/1000\n",
      "157/157 [==============================] - 0s 138us/step - loss: 0.0482 - acc: 0.9936 - val_loss: 0.0899 - val_acc: 0.9559\n",
      "Epoch 900/1000\n",
      "157/157 [==============================] - 0s 239us/step - loss: 0.0455 - acc: 0.9873 - val_loss: 0.0804 - val_acc: 0.9706\n",
      "Epoch 901/1000\n",
      "157/157 [==============================] - 0s 212us/step - loss: 0.0491 - acc: 0.9873 - val_loss: 0.0852 - val_acc: 0.9706\n",
      "Epoch 902/1000\n",
      "157/157 [==============================] - 0s 244us/step - loss: 0.0457 - acc: 0.9936 - val_loss: 0.0920 - val_acc: 0.9559\n",
      "Epoch 903/1000\n",
      "157/157 [==============================] - 0s 236us/step - loss: 0.0473 - acc: 0.9809 - val_loss: 0.0789 - val_acc: 0.9706\n",
      "Epoch 904/1000\n",
      "157/157 [==============================] - 0s 172us/step - loss: 0.0469 - acc: 0.9936 - val_loss: 0.0858 - val_acc: 0.9706\n",
      "Epoch 905/1000\n",
      "157/157 [==============================] - 0s 232us/step - loss: 0.0461 - acc: 0.9936 - val_loss: 0.0868 - val_acc: 0.9559\n",
      "Epoch 906/1000\n",
      "157/157 [==============================] - 0s 192us/step - loss: 0.0456 - acc: 0.9936 - val_loss: 0.0847 - val_acc: 0.9706\n",
      "Epoch 907/1000\n",
      "157/157 [==============================] - 0s 162us/step - loss: 0.0467 - acc: 0.9936 - val_loss: 0.0896 - val_acc: 0.9559\n",
      "Epoch 908/1000\n",
      "157/157 [==============================] - 0s 94us/step - loss: 0.0500 - acc: 0.9873 - val_loss: 0.0832 - val_acc: 0.9706\n",
      "Epoch 909/1000\n",
      "157/157 [==============================] - 0s 221us/step - loss: 0.0453 - acc: 0.9936 - val_loss: 0.0872 - val_acc: 0.9559\n",
      "Epoch 910/1000\n",
      "157/157 [==============================] - 0s 348us/step - loss: 0.0455 - acc: 0.9936 - val_loss: 0.0890 - val_acc: 0.9559\n",
      "Epoch 911/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.0463 - acc: 0.9873 - val_loss: 0.0857 - val_acc: 0.9706\n",
      "Epoch 912/1000\n",
      "157/157 [==============================] - 0s 144us/step - loss: 0.0452 - acc: 0.9936 - val_loss: 0.0939 - val_acc: 0.9559\n",
      "Epoch 913/1000\n",
      "157/157 [==============================] - 0s 158us/step - loss: 0.0465 - acc: 0.9873 - val_loss: 0.0809 - val_acc: 0.9706\n",
      "Epoch 914/1000\n",
      "157/157 [==============================] - 0s 123us/step - loss: 0.0448 - acc: 0.9936 - val_loss: 0.0851 - val_acc: 0.9706\n",
      "Epoch 915/1000\n",
      "157/157 [==============================] - 0s 148us/step - loss: 0.0480 - acc: 0.9873 - val_loss: 0.0852 - val_acc: 0.9706\n",
      "Epoch 916/1000\n",
      "157/157 [==============================] - 0s 179us/step - loss: 0.0450 - acc: 0.9936 - val_loss: 0.0950 - val_acc: 0.9559\n",
      "Epoch 917/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.0466 - acc: 0.9936 - val_loss: 0.0868 - val_acc: 0.9559\n",
      "Epoch 918/1000\n",
      "157/157 [==============================] - 0s 184us/step - loss: 0.0452 - acc: 0.9873 - val_loss: 0.0825 - val_acc: 0.9706\n",
      "Epoch 919/1000\n",
      "157/157 [==============================] - 0s 107us/step - loss: 0.0457 - acc: 0.9936 - val_loss: 0.0792 - val_acc: 0.9706\n",
      "Epoch 920/1000\n",
      "157/157 [==============================] - 0s 104us/step - loss: 0.0446 - acc: 0.9936 - val_loss: 0.0843 - val_acc: 0.9706\n",
      "Epoch 921/1000\n",
      "157/157 [==============================] - 0s 102us/step - loss: 0.0462 - acc: 0.9873 - val_loss: 0.0818 - val_acc: 0.9706\n",
      "Epoch 922/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.0544 - acc: 1.000 - 0s 102us/step - loss: 0.0451 - acc: 0.9873 - val_loss: 0.0853 - val_acc: 0.9706\n",
      "Epoch 923/1000\n",
      "157/157 [==============================] - 0s 99us/step - loss: 0.0448 - acc: 0.9873 - val_loss: 0.0818 - val_acc: 0.9706\n",
      "Epoch 924/1000\n",
      "157/157 [==============================] - 0s 105us/step - loss: 0.0449 - acc: 0.9873 - val_loss: 0.0841 - val_acc: 0.9706\n",
      "Epoch 925/1000\n",
      "157/157 [==============================] - 0s 275us/step - loss: 0.0452 - acc: 0.9873 - val_loss: 0.0823 - val_acc: 0.9706\n",
      "Epoch 926/1000\n",
      "157/157 [==============================] - 0s 167us/step - loss: 0.0441 - acc: 0.9873 - val_loss: 0.0808 - val_acc: 0.9706\n",
      "Epoch 927/1000\n",
      "157/157 [==============================] - 0s 118us/step - loss: 0.0447 - acc: 0.9936 - val_loss: 0.0785 - val_acc: 0.9706\n",
      "Epoch 928/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.0447 - acc: 0.9873 - val_loss: 0.0766 - val_acc: 0.9706\n",
      "Epoch 929/1000\n",
      "157/157 [==============================] - 0s 193us/step - loss: 0.0449 - acc: 0.9936 - val_loss: 0.0836 - val_acc: 0.9706\n",
      "Epoch 930/1000\n",
      "157/157 [==============================] - 0s 191us/step - loss: 0.0446 - acc: 0.9936 - val_loss: 0.0850 - val_acc: 0.9706\n",
      "Epoch 931/1000\n",
      "157/157 [==============================] - 0s 163us/step - loss: 0.0439 - acc: 0.9936 - val_loss: 0.0868 - val_acc: 0.9559\n",
      "Epoch 932/1000\n",
      "157/157 [==============================] - 0s 168us/step - loss: 0.0434 - acc: 0.9936 - val_loss: 0.0844 - val_acc: 0.9706\n",
      "Epoch 933/1000\n",
      "157/157 [==============================] - 0s 171us/step - loss: 0.0443 - acc: 0.9936 - val_loss: 0.0793 - val_acc: 0.9706\n",
      "Epoch 934/1000\n",
      "157/157 [==============================] - 0s 197us/step - loss: 0.0441 - acc: 0.9873 - val_loss: 0.0855 - val_acc: 0.9706\n",
      "Epoch 935/1000\n",
      "157/157 [==============================] - 0s 142us/step - loss: 0.0447 - acc: 0.9873 - val_loss: 0.0878 - val_acc: 0.9559\n",
      "Epoch 936/1000\n",
      "157/157 [==============================] - 0s 190us/step - loss: 0.0439 - acc: 0.9809 - val_loss: 0.0763 - val_acc: 0.9706\n",
      "Epoch 937/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0427 - acc: 0.9936 - val_loss: 0.0870 - val_acc: 0.9559\n",
      "Epoch 938/1000\n",
      "157/157 [==============================] - ETA: 0s - loss: 0.0191 - acc: 1.000 - 0s 138us/step - loss: 0.0439 - acc: 0.9873 - val_loss: 0.0760 - val_acc: 0.9706\n",
      "Epoch 939/1000\n",
      "157/157 [==============================] - 0s 188us/step - loss: 0.0442 - acc: 0.9936 - val_loss: 0.0777 - val_acc: 0.9706\n",
      "Epoch 940/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.0445 - acc: 0.9936 - val_loss: 0.0877 - val_acc: 0.9559\n",
      "Epoch 941/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0441 - acc: 0.9873 - val_loss: 0.0819 - val_acc: 0.9706\n",
      "Epoch 942/1000\n",
      "157/157 [==============================] - 0s 204us/step - loss: 0.0433 - acc: 0.9936 - val_loss: 0.0863 - val_acc: 0.9559\n",
      "Epoch 943/1000\n",
      "157/157 [==============================] - 0s 235us/step - loss: 0.0430 - acc: 0.9873 - val_loss: 0.0843 - val_acc: 0.9706\n",
      "Epoch 944/1000\n",
      "157/157 [==============================] - 0s 207us/step - loss: 0.0436 - acc: 0.9873 - val_loss: 0.0817 - val_acc: 0.9706\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 945/1000\n",
      "157/157 [==============================] - 0s 178us/step - loss: 0.0470 - acc: 0.9873 - val_loss: 0.0836 - val_acc: 0.9706\n",
      "Epoch 946/1000\n",
      "157/157 [==============================] - 0s 170us/step - loss: 0.0432 - acc: 0.9936 - val_loss: 0.0858 - val_acc: 0.9559\n",
      "Epoch 947/1000\n",
      "157/157 [==============================] - 0s 327us/step - loss: 0.0428 - acc: 0.9873 - val_loss: 0.0818 - val_acc: 0.9706\n",
      "Epoch 948/1000\n",
      "157/157 [==============================] - 0s 219us/step - loss: 0.0433 - acc: 0.9873 - val_loss: 0.0807 - val_acc: 0.9706\n",
      "Epoch 949/1000\n",
      "157/157 [==============================] - 0s 253us/step - loss: 0.0438 - acc: 0.9936 - val_loss: 0.0792 - val_acc: 0.9706\n",
      "Epoch 950/1000\n",
      "157/157 [==============================] - 0s 369us/step - loss: 0.0430 - acc: 0.9936 - val_loss: 0.0869 - val_acc: 0.9559\n",
      "Epoch 951/1000\n",
      "157/157 [==============================] - 0s 241us/step - loss: 0.0435 - acc: 0.9936 - val_loss: 0.0822 - val_acc: 0.9706\n",
      "Epoch 952/1000\n",
      "157/157 [==============================] - 0s 82us/step - loss: 0.0430 - acc: 0.9873 - val_loss: 0.0797 - val_acc: 0.9706\n",
      "Epoch 953/1000\n",
      "157/157 [==============================] - 0s 86us/step - loss: 0.0431 - acc: 0.9873 - val_loss: 0.0845 - val_acc: 0.9706\n",
      "Epoch 954/1000\n",
      "157/157 [==============================] - 0s 112us/step - loss: 0.0433 - acc: 0.9873 - val_loss: 0.0792 - val_acc: 0.9706\n",
      "Epoch 955/1000\n",
      "157/157 [==============================] - 0s 152us/step - loss: 0.0437 - acc: 0.9936 - val_loss: 0.0863 - val_acc: 0.9559\n",
      "Epoch 956/1000\n",
      "157/157 [==============================] - 0s 323us/step - loss: 0.0438 - acc: 0.9873 - val_loss: 0.0850 - val_acc: 0.9706\n",
      "Epoch 957/1000\n",
      "157/157 [==============================] - 0s 229us/step - loss: 0.0424 - acc: 0.9936 - val_loss: 0.0862 - val_acc: 0.9559\n",
      "Epoch 958/1000\n",
      "157/157 [==============================] - 0s 332us/step - loss: 0.0422 - acc: 0.9873 - val_loss: 0.0763 - val_acc: 0.9706\n",
      "Epoch 959/1000\n",
      "157/157 [==============================] - 0s 369us/step - loss: 0.0434 - acc: 0.9873 - val_loss: 0.0755 - val_acc: 0.9706\n",
      "Epoch 960/1000\n",
      "157/157 [==============================] - 0s 314us/step - loss: 0.0421 - acc: 0.9936 - val_loss: 0.0840 - val_acc: 0.9706\n",
      "Epoch 961/1000\n",
      "157/157 [==============================] - 0s 358us/step - loss: 0.0423 - acc: 0.9873 - val_loss: 0.0861 - val_acc: 0.9559\n",
      "Epoch 962/1000\n",
      "157/157 [==============================] - 0s 363us/step - loss: 0.0416 - acc: 0.9936 - val_loss: 0.0824 - val_acc: 0.9706\n",
      "Epoch 963/1000\n",
      "157/157 [==============================] - 0s 227us/step - loss: 0.0443 - acc: 0.9873 - val_loss: 0.0831 - val_acc: 0.9706\n",
      "Epoch 964/1000\n",
      "157/157 [==============================] - 0s 347us/step - loss: 0.0440 - acc: 0.9873 - val_loss: 0.0839 - val_acc: 0.9706\n",
      "Epoch 965/1000\n",
      "157/157 [==============================] - 0s 256us/step - loss: 0.0411 - acc: 0.9936 - val_loss: 0.0864 - val_acc: 0.9559\n",
      "Epoch 966/1000\n",
      "157/157 [==============================] - 0s 331us/step - loss: 0.0416 - acc: 0.9873 - val_loss: 0.0843 - val_acc: 0.9706\n",
      "Epoch 967/1000\n",
      "157/157 [==============================] - 0s 286us/step - loss: 0.0419 - acc: 0.9873 - val_loss: 0.0754 - val_acc: 0.9706\n",
      "Epoch 968/1000\n",
      "157/157 [==============================] - 0s 299us/step - loss: 0.0425 - acc: 0.9936 - val_loss: 0.0783 - val_acc: 0.9706\n",
      "Epoch 969/1000\n",
      "157/157 [==============================] - 0s 314us/step - loss: 0.0417 - acc: 0.9936 - val_loss: 0.0784 - val_acc: 0.9706\n",
      "Epoch 970/1000\n",
      "157/157 [==============================] - 0s 348us/step - loss: 0.0418 - acc: 0.9936 - val_loss: 0.0836 - val_acc: 0.9706\n",
      "Epoch 971/1000\n",
      "157/157 [==============================] - 0s 310us/step - loss: 0.0428 - acc: 0.9873 - val_loss: 0.0837 - val_acc: 0.9706\n",
      "Epoch 972/1000\n",
      "157/157 [==============================] - 0s 357us/step - loss: 0.0416 - acc: 0.9936 - val_loss: 0.0867 - val_acc: 0.9559\n",
      "Epoch 973/1000\n",
      "157/157 [==============================] - 0s 317us/step - loss: 0.0430 - acc: 0.9936 - val_loss: 0.0851 - val_acc: 0.9559\n",
      "Epoch 974/1000\n",
      "157/157 [==============================] - 0s 296us/step - loss: 0.0413 - acc: 0.9873 - val_loss: 0.0855 - val_acc: 0.9559\n",
      "Epoch 975/1000\n",
      "157/157 [==============================] - 0s 249us/step - loss: 0.0414 - acc: 0.9936 - val_loss: 0.0873 - val_acc: 0.9559\n",
      "Epoch 976/1000\n",
      "157/157 [==============================] - 0s 279us/step - loss: 0.0416 - acc: 0.9873 - val_loss: 0.0879 - val_acc: 0.9559\n",
      "Epoch 977/1000\n",
      "157/157 [==============================] - 0s 98us/step - loss: 0.0414 - acc: 0.9936 - val_loss: 0.0799 - val_acc: 0.9706\n",
      "Epoch 978/1000\n",
      "157/157 [==============================] - 0s 90us/step - loss: 0.0418 - acc: 0.9936 - val_loss: 0.0793 - val_acc: 0.9706\n",
      "Epoch 979/1000\n",
      "157/157 [==============================] - 0s 149us/step - loss: 0.0414 - acc: 0.9873 - val_loss: 0.0807 - val_acc: 0.9706\n",
      "Epoch 980/1000\n",
      "157/157 [==============================] - 0s 120us/step - loss: 0.0405 - acc: 0.9873 - val_loss: 0.0741 - val_acc: 0.9706\n",
      "Epoch 981/1000\n",
      "157/157 [==============================] - 0s 129us/step - loss: 0.0413 - acc: 0.9936 - val_loss: 0.0755 - val_acc: 0.9706\n",
      "Epoch 982/1000\n",
      "157/157 [==============================] - 0s 252us/step - loss: 0.0409 - acc: 0.9936 - val_loss: 0.0803 - val_acc: 0.9706\n",
      "Epoch 983/1000\n",
      "157/157 [==============================] - 0s 263us/step - loss: 0.0404 - acc: 0.9873 - val_loss: 0.0769 - val_acc: 0.9706\n",
      "Epoch 984/1000\n",
      "157/157 [==============================] - 0s 158us/step - loss: 0.0419 - acc: 0.9936 - val_loss: 0.0744 - val_acc: 0.9706\n",
      "Epoch 985/1000\n",
      "157/157 [==============================] - 0s 220us/step - loss: 0.0410 - acc: 0.9936 - val_loss: 0.0833 - val_acc: 0.9706\n",
      "Epoch 986/1000\n",
      "157/157 [==============================] - 0s 115us/step - loss: 0.0417 - acc: 0.9873 - val_loss: 0.0915 - val_acc: 0.9559\n",
      "Epoch 987/1000\n",
      "157/157 [==============================] - 0s 141us/step - loss: 0.0403 - acc: 0.9873 - val_loss: 0.0797 - val_acc: 0.9706\n",
      "Epoch 988/1000\n",
      "157/157 [==============================] - 0s 115us/step - loss: 0.0405 - acc: 0.9873 - val_loss: 0.0821 - val_acc: 0.9706\n",
      "Epoch 989/1000\n",
      "157/157 [==============================] - 0s 102us/step - loss: 0.0397 - acc: 0.9936 - val_loss: 0.0813 - val_acc: 0.9706\n",
      "Epoch 990/1000\n",
      "157/157 [==============================] - 0s 161us/step - loss: 0.0402 - acc: 0.9936 - val_loss: 0.0899 - val_acc: 0.9559\n",
      "Epoch 991/1000\n",
      "157/157 [==============================] - 0s 299us/step - loss: 0.0421 - acc: 0.9809 - val_loss: 0.0819 - val_acc: 0.9706\n",
      "Epoch 992/1000\n",
      "157/157 [==============================] - 0s 218us/step - loss: 0.0400 - acc: 0.9873 - val_loss: 0.0787 - val_acc: 0.9706\n",
      "Epoch 993/1000\n",
      "157/157 [==============================] - 0s 195us/step - loss: 0.0410 - acc: 0.9936 - val_loss: 0.0817 - val_acc: 0.9706\n",
      "Epoch 994/1000\n",
      "157/157 [==============================] - 0s 114us/step - loss: 0.0392 - acc: 0.9936 - val_loss: 0.0889 - val_acc: 0.9559\n",
      "Epoch 995/1000\n",
      "157/157 [==============================] - 0s 186us/step - loss: 0.0399 - acc: 0.9873 - val_loss: 0.0750 - val_acc: 0.9706\n",
      "Epoch 996/1000\n",
      "157/157 [==============================] - 0s 474us/step - loss: 0.0406 - acc: 0.9936 - val_loss: 0.0791 - val_acc: 0.9706\n",
      "Epoch 997/1000\n",
      "157/157 [==============================] - 0s 267us/step - loss: 0.0396 - acc: 0.9936 - val_loss: 0.0862 - val_acc: 0.9559\n",
      "Epoch 998/1000\n",
      "157/157 [==============================] - 0s 310us/step - loss: 0.0395 - acc: 0.9873 - val_loss: 0.0734 - val_acc: 0.9706\n",
      "Epoch 999/1000\n",
      "157/157 [==============================] - 0s 457us/step - loss: 0.0398 - acc: 0.9936 - val_loss: 0.0901 - val_acc: 0.9559\n",
      "Epoch 1000/1000\n",
      "157/157 [==============================] - 0s 332us/step - loss: 0.0395 - acc: 0.9873 - val_loss: 0.0871 - val_acc: 0.9559\n"
     ]
    }
   ],
   "source": [
    "from keras.models import Sequential\n",
    "# Building a Keras model\n",
    "\n",
    "model = Sequential()\n",
    "\n",
    "model.add(Dense(8, input_shape = (4,), activation = \"relu\"))\n",
    "\n",
    "model.add(Dense(8, activation = \"relu\"))\n",
    "\n",
    "model.add(Dense(1, activation = \"sigmoid\"))\n",
    "\n",
    "model.compile(loss=\"binary_crossentropy\", optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n",
    "\n",
    "num_epochs = 1000\n",
    "\n",
    "model_run = model.fit(X_train_scaled, y_train, epochs=num_epochs, validation_data = (X_test_scaled,y_test))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fe91c78a208>]"
      ]
     },
     "execution_count": 84,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fe91c78a748>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 250,
       "width": 373
      },
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "history_model = model_run.history\n",
    "\n",
    "fig, ax = plt.subplot()\n",
    "\n",
    "plt.plot(np.arange(1,num_epochs+1), history_model[\"acc\"], \"--\")\n",
    "\n",
    "plt.plot(np.arange(1,num_epochs+1), history_model[\"val_acc\"])\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\n",
    "## Network Architecture\n",
    "\n",
    "## CNN examples"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "TODO: \n",
    "\n",
    "- does keras support scikit-learn api ? (.fit and .predict methods) ?\n",
    "- if yes: we could use cross validation and hyper parameter optimzation for scikit-learn to evaluae / improve keras network.    \n",
    "      \n",
    "      "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.6.8"
  },
  "latex_envs": {
   "LaTeX_envs_menu_present": true,
   "autoclose": false,
   "autocomplete": true,
   "bibliofile": "biblio.bib",
   "cite_by": "apalike",
   "current_citInitial": 1,
   "eqLabelWithNumbers": true,
   "eqNumInitial": 1,
   "hotkeys": {
    "equation": "Ctrl-E",
    "itemize": "Ctrl-I"
   },
   "labels_anchors": false,
   "latex_user_defs": false,
   "report_style_numbering": false,
   "user_envs_cfg": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}