Aprender los conceptos clave

1

Todo lo que aprenderás sobre MA con Scikit-Learn

2

¿Cómo aprenden las máquinas?

3

Problemas que podemos resolver con Scikit-learn

4

Las matemáticas que vamos a necesitar

Iniciar un proyecto con sklearn

5

Configuración de nuestro entorno Python

6

Instalación de librerías en Python

7

Datasets que usaremos en el curso

Optimización de features

8

¿Cómo afectan nuestros features a los modelos de Machine Learning?

9

Introducción al PCA

10

Preparación de datos para PCA e IPCA

11

Implementación del algoritmo PCA e IPCA

12

Kernels y KPCA

13

¿Qué es la regularización y cómo aplicarla?

14

Implementación de Lasso y Ridge

15

Explicación resultado de la implementación

16

ElasticNet: Una técnica intermedia

Regresiones robustas

17

El problema de los valores atípicos

18

Regresiones Robustas en Scikit-learn

19

Preparación de datos para la regresión robusta

20

Implementación regresión robusta

Métodos de ensamble aplicados a clasificación

21

¿Qué son los métodos de ensamble?

22

Preparación de datos para implementar métodos de ensamble

23

Implementación de Bagging

24

Implementación de Boosting

Clustering

25

Estrategias de Clustering

26

Implementación de Batch K-Means

27

Implementación de Mean-Shift

Optimización paramétrica

28

Validación de nuestro modelo usando Cross Validation

29

Implementación de K-Folds Cross Validation

30

Optimización paramétrica

31

Implementación de Randomized

32

Bonus: Auto Machine Learning

Salida a producción

33

Revisión de nuestra arquitectura de código

34

Importar y exportar modelos con Sklearn

35

Creación de una API con Flask para el modelo

36

Cierre del curso

37

Material adicional para consultar

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

¿Cómo afectan nuestros features a los modelos de Machine Learning?

8/37
Recursos

Aportes 21

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

¿Cómo afectan nuestros features a los modelos de Machine Learning?

  • ¿Qué son los features? Son los atributos de nuestro modelo que usamos para realizar una interferencia o predicción. Son las variables de entrada.

Más features simpre es mejor, ¿verdad?
La respuesta corta es: NO
En realidad si tenemos variables que son irrelevantes pasarán estas cosas:

  • Se le abrirá el paso al ruido.
  • Aumentará el costo computacional.
  • Si introducimos demasiados features y estos tienen valores faltantes, se harán sesgos muy significativos y vamos a perder esa capacidad de predicción.
    Nota: Hacer una buena selección de nuestro features, hará que nuestros algoritmos corran de una manera mas eficiente._

Una de las formas de saber que nuestros features han sido bien seleccionados es con el sesgo y la varianza.

  • Una mala selección de nuestro features nos puede llevar a alguno de esos dos escenarios indeseados.

Algo que debemos que recordar es que nuestro modelo de ML puede caer en uno de 2 escenarios que debemos evitar:

  • Uno es el Underfitting: Significa que nuestro modelo es demasiado simple, en donde nuestro modelo no está captando los features y nuestra variable de salida, por lo cual debemos de investigar variables con mas significado o combinaciones o transformaciones para poder llegar a nuestra variable de salida.
  • Por otro lado está el Overfitting: Significa que nuestro modelo es demasiado complejo y nuestro algoritmo va a intentar ajustarse a los datos que tenemos, pero no se va a comportar bien con los datos del mundo real. Si tenemos overfiting lo mejor es intentar seleccionar los features de una manera mas critica descartando aquellos que no aporten información o combinando algunos quedándonos con la información que verdaderamente importa.

¿Qué podemos hacer para solucionar estos problemas?

  • Aplicar técnicas reducción de la dimensionalidad. Utilizaremos el algoritmo de PCA.
  • Aplicar la técnica de la regulación, que consiste en penalizar aquellos features que no le estén aportando o que le estén restando información a nuestro modelo.
  • Balanceo: Se utilizará Oversampling y Undersampling en problemas de rendimiento donde tengamos un conjunto de datos que está desbalanceado, por ejemplo en un problema de clasificación donde tenemos muchos ejemplos de una categoría y muy pocos de otra.

