Comparación de escenas de rap ruso utilizando técnicas de R y minería de texto. Noize Mc y Kasta vs Faraón y Morgenshtern

R. Minería de texto. Rap


La popularidad de muchos artistas de rap contemporáneos sigue siendo un misterio para mí y para otros seguidores de la "vieja escuela". Debates constantes sobre quién es mejor, cuyas letras son más interesantes, cuya música más diversa ocupa las mentes de muchos usuarios de Internet. Para confirmar estas disputas, no solo con palabras, sino con hechos, analicé los textos de cuatro artistas de rap rusos, usando el lenguaje de programación R.

Algunos de ellos fueron increíblemente populares a principios de la década de 2000. Ahora todos ellos también atraen a sus oyentes, pero, desafortunadamente, cada vez son menos. Y dos están ahora en la cima de su popularidad y atraen a un público extenso y mayormente joven. Y mi análisis posterior mostrará que, dado el vocabulario que usan, este hecho no causa alegría. Para saber quién es quién será bastante simple, porque los artistas cuyas canciones usé son: Caste, Noize-Mc, Pharaoh y Morgenstern. Creo que todos entienden que remitiré a Caste and Noise a la "vieja escuela", ya Faraón y Morgenstern a la "nueva".

Álbumes de análisis


Para el análisis, seleccioné todos los álbumes oficiales del estudio lanzados por los artistas (la información sobre los álbumes fue tomada del sitio www.wikipedia.com , toda la literatura está al final):

  1. Kasta: "Más fuerte que el agua, más alto que la hierba"; "Un destello en el ojo"; "Gritos de cuatro cabezas"; "Está claro acerca de la falla" - 74 pistas.
  2. Noize Mc: “The Greatest Hits vol. 1 "; "Último álbum"; "Nuevo album"; "Protivo Gunz"; "Confusión"; "Hard Reboot 3.0"; "Rey de la colina"; "Hiphopera: Orpheus & Eurydice" - 160 pistas.
  3. Faraón: "El Wadget"; Phlora "Dolor"; Fósforo "Pink Phloyd"; Phuneral "Regla" - 95 pistas.
  4. Morgenshtern: "Antes de que se conozca"; "¡Sonríe, tonto!"; "Polvo legendario" - 30 pistas.

Seleccioné especialmente a los artistas antes mencionados, ya que incluso aquellos que están un poco familiarizados con su trabajo estarán de acuerdo en que los textos son muy diferentes (Casta + Ruido vs Faraón + Morgenstern) y será interesante compararlos entre sí. Surge una pregunta lógica: ¿cómo se puede comparar objetiva y correctamente los cuatro álbumes de Caste y los ocho álbumes de Pharaoh? Todo es muy simple: después de algunas manipulaciones, que analizaré más adelante, el volumen de palabras se volverá más o menos comparable. Después de todo, como todos saben, la cantidad no es igual a la calidad.
Para recopilar las palabras, utilicé el sitio web genius.com y su API. Afortunadamente, los desarrolladores del servicio proporcionan una interfaz de programación de aplicaciones (API) abierta que facilita la extracción de letras (por artista, álbum) de la base de datos para su posterior análisis.

Todos los análisis se realizaron utilizando el lenguaje de programación R, además de la derivación (el proceso de encontrar la base de palabras para una palabra fuente determinada) se usó python, porque no podía hacer frente a la codificación en R y el programa mystem (a Windows 10 no le gusta ser amigo de UTF-8 y R, dicen que usando un sistema operativo Apple o Linux, tales problemas no surgen).

Antes de procesar. Explorar textos. El recuento de palabras


Para descargar la letra se utilizó la biblioteca "genio". La función de este paquete "genius_album" le permite descargar fácilmente todos los textos de los álbumes a la vez. Tenga cuidado y vuelva a verificar, ya que no todas las letras están siempre disponibles para todos los artistas, algunas de ellas tuvieron que agregarse manualmente. Después de la descarga, se volvió interesante cuántas palabras se usan en las canciones como un todo (junto con pronombres, preposiciones, partículas, etc.). Luego comparamos estas cifras con los resultados de palabras derivadas y de detención ya procesados. Para facilitar la comprensión de la relación entre la cantidad de álbumes y pistas y la cantidad de palabras utilizadas, duplicaré esta información una vez más:

  1. Noize Mc - 8 álbumes, 160 pistas.
  2. Casta - 4 álbumes, 74 pistas.
  3. Faraón - 7 álbumes, 95 pistas.
  4. Morgenstern - 3 álbumes, 30 pistas.

imagen

Curiosamente, Pharaoh y Noise tienen casi el mismo número de álbumes (siete y ocho, respectivamente), pero, como se puede ver en el gráfico, la calidad de los álbumes es muy diferente tanto en el número de canciones como en la riqueza del vocabulario (57962 vs 24184).

