¿Es posible darle a una computadora millones de imágenes de varios objetos, y se da cuenta de que hay cosas como animales, platos de cocina, montañas, etc. sin que nosotros lo digamos, y cómo se hace esto exactamente?

La parte desafortunada es que las computadoras no desarrollan conceptos discretos de lo que constituye un objeto.

Simplemente aprenden el mapeo de entrada a salida.

Por ejemplo, sabemos que los perros tienen cuatro patas, una cola y son lindos y les gusta ladrar a extraños. Los humanos desarrollamos conceptos que pueden usarse para generalizar a condiciones novedosas.

Por ejemplo, algo que puede retener agua, está limpio y lo suficientemente pequeño como para caber en su mano es probablemente una taza.

Algo que es plano sobre el que puedes poner cosas pero que es demasiado grande para transportarlo con frecuencia es probablemente una mesa.

Los algoritmos actuales de aprendizaje automático (ML) no modelan datos de esa manera. Puede tener buenos grupos solo por su apariencia, pero generalizar la forma en que lo hacen los humanos es probablemente la mejor manera. Si se implementa correctamente en las máquinas, este enfoque puede hacer que las máquinas puedan trabajar con menos datos y, por lo tanto, también puedan construir mejores grupos o descubrir nuevos objetos por sí mismos.

Probablemente un enfoque, que no funcionaría bien, es obtener una red neuronal convolucional (CNN) preformada como la red VGG. Elimine las capas completamente conectadas, si las hay, luego toque las características convolucionales (conv) de alto nivel para alimentar un algoritmo de agrupamiento.

Las características de conv de alto nivel se pueden comprimir utilizando métodos de reducción de dimensionalidad antes de alimentar los esquemas de agrupación de vecinos más cercanos, k-means, aglomerativos o recíprocos.

Es posible que obtenga buenos grupos de esa manera, pero en realidad no serán grupos puros. Es decir, un grupo que se supone que representa montañas podría tener impurezas como pájaros o perros, todo mezclado de una manera extraña.


Un enfoque más avanzado requeriría alguna forma de aprendizaje supervisado, pero podemos obtener la señal de supervisión de manera no supervisada.

Por ejemplo, los humanos aprendemos cosas porque de alguna manera somos supervisados ​​indirectamente por otros y por nosotros mismos, aprendemos de los demás. Por lo tanto, para facilitarlo, podemos permitir que los algoritmos de aprendizaje extraigan señales de supervisión. Tal vez podamos usar videos con audio y mina para palabras clave como montaña, platos o animales y cada vez que el sistema mencione y detecte esas palabras clave, puede etiquetar esos pocos fotogramas con esa palabra clave.

Entonces podemos usar los marcos etiquetados en una forma de aprendizaje supervisado que hace que el algoritmo general sea semi-supervisado porque no le dijimos explícitamente que esto es una montaña o un perro.

Sin embargo, esto es una especie de trampa.

Incluso un niño humano recibe tal supervisión indirecta cuando escucha a un adulto decir cosas como “eso es una montaña”, “eso es un gato” o algo así y la mente del niño construye un modelo inicial a partir de eso.

Pero la belleza del cerebro humano es que aprende de cantidades extremadamente pequeñas de ejemplos y la forma en que generalizamos es muy diferente de la forma en que las computadoras generalizan. Di algunos ejemplos anteriores mediante los cuales generalizamos a través del razonamiento.

No siempre agrupamos las cosas solo por la apariencia, podemos agrupar las cosas según la similitud presente en cómo se puede usar ese objeto. Otro ejemplo es que si puede sentarse en algo, entonces es probable que sea una silla o un banco, incluso si su apariencia puede ser muy diferente de las sillas o bancos que ha visto antes en su vida. Este tipo de generalización es actualmente extremadamente difícil de realizar en las máquinas.

Así que sí creo que solo dar a una computadora millones de imágenes puede dar buenos grupos, pero esos grupos serán impuros sin alguna forma de aprendizaje supervisado.

Y podemos extraer las señales de supervisión implícitamente si utilizamos formas más ricas de señales como videos con sonido. Por ejemplo, un perro ladra y puede ser posible usar el sonido de los ladridos para ayudar a etiquetar los fotogramas de video que contiene el perro. Incluso si algunas etiquetas pueden estar equivocadas teniendo en cuenta que ese enfoque de etiquetado puede ser propenso a errores, los videos aún tienen muchos más cuadros, por lo que los valores atípicos pueden ahogarse fácilmente en la gran cantidad de información contenida en el video.

Espero que esto ayude.

A2A.

Veamos, ¿no es eso como juzgar un libro por su portada?

