Generación de contenido a-la-carta-con-IA

Roberto Esteves
6 min readFeb 21, 2023

--

A Una inteligencia artificial como como un robot steampunk
Imagen generada con Midjourney

Empiezo este post diciendo que parte del código y del texto fue generado con la ayuda de ChatGPT, la imagen que acompaña este post fue generada con MidJourney

En la actualidad, la creación de contenido para blogs y la creación de código en Python son dos habilidades altamente demandadas en el mercado laboral. Sin embargo, para muchas personas puede ser difícil encontrar tiempo y recursos para mejorar en estas áreas. Es por eso que se ha desarrollado ChatGPT, un modelo de lenguaje natural altamente avanzado que puede ser utilizado para crear contenido para blogs y realizar diversas tareas en Python de manera eficiente y efectiva.

ChatGPT es un modelo de lenguaje natural basado en la tecnología de procesamiento de lenguaje natural y aprendizaje profundo que ha sido entrenado en grandes conjuntos de datos. Esto permite que el modelo sea capaz de generar texto de manera autónoma, lo que facilita la creación de contenido para blogs. Además, ChatGPT es capaz de entender el lenguaje humano de manera efectiva, lo que lo hace ideal para aquellos que buscan crear contenido en una variedad de temas.

Caso de Estudio

Vamos a ver un ejemplo de como con esta herramiento podemos generar valor, por ejemplo para departamentos de marketing.

Vamos a analizar el datasets “mtcars”, este un conjunto de datos que contiene información sobre 32 modelos de automóviles. Se utiliza comúnmente para aprender técnicas de clustering en ciencia de datos y aprendizaje automático.

Escribiremos código en Python para generar los clúster y luego la respectiva explicación de las características de cada clúster para una campaña de marketing.

Código generado por ChatGPT

La mayor parte del código y las descripciones fueron generadas por ChatGPT y optimizadas por un humano(yo).

import pandas as pd
import numpy as np
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler, OneHotEncoder
from sklearn.compose import ColumnTransformer
from sklearn.metrics import silhouette_score
import plotly.express as px

Este código de Python importa librerías para la realización de un modelo de clustering utilizando el algoritmo KMeans. También importa funciones para estandarizar y codificar las variables del dataset, y para evaluar la calidad del modelo utilizando el puntaje de silhouette.

# Leer el archivo
df = pd.read_csv('https://gist.githubusercontent.com/seankross/a412dfbd88b3db70b74b/raw/5f23f993cd87c283ce766e7ac6b329ee7cc2e1d1/mtcars.csv')
# Normalizar las variables numéricas
scaler = StandardScaler()
numeric_cols = ['mpg', 'disp', 'hp', 'drat', 'wt', 'qsec']
df[numeric_cols] = scaler.fit_transform(df[numeric_cols])

# Codificar las variables categóricas
categorical_cols = ['vs', 'am', 'gear', 'carb','cyl']
ct = ColumnTransformer(transformers=[('encoder', OneHotEncoder(), categorical_cols)])
df_encoded = ct.fit_transform(df)

Este código estandariza las variables numéricas del dataframe df y codifica las variables categóricas utilizando la técnica de OneHotEncoding. La función ColumnTransformer es utilizada para aplicar la codificación en las columnas especificadas en categorical_cols.

# Probar diferentes valores de K y elegir el mejor
best_score = -1
best_k = -1
for k in range(2, 6):
kmeans = KMeans(n_clusters=k, random_state=0)
kmeans.fit(df_encoded)
labels = kmeans.predict(df_encoded)
score = silhouette_score(df_encoded, labels)
if score > best_score:
best_score = score
best_k = k

# Entrenar el modelo con el mejor valor de K
kmeans = KMeans(n_clusters=best_k, random_state=0)
kmeans.fit(df_encoded)

Este código de Python entrena el modelo de clustering KMeans con el número óptimo de clusters determinado previamente

#Creamos los clústers
labels = kmeans.predict(df_encoded)
df["Cluster"] = pd.Categorical(labels)

# Crear el gráfico con Plotly Express
fig = px.scatter(df, x='mpg',y="wt",color='Cluster',size="cyl")

# Mostrar el gráfico
fig.show()

Este código asigna los clúster a las observaciones y crea un gráfico de dispersión utilizando Plotly Express, donde se grafican las variables mpg y wt del dataframe df, y se colorean los puntos según el cluster asignado. Además, el tamaño de los puntos se determina por la variable cyl.

Se generaron 5 Cluster numerados del 0 al 4

Explicando los cluster

Podemos explicar los cluster pensando en realizar una campaña de marketing efectiva, centrándonos en las características más importantes que definen a cada uno.

