--- title: Perros y Gatos emoji: 🐶🐱 colorFrom: purple colorTo: pink sdk: gradio app_file: app.py pinned: false --- # Modelo Clasificatorio de perros y gatos Nuestro proyecto es un modelo que clasifica perros y gatos, fue entrenado y validado a partir de imágenes y fue modelado con redes neuronales convolucionales. ## Decisions `1` Utilizar redes neuronales convolucionales, ya que estas son capaces de clasificar de forma mas precisa imágenes a diferencia de una neuronal, y son las indicadas para los casos clasificatorios a diferencia de un modelo denso que se usa para regresiones y no es capaz de acertar en la mayoria de los casos. `2` Clasificar perros y gatos. `3` Añadir un dropout en las capas para que el modelo no se sobreajuste. `4` Anadir capas de pooling para agrupar las decisiones tomadas entre cada capa convolucional. `5` Utilizar la funcion de activacion relu que es de las mas populares por sus buenos resultados en casos de clasificacion. `6` Utilizar la funcion de activacion sigmoid en al ultima capa para un mejor resultado final. `7` Utilizar optimizador adam y funcion de perdida binary_crossentropy que tambien son de las mas recomendadas y usadas para estos casos. `8` Utilizar transformaciones en algunas imágenes de entrenamiento para evitar que el modelo se ajuste y luego no pueda clasificar imágenes con mas zoom, o que esten rotadas, etc. `9` Utilizar un tamaño para las imágenes de 100x100 para disminuir el tiempo de entrenamiento ya que con un tamaño de 400x400 inicialmente nos tomo aproximadamente una hora. `10` Utilizar 1800 imágenes de entrenamiento y 600 imágenes de validacion. ## Data Sources Usamos las imágenes de entrenamiento y de validacion sobre gatos y perros de este link provenientes de TensorFlow [Cat vs Dog](https://download.microsoft.com/download/3/E/1/3E1C3F21-ECDB-4869-8368-6DEBA77B919F/kagglecatsanddogs_5340.zip). ## Features La entrada pueden ser con imágenes o con el animal directamente, a traves de la camara del computador en este caso, para predecir y/o clasificar si es un gato o un perro. ## Data Collection Decidimos utilizar esta coleccion de datos porque tiene gran variedad de imágenes, donde no solo sale un gato o perro en la misma forma, sino que con diferentes elementos acompañando, la imágenes son de diferentes tamaños, resoluciones, orientaciones, hay algunas con multiples gatos/perros, tienen texto, son carteles, etc. ## Value Proposition Puede ser utilizado en aplicaciones de reconocimiento y distincion de estos animales, en programas de seleccion, en aplicaciones de competencias de gatos o perros para permitir la inscripcion, en juegos educativos, en aplicaciones de imagenes para categorizar, etc. # Environment requirements to run the model Python 3.8.0 Tensorflow 2.2.2 Numpy 1.19.4 Scipy 1.9.3 Matplotlib.pyplot Cv2