Saltar al contenido
Deberes escolares » Charlas educativas » Cómo las computadoras aprenden a reconocer objetos al instante – Charla TED2017

Cómo las computadoras aprenden a reconocer objetos al instante – Charla TED2017

Charla «Cómo las computadoras aprenden a reconocer objetos al instante» de TED2017 en español.

Hace diez años los investigadores pensaban que inventar una computadora que distinguiera un gato de un perro sería casi imposible. Hoy en día los sistemas de visión artificial lo hacen con una precisión superior al 99 %. ¿Cómo? Joseph Redmon trabaja en el sistema YOLO (You Only Look Once), un método de detección de objetos de código abierto que puede identificar objetos en imágenes y video, desde cebras hasta señales de stop, a una gran velocidad. En una demostración en vivo memorable, Redmon muestra este importante avance con aplicaciones en la autoconducción de autos, robótica e incluso en la detección del cáncer.

  • Autor/a de la charla: Joseph Redmon
  • Fecha de grabación: 2017-04-24
  • Fecha de publicación: 2017-08-04
  • Duración de «Cómo las computadoras aprenden a reconocer objetos al instante»: 457 segundos

 

Traducción de «Cómo las computadoras aprenden a reconocer objetos al instante» en español.

Hace diez años los investigadores de la visión artificial pensaban que hacer que una computadora distinguiera un gato de un perro sería casi imposible, incluso con el avance significativo de la inteligencia artificial.

Ahora podemos hacerlo con un nivel superior al 99 % de precisión.

Esto se llama clasificación de imagen.

Esto es, poner una etiqueta a esa imagen.

Y las computadoras conocen miles de otras categorías también.

Soy estudiante de posgrado en la Universidad de Washington, y trabajo en un proyecto llamado Darknet, que es un framework de red neuronal para la capacitación y ensayo de modelos de visión artificial, Así que veamos lo que piensa Darknet de esta imagen que tenemos aquí.

Cuando ejecutamos nuestro clasificador en esta imagen, vemos que no solo se obtiene una predicción de perro o gato, en realidad, obtenemos predicciones de raza específicas.

Ese es el nivel de granularidad actual.

Y es correcto.

Mi perro es de hecho un malamute.

Hemos hecho avances increíbles en la clasificación de imágenes, pero ¿qué pasa al ejecutar nuestro clasificador en una imagen así? Bien…

Vemos que el clasificador vuelve con una predicción bastante similar.

Y es correcto, hay un malamute en la imagen, pero solo con esta etiqueta, en realidad, no sabemos mucho sobre lo que pasa en la imagen.

Necesitamos algo más potente.

Trabajo en un problema llamado detección de objetos, donde miramos una imagen e intentamos encontrar todos los objetos, poniendo cajas delimitadoras alrededor de ellos y averiguar qué son esos objetos.

Así que esto es lo que ocurre al ejecutar un detector en esta imagen.

Ahora, con este tipo de resultado, podemos hacer mucho más con nuestros algoritmos de visión artificial.

Vemos que sabe que hay un gato y un perro.

Conoce sus ubicaciones relativas, su tamaño.

Incluso puede saber alguna información adicional.

Hay un libro en el fondo.

Y si desea construir un sistema con base en la visión artificial por ejemplo, un vehículo autodirigido o un sistema robótico, este es el tipo de información que necesita.

Algo para interactuar con el mundo físico.

Cuando empecé a trabajar en la detección de objetos, se tardaba 20 segundos en procesar una sola imagen.

Y para entender por qué la velocidad es tan importante en este ámbito, este es un ejemplo de un detector de objetos que tarda dos segundos en procesar una imagen.

Así que esto es 10 veces más rápido que el detector de 20 segundos por imagen, y se puede ver que, en el momento de hacer las predicciones, el estado entero del mundo ha cambiado, y esto no sería muy útil para una aplicación.

Si aceleramos esto por otro factor de 10, esto es un detector que funciona en cinco fotogramas por segundo.

