CursosEmpresasBlogLiveConfPrecios

Entrenamiento del modelo

Clase 13 de 18 • Curso de Regresión Lineal con Python y scikit-learn

Clase anteriorSiguiente clase

Contenido del curso

Introducción al curso
  • 1
    Tu primera regresión lineal con scikit-learn

    Tu primera regresión lineal con scikit-learn

    09:00
  • 2
    Análisis de datos para tu primera regresión lineal

    Análisis de datos para tu primera regresión lineal

    09:49
  • 3
    Entrenando un modelo de regresión lineal con scikit-learn

    Entrenando un modelo de regresión lineal con scikit-learn

    14:01
Cómo funciona la regresión lineal
  • 4
    ¿Qué es la regresión lineal?

    ¿Qué es la regresión lineal?

    04:26
  • 5
    Cuándo utilizar un modelo de regresión lineal

    Cuándo utilizar un modelo de regresión lineal

    03:53
  • 6
    Función de pérdida y optimización: mínimos cuadrados

    Función de pérdida y optimización: mínimos cuadrados

    06:10
  • 7
    Evaluando el modelo: R^2 y MSE

    Evaluando el modelo: R^2 y MSE

    04:49
  • quiz de Cómo funciona la regresión lineal

Regresión lineal multivariable
  • 8
    Regresión lineal multivariable

    Regresión lineal multivariable

    03:45
  • 9
    Análisis de regresión multivariable

    Análisis de regresión multivariable

    14:20
Proyecto práctico
  • 10
    Regresión lineal para predecir los gastos médicos de pacientes

    Regresión lineal para predecir los gastos médicos de pacientes

    04:15
  • 11
    Exploración y preparación de datos

    Exploración y preparación de datos

    07:49
  • 12
    Análisis de correlación de los datos

    Análisis de correlación de los datos

    09:57
  • 13
    Entrenamiento del modelo

    Entrenamiento del modelo

    10:40
  • 14
    Evaluando el modelo

    Evaluando el modelo

    13:20
  • 15
    Mejorando el modelo

    Mejorando el modelo

    13:59
  • quiz de Proyecto práctico

