{ "cells": [ { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "view-in-github" }, "source": [ "\"Open" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# for tf 2.0\n", "#!pip install -U tensorflow-gpu" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "colab": {}, "colab_type": "code", "id": "ckOHCuiArv5c" }, "outputs": [ { "data": { "text/plain": [ "'2.0.0'" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import tensorflow as tf\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import os\n", "import PIL\n", "import time\n", "from skimage.io import imshow\n", "\n", "from IPython.display import display\n", "tf.__version__" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 70 }, "colab_type": "code", "id": "1V2PJHrDrxf2", "outputId": "9ea36b90-cb48-432a-9148-178734c9d61d" }, "outputs": [], "source": [ "(train_images, train_labels), (test_images, test_labels) = tf.keras.datasets.mnist.load_data()\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "colab_type": "code", "id": "L0iNo21Arykj", "outputId": "d39284cb-6aa5-47e8-d93f-0bfb1a3f7d99" }, "outputs": [ { "data": { "text/plain": [ "(dtype('uint8'), (60000, 28, 28))" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_images.dtype, train_images.shape" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 314 }, "colab_type": "code", "id": "uAcCsSinus1d", "outputId": "55d4702d-93f2-4136-80be-fe756cada4ca" }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "imshow(train_images[0])" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "colab": {}, "colab_type": "code", "id": "uSDHJmuwtxT4" }, "outputs": [], "source": [ "def img_to_float(img):\n", " return (np.float32(img)[..., None]-127.5)/127.5\n", "def img_to_uint8(img):\n", " return np.uint8(img*127.5+128).clip(0, 255)[...,0]" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 314 }, "colab_type": "code", "id": "9yGVvMP9vUn0", "outputId": "62352be3-6919-4bd7-ceef-8c8cb9bceef5" }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "train_img_f32 = img_to_float(train_images)\n", "imshow(img_to_uint8(train_img_f32[0]))" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "cZ5RgpP64zKj" }, "source": [ "**Add labels to the dataset**\n", "```python\n", "train_dataset_y = tf.data.Dataset.from_tensor_slices(train_labels).map(lambda y: tf.one_hot(y, 10))\n", "train_dataset_x = tf.data.Dataset.from_tensor_slices(train_img_f32)\n", "train_dataset = tf.data.Dataset.zip((train_dataset_x, train_dataset_y)).shuffle(BUFFER_SIZE).batch(BATCH_SIZE)\n", "```\n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "colab": {}, "colab_type": "code", "id": "oSrY5b6ev0kO" }, "outputs": [], "source": [ "BUFFER_SIZE = train_img_f32.shape[0]\n", "BATCH_SIZE = 32\n", "train_dataset_y = tf.data.Dataset.from_tensor_slices(train_labels).map(lambda y: tf.one_hot(y, 10))\n", "train_dataset_x = tf.data.Dataset.from_tensor_slices(train_img_f32)\n", "train_dataset = tf.data.Dataset.zip((train_dataset_x, train_dataset_y)).shuffle(BUFFER_SIZE).batch(BATCH_SIZE)" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "YOGpQzuR5LUb" }, "source": [ "**The generator network is modified to take two inputs, labels and noises.\n", "Two inputs are concat into one before sending to the original generator.**\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "colab": {}, "colab_type": "code", "id": "ZaJFsMs2v1R1" }, "outputs": [], "source": [ "from tensorflow.keras.layers import Dense, BatchNormalization, LeakyReLU, Reshape, Conv2DTranspose, Input, concatenate\n", "from tensorflow.keras import Model\n", "latent_dim = 100\n", "\n", "_0 = Input((latent_dim,))\n", "_1 = Input((10,))\n", "_ = concatenate([_0, _1])\n", "_ = Dense(7*7*256, use_bias=False, input_shape=(latent_dim,))(_)\n", "_ = BatchNormalization()(_)\n", "_ = LeakyReLU()(_)\n", "_ = Reshape((7, 7, 256))(_)\n", "_ = Conv2DTranspose(128, (5, 5), strides=(1, 1), padding='same', use_bias=False)(_)\n", "_ = BatchNormalization()(_)\n", "_ = LeakyReLU()(_)\n", "_ = Conv2DTranspose(64, (5, 5), strides=(2, 2), padding='same', use_bias=False)(_)\n", "_ = BatchNormalization()(_)\n", "_ = LeakyReLU()(_)\n", "_ = Conv2DTranspose(1, (5, 5), strides=(2, 2), padding='same', activation='tanh')(_)\n", "generator = Model(inputs=[_0,_1], outputs=_)" ] }, { "cell_type": "markdown", "metadata": { "colab_type": "text", "id": "T52zvuDP5rO8" }, "source": [ "**The discriminator also take two inputs, labels and images. The labels are concat to the flatten layer in later stage.**" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "colab": {}, "colab_type": "code", "id": "kqdl08rxvWiS" }, "outputs": [], "source": [ "from tensorflow.keras.layers import Conv2D, Dropout, Flatten\n", "_0 = Input((28,28, 1))\n", "_1 = Input((10,))\n", "_ = Conv2D(64, (5, 5), strides=(2, 2), padding='same')(_0)\n", "_ = LeakyReLU()(_)\n", "_ = Dropout(0.3)(_)\n", "_ = Conv2D(128, (5, 5), strides=(2, 2), padding='same')(_)\n", "_ = LeakyReLU()(_)\n", "_ = Dropout(0.3)(_)\n", "_ = Flatten()(_)\n", "_ = concatenate([_, _1])\n", "_ = Dense(50)(_)\n", "_ = BatchNormalization()(_)\n", "_ = LeakyReLU()(_)\n", "_ = Dense(1)(_)\n", "discriminator = Model(inputs=[_0,_1], outputs=_)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "colab": {}, "colab_type": "code", "id": "nd8zcnhjzKWq" }, "outputs": [], "source": [ "loss_fn = tf.keras.losses.BinaryCrossentropy(from_logits=True)\n", "def generator_loss(generated_output):\n", " return loss_fn(tf.ones_like(generated_output), generated_output)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "colab": {}, "colab_type": "code", "id": "fgWHoC6FzbUA" }, "outputs": [], "source": [ "def discriminator_loss(real_output, generated_output):\n", " # [1,1,...,1] with real output since it is true and we want our generated examples to look like it\n", " real_loss = loss_fn(tf.ones_like(real_output), real_output)\n", "\n", " # [0,0,...,0] with generated images since they are fake\n", " generated_loss = loss_fn(tf.zeros_like(generated_output), generated_output)\n", "\n", " total_loss = real_loss + generated_loss\n", "\n", " return total_loss" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "colab": {}, "colab_type": "code", "id": "KCYwQqxgz8o_" }, "outputs": [], "source": [ "generator_optimizer = tf.keras.optimizers.Adam(1e-4)\n", "discriminator_optimizer = tf.keras.optimizers.Adam(1e-4)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "colab": {}, "colab_type": "code", "id": "Rb2-KU6K1J0I" }, "outputs": [], "source": [ "EPOCHS = 50\n", "num_examples_to_generate = 20\n", "\n", "# We'll re-use this random vector used to seed the generator so\n", "# it will be easier to see the improvement over time.\n", "random_vector_for_generation = tf.random.normal([num_examples_to_generate,\n", " latent_dim])\n", "condition_vector_generation = tf.one_hot(list(range(10))+list(range(10)), 10)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "colab": {}, "colab_type": "code", "id": "Xnu88uGR1etc" }, "outputs": [], "source": [ "@tf.function\n", "def train_step(images, labels):\n", " # generating noise from a normal distribution\n", " noise = tf.random.normal([BATCH_SIZE, latent_dim]) \n", " with tf.GradientTape() as gen_tape, tf.GradientTape() as disc_tape:\n", " generated_images = generator([noise, labels], training=True)\n", " \n", " real_output = discriminator([images, labels], training=True)\n", " generated_output = discriminator([generated_images, labels], training=True)\n", " \n", " gen_loss = generator_loss(generated_output)\n", " disc_loss = discriminator_loss(real_output, generated_output)\n", " \n", " gradients_of_generator = gen_tape.gradient(gen_loss, generator.trainable_variables)\n", " gradients_of_discriminator = disc_tape.gradient(disc_loss, discriminator.trainable_variables)\n", " \n", " generator_optimizer.apply_gradients(zip(gradients_of_generator, generator.trainable_variables))\n", " discriminator_optimizer.apply_gradients(zip(gradients_of_discriminator, discriminator.trainable_variables))" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 805 }, "colab_type": "code", "id": "1DPQkOVx2yon", "outputId": "f9520ccd-80f9-4ab8-bb92-c7899b8a82f8" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 16.848364114761353\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "1 12.175549507141113\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "2 11.367757797241211\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "3 11.38961124420166\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "4 11.278191566467285\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "5 11.328220844268799\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "6 11.35372543334961\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "7 11.041415691375732\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "8 11.560566186904907\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "9 11.870312929153442\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "10 11.144068956375122\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "11 11.821977615356445\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "12 11.558624505996704\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "13 11.609253644943237\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "14 11.420289993286133\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "for epoch in range(15):\n", " start_time = time.time()\n", " for images, labels in train_dataset:\n", " train_step(images, labels)\n", " fake = generator([random_vector_for_generation, condition_vector_generation], training=False)\n", " fake_concat = np.transpose(img_to_uint8(fake), [1,0,2]).reshape((28,-1))\n", " print(epoch, time.time()-start_time)\n", " display(PIL.Image.fromarray(fake_concat))\n", " \n", " " ] } ], "metadata": { "accelerator": "GPU", "colab": { "collapsed_sections": [], "include_colab_link": true, "name": "CGAN-intro for MNIST", "provenance": [], "version": "0.3.2" }, "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" } }, "nbformat": 4, "nbformat_minor": 1 }