En los años 80, un tipo (Lenat, Cyc) comenzó a construir una base de conocimiento que, supuestamente, podría resolver el problema del sentido común. Fue enorme () Cyc – Wikipedia. Este fue un ejemplo de humanos entrando en el conocimiento.

Ahora, uno podría decir que el tipo de Watson quiere hacer esto leyendo material. Es decir, el problema es la comprensión lectora. Entonces, eso todavía está abierto a discusión.

Usando enfoques ML / DL, la identificación de imágenes ha sido más efectiva en los últimos tiempos. La idea es descomponer las imágenes (extracción de características – bordes, etc.) y compararlas en una gran cantidad de cosas. Pero, una imagen puede valer más que mil palabras, pero un trillón de imágenes no genera conocimiento. En este sentido, nosotros, los humanos, reinamos en que el conocimiento se alcanza a través de algún equilibrio entre lo objetivo y lo subjetivo.

Hasta la fecha, los enfoques computacionales son todos objetivos. De hecho, podríamos decir que este es el objetivo final.

Luego, tenemos la web semántica: Web semántica – Wikipedia. De eso, obtenemos la imagen de abajo.

—-

Entonces, buena pregunta. Uno podría objetar esta visión ‘semántica’ de las cosas, pero comienza a enfocar los temas importantes.

En este momento, de ninguna manera? En el futuro, depende de muchas cosas. Pero no sin intervención humana (por definir, incluido cierto respeto por la hermenéutica).

Lo que usted pregunta acerca de esto se llama “Aprendizaje no supervisado”, pero la tecnología no es tan avanzada como usted describe. Usted pregunta cómo se hace. No lo es

El estado actual de la técnica en esta área es dar a la computadora (por ejemplo) una gran muestra de pedidos de un lugar como Amazon. Se escuchará si hay grupos de órdenes similares y los clasificará en media docena de categorías, pero no dirá nada sobre las categorías excepto “aquí están sus datos ordenados en grupos”. Es una buena técnica ayudar a un científico de datos a saber si hay estructura en lo que parecen datos sin clasificar. Es una herramienta estadística utilizada por los humanos para dar sentido a los datos. Si desea comprender más, el término mágico de Google es “Aprendizaje no supervisado”

Con lo que ESTAMOS teniendo un buen éxito es con lo que ellos llaman “Aprendizaje supervisado”. Esto es donde entrenas a la IA en miles de imágenes de diferentes objetos que están etiquetados. En efecto, usted dice “Este es un perro”. Este es un automóvil, un caballo, una montaña y muestra MUCHOS de estos, cientos o miles de veces. Luego, le muestra una imagen y le pregunta si es de la clase en la que ha sido entrenado. Esto funciona sorprendentemente bien y es una de las razones por las cuales las personas están entusiasmadas con la IA.

Ni siquiera estamos cerca de tener una IA que realmente pueda entender lo que está haciendo. Son solo aplicaciones que se ejecutan en una computadora. Incluso en el segundo caso en el que le muestras un perro y le dices “perro”. La aplicación de inteligencia artificial solo está haciendo números y haciendo álgebra lineal con hardware rápido. La aplicación no sabe qué es un perro. Solo está empujando los números.

Lo que está pidiendo es una IA general que pueda aprender de la experiencia sin ser programado o entrenado. Esto podría estar a 50 años de distancia por 400. Nadie lo sabe. Llegar allí NO será un avance incremental de lo que tenemos hoy. Requerirá un avance revolucionario en su comprensión de la inteligencia.

El artículo seminal de Torralba & co. [0] llamado “80 millones de imágenes pequeñas” mostró cuán lejos nos puede llevar la búsqueda de vecinos más cercanos directamente en los píxeles de la imagen.

No recuerdo si intentaron algún algoritmo de agrupación en este conjunto de datos, pero estoy seguro de que incluso algo tan simple como la agrupación de k-medias significaría un resultado bastante interesante.

Otro artículo muy interesante, casualmente también del grupo de Torralba es [1] donde mostraron que los núcleos de reconocimiento de objetos surgen incluso en CNN que están siendo entrenados para una tarea diferente (en este caso, clasificación de escenas).

Tenga en cuenta este descubrimiento y observe trabajos de capacitación de CNN auto supervisados ​​como [2,3] que aprovechan un objetivo ficticio sobre un gran conjunto de datos sin etiquetar para aprender una jerarquía de características decente.

Por lo tanto, debería ser posible aprender características CNN relevantes para objetos de esta manera auto supervisada sin necesidad de etiquetas, calcular estas características para todo su conjunto de datos y luego aplicar k-Means o un algoritmo de agrupamiento más sofisticado en la parte superior.

