Entradas

Diferentes técnicas de las redes neuronales

Imagen
DIFERENTES TÉCNICAS DE LAS REDES NEURONALES En la entrada anterior hemos visto, un poco por encima, lo que son las redes neuronales artificiales y de que se componen. La explicación de como se consigue  la salida de las neuronas y de la red en su totalidad, encaja con una técnica de las redes neuronales: Forward Propagation. La primera técnica que se va a explicar en esta entrada. Forward propagation El Forward propagation  es una implementación vectorial de las funciones de las redes neuronales, es decir, explica como pasan los valores de entrada (x) a ser los valores de salida, como se transforman.  Aunque ya se haya explicado este proceso en la entrada anterior, vemos necesario volver a explicarlo, para entender correctamente las demás técnicas (si lo habéis entendido bien, podéis saltar un poco más hacia adelante). Bien pues, primero las entradas (x) se multiplican con una  matriz de pesos ( θ )  que controla la función de mapeo de una ca...

Redes neuronales

Imagen
REDES NEURONALES Hasta ahora hemos comentado una rama del aprendizaje automático que consistía en el aprendizaje supervisado ( Regresión lineal ) y el no supervisado ( Regresión logística ). En esta entrada saltaremos a otra rama de este tipo de aprendizaje: a las Redes neuronales . Si en las técnicas de aprendizaje anteriores hemos visto cómo aprenden las máquinas a partir de ejemplos y como consiguen modelos o funciones (h) que se parecen a la realidad (y); usando para ello funciones de coste (J), gradientes de descenso para optimizar, etc. Ahora nos centraremos en el aprendizaje automático que más se parece al de nuestro cerebro: aprender usando  neuronas. Una neurona artificial funciona de la misma manera que una neurona real. Tiene unas entradas (Dendritas) que se introducen al cuerpo de la neurona y después de una computación salen por la salida (Axiomas). Neuronal real : La información entra por las dendritas, en el cuerpo y núcleo se dan los "cálculos" o ...

BSA & Bee

Imagen
Lo siento, pero estos algoritmos ya están cogidos II En la segunda ronda de Técnicas Evolutivas os presentamos el algoritmo Backtracking Search y el algoritmo de las abejas. Algoritmo Backtracking Search - BSA El algoritmo BSA se basa en una mutación de retroceso, esto es, se creará una población mutada utilizando las poblaciones de la iteración actual y la anterior. Vamos a ser prácticos. Este algoritmo es muy parecido al algoritmo DE . La diferencia: la fórmula de la población mutada. La fórmula esta vez será la siguiente: Y i = X actual + F*(X anterior - X actual ) Donde F es el rango de mutación y puede tomar cualquier valor de 0 a 3. Los pasos del BSA son los mismos del algoritmo DE: Generar una población de agentes X. En la primera generación/iteración, la población anterior (X anterior ) será igual que X actual . Crear una población mutada Y, usando las poblaciones Xactual y Xanterior. Crear una cuarta población de agentes descendientes (T) con l...

PSO y DE

Imagen
Lo siento, pero estos algoritmos ya están cogidos I Empezamos la ronda de Técnicas Evolutivas con el algoritmo PSO y DE. Algoritmo de Optimización por Enjambre de Partículas - PSO El algoritmo PSO se basa en mover unas "partículas" o "agentes" (soluciones candidatas) por un espacio de búsqueda (variables a optimizar) según unas reglas matemáticas que tienen en cuenta la posición y la velocidad de las partículas. El movimiento de las partículas dependerá de su última mejor posición local y de las mejores posiciones globales de las otras partículas. De ese modo las partículas se "ayudan mutuamente". GIF: descenso de gradiente. Perdona ¿Cómo? Para entendernos mejor, supongamos que la pesca es el deporte de moda actual, y que estamos en época de pesca. Nos encontramos en un lago precioso, con nuestro bote, la caña de pescar, un bocata de tortilla, y muchas ganas de encontrar el mejor pescado del lago. Porque sabemos que existe UN mejor p...

Inteligencia de Enjambre

Imagen
¿Quiere ser usted pseudo- famoso? Invéntase un algoritmo de Inteligencia de Enjambre La Swarm Intelligence es una Técnica Evolutiva cuyo objetivo principal es generar soluciones para resolver problemas de optimización difíciles utilizando técnicas inspiradas en la evolución natural, tales como la mutación, selección o creación de agentes híbridos (sí, todas las definiciones de los diferentes tipos de IA s suenan parecidas). Este sub-campo se diferencia de los demás por el estudio del comportamiento colectivo de sistemas descentralizados u auto-organizados. Los humanos mismos somos un ejemplo de este tipo de colectivos, como también lo son las hormigas, las bacterias o cualquier otro grupo de criaturas simples que interactúan localmente entre ellas y con su medio ambiente. Estas criaturas o agentes, siguen unas reglas simples, que globalmente derivan en un comportamiento complejo. Imagen: comportamiento de un colectivo de pajaros. El comportamiento global complejo...

Técnicas Evolutivas - Algoritmos Genéticos (AG)

Imagen
Como dice mi madre: la naturaleza es muy sabia Si en miles y miles de años de evolución, la naturaleza ha sido capaz de crear criaturas capaces de adaptarse a un entorno y de cumplir su objetivo (sobrevivir) ¿Porque no ser vagos y copiar el método de trabajo de la naturaleza y aplicarlo en otro tipo de objetivos? Porque si algo define a los ingenieros, es la pereza (el pecado capital más inofensivo, pues evita que se cometan los otros 6) y el ímpetu en hacer los trabajos mas llevaderos y fáciles (bendito aquel que decidió ponerle un palo a un trapo). Imagen: genealogía genética. Así pues, una Técnica Evolutiva es una rama de la IA que se inspira en la evolución biológica para resolver problemas utilizando algoritmos genéticos. El mundo de las técnicas evolutivas es bastante amplio, por lo que en este blog se explicarán algunos algoritmos de Inteligencia de Enjambre . Pero primero se procederá a explicar lo que es una algoritmo genético. Algoritmos Genético...

Regresión logística

Imagen
REGRESIÓN LOGÍSTICA En la entrada anterior del aprendizaje automático hemos hablado sobre la regresión lineal. Esta técnica de aprendizaje automático consistía en entrenar un modelo/función (h) para que fuese capaz de predecir los valores de la salida, siempre generalizando. La regresión lineal es idea en problemas donde la salida es continua, pero no lo es tanto a la hora de clasificar los datos en grupos su actuación.  Por ello existe la regresión logística, que a diferencia de la regresión lineal, se centra en CLASIFICAR los datos en grupos o en discretizarlos. Ejemplo de que como la regresión lineal no sirve para clasificar datos, la regresión logística sí que lo vale. Tal como se ha dicho, la regresión logística se usa para la clasificación de datos, pero ¿Cómo funciona realmente? ¿Qué diferencias tiene con la regresión lineal? Clasificación El objetivo de la clasificación es diferenciar los datos en dos o más grupos. Primero nos centraremos en la separac...