Skip to content

Instantly share code, notes, and snippets.

@Shamim-38
Created September 25, 2022 19:05
Show Gist options
  • Select an option

  • Save Shamim-38/b415ef2d2af22fe7fb4824a92a3fcb1c to your computer and use it in GitHub Desktop.

Select an option

Save Shamim-38/b415ef2d2af22fe7fb4824a92a3fcb1c to your computer and use it in GitHub Desktop.
Keras_model_Continue_training.ipynb
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "Keras_model_Continue_training.ipynb",
"provenance": [],
"collapsed_sections": [],
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/Shamim-38/b415ef2d2af22fe7fb4824a92a3fcb1c/keras_model_continue_training.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "code",
"metadata": {
"id": "sOs9J5tQy1vJ",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 768
},
"outputId": "e3bd22a6-19a3-41fe-9e3f-2c504648e471"
},
"source": [
"!pip install tf-nightly"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Collecting tf-nightly\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/cf/29/eaa43f27d2045ed4813c72e6f52d73b58ed603c5f1817c599993373bdf67/tf_nightly-2.2.0.dev20200405-cp36-cp36m-manylinux2010_x86_64.whl (517.1MB)\n",
"\u001b[K |████████████████████████████████| 517.1MB 27kB/s \n",
"\u001b[?25hRequirement already satisfied: astunparse==1.6.3 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.6.3)\n",
"Requirement already satisfied: absl-py>=0.7.0 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (0.9.0)\n",
"Requirement already satisfied: opt-einsum>=2.3.2 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (3.2.0)\n",
"Requirement already satisfied: numpy<2.0,>=1.16.0 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.18.2)\n",
"Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.1.0)\n",
"Requirement already satisfied: h5py<2.11.0,>=2.10.0 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (2.10.0)\n",
"Requirement already satisfied: google-pasta>=0.1.8 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (0.2.0)\n",
"Requirement already satisfied: wrapt>=1.11.1 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.12.1)\n",
"Requirement already satisfied: wheel>=0.26; python_version >= \"3\" in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (0.34.2)\n",
"Requirement already satisfied: scipy==1.4.1; python_version >= \"3\" in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.4.1)\n",
"Requirement already satisfied: protobuf>=3.9.2 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (3.10.0)\n",
"Requirement already satisfied: six>=1.12.0 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.12.0)\n",
"Collecting tb-nightly<2.4.0a0,>=2.3.0a0\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/59/0b/446c007433c44a2aab87b34fc272afe8574a1c47cee35dbc19f6394dada8/tb_nightly-2.3.0a20200405-py3-none-any.whl (2.9MB)\n",
"\u001b[K |████████████████████████████████| 2.9MB 34.6MB/s \n",
"\u001b[?25hRequirement already satisfied: gast==0.3.3 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (0.3.3)\n",
"Requirement already satisfied: grpcio>=1.8.6 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.27.2)\n",
"Requirement already satisfied: keras-preprocessing>=1.1.0 in /usr/local/lib/python3.6/dist-packages (from tf-nightly) (1.1.0)\n",
"Collecting tf-estimator-nightly\n",
"\u001b[?25l Downloading https://files.pythonhosted.org/packages/ca/94/373b909bdc1cd30015118d0c9da1b2be368c391691764181deb653b3d0ce/tf_estimator_nightly-2.3.0.dev2020040501-py2.py3-none-any.whl (455kB)\n",
"\u001b[K |████████████████████████████████| 460kB 52.8MB/s \n",
"\u001b[?25hRequirement already satisfied: setuptools in /usr/local/lib/python3.6/dist-packages (from protobuf>=3.9.2->tf-nightly) (46.0.0)\n",
"Requirement already satisfied: google-auth<2,>=1.6.3 in /usr/local/lib/python3.6/dist-packages (from tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (1.7.2)\n",
"Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.6/dist-packages (from tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (0.4.1)\n",
"Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.6/dist-packages (from tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (1.6.0.post2)\n",
"Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.6/dist-packages (from tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (3.2.1)\n",
"Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.6/dist-packages (from tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (1.0.1)\n",
"Requirement already satisfied: requests<3,>=2.21.0 in /usr/local/lib/python3.6/dist-packages (from tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (2.21.0)\n",
"Requirement already satisfied: cachetools<3.2,>=2.0.0 in /usr/local/lib/python3.6/dist-packages (from google-auth<2,>=1.6.3->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (3.1.1)\n",
"Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.6/dist-packages (from google-auth<2,>=1.6.3->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (0.2.8)\n",
"Requirement already satisfied: rsa<4.1,>=3.1.4 in /usr/local/lib/python3.6/dist-packages (from google-auth<2,>=1.6.3->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (4.0)\n",
"Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.6/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (1.3.0)\n",
"Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (3.0.4)\n",
"Requirement already satisfied: idna<2.9,>=2.5 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (2.8)\n",
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (2019.11.28)\n",
"Requirement already satisfied: urllib3<1.25,>=1.21.1 in /usr/local/lib/python3.6/dist-packages (from requests<3,>=2.21.0->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (1.24.3)\n",
"Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /usr/local/lib/python3.6/dist-packages (from pyasn1-modules>=0.2.1->google-auth<2,>=1.6.3->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (0.4.8)\n",
"Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.6/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tb-nightly<2.4.0a0,>=2.3.0a0->tf-nightly) (3.1.0)\n",
"Installing collected packages: tb-nightly, tf-estimator-nightly, tf-nightly\n",
"Successfully installed tb-nightly-2.3.0a20200405 tf-estimator-nightly-2.3.0.dev2020040501 tf-nightly-2.2.0.dev20200405\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "9pCcQGkmy5xm",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"outputId": "634ac278-896d-4eb3-b747-d6a7059d3d12"
},
"source": [
"import tensorflow as tf\n",
"tf.__version__"
],
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"'2.2.0-dev20200405'"
]
},
"metadata": {
"tags": []
},
"execution_count": 2
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "MPNRCcYSy931",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 51
},
"outputId": "43527cdf-815a-46c2-fe1f-eb74e5514349"
},
"source": [
"import tensorflow as tf\n",
"from tensorflow import keras\n",
"mnist = tf.keras.datasets.mnist\n",
"\n",
"(x_train, y_train),(x_test, y_test) = mnist.load_data()\n",
"x_train, x_test = x_train / 255.0, x_test / 255.0\n",
" \n",
"def create_model():\n",
" model = tf.keras.models.Sequential([\n",
" tf.keras.layers.Flatten(input_shape=(28, 28)),\n",
" tf.keras.layers.Dense(512, activation=tf.nn.relu), \n",
" tf.keras.layers.Dropout(0.2),\n",
" tf.keras.layers.Dense(10, activation=tf.nn.softmax)\n",
" ])\n",
"\n",
" model.compile(optimizer='adam', loss='sparse_categorical_crossentropy',metrics=['accuracy'])\n",
" return model"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz\n",
"11493376/11490434 [==============================] - 0s 0us/step\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "zKg4WTrQzF0N",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 374
},
"outputId": "d89cd341-7364-411e-a0b1-373fc182d7f3"
},
"source": [
"# Create a basic model instance\n",
"model=create_model()\n",
"model.fit(x_train, y_train, epochs = 10, validation_data = (x_test,y_test),verbose=1)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Epoch 1/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.2178 - accuracy: 0.9347 - val_loss: 0.1012 - val_accuracy: 0.9694\n",
"Epoch 2/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0965 - accuracy: 0.9707 - val_loss: 0.0879 - val_accuracy: 0.9718\n",
"Epoch 3/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0695 - accuracy: 0.9782 - val_loss: 0.0744 - val_accuracy: 0.9774\n",
"Epoch 4/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0529 - accuracy: 0.9832 - val_loss: 0.0719 - val_accuracy: 0.9782\n",
"Epoch 5/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0430 - accuracy: 0.9857 - val_loss: 0.0693 - val_accuracy: 0.9796\n",
"Epoch 6/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0367 - accuracy: 0.9879 - val_loss: 0.0693 - val_accuracy: 0.9799\n",
"Epoch 7/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0331 - accuracy: 0.9893 - val_loss: 0.0724 - val_accuracy: 0.9793\n",
"Epoch 8/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0284 - accuracy: 0.9904 - val_loss: 0.0668 - val_accuracy: 0.9818\n",
"Epoch 9/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0232 - accuracy: 0.9920 - val_loss: 0.0730 - val_accuracy: 0.9817\n",
"Epoch 10/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0235 - accuracy: 0.9919 - val_loss: 0.0741 - val_accuracy: 0.9819\n"
],
"name": "stdout"
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<tensorflow.python.keras.callbacks.History at 0x7fb0b0ebd6a0>"
]
},
"metadata": {
"tags": []
},
"execution_count": 4
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "wwJsUwzrzZLa",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"outputId": "df957bb8-4f8f-42dd-8087-fb017fbacb7c"
},
"source": [
"# saving the model in tensorflow format\n",
"model.save('./MyModel_tf',save_format='tf')"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"INFO:tensorflow:Assets written to: ./MyModel_tf/assets\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "unlMA9gWzjpV"
},
"source": [
"# loading the saved model\n",
"loaded_model = tf.keras.models.load_model('./MyModel_tf')"
],
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "clibGjx3zscb",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 374
},
"outputId": "2cba31a1-a0d2-47f5-b1f4-5faaf064b2f2"
},
"source": [
"# retraining the model\n",
"loaded_model.fit(x_train, y_train, epochs = 10, validation_data = (x_test,y_test),verbose=1)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Epoch 1/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0220 - accuracy: 0.9922 - val_loss: 0.0703 - val_accuracy: 0.9845\n",
"Epoch 2/10\n",
"1875/1875 [==============================] - 7s 4ms/step - loss: 0.0196 - accuracy: 0.9935 - val_loss: 0.0815 - val_accuracy: 0.9811\n",
"Epoch 3/10\n",
"1875/1875 [==============================] - 7s 4ms/step - loss: 0.0177 - accuracy: 0.9944 - val_loss: 0.0790 - val_accuracy: 0.9833\n",
"Epoch 4/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0171 - accuracy: 0.9943 - val_loss: 0.0830 - val_accuracy: 0.9825\n",
"Epoch 5/10\n",
"1875/1875 [==============================] - 7s 4ms/step - loss: 0.0168 - accuracy: 0.9945 - val_loss: 0.0809 - val_accuracy: 0.9825\n",
"Epoch 6/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0157 - accuracy: 0.9946 - val_loss: 0.0949 - val_accuracy: 0.9806\n",
"Epoch 7/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0171 - accuracy: 0.9944 - val_loss: 0.0889 - val_accuracy: 0.9829\n",
"Epoch 8/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0149 - accuracy: 0.9951 - val_loss: 0.0889 - val_accuracy: 0.9830\n",
"Epoch 9/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0142 - accuracy: 0.9954 - val_loss: 0.0912 - val_accuracy: 0.9825\n",
"Epoch 10/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0128 - accuracy: 0.9959 - val_loss: 0.1032 - val_accuracy: 0.9827\n"
],
"name": "stdout"
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<tensorflow.python.keras.callbacks.History at 0x7fb0ad5e1588>"
]
},
"metadata": {
"tags": []
},
"execution_count": 7
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "Ij3vy8rI0XDf"
},
"source": [
"model.save('./MyModel_h5.h5', save_format='h5')"
],
"execution_count": null,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "gSYpd8--pwWc"
},
"source": []
},
{
"cell_type": "code",
"metadata": {
"id": "Bo3hXXTNnhx0",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"outputId": "8cce03e2-3d89-456c-8b74-dead88c6ea53"
},
"source": [
"# loading the saved model\n",
"loaded_model_h5 = tf.keras.models.load_model('./MyModel_h5.h5')"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"WARNING:tensorflow:Error in loading the saved optimizer state. As a result, your model is starting with a freshly initialized optimizer.\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "XosFU_mVnr_R",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 374
},
"outputId": "96326e58-6821-4037-a0ac-8898597fb27b"
},
"source": [
"# retraining the model\n",
"loaded_model_h5.fit(x_train, y_train, epochs = 10, validation_data = (x_test,y_test),verbose=1)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Epoch 1/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0234 - accuracy: 0.9922 - val_loss: 0.0841 - val_accuracy: 0.9793\n",
"Epoch 2/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0187 - accuracy: 0.9936 - val_loss: 0.0773 - val_accuracy: 0.9820\n",
"Epoch 3/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0180 - accuracy: 0.9941 - val_loss: 0.0823 - val_accuracy: 0.9817\n",
"Epoch 4/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0192 - accuracy: 0.9935 - val_loss: 0.0826 - val_accuracy: 0.9822\n",
"Epoch 5/10\n",
"1875/1875 [==============================] - 9s 5ms/step - loss: 0.0165 - accuracy: 0.9947 - val_loss: 0.1009 - val_accuracy: 0.9814\n",
"Epoch 6/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0158 - accuracy: 0.9947 - val_loss: 0.0857 - val_accuracy: 0.9827\n",
"Epoch 7/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0143 - accuracy: 0.9953 - val_loss: 0.0830 - val_accuracy: 0.9832\n",
"Epoch 8/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0124 - accuracy: 0.9959 - val_loss: 0.0964 - val_accuracy: 0.9827\n",
"Epoch 9/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0152 - accuracy: 0.9952 - val_loss: 0.0922 - val_accuracy: 0.9832\n",
"Epoch 10/10\n",
"1875/1875 [==============================] - 8s 4ms/step - loss: 0.0142 - accuracy: 0.9954 - val_loss: 0.0965 - val_accuracy: 0.9831\n"
],
"name": "stdout"
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<tensorflow.python.keras.callbacks.History at 0x7fb0acb321d0>"
]
},
"metadata": {
"tags": []
},
"execution_count": 10
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "vOvjziczqnm2"
},
"source": [],
"execution_count": null,
"outputs": []
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment