Vía Javahispano, me enteré la existencia de ésta librería Encog, programada en Java. La misma permite trabajar con redes neuronales Feedforward, Hopfield y mapas auto-organizados, el entrenamiento de las mismas se puede realizar mediante backpropagation, alineamiento simulado y optimizaciones genéticas. Además posee un bot (araña) multihilo para explorar HTTP, pudiendo almacenar los resultados en memoria o en base de datos, adicionalmente posee un parser HTML y manejo de cookies.

El link del proyecto (se distribuye bajo licencia LGPL)

Dentro de los métodos de clasificación supervisada nos encontramos con una gran variedad, específicamente en este post se hablará de los árboles de clasificación; esto se lo ha realizado por algunas ventajas que los mismos nos proporcionan, entre ellas tenemos:

  • Sencillez.
  • Accesibilidad a diferentes implementaciones.
  • Aporta con una explicación al momento de analizar la clasificación realizada.
  • Pueden ser representados en forma gráfica.
  • Representa una gran rapidez a la hora de clasificar nuevos patrones.

Definición: Los árboles de clasificación tienen una estructura en forma de árbol, en la que las ramas representan conjuntos de decisiones; estas decisiones generan sucesivas reglas para la clasificación de un conjunto de datos en subgrupos de datos disjuntos y exhaustivos.  Las ramificaciones se generan de forma recursiva hasta que se cumplan ciertos criterios de parada.

Árbol de clasificación de los seres vivos.

Para nuestro estudio se tomará como referencia la clasificación de los seres vivos, misma que ha sido recuperada desde el enlace “Clasificación de los seres vivos”, donde se muestran en forma de tabla la clasificación existente entre las diferentes especies de seres vivos.

Este árbol servirá como herramienta de aprendizaje para que las personas interesadas en conocer aspectos relacionados a este tema, puedan practicar en base a un escenario de conocimiento que no implica estrictos conocimientos en el área biológica, sino más bien se presenta como una propuesta en la cual el conocimiento se genere de una forma rápida e intuitiva.

A continuación se presentan algunos conceptos, definiciones y aspectos relevantes de los árboles de clasifiación.

ESTRUCTURA: La estructura de un árbol de clasificación consta de los siguientes elementos.

  • Nodo Raíz: En este nodo se encuentran agrupados todos los elementos que van a ser clasificados (Ejemplo: SERES VIVOS).
  • Nodos Intermedios: Son aquellos nodos que se encuentran en una posición intermedia del árbol, su finalidad es permitir la selección de una opción (Ejemplo: ANIMAL, Parazoa, Eumetazoa, Artropodos, Cordados, Vertebrados).
  • Nodos terminales: también llamados nodos hoja, debido a que no tendrán descendencia posterior representan a una categoría específica previamente definida en el dominio del problema (Ejemplo: Cianobacterias, Bacterias, Protozoo, Algas, Poriferos o esponjas, Cnidarios, Platelmintos o gusanos planos, Nematodes o gusanos cilíndricos, Anelidos, Moluscos, Equinodermos, Aracnidos, Miriapodos, Crustáceos, Insectos, Peces, Anfibios, Reptiles, Aves, Mamiferos).

Dependiendo del dominio del problema que estemos clasificando, deberemos responder las siguientes preguntas:

¿Cómo se realiza la selección de las divisiones?

Aplicando al ejemplo: La selección de divisiones se realiza en base a aspectos fisiológicos de los ejemplares a clasificar.

¿Cómo se toma la decisión de declarar a un nodo como intermedio o como hoja?

Aplicando al ejemplo: Los nodos intermedios en este tipo de clasificación se han declarado así debido a características en común que tienen con otros individuos, pero que al seguir analizando sus características físicas pueden ser catalogadas en grupos tan específicos, de los cuales no se conozca una subdivisión (nodos hoja).

y ¿Cómo se asigna la pertenecía de cada nodo hoja a las posibles clases?

Aplicando al ejemplo: Uno de los ejemplares que se ha tomado del conjunto Seres Vivos, tiene las siguientes características: Es animal, posee tejidos, presenta una cuerda dorsal, en su fisionomía cuenta con la presencia de vertebras, su forma de alimentar a las crías es por medio de sus glándulas mamarias.

Con todas estas características podríamos irlo clasificando de la siguiente manera:

Es animal -> Animal

posee tejidos -> Eumetazoa

presenta una cuerda dorsal -> Cordado

en su fisionomía cuenta con la presencia de vertebras -> Vertebrados

su forma de alimentar a las crías es por medio de sus glándulas mamarias. -> Mamíferos.

TIPOS DE ÁRBOLES DE CLASIFICACIÓN

Existen varias taxonomías mediante las cuales se puede realizar la clasificación de estos árboles, una de las más frecuentes es aquella en la que se evalúa la naturaleza de la variable a ser tratada; pudiendo ser discreta o continua. Si la variables son discretas al árbol resultante se lo conoce como árbol de clasificación; pero si las variables son continuas al árbol se lo conoce como árbol de regresión (Para nuestro ejemplo se ha trabajado con variables discretas, razón por la cual el árbol de nuestro ejemplo es un árbol de clasificación)

Otra forma de clasificar a estos árboles es por el número de ramas o hijos que se permite salir de un nodo, existen algunas variantes, entre ellas árboles binarios, árboles ternarios, árboles n-arios. (El árbol de clasificación de los seres vivos corresponde al grupo de árboles n-arios).

Espero les ayude a entender aunque sea de forma muy básica el funcionamiento de los árboles de clasificación, saludos.

¿Qué es el aprendizaje automático?

Es una rama de la Inteligencia Artificial que tiene como objetivo el desarrollar técnicas que permitan que las computadoras puedan aprender.

Es decir, crear programas que sean capaces de generalizar los comportamientos partiendo de una información que no esté estructurada suministrada en forma de ejemplos.

Para ver artículo completo ir al siguiente enlace:

http://robpau007.wordpress.com/

Por: Roberth Paúl Bravo Castro

Los modelos ocultos de Markov (HMM) desempeñan un función importante el desarrollo de herramientas para la modelización altamente flexible, inicialmente utilizada en el campo del reconocimiento automático del habla, que ha encontrado en los últimos años numerosas aplicaciones en áreas científico-técnicas muy diversas, aunque su utilización en otras áreas es escasa. Dentro de la descripción de los elementos esenciales de los HMM, se presentan los algoritmos básicos que facilitan su estimación y se indica una herramienta reciente, para las posibilidades que puedan ofrecer un análisis de patrones espaciales complejos, pues permiten incorporar en el proceso de modelización información a priori sobre el sistema analizado.

En las áreas en las que los HMM están más extendidos, se utilizan, en general, con un enfoque de aprendizaje automático, en problemas en los que se dispone de una abundante base de datos (denominados de entrenamiento) con los que es posible seleccionar y estimar el HMM más apropiado (a veces, con un gran número de estados ocultos), obteniéndose modelos con una alta capacidad de predicción, pues el problema típico es clasificar o identificar nuevos datos.[1]

Los algoritmos necesarios para los HMM discretos son fácilmente implementables, la complejidad aumenta en el caso continuo y en las extensiones a los modelos básicos. Afortunadamente, existen distintas herramientas para el trabajo con HMM disponibles, muchas de ellas de uso libre, para diferentes entornos de computación [2]

