Las mejores marcas y miles de tiendas en tu teléfono
- Compra en línea y en tienda física
- Recibe notificaciones y promociones exclusivas
- Consulta y gestiona la información de tu cuenta
Hoy en día es muy común escuchar en las noticias sobre inteligencia artificial y casi siempre se hace referencia a machine learning (aprendizaje máquina), veamos a que se refieren con esto.
Primero definamos que es machine learning : Es un método estadístico para aprender patrones en base a ejemplos.
*Los profesionales en el tema hablamos en spanglish porque casi toda la literatura está en inglés.
Algoritmos que aprenden patrones en base a ejemplos con la finalidad de predecir una variable(a esta la llamamos: variable objetivo). Por ejemplo: Aprender a predecir si una persona va a pagar un crédito.
Cada renglón sería un ejemplo y cada columna una variable de la que se puede aprender su relación a Paga / No paga.
Ejemplo: Puede existir una correlación entre la gente que paga y tiene un buen salario, o que la gente muy endeudada no pague, etc., el algoritmo se encarga de ver todas estas relaciones relevantes. Al proceso en que el algoritmo encuentra patrones lo llamamos: entrenamiento.
*Hay muchos algoritmos que aprenden patrones de manera diferente, algunos son mejores para ciertas situaciones pero la idea general es la misma.
¿Cómo sucede esto?
En base a prueba y error un algoritmo va aprendiendo patrones.
Repita N veces:
Al final se aprenden un conjunto de reglas que intentan predecir la variable objetivo.
Veamos una gráfica típica:
Cada patrón que aprende el algoritmo baja el error (hay diversas formas de medir el error), en las primeras iteraciones los patrones son más generales y conforme pasan las iteraciones los patrones se van haciendo más y más particulares.
Volvamos al ejemplo de la aplicación crediticia, el objetivo de un algoritmo entrenado es que cuando llegue una nueva persona (una aplicación en la que se tiene que decidir si dar o no el crédito) el algoritmo la clasifique correctamente (paga / no paga) y para poder llegar a esto el algoritmo debe de haber aprendido de ejemplos anteriores.
Esto significa que para saber qué tan bueno es un algoritmo es necesario evaluarlo en ejemplos que NO ha visto.
Hacemos que un algoritmo aprenda los patrones de una subconjunto de nuestros ejemplos (digamos un 70%) y con los datos restantes (30%) vemos que tal le fue (medimos su error).
Un algoritmo está programado para iterar N veces, recordemos que primero un algoritmo empieza aprendiendo patrones generales pero con el paso del tiempo este empieza a aprender particularidades de ese 70% que no necesariamente están en el otro 30% (pero los patrones generales si deben de estar en el 30%).
Si un algoritmo aprende las particularidades del 70% que no están en el 30% no se está aprendiendo sino memorizando.
Si comparamos las iteraciones y el cambio en el error de los dos conjuntos una gráfica se vería típicamente así:
Recordemos nuestro objetivo: Que nos vaya bien en el 30% es decir, que el error sea el mínimo posible en Test, el desempeño en Train no es tan relevante. Observemos como el error de Train siempre baja, el algoritmo está programado para siempre disminuir el error de Train pero hay un punto en el que Test empieza a empeorar (pensemos en que nos dan un repaso de examen, si memorizamos cada detalle de este repaso puede que no nos vaya tan bien en el examen de verdad). A este fenómeno lo llamamos overfitting.
En este caso vemos un algoritmo que clasifica gatos y perros.
La línea roja sería un algoritmo con overfitting ya que memorizo mucho de estos datos, la negra sería mejor opción para predecir nuevos ejemplos.
Hoy en día es muy común escuchar en las noticias sobre inteligencia artificial y casi siempre se hace referencia a machine learning (aprendizaje máquina), veamos a que se refieren con esto.
Primero definamos que es machine learning : Es un método estadístico para aprender patrones en base a ejemplos.
*Los profesionales en el tema hablamos en spanglish porque casi toda la literatura está en inglés.
Algoritmos que aprenden patrones en base a ejemplos con la finalidad de predecir una variable(a esta la llamamos: variable objetivo). Por ejemplo: Aprender a predecir si una persona va a pagar un crédito.
Cada renglón sería un ejemplo y cada columna una variable de la que se puede aprender su relación a Paga / No paga.
Ejemplo: Puede existir una correlación entre la gente que paga y tiene un buen salario, o que la gente muy endeudada no pague, etc., el algoritmo se encarga de ver todas estas relaciones relevantes. Al proceso en que el algoritmo encuentra patrones lo llamamos: entrenamiento.
*Hay muchos algoritmos que aprenden patrones de manera diferente, algunos son mejores para ciertas situaciones pero la idea general es la misma.
¿Cómo sucede esto?
En base a prueba y error un algoritmo va aprendiendo patrones.
Repita N veces:
Al final se aprenden un conjunto de reglas que intentan predecir la variable objetivo.
Veamos una gráfica típica:
Cada patrón que aprende el algoritmo baja el error (hay diversas formas de medir el error), en las primeras iteraciones los patrones son más generales y conforme pasan las iteraciones los patrones se van haciendo más y más particulares.
Volvamos al ejemplo de la aplicación crediticia, el objetivo de un algoritmo entrenado es que cuando llegue una nueva persona (una aplicación en la que se tiene que decidir si dar o no el crédito) el algoritmo la clasifique correctamente (paga / no paga) y para poder llegar a esto el algoritmo debe de haber aprendido de ejemplos anteriores.
Esto significa que para saber qué tan bueno es un algoritmo es necesario evaluarlo en ejemplos que NO ha visto.
Hacemos que un algoritmo aprenda los patrones de una subconjunto de nuestros ejemplos (digamos un 70%) y con los datos restantes (30%) vemos que tal le fue (medimos su error).
Un algoritmo está programado para iterar N veces, recordemos que primero un algoritmo empieza aprendiendo patrones generales pero con el paso del tiempo este empieza a aprender particularidades de ese 70% que no necesariamente están en el otro 30% (pero los patrones generales si deben de estar en el 30%).
Si un algoritmo aprende las particularidades del 70% que no están en el 30% no se está aprendiendo sino memorizando.
Si comparamos las iteraciones y el cambio en el error de los dos conjuntos una gráfica se vería típicamente así:
Recordemos nuestro objetivo: Que nos vaya bien en el 30% es decir, que el error sea el mínimo posible en Test, el desempeño en Train no es tan relevante. Observemos como el error de Train siempre baja, el algoritmo está programado para siempre disminuir el error de Train pero hay un punto en el que Test empieza a empeorar (pensemos en que nos dan un repaso de examen, si memorizamos cada detalle de este repaso puede que no nos vaya tan bien en el examen de verdad). A este fenómeno lo llamamos overfitting.
En este caso vemos un algoritmo que clasifica gatos y perros.
La línea roja sería un algoritmo con overfitting ya que memorizo mucho de estos datos, la negra sería mejor opción para predecir nuevos ejemplos.
La información contenida en este artículo es de carácter informativo y no constituye asesoramiento financiero, legal o comercial. En Kueski no nos hacemos responsables por las decisiones o los resultados obtenidos al implementar las recomendaciones o utilizar los productos y servicios aquí mencionados.
Kueski SAPI. de CV, SOFOM, ENR. Consulta el aviso de privacidad, CAT promedio, comisiones y requisitos de contratación en Kueski.com. No requerimos autorización de la SHCP para operar y constituirnos, y estamos sujetos a la supervisión de la CNBV conforme al artículo 56 de la LGOAAC.