Para minimizar esta diferencia y hacer que la comparación sea más correcta y correcta, se calculó cuántas palabras usa un artista promedio en una de sus canciones:

  1. Noize Mc - 362 palabras.
  2. Casta - 388 palabras.
  3. Faraón - 254 palabras.
  4. Morgenstern - 273 palabras

Está claro que tal comparación es condicional y bastante aproximada, pero las cifras hablan por sí mismas.

Y así es como se ven las 10 palabras principales de cada artista y el número de referencias a estas palabras:

imagen

imagen

como cabría esperar, sin procesar las "palabras principales" son preposiciones, pronombres y conjunciones que no reflejan ningún resultado y no llevan ninguna carga semántica especial. Por lo tanto, en esta etapa, no sucedió nada interesante o inesperado.

El siguiente paso fue el procesamiento y preparación de textos para su análisis. El proceso de derivación se realizó utilizando el programa mystem de Yandex en Python, que está disponible para todos. Este paso se tomó para comprender cuántas palabras únicas usan los artistas y qué tan ampliamente usan el idioma ruso en sus textos. Después de todo, sería un error contar la misma palabra en diferentes casos varias veces. Esto muestra la variabilidad y la capacidad de persuasión del cantante, en lugar de la amplitud de su vocabulario.

Además, para obtener un resultado más representativo, es necesario deshacerse de las palabras vacías que no llevan carga semántica y emocional (preposiciones, pronombres, partículas, etc.). Desafortunadamente, no hay buenas bibliotecas en paquetes R que contengan palabras de detención para el idioma ruso. Quiero llamar su atención sobre el hecho de que el autor mismo debe determinar si esta o aquella palabra es una palabra de parada y si debe eliminarse. Siempre revise cuidadosamente este tipo de diccionarios para no descartar la palabra correcta y útil para usted. El paquete de palabras clave admite bastantes idiomas, pero preferí usar palabras de un recurso externo con mi propio refinamiento.

Después de procesar


Como puede ver en el gráfico, el número de palabras ha disminuido significativamente después de estampar y eliminar palabras de detención. Esto no es sorprendente dado que casi todas las palabras originales más populares se han detenido.

imagen

En general, el número de palabras que quedaron después de estampar y eliminar palabras de detención, como porcentaje del número inicial, es prácticamente igual para todos. Vale la pena señalar que son iguales en grupos. En la "vieja escuela" es del 55-58%, en la "nueva" 46-50%.
La información muy importante e interesante es la cantidad de palabras únicas que tiene cada artista. Para Noise, son 8891 palabras, para Caste 5307, para Pharaoh 3899 y para Morgenstern 1242. Quien quiera ampliar un poco su vocabulario, pero no quiera leer libros, puede escuchar a Noize Mc y Caste.

Por supuesto, muchos están interesados ​​en qué palabras están liderando ahora, después del procesamiento. Presento gráficos con las 10 palabras principales para cada artista:

imagen

imagen

seguramente, muchos de los lectores se sorprendieron con palabras con asteriscos. Faraón y Morgenstern realmente tienen mucha blasfemia en los textos, lo que, en mi opinión personal, tiene un efecto bastante negativo en la estructura completa del texto y su percepción. Estos dos artistas tienen la misma palabra en la segunda posición. Una palabra que demuestra perfectamente el espíritu y la cultura de su música. Un poco más tarde, demostraré claramente qué tipo de tono emocional conduce a las letras de los artistas.

Palabras comunes. Comparación de palabras


Para hacer que la información sea más visual, puse todas las palabras de los artistas intérpretes o ejecutantes en un gráfico usando la función "compare.cloud" del paquete "wordcloud" para esto, es más fácil compararlos y percibirlos (y de nuevo podemos ver cómo se destacan los tapetes). Mostrar palabras con gráficos de barras puede ser bastante problemático, ya que con más de ellas, se requiere mucho espacio. También una buena función del paquete del mismo nombre es "wordcloud2": cuando pasa el cursor sobre una palabra, aparece una ventana que muestra la frecuencia de su uso.

imagen

Dado que los artistas usan el mismo idioma para escribir sus canciones, será interesante ver, sin dividirse en artistas, qué palabras usan con mayor frecuencia. La función commonality.cloud del paquete wordcloud se utilizó para este gráfico. El tamaño de fuente corresponde a la frecuencia de mencionar la palabra en los textos.

imagen

Análisis de texto sentimental


Cada película, libro o canción tiene su propio estado de ánimo, que se transmite a la audiencia u oyentes y los afecta. Es interesante ver qué humor transmiten los artistas de las viejas y nuevas escuelas a sus alumnos. Puede averiguarlo analizando las palabras de qué categoría: "Negativo", "Positivo", "Neutral" prevalecen en las canciones de los músicos. Como se esperaba, para el idioma ruso no existe un diccionario de muy buena calidad con análisis sentimentales de palabras para R (si alguien lo sabe, por favor comparta). Por lo tanto, tuve que usar el externo con mi actualización (enlace al diccionario al final del texto).

No todas las palabras tenían correspondencias en el diccionario, lo cual, por supuesto, es un poco triste, con el idioma inglés estos problemas prácticamente no surgen. Por lo tanto, decidí mostrar el color emocional de las palabras que se repiten con más frecuencia. Son estas palabras las que el oyente escucha con mayor frecuencia, y son ellas las que tienen el efecto más poderoso sobre él y determinan la percepción de toda la canción. En general, si el lector está un poco familiarizado con el trabajo de todos los autores, es poco probable que se sorprenda. Bueno, si para alguien los nombres analizados son nuevos, bienvenido, familiarícese con su trabajo. A continuación puedes ver los gráficos. Para todos los artistas, se muestran las palabras más utilizadas.

Morgenstern. La tasa de repetición de una palabra es más de 10 veces. El abundante número de columnas rojas se destaca con bastante fuerza, y si observa cuáles son estas palabras, se vuelve doblemente triste por el mensaje que este artista lleva a su audiencia.

imagen

Faraón . El léxico también deja mucho que desear. Frecuencia más de 20 veces.

imagen

El siguiente es el momento para los veteranos de la escena del rap ruso. Aquellos para quienes realmente no es una pena, y pueden ser recomendados para escuchar.

Castas . Brillante predominio de palabras con una connotación positiva. Y las palabras negativas no son impactantes con su inmoralidad. Frecuencia> = 25

imagen

Y finalmente, la rima maestra y las palabras Noize Mc (frecuencia> = 30).

imagen

La abundancia de vocabulario de colores negativos, que Morgenstern y Faraón usan en sus canciones, afecta la percepción de sus canciones y el estado de ánimo que transmiten. Es difícil obtener emociones agradables de la música cuando hace todo lo posible para forzarte a hacer lo contrario.
Dado que el diccionario utilizado con análisis sentimental no contiene todas las palabras, es difícil sacar una conclusión 100% segura sobre el estado de ánimo de las canciones de los artistas, ya que mucho depende también del contexto. Sin embargo, le mostraré cuántas y qué palabras usan los artistas (de lo que lograron adjuntar).

imagen

Obviamente, la mayoría de las palabras de todos los artistas tienen un tono neutral, que prácticamente no afecta al oyente. Pero, curiosamente, Faraón y Morgenstern usan más palabras con una connotación negativa que con una positiva. Y esto, a pesar de la inferioridad del diccionario y la ausencia de muchas palabras obscenas y sus variaciones (el diccionario contiene 28,248 palabras y tuve que agregar algunas manualmente).

imagen

La casta y el ruido Ms también están dirigidos por palabras neutrales, pero en segundo lugar son las positivas que no nos causan emociones negativas.

Sí, por supuesto, no puedo evaluar la influencia del contexto en este tipo de análisis y, por ejemplo, la palabra "amor" se puede usar con la partícula "no" y tiene una connotación negativa. Pero debes admitir que la frase "No te amo" es más agradable que la frase "Te odio". Y lo negativo de esta frase no será corregido ni siquiera por la partícula "no". De todos modos, solo escucharemos la palabra "Odio".

El gusto musical es un asunto individual y todos deciden qué escuchar. Pero eche otro vistazo a los cuadros y piense cómo quiere llenar su vida cotidiana. La música nos acompaña a todas partes y a menudo afecta mucho nuestro estado de ánimo, entonces, ¿por qué empeorarlo conscientemente cada día?

En general, este artículo también trata sobre el hecho de que la programación puede ser interesante y puede aplicarse en varios campos. Puede mostrar información ya familiar desde un nuevo ángulo, hacerte pensar en lo que parecía obvio o insignificante. Depende solo de usted lo que estará oculto detrás de las líneas de código y lo interesante que contarán.

Aprenda lenguajes de programación, desarrolle y escuche música de calidad para escribir que lleva más de siete días de tiempo en línea en YouTube. Para aquellos que no lo saben, el álbum "Legendary Dust" de Morgenstern se grabó 6 días durante las transmisiones en línea en YouTube y, como resultado, se convirtió en el más exitoso en la carrera de Morgenstern, ganando VKontakte un millón de reproducciones en la primera media hora de lanzamiento y cinco millones de reproducciones en once horas. En los primeros dos días después del lanzamiento, VKontakte escuchó el álbum más de 21 millones de veces, lo que es un récord para una red social.

Lista de literatura utilizada:

1. ru.wikipedia.org/wiki/Noize_MC
2. ru.wikipedia.org/wiki/Pharaoh
3. ru.wikipedia.org/wiki/Casta_ (grupo)
4.ru.wikipedia.org/wiki/Morgenstern_ (músico)
5. github.com/stopwords-iso/stopwords-ru/blob/master/stopwords-ru.txt (palabras vacías )
6. github.com/dkulagin/kartaslov/ tree / master / dataset / emo_dict (diccionario de sentimientos).
Licencia: creativecommons.org/licenses/by-nc-sa/4.0
7. ru.wikipedia.org/wiki/Legendary_Dust

All Articles