{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "Khb4cafb5-It" }, "source": [ "# 합성곱 신경망의 시각화" ] }, { "cell_type": "markdown", "metadata": { "id": "gtBpMgcc5-I0" }, "source": [ "\n", " \n", "
\n", " 구글 코랩에서 실행하기\n", "
" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "id": "sao-3wR_EG3L" }, "outputs": [], "source": [ "# 실행마다 동일한 결과를 얻기 위해 케라스에 랜덤 시드를 사용하고 텐서플로 연산을 결정적으로 만듭니다.\n", "import tensorflow as tf\n", "\n", "tf.keras.utils.set_random_seed(42)\n", "tf.config.experimental.enable_op_determinism()" ] }, { "cell_type": "markdown", "metadata": { "id": "10YURv8s5-I0" }, "source": [ "## 가중치 시각화" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "id": "Q7Uqs_t65-I0" }, "outputs": [], "source": [ "from tensorflow import keras" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "FdM7Nyis5-I1", "outputId": "700059e1-0394-46fa-8fff-bc551458398a" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "--2023-11-11 04:03:47-- https://github.com/rickiepark/hg-mldl/raw/master/best-cnn-model.h5\n", "Resolving github.com (github.com)... 192.30.255.113\n", "Connecting to github.com (github.com)|192.30.255.113|:443... connected.\n", "HTTP request sent, awaiting response... 302 Found\n", "Location: https://raw.githubusercontent.com/rickiepark/hg-mldl/master/best-cnn-model.h5 [following]\n", "--2023-11-11 04:03:48-- https://raw.githubusercontent.com/rickiepark/hg-mldl/master/best-cnn-model.h5\n", "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...\n", "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 4046712 (3.9M) [application/octet-stream]\n", "Saving to: ‘best-cnn-model.h5’\n", "\n", "best-cnn-model.h5 100%[===================>] 3.86M --.-KB/s in 0.06s \n", "\n", "2023-11-11 04:03:48 (60.6 MB/s) - ‘best-cnn-model.h5’ saved [4046712/4046712]\n", "\n" ] } ], "source": [ "# 코랩에서 실행하는 경우에는 다음 명령을 실행하여 best-cnn-model.h5 파일을 다운로드받아 사용하세요.\n", "!wget https://github.com/rickiepark/hg-mldl/raw/master/best-cnn-model.h5" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "id": "y6Fx0cai5-I1" }, "outputs": [], "source": [ "model = keras.models.load_model('best-cnn-model.h5')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "tOhJnNvW5-I1", "outputId": "abc11149-67a8-4237-9ea9-cebf5000319e", "scrolled": true }, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[,\n", " ,\n", " ,\n", " ,\n", " ,\n", " ,\n", " ,\n", " ]" ] }, "metadata": {}, "execution_count": 5 } ], "source": [ "model.layers" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "7e-EMS_h5-I2", "outputId": "88b84625-8f49-450d-b731-5b2ffa491dd0", "scrolled": true }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "(3, 3, 1, 32) (32,)\n" ] } ], "source": [ "conv = model.layers[0]\n", "\n", "print(conv.weights[0].shape, conv.weights[1].shape)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "D5WNlXS55-I3", "outputId": "71a1475a-4b51-4a76-d837-f83eeaae7330" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "-0.02494116 0.24951957\n" ] } ], "source": [ "conv_weights = conv.weights[0].numpy()\n", "\n", "print(conv_weights.mean(), conv_weights.std())" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "id": "Mm_xATS95-I3" }, "outputs": [], "source": [ "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 449 }, "id": "lm37R-hD5-I3", "outputId": "89d13e38-409d-4ba4-8db9-2f0155d97a15" }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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AN3SwPlvB3uES8Jni6cGe4SQcaG/v9t1Zqe6urrdgwEAAHSldl2zAwAA0F2068zOPffcc971L7/8cruGAQAACLR2xc7x48f97p8+fVoffvih6urqzvkHQgEAAIKlXbGzZs2as5a1trbqvvvu06BBgzo8FAAAQKAE7JqdsLAw5ebm6rnnngvULgEAADosoBcoHzx4UGfOnAnkLgEAADqkXS9j5ebm+t23LEtHjhzR22+/raysrIAMBgAAEAjtip3du3f73Q8LC1P//v31zDPPfOc7tQAAALpSu2Ln3XffDfQcAAAAnaJdsfOtr776SpWVlZKkwYMHq3///gEZCgAAIFDadYFyY2Oj7rnnHsXFxWn8+PEaP3684uPjNXv2bJ08eTLQMwIAALRbu2InNzdXpaWleuutt1RXV6e6ujqtW7dOpaWleuihhwI64Jdffqkf//jH6tu3r6KiojR8+HC9//77vvWWZWnBggWKi4tTVFSU0tLSdODAgYDOAAAAuq92xc4f/vAHvfTSS5oyZYocDoccDoduu+02vfjii/rv//7vgA13/Phx3XzzzerZs6f+9Kc/ad++fXrmmWd0+eWX+7ZZsmSJli5dquLiYpWXl6tXr15KT09XU1NTwOYAAADdV7uu2Tl58qRcLtdZy2NjYwP6MtZTTz2lhIQErVixwrcsMTHR92/LslRUVKTHHntM06ZNkyStWrVKLpdLa9eu1YwZMwI2CwAA6J7adWYnJSVFjz/+uN/Zk7/97W9auHChUlJSAjbcH//4R40ePVp33nmnYmNjdcMNN+jFF1/0ra+urpbH41FaWppvmdPpVHJyssrKytrcb3Nzs7xer98NAACYqV1ndoqKijR58mRdccUVGjFihCTpgw8+kN1u15///OeADffpp5/q+eefV25urn7xi19o586duv/++xUREaGsrCx5PB5JOussk8vl8q07l8LCQi1cuDBgcwIAgNDVrtgZPny4Dhw4oNWrV+vjjz+WJM2cOVOZmZmKiooK2HCtra0aPXq0fv3rX0uSbrjhBn344YcqLi7u0Cc15+fn+30KtNfrVUJCQofnBQAAoaddsVNYWCiXy6U5c+b4LX/55Zf11VdfKS8vLyDDxcXFadiwYX7Lhg4dqj/84Q+SJLfbLUmqra1VXFycb5va2lqNHDmyzf3a7XbZ7faAzAgAAEJbu67Z+e1vf6shQ4actfzaa69VcXFxh4f61s033+z70MJvffLJJ7ryyisl/f1iZbfbrZKSEt96r9er8vLygF47BAAAuq92ndnxeDx+Z1K+1b9/fx05cqTDQ33rwQcf1NixY/XrX/9ad911l3bs2KEXXnhBL7zwgiTJZrNp3rx5evLJJ5WUlKTExEQVFBQoPj5eGRkZAZsDAAB0X+2KnYSEBG3bts3vbeCStG3bNsXHxwdkMEm66aabtGbNGuXn5+uJJ55QYmKiioqKlJmZ6dvm0UcfVWNjo7Kzs1VXV6dx48Zpw4YNioyMDNgcAACg+2pX7MyZM0fz5s3T6dOnNXHiRElSSUmJHn300YB/gvIPfvAD/eAHP2hzvc1m0xNPPKEnnngioF8XAACYoV2x88gjj+ibb77Rz372M506dUqSFBkZqby8POXn5wd0QAAAgI5oV+zYbDY99dRTKigo0P79+xUVFaWkpCTe4QQAAEJOu2LnW71799ZNN90UqFkAAAACrl1vPQcAAOguiB0AAGA0YgcAABiN2AEAAEYjdgAAgNGIHQAAYDRiBwAAGK1Dn7MDAAC61sD5bwd7hIv22eKpQf36nNkBAABGI3YAAIDRiB0AAGA0YgcAABiN2AEAAEYjdgAAgNGIHQAAYDRiBwAAGI3YAQAARiN2AACA0YgdAABgNGIHAAAYjdgBAABGI3YAAIDRiB0AAGA0YgcAABiN2AEAAEYjdgAAgNGIHQAAYDRiBwAAGI3YAQAARiN2AACA0YgdAABgNGIHAAAYjdgBAABGI3YAAIDRiB0AAGA0YgcAABiN2AEAAEYjdgAAgNGIHQAAYDRiBwAAGI3YAQAARiN2AACA0YgdAABgNGIHAAAYrVvFzuLFi2Wz2TRv3jzfsqamJs2dO1d9+/ZV7969NX36dNXW1gZvSAAAEFK6Tezs3LlTv/3tb3X99df7LX/wwQf11ltv6Y033lBpaakOHz6sO+64I0hTAgCAUNMtYqehoUGZmZl68cUXdfnll/uW19fX66WXXtKzzz6riRMnatSoUVqxYoXee+89bd++vc39NTc3y+v1+t0AAICZukXszJ07V1OnTlVaWprf8oqKCp0+fdpv+ZAhQzRgwACVlZW1ub/CwkI5nU7fLSEhodNmBwAAwRXysfPaa69p165dKiwsPGudx+NRRESEoqOj/Za7XC55PJ4295mfn6/6+nrfraamJtBjAwCAEBEe7AHOp6amRg888IA2btyoyMjIgO3XbrfLbrcHbH8AACB0hfSZnYqKCh09elQ33nijwsPDFR4ertLSUi1dulTh4eFyuVw6deqU6urq/B5XW1srt9sdnKEBAEBICekzO5MmTdJf//pXv2WzZs3SkCFDlJeXp4SEBPXs2VMlJSWaPn26JKmyslKff/65UlJSgjEyAAAIMSEdO3369NF1113nt6xXr17q27evb/ns2bOVm5urmJgYORwO/fznP1dKSoq+973vBWNkAAAQYkI6di7Ec889p7CwME2fPl3Nzc1KT0/Xb37zm2CPBQAAQoTNsiwr2EMEm9frldPpVH19vRwOR7DHAYBuaeD8t4M9AkLUZ4undsp+L/T3d0hfoAwAANBRxA4AADAasQMAAIxG7AAAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACMRuwAAACjETsAAMBoxA4AADAasQMAAIxG7AAAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACMRuwAAACjhQd7AADA2QbOfzvYIwDG4MwOAAAwGrEDAACMRuwAAACjETsAAMBoxA4AADAasQMAAIxG7AAAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACMRuwAAACjETsAAMBoxA4AADAasQMAAIxG7AAAAKMROwAAwGjEDgAAMFpIx05hYaFuuukm9enTR7GxscrIyFBlZaXfNk1NTZo7d6769u2r3r17a/r06aqtrQ3SxAAAINSEdOyUlpZq7ty52r59uzZu3KjTp0/r+9//vhobG33bPPjgg3rrrbf0xhtvqLS0VIcPH9Ydd9wRxKkBAEAoCQ/2AOezYcMGv/srV65UbGysKioqNH78eNXX1+ull17SK6+8ookTJ0qSVqxYoaFDh2r79u363ve+F4yxAQBACAnpMzv/X319vSQpJiZGklRRUaHTp08rLS3Nt82QIUM0YMAAlZWVtbmf5uZmeb1evxsAADBTt4md1tZWzZs3TzfffLOuu+46SZLH41FERISio6P9tnW5XPJ4PG3uq7CwUE6n03dLSEjozNEBAEAQdZvYmTt3rj788EO99tprHd5Xfn6+6uvrfbeampoATAgA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z59/1sWO///W1g/5hZgxY4Z++MMfavjw4crIyND69eu1c+dObd68OXBP4hLQ2ccJgdPZxyo7O1vp6ekaPny4MjMztWrVKq1Zs0YHDx4M4LMAzMaZnUvMQw89pLvvvvu821x11VUB+3pXXXWV+vXrp6qqKk2aNClg+zVdZx4nt9stSaqtrVVcXJxveW1trUaOHNmufV7KLvRYud3usy56PXPmjI4dO+Y7JhciOTlZklRVVaVBgwZd9Lz4P/369VOPHj1UW1vrt7y2trbNY+J2uy9qe4QGYucS079/f/Xv37/Lvt4XX3yhb775xu+XKr5bZx6nxMREud1ulZSU+OLG6/WqvLz8ot95hws/VikpKaqrq1NFRYVGjRolSdq0aZNaW1t9AXMh9uzZI0n8TAVARESERo0apZKSEmVkZEiSWltbVVJSopycnHM+JiUlRSUlJZo3b55v2caNG5WSktIFE6Pdgn2FNELXoUOHrN27d1sLFy60evfube3evdvavXu3deLECd82gwcPtt58803LsizrxIkT1sMPP2yVlZVZ1dXV1jvvvGPdeOONVlJSktXU1BSsp2G8iz1OlmVZixcvtqKjo61169ZZe/futaZNm2YlJiZaf/vb34LxFC4ZkydPtm644QarvLzc2rp1q5WUlGTNnDnTt/6LL76wBg8ebJWXl1uWZVlVVVXWE088Yb3//vtWdXW1tW7dOuuqq66yxo8fH6ynYJzXXnvNstvt1sqVK619+/ZZ2dnZVnR0tOXxeCzLsqx/+7d/s+bPn+/bftu2bVZ4eLj19NNPW/v377cef/xxq2fPntZf//rXYD0FXABiB23KysqyJJ11e/fdd33bSLJWrFhhWZZlnTx50vr+979v9e/f3+rZs6d15ZVXWnPmzPH9p4HOcbHHybL+/vbzgoICy+VyWXa73Zo0aZJVWVnZ9cNfYr755htr5syZVu/evS2Hw2HNmjXLL0qrq6v9jt3nn39ujR8/3oqJibHsdrt19dVXW4888ohVX18fpGdgpmXLllkDBgywIiIirDFjxljbt2/3rZswYYKVlZXlt/3vf/9765prrrEiIiKsa6+91nr77be7eGJcLJtlWVZQTikBAAB0Ad6NBQAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACMRuwAAACjETsAAMBoxA4AADAasQPASAMHDlRRUdEFb//ZZ5/JZrP5/vYUAHMQOwCMtHPnTmVnZwd0nytXrlR0dHRA9wmg8/FXzwEYqbP+ajyA7oczOwBCwvr16xUdHa2WlhZJ0p49e2Sz2TR//nzfNj/5yU/04x//WJK0detW3XLLLYqKilJCQoLuv/9+NTY2+rb9/y9jffzxxxo3bpwiIyM1bNgwvfPOO7LZbFq7dq3fHJ9++qluvfVWXXbZZRoxYoTKysokSZs3b9asWbNUX18vm80mm82mX/3qV53zzQAQUMQOgJBwyy236MSJE9q9e7ckqbS0VP369dPmzZt925SWlio1NVUHDx7U5MmTNX36dO3du1evv/66tm7dqpycnHPuu6WlRRkZGbrssstUXl6uF154Qb/85S/Pue0vf/lLPfzww9qzZ4+uueYazZw5U2fOnNHYsWNVVFQkh8OhI0eO6MiRI3r44YcD/n0AEHjEDoCQ4HQ6NXLkSF/cbN68WQ8++KB2796thoYGffnll6qqqtKECRNUWFiozMxMzZs3T0lJSRo7dqyWLl2qVatWqamp6ax9b9y4UQcPHtSqVas0YsQIjRs3TosWLTrnHA8//LCmTp2qa665RgsXLtShQ4dUVVWliIgIOZ1O2Ww2ud1uud1u9e7duzO/JQAChNgBEDImTJigzZs3y7Is/eUvf9Edd9yhoUOHauvWrSotLVV8fLySkpL0wQcfaOXKlerdu7fvlp6ertbWVlVXV5+138rKSiUkJMjtdvuWjRkz5pwzXH/99b5/x8XFSZKOHj0a4GcKoCtxgTKAkJGamqqXX35ZH3zwgXr27KkhQ4YoNTVVmzdv1vHjxzVhwgRJUkNDg+69917df//9Z+1jwIABHZqhZ8+evn/bbDZJUmtra4f2CSC4iB0AIePb63aee+45X9ikpqZq8eLFOn78uB566CFJ0o033qh9+/bp6quvvqD9Dh48WDU1NaqtrZXL5ZL097emX6yIiAjfBdQAug9exgIQMi6//HJdf/31Wr16tVJTUyVJ48eP165du/TJJ5/4AigvL0/vvfeecnJytGfPHh04cEDr1q1r8wLlf/7nf9agQYOUlZWlvXv3atu2bXrsscck/d/ZmwsxcOBANTQ0qKSkRF9//bVOnjzZsScMoEsQOwBCyoQJE9TS0uKLnZiYGA0bNkxut1uDBw+W9PfrakpLS/XJJ5/olltu0Q033KAFCxYoPj7+nPvs0aOH1q5dq4aGBt100036yU9+4ns3VmRk5AXPNnbsWP30pz/Vj370I/Xv319Llizp2JMF0CVslmVZwR4CALratm3bNG7cOFVVVWnQoEHBHgdAJyJ2AFwS1qxZo969eyspKUlVVVV64IEHdPnll2vr1q3BHg1AJ+MCZQCXhBMnTigvL0+ff/65+vXrp7S0ND3zzDPBHgtAF+DMDgAAMBoXKAMAAKMROwAAwGjEDgAAMBqxAwAAjEbsAAAAoxE7AADAaMQOAAAwGrEDAACM9r9DhD3O23OkggAAAABJRU5ErkJggg==\n" }, "metadata": {} } ], "source": [ "plt.hist(conv_weights.reshape(-1, 1))\n", "plt.xlabel('weight')\n", "plt.ylabel('count')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 182 }, "id": "FBxjPV045-I4", "outputId": "72ef24ad-c739-4427-a90e-29803fde8f53", "scrolled": true }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "fig, axs = plt.subplots(2, 16, figsize=(15,2))\n", "\n", "for i in range(2):\n", " for j in range(16):\n", " axs[i, j].imshow(conv_weights[:,:,0,i*16 + j], vmin=-0.5, vmax=0.5)\n", " axs[i, j].axis('off')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "id": "P-r4Dx2N5-I4" }, "outputs": [], "source": [ "no_training_model = keras.Sequential()\n", "\n", "no_training_model.add(keras.layers.Conv2D(32, kernel_size=3, activation='relu',\n", " padding='same', input_shape=(28,28,1)))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "SRz0Z0z_5-I4", "outputId": "5fc3418f-adeb-46ff-d196-9a0de5e7f57a" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "(3, 3, 1, 32)\n" ] } ], "source": [ "no_training_conv = no_training_model.layers[0]\n", "\n", "print(no_training_conv.weights[0].shape)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "7FUqZL695-I4", "outputId": "79d4c8eb-4424-4fc1-918e-8409e4f495bf" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "-0.010310263 0.0773888\n" ] } ], "source": [ "no_training_weights = no_training_conv.weights[0].numpy()\n", "\n", "print(no_training_weights.mean(), no_training_weights.std())" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 449 }, "id": "DktjNm4Z5-I5", "outputId": "f2b00fdf-4b12-4c87-bf55-7a3b2e77fc62" }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "plt.hist(no_training_weights.reshape(-1, 1))\n", "plt.xlabel('weight')\n", "plt.ylabel('count')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 182 }, "id": "b7QmwoUe5-I5", "outputId": "46cf05ef-f47e-4301-9a90-1b1901065459", "scrolled": true }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "fig, axs = plt.subplots(2, 16, figsize=(15,2))\n", "\n", "for i in range(2):\n", " for j in range(16):\n", " axs[i, j].imshow(no_training_weights[:,:,0,i*16 + j], vmin=-0.5, vmax=0.5)\n", " axs[i, j].axis('off')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "GEc9KyP35-I6" }, "source": [ "## 함수형 API" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "RZ27RyZJ5-I6", "outputId": "010bbbb3-539d-4baa-8b56-d8fb9a449798" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "KerasTensor(type_spec=TensorSpec(shape=(None, 28, 28, 1), dtype=tf.float32, name='conv2d_input'), name='conv2d_input', description=\"created by layer 'conv2d_input'\")\n" ] } ], "source": [ "print(model.input)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "id": "FfHfv9w_5-I6" }, "outputs": [], "source": [ "conv_acti = keras.Model(model.input, model.layers[0].output)" ] }, { "cell_type": "markdown", "metadata": { "id": "CF6JzHj-5-I6" }, "source": [ "## 특성 맵 시각화" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "TU5ENBPB5-I7", "outputId": "0ec91f98-e3f5-476d-8e1c-c1a60899a098" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-labels-idx1-ubyte.gz\n", "29515/29515 [==============================] - 0s 0us/step\n", "Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-images-idx3-ubyte.gz\n", "26421880/26421880 [==============================] - 0s 0us/step\n", "Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-labels-idx1-ubyte.gz\n", "5148/5148 [==============================] - 0s 0us/step\n", "Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-images-idx3-ubyte.gz\n", "4422102/4422102 [==============================] - 0s 0us/step\n" ] } ], "source": [ "(train_input, train_target), (test_input, test_target) = keras.datasets.fashion_mnist.load_data()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 430 }, "id": "8-GBYsqm5-I7", "outputId": "da1a415a-479d-4f5c-992c-14e9eb5550f3" }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "plt.imshow(train_input[0], cmap='gray_r')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "id": "aJDrgyzo5-I7", "outputId": "ae02ffda-4804-4329-ee2b-cd2b2414d7cb", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "1/1 [==============================] - 9s 9s/step\n" ] } ], "source": [ "inputs = train_input[0:1].reshape(-1, 28, 28, 1)/255.0\n", "\n", "feature_maps = conv_acti.predict(inputs)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "wYMHCQ0C5-I7", "outputId": "be29a5e8-6999-4aba-cae2-842f2a04e786" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "(1, 28, 28, 32)\n" ] } ], "source": [ "print(feature_maps.shape)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 642 }, "id": "n9hhqasw5-I7", "outputId": "fb6615dc-b679-487c-8b64-18d25b010297" }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "fig, axs = plt.subplots(4, 8, figsize=(15,8))\n", "\n", "for i in range(4):\n", " for j in range(8):\n", " axs[i, j].imshow(feature_maps[0,:,:,i*8 + j])\n", " axs[i, j].axis('off')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "id": "RBCPiHm_5-I8" }, "outputs": [], "source": [ "conv2_acti = keras.Model(model.input, model.layers[2].output)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "id": "n5U3pxZc5-I8", "outputId": "cebd0b22-68b0-44e0-e897-d03ae52844fb", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "1/1 [==============================] - 0s 69ms/step\n" ] } ], "source": [ "feature_maps = conv2_acti.predict(train_input[0:1].reshape(-1, 28, 28, 1)/255.0)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "9QcCxjOf5-I8", "outputId": "7a200c81-2530-42a5-9242-5aae7dc72035" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "(1, 14, 14, 64)\n" ] } ], "source": [ "print(feature_maps.shape)" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 961 }, "id": "6xc2oG6D5-I8", "outputId": "d23d33ae-1793-4408-8cc4-9c21d0488a6b" }, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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\n" }, "metadata": {} } ], "source": [ "fig, axs = plt.subplots(8, 8, figsize=(12,12))\n", "\n", "for i in range(8):\n", " for j in range(8):\n", " axs[i, j].imshow(feature_maps[0,:,:,i*8 + j])\n", " axs[i, j].axis('off')\n", "\n", "plt.show()" ] } ], "metadata": { "accelerator": "GPU", "colab": { "name": "8-3.ipynb", "provenance": [] }, "kernelspec": { "display_name": "default:Python", "language": "python", "name": "conda-env-default-py" }, "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.9.10" } }, "nbformat": 4, "nbformat_minor": 0 }