¿Google no tiene mejores algoritmos, sino solo más datos? Peter Norvig es citado diciendo eso.

Consideremos un ejemplo simple:

Mi amigo quiere comprar un auto y viene a mí, la conversación es así:

Amigo: quiero comprar un auto.

I: ¿Qué tipo de auto quieres?

Amigo: un sedán con buen kilometraje y buen rendimiento.

I: Ok, pero aún es demasiado vago, ¿quieres que tenga más puntos de datos?

Amigo: Ok, debe tener un buen valor de reventa y una buena confiabilidad, me gustaría tener el auto por mucho tiempo

I: Ok, todavía tengo alrededor de 100 autos que se ajustan a esa factura.

Ahora consideremos el mismo escenario:

Amigo: quiero comprar un auto

I: ¿Qué tipo de auto quieres?

Amigo: Quiero un sedán, dentro de $ 20000, con una buena confiabilidad, buen rendimiento, alto valor de reventa y me gustaría tener el auto por mucho tiempo.

I: ¿Qué más?

Amigo: debería ser nuevo, tener una buena potencia, como alrededor de 200 hp, preferiría un híbrido o eléctrico y debería tener bajas tasas de interés.

I: Hmm, hay muchos autos que cumplen con los requisitos, pero ciertamente no son 200, ni siquiera 100, serían alrededor de 15-20.

Si ve la diferencia en los dos ejemplos anteriores, está claro que si tengo más datos, el mismo algoritmo en mi mente puede tomar mejores decisiones. Prácticamente no hay nada diferente en mi mente, es solo la cantidad de datos que obtengo lo que me ayuda a procesar mejor y dar mejores resultados.

Ahora, este ejemplo es bueno para los humanos, porque aprendemos y podemos calcular combinaciones de permutación inconscientemente, pero con las computadoras tenemos que hacerlo a través de algoritmos, que en términos de CS se llama “aprendizaje automático”, lo que significa un programa que mejora la producción, por entendiendo el uso pasado. El uso pasado aquí no es más que los datos que recopilan compañías como Google, Facebook y muchas otras compañías. Cuanto mejor sea el algoritmo de aprendizaje automático, más aprenderán sobre cómo mejorar sus resultados, pero eso también significa que necesitan más datos para mejorar esos algoritmos. Por lo tanto, en general, Google no solo tiene más datos, sino que también tiene un mejor algoritmo para acceder y comprender esos datos.

Pero una anécdota de esto es saber que necesita mejorar, necesita más datos y, por lo tanto, Bing, la búsqueda de Yahoo y otros no pueden competir a partir de ahora, debido al círculo de datos y algoritmo.

Esto también es cierto para Facebook y otros gigantes tecnológicos, incluidos, entre otros, Yelp, Twitter, Yahoo, Uber, Quora y muchos más.

Google tiene un mejor algoritmo ya que la mayoría de la gente “prefiere” los resultados. La razón por la que tienen una participación de mercado tan grande no se debe a que el algoritmo es mejor que Bing o Yahoo hoy en día, sino porque era mejor cuando todos estaban inundando los motores de búsqueda. Además de eso, también hicieron que la búsqueda fuera dolorosamente simple. Mientras que Yahoo solía tener una página de inicio desordenada, ¡Google solo tenía 27 caracteres en su página de inicio al mismo tiempo! La gente amaba la simplicidad y es por eso que dominan la búsqueda hoy en día.

Tomemos dos ejemplos:

Búsqueda: Bing ejecuta algoritmos funcionalmente similares a los de Google. No funciona tan bien simplemente porque los motores de búsqueda utilizan comentarios de los usuarios (es decir, datos) para mejorar sus resultados. En este caso la respuesta es “Sí”

Mapas: Apple tiene acceso esencialmente a los mismos datos de mapas que utiliza Google. Las funciones básicas del mapa, como la identificación de ubicaciones, no dependen de los comentarios de los usuarios (datos), pero el producto de Google es aún mejor. En este caso es probable porque Google lo ha estado haciendo durante más tiempo y acaba de resolver más problemas. Entonces la respuesta, en este caso, es “No”.

Cité un artículo de Michele Banko y Eric Brill, luego con Microsoft Research, que encuestó algoritmos para hacer la desambiguación del sentido de las palabras, y demostró que obtienes más mejoras al aumentar la cantidad de datos de entrenamiento, en lugar de cambiar de un algoritmo a otro. Dije que algunos problemas son así y otros no. Podría llamar a este documento un triunfo por “big data”, pero tenga en cuenta que en este dominio, el rendimiento se traduce en tan solo mil millones de palabras de datos de entrenamiento, bien dentro del rango de la computadora portátil, no del rango del centro de datos. Por lo tanto, si no tiene un centro de datos a su disposición, no se preocupe: todavía tiene mucha más potencia de cómputo y datos disponibles que casi todos los que tenía hace una generación, y hay muchos descubrimientos nuevos que puede hacer.

Entonces sí, es útil tener muchos datos buenos de alta calidad que se adapten bien a su tarea. Pero el verdadero trabajo duro es la investigación que se dedica a la arquitectura de nuevos tipos de sistemas de aprendizaje, así como la ingeniería dura para que realmente funcione bien en los productos. Ese trabajo es lo que impulsa la mayoría del éxito para el aprendizaje automático. Como Pat Winston dijo una vez, “la IA es como las pasas en el pan de pasas”, lo que significa que la IA podría ser lo que hace que el producto sea emocionante y diferente, pero la mayoría del pan de pasas es pan, y la mayor parte del software de IA es una buena ingeniería de software tradicional. y desarrollo de productos.

Si estoy en lo correcto, lo que Peter dijo fue que Google tiene algoritmos que mejoran con los datos [1]. Eso no significa que los algoritmos no sean buenos, solo que son mejores con más datos

[1] Un vistazo a Google, NASA y Peter Norvig + El restaurante en el fin del universo

El primer contraejemplo que viene a la mente es el algoritmo en el que se fundó Google: PageRank. Tenían los mismos datos que cualquier otro motor de búsqueda, pero el algoritmo es lo que hizo que Google ganara a la competencia.

Creo que si bien Google podría tener mejores algoritmos, el verdadero poder reside en los datos que están disponibles para ellos. Incluso los mejores algoritmos serían inútiles cuando no hay datos para procesar.