El programa comercial MATLAB (http://www.mathworks.com/products/matlab/), en su paquete (toolbox) de estadística, ofrece las funciones básicas para construir, simular y analizar HMM discretos.

Mediante la creación de redes neuronales con las herramientas: JNNS (Java Neural Network Simulator), JHMMSim (Java Hidden Harkov Model Simulator).

Esta herramienta desarrollada por Relex, es una herramienta flexible, de gran alcance para modelar sistemas complejos, Relex Markov ® proporciona una muy buena capacidad de análisis de las cadenas ocultas de Markov en una forma fácil de usar, completo paquete. Relex Markov provides fast, accurate reliability analyses for complex systems with common cause failures, degradation, induced or dependent failures, multi-operational state components, and other sequence-dependent events. Relex Markov proporciona una rápida, análisis de fiabilidad de sistemas complejos con los fallos por causa común, la degradación, inducidos o fracasos dependen de múltiples componentes operativos, y otros que dependen de secuencia de eventos.

Características y Beneficios de Tecnic. Markov

  • Estado de transición diagramas
  • Eventos dependientes
  • Degradamientos, y los Estados fallidos
  • Flujo de resultados en el estado estable
  • Los fallos por causa común
  • Inducida por los fracasos
  • Sistema de degradación
  • Multi-operational state components Multi-Estado de funcionamiento componentes
  • Cost analysis Análisis de costos.

Figura 1.- El desarrollador de Relaciones Markov calcula las cifras de la dinámica de árboles que falta construir utilizando Relex Fault Tree. [4]

Figura 2.- Sistema de estados y transiciones son fácilmente diagramados, los parámetros pueden ser asignados con simplicidad y haciendo clic en las operacion

Juan Pablo Pizarro.

Los Árboles de clasificación, o también llamados modelos basados en árboles, se fundamentan en el principio de “divide y vencerás”, construyendo un árbol que en cada nodo establece unas condiciones sobre un atributo, dividiendo así el conjunto de casos en subconjuntos que cumplen cada condición. Los subconjuntos se vuelven a dividir añadiendo nuevos niveles al árbol hasta detenerse mediante algún criterio.

· Reglas de Clasificación: las reglas con cláusulas de lógica proposicional donde las premisas son condiciones sobre los atributos de los ejemplos y el consecuente es una etiqueta con la clase que se le asignará en caso de que se aplique la regla.

Los árboles de clasificación presentan dos ventajas fundamentales respecto a las redes neuronales.

La primera, es que el conocimiento que se extraiga el árbol se puede representar de forma inteligible mediante reglas de decisión.

La segunda es que obedece a un criterio estadístico, puesto que para llegar a la solución establece distribuciones de probabilidad sobre las categorías de las clases en cada uno de sus nodos.

También, existen opciones de mejoras de estos modelos, en donde elegir es mucho más reducido que el de redes neuronales, este proceso implica tener dos grandes grupos de algoritmos de “poda” del árbol, la pre-poda y la post-poda

En la pre-poda se van aplicando criterios al desarrollo del árbol, y si aplicamos algún tipo de condición que varié esos criterios, estaríamos frenando el desarrollo del árbol, por lo que evitaríamos un sobre entrenamiento que se podría dar, al presentársele casos nuevos que debilitarían sus capacidad de generalización.

La post-poda, es el otro criterio, y el más usado ya que permite un desarrollo total del árbol hasta conseguir nodos homogéneos, para luego eliminarse utilizando algún criterio.

Estos algoritmos se enfocan en la capacidad de disminuir el (overfitting) o sobreentrenamiento de un árbol, sin perder indirectamente la capacidad de generalización, que puedes enfrentarse a nuevos casos de una manera eficiente.

Una ventaja que presenta sobre otros métodos es que la forma de representar el conocimiento es más sencilla. En lugar de usar el conjunto de variables para tomar una decisión, se trata de usar diferentes subconjuntos de las variables, para diferentes niveles del árbol (reglas de decisión).

Ventajas:

Los árboles de clasificación, poseen:

· La regla de asignación son simples y legibles, por tanto la interpretación de resultados es directa e intuitiva.

· Es robusta frente a datos típicos u observaciones mal etiquetadas.

· Es válida sea cual fuera la naturaleza de las variables explicativas: continuas, binarias nominales.

· Es una técnica no paramétrica que tiene en cuenta las interacciones que pueden existir entre los datos.

· Es rápido computacionalmente.

Desventajas:

Se puede mencionar como:

· Las reglas de asignación son inestables.

· Dificultad para elegir el árbol óptimo.

· Ausencia de una función global de las variables y como consecuencia pérdida de la representación geométrica.

· Los árboles de clasificación requieren un gran número de datos para asegurarse que la cantidad de las observaciones de los nodos hoja es significativa.

Elaborado por: Juan Pablo Pizarro.

Las redes bayesianas o probabilísticas son una representación gráfica de dependencias para razonamiento probabilístico en sistemas expertos, en la cual los nodos y arcos representan:

  • Nodo: Variable proposicional.
  • Arcos: Dependencia probabilística.

El aprendizaje en las redes bayesianas se divide en dos grandes grupos:

APRENDIZAJE ESTRUCTURADO: Con el cual se obtiene la estructura de la red, es decir se obtienen las relaciones, dependencias e independencia entre las variables. Dentro de este grupo se encuentran clasificados: El aprendizaje de árboles y el aprendizaje poliárboles.

Aprendizaje de árboles: En este método de aprendizaje se trata de aproximar una distribución de probabilidad, por medio del producto de probabilidades de segundo orden. La resolución de este tipo de problemas de aprendizaje se plantea como un problema de optimización, es decir, obtener una estructura de árbol que se aproxime a una distribución basada en la diferencia de una distribución real y aproximada.

El algoritmo para determinar árbol Bayesiano óptimo a partir de datos es el siguiente:

1. Calcular la información mutua entre todos los pares de variables (n(n-1)/2).

2. Ordenar las informaciones mutuas de mayor a menor.

3. Seleccionar la rama de mayor valor como árbol inicial.

4. Agregar la siguiente rama mientras no forme un ciclo, si es así, desechar.

5. Repetir (4) hasta que se cubran todas las variables (n-1ramas)

Aprendizaje de Poliárboles: Se basa en el uso de pruebas de tres variables o comúnmente llamadas tripletas. Se basa en el algoritmo de árboles y se determina la dirección de los arcos mediante el uso de pruebas de dependencia.

Los pasos del algoritmo son:

1. Mantener el esqueleto usando el algoritmo de árboles.

2. Recorrer la red hasta encontrar una tripleta de nuevo, que sean convergentes (la variable a donde apuntan los arcos se conoce como nodo multipadre).

3. Del nodo multipadre se determinan las direcciones de otros arcos, esto mediante la prueba de dependencia en tripletas.

4. Repetir los pasos anteriores hasta que no hayan más direcciones que descubrir.

APRENDIZAJE PARAMÉTRICO:

Dada una estructura, obtener las probabilidades a priori y condicionales requeridas.

El aprendizaje paramétrico consiste en encontrar los parámetros asociados a una estructura dada de una red bayesiana. Dichos parámetros consisten en las probabilidades a priori de los nodos raíz y las probabilidades condicionales de las demás variables, dados sus padres. Si se conocen todas las variables, es fácil obtener las probabilidades requeridas. Las probabilidades previas corresponden a las marginales de los nodos raíz, y las condicionales se obtienen de las conjuntas de cada nodo con su(s) padre(s). Para que se actualicen las probabilidades con cada caso observado, éstas se pueden representar como razones enteras, y actualizarse con cada observación.

Elaborado: Javier Capa.


Aprendizaje por Refuerzo

APRENDIZAJE POR REFUERZO

Existen algunas formas de aprendizaje de los agentes inteligentes, el aprendizaje entra en juego cuando el agente observa sus iteraciones con el mundo y sus procesos de toma de decisiones. Existen tres formas de aprendizaje: Aprendizaje supervisado, no supervisado y el aprendizaje por refuerzo.

El aprendizaje por refuerzo consiste en aprender a decidir, ante una situación determinada, que acción es la más adecuad para lograr un objetivo. Consta de dos componentes. Componente selectiva que involucra la selección de la mejor acción a ejecutar de entre varias opciones y la componente asociativa, en el sentido de que las alternativas encontradas se asocian a situaciones particulares en que se tomaron.

El aprendizaje por refuerzo es adecuado cuando no existe un conocimiento “a priori” del entorno o este es demasiado complejo como para utilizar otros métodos.

MODELO DE APRENDIZAJE POR REFUERZO

Un agente hardware y software está conectado a su entorno vía percepción y acción. En cada instante el agente recibe desde l entorno a través de sensores el estado en el que se encuentra, s; entonces el agente decide ejecutar una acción, a , que genera como salida. Esta salida cambia el estado del entorno a s’, que es transmitido al agente junto a una señal de refuerzo r. esta señal informa al agente de la utilidad de ejecutar la acción a, desde el estado s para lograr un objetivo concreto. Este modelo se ilustra en la siguiente figura:

Figura1. Modelo de Aprendizaje por Refuerzo

El aprendizaje puede ser pasivo y activo.

En el aprendizaje pasivo la política del agente está fijada y la tarea es aprender las utilidades de los estados (o parejas estado acción) mientras que el aprendizaje activo el agente debe aprender también que hacer. El esfuerzo activo además de recoger información del entorno utilizará ésta para tomar decisiones sobre la siguiente acción a realizar.

El objeto del aprendizaje mediante el refuerzo es un comportamiento que permite resolver problemas óptimamente. Un comportamiento no es más que un conjunto de acciones que se realizan para resolver un problema y política al conjunto de acciones que se realizan en cada situación para resolver un problema.

Debido a que se produce una señal de esfuerzo. Esta se divide en inmediata o retardada

REFUERZO INMEDIATO

En éste refuerzo se obtiene una crítica para cada acción efectuada justo después de su realización. La información que aporta el refuerzo inmediato es local a cada acción tomada. Debe aprenderse una acción a realizar en cada situación para obtener un refuerzo positivo después de su ejecución.

Existen diversos algoritmos para el aprendizaje por refuerzo inmediato como:

  • ALGORITMO LINEAL DE PREMIO-CASTIGO
  • ALGORITMO LINEAL DE REFUERZO – INACCION

ü REFUERZO RETARDADO

Este refuerzo es más complicado ya que no tenemos una crítica para cada acción sino una estimación global del comportamiento. Se presenta cuando no se completa la secuencia de acciones empleadas para resolver el problema

Al ejecutar una acción el refuerzo no solo depende de ella sino también de las realizadas anteriormente.

REFUERZO PASIVO

Solo tenemos una estimación global del comportamiento y no una crítica para cada acción realizada, con lo cual el problema se complica. El esfuerzo obtenido al ejecutar una acción no depende únicamente de ella sino también de las realizadas anteriormente. El entorno genera las transiciones y el agente las percibe.

BIBLIOGRAFIA

MoMORENO A., Armengol E, Béjar J., Sánchez M., “Aprendizaje Automático”, 1994

Dr COOK Peter, “Intelligent Systems-Fusion, Tracking and Control”, 2003

RUSELL Stuart, NORVING Peter , “Inteligencia Artificia Un Enfoque Moderno”

BAARAUJO Basilo, “Aprendizaje Automático: Conceptos Básicos y Avanzados” ,2006

http://www.fleifel.net/ia/robotsyaprendizaje.php

http://www.cs.us.es/~delia/sia/html98-99/pag-alumnos/web10/indice.html


v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
<!– /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face {font-family:”Cambria Math”; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-1610611985 1073750139 0 0 159 0;} @font-face {font-family:Arial-BoldMT; panose-1:0 0 0 0 0 0 0 0 0 0; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-format:other; mso-font-pitch:auto; mso-font-signature:3 0 0 0 1 0;} @font-face {font-family:ArialMT; panose-1:0 0 0 0 0 0 0 0 0 0; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-format:other; mso-font-pitch:auto; mso-font-signature:3 0 0 0 1 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:””; margin-top:0cm; margin-right:0cm; margin-bottom:10.0pt; margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:”Calibri”,”sans-serif”; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:”Times New Roman”; mso-bidi-theme-font:minor-bidi;} p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph {mso-style-priority:34; mso-style-unhide:no; mso-style-qformat:yes; margin-top:0cm; margin-right:0cm; margin-bottom:10.0pt; margin-left:36.0pt; mso-add-space:auto; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:”Calibri”,”sans-serif”; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:”Times New Roman”; mso-bidi-theme-font:minor-bidi;} p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst {mso-style-priority:34; mso-style-unhide:no; mso-style-qformat:yes; mso-style-type:export-only; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; mso-add-space:auto; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:”Calibri”,”sans-serif”; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:”Times New Roman”; mso-bidi-theme-font:minor-bidi;} p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle {mso-style-priority:34; mso-style-unhide:no; mso-style-qformat:yes; mso-style-type:export-only; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; mso-add-space:auto; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:”Calibri”,”sans-serif”; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:”Times New Roman”; mso-bidi-theme-font:minor-bidi;} p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast {mso-style-priority:34; mso-style-unhide:no; mso-style-qformat:yes; mso-style-type:export-only; margin-top:0cm; margin-right:0cm; margin-bottom:10.0pt; margin-left:36.0pt; mso-add-space:auto; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:”Calibri”,”sans-serif”; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:”Times New Roman”; mso-bidi-theme-font:minor-bidi;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:”Times New Roman”; mso-bidi-theme-font:minor-bidi;} .MsoPapDefault {mso-style-type:export-only; margin-bottom:10.0pt; line-height:115%;} @page Section1 {size:595.3pt 841.9pt; margin:70.85pt 3.0cm 70.85pt 3.0cm; mso-header-margin:35.4pt; mso-footer-margin:35.4pt; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:191042340; mso-list-type:hybrid; mso-list-template-ids:-1845309324 201981953 201981955 201981957 201981953 201981955 201981957 201981953 201981955 201981957;} @list l0:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} –>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:”Tabla normal”;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:””;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:10.0pt;
mso-para-margin-left:0cm;
line-height:115%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:”Calibri”,”sans-serif”;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;}

