Cross-validation (o Validación Cruzada) para Evaluar Modelos de Machine Learning con Python

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 ธ.ค. 2021
  • Para citar este recurso educativo utiliza la siguiente referencia:
    Gutiérrez-García, J.O. [Código Máquina]. (2021, 13 de Diciembre). Cross-validation (o Validación Cruzada) para Evaluar Modelos de Machine Learning con Python [Video]. TH-cam. [Incluye aquí la URL del video].
    ********************************************
    Para guiar tu aprendizaje, en este vínculo ( • Curso de Inteligencia ... ) se encuentra una guía secuencial para aprender:
    1. Programación Básica con Python;
    2. Manejo de Datos;
    3. Visualización de Datos;
    4. Análisis de Datos; y
    5. Aprendizaje de Máquina y Ciencia de Datos.
    ********************************************
    Conoce cómo se deben evaluar los modelos de aprendizaje de máquina (ya sea de regresión o clasificación) para determinar apropiadamente su poder de generalización. Este video explica la técnica de validación cruzada (cross-validation): uno de los mecanismos más utilizados y robustos para evaluar modelos de aprendizaje de máquina. Además, se presenta cómo evaluarlos utilizando la librería Scikit-Learn de Python.
    Índice del Video:
    0:54 Evaluación tradicional
    5:09 Validación cruzada ¿Por qué?
    5:50 Validación cruzada ¿Cómo?
    9:41 Implementación con SkLearn
    Apoya a Código Máquina dando un Like, con un Super Gracias o visitando nuestra tienda en:
    / shop
    El código y datos del video están disponibles en GitHub github.com/CodigoMaquina/code
    ⭐ De la co-fundadora de Código Máquina, productos de cosmética natural SINHAKI:
    www.amazon.com.mx/s?srs=12094...
    #CienciaDeDatos #AprendizajeDeMaquina #DataScience #MachineLearning #ScikitLearn #AprendizajeAutomatico #python

ความคิดเห็น • 49

  • @CodigoMaquina
    @CodigoMaquina  2 ปีที่แล้ว +3

    Apoya a Código Máquina dando un Like, con un Super Gracias o visitando nuestra tienda en:
    facebook.com/C0d1g0Maqu1na/shop

  • @fpicado1
    @fpicado1 ปีที่แล้ว +9

    Este canal es oro!

  • @josemanuelgarciaabreu2973
    @josemanuelgarciaabreu2973 ปีที่แล้ว +6

    La mejor explicación del tema que he visto por internet.

    • @CodigoMaquina
      @CodigoMaquina  ปีที่แล้ว

      José Manuel muchas gracias por tus comentarios y por seguir el contenido del canal :)

  • @paulaalbornoz7
    @paulaalbornoz7 หลายเดือนก่อน

    excelente!!!, muchas gracias por su contenido, muy claro y entendible!

  • @brunocordova5808
    @brunocordova5808 2 หลายเดือนก่อน

    Mas claro que mi profesora de data science

  • @brahianserna694
    @brahianserna694 ปีที่แล้ว +1

    Que canal tan bueno, un moton de detalles que uno no sabe y que pueden hacer la diferencia las aprendo acá.

    • @CodigoMaquina
      @CodigoMaquina  ปีที่แล้ว

      Brahian muchas gracias por tus comentarios y por interactuar en el canal :)

  • @JavierCarpintero
    @JavierCarpintero ปีที่แล้ว +1

    Eres un excelente profesor. Te saludo desde Barranquilla Colombia

    • @CodigoMaquina
      @CodigoMaquina  ปีที่แล้ว

      @JavierCarpintero muchas gracias por tus palabras. Saludos desde la Ciudad de México :)

  • @JuniorLeiva
    @JuniorLeiva 2 ปีที่แล้ว +4

    Muchas gracias Octavio, todo a quedado claro !!

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว

      Muchas gracias por comentar :)

  • @brunocordova5808
    @brunocordova5808 2 หลายเดือนก่อน

    Buenisimo!

  • @luisaaron144
    @luisaaron144 2 ปีที่แล้ว +1

    Muchas gracias por el video! De verdad, muy enriquecedor! Sigue así!

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว

      ¡Muchas gracias por tus comentarios! :)

  • @EduardoMarck-jo6mt
    @EduardoMarck-jo6mt 3 หลายเดือนก่อน +2

    Thanks!

    • @CodigoMaquina
      @CodigoMaquina  3 หลายเดือนก่อน

      @EduardoMarck-jo6mt muchísimas gracias por creer en este proyecto y por apoyarnos. Como una pequeña muestra de nuestro agradecimiento, por favor échale un ojo a nuestro último video de "backpropagation" por ahí del segundo 48: th-cam.com/video/iOsR-EC9z6I/w-d-xo.html

  • @sergiohernanvazquez6469
    @sergiohernanvazquez6469 2 ปีที่แล้ว +1

    super claro, gracias Octavio!

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว

      Gracias por interactuar y por tus comentarios :)

  • @sebacele
    @sebacele 2 ปีที่แล้ว +2

    Excelente canal , sos muy buen profesor . Saludos

  • @manuelcorrea256
    @manuelcorrea256 8 หลายเดือนก่อน +1

    Muchas gracias por el material, es de calidad y claro

    • @CodigoMaquina
      @CodigoMaquina  6 หลายเดือนก่อน

      @manuelcorrea256 muchas gracias y feliz año!!!

  • @juanpablocruz6225
    @juanpablocruz6225 2 ปีที่แล้ว +1

    Gracias Octavio, excelente video.

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว

      Muchas gracias por ver el canal e interactuar con nosotros :)

  • @ivanferre5708
    @ivanferre5708 ปีที่แล้ว +1

    Excelente explicación.!! te ganaste un nuevo suscriptor

  • @joseleonardosanchezvasquez1514
    @joseleonardosanchezvasquez1514 ปีที่แล้ว +1

    Genial buen video, ere muy bueno ojala sigas subiendo mas videos

    • @CodigoMaquina
      @CodigoMaquina  ปีที่แล้ว

      Gracias por tu apoyo José. Saludos!!

  • @user-do3wk5ng2h
    @user-do3wk5ng2h 7 หลายเดือนก่อน +1

    Gracias, muy buena explicaciòn

    • @CodigoMaquina
      @CodigoMaquina  6 หลายเดือนก่อน

      @user-do3wk5ng2h es un placer. Feliz año!!!

  • @msaretto
    @msaretto 2 ปีที่แล้ว +5

    Excelente Octavio nos aterriza un poco el tema. Te puedo sugerir que incluyas entre los videos , uno de modelo de redes neuronales de sklearn. me intereza mucho Saludos

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว +1

      Muchas gracias por tus comentarios y por esa excelente sugerencia. Muy probablemente iniciando el año metamos algunos videos sobre redes neuronales :)

  • @zetsuboulynn734
    @zetsuboulynn734 2 ปีที่แล้ว +1

    ¡Excelente explicación! De las mejores que haya escuchado, tengo una pequeña duda ¿Es una buena práctica al momento de dividir los datos en train, test y validación utilizar un K-fold cross validation para que los datos estén muy bien permutados o no vale la pena?

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว +1

      Gracias por preguntar. Muchas librerías ya realizan un muestreo aleatorio para crear los folds de cross-validation. Entonces, no habría ganancia al realizar un doble muestreo aleatorio. Gracias por el ver el canal :)

  • @jesusg54g
    @jesusg54g 2 ปีที่แล้ว +1

    Muy buen video gracias por compartir la información!!! Tengo una pregunta respecto a este método, se podría dividir el dataset en train y test calcular la matriz de confusión y las métricas de score para compararlos con la validación cruzada? Lo pregunto porque podríamos tener un dataset y aplicar distintos tipos de algoritmos de clasificación y con la validación cruzada podríamos determinar cual de ellos tiene la mayor precisión y a su vez la mejor aproximación a la métricas calculadas previamente, seria de utilidad hacer esta comparación?

    • @CodigoMaquina
      @CodigoMaquina  2 ปีที่แล้ว +1

      Gracias por tus comentarios y pregunta. Al respecto, si tienes los datos suficientes, es preferible comparar los diferentes modelos utilizando validación cruzada pues es una evaluación más robusta. Si no hay datos suficientes, puedes comparar los modelos usando su rendimiento con el test set. Lo que te recomiendo es evaluar todos los modelos utilizando la misma metodología (ya sea test set o validación cruzada) para que los resultados sean comparables.

  • @emmanuelpena2653
    @emmanuelpena2653 ปีที่แล้ว +1

    Como siempre excelente video, solo una duda... a la hora de configurar croos_val_score siempre debemos agregar las variables completas(X=X, y=y) sin división? como lo realizaste en el video, o debemos aplicar Croos Validation solo con los datos de entrenamiento (X=X_train, y=y_train), muchas gracias Octavio.

    • @joseleonardosanchezvasquez1514
      @joseleonardosanchezvasquez1514 ปีที่แล้ว +1

      La Croos Validation solo se hace sobre los datos de entrenamiento

    • @CodigoMaquina
      @CodigoMaquina  ปีที่แล้ว +2

      Muchas gracias por tus comentarios y por tu pregunta. Si tienes muy pocos datos, entonces, si se utilizan todos los datos. Sin embargo, idealmente, si hay muchos datos, se utiliza un cierto porcentaje (ejemplo el 80%) de los datos para determinar los hiper-parámetros de un modelo usando cross-validation, y el resto de los datos (ejemplo 20%) se utiliza para evaluar el desempeño del modelo. Espero la respuesta ayude un poco :)

    • @D3ser4
      @D3ser4 5 หลายเดือนก่อน

      @@CodigoMaquina cuantos datos serian muchos como para que ameriten hacer un split de los datos y separar ese 20% para dejarlo para evaluar?

  • @israelmg1749
    @israelmg1749 7 หลายเดือนก่อน +1

    😀

    • @CodigoMaquina
      @CodigoMaquina  6 หลายเดือนก่อน

      @israelmg1749 lo mejor para este 2024!

  • @KevinRodriguez.96
    @KevinRodriguez.96 3 หลายเดือนก่อน

    Puedo hacer una validación cruzada teniendo los datos ya clasificados fuera de python?

  • @jorgemarroquin9413
    @jorgemarroquin9413 ปีที่แล้ว

    excelente contenido , sin embargo lo vi a una velocidad de 1.75 y aun así me parece que habla lento, podría considerar ponerle mayor velocidad antes de subirlo, super clara la explicación

    • @RaulOramas
      @RaulOramas ปีที่แล้ว +2

      A mi me parece bien la voz tal cual está. Tal vez en algunos países se habla mucho más rápido.

    • @yaredlevi
      @yaredlevi ปีที่แล้ว +1

      @@RaulOramas soy chileno y me acomoda la velocidad en la que explica AJAJAJ

    • @edwinnoebadillorivera5621
      @edwinnoebadillorivera5621 หลายเดือนก่อน

      @@yaredlevi jajaja qué buena¡