Apuesto a que los grupos que obtienes serían mucho mejores de lo que esperas.

[0] http://people.csail.mit.edu/torr

[1] https://arxiv.org/pdf/1412.6856.pdf

[2] https://www.cv-foundation.org/op

[3] https://www.cv-foundation.org/op

¿Es posible que un humano haga lo mismo? supongamos que le damos millones de imágenes para objetos desconocidos, ¿puede averiguar qué objeto es? No.

Se puede inferir para qué se podría usar el objeto, pero no se puede saber de qué objeto es a menos que haya tenido conocimiento previo de estos objetos.

Entonces, en esta configuración, millones o miles de millones de imágenes no ayudarán a que el número de imágenes no sea el problema.

Las computadoras como los humanos necesitan acceder a algún tipo de información para hacerlo, por lo que la información puede ser un entrenamiento previo.

Por sí misma, una computadora puede encontrar que hay varias categorías de artículos, pero a menos que esté entrenada con muestras etiquetadas, no puede etiquetarlas.

No, eso no es posible. Es decir, al menos debemos proporcionarle (i) una definición inteligente de cómo se ven las nociones (duras) o (ii) un montón (sí, un montón grande) de imágenes de muestra de esas nociones junto con las etiquetas adecuadas .

Escogiendo el camino menos difícil, así se hace * enseñando * la computadora por inducción.

¿Cómo se puede inferir de esta deducción? Bueno, realmente no lo sabemos, para ser sincero, pero, curiosamente, parece funcionar, como combinar operaciones lineales simplistas en un gráfico de cálculo. Como lo que se conoce como un gráfico de “aprendizaje profundo”.

Sí y no, hay un conjunto de técnicas para que digan qué hay en una imagen llamada Computer Vision, un tipo de aprendizaje automático. El que usa Google se llama Aprendizaje profundo, y puede hacer lo que usted SOLO solicitó porque primero fue entrenado para reconocer a los animales y esas cosas.

Si ha etiquetado las imágenes, entonces sí, puede entrenar a su computadora para que reconozca los objetos en las imágenes, y podrá reconocer esos objetos en casi cualquier foto que le dé, incluso si esa foto no era una de las fotos Solías entrenarlo.

TL; DR: es posible hacerlo, pero solo si entrena a su computadora para que reconozca los objetos que desea que reconozca en esas fotos, de manera muy similar a cómo puede darle a un niño un conjunto de ecuaciones de álgebra y hacer que le den la respuesta correcta. respuestas, pero SOLO si le enseñaste al niño a hacer álgebra.

Supongo que aún no, no sin comparar las imágenes con las imágenes en línea.

O ejecutar un programa específico que describiría todas las facetas de varios objetos, por ejemplo …

Si tiene patas, una cabeza, una cola y se mueve es un animal.

Por supuesto, tendría que ser mucho más complejo que esto, piense en cuántas instrucciones necesitaría para determinar que un huevo no era una bola o una fruta.

Lo realmente sorprendente es que sabemos que ese día se acerca, y probablemente antes de lo que esperamos.

Estamos viviendo la ciencia ficción de los años 50.

Puede enseñar las reglas generales de la computadora, y si las reglas generales son precisas, puede usar las matemáticas para determinar con precisión qué imágenes pertenecen a qué categoría.

Esa es mi comprensión, de todos modos.

El problema con las computadoras es esencialmente que las reglas generales no son precisas. Pero, si lo fueran, entonces las computadoras probablemente podrían generar inferencias a partir de una lógica inicial muy pequeña.

En principio, no hay nada de malo en aprender de un conjunto pequeño y simplificado, incluso uno relacionado con diferentes categorías, y crear reglas que se apliquen a un conjunto más grande y complejo a través del procesamiento de datos anteriores.

El problema es simplemente que las reglas generales no siempre son precisas.

Este es el problema que se reconoció hace mucho tiempo, pero más recientemente se ha centrado (en un punto) en las llamadas dificultades inherentes a la programación de reglas generales. Pero si me preguntas, esto es una dificultad con el hardware y la sintaxis, no una limitación inherente de la IA

La estrategia que creo que nos veremos obligados a utilizar es sobrecargar las IA con datos y ver cuáles son los mejores resultados. En ese sentido, se permitirá que las IA evolucionen en sus propios términos. Su fuerza será “hacer algo con los datos”, mientras que el talento de los humanos será la reducción creativa y la representación. Solo cuando podamos unir esas tres partes: 1. Reducción creativa y representación, 2. Hacer algo con los datos, y 3. Sobrecarga de datos, obtendremos un matrimonio genuino de inteligencia artificial y programador. Y sin ese matrimonio, realmente no tenemos IA.