No. Hay momentos en que más datos ayudan, hay momentos en que no ayuda.
Probablemente una de las citas más famosas que defienden el poder de los datos es la del Director de Investigación de Google, Peter Norvig, afirmando que “No tenemos mejores algoritmos. Solo tenemos más datos”. Esta cita generalmente está vinculada al artículo sobre “La efectividad irracional de los datos”, en coautoría del propio Norvig (probablemente debería poder encontrar el pdf en la web, aunque el original está detrás del muro de pago IEEE). El último clavo en el ataúd de mejores modelos es cuando Norvig se cita erróneamente diciendo que “Todos los modelos están equivocados, y de todos modos no los necesita” (lea aquí para ver las aclaraciones del autor sobre cómo fue citado incorrectamente).
- ¿Cuál es el significado / interpretación de la varianza de validación cruzada?
- ¿Qué IIT en India tiene el mejor programa de CS para el aprendizaje automático?
- Cómo construir una aplicación de Android orientada al aprendizaje automático
- ¿Es posible usar bibliotecas de aprendizaje automático OpenCV para aplicaciones que no son de visión por computadora?
- ¿Se pueden programar las computadoras para comprender el valor estético de algo?
El efecto que Norvig et. Al que se referían en su artículo, ya habían sido capturados años antes en el famoso artículo de los investigadores de Microsoft Banko y Brill [2001] “Escalando a corporaciones muy muy grandes para la desambiguación del lenguaje natural”. En ese documento, los autores incluyeron la siguiente trama.
Esa figura muestra que, para el problema dado, algoritmos muy diferentes realizan prácticamente lo mismo. sin embargo, agregar más ejemplos (palabras) al conjunto de entrenamiento aumenta monotónicamente la precisión del modelo.
Entonces, caso cerrado, podrías pensar. Bueno … no tan rápido. La realidad es que tanto las afirmaciones de Norvig como el artículo de Banko y Brill tienen razón … en un contexto. Pero, de vez en cuando, se citan erróneamente en contextos que son completamente diferentes a los originales. Pero, para entender por qué, necesitamos ser un poco técnicos. (No planeo dar un tutorial completo de aprendizaje automático en esta publicación. Si no comprende lo que explico a continuación, lea mi respuesta a ¿Cómo aprendo aprendizaje automático?)
¿Varianza o sesgo?
La idea básica es que hay dos razones posibles (y casi opuestas) por las que un modelo podría no funcionar bien.
En el primer caso, podríamos tener un modelo que es demasiado complicado para la cantidad de datos que tenemos. Esta situación, conocida como alta varianza , conduce al sobreajuste del modelo. Sabemos que nos enfrentamos a un problema de alta varianza cuando el error de entrenamiento es mucho más bajo que el error de prueba. Los problemas de alta varianza pueden abordarse reduciendo el número de características y … sí, aumentando el número de puntos de datos. Entonces, ¿con qué tipo de modelos estaban tratando Banko & Brill y Norvig? Sí, lo entendiste bien: alta variación. En ambos casos, los autores estaban trabajando en modelos de lenguaje en los que aproximadamente cada palabra del vocabulario hace una característica. Estos son modelos con muchas características en comparación con los ejemplos de capacitación. Por lo tanto, es probable que se sobreajusten. Y sí, en este caso será útil agregar más ejemplos.
Pero, en el caso opuesto, podríamos tener un modelo que sea demasiado simple para explicar los datos que tenemos. En ese caso, conocido como alto sesgo , agregar más datos no ayudará. Vea a continuación una trama de un sistema de producción real en Netflix y su rendimiento a medida que agregamos más ejemplos de capacitación.
Entonces, no, más datos no siempre ayudan . Como acabamos de ver, puede haber muchos casos en los que agregar más ejemplos a nuestro conjunto de entrenamiento no mejorará el rendimiento del modelo.
Más funciones al rescate
Si está conmigo hasta ahora, y ha hecho su tarea para comprender los problemas de alta varianza y sesgo, podría estar pensando que deliberadamente he dejado algo fuera de la discusión. Sí, los modelos de alto sesgo no se beneficiarán de más ejemplos de capacitación, pero podrían beneficiarse de más características. Entonces, al final, se trata de agregar “más” datos, ¿verdad? Bueno, de nuevo, depende.
Tomemos el Premio Netflix, por ejemplo. Al principio del juego, hubo una publicación en el blog del emprendedor en serie y el profesor de Stanford, Anand Rajaraman, comentando sobre el uso de funciones adicionales para resolver el problema. La publicación explica cómo un equipo de estudiantes obtuvo una mejora en la precisión de la predicción al agregar características de contenido de IMDB.
En retrospectiva, es fácil criticar la publicación por hacer una generalización general desde un solo punto de datos. Aún más, la publicación de seguimiento hace referencia a SVD como uno de los algoritmos “complejos” que no vale la pena probar porque limita la capacidad de escalar a un mayor número de características. Claramente, los estudiantes de Anand no ganaron el Premio Netflix, y probablemente ahora se den cuenta de que SVD tuvo un papel importante en la entrada ganadora.
De hecho, muchos equipos demostraron más tarde que agregar características de contenido de IMDB o similares a un algoritmo optimizado tenía poca o ninguna mejora. Algunos de los miembros del equipo Gravity, uno de los principales contendientes para el Premio, publicaron un documento detallado en el que mostraban cómo esas características basadas en contenido no agregarían ninguna mejora al enfoque de factorización de matriz de filtrado colaborativo altamente optimizado. El documento se tituló “Recomiendo nuevas películas: incluso algunas clasificaciones son más valiosas que los metadatos”.
Para ser justos, el título del artículo también es una generalización excesiva. Las características basadas en contenido (o diferentes características en general) podrían mejorar la precisión en muchos casos. Pero, vuelvo a entender mi punto: más datos no siempre ayudan .
¡Mejores datos! = Más datos (se agregó esta sección en respuesta a un comentario)
Es importante señalar que, en mi opinión, mejores datos siempre son mejores. No hay discusión en contra de eso. Por lo tanto, cualquier esfuerzo que pueda dirigir para “mejorar” sus datos siempre está bien invertido. El problema es que mejores datos no significan más datos. De hecho, ¡a veces puede significar menos !
Piense en la limpieza de datos o la eliminación de valores atípicos como una ilustración trivial de mi punto. Pero, hay muchos otros ejemplos que son más sutiles. Por ejemplo, he visto personas que invierten mucho esfuerzo en implementar la factorización matricial distribuida cuando la verdad es que probablemente podrían haber obtenido muestras de sus datos y haber obtenido resultados muy similares. De hecho, realizar alguna forma de muestreo inteligente en su población de la manera correcta (p. Ej., Utilizando muestreo estratificado) puede obtener mejores resultados que si utilizara todo el conjunto de datos sin filtrar.
¿El fin del método científico?
Por supuesto, cada vez que hay un acalorado debate sobre un posible cambio de paradigma, hay personas como Malcolm Gladwell o Chris Anderson que se ganan la vida calentando aún más (no me malinterpreten, soy fanático de ambos, y he leído la mayoría de sus libros). En este caso, Anderson recogió algunos de los comentarios de Norvig y los citó erróneamente en un artículo titulado: “El fin de la teoría: el diluvio de datos hace obsoleto el método científico”.
El artículo explica varios ejemplos de cómo la abundancia de datos ayuda a las personas y a las empresas a tomar decisiones sin siquiera tener que entender el significado de los datos en sí. Como Norvig mismo señala en su refutación, Anderson tiene algunos puntos correctos, pero va más allá para tratar de hacerlos. Y el resultado es un conjunto de declaraciones falsas, comenzando por el título: el diluvio de datos no hace que el método científico quede obsoleto. Yo diría que es más bien al revés.
Datos sin un enfoque sólido = ruido
Entonces, ¿estoy tratando de señalar que la revolución de Big Data es solo una exageración? De ninguna manera. Tener más datos, tanto en términos de más ejemplos como de más características, es una bendición. La disponibilidad de datos permite más y mejores conocimientos y aplicaciones. De hecho, más datos permiten mejores enfoques. Más que eso, requiere mejores enfoques.
En resumen, debemos descartar las voces simplistas que proclaman la inutilidad de la teoría o los modelos, o el triunfo de los datos sobre estos. Tanto como se necesitan datos, también se necesitan buenos modelos y teorías que los expliquen. Pero, en general, lo que necesitamos son buenos enfoques que nos ayuden a comprender cómo interpretar los datos, los modelos y las limitaciones de ambos para producir el mejor resultado posible.
En otras palabras, los datos son importantes. Pero, los datos sin un enfoque de sonido se convierten en ruido.
( Nota : esta respuesta se basa en una publicación que publiqué anteriormente en mi blog: ¿más datos o mejores modelos?)
Actualización 01/2017
Recientemente escribí otra respuesta muy relacionada: la respuesta de Xavier Amatriain a In AI, ¿son los datos más importantes que los algoritmos? Ese aborda la diferencia entre AI y ML, pero también representa una actualización de este, ya que estoy hablando de los recientes avances de Deep Learning. Pensé que tendría sentido copiar aquí esa sección en particular:
En los enfoques modernos de Deep Learning, ¿los datos son más importantes que los algoritmos?
Bueno, de nuevo, sí y no. Es cierto que estos enfoques son muy “hambrientos de datos”. Sin entrar en muchos detalles, los algoritmos de aprendizaje profundo tienen muchos parámetros que deben ajustarse y, por lo tanto, necesitan una gran cantidad de datos para obtener modelos algo generalizables. Entonces, en ese sentido, tener una gran cantidad de datos es clave para obtener buenos conjuntos de capacitación para esos enfoques.
De hecho, algunos han explicado que existe una relación directa entre la aparición de grandes conjuntos de datos públicos como Imagenet y los avances de investigaciones recientes. Sin embargo, tenga en cuenta que esto resalta que, al menos en algunos dominios, la existencia de conjuntos de datos públicos hace que los datos sean menos una ventaja competitiva.
Fei-fei Li , directora del laboratorio de IA de Stanford
Además, lo interesante de algunos de esos algoritmos y enfoques es que a veces pueden ser “pre-entrenados” por el propietario del conjunto de datos y luego aplicados por muchos usuarios. En estos casos, los datos tienden a ser menos necesarios. Una manera fácil de entender esto es lo siguiente: si tiene que entrenar un modelo para traducir del inglés al español, todo lo que necesita hacer es reunir un gran conjunto de datos y entrenar el modelo una vez. El modelo en sí lleva toda la información, por lo que cualquiera que pueda obtenerla ya no necesita los datos originales. Por ejemplo, el famoso modelo Googlenet de 22 capas está disponible para descargar en diferentes modelos (por ejemplo, el modelo Keras).
Entonces, una vez más, incluso para estas aplicaciones ávidas de datos, la respuesta no siempre es clara: es necesario tener grandes cantidades de datos para aprovechar los últimos avances. Dicho esto, si está tratando de impulsar el estado del arte y encontrar aplicaciones muy concretas, sí, necesitará tener datos internos que pueda aprovechar para entrenar su nuevo enfoque de aprendizaje profundo.