Quiero saber qué es una curva de aprendizaje en el aprendizaje automático. ¿Cuál es la forma estándar de trazarlo? Quiero decir, ¿cuál debería ser el eje X e Y de mi trama?¿Qué es una curva de aprendizaje en el aprendizaje automático?
Respuesta
creo que por lo general se refiere a una representación de la precisión de la predicción /error vs el tamaño del conjunto de entrenamiento (es decir: ¿qué mejor no llegar el modelo para predecir el blanco a medida que el aumento número de casos utilizados para entrenar)
Véase también: http://www.astroml.org/sklearn_tutorial/practical.html # learning-curves – alfa
También hay un artículo más actual: http://scikit-learn.org/stable/modules/learning_curve.html –
Algunas personas usan "curva de aprendizaje" para referirse al error de un procedimiento iterativo como una función del número de iteración, es decir, ilustra la convergencia de alguna función de utilidad. En el siguiente ejemplo, trazo el error cuadrático medio (mean-square error, MSE) del algoritmo de mínimos cuadrados medios (LMS) como una función del número de iteración. Eso ilustra qué tan rápido LMS "aprende", en este caso, la respuesta al impulso del canal.
Básicamente, una curva de aprendizaje automático permite encontrar el punto desde el cual el algoritmo comienza a aprender. Si toma una curva y luego corta una pendiente tangente para derivada en el punto en que comienza a alcanzar constante es cuando comienza a desarrollar su capacidad de aprendizaje.
Dependiendo de cómo estén mapeados sus ejes xey, uno de sus ejes comenzará a acercarse a un valor constante mientras que los valores del otro eje seguirán aumentando. Esto es cuando comienzas a ver algo de aprendizaje. La curva completa te permite medir la velocidad a la que tu algoritmo puede aprender. El punto máximo suele ser cuando la pendiente comienza a retroceder. Puede tomar una cantidad de medidas derivadas hasta el punto máximo/mínimo.
De los ejemplos anteriores se puede ver que la curva tiende gradualmente a un valor constante. Inicialmente comienza a aprovechar su aprendizaje a través de los ejemplos de entrenamiento y la pendiente se ensancha en el punto máximo/mínimo donde tiende a acercarse cada vez más hacia el estado constante. En este punto, puede recoger nuevos ejemplos de los datos de prueba y encontrar resultados nuevos y únicos a partir de los datos. Tendría tales medidas de eje x/y para epochs vs error.
Solo quiero dejar una breve nota sobre esta vieja pregunta para señalar que la curva de aprendizaje y la curva ROC no son sinónimos.
Como se indica en las otras respuestas a esta pregunta, una curva aprendizaje representa convencionalmente mejora en el rendimiento en el eje vertical cuando hay cambios en otro parámetro (en el eje horizontal), tales como el tamaño del conjunto de entrenamiento (en aprendizaje automático) o iteración/tiempo (tanto en máquina como en aprendizaje biológico). Un punto sobresaliente es que muchos parámetros del modelo están cambiando en diferentes puntos de la trama. Otras respuestas aquí han hecho un gran trabajo al ilustrar las curvas de aprendizaje.
(También hay otro significado de curva de aprendizaje en la fabricación industrial, originado en una observación en la década de 1930 de que el número de horas de trabajo necesarias para producir una unidad individual disminuye a un ritmo uniforme a medida que la cantidad de unidades fabricadas se duplica. en realidad no es relevante, pero es digno de mención para la integridad y para evitar confusiones en las búsquedas web)
por el contrario, curva de eficacia diagnóstica o curva ROC, no muestra el aprendizaje.; muestra el rendimiento.Una curva ROC es una representación gráfica del rendimiento del clasificador que muestra la relación entre aumentar las tasas positivas verdaderas (en el eje vertical) y aumentar las tasas de falsos positivos (en el eje horizontal) a medida que varía el umbral de discriminación del clasificador. Por lo tanto, solo un parámetro único (el umbral de decisión/discriminación) asociado con el modelo está cambiando en diferentes puntos de la gráfica. Esta curva ROC (from Wikipedia) muestra el rendimiento de tres clasificadores diferentes.
no hay aprendizaje está representado aquí, sino más bien el rendimiento con respecto a dos clases diferentes de éxito/error como umbral de decisión del clasificador se hace más indulgente/estricta. Al observar el área bajo la curva, podemos ver una indicación general de la capacidad del clasificador para distinguir las clases. Esta métrica de área bajo la curva es insensible a la cantidad de miembros en las dos clases, por lo que puede no reflejar el rendimiento real si la pertenencia a la clase no está equilibrada. La curva ROC tiene muchos subtítulos y los lectores interesados pueden revisar:
+1 bien explicado – Amro
Cómo se puede determinar para un determinado modelo de formación sea más puntos serán útiles? Un diagnóstico útil para esto son las curvas de aprendizaje.
• Trama de la precisión de la predicción/error contra el tamaño del conjunto de entrenamiento (es decir: ¿qué mejor no llegar el modelo para predecir el blanco a medida que aumento el número de instancias utiliza para entrenarlo)
• Curva de aprendizaje representa convencionalmente una mejora en el rendimiento en el eje vertical cuando hay cambios en otro parámetro (en el eje horizontal), como el tamaño del conjunto de entrenamiento (en aprendizaje automático) o iteración/tiempo
• Una curva de aprendizaje suele ser útil para trazar para verificar la cordura algorítmica o mejorar el rendimiento
• El aprendizaje curva de trazado puede ayudar a diagnosticar los problemas que su algoritmo estar sufriendo de
En lo personal, los siguientes dos enlaces me ayudaron a entender mejor acerca de este concepto
- 1. Aprendizaje automático básico
- 2. Tarea de aprendizaje automático: ¿qué herramienta usar?
- 3. bibliotecas de aprendizaje automático en C#
- 4. ¿Cuál es la curva de aprendizaje para Android?
- 5. ¿Cómo aplicar el algoritmo de aprendizaje automático en PHP?
- 6. aplicación de álgebra lineal en el aprendizaje automático
- 7. Agile: Historias de usuarios para el proyecto de aprendizaje automático?
- 8. . ORM .Net con la curva de aprendizaje más rápida?
- 9. ¿Existe un paquete recomendado para el aprendizaje automático en Python?
- 10. Curva de aprendizaje de Magento y los mejores consejos
- 11. aprendizaje automático en Python para jugar a las damas?
- 12. Aprendizaje F #
- 13. Aprendizaje PostgreSQL
- 14. Algoritmo de aprendizaje automático para la clasificación de datos.
- 15. bibliotecas de aprendizaje automático en s + (o R)?
- 16. ¿Cuáles son algunos buenos ejercicios de programación de aprendizaje automático?
- 17. Biblioteca/framework C++, API para modelos Mixture en aprendizaje automático
- 18. Aprendizaje NHibernate
- 19. Aprendizaje OpenGL ES 1.x
- 20. La selección de características y el aprendizaje no supervisado para la selección del algoritmo de datos multilingüe + aprendizaje automático
- 21. Aprendizaje automático a gran escala: ¿Python o Java?
- 22. ¿Cuáles son algunas aplicaciones de importancia económica del aprendizaje automático?
- 23. Uso de las bibliotecas de aprendizaje automático Apache Mahout
- 24. aprendizaje .NET
- 25. ¿Mejor paquete de aprendizaje automático para Python 3x?
- 26. Bibliotecas de aprendizaje automático C/C++ para clustering
- 27. Aprendizaje SDL en C
- 28. aprendizaje en C#
- 29. Aprendizaje OpenGL en Ubuntu
- 30. Aprendizaje a gran escala
nunca oído hablar de una curva de aprendizaje ¿Te refieres a una curva ROC? http://en.wikipedia.org/wiki/Receiver_operating_characteristic – Stompchicken
No, la curva de aprendizaje y la curva ROC no son sinónimos, como intento describir a continuación. – MattBagg
@MattBagg: tienes toda la razón, retrocedí antes de la edición. – Amro