No tengo mucha idea de cómo están relacionados, pero conozco un ejemplo que me gustaría compartir. Debes haber visto bots artificiales como Siri y otros programas de ml como Cortona, Amazon echo dot que hace el reconocimiento de voz. la señal de sonido se puede convertir en forma de texto simplemente al hablarle.
Ahora, ¿cómo funciona realmente?
Onda sonora de “hey there” -> red neuronal-> “hey there” en texto plano.
- ¿Qué pasaría si una IA fuerte estuviera disponible con una licencia de código abierto?
- ¿Cuánto podrían ahorrar los Estados Unidos en el presupuesto militar y los beneficios para veteranos si desarrollaran un ejército de IA?
- ¿Cuál es la diferencia entre una red bayesiana y una red neuronal artificial?
- ¿Cuál es el algoritmo detrás de x.ai?
- ¿Cuál es el problema XOR en las redes neuronales?
Debe estar pensando que es fácil, simplemente alimentamos la computadora con muchas ondas de sonido, la ejecutamos a través de múltiples capas de red neuronal y luego podemos obtener nuestros resultados, pero espere
El problema es que diferentes personas hablan las mismas palabras de manera diferente. “Hola” y “diablos”. Así que primero tenemos que descubrir cómo lidiar con esto.
Convertimos las ondas de sonido en bits como lo hacemos en el reconocimiento de imágenes, lo cual es obvio. ¿Entonces, cuales son nuestras opciones? Sí, ahí lo tienes.dsp.
Supongamos que tomamos una onda de sonido de “hola”. Las ondas de sonido son unidimensionales todo el tiempo. Tienen un valor único basado en su altura. Para convertir esta onda en número, ampliaremos la ola y tomaremos la altura de puntos igualmente espaciados.
“Teorema de muestreo”, ¿le suena familiar? Simplemente tomamos una lectura miles de veces por segundo y registramos un número que representa una altura de onda de sonido en ese momento.
Nquist thorem afirma que, si tomamos muestras al menos dos veces como la frecuencia más alta, podemos reconstruir nuestra onda de sonido sin distorsión. así que incluso si estamos tomando muestras de nuestra ola, no estamos perdiendo ningún dato.
Ahora, si suponemos tomar 16000 muestras de nuestra onda de sonido “hola”, obtenemos muchas lecturas que podemos usar como datos.
Luego, dividiremos estos números en fragmentos más pequeños, por ejemplo, si tomamos nuestra primera muestra de 320, lo que genera alrededor de (320/16000) segundos de tiempo.
Por lo tanto, procesaremos estos datos para facilitar el procesamiento de la red neuronal.
Para hacerlo, aplicaremos la transformada de Fourier, que divide las ondas de sonido complejas en ondas de sonido simples que lo hacen. Una vez que tenemos ondas de sonido individuales, sumamos cuánta energía está contenida en cada una y obtenemos la importancia de cada rango de frecuencia. . Repitiendo este proceso para todos los intervalos de 20 milisegundos, podemos usar un espectograma para ver todas las notas musicales y el patrón de tono en estos datos y se puede alimentar a una red neuronal profunda.
Podemos usar una red neuronal recurrente para que el estado actual siempre influya en el próximo cálculo. Por ejemplo, después de “heeeelllll” hay mayores posibilidades de que el siguiente sonido sea “ooooooo”. Entonces se usan rnns.
Nuestra red neuronal que ya está entrenada con montones y montones de datos de sonido predecirá automáticamente palabras como “hola” fácilmente
Espero que tenga sentido.