Esto es mucho mejor pero, por ejemplo, si hay algún movimiento significativo, yo no quisiera un sistema como este conduciendo mi auto.

Este es nuestro sistema de detección que se ejecuta en tiempo real en mi portátil.

Así que suavemente me sigue mientras me muevo en la imagen, y es robusto con una amplia variedad de cambios de tamaño, poses, hacia adelante, hacia atrás.

Esto es genial.

Esto es lo que realmente necesitamos si vamos a construir sistemas con base en visión artificial.

(Aplausos) Así que en solo unos pocos años, hemos pasado de 20 segundos por imagen a 20 milisegundos por imagen, mil veces más rápido.

¿Cómo llegamos hasta aquí? Bueno, en el pasado, los sistemas de detección de objetos tomaban una imagen como esta y la dividían en un montón de regiones y luego ejecutaban un clasificador en cada una de estas regiones, y las puntuaciones altas de ese clasificador se consideraban detecciones de la imagen.

Pero eso implicaba ejecutar un clasificador miles de veces sobre una imagen, miles de evaluaciones de redes neuronales para producir detección.

En cambio, nosotros hemos entrenado una sola red para hacer toda la detección.

Produce todas las cajas delimitadoras y ordena las probabilidades en simultáneo.

Con nuestro sistema, en lugar de mirar una imagen miles de veces para hacer la detección, se mira tan solo una vez, y por eso lo llamamos método YOLO de detección de objetos.

Así que con esta velocidad, no estamos limitados a las imágenes; podemos procesar el video en tiempo real.

Y ahora, en lugar de solo ver a ese gato y perro, podemos verlos moverse e interactuar unos con otros.

Este es un detector que entrenamos en 80 clases diferentes en el conjunto de datos COCO de Microsoft.

Tiene todo tipo de cosas como cuchara y tenedor, cuenco, objetos comunes como esos.

Tiene una variedad de cosas más exóticas: animales, autos, cebras, jirafas.

Y ahora vamos a hacer algo divertido.

Solo vamos a ir a la audiencia y ver qué tipo de cosas podemos detectar.

¿Alguien quiere un peluche? Hay algunos osos de peluche por aquí.

Y podemos reducir nuestro umbral de detección un poco, así podemos encontrar a más de Uds.

en la audiencia.

Vamos a ver si podemos obtener estas señales de stop.

Encontramos algunas mochilas.

Vamos a acercarnos un poco.

Y esto es genial.

Y todo el procesamiento está sucediendo en tiempo real en la computadora portátil.

Y es importante recordar que se trata de un sistema de detección de objetos de propósito general, así que podemos entrenar esto para cualquier dominio de la imagen.

El mismo código que usamos para encontrar señales de stop o de peatones, bicicletas en un vehículo autodirigido, puede usarse para encontrar células cancerosas en una biopsia de tejido.

Y hay investigadores de todo el mundo que ya usan esta tecnología para avances en cosas como la medicina, la robótica.

Esta mañana leí un periódico sobre un censo de animales que estaban haciendo en el Parque Nacional de Nairobi que usa YOLO como parte de este sistema de detección.

Y eso es posible, porque Darknet es de código abierto y de dominio público y libre para que lo use cualquier persona.

(Aplausos) Pero queríamos que la detección fuera aún más accesible y usable, por eso, mediante una combinación de optimización de modelos, binarización de red y aproximación, tenemos un reconocimiento de objetos que funciona en un teléfono.

(Aplausos) Y estoy muy contento porque ahora tenemos una solución bastante potente a este problema de visión artificial de bajo nivel, y cualquiera puede usarlo y hacer algo con esto.

Así que ahora el resto depende de Uds.

y de personas de todo el mundo con acceso a este software, y estoy impaciente por ver qué construirá la gente con esta tecnología.

Gracias.

(Aplausos)

https://www.ted.com/talks/joseph_redmon_how_computers_learn_to_recognize_objects_instantly/

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *