¡Construye tu primer modelo de clasificación de imágenes en solo 10 minutos! – los verdaderos expertos sociales cómo obtener bitcoins gratis en Android

¡No necesita trabajar para google u otras grandes empresas de tecnología para trabajar en conjuntos de datos de aprendizaje profundo! Es totalmente posible construir su propia red neuronal desde cero en cuestión de minutos sin necesidad de alquilar los servidores de Google. Los estudiantes de Fast.Ai diseñaron un modelo en el conjunto de datos de imagen en 18 minutos, y mostraré algo similar en este artículo.

Hay potencialmente n número de categorías en las que se puede clasificar una imagen dada. La comprobación y clasificación manual de las imágenes es un proceso muy tedioso. La tarea se vuelve casi imposible cuando nos enfrentamos a una gran cantidad de imágenes, por ejemplo, 10,000 o incluso 100,000. ¿Qué tan útil sería si pudiéramos automatizar todo este proceso y etiquetar rápidamente las imágenes por su clase correspondiente?

Los autos autónomos son un gran ejemplo para entender dónde se usa la clasificación de imágenes en el mundo real. Para habilitar la conducción autónoma, podemos construir un modelo de clasificación de imágenes que reconozca varios objetos, como vehículos, personas, objetos en movimiento, etc. En la carretera. Veremos un par de casos de uso más adelante en este artículo, pero hay muchas más aplicaciones a nuestro alrededor. Use la sección de comentarios a continuación en bitcoin conf. El artículo para hacerme saber qué posibles casos de uso puede presentar.

El archivo .Csv en nuestro conjunto de prueba es diferente del presente en el conjunto de entrenamiento. Este archivo .Csv de conjunto de prueba contiene los nombres de todas las imágenes de prueba, pero no tienen ninguna etiqueta correspondiente. ¿Puedes adivinar por qué? Nuestro modelo se capacitará en la compra de imágenes anónimas bitcoin presentes en el conjunto de entrenamiento y las predicciones de la etiqueta ocurrirán en las imágenes del conjunto de prueba.

Permítanme explicar cada uno de los pasos anteriores con un poco más de detalle. Esta sección es crucial porque no todos los modelos se construyen al principio. Deberá volver después de cada iteración, ajustar sus pasos y volver a ejecutarlos. Tener una comprensión sólida de los conceptos subyacentes contribuirá en gran medida a acelerar todo el proceso. Etapa 1: carga y preprocesamiento de los datos.

Tenemos un total de 70,000 imágenes (dimensión 28 x 28), de las cuales 60,000 son del conjunto de entrenamiento y 10,000 del del examen. Las imágenes de entrenamiento están pre-etiquetadas de acuerdo al tipo de ropa con 10 clases en total. Las imágenes de prueba, por supuesto, no están etiquetadas. El desafío es identificar el tipo de ropa presente en todas las imágenes de prueba.

Paso 2: importe las bibliotecas que necesitaremos durante nuestra fase de creación de modelos. Importar keras desde keras.Los modelos importan secuencialmente desde keras.Layers importan densos, omitidos, aplanados desde keras.Layers importan conv2d, maxpooling2d desde keras.Utils importan a_categorical desde keras.Preprocessing import image import númpy como np import import pas como pd import matplotlib.Potpotot como plt de sklearn.Model_selection import train_test_split from keras.Utils import to_categorical from tqdm import tqdm

A continuación, leeremos todas las imágenes de entrenamiento, las almacenaremos en una lista y, finalmente, convertiremos esa lista en una matriz numpy cosa sono i bitcoin. # tenemos imágenes en escala de grises, así que mientras cargamos las imágenes mantendremos escala de grises = verdadero, si tiene imágenes RGB, debe establecer la escala de grises como falsa train_image = [] para i en tqdm (range (train.Shape [0])): img = image.Load_img (‘train /’ + train [‘id’] [i] .Astype (‘str’) + ‘. Png’, target_size = (28,28,1), grayscale = true) img = image .Img_to_array (img) img = img / 255 train_image.Append (img) X = np.Array (train_image)

Crearemos una arquitectura simple con 2 capas convolucionales, una capa oculta densa y una capa de salida. Model = secuencial () model.Add (conv2d (32, kernel_size = (3, 3), activación = ‘relu’, input_shape = (28,28,1))) model.Add (conv2d (64, (3, 3) ), activation = ‘relu’)) model.Add (maxpooling2d (pool_size = (2, 2))) model.Add (dropout (0.25)) model.Add (flatten ()) model.Add (dense (128, activación) = ‘relu’)) model.Add (dropout (0.5)) model.Add (denso (10, activación = ‘softmax’))

