Elegiría un problema de clasificación binaria universalmente accesible: aprender qué alimentos son deliciosos y cuáles son asquerosos.
Queremos enseñarle a una computadora a reconocer qué alimentos son deliciosos y qué alimentos son asquerosos. Pero la computadora no tiene boca ni forma de probar la comida. En cambio, debemos enseñarlo mostrándole ejemplos de alimentos (“datos de entrenamiento etiquetados”). algunos de los cuales son alimentos deliciosos (“ejemplos positivos”) y algunos de los cuales son asquerosos (“ejemplos negativos”). Para cada ejemplo etiquetado, también proporcionamos a la computadora formas de describir los alimentos (“características”).
- ¿Cuál es la plataforma de IA más fácil de aprender hoy?
- ¿Debo hacer un doctorado en aprendizaje automático en una escuela desconocida donde el laboratorio es excelente?
- ¿Cuáles son las principales startups de Machine Intelligence (AI, ML, Deep Learning) en Israel?
- Cómo crear una IA como EDI de Mass Effect con el cuerpo de 3
- ¿Quora es un formato para el desarrollo y prueba de inteligencia artificial?
Hagamos esto más concreto. Tenga en cuenta que es posible que desee elegir ejemplos más adaptados a los gustos de su hijo.
Algunos ejemplos positivos etiquetados como delicioso: helado de chocolate, pizza, fresas.
Algunos ejemplos negativos etiquetados como asqueroso: anchoas, brócoli, coles de Bruselas.
En un sistema de aprendizaje automático real, querría más datos de capacitación, pero tres ejemplos positivos y tres ejemplos negativos deberían ser suficientes para comunicar el concepto.
Ahora necesitamos algunas características. Aquí hay tres: dulce, salado, vegetal. Tenga en cuenta que estas son características binarias: a cada alimento se le asigna un valor de “sí” o “no” para cada característica.
Alimentos Dulce Salado Crujiente De Verduras Etiqueta
helado SI NO NO NO YUMMY
pizza NO SI SI NO YUMMY
fresas SI NO NO NO YUMMY
anchoas NO SI NO NO YUCKY
brócoli NO NO NO SI YUCKY
coles de Bruselas NO NO NO SI YUCKY
Ahora que tenemos nuestros datos de capacitación, el trabajo de la computadora es aprender una fórmula (“modelo”) de ella. De esa manera, cuando la computadora encuentra un nuevo alimento, puede usar el modelo para decidir si el alimento es delicioso o desagradable.
Un tipo de modelo es un sistema de puntos (“modelo lineal”). Para cada característica, se le asigna un cierto número de puntos (“peso”) si es un SÍ pero no puntos si es un NO. El modelo luego suma los puntos para que un alimento obtenga una puntuación. El modelo tiene un límite: si el puntaje está por encima del límite, el modelo decide que la comida está DELICIOSA; Si el puntaje está por debajo del límite, el modelo decide que la comida es YUCKY.
Por ejemplo, el modelo podría asignar un peso de 3 para Sweet, 1 para Salty, 1 para Crunchy y -1 para Vegetable. Eso daría como resultado los siguientes puntajes:
helado: 3
pizza: 2
fresas: 3
anchoas: 1
brócoli: -1
coles de Bruselas: -1
Nuestros pesos facilitan la elección de un punto de corte: todos los ejemplos positivos tienen una puntuación de 2 o superior, mientras que todos los ejemplos negativos tienen puntuaciones de 1 o inferior.
No siempre podremos encontrar pesos y un límite que clasifique todos los ejemplos correctamente. E incluso si lo hacemos, podríamos terminar con un modelo que solo funciona para nuestros datos de entrenamiento pero que no funciona tan bien cuando le damos nuevos ejemplos (“sobreajuste”). Lo que queremos es un modelo que sea correcto la mayor parte del tiempo en los datos de capacitación pero que funcione bien en nuevos ejemplos (“generaliza”). Por lo general, los modelos simples generalizan mejor que los modelos complicados (“Navaja de Occam”).
No tenemos que usar un modelo lineal. Otro enfoque es construir un “árbol de decisión”. Es como el juego de 20 preguntas, donde solo puedes hacer preguntas de sí o no.
No es difícil llegar a un árbol de decisiones que siempre obtenga la respuesta correcta para los datos de capacitación. Aquí hay uno que funciona para los datos de entrenamiento en nuestro ejemplo.
¿Es un vegetal?
- Si es así, entonces es YUCKY.
- Si NO, ¿es dulce?
- Si es así, entonces es delicioso.
- Si NO, ¿es crujiente?
- Si es así, entonces es delicioso.
- Si NO, entonces es YUCKY.
Al igual que con los modelos lineales, tenemos que preocuparnos por el sobreajuste. No podemos dejar que el árbol de decisión se profundice demasiado. Eso significa que probablemente terminaremos con un modelo que comete algunos errores en nuestros datos de entrenamiento, pero se generalizará mejor a los nuevos datos.
Me he saltado los detalles de cómo se nos ocurren los pesos y el corte en el modelo lineal, o cómo se nos ocurren las preguntas (“divisiones”) en el árbol de decisión. Probablemente sea más matemática de la que el niño está listo, y demasiada matemática para algunos adultos también. Y ni siquiera hemos tocado modelos más sofisticados, ingeniería de características u otros desafíos de aprendizaje automático.
Pero es de esperar que esto sea suficiente para darle a un niño una idea de lo que significa “enseñar” una computadora usando el aprendizaje automático.