--- a +++ b/Pneumonia_Detection.ipynb @@ -0,0 +1,1307 @@ +{ + "nbformat": 4, + "nbformat_minor": 0, + "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.7.6" + }, + "colab": { + "name": "Pneumonia Detection.ipynb", + "provenance": [], + "include_colab_link": true + } + }, + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "view-in-github", + "colab_type": "text" + }, + "source": [ + "<a href=\"https://colab.research.google.com/github/AnkitRajSri/Pneumonia-Detection/blob/master/Pneumonia_Detection.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "jETrabyQwLW2", + "colab_type": "text" + }, + "source": [ + "### Importing the libraries" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "U9qWWT1ewLW6", + "colab_type": "code", + "colab": {} + }, + "source": [ + "import os\n", + "import numpy as np\n", + "import tensorflow as tf\n", + "from keras.preprocessing import image\n", + "from keras.preprocessing.image import ImageDataGenerator" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "code", + "metadata": { + "id": "9pmdklbswLXK", + "colab_type": "code", + "colab": {}, + "outputId": "f9325e42-749a-48fe-ced1-7268622bee57" + }, + "source": [ + "tf.__version__" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "'2.1.0'" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 8 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "LuEvwqwAwLXb", + "colab_type": "text" + }, + "source": [ + "### Data Preprocessing" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "KxN_t-26wLXd", + "colab_type": "text" + }, + "source": [ + "##### Preprocessing the training set" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "k8yFRQyCwLXf", + "colab_type": "code", + "colab": {}, + "outputId": "ad0da542-220e-4857-9927-fdf2394b37e8" + }, + "source": [ + "train_datagen = ImageDataGenerator(\n", + " rescale=1./255,\n", + " shear_range=0.2,\n", + " zoom_range=0.2,\n", + " horizontal_flip=True)\n", + "\n", + "training_set = train_datagen.flow_from_directory(\n", + " 'train', target_size=(64, 64),\n", + " batch_size=32,\n", + " class_mode='binary')" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Found 5216 images belonging to 2 classes.\n" + ], + "name": "stdout" + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "F7A1jcC-wLXr", + "colab_type": "code", + "colab": {}, + "outputId": "eaebfab0-3fff-46f9-8977-beff4c57259a" + }, + "source": [ + "validation_datagen = ImageDataGenerator(rescale=1./255)\n", + "\n", + "validation_set = validation_datagen.flow_from_directory(\n", + " 'val', target_size=(64, 64),\n", + " batch_size=32,\n", + " class_mode='binary')" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Found 16 images belonging to 2 classes.\n" + ], + "name": "stdout" + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "G-tm781fwLX2", + "colab_type": "code", + "colab": {}, + "outputId": "2516ae5b-ab78-4ddb-db08-3db7cec47f38" + }, + "source": [ + "test_datagen = ImageDataGenerator(rescale=1./255)\n", + "\n", + "test_set = test_datagen.flow_from_directory(\n", + " 'test', target_size=(64, 64),\n", + " batch_size=32,\n", + " class_mode='binary')" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Found 624 images belonging to 2 classes.\n" + ], + "name": "stdout" + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "P-AsgjL5wLYA", + "colab_type": "text" + }, + "source": [ + "### Building the CNN" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "Gs6izkQawLYC", + "colab_type": "text" + }, + "source": [ + "##### Initializing the CNN and adding the layers" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "qhRn_PPMwLYD", + "colab_type": "code", + "colab": {} + }, + "source": [ + "cnn = tf.keras.Sequential()\n", + "\n", + "cnn.add(tf.keras.layers.Conv2D(filters=32, \n", + " kernel_size=3,\n", + " activation='relu',\n", + " input_shape=[64, 64, 3]))\n", + "cnn.add(tf.keras.layers.MaxPool2D(pool_size=2, strides=2))\n", + "cnn.add(tf.keras.layers.Conv2D(filters=32, \n", + " kernel_size=3,\n", + " activation='relu'))\n", + "cnn.add(tf.keras.layers.MaxPool2D(pool_size=2, strides=2))\n", + "cnn.add(tf.keras.layers.Flatten())\n", + "cnn.add(tf.keras.layers.Dense(units=256, activation='relu'))\n", + "cnn.add(tf.keras.layers.Dense(units=1, activation='sigmoid'))" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "dtzJ9tbqwLYS", + "colab_type": "text" + }, + "source": [ + "#### Compiling the CNN" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "EL6XoP-pwLYU", + "colab_type": "code", + "colab": {} + }, + "source": [ + "cnn.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])" + ], + "execution_count": 0, + "outputs": [] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "EkeukAK2wLYh", + "colab_type": "text" + }, + "source": [ + "##### Training the CNN on the training set and evaluating it on the validation set" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "BAKUV9CywLYj", + "colab_type": "code", + "colab": {}, + "outputId": "9432f8a2-8939-40c5-b2ca-d5c057b4e777" + }, + "source": [ + "cnn.fit(x=training_set, validation_data=test_set, epochs=25)" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "stream", + "text": [ + "WARNING:tensorflow:sample_weight modes were coerced from\n", + " ...\n", + " to \n", + " ['...']\n", + "WARNING:tensorflow:sample_weight modes were coerced from\n", + " ...\n", + " to \n", + " ['...']\n", + "Train for 163 steps, validate for 20 steps\n", + "Epoch 1/25\n", + "163/163 [==============================] - 119s 731ms/step - loss: 0.0716 - accuracy: 0.9730 - val_loss: 0.2369 - val_accuracy: 0.9311\n", + "Epoch 2/25\n", + "163/163 [==============================] - 124s 761ms/step - loss: 0.0677 - accuracy: 0.9755 - val_loss: 0.4190 - val_accuracy: 0.8974\n", + "Epoch 3/25\n", + "163/163 [==============================] - 119s 732ms/step - loss: 0.0667 - accuracy: 0.9747 - val_loss: 0.3130 - val_accuracy: 0.9054\n", + "Epoch 4/25\n", + "163/163 [==============================] - 120s 738ms/step - loss: 0.0571 - accuracy: 0.9793 - val_loss: 0.3345 - val_accuracy: 0.8958\n", + "Epoch 5/25\n", + "163/163 [==============================] - 118s 725ms/step - loss: 0.0593 - accuracy: 0.9760 - val_loss: 0.2856 - val_accuracy: 0.9151\n", + "Epoch 6/25\n", + "163/163 [==============================] - 108s 665ms/step - loss: 0.0584 - accuracy: 0.9799 - val_loss: 0.2743 - val_accuracy: 0.9263\n", + "Epoch 7/25\n", + "163/163 [==============================] - 108s 662ms/step - loss: 0.0560 - accuracy: 0.9791 - val_loss: 0.2714 - val_accuracy: 0.9087\n", + "Epoch 8/25\n", + "163/163 [==============================] - 113s 693ms/step - loss: 0.0550 - accuracy: 0.9793 - val_loss: 0.4636 - val_accuracy: 0.8734\n", + "Epoch 9/25\n", + "163/163 [==============================] - 128s 788ms/step - loss: 0.0581 - accuracy: 0.9789 - val_loss: 0.2477 - val_accuracy: 0.9151\n", + "Epoch 10/25\n", + "163/163 [==============================] - 117s 719ms/step - loss: 0.0547 - accuracy: 0.9812 - val_loss: 0.2690 - val_accuracy: 0.9151\n", + "Epoch 11/25\n", + "163/163 [==============================] - 110s 678ms/step - loss: 0.0546 - accuracy: 0.9810 - val_loss: 0.2803 - val_accuracy: 0.9167\n", + "Epoch 12/25\n", + "163/163 [==============================] - 113s 693ms/step - loss: 0.0574 - accuracy: 0.9776 - val_loss: 0.4011 - val_accuracy: 0.8830\n", + "Epoch 13/25\n", + "163/163 [==============================] - 110s 677ms/step - loss: 0.0516 - accuracy: 0.9816 - val_loss: 0.2724 - val_accuracy: 0.9263\n", + "Epoch 14/25\n", + "163/163 [==============================] - 121s 744ms/step - loss: 0.0463 - accuracy: 0.9833 - val_loss: 0.3101 - val_accuracy: 0.9183\n", + "Epoch 15/25\n", + "163/163 [==============================] - 115s 703ms/step - loss: 0.0514 - accuracy: 0.9806 - val_loss: 0.3937 - val_accuracy: 0.9022\n", + "Epoch 16/25\n", + "163/163 [==============================] - 113s 692ms/step - loss: 0.0527 - accuracy: 0.9812 - val_loss: 0.2983 - val_accuracy: 0.9279\n", + "Epoch 17/25\n", + "163/163 [==============================] - 124s 758ms/step - loss: 0.0451 - accuracy: 0.9843 - val_loss: 0.2324 - val_accuracy: 0.9279\n", + "Epoch 18/25\n", + "163/163 [==============================] - 177s 1s/step - loss: 0.0487 - accuracy: 0.9837 - val_loss: 0.3608 - val_accuracy: 0.9087\n", + "Epoch 19/25\n", + "163/163 [==============================] - 199s 1s/step - loss: 0.0475 - accuracy: 0.9841 - val_loss: 0.2932 - val_accuracy: 0.9038\n", + "Epoch 20/25\n", + "163/163 [==============================] - 199s 1s/step - loss: 0.0559 - accuracy: 0.9793 - val_loss: 0.2245 - val_accuracy: 0.9183\n", + "Epoch 21/25\n", + "163/163 [==============================] - 195s 1s/step - loss: 0.0458 - accuracy: 0.9843 - val_loss: 0.3297 - val_accuracy: 0.9215\n", + "Epoch 22/25\n", + "163/163 [==============================] - 192s 1s/step - loss: 0.0539 - accuracy: 0.9806 - val_loss: 0.3120 - val_accuracy: 0.9071\n", + "Epoch 23/25\n", + "163/163 [==============================] - 200s 1s/step - loss: 0.0417 - accuracy: 0.9833 - val_loss: 0.6652 - val_accuracy: 0.8574\n", + "Epoch 24/25\n", + "163/163 [==============================] - 199s 1s/step - loss: 0.0503 - accuracy: 0.9822 - val_loss: 0.4144 - val_accuracy: 0.8926\n", + "Epoch 25/25\n", + "163/163 [==============================] - 201s 1s/step - loss: 0.0442 - accuracy: 0.9850 - val_loss: 0.4151 - val_accuracy: 0.8958\n" + ], + "name": "stdout" + }, + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "<tensorflow.python.keras.callbacks.History at 0x226801ea688>" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 37 + } + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "AiCsHRNnwLYw", + "colab_type": "text" + }, + "source": [ + "### Making a prediction" + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "N5SdP_4dwLYy", + "colab_type": "code", + "colab": {}, + "outputId": "08cd96f7-2355-46b3-9f9c-375cc240637c" + }, + "source": [ + "test_image = image.load_img('test/PNEUMONIA/person1_virus_7.jpeg', target_size=(64, 64))\n", + "test_image" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "image/png": "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\n", + "text/plain": [ + "<PIL.Image.Image image mode=RGB size=64x64 at 0x22680735AC8>" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 38 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "ojQqZNx1wLY8", + "colab_type": "code", + "colab": {}, + "outputId": "8dd2143c-ac51-49a8-80ae-72a16ecec5e8" + }, + "source": [ + "test_image = image.img_to_array(test_image)\n", + "test_image" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "array([[[134., 134., 134.],\n", + " [ 45., 45., 45.],\n", + " [ 49., 49., 49.],\n", + " ...,\n", + " [222., 222., 222.],\n", + " [205., 205., 205.],\n", + " [213., 213., 213.]],\n", + "\n", + " [[ 53., 53., 53.],\n", + " [ 40., 40., 40.],\n", + " [ 60., 60., 60.],\n", + " ...,\n", + " [234., 234., 234.],\n", + " [209., 209., 209.],\n", + " [211., 211., 211.]],\n", + "\n", + " [[ 53., 53., 53.],\n", + " [ 48., 48., 48.],\n", + " [ 70., 70., 70.],\n", + " ...,\n", + " [185., 185., 185.],\n", + " [212., 212., 212.],\n", + " [216., 216., 216.]],\n", + "\n", + " ...,\n", + "\n", + " [[ 24., 24., 24.],\n", + " [ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " ...,\n", + " [ 17., 17., 17.],\n", + " [ 19., 19., 19.],\n", + " [ 18., 18., 18.]],\n", + "\n", + " [[ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " ...,\n", + " [ 16., 16., 16.],\n", + " [ 19., 19., 19.],\n", + " [ 20., 20., 20.]],\n", + "\n", + " [[ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " [ 24., 24., 24.],\n", + " ...,\n", + " [ 16., 16., 16.],\n", + " [ 19., 19., 19.],\n", + " [ 19., 19., 19.]]], dtype=float32)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 39 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "7LjOjssdwLZJ", + "colab_type": "code", + "colab": {}, + "outputId": "869f1d47-d72f-4b60-f4c9-f9693da95a47" + }, + "source": [ + "test_image = np.expand_dims(test_image, axis=0)\n", + "test_image" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "array([[[[134., 134., 134.],\n", + " [ 45., 45., 45.],\n", + " [ 49., 49., 49.],\n", + " ...,\n", + " [222., 222., 222.],\n", + " [205., 205., 205.],\n", + " [213., 213., 213.]],\n", + "\n", + " [[ 53., 53., 53.],\n", + " [ 40., 40., 40.],\n", + " [ 60., 60., 60.],\n", + " ...,\n", + " [234., 234., 234.],\n", + " [209., 209., 209.],\n", + " [211., 211., 211.]],\n", + "\n", + " [[ 53., 53., 53.],\n", + " [ 48., 48., 48.],\n", + " [ 70., 70., 70.],\n", + " ...,\n", + " [185., 185., 185.],\n", + " [212., 212., 212.],\n", + " [216., 216., 216.]],\n", + "\n", + " ...,\n", + "\n", + " [[ 24., 24., 24.],\n", + " [ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " ...,\n", + " [ 17., 17., 17.],\n", + " [ 19., 19., 19.],\n", + " [ 18., 18., 18.]],\n", + "\n", + " [[ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " ...,\n", + " [ 16., 16., 16.],\n", + " [ 19., 19., 19.],\n", + " [ 20., 20., 20.]],\n", + "\n", + " [[ 26., 26., 26.],\n", + " [ 26., 26., 26.],\n", + " [ 24., 24., 24.],\n", + " ...,\n", + " [ 16., 16., 16.],\n", + " [ 19., 19., 19.],\n", + " [ 19., 19., 19.]]]], dtype=float32)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 40 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "3chAjHsEwLZV", + "colab_type": "code", + "colab": {}, + "outputId": "f375eb94-3dca-47d3-de20-82ced809c582" + }, + "source": [ + "result = cnn.predict(test_image)\n", + "result" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "array([[1.]], dtype=float32)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 41 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "ew5t1Q2KwLZf", + "colab_type": "code", + "colab": {}, + "outputId": "9a393185-1313-4a92-cdb4-d97a25d307de" + }, + "source": [ + "training_set.class_indices" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "{'NORMAL': 0, 'PNEUMONIA': 1}" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 42 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "0PRTcxumwLZt", + "colab_type": "code", + "colab": {}, + "outputId": "9c48017f-be59-4f78-bc99-feffaa49fcc3" + }, + "source": [ + "if result[0][0] == 1:\n", + " prediction = 'Yes'\n", + "else:\n", + " prediction = 'No'\n", + " \n", + "print(prediction)" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Yes\n" + ], + "name": "stdout" + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "iTJzvNZswLaC", + "colab_type": "code", + "colab": {}, + "outputId": "b973828e-51a1-48f4-deb5-f7fd3acf70e4" + }, + "source": [ + "predictions = cnn.predict(test_set)\n", + "predictions" + ], + "execution_count": 0, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "array([[9.99127209e-01],\n", + " [1.00000000e+00],\n", + " [9.99928474e-01],\n", + " [1.09114801e-03],\n", + " [9.99967813e-01],\n", + " [9.99459326e-01],\n", + " [9.99999881e-01],\n", + " [1.00000000e+00],\n", + " [9.99017596e-01],\n", + " [1.00000000e+00],\n", + " [1.29443448e-04],\n", + " [9.79463816e-01],\n", + " [1.37045123e-02],\n", + " [2.46368870e-02],\n", + " [1.00000000e+00],\n", + " [9.99968648e-01],\n", + " [9.99991536e-01],\n", + " [1.00000000e+00],\n", + " [9.99998450e-01],\n", + " [1.00000000e+00],\n", + " [6.15069061e-04],\n", + " [9.99976993e-01],\n", + " [1.65362563e-03],\n", + " [7.92328298e-01],\n", + " [9.99999285e-01],\n", + " [9.88547921e-01],\n", + " [2.57708132e-01],\n", + " [9.99999762e-01],\n", + " [9.99968648e-01],\n", + " [1.99339353e-02],\n", + " [9.99307632e-01],\n", + " [9.99978900e-01],\n", + " [9.99983072e-01],\n", + " [1.00000000e+00],\n", + " [9.99995470e-01],\n", + " [1.58128709e-01],\n", + " [1.71573013e-01],\n", + " [9.40156542e-03],\n", + " [9.99028087e-01],\n", + " [9.99979615e-01],\n", + " [8.84311199e-01],\n", + " [1.00000000e+00],\n", + " [6.62890553e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [3.58641557e-02],\n", + " [9.99999166e-01],\n", + " [9.99990344e-01],\n", + " [9.99898076e-01],\n", + " [9.99990582e-01],\n", + " [9.56263602e-01],\n", + " [9.16411996e-01],\n", + " [9.99979258e-01],\n", + " [9.99999762e-01],\n", + " [9.99998331e-01],\n", + " [8.70225206e-03],\n", + " [9.99999404e-01],\n", + " [9.99994040e-01],\n", + " [1.00000000e+00],\n", + " [8.77190828e-02],\n", + " [9.99988437e-01],\n", + " [9.99971509e-01],\n", + " [9.99999762e-01],\n", + " [9.99995351e-01],\n", + " [9.99444425e-01],\n", + " [9.82008338e-01],\n", + " [1.19775973e-01],\n", + " [9.99998569e-01],\n", + " [9.81775761e-01],\n", + " [1.19775973e-01],\n", + " [3.06816743e-04],\n", + " [9.96874928e-01],\n", + " [9.99710619e-01],\n", + " [1.00000000e+00],\n", + " [9.99864697e-01],\n", + " [9.99714673e-01],\n", + " [9.99999523e-01],\n", + " [9.71442819e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.99991417e-01],\n", + " [1.20762475e-02],\n", + " [1.35311624e-02],\n", + " [1.67056266e-02],\n", + " [9.99990344e-01],\n", + " [3.77524309e-02],\n", + " [9.90310490e-01],\n", + " [9.99998212e-01],\n", + " [9.99999881e-01],\n", + " [9.61613238e-01],\n", + " [9.96931911e-01],\n", + " [9.99110520e-01],\n", + " [9.81467903e-01],\n", + " [1.00000000e+00],\n", + " [9.99971986e-01],\n", + " [9.99996781e-01],\n", + " [1.17318169e-03],\n", + " [6.64392905e-03],\n", + " [2.59142416e-03],\n", + " [9.99995232e-01],\n", + " [3.86283384e-04],\n", + " [7.68530011e-01],\n", + " [9.97692347e-01],\n", + " [1.00785948e-03],\n", + " [1.05657466e-02],\n", + " [1.00000000e+00],\n", + " [4.39906269e-02],\n", + " [2.46083364e-03],\n", + " [1.00000000e+00],\n", + " [9.99829292e-01],\n", + " [9.99999881e-01],\n", + " [1.23780328e-05],\n", + " [9.99999881e-01],\n", + " [9.99999881e-01],\n", + " [3.11724172e-04],\n", + " [9.99986887e-01],\n", + " [7.64466599e-02],\n", + " [1.80779747e-03],\n", + " [5.24111152e-01],\n", + " [1.95052564e-01],\n", + " [1.00038815e-04],\n", + " [9.98622775e-01],\n", + " [1.00000000e+00],\n", + " [9.99999881e-01],\n", + " [9.97306228e-01],\n", + " [9.89810944e-01],\n", + " [9.46811199e-01],\n", + " [9.99305487e-01],\n", + " [9.72333644e-03],\n", + " [1.02983102e-01],\n", + " [9.99990702e-01],\n", + " [9.99996781e-01],\n", + " [9.19544101e-01],\n", + " [9.34216261e-01],\n", + " [1.67280678e-02],\n", + " [2.88470894e-01],\n", + " [1.00000000e+00],\n", + " [3.59422415e-02],\n", + " [9.99920726e-01],\n", + " [5.99860251e-02],\n", + " [1.14257149e-02],\n", + " [1.00000000e+00],\n", + " [2.70382106e-01],\n", + " [9.99763191e-01],\n", + " [3.98957916e-03],\n", + " [9.99999881e-01],\n", + " [6.22153142e-03],\n", + " [1.00000000e+00],\n", + " [5.82696237e-02],\n", + " [9.99900699e-01],\n", + " [3.24655920e-01],\n", + " [9.99966383e-01],\n", + " [9.99953747e-01],\n", + " [9.99999762e-01],\n", + " [1.00000000e+00],\n", + " [2.08581029e-03],\n", + " [9.99998689e-01],\n", + " [9.96918917e-01],\n", + " [1.63357193e-03],\n", + " [1.49172521e-03],\n", + " [1.80346500e-02],\n", + " [9.93363738e-01],\n", + " [9.99370515e-01],\n", + " [1.00000000e+00],\n", + " [1.24495309e-02],\n", + " [1.00000000e+00],\n", + " [9.99506474e-01],\n", + " [1.47051467e-02],\n", + " [9.95344818e-01],\n", + " [9.99957085e-01],\n", + " [9.52291131e-01],\n", + " [2.53052741e-01],\n", + " [7.83037220e-04],\n", + " [9.52204466e-01],\n", + " [8.95937860e-01],\n", + " [4.58698953e-03],\n", + " [9.16729927e-01],\n", + " [1.31861880e-01],\n", + " [1.18350063e-03],\n", + " [3.63770267e-03],\n", + " [2.40937210e-04],\n", + " [9.99992847e-01],\n", + " [1.00000000e+00],\n", + " [9.38061476e-01],\n", + " [4.48292345e-01],\n", + " [9.96949494e-01],\n", + " [9.99861240e-01],\n", + " [6.77751228e-02],\n", + " [9.98625517e-01],\n", + " [1.00000000e+00],\n", + " [9.99991298e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [2.93031248e-04],\n", + " [9.99970794e-01],\n", + " [9.99992609e-01],\n", + " [1.00000000e+00],\n", + " [9.99981999e-01],\n", + " [9.99998927e-01],\n", + " [1.00000000e+00],\n", + " [9.99942899e-01],\n", + " [9.99995947e-01],\n", + " [9.99999762e-01],\n", + " [3.03096306e-02],\n", + " [9.98734295e-01],\n", + " [2.82496400e-02],\n", + " [1.00000000e+00],\n", + " [1.22997581e-05],\n", + " [9.72380817e-01],\n", + " [9.99998927e-01],\n", + " [3.34495358e-04],\n", + " [9.99960542e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.25026774e-01],\n", + " [9.99997735e-01],\n", + " [9.99999285e-01],\n", + " [9.70885634e-01],\n", + " [1.08759105e-03],\n", + " [5.97980559e-01],\n", + " [9.87478733e-01],\n", + " [9.99969959e-01],\n", + " [9.97018337e-01],\n", + " [9.99558389e-01],\n", + " [6.56807065e-01],\n", + " [1.00000000e+00],\n", + " [9.99999762e-01],\n", + " [1.00000000e+00],\n", + " [1.07551754e-01],\n", + " [9.99951363e-01],\n", + " [3.92399281e-01],\n", + " [9.76216078e-01],\n", + " [9.99999523e-01],\n", + " [9.99990225e-01],\n", + " [5.70857584e-01],\n", + " [9.99984384e-01],\n", + " [8.17382336e-02],\n", + " [6.57119006e-02],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [5.52541494e-01],\n", + " [9.99083400e-01],\n", + " [6.54394701e-02],\n", + " [9.21892405e-01],\n", + " [2.03139987e-03],\n", + " [9.99944448e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.94179606e-01],\n", + " [9.99999762e-01],\n", + " [9.99999762e-01],\n", + " [9.99864340e-01],\n", + " [9.99997854e-01],\n", + " [2.27030776e-02],\n", + " [2.33860612e-02],\n", + " [1.85382262e-01],\n", + " [1.00000000e+00],\n", + " [9.99992728e-01],\n", + " [9.99999881e-01],\n", + " [2.00066273e-03],\n", + " [1.08643241e-01],\n", + " [1.00000000e+00],\n", + " [9.95054483e-01],\n", + " [9.99249637e-01],\n", + " [9.99999881e-01],\n", + " [7.33255208e-01],\n", + " [9.99997854e-01],\n", + " [2.41787080e-02],\n", + " [9.70392346e-01],\n", + " [9.99998450e-01],\n", + " [9.99999881e-01],\n", + " [2.16439053e-01],\n", + " [9.99988317e-01],\n", + " [1.00000000e+00],\n", + " [9.99974251e-01],\n", + " [9.99995828e-01],\n", + " [9.99999642e-01],\n", + " [1.60792930e-04],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.99999285e-01],\n", + " [9.99990463e-01],\n", + " [9.97165859e-01],\n", + " [4.75391862e-04],\n", + " [9.98784721e-01],\n", + " [9.99998569e-01],\n", + " [6.25773892e-03],\n", + " [9.99958992e-01],\n", + " [3.89790745e-04],\n", + " [9.99980330e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00758232e-01],\n", + " [1.00000000e+00],\n", + " [8.24822392e-03],\n", + " [3.33807438e-05],\n", + " [9.91006076e-01],\n", + " [1.00000000e+00],\n", + " [9.56498552e-03],\n", + " [9.98254836e-01],\n", + " [9.99994516e-01],\n", + " [9.95416403e-01],\n", + " [7.58467913e-01],\n", + " [9.99649048e-01],\n", + " [3.51385102e-02],\n", + " [9.99973893e-01],\n", + " [1.00000000e+00],\n", + " [6.36694662e-04],\n", + " [3.00208293e-03],\n", + " [9.99999762e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.99999881e-01],\n", + " [1.00000000e+00],\n", + " [9.78716791e-01],\n", + " [8.36241424e-01],\n", + " [6.07311055e-02],\n", + " [9.99993920e-01],\n", + " [9.68563139e-01],\n", + " [9.99985218e-01],\n", + " [3.97806568e-03],\n", + " [9.99997497e-01],\n", + " [9.99766767e-01],\n", + " [2.82231515e-04],\n", + " [9.99983311e-01],\n", + " [1.00000000e+00],\n", + " [9.99998808e-01],\n", + " [1.77066587e-02],\n", + " [1.74319197e-03],\n", + " [7.91238435e-03],\n", + " [2.65843607e-03],\n", + " [2.01939931e-03],\n", + " [9.80653584e-01],\n", + " [6.04670541e-03],\n", + " [6.38098598e-01],\n", + " [9.96210098e-01],\n", + " [9.99998927e-01],\n", + " [9.99999642e-01],\n", + " [3.70114134e-03],\n", + " [9.99925494e-01],\n", + " [6.89928651e-01],\n", + " [8.20631325e-01],\n", + " [9.99999642e-01],\n", + " [9.02255654e-01],\n", + " [1.67412014e-04],\n", + " [9.99962687e-01],\n", + " [1.00000000e+00],\n", + " [9.94069099e-01],\n", + " [1.00000000e+00],\n", + " [9.96118546e-01],\n", + " [9.99984503e-01],\n", + " [8.73874068e-01],\n", + " [9.99999166e-01],\n", + " [9.99999762e-01],\n", + " [9.97170985e-01],\n", + " [4.57449377e-01],\n", + " [6.38098598e-01],\n", + " [9.99997497e-01],\n", + " [9.98502612e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.99929547e-01],\n", + " [1.00000000e+00],\n", + " [9.99997973e-01],\n", + " [1.00000000e+00],\n", + " [9.99727309e-01],\n", + " [9.99940753e-01],\n", + " [3.58864754e-01],\n", + " [9.99999404e-01],\n", + " [9.99872446e-01],\n", + " [9.99997854e-01],\n", + " [1.49931002e-03],\n", + " [9.48962033e-01],\n", + " [9.98382807e-01],\n", + " [9.99997497e-01],\n", + " [1.00000000e+00],\n", + " [9.94919479e-01],\n", + " [9.90912318e-01],\n", + " [9.99995708e-01],\n", + " [3.12850550e-02],\n", + " [5.76836839e-02],\n", + " [1.00000000e+00],\n", + " [9.99976754e-01],\n", + " [7.60898054e-01],\n", + " [1.00000000e+00],\n", + " [2.41197236e-02],\n", + " [6.79331481e-01],\n", + " [9.99999642e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.98858929e-01],\n", + " [7.78699994e-01],\n", + " [1.00000000e+00],\n", + " [9.36660290e-01],\n", + " [9.99999046e-01],\n", + " [6.79894924e-01],\n", + " [9.30567145e-01],\n", + " [2.77472019e-01],\n", + " [8.44867807e-03],\n", + " [5.95380485e-01],\n", + " [6.94191530e-02],\n", + " [9.96434808e-01],\n", + " [9.99989152e-01],\n", + " [6.07048273e-01],\n", + " [6.07317239e-02],\n", + " [1.00000000e+00],\n", + " [2.69764066e-01],\n", + " [2.40390226e-02],\n", + " [2.57276110e-02],\n", + " [2.55429670e-02],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.96815503e-01],\n", + " [1.10566318e-01],\n", + " [1.00000000e+00],\n", + " [9.98466015e-01],\n", + " [9.98371542e-01],\n", + " [2.57674187e-01],\n", + " [9.99472320e-01],\n", + " [1.00000000e+00],\n", + " [7.76644098e-04],\n", + " [1.00000000e+00],\n", + " [9.85175192e-01],\n", + " [9.99997973e-01],\n", + " [2.12329552e-01],\n", + " [9.99874711e-01],\n", + " [9.99999285e-01],\n", + " [6.94745123e-01],\n", + " [7.54924165e-03],\n", + " [1.00000000e+00],\n", + " [9.99993682e-01],\n", + " [5.18645287e-01],\n", + " [9.34577703e-01],\n", + " [2.96075121e-02],\n", + " [2.55093239e-02],\n", + " [9.99980330e-01],\n", + " [9.99995947e-01],\n", + " [2.58505195e-01],\n", + " [4.49159154e-04],\n", + " [1.04316156e-02],\n", + " [9.99700069e-01],\n", + " [9.99998569e-01],\n", + " [3.50234844e-03],\n", + " [9.75885332e-01],\n", + " [2.67864782e-02],\n", + " [1.00000000e+00],\n", + " [1.13111893e-02],\n", + " [1.00000000e+00],\n", + " [2.10697621e-01],\n", + " [9.99930382e-01],\n", + " [9.94694412e-01],\n", + " [1.00000000e+00],\n", + " [1.49561446e-02],\n", + " [9.99998689e-01],\n", + " [1.41535362e-03],\n", + " [9.95686412e-01],\n", + " [9.99999881e-01],\n", + " [1.00000000e+00],\n", + " [4.68831044e-04],\n", + " [1.93897691e-02],\n", + " [3.73468036e-03],\n", + " [9.83241916e-01],\n", + " [2.79722847e-02],\n", + " [3.01179320e-01],\n", + " [9.98645723e-01],\n", + " [9.99985456e-01],\n", + " [6.82771653e-02],\n", + " [9.99209106e-01],\n", + " [5.61944246e-01],\n", + " [9.99998093e-01],\n", + " [1.86151266e-01],\n", + " [9.99999762e-01],\n", + " [9.91966009e-01],\n", + " [9.99893308e-01],\n", + " [9.99999642e-01],\n", + " [9.99629498e-01],\n", + " [9.76446748e-01],\n", + " [2.68565435e-02],\n", + " [1.06689865e-02],\n", + " [1.00000000e+00],\n", + " [9.99978304e-01],\n", + " [9.99883533e-01],\n", + " [9.99992132e-01],\n", + " [9.99898553e-01],\n", + " [9.99997616e-01],\n", + " [5.01158655e-01],\n", + " [9.99999762e-01],\n", + " [2.13489216e-03],\n", + " [1.00000000e+00],\n", + " [3.31123471e-02],\n", + " [1.00000000e+00],\n", + " [2.12847046e-03],\n", + " [1.00000000e+00],\n", + " [9.99511719e-01],\n", + " [9.95730221e-01],\n", + " [1.97975934e-02],\n", + " [6.99095987e-03],\n", + " [9.99991894e-01],\n", + " [2.27933144e-03],\n", + " [1.92354538e-03],\n", + " [1.00000000e+00],\n", + " [9.99994516e-01],\n", + " [9.99999523e-01],\n", + " [9.87651706e-01],\n", + " [9.99999881e-01],\n", + " [9.99894619e-01],\n", + " [1.10436892e-02],\n", + " [4.87535028e-03],\n", + " [5.66245290e-05],\n", + " [9.98538613e-01],\n", + " [9.99999642e-01],\n", + " [4.83682483e-01],\n", + " [4.05326784e-01],\n", + " [5.89253902e-01],\n", + " [9.99999523e-01],\n", + " [9.99339998e-01],\n", + " [9.99960899e-01],\n", + " [9.99967337e-01],\n", + " [5.03293574e-02],\n", + " [9.99888062e-01],\n", + " [1.00000000e+00],\n", + " [9.99958158e-01],\n", + " [9.99970555e-01],\n", + " [9.99898553e-01],\n", + " [5.17294705e-02],\n", + " [1.00000000e+00],\n", + " [9.99969125e-01],\n", + " [9.99550998e-01],\n", + " [1.00000000e+00],\n", + " [9.99998569e-01],\n", + " [4.57099676e-02],\n", + " [9.99508381e-01],\n", + " [6.47619545e-01],\n", + " [4.82181460e-02],\n", + " [3.26992482e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [6.77119434e-01],\n", + " [9.99994159e-01],\n", + " [9.99999881e-01],\n", + " [9.99399900e-01],\n", + " [9.99931693e-01],\n", + " [1.02043085e-01],\n", + " [2.64167413e-03],\n", + " [9.99997735e-01],\n", + " [9.99999881e-01],\n", + " [9.99999523e-01],\n", + " [9.89206791e-01],\n", + " [1.44354524e-02],\n", + " [1.00000000e+00],\n", + " [1.61957890e-02],\n", + " [9.04303014e-01],\n", + " [1.00000000e+00],\n", + " [4.19442914e-03],\n", + " [9.99979019e-01],\n", + " [3.17975044e-01],\n", + " [9.99995708e-01],\n", + " [9.89016354e-01],\n", + " [1.00000000e+00],\n", + " [9.67190325e-01],\n", + " [9.99614358e-01],\n", + " [8.84264350e-01],\n", + " [9.86232340e-01],\n", + " [2.45566643e-03],\n", + " [9.99540448e-01],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [1.00000000e+00],\n", + " [9.99984622e-01],\n", + " [9.46505308e-01],\n", + " [1.00000000e+00],\n", + " [9.99998212e-01],\n", + " [9.99999762e-01],\n", + " [9.99777615e-01],\n", + " [9.99957561e-01],\n", + " [1.15558632e-01],\n", + " [9.99892712e-01],\n", + " [1.00000000e+00],\n", + " [9.99936342e-01],\n", + " [1.11514097e-02],\n", + " [2.79436726e-03],\n", + " [9.99112308e-01],\n", + " [9.27779649e-04],\n", + " [9.99990940e-01],\n", + " [9.99971747e-01],\n", + " [1.00000000e+00],\n", + " [1.11002484e-02],\n", + " [9.42763746e-01],\n", + " [9.72311437e-01],\n", + " [1.99509319e-03],\n", + " [1.03185941e-02],\n", + " [9.99856830e-01],\n", + " [1.00000000e+00],\n", + " [8.84238064e-01],\n", + " [1.00000000e+00],\n", + " [9.99971271e-01],\n", + " [9.99982119e-01],\n", + " [6.42004192e-01],\n", + " [1.13778906e-02],\n", + " [1.79906487e-02],\n", + " [3.06266814e-01],\n", + " [4.21514385e-04],\n", + " [1.00000000e+00],\n", + " [7.84004450e-01],\n", + " [9.99998927e-01],\n", + " [9.90493596e-01],\n", + " [3.13388139e-01],\n", + " [9.99949455e-01],\n", + " [2.70243496e-01],\n", + " [7.89658912e-03],\n", + " [9.99894261e-01],\n", + " [9.99990463e-01],\n", + " [9.99947309e-01],\n", + " [6.34111580e-04],\n", + " [9.99992132e-01],\n", + " [9.46811199e-01],\n", + " [9.99915361e-01]], dtype=float32)" + ] + }, + "metadata": { + "tags": [] + }, + "execution_count": 44 + } + ] + }, + { + "cell_type": "code", + "metadata": { + "id": "yIkNpzCuwLaO", + "colab_type": "code", + "colab": {} + }, + "source": [ + "" + ], + "execution_count": 0, + "outputs": [] + } + ] +} \ No newline at end of file