Este estudio utilizó conjuntos de datos públicos de BVC Challenging Voice Set y Mozilla Common Voice sin participación directa de sujetos. Por lo tanto, no se requirió aprobación ética institucional ni consentimiento informado adicional. Solo se procesaron los datos necesarios para la clasificación por género y edad, y no se realizó ningún intento para identificar a los hablantes individuales. La metodología completa del flujo de trabajo del marco propuesto se muestra en Figura 1.
Adquisición de datos
El conjunto de datos utilizado en el enfoque propuesto consistió en archivos de audio .wav obtenidos del BVC Challenging Voice Set, un conjunto de datos de voz de acceso público desarrollado por el grupo Biometrics Vision and Computing (BVC) y alojado en GitHub32. El conjunto de datos contenía grabaciones de voz de 526 individuos, incluyendo 336 hablantes masculinos y 190 femeninos. Comprendía aproximadamente 3.964 grabaciones, incluyendo grabaciones de una sola oración y de varias oraciones de cada hablante. Tabla 2 resume las características demográficas, la cobertura lingüística, las propiedades de grabación, la estrategia de particionamiento de los datos y los ajustes de preprocesamiento utilizados para los conjuntos de datos de habla en el marco propuesto de VoiceNet-RAI.
Extracción de características
Los archivos de audio se procesaron para extraer propiedades esenciales, que posteriormente se almacenaron en un archivo CSV. Los metadatos, incluyendo edad, género y pronunciación del hablante, se extrajeron de los archivos README correspondientes. Se utilizó Python junto con el paquete SciPy para procesar los archivos WAV y extraer características relevantes. Se emplearon la transformada rápida de Fourier (FFT) y las funciones de frecuencia de NumPy para convertir las señales de audio del dominio temporal al dominio frecuencial. Los archivos WAV representaban la amplitud como una función del tiempo; sin embargo, las características relacionadas con la frecuencia que podían distinguir voces masculinas y femeninas eran de mayor interés para la tarea de clasificación33.
Para transformar las señales de audio en representaciones en el dominio de la frecuencia, se implementó la Transformada Discreta de Fourier (DFT) utilizando el algoritmo FFT. La transformada de Fourier convierte una señal en el dominio del tiempo en un espectro de frecuencia. Dado que este espectro no conserva la información temporal, la señal de audio se dividió en segmentos solapados y la transformada de Fourier se aplicó a cada segmento mediante el enfoque de Transformada de Fourier de Tiempo Corto (STFT). La función np.fft.fft generó el espectro de frecuencia complejo, mientras que np.fft.fftfreq proporcionó las frecuencias de muestreo correspondientes. En el directorio de muestras, había disponibles 10 archivos de audio de un solo hablante. Cada archivo WAV se procesó utilizando ventanas deslizantes de 200 ms para extraer las frecuencias dominantes. Por ejemplo, una grabación de audio de 4 segundos produjo una lista de 20 valores de frecuencia. Para un directorio que contiene 10 grabaciones, las 10 listas correspondientes, cada una con 20 valores de frecuencia, se combinaron en una lista de listas. Las frecuencias se filtraron para conservar valores entre 20 Hz y 280 Hz, excluyéndose el ruido potencial alrededor de 50 Hz.
Representación híbrida de características MFCC y wav2vec 2.0
Para capturar tanto representaciones contextuales de habla de alto nivel como características acústicas de bajo nivel, este estudio empleó una estrategia híbrida de extracción de características que integró características MFCC con incrustaciones basadas en el transformador wav2vec 2.0.
Extracción de características MFCC
Los coeficientes cepstrales en escala de frecuencia mel (MFCCs) son características ampliamente utilizadas en el procesamiento de señales de voz y audio, especialmente para aplicaciones como el reconocimiento de voz y la identificación de hablantes34,35. En este estudio, la extracción de MFCC transformó las señales de audio en vectores de características que representan propiedades perceptualmente relevantes del habla. El proceso comenzó con un preénfasis para realzar los componentes de alta frecuencia, seguido de la división en tramas y el enventanado para separar la señal en tramas cortas y solapadas. Cada muestra de audio se remuestreó primero a 16 kHz y se segmentó en tramas de 25 ms con un solapamiento de 10 ms. Luego, se aplicó la transformada rápida de Fourier a cada trama para convertir la señal del dominio del tiempo al dominio de la frecuencia.
Al espectro de frecuencia resultante se le aplicó una serie de bancos de filtros Mel que aproximaron la respuesta de frecuencia no lineal de la percepción auditiva humana. Estos bancos de filtros enfatizaron las frecuencias más relevantes desde el punto de vista perceptual, mientras reducían la contribución de las menos informativas. Posteriormente, se calculó el logaritmo de la salida de cada banco de filtros para aproximar la sensibilidad logarítmica del oído humano a la intensidad sonora. Luego, se aplicó una Transformada Coseno Discreta (DCT) a las energías logarítmicas de los bancos de filtros para descorrelacionar los coeficientes y generar una representación compacta de la señal de audio. Los coeficientes resultantes, conocidos como MFCC, capturaron características espectrales importantes del habla. Se utilizaron MFCC para la clasificación por género y edad porque capturan características acústicas que diferencian las voces según estos atributos.
extracción de incrustaciones wav2vec 2.0
El modelo Base wav2vec 2.0 fue preentrenado en grandes corpus de habla sin etiquetar. El modelo consistía en un codificador Transformer de múltiples capas que procesaba entradas de forma de onda en bruto y generaba incorporaciones de habla contextualizadas36.
Dada una forma de onda de entrada x ∈ RT, el modelo wav2vec 2.0 produjo una secuencia de representaciones latentes:
Z = {z1,z1,....,zn},zi ∈ R768 (1)
donde cada vector de incrustación tenía una dimensionalidad de 768. Para obtener una representación de longitud fija adecuada para la clasificación, se aplicó una operación de agrupamiento temporal promedio a lo largo de todos los pasos temporales.
(2)
Mecanismo de fusión de características
Las características MFCC y wav2vec 2.0 se fusionaron mediante la concatenación a nivel de características. Específicamente, las características MFCC se agruparon primero utilizando promedio temporal para producir un vector de longitud fija.
m ∈ R40 (3)
El vector final de características híbridas se obtuvo como:
h = [m || zpooled] ∈ R808 (4)
donde || denota concatenación. Esta fusión combinó incrustaciones contextuales profundas con características espectrales diseñadas manualmente, permitiendo al modelo capturar tanto información semántica de alto nivel como patrones acústicos finamente detallados.
Todas las muestras de audio se remuestrearon primero a 16 kHz. Las características MFCC se calcularon por tramas y se promediaron temporalmente para producir un vector fijo de 40 dimensiones, mientras que los embeddings de wav2vec 2.0 se promediaron a lo largo del tiempo para generar una representación de 768 dimensiones. Dado que ambos conjuntos de características se convirtieron en vectores de longitud fija antes de la fusión, no fue necesario alinearlas a nivel de trama en el tiempo. Las representaciones resultantes de MFCC y wav2vec se concatenaron entonces en un vector de características híbrido de 808 dimensiones antes de ser introducidas en el modelo de clasificación.
Integración con EfficientNet-Lite
El vector de características fusionado, h, se reconfiguró en un formato adecuado para el aprendizaje de características y se proporcionó como entrada al modelo EfficientNet-Lite para su entrenamiento. Una capa de proyección completamente conectada primero mapeó el vector de 808 dimensiones a un espacio latente de mayor dimensionalidad, tras lo cual los bloques EfficientNet-Lite refinaron las características jerárquicas. Se emplearon capas de normalización por lotes y capas de desactivación (dropout) para reducir el sobreajuste y mejorar la generalización del modelo. Se utilizó la función de activación SoftMax para generar las probabilidades finales predichas para las clases de género y edad. La representación fusionada, h ∈ R808, se trató inicialmente como un vector de características unidimensional y se pasó a través de una capa de proyección completamente conectada que la mapeó a 4.096 dimensiones. Luego, la representación proyectada se reconfiguró en un tensor de 1 × 64 × 64 antes de ser suministrada a la arquitectura EfficientNet-Lite.
Para adaptarse a la representación de características de voz de un solo canal, en lugar de la entrada convencional de imagen de tres canales, se modificó la capa convolucional de entrada de EfficientNet-Lite, pasando de tres a un canal de entrada. Los bloques restantes de extracción de características de EfficientNet-Lite se mantuvieron sin modificaciones arquitectónicas importantes. Se aplicó una capa de agrupamiento promedio global adaptable a los mapas de características finales para producir una representación de longitud fija. La cabeza de clasificación original fue reemplazada por una capa completamente conectada específica para la tarea, que contenía dos unidades de salida para la clasificación de género y el número correspondiente de unidades de salida para los grupos de edad predefinidos. Finalmente, se aplicó la función de activación SoftMax para generar las probabilidades de clase. La representación híbrida propuesta combinó incrustaciones de voz modernas auto-supervisadas con características tradicionales de procesamiento de señales. Las incrustaciones wav2vec 2.0 capturaron información contextual y dependencias de largo alcance, mientras que las características MFCC proporcionaron información acústica complementaria de bajo nivel. La integración de estas representaciones mejoró el rendimiento de clasificación, particularmente en condiciones de voz ruidosa y multilingüe.
Clasificador ML
En esta investigación, se analizó el rendimiento de múltiples algoritmos de ML para la clasificación por género y grupo de edad basada en la voz.
Bosque aleatorio
Se utilizó el Bosque Aleatorio (RF) como un clasificador robusto de Aprendizaje Automático (ML), combinando múltiples Árboles de Decisión (DTs) para mejorar la precisión de las predicciones y reducir el sobreajuste. RF funcionó mediante un procedimiento de aprendizaje conjunto en el que se agruparon las predicciones de múltiples árboles para generar la predicción final37,38. Este enfoque permitió a RF captar diversos patrones en los datos al tiempo que reducía el sobreajuste comúnmente asociado con árboles DT individuales. La aleatoriedad introducida durante la construcción de los árboles mejoró la generalización del modelo, haciendo que RF fuera adecuado para tareas de clasificación como la clasificación por género y edad a partir de datos de voz.
Regresión Logística
Se utilizó la regresión logística (RL) como modelo estadístico de aprendizaje automático para clasificación39. Para clasificación binaria, la RL estima la probabilidad de un resultado en función de las características de entrada mediante la función logística (sigmoide), y las probabilidades resultantes se utilizan para generar predicciones de clase. La RL también era aplicable a problemas de clasificación multiclase que involucraban más de dos clases. Para clasificación multiclase, la RL empleó enfoques como uno contra el resto o regresión SoftMax, dependiendo del contexto de clasificación.
Clasificador de árboles extremos
El clasificador Extra Trees (ETC) se utilizó como un algoritmo de aprendizaje conjunto que combina múltiples árboles de decisión (DT) para generar predicciones40,41. A diferencia del bosque aleatorio (RF), el ETC introduce aleatoriedad adicional al seleccionar al azar las características candidatas y los umbrales de división durante la construcción del árbol. Este procedimiento genera árboles menos correlacionados y reduce la sensibilidad del modelo a características individuales, mejorando así la robustez frente al ruido. Se utilizó el índice de Gini como criterio de división para evaluar la importancia de las características y particionar los datos.
Máquina de Vectores de Soporte
Se utilizó una Máquina de Vectores de Soporte (SVM) como clasificador de aprendizaje automático (ML) para identificar un límite de decisión óptimo en un espacio de características de alta dimensión42. El objetivo era determinar un hiperplano que maximizara el margen entre las clases. Un margen más amplio entre el límite de decisión y los puntos de datos más cercanos generalmente favorece una mejor separación de clases y una mayor capacidad de generalización. La SVM es aplicable a varias tareas de aprendizaje automático, incluyendo clasificación, regresión y análisis de datos basado en características.
Redes Neuronales Convolucionales
Se utilizaron redes neuronales convolucionales (CNN) como modelos de aprendizaje profundo (DL) para tareas de clasificación que implican representaciones estructuradas de datos de imagen y audio. Las CNN unidimensionales (1D-CNN) también se han aplicado ampliamente a datos secuenciales y textuales. Las arquitecturas de CNN emplearon filtros convolucionales y operaciones de agrupación para extraer características discriminativas de los datos de entrada43,44. Para la clasificación de género y edad a partir de datos de voz, se aplicaron CNN a representaciones derivadas del habla para aprender patrones asociados con el tono, la frecuencia, el timbre y otras características vocales relevantes para distinguir entre grupos de género y edad.
VGG19
Se utilizó VGG19 como una arquitectura de aprendizaje profundo caracterizada por una estructura jerárquica profunda y relativamente uniforme para la extracción de características45. Su arquitectura empleó filtros convolucionales pequeños de 3 × 3 a lo largo de 19 capas, lo que permitió la extracción progresiva de características discriminativas. Cuando se aplicó a representaciones derivadas del habla, VGG19 capturó tanto patrones acústicos de bajo nivel, como variaciones de tono y frecuencia, como características discriminativas de nivel superior. Su arquitectura profunda permitió una abstracción progresiva de características para modelar las características vocales asociadas con el género y la edad.
EfficientNet-Lite
EfficientNet-Lite se utilizó como una arquitectura de DL eficiente computacionalmente46,47. El modelo empleó una estrategia de escalado equilibrada para lograr un buen rendimiento de clasificación, requiriendo menos recursos computacionales que arquitecturas de DL más pesadas. Su enfoque de escalado compuesto consideró conjuntamente la profundidad, la anchura del modelo y la resolución de entrada para lograr una extracción eficiente de características.
Se seleccionó EfficientNet-Lite para el marco propuesto VoiceNet-RAI debido a su arquitectura ligera y su favorable equilibrio entre el rendimiento de clasificación y la complejidad del modelo. En comparación con arquitecturas más pesadas, utilizó bloques convolucionales eficientes y escalado compuesto para lograr un aprendizaje efectivo de características con menos parámetros y menores requisitos computacionales. Estas características hicieron que EfficientNet-Lite fuera adecuado para el marco de clasificación de voz propuesto y ofrecieron la posibilidad de implementarlo en entornos con recursos limitados.
MobileNet
Se utilizó MobileNet como una arquitectura ligera de aprendizaje profundo (DL) para aplicaciones con recursos computacionales limitados, incluidos entornos de computación móvil y en el borde48. Su eficiencia computacional se logró principalmente mediante convoluciones separables por profundidad, que redujeron el número de parámetros y operaciones computacionales en comparación con arquitecturas convolucionales convencionales. Estas características hicieron que MobileNet fuera adecuado para evaluar la clasificación por género y edad a partir de datos de voz, manteniendo requisitos computacionales relativamente bajos.
InceptionV3
Se utilizó InceptionV3 como una arquitectura profunda para extraer características jerárquicas de representaciones derivadas del habla49. La arquitectura incorporó operaciones convolucionales, de agrupación y mixtas para extraer características a diferentes niveles de abstracción. Para la clasificación de género y edad a partir de datos de voz, InceptionV3 se utilizó para aprender patrones acústicos complejos y representaciones jerárquicas asociadas con variaciones en las características vocales.
Parámetros de evaluación
La precisión fue una de las métricas de evaluación más utilizadas para tareas de clasificación50. Aunque la precisión proporcionaba una medida útil del rendimiento general de la clasificación, no siempre ofrecía una evaluación completa, especialmente para conjuntos de datos desequilibrados. Por lo tanto, se utilizaron métricas adicionales, incluyendo la exactitud (precisión), la recuperación (recall) y la puntuación F1, para evaluar el rendimiento del modelo. Estas métricas proporcionaron una evaluación más completa al considerar las predicciones correctas e incorrectas para cada clase.
La exactitud se definió como la proporción de observaciones clasificadas correctamente respecto al número total de observaciones. Aunque la exactitud era particularmente informativa para conjuntos de datos equilibrados, el conjunto de datos utilizado en este estudio estaba desequilibrado. Por lo tanto, se consideraron los verdaderos positivos (TP), falsos positivos (FP), verdaderos negativos (TN) y falsos negativos (FN) al calcular e interpretar las métricas de clasificación. La ecuación siguiente representa la definición estándar de exactitud:
Precisión = (VP+VN)/(VP+VN+FP+FN)×100 (5)
La precisión evalúa la capacidad del clasificador para devolver únicamente instancias relevantes:
Precisión= TP/(TP+FP) ×100 (6)
La recuperación, también conocida como sensibilidad, mide la capacidad del clasificador para identificar todas las instancias relevantes:
Sensibilidad= TP/(FN+TP) × 100 (7)
El puntaje F1 combina la precisión y la recuperación en una sola medida y es particularmente útil para evaluar el rendimiento de clasificación en conjuntos de datos desequilibrados:
Puntuación F1 = 2 × (PPV × TPR)/(TPR + PPV) × 100 (8)