Sei sulla pagina 1di 11

UNIVERSIDAD NACIONAL DE INGENIERÍA

FACULTAD DE INGENIERIA INDUSTRIAL Y DE SISTEMAS

OFICINA DE TIC

RECONOCIMIENTO DE VOZ

SISTEMA DESARROLLADO PARA EL CURSO


DE INTELIGENCIA ARTIFICIAL AVANZADA
Historial de Versiones

Autor Versión Descripción Fecha


1.0 Elaboración del formato 24/09/2016

Revisado y Aprobado por:

Nombre

Cargo

Firma

Nombre

Cargo

Firma
Tabla de contenido
1. DESCRIPCIÓN DEL SISTEMA....................................................................................4
2. DESCRIPCIÓN DEL PROBLEMA................................................................................4
3. ALCANCE DEL SISTEMA............................................................................................5
4. SELECCIÓN DE LA TÉCNICA PARA RESOLVER EL PROBLEMA.............................7
Extracción de características a corto plazo:...............................................................12
Extracción de características a medio plazo:..............................................................13
Eliminación de ruido y normalizar...............................................................................13
Filtración..................................................................................................................... 13
Procesamiento........................................................................................................... 13
5. PLAN PARA EL DESARROLLO DEL SISTEMA.........................................................14
6. DESCRIPCIÓN DE LA ARQUITECTURA DEL SISTEMA..........................................17
6.1. Arquitectura técnica............................................................................................17
Aparatos usados para capturar los datos.......................................................................17
1. DESCRIPCIÓN DEL SISTEMA

Nombre del sistema Reconocimiento de Voz


Descripción del Sistema El grupo de trabajo ha optado por realizar un proyecto
que consiste en crear un aplicativo móvil, capas de ser
controlado a través de la voz, que le permita realizar al
usuario operaciones básicas sobre su cuenta bancaria,
como revisar sus transacciones y los detalles de estas.
Miembros del Equipo  Aguilar Álvarez, Roger
 Flores Tambo, Diego Alonso
 Pando Morales, Carlos Enrique

Durante los últimos años, se han producido grandes avances tecnológicos y con ello la
necesidad de las personas de disponer de información relevante de su entorno.
Uno de los temas, de los cuales, las personas se encuentran más al pendiente son sus
finanzas, específicamente de sus operaciones o movimientos bancarios realizados.
La tendencia actual, es el control del Smartphone a través de la voz, por lo cual se ha
optado por el desarrollo de una aplicación que le permita utilizarla mediante comando de
voz.

Actualmente, existen diversas herramientas gratuitas, capaces de convertir órdenes de


voz en texto, entre las cuales destacan: Google Docs, Dictation, Speechnotes y
Speechlogger Personal.

2. DESCRIPCIÓN DEL PROBLEMA

En nuestra vida diaria, la mayoría de las personas, cuentan con un Smartphone y cuentan
con la necesidad de estar informado de manera continua sobre las operaciones
financieras que estos hayan realizado.
Dicho esto, en ocasiones se les hace difícil controlar o se les imposibilita el acceso
manual a sus celulares. Generalmente este es un problema para las personas que se
encuentran demasiado ocupados, los cuales se encuentran a menudo realizando diversas
actividades al mismo tiempo y el único medio para controlar su celular es a través de
ordenes realizadas por medio de la voz.
3. ALCANCE DEL SISTEMA

El proyecto planteado por el grupo tiene como finalidad obtener una aplicación móvil que a
través de comandos de voz, permita al usuario de un banco especifico, ver las
operaciones realizadas por este durante cierto periodo de tiempo.

Primero, la aplicación solicitara al usuario, su número de DNI, los cuales serán ingresados
a través de la voz y se verificara la existencia de este en la base de datos, una vez que se
halla mencionado el comando “INGRESAR". Ya ingresado al sistema, el usuario podrá ver
su perfil, a través del comando "PERFIL" y para ver su historial de movimientos o
transacciones lo realizará a través de "OPERACIONES". Para cerrar su cuenta dirá el
comando "CERRAR".

4. SELECCIÓN DE LA TÉCNICA PARA RESOLVER EL PROBLEMA

El modelo se utilizará el algoritmo de árbol de decisiones, este método genera un


conjunto de decisiones. Estas generan reglas para la clasificación de un conjunto de
datos.

Métodos específicos de árboles de decisión incluyen arboles de clasificación y regresión


CART (classification and Regresion Tree). Los árboles de decisión, son representaciones
gráficas de la lógica de las probabilidades aplicada a las alternativas de decisión. El tronco
del árbol es el punto de partida de la decisión. Las ramas de éste comienzan con la
probabilidad del primer acontecimiento. La probabilidad de cada acontecimiento produce
dos o más efectos posibles, algunos de los cuales conducen a otros 9 acontecimientos de
probabilidad y a puntos de decisión subconsecuentes. Los valores en los que se cifran las
ramas del árbol, provienen de un análisis muy cuidadoso que se basa en el
establecimiento de un criterio para la toma de decisión
PROCESAMIENTO DE LA DATA

Se tendrá un directorio de archivos de audio debidamente identificados, los cargaremos


en nuestro modelo y representaremos en el dominio de la frecuencia

DOMINIO DEL TIEMPO (TIME DOMAIN). Término utilizado para describir el análisis de
funciones con respecto al tiempo. Se puede hacer de dos formas discretas y continuas.
En este tipo de representación se puedo mostrar las componentes de la señal según la
frecuencia en la que oscilan dentro de un rango determinado. La representación
frecuencial incluye también la información sobre el desplazamiento de fase.

DOMINIO DE LA FRECUENCIA (FRECUENCY DOMAIN). Permite descomponer una señal


periódica en un número finito o infinito de frecuencias. Cuando se trata de señales no
periódicas está relacionado con la transformada de Fourier.
5. PLAN PARA EL DESARROLLO DEL SISTEMA

Se procederá a utilizar la siguiente metodología


 Identificación
 Conceptualización
 Formalización
 Implementación
 Testeo
 Revisión del prototipo

FASE 1: IDENTIFICACIÓN
Abarca desde la lectura de libros o artículos, las entrevistas o charlas con las personas
familiarizadas con el tema y la búsqueda de un experto que esté dispuesto a colaborar
con la construcción del sistema; como así también la definición de cuáles son las
funciones o tarea más idóneas para ser realizadas por el sistema experto. Esas tareas
son importantes para determinar que lenguaje y que sistema se usará:
 Cumplir con todo los objetivos que se planteo
 Que el sistema experto brinde resultados eficientes

FASE 2: CONCEPTUALIZACIÓN
Se realizan entrevistas con el experto, con el objetivo de identificar y caracterizar el
problema informalmente. El experto de campo y el grupo definen el alcance del sistema
experto, es decir, que problemas va a resolver concretamente el sistema experto.

FASE 3: FORMALIZACIÓN
Con el problema adecuadamente definido el grupo empieza a determinar los principales
conceptos del dominio que se requieren para realizar cada una de las tareas que va a
resolver el sistema, tratando de entender conceptos que son relevantes e importantes
solicitándole al experto que explique y justifique los razonamientos que utiliza para
resolver los problemas. Esto es importante para la tarea de definición del árbol de
decisiones y para mantener una adecuada documentación del mismo, ya que es útil para
la tarea de diseño, construcción y para posteriores modificaciones del sistema.
La estructura del conocimiento indica que tareas y que términos está usando y la
estrategia indica cómo y cuándo el sistema experto debe establecerlas.

FASE 4: IMPLEMENTACIÓN
Crear un prototipo del sistema experto para así comprobar si hemos conceptualizado bien
la solución del problema.
Formalizar el conocimiento obteniendo del experto y elegir la organización y el lenguaje de
programación, en nuestro caso se podría usar PYTHON o implementarlo en IONIC con
Mysql para que se una herramienta web.

FASE 5: PRUEBA
Se refina el sistema prototipo, depurado la base de conocimiento, refinando reglas,
rediseñando la estructura del conocimiento, o reformulando conceptos básicos, con el
objetivo de capturar información adicional que haya proporcionado el experto. También se
consultan en esta etapa otros expertos para, corroborar, controlar, ampliar y refinar el
prototipo.

FASE 6: REVISIÓN DEL PROTOTIPO


Cuando el sistema prototipo ha crecido tanto que resulta difícil de manejar se debe
rediseñar un sistema más eficiente. Este nuevo sistema deberá refinarse y extenderse a
fin de completar así el desarrollo del sistema experto.

Plan de desarrollo del sistema experto:

MES ABRIL MAYO JUNIO


SEMANAS SEMANAS SEMANAS
N FASE 1 2 3 4 1 2 3 4 1 2 3 4
1 Revisión bibliográfica

2 Entrevista con personas


relacionadas

3 Planeación de entrevista
con experto
Esquematización del
4 proceso general de
solución
Realización de entrevista
5
con experto
6 Definición del problema

7 Definición del alcance


del sistema

8 Identificación de las
actividades de solución
Determinación de los
9 conceptos de dominio
por actividad
Definición de estrategias
10 para completar las
actividades
11 Recolección de datos

12 Procesamiento y
creación del dataset
13 Creación del prototipo
14 Diseño de los casos de
pruebas
Realización de las
15 pruebas de funcionalidad
y control
Refinamiento y rediseño
del sistema según los
16
resultados de las
pruebas

17 Consulta a expertos de la
efectividad del modelo
Preparación de la
18 presentación y
documentación

19 Presentación del
prototipo a la clase

6. DESCRIPCIÓN DE LA ARQUITECTURA DEL SISTEMA


6.1. ARQUITECTURA TÉCNICA

IONIC:
Ionic Framework es un SDK de código abierto que permite a los desarrolladores
crear aplicaciones móviles de alta calidad utilizando tecnologías web familiares
(HTML, CSS y JavaScript).
Ionic se centra principalmente en la apariencia y la interacción de la interfaz de
usuario de una aplicación. Ionic simplifica una gran parte del proceso de desarrollo
de la aplicación: el front-end.

MYSQL:
MySQL es un sistema de gestión de base de datos relacional (RDBMS) de código
abierto, basado en lenguaje de consulta estructurado (SQL). A pesar de que se
puede utilizar en una amplia gama de aplicaciones, MySQL se asocia más con las
aplicaciones basadas en la web

PYAUDIO:
PyAudio proporciona enlaces Python para PortAudio, el audio multiplataforma
biblioteca de E / S.
Python puede utilizar PyAudio para reproducir y grabar audio en una variedad de
plataformas, tales como GNU / Linux, Microsoft Windows y Apple Mac OS X.
Proporciona métodos para:
 Inicializar y terminar PortAudio
 Apertura y cierre de flujos
 consultar e inspeccionar las PortAudio host APIs disponibles
 consultar e inspeccionar los dispositivos de audio PortAudio disponibles

PyaudioAnalisis
La librería pyAudioAnalisys de Python permite la extracción de características,
clasificación, segmentación y Aplicaciones para las señales de audio.
El usuario puede realizar las siguientes tareas:
 Extraer una amplia gama de características de audio y representaciones ( por ejemplo,
espectrograma , chromagram )
 Entrenamiento, sintonía de parámetros y evaluar clasificadores basados en segmentos
 Clasificar las muestras desconocidas
 Detectar eventos de audio y excluir a los periodos de silencio a partir de grabaciones
de larga duración
 Realizar la segmentación supervisada (es decir, aplicar un modelo de clasificacion en
segmentos de tamaño predeterminado)
 Realizar la segmentación sin supervisión
 Extraer imágenes en miniatura de audio
 Entrenar y utilizar modelos de regresión de audio (ejemplo de aplicación: el
reconocimiento de emociones)
 Aplicar técnicas de reducción de dimensionalidad para visualizar similitudes de datos
y de contenido de audio

APARATO UTILIZADO PARA CAPTURAR LOS DATOS


Micrófono
LAPTOP

Potrebbero piacerti anche