Introducción a redes neuronales

Una red neuronal es una estructura computacional capaz de representar las relaciones

Funcionales no lineales entre variables de entrada y salida. Como se mencionaba más arriba, las redes neuronales son modelos de estructura libre, pero existen diferentes configuraciones posibles para las mismas y pueden emplearse diversos algoritmos de entrenamiento.

Las redes consisten, básicamente, de un determinado número de elementos de cálculo,

llamados neuronas, las cuales pueden ser dispuestas en varias capas.

La primer capa, es donde se alimentan las entradas. La última capa, es donde las salidas

predichas son obtenidas. Pueden existir un dado número de capas entre estas dos, llamadas capas ocultas. Típicamente se ha encontrado que una sola capa oculta es suficiente para la mayoría de las aplicaciones. Cada neurona en la capa de entrada es conectada a todas las neuronas de la capa oculta y estas a su vez son conectadas a todas las neuronas de la capa de salida por medio de una cierta función matemátíca conocida como “función de transferencia”. Existe un parámetro llamado “peso de la conexión” que está asociado con cada una de estas conexiones. También se emplea para las neuronas un corrimiento o bias sobre la salida, en las capas ocultas y de entrada.

Esquemáticamente la estructura de la red neuronal, indicando las capas de neuronas de entrada, ocultas y de salida.

