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 se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

12 Días
13 Hrs
22 Min
8 Seg

¿Cómo aprenden las máquinas?

2/37
Recursos
Transcripción

Aportes 15

Preguntas 5

Ordenar por:

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

disculpe podrían darme un ejemplo en la vida real de cuando utilizar estos

  • Algoritmos evolutivos

  • Lógica difusa

  • Agentes

  • Sistemas expertos

Usar:

  • Aprendizaje supervisado ➜ si de los datos se puede extraer con anticipación información precisa del resultado que esperamos.
  • Aprendizaje por refuerzo ➜ Si de los datos no se puede sacar exactamente la información que queremos predecir, pero si podemos dejar que el modelo tome decisiones y evalue si estas decisiones son buenas o malas.
  • Aprendizaje no supervisado ➜ cuando no se tiene ninguna información adicional sobre lo que esperamos, sino que los datos por sí solos nos van a revelar información relevante sobre su propia naturaleza y estructura.

Me he encontrado con frecuencias en textos donde distinguen también el semi-supervisado.
De un gran conjunto de datos se se puede obtener un pequeño conjunto datos etiquetado, pero que es parte de un subconjunto muy grande que no esta etiquetado. Por ejemplo Clasificación de contenido Web.

Aclaración! El condicionamiento al cual hace referencia el profesor, en realidad, se llama “Condicionamiento Operante o Instrumental” donde se refuerza o se castiga después que se da una conducta.
Mientras que, el “Condicionamiento Clásico” es la asociación de una conducta a un estimulo neutro que se presenta antes de dicha conducta.

  • Los datos son todo: si tenemos correctamente analizados podemos llegar a modelos más efectivos.
  • Aprendizaje supervisado: por observación
  • Aprendizaje no supervisado: Descubrimiento. Intentamos descubrir patrones o relaciones.
  • Aprendizaje por refuerzo: Prueba y error.
  • Opciones a ML: Algoritmos evolutivos(optimización), Lógica difusa(variables continuas), Agentes, Sistemas expertos(Sistema de reglas para responder preguntas concretas )
***<u>Tipos de algoritmos:</u>*** --------------------------------- **1. Algoritmos evolutivos:** Los algoritmos evolutivos se basan en la evolución natural para encontrar soluciones a problemas complejos. Se inspiran en procesos como la selección natural, la recombinación genética y la mutación para generar nuevas soluciones y mejorarlas gradualmente. **Características:** * **Población de soluciones:** Trabajan con una población de soluciones candidatas, no con una única solución. * **Iteración:** Se basan en un proceso iterativo de mejora. * **Evaluación:** Las soluciones se evalúan en función de su capacidad para resolver el problema. * **Selección:** Las mejores soluciones se seleccionan para reproducirse y generar nuevas soluciones. * **Recombinación:** Se combinan características de diferentes soluciones para crear nuevas. * **Mutación:** Se introducen cambios aleatorios en las soluciones para explorar nuevas posibilidades. **Aplicaciones:** * Optimización de problemas complejos (ingeniería, finanzas) * Aprendizaje automático * Diseño de software * Robótica **2. Lógica difusa:** La lógica difusa es un enfoque para el manejo de la incertidumbre y la imprecisión. Permite representar el conocimiento de forma más flexible que la lógica booleana tradicional, utilizando valores intermedios entre verdadero y falso. **Características:** * **Variables lingüísticas:** Se utilizan variables que pueden tomar valores lingüísticos, como "bajo", "medio" o "alto". * **Funciones de pertenencia:** Se definen funciones que asocian cada valor de una variable lingüística con un grado de verdad. * **Reglas difusas:** Se establecen reglas que relacionan las variables lingüísticas entre sí. * **Inferencia difusa:** Se utiliza la información de las funciones de pertenencia y las reglas difusas para obtener un resultado. **Aplicaciones:** * Control de sistemas * Toma de decisiones * Diagnóstico de averías * Procesamiento del lenguaje natural **3. Agentes:** Los agentes son entidades autónomas que pueden interactuar con su entorno para alcanzar objetivos. Son capaces de percibir el entorno, tomar decisiones y actuar en función de sus objetivos. **Características:** * **Autonomía:** Los agentes pueden actuar por sí mismos sin necesidad de intervención humana. * **Reactividad:** Los agentes pueden percibir cambios en su entorno y reaccionar a ellos. * **Proactividad:** Los agentes pueden tomar la iniciativa y actuar para alcanzar sus objetivos. * **Socialidad:** Los agentes pueden interactuar con otros agentes y con el entorno. **Aplicaciones:** * Simulación de sistemas * Robótica * Sistemas multiagentes * Juegos **4. Sistemas expertos:** Los sistemas expertos son programas informáticos que capturan el conocimiento de expertos en un dominio específico para resolver problemas complejos. **Características:** * **Base de conocimiento:** Contiene información sobre el dominio del problema. * **Motor de inferencia:** Utiliza la base de conocimiento para resolver problemas. * **Interfaz de usuario:** Permite a los usuarios interactuar con el sistema. **Aplicaciones:** * Diagnóstico médico * Asesoramiento financiero * Ingeniería * Análisis de datos