A continuación, se describen las características principales de cada cluster:

Cluster 0: Este cluster se caracteriza por tener carros con un alto consumo de combustible (mpg bajo) y un alto peso (wt alto), lo que indica que estos carros no son muy eficientes en términos de combustible y pueden ser menos amigables con el medio ambiente. Este cluster también se compone en su mayoría de carros con motores grandes (disp alto y hp alto), lo que sugiere que pueden ser carros más potentes y rápidos. En términos de características categóricas, este cluster se compone en su mayoría de carros con transmisión manual (am = 1), con 4 velocidades (gear = 4) y con carburadores de 4 barriles (carb = 4).

Para una campaña de marketing, se puede enfocar en los aspectos de potencia y velocidad de estos carros, así como en su atractivo retro y su naturaleza exclusiva.

Cluster 1: Este cluster se caracteriza por tener carros más eficientes en términos de combustible (mpg alto) y más livianos (wt bajo), lo que sugiere que son carros más económicos y amigables con el medio ambiente. Este cluster se compone en su mayoría de carros con motores pequeños (disp bajo y hp bajo), lo que indica que estos carros no son muy potentes ni rápidos. En términos de características categóricas, este cluster se compone en su mayoría de carros con transmisión automática (am = 0), con 3 o 4 velocidades (gear = 3 o 4) y con carburadores de 1 o 2 barriles (carb = 1 o 2).

Para una campaña de marketing, se puede enfocar en los aspectos de economía y amigabilidad con el medio ambiente de estos carros, así como en su practicidad y accesibilidad.

Cluster 2: Este cluster se caracteriza por tener carros con motores grandes (disp alto y hp alto), lo que sugiere que son carros más potentes y rápidos. Este cluster también se compone en su mayoría de carros con transmisión manual (am = 1), con 4 o 5 velocidades (gear = 4 o 5) y con carburadores de 4 o 8 barriles (carb = 4 o 8), lo que sugiere que estos carros están diseñados para la velocidad y la potencia. En términos de características numéricas, este cluster no tiene una tendencia clara en cuanto al consumo de combustible (mpg) y al peso (wt).

Para una campaña de marketing, se puede enfocar en los aspectos de potencia y velocidad de estos carros, así como en su estilo deportivo y exclusividad.

Cluster 3: Este cluster se caracteriza por tener carros más eficientes en términos de combustible (mpg alto) y más livianos (wt bajo), lo que sugiere que son carros más económicos y amigables conel medio ambiente. Este cluster se compone en su mayoría de carros con motores pequeños (disp bajo y hp bajo), lo que indica que estos carros no son muy potentes ni rápidos. En términos de características categóricas, este cluster se compone en su mayoría de carros con transmisión manual (am = 1), con 3 o 4 velocidades (gear = 3 o 4) y con carburadores de 1 o 2 barriles (carb = 1 o 2). En general, este cluster es similar al Cluster 1, pero con un enfoque en los carros con transmisión manual y más enfocados en la eficiencia del combustible.

Para una campaña de marketing, se puede enfocar en los aspectos de economía y amigabilidad con el medio ambiente de estos carros, así como en su practicidad y accesibilidad.

Cluster 4: Este cluster se caracteriza por tener carros con motores grandes (disp alto y hp alto) y con un consumo de combustible moderado (mpg moderado) y un peso moderado (wt moderado), lo que sugiere que estos carros son una mezcla entre potencia y eficiencia. Este cluster también se compone en su mayoría de carros con transmisión manual (am = 1), con 3 o 4 velocidades (gear = 3 o 4) y con carburadores de 2, 4 o 8 barriles (carb = 2, 4 o 8), lo que sugiere que estos carros están diseñados para un rendimiento óptimo en diferentes condiciones.

Para una campaña de marketing, se puede enfocar en los aspectos de rendimiento y versatilidad de estos carros, así como en su atractivo retro y estilo clásico.

Conclusión

Acabamos de ver un ejemplo de como con la ayuda de herramientas de IA podemos optimizar la producción de código y de contenido para tareas tan específicas como una campaña de marketing.

Esto nos permite ahorrar tiempo en la parte de construcción de soluciones para concentrarnos en lo más importante que es enteder correctamente los problemas que se nos plantean y generar las posibles mejores soluciones

Links de referencia

https://chat.openai.com/https://midjourney.com/

Contactos

Mail: hola@masappec.com

LinkedIN: https://www.linkedin.com/company/masapp/

Twitter: https://twitter.com/Masappdata

Instagram: https://www.instagram.com/masappdata/

--

--