¿Por qué la búsqueda de imágenes de Google es tan rápida?

Es muy rápido porque solo buscan a través de TEXTO indexado.
Es decir, en el momento de la consulta, no se analiza ninguna imagen.

Todo el trabajo duro ya se había hecho antes: después de rastrear la imagen, se indexó en la base de datos.

Actualice para responder la pregunta del comentario (“¿Qué trabajo duro hacen después de encontrar una imagen?”):
1. Lo que es lo mismo que en la búsqueda de texto: indexar palabras y frases que aparecen cerca de la imagen (o que enlazan con la imagen)
2. Material específico de la imagen: Google (y Baidu y Microsoft) son bastante buenos para el reconocimiento de imágenes. Simplemente busque “ImageNet” (punto de referencia) o “GoogLeNet” (uno de sus algos) y encontrará muchos documentos que describen de lo que son capaces. Pero no se sabe públicamente si están utilizando estos algos en la búsqueda de imágenes principales. Si no, comenzarán pronto (en 2 años como máximo, supongo).

Agregando a las otras respuestas, sospecho que usan una variedad de algoritmos de búsqueda diferentes, tal vez dependiendo de la imagen. Pero hay algunas técnicas generales muy probablemente involucradas. Probablemente generan “claves” a partir de los datos de la imagen y dependen de la indexación para encontrar claves coincidentes para las imágenes candidatas. Un índice permite la recuperación en “tiempo logarítmico”. Entonces, se busca un millón de filas en aproximadamente 20 pasos (la base de registro 2 de un millón es alrededor de 20).

El siguiente gran truco es la paralelización. Una búsqueda se divide en varias máquinas, cada una de las cuales realiza parte del trabajo y todas trabajan al mismo tiempo.

En PicLookup, tenemos solo alrededor de un millón de imágenes, y solo un servidor, pero la búsqueda solo lleva unos segundos. E incluso podemos buscar usando una pequeña parte del original, que Google a menudo no tiene. Para obtener más detalles sobre cómo funciona nuestro motor, consulte la entrada del blog, Un motor de búsqueda de imágenes inversas pequeño pero valiente. Google es enorme, y nosotros somos pequeños. Estamos muy interesados ​​en escuchar comentarios sobre el sitio. ¿Parece útil, se necesitan mejoras? Gracias.

Su es un trabajo de investigación extenso involucrado detrás de esta investigación rápida. El equipo de investigación compara y vota las imágenes manualmente para una categoría en particular, la decisión final para una categoría en particular se revisa muchas veces después de una búsqueda adecuada y luego se carga en consecuencia. Por eso es tan rápido 🙂

Es su método de extraer los datos de las bases de datos, así como todos los algoritmos y sistemas utilizados para procesar su búsqueda tan rápido. Tienen millones de servidores y computadoras que trabajan para explorar miles de millones de archivos web y pueden aprender rápidamente lo que está buscando. En cuanto a cargar esa información, eso también es en parte para su proveedor de internet.

Una forma es usar algo así como una red neuronal convolucional entrenada en un atlas grande de una manera no supervisada para generar “descriptores”, y comparar esos descriptores en su lugar.

Ciertamente, no solo los comparan imagen por imagen. Como dijiste, eso sería demasiado lento en muchos órdenes de magnitud.

More Interesting

¿Cómo podemos estimar múltiples parámetros de un clasificador?

Cómo saber si mi modelo de regresión es heteroscedastic u homoscedastic de mi modelo de residuos

¿Qué es más beneficioso para la comprensión general de la informática, el procesamiento del lenguaje natural o la teoría de la computación?

¿Cuáles son algunos ejemplos de buenos regresores e instrumentos para los modelos de regresión IV?

MLconf 2015 Seattle: ¿Cómo funciona la técnica de aproximación simbólica agregada (SAX)?

¿Existe alguna posibilidad de que la química del aprendizaje automático pueda correlacionarse con la nanotecnología?

¿Es el cerebro humano una gran red neuronal o está formado por muchas redes neuronales más pequeñas?

¿Cuáles son los casos de uso de aprendizaje profundo en CRM?

¿Cuál es la mejor manera de implementar mi algoritmo de reducción de dimensiones?

¿Cuáles son algunas buenas ideas de proyectos en el área de análisis / predicción del mercado de valores utilizando Bayes ingenuo?

¿Cuáles son algunos conjuntos de datos sin resolver que son los objetivos de la investigación actual de Deep Learning?

¿Hay alguien aquí que pueda darme una lib correcta para R-Tree en Java?

¿Cómo puedo usar Gensim LDA para la clasificación binaria?

¿Por qué los clasificadores Naive Bayes se consideran relativamente inmunes al sobreajuste?

¿Qué algoritmo sería bueno para asignar una probabilidad a la coincidencia de dos nombres (John Doe = Mr. Jonathan M Doe II)?