1 Compresión del Negocio

La industria musical moderna se encuentra fuertemente impulsada por las plataformas de streaming, como Spotify, que no solo ofrecen acceso inmediato a millones de canciones, sino que también recopilan grandes cantidades de datos sobre características sonoras y preferencias de los usuarios. En este entorno altamente competitivo y dinámico, la personalización de contenidos se ha convertido en un factor clave para retener usuarios, mejorar la experiencia musical y fomentar el descubrimiento de nuevos artistas.

Uno de los grandes desafíos que enfrentan las plataformas de música en línea es cómo organizar y recomendar canciones de forma efectiva. Debido a la gran cantidad de música disponible, identificar patrones en las características de las canciones puede ayudar significativamente en la creación de listas de reproducción automáticas, descubrimiento de música similar y segmentación de catálogos por estilo o “mood”.

Aquí es donde los modelos de clustering pueden desempeñar un papel fundamental. Mediante el agrupamiento de canciones en función de características como danceability, energy, tempo, valence y otras propiedades extraídas mediante análisis de audio, es posible identificar grupos de canciones con perfiles musicales similares. Estos grupos pueden representar géneros, estados de ánimo o estilos comunes, sin necesidad de etiquetas explícitas, lo que ofrece un enfoque más objetivo y adaptable al análisis de contenido musical.

1.1 ¿Por qué es importante el clustering de canciones para Spotify o una plataforma musical?

El análisis mediante técnicas de clustering desempeña un papel clave en la organización y gestión del contenido musical en plataformas de streaming como Spotify. Estas plataformas manejan catálogos con millones de canciones, y agruparlas según sus características acústicas —como la energía, la bailabilidad, el tempo o la valencia emocional— permite identificar similitudes que no dependen necesariamente de etiquetas de género o metadatos manuales. A través del agrupamiento no supervisado, se pueden generar estructuras lógicas que reflejan cómo suenan realmente las canciones, lo cual aporta una clasificación más objetiva y funcional del contenido musical.

Una de las aplicaciones más significativas del clustering es la mejora en la personalización de la experiencia del usuario. Al conocer el tipo de canciones que escucha una persona y los clústeres a los que pertenecen, la plataforma puede recomendar nuevos temas con perfiles similares, lo que incrementa la relevancia de las sugerencias. Asimismo, este agrupamiento permite generar listas de reproducción de forma automatizada, garantizando que las canciones seleccionadas mantengan una coherencia sonora entre sí. Esta automatización no solo reduce el esfuerzo curatorial, sino que también permite escalar la personalización para millones de usuarios simultáneamente.

Además, el clustering abre la posibilidad de realizar análisis a gran escala sobre tendencias musicales y dinámicas de consumo. Al observar cómo cambian los grupos de canciones más escuchados a lo largo del tiempo, es posible identificar la evolución de estilos musicales o el surgimiento de nuevas combinaciones sonoras. Esta información resulta valiosa tanto para la plataforma como para artistas y productores, ya que permite adaptar estrategias de mercado. Del mismo modo, las canciones emergentes que comparten características con éxitos populares pueden ser promovidas automáticamente, fomentando el descubrimiento de nuevos talentos y diversificando la oferta musical disponible para los oyentes.

1.2 ¿Cómo puede afectar esto al negocio?

El uso de técnicas de clustering en el análisis de canciones tiene un impacto directo en la retención de usuarios, incremento del tiempo de escucha y fidelización. Los usuarios valoran la personalización y la capacidad de descubrir nueva música que se ajusta a sus gustos. Además, al automatizar parte del proceso de curaduría, Spotify puede optimizar recursos humanos y ofrecer contenido de valor a escala global.

Por otro lado, los artistas y sellos discográficos pueden beneficiarse de estos análisis, obteniendo información útil sobre el posicionamiento de sus canciones frente a otras similares, y planificando estrategias de lanzamiento más efectivas.

1.3 Transformación del Problema en un Análisis de Datos

El problema de agrupar canciones según sus características acústicas y patrones de escucha se puede abordar mediante un análisis de datos no supervisado, cuyo objetivo es identificar estructuras latentes dentro del conjunto musical sin necesidad de contar con etiquetas predefinidas. En este caso, transformamos el problema en una tarea de clustering, en la que buscamos detectar grupos naturales de canciones que presenten similitudes significativas en sus propiedades sonoras o en la manera en que los usuarios las consumen.