![](

🔹 Sesgo: en el ejemplo de la clase, cuantifica que tan lejos esta el dardo del centro de nuestra diana. En ML podríamos traducirlo como que tan acertados son nuestras predicciones y que tanto se parecen a los resultados del mundo real.

🔹 Varianza: cuantifica que tanto se parecen las diferentes predicciones entre sí y qué tan distantes están unas de otras.

🔹 Modelo ideal: varianza y sesgo bajos.

📌 Recordatorio:

  • La varianza tiene unidades al cuadrado, por lo que usualmente se estima la dispersión en términos de desviaciones (que es la raíz cuadrada de la varianza) y sus unidades corresponden a las mismas que la variable de estudio.

Features= variables

Les comparto algunas extecniones para que se ve mas estetico su VS Code y por ende su codigo:

  • Tema Dobri Next
  • Material Icon
  • Peacock
  • Prettier
  • Python
  • Code Runner.

Y si quieren una explicación mas detallada de cómo instalarlas y los detalles de cada una de ella, aquí les dejo un video:

Visual Studio Code. Mi Configuración de extensiones 2020

Es la configuración de Fazt, solo que él se dedica a desarrollo, la mayoría que él muestra en el video, no las vamos a utilizar para el ML o Ciencia de datos, solo le deje las que creo yo, que son las que nos sirven, tanto de manera funcional como estética.

Mayor explicación BIAS y VARIANCE: https://www.youtube.com/watch?v=SjQyLhQIXSM

Escenarios en los que puede caer el modelo de Machine-Learning

Esta analogía de los dardos es similar a una definición de precisión, exactitud y veracidad.

Conceptos importantes de la clase:

Sesgo: Es que tan acertados son nuestras predicciones y que tanto se parece al mundo real, a lo que estamos esperando.

Varianza: Es que tanto se parecen las predicciones entre sí. Y que tanto se parecen las unas de las otras.

En el caso ideal queremos una varianza baja y un sesgo bajo.

Underfitting: Es un modelo suficientemente simple que puede hacer una generalización, el modelo no capta la relación entre los features y mis modelos de salida.

Overfitting: Es un modelo demasiado complejo. El algoritmo intenta ajustarse a los datos que se tienen pero no se comporta tan bien en el mundo real.

Entre más features, más posible noise.

Me interesa mucho Balanceo de datos, busque bastante info sobre SMOTE el tema es que solo funciona para variables numericas, que puedo hacer cuando son variables categoricas y las paso a variables dummies, pero esto funciona de igual forma?

gracias!
Toda info es bienvenida. Muchas gracias!

Lo explico con una metáfora de Caperucita roja: * **Underfitting**: Caperucita tiene una idea muy limitada de cómo es el lobo, solo piensa que los lobos son grises. Como su criterio es tan simple, ignora muchos detalles y a veces no puede reconocer al lobo cuando lo tiene enfrente. Se "subajusta" al problema, fallando en detectar peligros potenciales. * **Overfitting**: Caperucita se vuelve excesivamente cautelosa y empieza a notar todos los pequeños detalles, incluso los irrelevantes (como el color exacto del pelaje o la forma de las garras). Termina viendo lobos en cada rincón del bosque, lo que la confunde y la hace sobreajustarse, viendo amenazas donde no las hay. * **Modelo Balanceado**: Caperucita ha aprendido de manera equilibrada. Sabe lo suficiente sobre las características clave del lobo (grande, colmillos, orejas) para identificarlo, pero no se deja llevar por detalles irrelevantes o ruidos. Este es el estado ideal, donde puede reconocer peligros reales sin confundirse.
En pocas palabras: * **Bajo sesgo y baja varianza**: El modelo está bien ajustado, generaliza bien, y captura los patrones reales sin sobreajustarse. * **Alto sesgo y baja varianza**: Ocurre el **underfitting**; el modelo es demasiado simple y no captura los patrones de los datos. * **Bajo sesgo y alta varianza**: Ocurre el **overfitting**; el modelo es demasiado complejo y se ajusta a ruidos o peculiaridades de los datos de entrenamiento. * **Alto sesgo y alta varianza**: El peor escenario, donde el modelo es simple pero también inestable.
El sesgo y la varianza son dos conceptos clave en el aprendizaje automático que se refieren a diferentes tipos de errores que un modelo puede cometer al hacer predicciones. 1. **Sesgo (Bias)**: * El sesgo se refiere a la diferencia entre las predicciones promedio de nuestro modelo y los valores reales que intentamos predecir. * Un modelo con alto sesgo tiende a simplificar demasiado las relaciones entre las variables y puede perderse información importante. * Ejemplo: Un modelo lineal aplicado a datos que siguen un patrón no lineal tendría un alto sesgo, ya que no puede capturar la complejidad del problema. 2. **Varianza (Variance)**: * La varianza se refiere a la variabilidad de las predicciones del modelo para un punto de datos dado. * Un modelo con alta varianza es muy sensible a pequeñas fluctuaciones en los datos de entrenamiento y puede ajustarse demasiado a esos datos. * Ejemplo: Un árbol de decisión profundo puede tener alta varianza, ya que puede ajustarse demasiado a los datos de entrenamiento, capturando incluso el ruido en los datos. **Trade-off entre sesgo y varianza**: * Al entrenar un modelo, queremos encontrar un equilibrio entre el sesgo y la varianza. * Un modelo con bajo sesgo y baja varianza generalmente tiene un mejor rendimiento en datos nuevos (no vistos durante el entrenamiento). * El objetivo es minimizar tanto el sesgo como la varianza, lo que se conoce como el error de generalización. En resumen, el sesgo se relaciona con la capacidad del modelo para capturar la relación subyacente entre las variables, mientras que la varianza se relaciona con la sensibilidad del modelo a fluctuaciones en los datos de entrenamiento. Es importante encontrar un equilibrio entre estos dos para obtener un modelo que generalice bien a datos nuevos.

Los “features” (características o atributos) son las variables que se utilizan como entrada para los modelos de Machine Learning con el fin de hacer predicciones o clasificaciones. La selección y calidad de los features pueden tener un impacto significativo en el rendimiento y la capacidad de generalización de un modelo. Aquí te explicaré cómo los features afectan los modelos de Machine Learning y te daré ejemplos reales.

Relevancia y Información:

  • Los features deben ser relevantes para el problema que estás intentando resolver. Si incluyes características que no están relacionadas con el objetivo, podrían introducir ruido en el modelo y afectar negativamente su rendimiento.

En los modelos ** Machine Learning** debemos evitar:


Sesgo (Bias)

Asociado a la falta de exactitud o en otras palabras el modelo tiene subajuste, el modelo es muy sencillo.


Varianza (Variance)

Asociado a la falta de precisión o en otras palabras el modelo tiene sobreajuste, el modelo memoriza y no generaliza. El modelo es muy complejo.

Para más información pueden consultar este video donde se explican claramente estos conceptos: https://www.youtube.com/watch?v=EuBBz3bI-aA

como bajos los archivos de datasets en la plataforma?

Podrían subir la presentación?

Cuando tenemos un bias alto lo que se hace es añadir mas features, aumentar el numero de datos no ayudara mucho, por el contrario cuando tenemos un variance alto lo que se hace es aumentar el numero de datos para que nuestro modelo generalice mejor.

Alta Varianza - Overfitting :
conseguir mas data
reducir dimensionalidad o features
aumentar coeficiente de regularizacion (parametros)

Bias bajo - Underfitting:
Agregar dimensiones o features
Elegir modelos mas complejos