1. Algoritmos Evolutivos: Los algoritmos evolutivos son una técnica inspirada en la evolución biológica. Simulan procesos de selección natural y evolución para resolver problemas de optimización y búsqueda en espacios de soluciones muy amplios. Estos algoritmos crean poblaciones de soluciones candidatas, las combinan y modifican a lo largo de generaciones para buscar la mejor solución posible. Ejemplos incluyen algoritmos genéticos, programación genética y estrategias evolutivas. 2. Lógica Difusa: La lógica difusa

Cuales son los algoritmos de aprendizaje por refuerzo?
Solo se me ocurre Q learning

Esta muy emocionante el curso, el profesor con muy buena energía!

¿Cómo aprenden las maquinas?

Las maquinas aprenden de datos. Desde el punto de vista de los datos, podemos aplicar tres técnicas según la naturaleza y disponibilidad de los mismos:

    1. Aprendizaje supervisado: Algoritmo por observación.
    1. Aprendizaje no supervisado: Algoritmo por prueba y error.
    1. Aprendizaje por refuerzo: Algoritmo por descubrimiento.
Aquí unas pequeñas comparaciones entre el aprendizaje de las máquinas y Caperucita roja: * En el **aprendizaje supervisado**, alguien le da ejemplos etiquetados a Caperucita, como la madre enseñándole cómo es el lobo. * En el **aprendizaje no supervisado**, Caperucita agrupa animales por su cuenta sin saber de antemano cuáles son peligrosos. * En el **aprendizaje por refuerzo**, Caperucita aprende a partir de las consecuencias de sus acciones, ajustando su comportamiento con base en recompensas y castigos (como escapar del lobo o sufrir un ataque).
😖😖

Este curso es de los mejores que he tomado en Platzi, estoy tomando varias de sus clases nuevamente para reforzar 📝

El proceso de aprendizaje automático generalmente se puede dividir en tres etapas principales:

Adquisición de datos:

  • Para que una máquina aprenda, primero debe estar expuesta a datos relevantes para la tarea que se quiere realizar.
    Estos datos pueden ser ejemplos de entrada y salida o características que describen las relaciones entre las entradas y las salidas.
    Por ejemplo, para enseñar a una máquina a reconocer gatos en imágenes, se necesitarían muchas imágenes de gatos etiquetadas como “gato” y “no gato”.

Entrenamiento del modelo:

  • Una vez que se tienen los datos, se utiliza un algoritmo de aprendizaje automático para construir un modelo.
    Este modelo es una representación matemática que captura las relaciones entre las entradas y las salidas.
    Durante el entrenamiento, el algoritmo ajusta los parámetros del modelo para que pueda hacer predicciones precisas.
    En el caso del reconocimiento de gatos, el modelo intentaría encontrar patrones en las imágenes que distingan a los gatos de otras cosas.

Evaluación y ajuste:

  • Después de entrenar el modelo, se evalúa su rendimiento utilizando datos que no ha visto antes. Esto ayuda a verificar si el modelo generaliza bien y puede hacer predicciones precisas en nuevas situaciones.
    Si el rendimiento no es satisfactorio, se pueden realizar ajustes en el algoritmo, los parámetros del modelo o la cantidad y calidad de los datos de entrenamiento.
    Este proceso de iteración se repite hasta que el modelo alcance un nivel aceptable de precisión y generalización.

Los algoritmos evolutivos so métodos de optimización y búsqueda estocásticos basados en los postulados de la evolución biológica. En ellos se mantiene un conjunto de entidades que representan posibles soluciones, las cuales se mezclan, y compiten entre sí, de tal manera que las más aptas son capaces de prevalecer a traves del tiempo, evolucionando hacia mejores soluciones cada vez.