Ahora, leeremos y almacenaremos todas las imágenes de prueba: test_image = [] para i en tqdm (range (test.Shape [0])): img = image.Load_img (‘test /’ + test [‘id’] [ i] .Astype (‘str’) + ‘. Png’, target_size = (28,28,1), grayscale = true) img = image.Img_to_array (img) img = img / 255 test_image.Append (img) test = np.Array (test_image) # haciendo predicciones prediction = model.Predict_classes (test)

También crearemos un archivo de envío para cargar en la página de la plataforma de datahack (para ver cómo se encuentran nuestros resultados en la tabla de clasificación). Download = drive.CreateFile ({‘id’: ‘1z4qxy7wravpsj-s4cs9fk8znax-qh5hf’}) download.GetContentFile (‘sample_submission_i_as_es_asque_asque_asque_aspañe a la vez de que se trata de un paquete de datos de ejemplo = pd.Read_scs.permos_asp.as.as.) ‘] = muestra de predicción.To_csv (‘ sample_cnn.Csv ‘, header = true, index = false)

Probemos nuestro aprendizaje en un conjunto de datos diferente. Estaremos resolviendo el problema de la práctica “identificar los dígitos” en esta sección. Continúa y descarga el conjunto de datos. Antes de continuar, intenta resolver esto por tu cuenta. Ya tienes las herramientas para resolverlo, ¡solo necesitas aplicarlas! Vuelva aquí para ver sus resultados o si se queda atascado en algún momento.

Listo para comenzar? ¡Increíble! Cree un nuevo cuaderno de python 3 y ejecute el siguiente código: # configuración colab! Pip instale pydrive import os desde pydrive.Auth import googleauth desde pydrive.Drive import googledrive desde google.Colab import auth desde oauth2client.Client import googlecredentials auth.Authenticate_user ( ) gauth = googleauth () gauth.Credentials = googlecredentials.Get_application_default () drive = googledrive (gauth) # reemplaza el id y el nombre de archivo en los códigos a continuación download = drive. GetContentFile (‘train_uqcua52.Zip’)! Descomprima train_uqcua52.Zip # importando bibliotecas importando keras desde keras.Los modelos importan secuencialmente de keras.Layers importan densos, abandonados, planos de keras.Layers importan conv2d, maxpooling2d desde keras.Usense .Preproceso importar la imagen de importación número como np importar pandas como pd importar matplotlib.Pyplot as plt de sklearn.Model_selection importar train_test_split de keras.Utiliza cómo comprar bitcoins con importar efectivo a_categoría desde tqdm importar tqdm train = pd.Read_csv (‘train.Csv’) # leyendo las imágenes de entrenamiento train_image = [] para i en tqdm (range (train.Shape [0])): img = image.Load_img ( ‘images / train /’ + train [‘filename’] [i], target_size = (28,28,1), grayscale = true) img = image.Img_to_array (img) img = img / 255 train_image.Append (img) X = np.Array (train_image) # creando la variable de destino y = train [‘label’]. Valores y = to_categorical (y) # creando el conjunto de validación x_train, x_test, y_train, y_test = train_test_split (X, y, random_state = 42 , test_size = 0.2) # define la estructura del modelo model = secuencial () model.Add (conv2d (32, kernel_size = (3, 3), activación = ‘relu’, input_shape = (28,28,1))). Agregar (conv2d (64, (3, 3), activación = ‘relu’)) model.Add (maxpooling2d (pool_size = (2, 2))) model.Add (dropout (0.25)) model.Add (flatten () ) model.Add (denso (128, activación = ‘relu’)) model.Add (dropout (0.5)) model.Add (denso (10, activación = ‘softmax’)) # compilar el modelo model.Compile (pérdida = ‘categorical_crossentropy’, opti mizer = ‘adam’, metrics = [‘precision’]) # entrenando el modelo del modelo. Ajuste (x_train, y_train, epochs = 10, validation_data = (x_test, y_test)) download = drive.CreateFile ({‘id’: ‘ 1zhjr6yii06ao-uah_lxzqriozbo3sndq ‘}) download.GetContentFile (‘ test_fcbtej3.Csv ‘) test_file = pd.permá de la persona de que se trata de un paquete en el que se encuentra en la lista de correo de la propiedad. image.Load_img (‘images / test /’ + test_file [‘filename’] [i], target_size = (28,28,1), grayscale = true) img = image.Img_to_array (img) img = img / 255 test_image. Append (img) test = np.Array (test_image) prediction = model.Predict_classes (test) download = drive.CreateFile ({‘id’: ‘1nrz5bd7regrdinpdfchvieyjqtpgpyhx’)) download.GetContentFile (‘sample_subpayplplpaclpacepp.p.p.p.p.p.p.p.pcp.pcp.pcp.pcp.pcp.pcp.png) Read_csv (‘sample_submission_lxuybub.Csv’) sample bitcoin scandal [‘filename’] = test_file [‘filename’] sample [‘label’] = prediction sample.To_csv (‘sample.Csv’, header = true, index = false)

banner