Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Marta Buesa_MachineLearningProject_febrero2022

Avatar for TukiBuesa TukiBuesa
February 18, 2022

Marta Buesa_MachineLearningProject_febrero2022

Avatar for TukiBuesa

TukiBuesa

February 18, 2022

More Decks by TukiBuesa

Other Decks in Technology

Transcript

  1. Clasificador de canciones: Predicción del género musical Proyecto de Machine

    & Deep Learning Data Science Bootcamp Alternative | Anime | Blues | Classical | Country | Electronic | Hip-Hop | Jazz | Rap | Rock By Marta Buesa Suárez de Puga | Febrero 2022
  2. Indice 01 Exploratory Data Analysis, Data Wranling & Feature Engineering

    Algoritmos de Machine & Deep Learning 03 Key Findings Conclusiones 04 02 Objetivo del Análisis Punto partida Data Science Bootcamp Estudio desarrollado por Marta Buesa
  3. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp Detectar el género musical de una canción puede ser relativamente fácil si nos dicen el autor, dado que en general suelen clasificarse dentro de un mismo género musical... ¿Si o No? Clásica Rap o Hip-Hop Anime Rock o Alternative Wolfgang Amadeus Mozart Eminem Nobuo Uematsu Coldplay Estudio desarrollado por Marta 01 Punto partida 4
  4. Y si se quiere clasificar una canción sin conocer el

    autor, ya empieza a ser más difícil. Quizás para quienes tienen conocimientos y cultura musical o a quienes les gusta mucho la música pudieran tener una idea del género al que pertenezca una canción al escucharla... Alternative | Anime | Blues | Classical | Country | Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 01 Punto partida Estudio desarrollado por Marta Buesa Y es que hoy día existen muchos géneros mixtos y subgéneros derivados de otros conocidos. Para ello, punto de partida: BBDD con características de las canciones. 1
  5. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp Objetivo: OBTENER UN CLASIFICADOR del género musical atendiendo a criterios específicamente musicales de una canción como pueden ser la escala musical, el tempo, su ritmo, instrumentación, armonía... 01 Punto partida Estudio desarrollado por Marta Buesa
  6. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp Para ello, se ha tomado una BBDD de canciones extraídas de Spotify. 02 Exploratory Data Analysis 50000 canciones 18 columnas 10 géneros musicales CSV fuente: https://www.kaggle.com/vicsuperman/prediction-of-music-genre Estudio desarrollado por Marta Buesa categóricas 39% numéricas 61%
  7. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Train / Test split Estudio desarrollado por Marta Buesa Train Test Train Entrenar datos TEST Comprobar si modelos predicen bien Registros suficientes
  8. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Features (17 variables) • instance_id • artist_name • track_name • popularity • acousticness • danceability • duration_ms • energy • instrumentalness • key • liveness • loudness • mode • speechiness • tempo • obtained_date • valence géneros musicales 10 TARGET Estudio desarrollado por Marta Buesa
  9. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis TRAIN: features Variables con outliers Tratamiento var. categóricas Data Wranling y Feature Engineering Estudio desarrollado por Marta Buesa 9
  10. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis TRAIN: FEATURES ARTISTA Se detecta un 5% de las canciones sin artista. También artistas con canciones en diferentes géneros. Se aísla columna artista Estudio desarrollado por Marta Buesa
  11. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Bien balanceado el target TARGET Estudio desarrollado por Marta Buesa Encoding con LabelEncoder
  12. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis MATRIZ CORRELACIÓn Mejores correlaciones con: • Popularity 0.8 • Loudness 0.69 • Energy 0.68 • Accousticness 0.67 • Danceability 0.65 Existe colinealidad entre 3 features Estudio desarrollado por Marta Buesa Feature Engineering
  13. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Genero musical vs. POPULARIDAD Mayor popularidad, Rap, Rock y HipHop, tienen el 50% de las canciones concentradas en la misma popularidad y una mediana muy similar Estudio desarrollado por Marta Buesa puntuaciones asignadas a las canciones
  14. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Genero musical vs. Loudness Perfiles de los géneros musicales muy parecidos, sólo se diferencia en mayor medida clásica Estudio desarrollado por Marta Buesa representa el volumen de la canción
  15. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Genero musical vs. ACÚSTICA Estudio desarrollado por Marta Buesa describe qué tan acústica es una canción. Música clásica concentra los mayores valores de acústica, dado que la base de su sonoridad está en los instrumentos musicales tradicionales. Diferencia clara del resto. Y 3 géneros, Blues, Anime y Jazz, donde destaca la dispersión en acústica de sus canciones
  16. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Genero musical vs. INSTRUMENTALIZACIÖM Estudio desarrollado por Marta Buesa A pesar de que en todos los génros hay una gran dispersión, si se ve claramente como géneros con mayor instrumentalización la música clásica, electrónica, anime y jazz.
  17. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 02 Exploratory Data Analysis Genero musical vs. SPEechiness Estudio desarrollado por Marta Buesa Rap y Hip-hop tienen una forma muy parecida de nuevo, por su similitud en tener una mayor presencia de palabras habladas en sus canciones. Además en ambos géneros hay una mayor dispersión respecto al resto de géneros. detecta la presencia de palabras habladas en una pista.
  18. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 03 Machine & Deep Learning ApreNdizaje supervisado Estudio desarrollado por Marta Buesa 1. 2. 4. 3. Logistic Regresion Parámetros: multi_class='multinomial' Decision Tree -> con Grid Search Parámetros: max_depth=10, min_samples_leaf=1 SVM – Support Vector Machine Parámetros: op.1 C=1 / Op.2 C=100 Ensemble: Random Forest, Logistic Regresion & SVM Parámetros: LR(multi_class='multinomial') / RF(n_estimators=100) / SVM(gamma= 'scale', probability= True) 5. Random Forest -> con Grid Search Parámetros: Op.1 max_depth= 7,n_estimators=300, max_features= 4 / Op.2 max_depth= 15,n_estimators=35, min_samples_leaf=4 / Op.3 max_depth= 11, n_estimators=100, min_samples_leaf = 3 6. Adaptive Boosting Parámetros: DecisionTreeClassifier(max_depth=1), n_estimators=200, algorithm='SAMME.R', learning_rate=0.5 7. Gradient Boosting Parámetros: learning_rate= 0.3, n_estimators= 100, max_features= 4 8. Extreme Gradient Boosting n_estimators=100, use_label_encoder=False, eval_metric = 'logloss' Algoritmos de clasificación
  19. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 03 Machine & Deep Learning Estudio desarrollado por Marta Buesa 1. 2. 4. 3. Métrica Accuracy: target bien balanceado Logistic Regresion Decision Tree SVM – Support Vector Machine Ensemble: Random Forest, Logistic Regresion & SVM 5. Random Forest 6. Adaptive Boosting 7. Gradient Boosting 8. Extreme Gradient Boosting 0.5198 0.5116 0.5855 0.4882 0.4888 0.4817 0.8292 0.5337 0.7642 0.5559 0.5128 0.4962 0.6626 0.5582 0.8155 0.5566 ACC Train ACC Test ACC Train ACC Test Ensembles Algoritmos ApreNdizaje supervisado
  20. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 03 Machine & Deep Learning Estudio desarrollado por Marta Buesa Gradient Boosting 0.6626 0.5582 ApreNdizaje supervisado ACC Train ACC Test Zoom clasificación géneros musicales: • El género 1, 3 y 9 (Anime, Clásica y Rock) son los que mejor predicen todos los modelos, entre un 0.7 y un 0.85 de accuracy. • Se observa también la confusión a la hora de predecir, entre los géneros 6 y 8, que son Hip-hop y rap 5 Electronic 6 HipHop 7 Jazz 8 Rap 9 Rock 0 Alternative 1 Anime 2 Blues 3 Classical 4 Country
  21. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 03 Machine & Deep Learning Algoritmos supervisados Estudio desarrollado por Marta Buesa • A pesar de haber probado distintos modelos muy buenos y que podían haber dado buenos resultados, no se consigue incrementar el máximo Accuracy obtenido de 0.55 en Test. • Se ha intentado, mejorarlos mediante Feature Engenieering, sin conseguir reducir los errores obtenidos en los modelos 1. Valores atípicos/ extremos en variables que tenían una distribución con sesgos a derecha o izquierda. 2. Escalados logarítmicos y BoxCox 3. Trabajar de nuevo modelos quitando 2 de las 3 variables entre las que existía correlación para evitar la colinealidad
  22. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 03 Machine & Deep Learning RED NEURONAL Deep learning Estudio desarrollado por Marta Buesa Métrica Accuracy: target bien balanceado MultiLayer Perceptron Classifier Opción 1: Parámetros: max_iter=500 Por defecto pasa la función de activación 'relu' y optimizador 'adam' a utilizar para el cálculo del mínimo de la función de coste y Opción 2: Parámetros: max_iter=500, activation='relu’, solver='sgd’, hidden_layer_sizes = (150, 100) Distinto optimizador 'descenso de gradiente estocástico', e incluyo 2 capas de 150 y 100 neuronas Opción 3: Parámetros: max_iter=500, activation='tanh', solver='sgd’, hidden_layer_sizes = (150, 100) Cambio función de activación a la tangente hiperbólica, con el descenso de gradiente estocástico y de nuevo 2 capas de neuronas 0.6237 ACC Train ACC Test 0.5758 0.6445 ACC Train ACC Test 0.5741 0.6239 ACC Train ACC Test 0.5811
  23. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp 03 Machine & Deep Learning RED NEURONAL Deep learning Estudio desarrollado por Marta Buesa Aunque la Red Neuronal incrementa el scoring del Accuracy llegando a un 0.5811, no es suficiente. ¿Por qué? Ahora mismo con estos datos son insuficientes para poder clasificar bien los 10 géneros musicales. En cambio hay otros géneros muy confusos, dado que sus características se parecen mucho y la información contenida no permite diferenciarlas. Como veíamos en la relación del target con las features, hay ciertos géneros que si son más fácilmente identificables por tener características diferenciales respecto al resto.
  24. Alternative | Anime | Blues | Classical | Country |

    Electronic | Hip-Hop | Jazz | Rap | Rock Data Science Bootcamp Conseguir más datos, en este caso particular ya contaba con 50000 registros para el estudio Conseguir más features, variables descriptivas que puedan predecir mejor los distintos géneros musicales Si no se pudiera obtener más información, redefinir los géneros musicales a predecir, posiblemente re-agrupando aquellos que tienen unas características similares, para permitir a los modelos una predicción más certera 01 02 03 04 Conclusiones Para mejorar los resultados en la predicción del género musical y obtener una clasificación óptima, las posibles soluciones pasarían por: Estudio desarrollado por Marta Buesa Mi propuesta, mientras no tuviese más información, pasa por aplicar un algoritmo de aprendizaje NO supervisado y visualizar como se agruparían los registros, en torno a que centroides y así visualizar que géneros serían mas relevantes con esta BBDD.
  25. Estudio desarrollado por Marta Buesa Data Science Bootcamp Alternative |

    Anime | Blues | Classical | Country | Electronic | Hip-Hop | Jazz | Rap | Rock ¿Alguna pregunta en el aire? Puedes contactarme en LinkedIn ¡¡Muchas gracias!! Autora: Marta Buesa Febrero 2022