Aplicaremos algoritmos de clustering, como K-Means, con el fin de identificar clústeres de canciones que compartan características similares. El resultado de este proceso no será una predicción directa, como ocurre en los modelos supervisados, sino una clasificación emergente que nos permitirá descubrir agrupaciones musicales útiles para generar playlists más coherentes, mejorar las recomendaciones personalizadas, analizar tendencias y ofrecer herramientas analíticas para artistas y productores.

1.3.1 Proceso de Transformación

El primer paso será recopilar datos musicales representativos, utilizando para ello la base de datos “Million Song Dataset + Spotify + Last.fm”, disponible en Kaggle. Este conjunto combina información de audio extraída de la API de Spotify con datos de escucha de usuarios provenientes de Last.fm, lo que permite un análisis robusto tanto desde el punto de vista sonoro como del comportamiento del oyente. La base incluye variables cuantitativas clave como danceability, energy, tempo, valence, loudness, acousticness, instrumentalness, y speechiness, las cuales describen el perfil acústico de cada canción.

A continuación, estos datos serán preparados para su análisis. El proceso de preparación incluye la selección de las variables más relevantes, la eliminación de valores faltantes, y la normalización de las características numéricas para asegurar que todas tengan un peso proporcional en el modelo. Esta etapa es fundamental, ya que garantiza que el algoritmo de agrupamiento no se vea influenciado de forma injusta por escalas distintas entre variables. Además, se podrán explorar y depurar valores atípicos que podrían distorsionar los resultados del agrupamiento.

Una vez los datos estén listos, se aplicará un algoritmo de clustering, como K-Means, que permitirá segmentar las canciones en diferentes clústeres basados en su similitud dentro del espacio de características acústicas. El objetivo no será predecir una etiqueta fija, sino descubrir patrones subyacentes que agrupen canciones con perfiles similares. Estos grupos podrán ser utilizados para múltiples fines prácticos, como generar automáticamente listas de reproducción coherentes, mejorar la personalización de las recomendaciones para los usuarios, y analizar tendencias musicales a partir de las características dominantes de cada grupo.

1.3.2 Beneficios

Este enfoque de análisis de datos permitirá a Spotify optimizar la organización y recomendación de canciones al agruparlas automáticamente según sus características acústicas y patrones de escucha, lo que mejorará la coherencia de las playlists, la precisión de las recomendaciones y el descubrimiento de música emergente, enriqueciendo así la experiencia del usuario. Además, la segmentación obtenida a través del clustering proporcionará herramientas para analizar tendencias musicales y patrones de consumo, permitiendo una personalización más avanzada y la creación de playlists adaptadas a los gustos individuales, lo que incrementará la satisfacción y la interacción de los usuarios. Por último, artistas y productores podrán usar los resultados del análisis para ajustar su producción y estrategia de promoción, mejorando su visibilidad y éxito comercial, lo que impulsará el crecimiento del ecosistema musical en general.

2 Comprensión de los Datos

2.1 Estructura del Conjunto de Datos

El conjunto de datos está compuesto por:

## Número de filas (observaciones): 50683
## Número de columnas (variables): 21

Estas variables se dividen según su tipo de dato en:

## Cantidad de variables numéricas: 14

Que incluyen información como el número de noches reservadas, el número de acompañantes, el tiempo de antelación con el que se realizó la reserva, la tarifa diaria promedio, entre otras.

## Cantidad de variables categóricas: 7

Que representan atributos como el tipo de hotel, el país de procedencia del cliente, el canal de distribución, el estado de la reserva y el tipo de cliente.

A continuación se listan las variables incluidas en el dataset:

## Variables del dataset:
##  [1] "track_id"            "name"                "artist"             
##  [4] "spotify_preview_url" "spotify_id"          "tags"               
##  [7] "genre"               "year"                "duration_ms"        
## [10] "danceability"        "energy"              "key"                
## [13] "loudness"            "mode"                "speechiness"        
## [16] "acousticness"        "instrumentalness"    "liveness"           
## [19] "valence"             "tempo"               "time_signature"

2.2 Descripción y Análisis de Variables

A continuación, se presenta una tabla con la descripción de las principales variables del conjunto de datos, su tipo y su significado en el contexto del análisis de características acústicas y patrones de escucha de canciones:

Resumen estadístico y descripción de las variables
variable tipo faltantes estadisticas descripcion
year numeric 0 Min: 1900 Max: 2022 Media: 2004.01732336286 SD: 8.86017154432944 Año de lanzamiento de la canción
duration_ms numeric 0 Min: 1439 Max: 3816373 Media: 251155.105972417 SD: 107585.956030556 Duración de la canción en milisegundos
danceability numeric 0 Min: 0 Max: 0.986 Media: 0.493536767752501 SD: 0.17883817533494 Bailabilidad de la canción (0 a 1, 1 es más bailable)
energy numeric 0 Min: 0 Max: 1 Media: 0.686486489343567 SD: 0.25180819803198 Nivel de energía de la canción (0 a 1, 1 es más energética)
key numeric 0 Min: 0 Max: 11 Media: 5.31274786417536 SD: 3.56807782780643 Tonalidad musical de la canción (en notas musicales)
loudness numeric 0 Min: -60 Max: 3.642 Media: -8.29120381587514 SD: 4.54836494239376 Volumen medio de la canción en decibelios (dB)
mode numeric 0 Min: 0 Max: 1 Media: 0.631059724167867 SD: 0.482522478759781 Modo musical de la canción (Mayor o menor)
speechiness numeric 0 Min: 0 Max: 0.954 Media: 0.0760227137304422 SD: 0.076007396184396 Cantidad de contenido hablado en la canción (0 a 1, 1 es más hablado)
acousticness numeric 0 Min: 0 Max: 0.996 Media: 0.213807674689738 SD: 0.302848400211625 Nivel de acústica de la canción (0 a 1, 1 es más acústica)
instrumentalness numeric 0 Min: 0 Max: 0.999 Media: 0.225283354239883 SD: 0.337049275671686 Nivel de instrumentalidad de la canción (0 a 1, 1 es más instrumental)
liveness numeric 0 Min: 0 Max: 0.999 Media: 0.215424791547462 SD: 0.18469653649309 Nivel de energía en vivo de la canción (0 a 1, 1 es más en vivo)
valence numeric 0 Min: 0 Max: 0.993 Media: 0.433133885918355 SD: 0.258779400110979 Valoración emocional de la canción (0 a 1, 1 es más positiva)
tempo numeric 0 Min: 0 Max: 238.895 Media: 123.507681924906 SD: 29.6211249677354 Tempo o ritmo de la canción en pulsos por minuto (BPM)
time_signature numeric 0 Min: 0 Max: 5 Media: 3.89815125387211 SD: 0.419669894300827 Firma de tiempo musical de la canción (por ejemplo, 4/4, 3/4, etc.)
track_id character 0 N/a ID único de la pista
name character 0 N/a Nombre de la canción
artist character 0 N/a Nombre del artista de la canción
spotify_preview_url character 0 N/a URL previa de la canción en Spotify
spotify_id character 0 N/a ID único de la canción en Spotify
tags character 1127 N/a Etiquetas asociadas a la canción
genre character 28335 N/a Género musical de la canción

2.2.1 Análisis de las Variables Numéricas

  1. year (Año de lanzamiento de la canción):
    • La media de esta variable es 2004, con un rango que va desde 1900 hasta 2022. Esto indica que la base de datos contiene canciones de una amplia gama temporal, aunque la mayoría parece concentrarse en las últimas dos décadas. La desviación estándar de 8.86 sugiere una moderada dispersión, lo que refleja una diversidad razonable en la época de publicación de las canciones.
  2. duration_ms (Duración de la canción):
    • La duración promedio de las canciones es de aproximadamente 251,155 milisegundos, lo que equivale a poco más de 4 minutos. El valor máximo supera los 63 minutos, lo que probablemente corresponde a pistas extensas o piezas poco convencionales. La desviación estándar alta (107,585 ms) indica una gran variedad en las duraciones.
  3. danceability (Bailabilidad):
    • Con una media de 0.49, esta variable sugiere que el nivel de bailabilidad es moderado en promedio. El rango va de 0 a 0.986, lo que indica que existen canciones con muy baja y muy alta bailabilidad. Esta variable puede ser fundamental para crear playlists enfocadas en géneros de música para fiestas o relajación, dependiendo del grupo al que pertenezca la canción.
  4. energy (Energía):
    • La energía media de las canciones es alta (0.686), lo que sugiere que muchas pistas en el dataset tienen un ritmo rápido, gran intensidad o fuerte presencia instrumental. Esta característica es particularmente útil para clasificar canciones según su impacto emocional o uso en actividades físicas, como el ejercicio.
  5. loudness (Volumen medio):
    • El valor medio de esta variable es de -8.29 dB, con una gran variación hasta -60 dB, que representa grabaciones extremadamente silenciosas. Este rango tan amplio puede reflejar diferencias entre grabaciones modernas y antiguas, o entre estilos musicales acústicos y electrónicos.
  6. valence (Positividad emocional):
    • La media de esta variable es de 0.43, lo que sugiere que la mayoría de las canciones tienen un tono emocional moderado, ni particularmente alegre ni triste. Esta variable, en combinación con la energía, es muy útil para inferir el “estado de ánimo” de una canción,
  7. instrumentalness (Instrumentalidad):
    • El valor promedio es de 0.225, lo cual indica que muchas canciones contienen voz, pero también hay una presencia significativa de pistas instrumentales. Esta variable es muy útil para segmentar contenido como música para estudio, relajación o producción audiovisual.
  8. speechiness (Contenido hablado):
    • La media es de 0.076, lo que refleja que la mayoría de las canciones no tienen una gran cantidad de contenido hablado, aunque hay algunas excepciones (como podcasts o hip-hop). Esta variable puede ayudar a distinguir entre música convencional y contenido más narrativo o experimental.
  9. tempo (Ritmo en BPM):
    • El tempo medio es de 123.5 BPM, un valor típico en géneros como el pop, rock o electrónica. El amplio rango (0–238) indica la presencia de canciones extremadamente lentas y muy rápidas, por lo que esta variable es esencial para segmentar según energía rítmica.
  10. acousticness (Acústica):
    • Con un valor promedio de 0.213, este indicador sugiere que el dataset está compuesto principalmente por canciones con producción electrónica o mezcla instrumental, más que piezas puramente acústicas. Es una métrica relevante para identificar canciones con estilo unplugged o folk.

2.2.2 Análisis de las Variables Categóricas

2.3 Análisis univariado

En esta etapa se analiza cada variable de forma individual con el objetivo de entender su distribución, identificar valores atípicos y detectar posibles problemas en los datos. Esto es esencial para preparar correctamente las variables antes de evaluar su relación con la cancelación de reservas y construir modelos predictivos más robustos.

2.3.1 Gráfico de correlaciones (heatmap)

3 Preparación de los datos

En esta sección, se detalla el proceso de preparación de los datos, basado en el análisis previo de las variables. Este paso es crucial para garantizar que el modelo de clasificación sea robusto y confiable. Según la Descripción y Análisis de Variables, se identificaron las siguientes acciones necesarias para preparar los datos:

3.1 Eliminar Variables

Se eliminaron variables que no aportan información relevante al modelo o que podrían introducir ruido en el análisis. En este caso, se eliminaron las siguientes variables:

  • track_id: Esta variable representa un identificador único para cada canción. Aunque es útil para identificar registros, no aporta información sobre las características acústicas o patrones de escucha de las canciones, por lo que no contribuye al análisis de agrupamiento.

  • spotify_preview_url: Esta variable contiene enlaces a vistas previas de las canciones en Spotify. Si bien es útil para acceder a las canciones, no tiene relevancia en el análisis de características acústicas ni en la agrupación de canciones.

  • spotify_id: Similar a track_id, esta variable es un identificador único proporcionado por Spotify. No aporta información significativa para el análisis de patrones acústicos o de escucha, por lo que se decidió eliminarla.

  • tags: Etiquetas asociadas a las canciones. Contiene texto no estructurado que no es útil para el modelo de clustering.

  • name: Nombre de la canción. Es un identificador textual que no aporta información acústica.

  • genre: Se elimina los NA ya que con genre evaluaremos que tanto logra el modelo captar las variaciones de los generos

## Número de valores faltantes después de reemplazar:
##           artist            genre             year      duration_ms 
##                0                0                0                0 
##     danceability           energy              key         loudness 
##                0                0                0                0 
##             mode      speechiness     acousticness instrumentalness 
##                0                0                0                0 
##         liveness          valence            tempo   time_signature 
##                0                0                0                0

3.2 Eliminación de datos atipicos y valores repetidos

En el proceso de preparación de los datos, se tomó la decisión de filtrar los valores atípicos en las variables tempo y duration_ms debido a las siguientes razones:

3.2.1 tempo (Ritmo en BPM)

  • Descripción: Representa el ritmo de la canción en pulsos por minuto (BPM). Es una característica clave para identificar la energía rítmica de las canciones.

  • Razón para filtrar valores atípicos:

    • Coherencia musical: El rango típico de tempo para canciones musicales está entre 40 BPM y 240 BPM. Valores fuera de este rango son poco comunes y probablemente corresponden a errores en los datos o canciones no convencionales.

    • Impacto en el análisis: Valores extremos pueden sesgar los resultados del modelo de clustering, ya que el algoritmo podría interpretar estos valores como características significativas y agrupar canciones de manera incorrecta.

3.2.2 duration_ms (Duración de la canción en milisegundos)

  • Descripción: Representa la duración de la canción en milisegundos. Es una métrica importante para diferenciar canciones regulares de contenido más extenso, como mixes o podcasts.

  • Razón para filtrar valores atípicos:

    • Definición de canciones regulares: La mayoría de las canciones tienen una duración típica entre 1 minuto (60,000 ms) y 10 minutos (600,000 ms). Valores fuera de este rango probablemente corresponden a contenido no convencional, como mixes de música o podcasts.

    • Relevancia para el análisis: El objetivo del análisis es agrupar canciones individuales. Incluir valores extremos podría distorsionar los resultados y generar clústeres que no representen canciones regulares.

# Eliminar filas duplicadas

data_preparado <- data_preparado %>% distinct()

## Dimensiones después de la limpieza: 21925 filas y 16 columnas

3.3 Transformación de variables categoricas grandes

Conteo de valores únicos en variables categóricas
Variable Valores_Unicos
artist artist 5112
genre genre 15

En el análisis de clustering de canciones, se determinó que la variable artist, con 8,273 valores únicos, introduce ruido al modelo debido a su excesiva granularidad y falta de relación directa con las características acústicas. El nombre del artista no refleja necesariamente similitudes sonoras entre canciones, por lo que su inclusión no aporta valor al objetivo principal del análisis.

Además, considerar esta variable incrementa la complejidad computacional y eleva el riesgo de sobreajuste, ya que el modelo podría centrarse en patrones particulares de ciertos artistas en lugar de identificar similitudes acústicas generales. Por estas razones, se optó por eliminar la variable artist, con el fin de mejorar la eficiencia, precisión e interpretabilidad del modelo.

## Dimensiones después de la limpieza de artist: 21925 filas y 15 columnas

Si bien se decidió no incluir la variable genre como entrada en el modelo de clustering, esta se conservará en el conjunto de datos original debido a su importancia para la interpretación de los resultados. Al no participar en la formación de los clústeres, se garantiza que estos se construyan únicamente a partir de las características acústicas de las canciones. Sin embargo, mantener genre disponible permitirá, una vez aplicado el modelo, examinar cómo se distribuyen los distintos géneros dentro de cada clúster, aportando valor analítico al proceso.

3.4 Normalización de los datos

Antes de aplicar K-Means, es importante normalizar las variables numéricas para que todas tengan el mismo peso en el modelo.

4 Modelado

Para determinar la cantidad óptima de clústeres en el modelo de K-Means, se recomienda emplear una metodología basada en la búsqueda de hiperparámetros, que permita identificar el número de clústeres más adecuado para el conjunto de datos. Entre las técnicas más utilizadas para este propósito se encuentran el método del codo (Elbow Method), el índice de silueta (Silhouette Score) y el gap statistic. A continuación, se presenta un enfoque detallado para implementar esta búsqueda de manera efectiva.

4.1 Reducción de Dimensionalidad

Durante la implementación del algoritmo K-Means sobre el conjunto de datos, se presentó el mensaje de error “Quick-TRANSfer stage steps exceeded maximum”, el cual indica que el algoritmo tuvo dificultades para converger. Este problema suele estar asociado a una alta dimensionalidad del conjunto de datos o a la presencia de ruido en las variables, lo que puede dificultar que K-Means encuentre clústeres estables y bien definidos.

Para abordar esta situación, una solución adecuada es aplicar una técnica de reducción de dimensionalidad, como el Análisis de Componentes Principales (PCA), antes de ejecutar el modelo de clustering. PCA permite transformar el conjunto de datos original en un espacio de menor dimensión, conservando la mayor parte de la varianza de los datos. Esto no solo reduce la complejidad del problema, sino que también ayuda a eliminar el ruido, facilitando la convergencia del algoritmo y mejorando la calidad de los clústeres generados. Por lo tanto, se recomienda realizar una transformación con PCA como paso previo a la aplicación de K-Means.

## Proporción de varianza explicada por las primeras componentes principales:
##     PC1     PC2     PC3     PC4     PC5     PC6     PC7     PC8     PC9    PC10 
## 0.19436 0.12121 0.09042 0.08094 0.07584 0.07239 0.06616 0.06443 0.05936 0.05690 
##    PC11    PC12    PC13    PC14 
## 0.05406 0.02833 0.02424 0.01137
## Número de componentes principales seleccionados: 11

4.2 Aplicar K-Means sobre las componentes principales

4.2.1 El método del codo (Elbow Method)

El método del codo (Elbow Method) es una técnica ampliamente utilizada para determinar el número óptimo de clústeres en un modelo de K-Means. Este enfoque consiste en evaluar la suma de las distancias cuadradas dentro de los clústeres, también conocida como inercia o tot.withinss, para distintos valores de k (el número de clústeres). A medida que se incrementa el valor de k, la inercia disminuye, ya que los clústeres se vuelven más compactos. Sin embargo, llega un punto donde la reducción de la inercia comienza a estabilizarse, formando una especie de “codo” en la gráfica. Este punto de inflexión es considerado como el número óptimo de clústeres, ya que indica el valor de k en el que agregar más clústeres no proporciona mejoras significativas en la calidad del modelo.

En el gráfico generado mediante el Método del Codo, aplicado sobre los datos transformados con Análisis de Componentes Principales (PCA), se observa que la suma de distancias cuadradas dentro de los clústeres disminuye notablemente entre los valores de k = 2 y k = 4 o 5. A partir de ese punto, la reducción en la inercia se vuelve más gradual y lineal, lo que indica que agregar más clústeres no genera una mejora significativa en la calidad de la segmentación.

Con base en este análisis visual, se concluye que el número óptimo de clústeres es k = 4. Este valor representa el punto en el que se forma un “codo” claro en la curva, lo cual sugiere un equilibrio adecuado entre la simplicidad del modelo y su capacidad para capturar la estructura subyacente de los datos.

4.2.2 Creación de los clusters

## Distribución de canciones por clúster:
## 
##    1    2    3    4 
## 4056 7187 3556 7126

5 Evaluación

Para evaluar el desempeño de la transformación mediante PCA en el contexto del análisis, se pueden utilizar diversas métricas y enfoques que permiten interpretar en qué medida las componentes principales capturan la información más relevante del conjunto de datos. Además, es útil analizar cómo estas componentes se relacionan con la variable genre para comprender si la reducción de dimensionalidad preserva patrones asociados a los géneros musicales. A continuación, se presenta un enfoque detallado para realizar esta evaluación.

5.1 Varianza Explicada

Un primer paso en la evaluación del desempeño de PCA consiste en analizar la proporción de varianza explicada por las componentes principales. Esta métrica permite determinar cuánta información del conjunto de datos original es retenida tras la reducción de dimensionalidad. Al observar la varianza explicada acumulada, se puede identificar el número óptimo de componentes necesarios para conservar la mayor parte de la información relevante sin comprometer la eficiencia del modelo.

La gráfica de varianza explicada acumulada muestra que, al considerar las primeras 11 componentes principales, se alcanza aproximadamente el 90 % de la varianza total del conjunto de datos original. Esto indica que las componentes seleccionadas retienen la mayor parte de la información relevante, logrando una reducción efectiva de la dimensionalidad sin una pérdida significativa de datos. Por lo tanto, el uso de 11 componentes en el modelo es una decisión adecuada, ya que permite simplificar el espacio de características mientras se conserva un nivel alto de representación de la estructura original de los datos.

5.1.1 Relación entre PCA y genre

Aunque la variable genre no se utilizó en la construcción del modelo PCA, se analizó su distribución dentro del espacio reducido definido por las componentes principales. Este análisis permite evaluar si el modelo logró identificar patrones subyacentes que diferencian los géneros musicales. La presencia de agrupaciones claras por género en este espacio sugiere que las componentes principales capturan información relevante para la clasificación musical, lo que refuerza la utilidad de la representación reducida en etapas posteriores del análisis.

5.2 Distrubución de géneros pos cluster

Distribución de Géneros por Clúster
cluster genre cantidad
1 Electronic 1607
1 Rock 1357
1 Metal 611
1 Jazz 120
1 Pop 68
1 Rap 64
1 New Age 45
1 RnB 43
1 Reggae 37
1 Punk 28
1 Country 22
1 Folk 18
1 World 17
1 Blues 15
1 Latin 4
2 Rock 3166
2 Electronic 897
2 Pop 578
2 Rap 519
2 Reggae 472
2 RnB 436
2 Country 318
2 Jazz 238
2 Metal 166
2 Punk 96
2 Blues 88
2 Folk 84
2 Latin 60
2 World 57
2 New Age 12
3 Rock 1470
3 Electronic 581
3 Jazz 302
3 Folk 208
3 Pop 204
3 New Age 159
3 Country 142
3 Metal 131
3 RnB 108
3 World 53
3 Blues 52
3 Reggae 51
3 Rap 49
3 Latin 23
3 Punk 23
4 Rock 3802
4 Metal 1518
4 Electronic 528
4 Pop 290
4 Punk 227
4 Rap 176
4 Country 123
4 Reggae 123
4 Jazz 121
4 RnB 104
4 Folk 42
4 Blues 32
4 New Age 19
4 Latin 11
4 World 10

El análisis de la distribución de géneros por clúster nos permite evaluar qué tan bien el modelo de K-Means, aplicado sobre las componentes principales (PCA), agrupa canciones de géneros similares. A continuación, se realiza un análisis detallado:

5.2.1 Observaciones Generales

5.2.1.1 Clúster 1:

  • Contiene 1607 canciones de Electronic y 1357 canciones de Rock, que son los géneros predominantes.

  • Géneros secundarios incluyen Metal (611 canciones) y Jazz (120 canciones).

  • Otros géneros como Pop, Rap, New Age, RnB, Reggae, Punk, Country, Folk, World, Blues y Latin tienen una representación menor.

5.2.1.2 Clúster 2:

  • Es el clúster más grande, con 3166 canciones de Rock y 897 canciones de Electronic.

  • También tiene una representación significativa de Pop (578 canciones), Rap (519 canciones) y Reggae (472 canciones).

  • Géneros secundarios incluyen RnB, Country, Jazz y Metal.

5.2.1.3 Clúster 3:

  • Contiene 1470 canciones de Rock y 581 canciones de Electronic.

  • Géneros secundarios incluyen Jazz (302 canciones), Folk (208 canciones) y Pop (204 canciones).

  • Otros géneros como New Age, Country, Metal y RnB tienen una representación moderada.

5.2.1.4 Clúster 4:

  • Contiene 3802 canciones de Rock y 1518 canciones de Metal, que son los géneros predominantes.

  • Géneros secundarios incluyen Electronic (528 canciones), Pop (290 canciones) y Punk (227 canciones).

  • Otros géneros como Rap, Country, Reggae y Jazz tienen una representación menor.

5.2.2 Evaluación del Modelo por Género

El modelo de K-Means parece agrupar géneros similares en algunos casos, pero también presenta limitaciones en otros. A continuación, se analiza cada género:

5.2.2.1 Rock

  • Distribución:

    • Clúster 2: 3166 canciones.

    • Clúster 4: 3802 canciones.

    • Clúster 3: 1470 canciones.

    • Clúster 1: 1357 canciones.

  • Análisis:

    • El género Rock está disperso en todos los clústeres, pero tiene una fuerte representación en los clústeres 2 y 4.

    • Esto sugiere que las características acústicas del Rock son diversas, lo que dificulta su agrupamiento en un solo clúster.

5.2.2.2 Electronic

  • Distribución:

    • Clúster 1: 1607 canciones.

    • Clúster 2: 897 canciones.

    • Clúster 3: 581 canciones.

    • Clúster 4: 528 canciones.

  • Análisis:

    • El género Electronic está disperso, pero tiene una mayor representación en el clúster 1.

    • Esto podría deberse a que las características acústicas del género se solapan con otros géneros como Pop y Rock.

5.2.2.3 Metal

  • Distribución:

    • Clúster 4: 1518 canciones.

    • Clúster 1: 611 canciones.

    • Clúster 2: 166 canciones.

    • Clúster 3: 131 canciones.

  • Análisis:

    • El género Metal está mejor agrupado en el clúster 4, lo que indica que sus características acústicas (alta energía y volumen) son más consistentes y distintivas.

5.2.2.4 Jazz

  • Distribución:

    • Clúster 1: 120 canciones.

    • Clúster 2: 238 canciones.

    • Clúster 3: 302 canciones.

    • Clúster 4: 121 canciones.

  • Análisis:

    • El género Jazz está disperso en todos los clústeres, lo que indica que sus características acústicas no son lo suficientemente distintivas para ser agrupadas en un solo clúster.

5.2.2.5 Pop

  • Distribución:

    • Clúster 2: 578 canciones.

    • Clúster 3: 204 canciones.

    • Clúster 4: 290 canciones.

    • Clúster 1: 68 canciones.

  • Análisis:

    • El género Pop está disperso, pero tiene una mayor representación en el clúster 2.

    • Esto podría deberse a que las características acústicas del Pop son más genéricas y se solapan con otros géneros.

5.2.2.6 Géneros Menores (Reggae, RnB, Folk, etc.)

  • Distribución:

    • Estos géneros tienen una representación menor en todos los clústeres.

    • Por ejemplo, Reggae tiene 472 canciones en el clúster 2, pero solo 37 en el clúster 1.

    • Folk tiene 208 canciones en el clúster 3, pero solo 18 en el clúster 1.

  • Análisis:

    • Los géneros menores están dispersos, lo que indica que el modelo no logra capturar completamente sus características distintivas.

5.2.3 Limitaciones del Modelo

  • Dispersión de Géneros:

    • Géneros como Rock, Electronic y Jazz están dispersos en múltiples clústeres, lo que sugiere que las características acústicas utilizadas no son lo suficientemente específicas para agrupar canciones de un mismo género.
  • Solapamiento de Características:

    • Géneros como Pop y Electronic tienen características acústicas que se solapan, lo que dificulta su agrupamiento en clústeres separados.
  • Representación de Géneros Menores:

    • Géneros con menos canciones (como Folk, Blues o Latin) no están bien representados en los clústeres, lo que podría deberse a su baja frecuencia en el conjunto de datos.

5.2.4 Fortalezas del Modelo

  • Agrupamiento de Metal:

    • El género Metal está bien representado en el clúster 4, lo que indica que el modelo captura bien sus características distintivas.
  • Identificación de Clústeres Grandes:

    • El modelo identifica clústeres grandes (como el clúster 2), que agrupan géneros con características acústicas más genéricas.

5.2.5 Recomendaciones para Mejorar el Modelo

  1. Incluir Más Características Acústicas:

    • Agregar características adicionales, como patrones rítmicos o análisis espectrales, podría ayudar a diferenciar mejor los géneros.
  2. Ajustar el Número de Clústeres:

    • Probar con un mayor número de clústeres (por ejemplo, 6 o 8) podría permitir una segmentación más fina de los géneros.
  3. Filtrar Géneros Menores:

    • Excluir géneros con muy pocas canciones (como Latin o World) para evitar que distorsionen los resultados.

5.3 Conclusión

El modelo de K-Means aplicado sobre PCA tiene un desempeño moderado para agrupar canciones por género. Aunque logra agrupar bien géneros como Metal, presenta limitaciones para géneros más diversos como Rock, Electronic y Jazz. La eliminación de canciones sin género mejora la calidad del análisis, pero aún hay espacio para optimizar el modelo mediante ajustes en las características acústicas y el número de clústeres.