Logo Studenta

Perros_y_gatos_SEQUENTIAL

Esta es una vista previa del archivo. Inicie sesión para ver el archivo original

import tensorflow as tf #Para disenar la arquitectura
from keras.preprocessing.image import ImageDataGenerator #para darle formato al dataset
import numpy as np #para ingresar las imagenes en la red neuronal
from tensorflow.keras.preprocessing import image
import matplotlib.pyplot as plt #Para dibujar la imagen
#Plantear caracteristicas para las imagenes de entrenamiento e imagenes de prueba
train_datagen = ImageDataGenerator(rescale = 1./255,
 shear_range = 0.2,
 zoom_range = 0.2,
 horizontal_flip = True)
test_datagen = ImageDataGenerator(rescale = 1./255)
#Importamos el dataset
training_set = train_datagen.flow_from_directory(r'C:\Users\DELL 7280\Documents\LALO TEC LAGUNA\NOVENO SEMESTRE\Inteligencia artificial\Perros y GATOS\Datos entrenamiento',
 target_size = (100, 100),
 batch_size = 32,
 class_mode = 'binary',# color_mode = 'grayscale',
 )
print(training_set)
test_set = test_datagen.flow_from_directory(r'C:\Users\DELL 7280\Documents\LALO TEC LAGUNA\NOVENO SEMESTRE\Inteligencia artificial\Perros y GATOS\Datos entrenamiento',
 target_size = (100, 100),
 batch_size = 32,
 class_mode = 'binary')# color_mode = 'grayscale',
#Elaboramos la arquitectura
modeloDenso = tf.keras.models.Sequential([
 tf.keras.layers.Flatten(input_shape=(100, 100, 3)),#input_shape=(100, 100, 1)
 tf.keras.layers.Dense(509, activation='tanh'),
 tf.keras.layers.Dense(500, activation='tanh'),
 tf.keras.layers.Dense(1, activation='sigmoid')
])
#Compilar modelos. Usar crossentropy binario ya que tenemos solo 2 opciones (perro o gato)
modeloDenso.compile(optimizer='adam',
 loss='binary_crossentropy',
 metrics=['accuracy'])
modeloDenso.fit(training_set,
 steps_per_epoch = 80/32,
 epochs = 150,
 validation_data = test_set,
 validation_steps = 10)#callbacks=[tensorboardDenso]
# Part 3 - Making new predictions
# Single prediction
#from tensorflow.keras.preprocessing import image
#Probar gatos
test_image = image.load_img(r'C:\Users\DELL 7280\Documents\LALO TEC LAGUNA\NOVENO SEMESTRE\Inteligencia artificial\Perros y GATOS\PetImages\Gato\138.jpg', target_size = (100, 100))
#Probar perros
test_image = image.load_img(r'C:\Users\DELL 7280\Documents\LALO TEC LAGUNA\NOVENO SEMESTRE\Inteligencia artificial\Perros y GATOS\PetImages\Perro\838.jpg', target_size = (100, 100))
test_image = image.img_to_array(test_image)
test_image = np.expand_dims(test_image, axis = 0)
test_image /= 255. #Allows us to properly visualize our image by rescaling values in array
result = modeloDenso.predict(test_image)
training_set.class_indices
if result[0][0] == 1:
 prediction = 'dog'
else:
 prediction = 'cat'
 
#Manipular y visualizar el set
#Plots image
plt.figure(figsize=(6,6))
plt.imshow(test_image[0])
plt.show()
print(prediction)
import matplotlib.pyplot as plt
import cv2
plt.subplot()
plt.figure(figsize=(20,20))
n=int(10)
print(n)
print(d)

Otros materiales