Pasos siguientes
  • 16
    ¿Qué hay más allá de la linealidad?

    ¿Qué hay más allá de la linealidad?

    04:26
  • 17
    Siguientes pasos en modelos de inteligencia artificial

    Siguientes pasos en modelos de inteligencia artificial

    02:11
  • 18

    Comparte tu proyecto de regresión lineal y certifícate

    00:00
    Alex Junior Rodriguez Huerta

    Alex Junior Rodriguez Huerta

    student•
    hace 4 años

    Este capítulo me dejó unas dudas que resolví investigando un poco.

    1. Al no colocar un test_size, se asume que toma un 75% para train y 25% para test
    2. El .fit lo que haría es obtener la media y la desviación estandar para luego aplicarlo al usar la transformación.
    3. Al hacer un fit de X, y es para sacar los valores que describo en 2) y aplicarlos al X_train, X_test, y_train, y_test
    4. No siempre es necesario aplicar un fit_transform al target
    5. En caso uses el método que coloco abajo, debes saber que .fit_transform se aplica a X_train, y_train, y .transform solo se aplica a X_test, y_test

    Yo lo hice de esta manera, es otra opción:

    from sklearn.preprocessing import StandardScaler from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split X = data.drop(columns = ['charges']) y = data[['charges']] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25) sc_x = StandardScaler() X_train = sc_x.fit_transform(X_train) X_test = sc_x.transform(x_test) sc_y = StandardScaler() y_train = sc_y.fit_transform(y_train) y_test = sc_y.transform(y_test) model = LinearRegression() model.fit(X_train, y_train) y_pred = model.predict(X_test)
      Diego González Castellanos

      Diego González Castellanos

      student•
      hace 3 años

      Tenia la duda de la distribución, gracias.

      Joaquin Romero Flores

      Joaquin Romero Flores

      student•
      hace 3 años

      Gracias!

    Blas Ferreira

    Blas Ferreira

    student•
    hace 3 años

    Para mi que se equivocó! La esencia de dividir en train y test es simular cómo se comporta mi modelo bajo datos nunca vistos, por lo que cuando crea los objetos scaler sc_x y sc_y los tiene que entrenar con los datos de train ( X_train e y_train ) solamente. Si creo el scaler con todos los datos que tengo se estaría filtrando información de train hacia test. Estaria haciendo “Trampa” porque en teoría los datos de test nunca los vio el modelo. Me explico?

      George Wang Lee Zevallos Durand

      George Wang Lee Zevallos Durand

      student•
      hace 3 años

      Creo que lo que mencionas se evita porque justo antes de crear sc_x y sc_y usa train_test_split. Alguien que conozca más del tema y aclare esto.

      Andres Gutiérrez Castillo

      Andres Gutiérrez Castillo

      student•
      hace 3 años

      @Blas Ferreira estas confundiendo el objeto de transformacion (StandardScaler) con el estimador (LinearRegression), si bien ambos son modelos que usan la funcion fit y predict, el primero solo transforma los datos, normalizandolos por ejemplo en un rango de [-1,1], esto preprocesa la data para que el modelo predictivo funcione mejor. Por otro lado el estimador es el modelo predictivo es aquel que realizara las inferencias (vaya, el modelo de ML) este es el modelo que requerira hacer testing y evaluaciones por lo cual este si requiere hacer holdout (split_data ). si haces el split antes del StandardScaler lo unico que conseguiras es crear 2 grupos de datos normalizados usando otra diferente distribucion, en palabras sencillas el paso de evaluacion estara incorrecto ya que las escalas de normalizacion tendran diferentes distribuciones, osea no servira de nada tu testing.

    Miguel Angel Herrera Chavez

    Miguel Angel Herrera Chavez

    student•
    hace 2 años

    Solo una pequeña corrección. Se menciona a la variable y=charges como variable predictora.

    Según la teoría estadística: Las variables predictoras son las variables independientes, en este caso las X's. La variable objetivo es la dependiente en este caso y=charges.

      Jeinfferson Bernal G

      Jeinfferson Bernal G

      student•
      hace 2 años

      Es correcto. Asi tambien lo entiendo yo!

    Dick Saide Suárez Blanco

    Dick Saide Suárez Blanco

    student•
    hace 3 años

    ----->Entrenamiento del modelo<---- σ El objetivo es saber como entrenar un modelo de regresion lineal dentro de machine learning. 1.Crear el modelo. Parecido a lo hecho en el primer ejecicio, lo primero es importar la informacion. Mas ahora usaremos "from", ya que en vez de usar la libreria entera, podemos especificar solo lo que queremos recuperar de ahi.

    " from sklearn.preprocessing import StandardScaler " + Luis lo explica asi "De esta parte" importa esto. " from sklearn.linear_model import LinearRegression " " from sklearn.model_selection import train_test_split " + Aqui tenemos una funcion la cual se especifica que queremos que un DataSet se divida entre uno de prueba y otro de entrenamiento. + En el modeo de entrenamiento se va a crear el modelo. + Y en el de entrenamiento se va a verificar si fue bueno o fue malo. 2. Definir las colummnas que van usar para las x-axis, y tambien las columnas que seran para la variable predictora. " X_cols = list(set(df.columns)-set(['charges'])) " + X cols van a ser igual a una lista la cual estara compuesta de todas las columnas que existen menos la variable predictora. + Asi para que el programa revise todas las columnas excepto una. + Nota: Usando la variable " set " se eliminan los duplicados. σ La siguiente es definir la variable predictoria a la cual es asi: " y_col = ['charges'] " 3. Una vez teniendo las columnas, ahora se estableceran las variables a usar.

    " X = df[X_cols].values " + X es igual a data frame de todas la columnas de x, piendo solo los valores que tengan. " y = df[y_col].values " 4.Lo siguiente es crear el modelo de " test " and "train"speed:

    " X_train, X_test, y_train, y_test = train_test_split(X,y) " + Se establecen las palabras que va a ayuda a entrenar y probar el modelo. 5. Ahora lo que sigue es establacer la informacion de los datos " sc_x = StandardScaler().fit(X) " " sc_y = StandardScaler().fit(y) " + Las variables van a hacer igual al sus repectivas StandardScaler () ----------->Haciendo asi lo msimo con sus debidas funciones para crear el campo de "train" y "test" sobre "x" e "y" " X_train = sc_x.transform(X_train) " " X_test = sc_x.transform(X_test) " " y_train = sc_y.transform(y_train) " " y_test = sc_y.transform(y_test) " 6. Ahora hay que aclarar el modelo a crear, en este caso linaer regression model = LinearRegression() model.fit(X_train,y_train) 7. Y finanlmente se hace uba prediccion de los datos. " y_pred = model.predict(X_test) "

    Al final Luis, uso " y_pred.shape " para conocer el numero de colmnas y filas que hay. teniendo asi muchas columnas pero solo una vairblse , lo cual esta correcto.

      Maximiliano Cuesta

      Maximiliano Cuesta

      student•
      hace 3 años

      Haces un gran aporte Dick!!! solo te sugeriría que, estaría bueno que uses lenguaje markdown para que sea mas simple la lectura. saludos!!

    Anuar Steven Garcia

    Anuar Steven Garcia

    student•
    hace 3 años

    aqui les dejo lo que me analiza chatGPT

    There does not appear to be any syntax errors in the code you provided. However, there are a few potential issues that could impact the performance or accuracy of the model:

    Standardizing the response variable (y) using StandardScaler is generally not recommended, as this can affect the interpretation of the model’s output. It might be more appropriate to standardize the predictors (x) instead.

    The code splits the data into training and test sets using train_test_split, but then applies standardization to the entire dataset rather than just the training set. This means that the test set is being transformed using statistics computed from the entire dataset, which could introduce bias. It would be better to fit the standardization transformation on the training set and then apply it to both the training and test sets.

      jader lopez

      jader lopez

      student•
      hace 3 años

      hackeaste el sistema

      Yonatan Efraín Jara Boza

      Yonatan Efraín Jara Boza

      student•
      hace 3 años

      Amigo, eso es lo que estaba leyendo por otros medios a partir de los aportes en los comentarios, qué practico! Qué le pediste hacer al chatGPT para esa respuesta? pues a mi me dijo que estaba bien y no coincidió con la que tú obtuviste hasta que pregunte especificamente.

    Yonatan Efraín Jara Boza

    Yonatan Efraín Jara Boza

    student•
    hace 3 años

    A partir de los comentarios y fuentes que aportan @Blas Ferreira, @Fernando Uriel Torres Ramírez, @Anuar Steven Garcia Gutierrez como de otros compañeros que coinciden en algunos puntos, el código debería cambiar de (...) a (...): . Aparece: .

    Screenshot 2023-04-03 145246.jpg
    . Debería ser: .
    Screenshot 2023-04-03 145630.jpg

    Cristian Enrique Cuevas Mercado

    Cristian Enrique Cuevas Mercado

    student•
    hace 4 años

    train_test_split() divide al conjunto de datos al no indicarle la proporcion posiblemente la funciona usa el valor por defecto

      Santiago Ahumada Lozano

      Santiago Ahumada Lozano

      student•
      hace 3 años

      El tamaño por defecto del conjunto de prueba es 0.25

    FELIX  DAVID CORDOVA GARCIA

    FELIX DAVID CORDOVA GARCIA

    student•
    hace 4 años

    El entrenamiento del escalador debería ser solo con las variables de entrenamiento, es decir

    sc_x.fit(X_train) sc_y.fit(y_train)

      Tomas Dale

      Tomas Dale

      student•
      hace 4 años

      Para todos los modelos de ML

      1. defines modelo modelo = LinearRegression()

      2. lo entrenas model.fit( data_train_x, data_target_y)

      3. generas el predictor y_pred = modelo.predict(X_test)

    Natalia Bermudez Calderon

    Natalia Bermudez Calderon

    student•
    hace 2 años

    No entiendo muy bien para qué sirve la función de estandarizar. Para qué se requieren los datos estandarizados?

    Sebastián José Herrera Monterrosa

    Sebastián José Herrera Monterrosa

    student•
    hace 3 años

    Hay un grave error en esta clase. Uno de los principios del aprendizaje supervidado es que no se estandariza. De hecho si ustedes ejecutan el modelo sin estandarizar les va a dar exactamente igual las predicciones

      Joel Orellana

      Joel Orellana

      student•
      hace 3 años

      Entonces cuál es el propósito de estandarizar? 🤔

      Gerardo Mayel Fernández Alamilla

      Gerardo Mayel Fernández Alamilla

      student•
      hace 2 años

      No es correcto, escalar los datos debe hacerse en la mayoría de los casos, principalmente en el aprendizaje supervisado, escalar o no los datos depende del modelo, es decir si es sensible o no a datos escalados.

    Julian Cardenas Peñuela

    Julian Cardenas Peñuela

    student•
    hace 3 años

    Otra manera de crear el modelo con Pipeline

    from sklearn.preprocessing import StandardScaler from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split from sklearn.pipeline import Pipeline
    X = df.drop('charges', axis='columns') y = df['charges'] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) pipeline_lr = Pipeline(steps=[('scaler', StandardScaler()), ('classifier', LinearRegression())]) pipeline_lr.fit(X_train, y_train) y_pred = pipeline_lr.predict(X_test)
    Richard Eduardo Sailema Medina

    Richard Eduardo Sailema Medina

    student•
    hace 3 años

    El train_test_split() divide al conjunto de datos en 80% para entrenamiento (train) y 20% para prueba (test).

    El dataset o conjunto de datos test te va a permitir evaluar tu modelo una vez que lo entranaste aplicando model.fit(Xtrain, y_train).

    Entrenar tu modelo significa que l algoritmo está ajustando una línea a tus datos de manera automática.

    GUSTAVO CHIAPPE

    GUSTAVO CHIAPPE

    student•
    hace 10 meses

    el tema de

    X_cols = list(set(df.columns)-set(['charges']))y_col = ['charges'] X = df[X_cols].valuesy = df[y_col].values

    esta de más y medio obsoleto, lo ideal seria :

    X = data.drop(columns = ['charges']) y = data[['charges']]

    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25)

    así conservas el nombre de las columnas. de paso el codigo es mas legible y más limpio.

    Gian HM

    Gian HM

    student•
    hace un año

    El profesor hizo mas lineas de las necesarias, talvez para que la clase sea mas entendible, pero siguiendo las buenas practicas el codigo sería el siguiente, y creo que te aclarara muchas dudas y tiempo investigando :)

    # Escalar las variables dependientes, primero ajustamos el modelo y luego transformamos ya con la media y desviación estandar que se obtuvo en el fit scaler = StandardScaler() X_train_scaled = scaler.fit_transform(X_train) X_test_scaled = scaler.transform(X_test) # Entrenar el modelo model = LinearRegression() model.fit(X_train_scaled, y_train) # Predecir el modelo y_pred = model.predict(X_test_scaled) # Ver resultados results_df = X_test.copy() results_df['Valores reales'] = y_test.values results_df['Valores predichos'] = y_pred results_df ```# Escalar las variables dependientes, primero ajustamos el modelo y luego transformamos ya con la media y desviación estandar que se obtuvo en el fitscaler = StandardScaler()X\_train\_scaled = scaler.fit\_transform(X\_train)X\_test\_scaled = scaler.transform(X\_test) \# Entrenar el modelomodel = LinearRegression()model.fit(X\_train\_scaled, y\_train) \# Predecir el modeloy\_pred = model.predict(X\_test\_scaled) \# Ver resultadosresults\_df = X\_test.copy()results\_df\['Valores reales'] = y\_test.valuesresults\_df\['Valores predichos'] = y\_predresults\_df
    Santiago Ahumada Lozano

    Santiago Ahumada Lozano

    student•
    hace 3 años

    Hola, yo pienso que hay un error de ética grave en la creación del modelo. En el video el profesor calculo las desvaciones estandar sobre todo el conjunto de datos cuando la ética en cienca de datos nos obliga a hacer todo el modelamiento sólo con el conjunto de entrenamiento.

    El modelo debe ser entrenado con valores que no conozca sin embargo la desviacion estandar sobre todo el conjunto de datos sí le esta dando conocimiento al modelo del conjunto de testeo.

      Santiago Ahumada Lozano

      Santiago Ahumada Lozano

      student•
      hace 3 años
      sc_x = StandardScaler().fit(X_train) sc_y = StandardScaler().fit(y_train)
      Gerardo Mayel Fernández Alamilla

      Gerardo Mayel Fernández Alamilla

      student•
      hace 2 años

      la ética en la ciencia de datos normalmente se refiere a otros temas y nada tiene que ver con errores técnicos al desarrollar un modelo, el modelo fue entrenado con valores que no conoce en este paso model.fit(X_train, y_train), ahora es cierto que cuando hace la evaluación del modelo lo hace con los datos escalados, pero lo menciona, acá dejo una versión con de la evaluación del modelo con datos escalados y sin escalar, mse = metrics.mean_squared_error(sc_y.inverse_transform(y_test), sc_y.inverse_transform(y_pred))

      r2 = metrics.r2_score(sc_y.inverse_transform(y_test), sc_y.inverse_transform(y_pred))

      mse_sc = metrics.mean_squared_error(y_test ,y_pred)

      r2_sc = metrics.r2_score(y_test ,y_pred), observaremos que r2 mantiene su valor sin importar si los datos están o no escalados mientras que mse si sufre un cambio importante.

    David Carrillo Castillo

    David Carrillo Castillo

    student•
    hace 3 años

    ESCALADO DE DATOS

    • Para aplicar un escalado semejante a las diferentes características tenemos dos enfoques diferentes: el escalado y la normalización. El escalado va a transformar los valores de las características de forma que estén confinados en un rango [a, b], típicamente [0, 1] o [-1, 1]. La normalización va a transformar las características de forma que todas compartan un mismo valor medio y una misma desviación media, por ejemplo.

    • Es importante recordar que el escalador deberá entrenarse solo con los datos de entrenamiento para evitar fugas, y que deberá aplicarse de igual forma tanto a los datos de entrenamiento como a los de validación y prueba.

    • Scikit-Learn ofrece diferentes escaladores (llamados así con independencia del enfoque aplicado)

    Mario Alexander Vargas Celis

    Mario Alexander Vargas Celis

    student•
    hace 4 meses

    ¡Perfecto! Una vez explorados y preparados los datos, el siguiente paso es entrenar el modelo de regresión lineal. A continuación te explico cómo hacerlo paso a paso con scikit-learn:

    ✅ Paso 1: Importar librerías necesarias

    import pandas as pd from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split

    ✅ Paso 2: Cargar y preparar los datos

    # Cargar el dataset df = pd.read_csv('insurance.csv')

    # Codificar variables categóricas (por ejemplo: sexo, fumador, región) df_encoded = pd.get_dummies(df, drop_first=True)

    # Separar variables independientes (X) y variable objetivo (y) X = df_encoded.drop('charges', axis=1) y = df_encoded['charges']

    ✅ Paso 3: Dividir el conjunto de datos

    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

    ✅ Paso 4: Crear y entrenar el modelo

    model = LinearRegression() model.fit(X_train, y_train)

    ✅ Paso 5: Ver los coeficientes del modelo

    # Mostrar los coeficientes junto con los nombres de las variables coeff_df = pd.DataFrame(model.coef_, X.columns, columns=['Coeficiente']) print(coeff_df)

    ✅ Paso 6: Realizar predicciones

    y_pred = model.predict(X_test)

    ✅ Paso 7: Evaluar el modelo

    Puedes usar R² y el Error Cuadrático Medio (MSE):

    from sklearn.metrics import r2_score, mean_squared_error

    print('R²:', r2_score(y_test, y_pred)) print('MSE:', mean_squared_error(y_test, y_pred))

    Daniel Andres Rojas Paredes

    Daniel Andres Rojas Paredes

    student•
    hace 8 meses

    me quede esperando la aplicacion de pca para reducir la dimencionalidad. esta tecnica solo se realiza cuando existen valores de correlacion significativos ?

    JIMI MARCOS ALTAMIRANO HUAMANI

    JIMI MARCOS ALTAMIRANO HUAMANI

    student•
    hace 4 años

    obtengo este error:

    --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-63-086b9f3ab7e7> in <module>() 7 X_train,X_test,y_train,y_test=train_test_split(X,y) 8 ----> 9 sc_x=StandardScaler.fit(X) 10 sc_y=StandardScaler.fit(y) 11 TypeError: fit() missing 1 required positional argument: 'X'

    Mi codigo es :

    X_cols=list(set(df.columns)-set(['charges'])) y_cols=['charges'] X=df[X_cols].values y=df[y_cols].values X_train,X_test,y_train,y_test=train_test_split(X,y) sc_x=StandardScaler.fit(X) sc_y=StandardScaler.fit(y) X_train=sc_x.transform(X_train) X_test=sc_x.transform(X_test) y_train=sc_y.transform(y_train) y_test=sc_y.transform(y_test) model=LinearRegression() model.fit(X_train,y_train)
      Luis Fernando Laris Pardo

      Luis Fernando Laris Pardo

      student•
      hace 4 años

      Esto pasa porque te faltaron los paréntesis en sc_x=StandardScaler.fit(X). Debería de ser

      sc_x=StandardScaler().fit(X)

      Esto pasa porque cuando no pones los paréntesis usas una referencia a la clase, pero no la instancias (no corres el constructor o el init(). Entonces no sé crea la variable self que es una referencia a la instancia. Espero esto te haya ayudado 😄

    JIMI MARCOS ALTAMIRANO HUAMANI

    JIMI MARCOS ALTAMIRANO HUAMANI

    student•
    hace 4 años

    se puede aplicar un sc_x= StandartScaler().fit() sin agregar el x o el y dentro de fit. ?

      Luis Fernando Laris Pardo

      Luis Fernando Laris Pardo

      student•
      hace 4 años

      No, tienes que tener una variable parta hacer fit en. Básicamente el fit(variable) lo que hace es agarrar esa variable y obtener su desviación estándar y media, si no tienes variable el scaler no tiene nada de referencia para obtener esta información. puedes leer más acá

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads