martes, 6 de mayo de 2014

Redes Neuronales - Estructuras Neuronales

Aunque su estructura varía según el tipo de red, lo más usual es que haya tres capas de neuronas
·Una de entrada, que recoge los estímulos.
·Otra oculta, que procesa la información.
Y otra de salida, que ejecuta la respuesta.



APROXIMACIONES  ACON FRENTE A OCON

Cuando se tiene el problema de cuantas redes son necesarias para la clasificación en multicategorias. Típicamente, cada nodo de salida se usa para representar una clase.
Dos posibles tipos de arquitecturas son All-Class-in-One-Network” (ACON), esto es, todas las clases en una red, es decir todas las clases son reconocidas dentro de una única súper red.

Ejemplo de red entera ACON:


“Once-Clasis-in-One-Network” (OCON), esto es, una red para cada clase. La descomposición más extrema se llama OCON, donde una subred se dedica para una sola clase. Aunque el número de subredes en la estructura OCON es relativamente largo, cada sub red individual tiene un tamaño menor que la red ACON.
Ejemplo de red OCON:


ESTRUCTURA PERCEPTRÓN
Un Perceptrón consta de dos niveles o capas (figura 4). El primer nivel está compuesto por un número de unidades de entrada, denominadas unidades sensoriales, que en nuestro ejemplo son dos. El segundo nivel está compuesto por un número de unidades de salida, denominadas unidades de asociación, cuyas entradas son las salidas de las unidades de entrada ponderadas por unos pesos. En el ejemplo sólo se empleará una neurona en la capa de salida. Las unidades de entrada tienen una sola entrada correspondiente a una de las entradas a la red, y una sola salida. Estas unidades transmiten la señal que aparece en su entrada.


jueves, 1 de mayo de 2014

Redes Neuronales - Introducción a las Redes Neuronales

Una Red Neuronal es usada para aprender patrones y relaciones de datos.
Los datos pueden ser el resultado del esfuerzo de una investigación de mercado, el resultado de un proceso de producción dando variación a las condiciones de operación, o las decisiones de un prestamista dado un conjunto de aplicaciones de préstamo, utilizando una Red Neuronal es una salida considerable parecida a un enfoque tradicional.

Tradicionalmente un programador o un analista especifican "códigos" de cada faceta del problema en orden para la computadora pueda "entender" la situación. Redes Neuronales no requieren el código explícito del problema.

Una primera clasificación de las redes de neuronas artificiales que se suele hacer es en función del patrón de conexiones que presenta. Así se definen tres tipos básicos de redes:
·Dos tipos de redes de propagación hacia delante o acíclicas en las que todas las señales van desde la capa de entrada hacia la salida sin existir ciclos, ni conexiones entre neuronas de la misma capa de red neuronal y su clasificación.
oMonocapa. Ejemplos: perceptrón, Adaline.
oMulticapa. Ejemplos: perceptrón multicapa.
Las redes recurrentes que presentan al menos un ciclo cerrado de activación neuronal. Ejemplos: Elman, Hopfield, máquina de Boltzmann.

Una segunda clasificación que se suele hacer es en función del tipo de aprendizaje de que es capaz (si necesita o no un conjunto de entrenamiento supervisado). Para cada tipo de aprendizaje encontramos varios modelos propuestos por diferentes autores:
·Aprendizaje supervisado: necesitan un conjunto de datos de entrada previamente clasificado o cuya respuesta objetivo se conoce. Ejemplos de este tipo de redes son: el perceptrón simple, la red Adaline, el perceptrón multicapas, red backpropagation, y la memoria asociativa bidireccional.
·Aprendizaje no supervisado o autoorganizado: no necesitan de tal conjunto previo. Ejemplos de este tipo de redes son: las memorias asociativas, las redes de Hopfield, la máquina de Boltzmann y la máquina de Cauchy, las redes de aprendizaje competitivo, las redes de Kohonen o mapas autoorganizados y las redes de resonancia adaptativa (ART).
·Redes híbridas: son un enfoque mixto en el que se utiliza una función de mejora para facilitar la convergencia. Un ejemplo de este último tipo son las redes de base radial.
·Aprendizaje reforzado: se sitúa a medio camino entre el supervisado y el autoorganizado.

Finalmente también se pueden clasificar las RNAs según sean capaces de procesar información de distinto tipo en:
·Redes analógicas: procesan datos de entrada con valores continuos y, habitualmente, acotados. Ejemplos de este tipo de redes son: Hopfield, Kohonen y las redes de aprendizaje competitivo.
Redes discretas: procesan datos de entrada de naturaleza discreta; habitualmente valores lógicos booleanos. Ejemplos de este segundo tipo de redes son: las máquinas de Boltzmann y Cauchy, y la red discreta de Hopfield.

domingo, 27 de abril de 2014

Sistemas Expertos - Lenguaje Shell - Contenido Adicional Juegos Educativos

En el siguiente enlace pueden encontrar varios juegos relacionados con el contenido de "Lenguaje Shell"

Sistemas Expertos - Desarrollo de Sistemas expertos - Contenido Adicional Video

Los sistemas expertos no solo se basan en el software (programas, aplicaciones), sino que también se necesita el hardware especifico para que el Sistema Experto sea viable.

El siguiente vídeo explica precisamente como se podría implementar un sistema experto en base a hardware barato sin necesidad de sacrificar rendimiento y calidad con una solución de IBM.




sábado, 5 de abril de 2014

Sistemas Expertos - Aplicaciones y Dominios de los Sistemas Expertos

Aplicaciones de los Sistemas Expertos

Los sistemas expertos pueden ser aplicados a casi todos los campos del conocimiento, Algunos se han diseñado como herramientas de investigación, mientras que otros, satisfacen importantes funciones de negocios e industriales, a continuación detallo un ejemplo enfocado al campo de la agricultura.

Todos los sistemas expertos difieren muy poco o casi nada de otros sistemas expertos, y un sistema experto enfocado a la agricultura no es diferente, dado que utiliza un sistema base de conocimientos,

Podemos desarrollar un sistema experto para diagnosticar pestes y enfermedades para un cultivo en especifico y sugerir medidas preventivas y curativas para estas. El sistema base de conocimiento debe incluir pestes y enfermedades, así como sus características para poder identificarlas y así poder sugerir medidas preventivas y curativas.

Otro Sistema Experto puede ser utilizado para la aplicación de fertilizantes, protección de sembradíos, el horario de irrigacion y el diagnostico de enfermedades antes y después de recoger la cosecha de frutas y vegetales.

Y así muchos otros ejemplos claros de Sistemas Expertos.

Dominios de los Sistemas Expertos

Para construir un Sistema Experto, es necesario decidir el método adecuado, dependiendo del tipo de problemas a resolver, para así elegir si usar un sistema de programación convencional o un sistema experto, algunas de las preguntas que se deben hacer, son

¿Puede solucionarse eficazmente el problema con programación convencional?
¿Esta bien delimitado el dominio?

¿Existe la necesidad y el deseo de tener un sistema experto?

¿Existe al menos un especialista dispuesto a cooperar con el proyecto?

¿Puede este experto explicar el conocimiento en forma comprensible al ingeniero del conocimiento?

¿El conocimiento para resolver el problema es principalmente heurístico e incierto?

Dependiendo de la respuesta (si o no) a las preguntas, podemos determinar fácilmente si un sistema experto es la mejor opción o si por el contrario un sistema convencional es más eficiente.