Introducción
Imagine un mundo en el que las máquinas comprendan lo que quiere y cómo se siente cuando llama al servicio de atención al cliente; si no está satisfecho con algo, habla con una persona rápidamente. Si está buscando una información específica, es factible que no necesite hablar con una persona (¡a menos que lo desee!).
Este va a ser el nuevo orden del mundo; ya se puede ver que esto está sucediendo en buena medidaLa "medida" es un concepto fundamental en diversas disciplinas, que se refiere al proceso de cuantificar características o magnitudes de objetos, fenómenos o situaciones. En matemáticas, se utiliza para determinar longitudes, áreas y volúmenes, mientras que en ciencias sociales puede referirse a la evaluación de variables cualitativas y cuantitativas. La precisión en la medición es crucial para obtener resultados confiables y válidos en cualquier investigación o aplicación práctica..... Consulte los aspectos más destacados de 2017 en la industria de la ciencia de datos. Puede ver los avances que el aprendizaje profundoEl aprendizaje profundo, una subdisciplina de la inteligencia artificial, se basa en redes neuronales artificiales para analizar y procesar grandes volúmenes de datos. Esta técnica permite a las máquinas aprender patrones y realizar tareas complejas, como el reconocimiento de voz y la visión por computadora. Su capacidad para mejorar continuamente a medida que se le proporcionan más datos la convierte en una herramienta clave en diversas industrias, desde la salud... estaba aportando en un campo que antes era difícil de solucionar. Uno de esos campos que el aprendizaje profundo tiene el potencial de ayudar a solucionar es el procesamiento de audio / voz, especialmente debido a su naturaleza no estructurada y gran impacto.
Entonces, para los curiosos, he compilado una lista de tareas que es importante destacar ensuciarse las manos al comenzar en el procesamiento de audio. Estoy seguro de que habrá algunos avances más en el futuro usando Deep Learning.
El post está estructurado para explicar cada tarea y su relevancia. Además hay un documento de investigación que incluye los detalles de esa tarea específica, junto con un estudio de caso que lo ayudaría a comenzar a solucionar la tarea.
¡Por lo tanto comencemos!
1. Clasificación de audio
La clasificación de audio es un obstáculo fundamental en el campo del procesamiento de audio. La tarea es esencialmente extraer características del audio y posteriormente identificar a qué clase pertenece el audio. Se pueden hallar muchas aplicaciones útiles asociadas con la clasificación de audio en la naturaleza, como la clasificación de géneros, el acreditación de instrumentos y la identificación de artistas.
Esta tarea además es el tema más explorado en el procesamiento de audio. Se publicaron muchos posts en este campo en el último año. En realidad, además hemos alojado un practicar hackathon para la colaboración de la comunidad para solucionar esta tarea en particular.
Papel blanco – http://ieeexplore.ieee.org/document/5664796/?reload=true
Un enfoque común para solucionar una tarea de clasificación de audio es preprocesar las entradas de audio para extraer características útiles y posteriormente aplicarle un algoritmo de clasificación. A modo de ejemplo, en el estudio de caso a continuación, se nos da un extractoEl extracto es una sustancia obtenida mediante la concentración de compuestos de origen vegetal, animal o mineral. Se utiliza en diversas aplicaciones, como la industria alimentaria, farmacéutica y cosmética. Los extractos pueden presentarse en forma líquida, en polvo o como tinturas, y su producción implica técnicas como la maceración, la destilación o la extracción con solventes. Su uso permite aprovechar las propiedades beneficiosas de los ingredientes originales de manera más... de 5 segundos de un sonido, y la tarea es identificar a qué clase pertenece, ya sea un perro ladrando o un sonido de perforación. Como se menciona en el post, un enfoque para lidiar con esto es extraer una característica de audio llamada MFCC y posteriormente pasarla por medio de una red neuronalLas redes neuronales son modelos computacionales inspirados en el funcionamiento del cerebro humano. Utilizan estructuras conocidas como neuronas artificiales para procesar y aprender de los datos. Estas redes son fundamentales en el campo de la inteligencia artificial, permitiendo avances significativos en tareas como el reconocimiento de imágenes, el procesamiento del lenguaje natural y la predicción de series temporales, entre otros. Su capacidad para aprender patrones complejos las hace herramientas poderosas... para obtener la clase apropiada.
Caso de estudio – https://www.analyticsvidhya.com/blog/2017/08/audio-voice-processing-deep-learning/
2. Huellas digitales de audio
El objetivo de la toma de huellas digitales de audio es determinar el «resumen» digital del audio. Esto se hace para identificar el audio de una muestra de audio. Shazam es un excelente ejemplo de una aplicación de huellas digitales de audio. Reconoce la música sobre la base de los primeros dos a cinco segundos de una canción. A pesar de esto, aún hay situaciones en las que el sistema falla, especialmente cuando hay una gran cantidad de ruido de fondo.
Papel blanco – http://www.cs.toronto.edu/~dross/ChandrasekharSharifiRoss_ISMIR2011.pdf
Para solucionar este problema, un enfoque podría ser representar el audio de una manera distinto, de modo que se pueda descifrar fácilmente. Posteriormente, podemos descubrir los patrones que diferencian el audio del ruido de fondo. En el estudio de caso a continuación, el autor convierte audio sin procesar en espectrogramas y posteriormente utiliza algoritmos de búsqueda de picos y hash de huellas dactilares para establecer las huellas dactilares de ese archivo de audio.
Caso de estudio – http://willdrevo.com/fingerprinting-and-audio-recognition-with-python/
3. Etiquetado automático de música
Etiquetado de música es una versión más compleja de la clasificación de audio. Aquí, podemos tener varias clases a las que puede pertenecer cada audio, además conocido como un obstáculo de clasificación de múltiples etiquetas. Una factible aplicación de esta tarea puede ser la creación de metadatos para el audio para poder buscarlos más adelante. El aprendizaje profundo ha ayudado a solucionar esta tarea hasta cierto punto, lo que se puede ver en el estudio de caso a continuación.
Papel blanco – https://link.springer.com/article/10.1007/s10462-012-9362-y
Como se ve con la mayoría de las tareas, el primer paso es siempre extraer características de la muestra de audio. Posteriormente, ordénelo de acuerdo con los matices del audio (a modo de ejemplo, si el audio contiene más ruido instrumental que la voz del cantante, la etiqueta podría ser «instrumental»). Esto se puede hacer a través de aprendizaje automático o métodos de aprendizaje profundo. El estudio de caso que se menciona a continuación utiliza el aprendizaje profundo para solucionar el problema, específicamente la red neuronal recurrenteLas redes neuronales recurrentes (RNN) son un tipo de arquitectura de redes neuronales diseñadas para procesar secuencias de datos. A diferencia de las redes neuronales tradicionales, las RNN utilizan conexiones internas que permiten recordar información de entradas anteriores. Esto las hace especialmente útiles en tareas como el procesamiento de lenguaje natural, la traducción automática y el análisis de series temporales, donde el contexto y la secuencia son fundamentales para la... de convolución junto con la extracción de frecuencia Mel.
Caso de estudio – https://github.com/keunwoochoi/music-auto_tagging-keras
4. Segmentación de audio
La segmentaciónLa segmentación es una técnica clave en marketing que consiste en dividir un mercado amplio en grupos más pequeños y homogéneos. Esta práctica permite a las empresas adaptar sus estrategias y mensajes a las características específicas de cada segmento, mejorando así la eficacia de sus campañas. La segmentación puede basarse en criterios demográficos, psicográficos, geográficos o conductuales, facilitando una comunicación más relevante y personalizada con el público objetivo.... significa literalmente dividir un objeto en particular en partes (o segmentos) según un conjunto definido de características. La segmentación, especialmente para el análisis de datos de audio, es un paso previo al procesamiento importante. Esto se debe a que podemos segmentar una señal de audio larga y ruidosa en segmentos cortos y homogéneos (prácticas secuencias cortas de audio) que se usan para su procesamiento posterior. Una aplicación de la tarea es la segmentación de los sonidos cardíacos, dicho de otra forma, identificar los sonidos específicos del corazón.
Papel blanco – http://www.mecs-press.org/ijitcs/ijitcs-v6-n11/IJITCS-V6-N11-1.pdf
Podemos convertir esto en un obstáculo de aprendizaje supervisadoEl aprendizaje supervisado es un enfoque de machine learning donde un modelo se entrena utilizando un conjunto de datos etiquetados. Cada entrada en el conjunto de datos está asociada a una salida conocida, lo que permite al modelo aprender a predecir resultados para nuevas entradas. Este método es ampliamente utilizado en aplicaciones como la clasificación de imágenes, el reconocimiento de voz y la predicción de tendencias, destacando su importancia en..., donde cada sello de tiempo se puede categorizar en función de los segmentos requeridos. Posteriormente, podemos aplicar un enfoque de clasificación de audio para solucionar el problema. En el estudio de caso a continuación, la tarea es segmentar el sonido del corazón en dos segmentos (lub y dub), de modo que podamos identificar una anomalía en cada segmento. Se puede solucionar a través de la extracción de características de audio y posteriormente se puede aplicar el aprendizaje profundo para la clasificación.
Caso de estudio – https://www.analyticsvidhya.com/blog/2017/11/heart-sound-segmentation-deep-learning/
5. Separación de fuentes de audio
Separación de fuente de audio se trata de aislar una o más señales fuente de una mezcla de señales. Una de las aplicaciones más comunes de esto es identificar la letra del audio para traducción simultánea (karaoke, a modo de ejemplo). Este es un ejemplo clásico que se muestra en el curso de aprendizaje automático de Andrew Ng, donde separa el sonido del altavoz de la música de fondo.
Papel blanco – http://ijcert.org/ems/ijcert_papers/V3I1103.pdf
Un escenario de uso típico implica:
- cargando un archivo de audio
- calcular una transformada de tiempo-frecuencia para obtener un espectrograma, y
- usando algunos de los algoritmos de separación de fuentes (como la factorización matricial no negativa) para obtener una máscara de tiempo-frecuencia
Posteriormente, la máscara se multiplica con el espectrograma y el resultado se convierte de nuevo al dominio del tiempo.
Caso de estudio – https://github.com/IoSR-Surrey/untwist
6. Seguimiento de tiempos
Como sugiere el nombre, el objetivo aquí es rastrear la ubicación de cada latido en una colección de archivos de audio. Rastreo de ritmo se puede usar para automatizar tareas que requieren mucho tiempo y que deben completarse para sincronizar eventos con música. Es útil en varias aplicaciones, como edición de video, edición de audio e improvisación entre humanos y computadoras.
Un enfoque para solucionar el seguimiento de latidos puede ser analizar el archivo de audio y utilizar un algoritmo de detección de inicio para rastrear los latidos. Aún cuando las técnicas utilizadas para la detección de inicio dependen en gran medida de la ingeniería de funciones de audio y el aprendizaje automático, el aprendizaje profundo se puede usar fácilmente aquí para aprovechar al máximo los resultados.
Caso de estudio – https://github.com/adamstark/BTrack
7. Recomendación musical
Gracias a Internet, ahora tenemos millones de canciones que podemos escuchar en cualquier momento. Irónicamente, esto ha hecho que sea aún más difícil descubrir música nueva debido a la gran cantidad de alternativas que existen. Recomendación musical Los sistemas ayudan a lidiar con esta sobrecarga de información recomendando automáticamente nueva música a los oyentes. Los proveedores de contenido como Spotify y Saavn han desarrollado motores de recomendación de música altamente sofisticados. Estos modelos aprovechan el historial de escucha pasado del usuario, entre muchas otras características, para crear listas de recomendaciones personalizadas.
Papel blanco – https://pdfs.semanticscholar.org/7442/c1ebd6c9ceafa8979f683c5b1584d659b728.pdf
Podemos abordar el desafío de personalizar las preferencias de escucha entrenando un modelo de regresión / aprendizaje profundo. Esto se puede usar para predecir las representaciones latentes de canciones que se obtuvieron de un modelo de filtrado colaborativo. De esta manera, podríamos predecir la representación de una canción en el espacio de filtrado colaborativo, inclusive si no hay datos de uso disponibles.
Caso de estudio – http://benanne.github.io/2014/08/05/spotify-cnns.html
8. Recuperación de música
Una de las tareas más difíciles en el procesamiento de audio, Mrecuperación usic esencialmente tiene como objetivo construir un motor de búsqueda basado en audio. Aún cuando podemos hacer esto resolviendo subtareas como la toma de huellas digitales de audio, esta tarea abarca mucho más que eso. A modo de ejemplo, además tenemos que solucionar diferentes tareas más pequeñas para diferentes tipos de recuperación de música (la detección de timbres sería excelente para la identificación de género). En este momento, no existe ningún otro sistema que se haya desarrollado para cumplir con los estándares esperados de la industria.
Papel blanco – http://www.nowpublishers.com/article/Details/INR-042
La tarea de recuperar música se divide en pasos más pequeños y sencillos, que incluyen el análisis tonal (a modo de ejemplo, melodía y armonía) y el ritmo o tempo (a modo de ejemplo, seguimiento de tiempos). Posteriormente, sobre la base de estos análisis individuales, se extrae información que se utiliza para recuperar muestras de audio similares.
Caso de estudio – https://youtu.be/oGGVvTgHMHw
9. Transcripción de música
Transcripción de música es otra tarea desafiante de procesamiento de audio. Se trata de anotar audio y crear una especie de «hoja» para generar música a partir de ella en un momento posterior. El esfuerzo manual involucrado en transcribiendo música de las grabaciones puede ser enorme. Varía enormemente dependiendo de la complejidad de la música, qué tan buenas son nuestras habilidades para escuchar y qué tan detallados queremos transcripción ser.
Papel blanco – http://ieeexplore.ieee.org/abstract/document/7955698
El enfoque para la transcripción de música es equivalente al del acreditación de voz, donde las notas musicales se transcriben en extractos líricos de instrumentos.
Caso de estudio – https://youtu.be/9boJ-Ai6QFM
10. Detección de inicio
La detección de inicio es el primer paso para analizar una secuencia de audio / música. Para la mayoría de las tareas mencionadas previamente, es algo necesario realizar una detección de inicio, dicho de otra forma, detectar el inicio de un evento de audio. La detección de inicio fue esencialmente la primera tarea que los investigadores intentaron solucionar en el procesamiento de audio.
Papel blanco – http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.332.989&rep=rep1&type=pdf
La detección de inicio de forma general se realiza a través de:
- calcular una función de novedad espectral
- hallar picos en la función de novedad espectral
- retrocediendo desde cada pico hasta un mínimo local precedente. El retroceso puede ser útil para hallar puntos de segmentación de modo que el inicio se produzca poco después del inicio del segmento.
Caso de estudio – https://musicinformationretrieval.com/onset_detection.html
Notas finales
En este post, mencioné algunas tareas que se pueden considerar al solucionar problemas de procesamiento de audio. Espero que el post le resulte útil al momento de abordar proyectos relacionados con el audio y el habla.
Aprender, comprometerse , cortar a tajos y ser contratado!
Relacionado
Posts Relacionados:
- Datos de audio | Análisis de datos de audio / voz mediante aprendizaje profundo
- Editor de audio en línea, o cómo recortar, fusionar, aplicar efectos, etc.a archivos de audio de forma gratuita
- Aprendizaje profundo | Aprendizaje profundo en Python
- ¿Qué es el aprendizaje profundo? Tutorial sobre aprendizaje profundo