Modelo de la Unidad de Procesamiento Elemental

McCulloch and Pitts en 1943 [MP43] concibieron un modelo abstracto y simple de una neurona

artificial, este es el elemento básico de procesamiento en una red neuronal artificial. En la figura se muestra su esquema:

Referencias

· “Improve control with software monitoring technologies” P. B. Deshpande – S.

Yerrapragada and E.F. Jacob, Hydrocarbon Processing – September 1996.

ALGORITMOS DE CLASIFICACION POR VECINDAD

Abstract

La cantidad excesiva de documentos en lenguaje natural disponibles en formato electrónico hace imposible su análisis. Una solución propuesta a este problema son los sistemas de extracción de información, los cuales permiten estructurar datos relevantes a un dominio específico en los documentos. En otras palabras, la extracción de información convierte el problema de analizar una colección de textos en consultar una base de datos, siendo esto último más rápido de realizar además de hacer más factible encontrar una relación entre los datos. Generalmente, en la construcción de estos sistemas se emplean una variedad de recursos lingüísticos, el resultado son sistemas con un alto costo de portabilidad a nuevos dominios e idiomas. En este trabajo se presenta un enfoque diferente al tradicional para construir sistemas

k-Vecinos Más Cercanos

k–Vecinos más cercanos (k-NN, por sus siglas en inglés) es uno de los métodos de aprendizaje basados en instancias más básicos, pero con resultados aceptables en tareas que involucran el análisis de texto En resumen, este algoritmo no tiene una fase de entrenamiento fuera de línea, por lo tanto, el principal cálculo se da en línea cuando se localizan los vecinos más cercanos. La idea en el algoritmo es almacenar el conjunto de entrenamiento, de modo tal que para clasificar una nueva instancia, se busca en los ejemplos almacenados casos similares y se asigna la clase más probable en éstos.

Una visión general de los elementos y procesos necesarios dentro de la clasificación automática de textos

Los modelos ocultos de Markov (HMMs, por sus siglas en inglés) son la base de esta aproximación, en esta estructura se representa el conocimiento necesario para extraer los fragmentos relevantes de los textos (i.e. los patrones de extracción son representados por HMMs). Aquí, generalmente los nodos representan tokens o elementos característicos de éstos, y los enlaces representan sus relaciones, además cada enlace tiene asociada una probabilidad de ocurrencia obtenida de los datos de entrenamiento (figura anterior. En resumen, la relevancia del método es que aprovecha la estructura intrínseca de algunos textos, por lo tanto es adecuado para textos semi estructurados (SE), además de que los fragmentos de texto obtenidos son exactos.

Referencias

· T. Joachims. Text categorization with support vector machines: Learning with many relevant features. In Proceedings of the Tenth European Conference on Machine Learning (ECML’98), Lecture Notes in Computer Science, Number 1398, pp. 137-142, 1998.

· Y. Yang and J. Pedersen. A comparative study on feature selection in text categorization. In Proceedings of the 14th International Conference on Machine Learning, pp. 412-420, 1997.

· T. Yang and X. Liu. A re-examination of text categorization methods. In Proceedings of SIGIR-99, 22nd ACM International Conference on Research and Development in Information Retrieval, Berkeley, CA, pp. 42-49, 1999.

Origen

Los primeros conceptos sobre redes neuronales fueron proporcionados en el año de 1943 por Walter Pitts y Warren McCulloch. La investigación publicada sobre las redes neuronales sirvió de fundamentos para otras investigaciones realizadas en años próximos, simularon la red neuronal con circuitos eléctricos.

Red neuronal Artificial

Las redes neuronales artificiales son inspiradas en las redes neuronales biológicas que pueden ser implementadas en dispositivos electrónicos o computadoras, permitiendo el procesamiento de gran cantidad de información, capacidades de aprendizaje y entrenamiento con información proporcionada o almacenada, utilizadas en diversas áreas para el procesamiento paralelo, tolerancia a falos, etc.

Estructura de la Red Neuronal (Artificial – Biológica)

Las redes neuronales artificiales tienen la siguiente estructura Figura 1:

Las redes neuronales están compuertas por nodos conectadas por medio de conexiones dirigidas, las conexiones sirven para propagar las activaciones:

  • Las entradas son impulsos de otras neuronas.
  • Los pesos son intensidades que conectan dos neuronas
  • Función de activación es el valor que la neurona recibe para activarse

Tipos de redes neuronales

Perceptrón simple.- El Perceptrón simple desarrollada en 1957 por el psicólogo Frank Rosenblatt. Este tipo de red intentaba asemejarse a las redes biológicas aunque el perceptrón simple es relativamente sencillo y no posee muchas aplicaciones su desarrollo fue fundamental para que se desarrollen con la utilización del perceptrón aplicaciones en los sistemas informáticos. Rosenblatt demostró con la utilización del perceptrón se podían clasificar patrones correctamente. La regla de adaptación del perceptrón permite ajustar los pesos de la neurona permitiendo obtener distinción de los datos.

Estructura de la red

La estructura del perceptrón simple Figura (2), la neurona de salida del Perceptrón es la suma de las entradas, resta el umbral y pasa el resultado a una función de transferencia de tipo escalón.

El perceptron pertenece a las redes de aprendizaje supervisado requiere conocer los datos de entrada.

Perceptrón multicapa.- Un Perceptrón multicapa se caracteriza porque permite la entrada de datos hacia delante, esta formada por varias capas de neuronas entre la entrada y la salida, es mas complejo que el perceptrón simple porque posee muchas capas y toma de decisiones entre ellas.

Estructura de la red

La estructura del perceptrón multicapa Figura (3), posee muchas neuronas de entrda y salida:

Aplicaciones redes neuronales

  • Permite el procesamiento de imágenes
  • Reconocimiento de patrones
  • Mejores interfaces usuarios – computador
  • Predicción
  • Filtrado de señales
  • Análisis económicos, financiera de las empresas
  • Cambios en la tendencia del mercado

Inconvenientes

  • El aprendizaje de grandes cantidades de información es complejo.
  • El entrenamiento que esta sometido una red neuronal es elevado ocupando altos requisitos de memoria computacional.
  • Para un óptimo aprendizaje necesita grandes volúmenes de información proporcionada por un programador.

Por: Jorge Fierro

Bibliografía:

http://www.monografias.com/trabajos/redesneuro/redesneuro.shtml

http://www.redes-neuronales.netfirms.com/tutorial-redes-neuronales/tutorial-redes.htm

http://www.electronica.com.mx/neural/

http://www.answermath.com/redes_neuronales_o_neurales.htm

http://www.fortunecity.com/skyscraper/chaos/279/articulos/redesneuronales.htm

Página siguiente »



Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.