Ir al contenido principal

Perceptron Simple: Explicación y Aplicación

Hoy vengo a re-comentarles un tema muy interesante que son el uso de las redes neuronales y perceptrones, un método informático que se puede emplear y ramificar en muchas cosas, con mas entendimiento del tema voy a tratar de facilitarles la explicación básica a base de ejemplos para los no entendidos de esta rama que hoy en la actualidad se esta aplicando cada dia mas en lo que es reconocimiento facial,óptico,de texto,voz,etc.

¿Que son las redes neuronales? (wikipedia)

Las redes de neuronas artificiales (denominadas habitualmente como RNA o en inglés como: "ANN"1 ) son un paradigma de aprendizaje y procesamiento automático inspirado en la forma en que funciona elsistema nervioso de los animales. Se trata de unsistema de interconexión de neuronas que colaboran entre sí para producir un estímulo de salida. En inteligencia artificial es frecuente referirse a ellas como redes de neuronas o redes neuronales.


Durante esta etapa me voy a tratar de enfocar en explicar desde lo mas básico del tema que es el uso del simple perceptron.

¿Que es un perceptron?

El perceptron es un modelo básico de red neuronal lineal, es el ejemplo matemático mas simple a la hora de teorizar una neurona verdadera a una virtual.

Una neurona orgánica:

El modelo matemático:



La idea principal del perceptron es imitar a la organica, teniendo canales de entradas,un cuerpo y el axón por donde se va a producir el producto final.

Su funcionamiento consiste en que el algoritmo capture las entradas (X1,X2 en el caso de la imagen) , se multiplique cada entrada con la parte del patrón correspondiente ya introducido previamente en la neurona  y luego estos se sumen en un numero (X1 x w1) + (X2 x w2) y que este valor se aplaste con una tangente hiperbolica (formula que aplasta a un valor en >1 o >0) y se obtenga un estado de activación binario,es decir, 1 o 0 que va a ratificar el valor final de la neurona.
Por si no entendieron,las siguientes imágenes para su fácil comprensión:


 1 o 0, es lo quie va a definir la neurona, su deteccion de valido o falso,va a depender del código que lo maneje.

Aplicando un perceptron sobre imágenes


Como verán, el perceptron necesita una fase de entrenamiento para que el resultado ante lo puesto sea un factor de activación 1, este proceso puede ser asistido,o generado aleatoriamente, esto se puede manejar de diferentes formas dependiendo el lenguaje de programación que usen.
El sistema que toma los valores de entrada y los codifica de cierta forma a una matriz,depende también de diversos factores,por ejemplo en el uso de reconocimiento facial se usan softwares que detectan bordes,y a base de este se genera una especie de mapa poligonal que se traduce matemáticamente a lo que se puede crear una matriz, una imagen que hice de ejemplo:


La cara de emma watson

El software de escaneo óptico conforma una matriz que es transportada para representar un patrón geométrico.

De este modo, con varias imágenes se puede alimentar el valor de la neurona para así asimilar lo que se interponga.


Adaptación y ejemplo de perceptron simple en python:

Código de neurona:El código en python es el siguiente: http://pastebin.com/wqj56GQi
Código programa de ejemplo:http://pastebin.com/WfTrMq0s
Vídeo demostrativo:

El reconocimiento de letras es uno de los ejemplos mas conocidos dentro de lo que es rna. 
El programa (programado por mi en python) usa un perceptron de 25 entradas donde se introduce el patrón (que para la interfaz significa visualmente una letra) que se conforma en 1 y -1 y se los compara con patrones que se pueden enseñar en el programa, básicamente se le enseñan letras al programa y luego este las va a poder reconocer de cualquier forma (Una g torcida,va a ser una g).
El peso universal del programa fue ajustado manualmente y es uno,al ser 1 y -1 era muy básico el reconocimiento.


Saludos,luego añadire mas ejemplos de scripts que actualmente estoy trabajando.


Entradas populares de este blog

Visualizar una base de datos Firebird (.fdb)

Para visualizar correctamente una base de datos .fdb de firebird:




1)
Descargar Firebird y su driver ODBC:

 Firebird:Descargar
 Driver: Descargar

2)
Instalan los dos suplementos normalmente.


3)
XBaseView es un programa para abrirla y administrarla,soporta fdb y es la mejor que encontre hasta ahora.
Para descargar click aca







Espero que les sirva,hice este post por que internet me resulto nula al sugerir mas informacion sobre esta extension,Saludos!!

nJoy v1.3.5 {Apk + Server}

Les dejo una app android para poder manipular la pc en una serie de comandos interactivos,usar su smartphone como mouse,gamepad o joystick.

Caracteristicas:            
*Máxima fluidez.
*Conexion por Bluetooh o Wi-fi.
*Con el programa de servidor podes crear perfiles de configuración del mando para diferentes juegos.
*Te permite conectar mas de un dispositivo a la pc para poder hacer partidas multiplayer.
*Integra funciones para controlar la pc (Controles de reproducción,accesos directos,mouse pad.etc)
*Es muy sencilla de manipular.
*Configuración de interfaz del mando con una integración de mousepad y gamepad para manejar juegos en primera persona.
y más..


Imagenes:




Descarga:  nJoy 1.3.5 (Ultima versión) + Servidor (Windows)
       Link Mediafire: http://adf.ly/pg4is
       Link 4Shared: http://adf.ly/pg4i4

Instalación:
1)Solamente tienen que instalar el apk en su android (pasar el archivo apk al telefono y con un buscador instalarlo) o airdroid,
2)Proceden a instalar el servidor,lo inician,in…

Deer Hunter 2005 Crack no CD[v1.0,1.|][LINK RENOVADO[7/2/2013]]

Hola de nuevo,les dejo un crack que saqué de internet medio complicado de conseguir para el DH2005, un juego de simulación de caza muy bueno,uno de los mas conocidos..




DESCARGA: Lamentablemente mediafire me jode con los copyright,pero ahora les dejo el crack subido a 3 servidores (incluyendo de nuevo mediafire).

Mediafire: http://www.mediafire.com/?3xffh2clg3i24ma

4shared   : http://www.4shared.com/rar/y37NSbsP/Deer_Hunter_NetixZencomar.html?


Mega: https://mega.nz/#!mZxAAKDL!2q8ECRtWbuKmoSPCJhQg5YLjtZkyeJ6GHq6JiuJeMLU

Contraseña:No tiene contraseña


Virus:No,Puede que el antivirus te lo detecte como troyano,esto es falso,ya que los antivirus tienden a detectar cracks como programas malignos, solo desactiva el escudo por 1 min o añade el archivo a una lista de excepciones y usa el crack normalmente.


MANUAL:Montar servidor Lineage II C4 JAVA

Sobre el tutorial:
-►Contiene especificaciones de como montar el server de l2 java con el datapack de l2jfree,tambien como configurarlo via hamachi u otros.
-►Contiene mas de 50 imagenes del proceso echas por mi..
-►Los link del pack de herramientas y datapack los subire despues cuando tenga tiempo,pero tiene el tutorial como base hasta que llegue dicho momento (en unos dias cuando lo termine bien).  

Requisitos:
Tener una leve capacidad de manejo informatico

 Aca les dejo el link y los futuros mirrors:

MEDIAFIRE.COM

Para el datapack:

http://netixzen.blogspot.com.ar/2014/09/l2j-server-c4-2014sep.html


Especificaciones sobre el archivo:
Tipo de Archivo: .rar donde adentro hay un .doc que se visualiza con word u otro.
Peso:6mb aproximadamente.
Virus:Ningun virus detectado. 


Clean Code [PDF-Mega]

Hola a todos! En esta ocasión les dejo lugar a una muy interesante lectura dedicada exclusivamente para los programadores.


 "Código Limpio" es un libro que habla acerca de las diferentes técnicas, modalidades y consejos para tratar un tema muy importante que es la escritura,como lo dice el titulo, de un código limpio, claro y eficiente para su entendimiento, haciendo alusión a la profesionalidad.
Si necesitas una guía de acerca de como escribir un buen código, que sea fácil de entender para uno mismo, otros programadores o parte propia del equipo , estas ante una de las mejores consejeros para conseguir el objetivo ya seas un programador recién iniciado o ya experimentado.
Contiene diferentes tips, consejos, citas, un poco de historia, casos hipotéticos, fragmentos de códigos, un antes y después, y otros ejemplos prácticos para mejorar el entendimiento y convertirte en un programador ágil a la hora de expresar código de una manera correcta y legible que involucre buenas pract…

L2j Server C4 2014/sep

Les dejo una versión del datapack basado en  L2j Lisvus, donde añadí unas mejoras y npc nuevos,como el de subclase y otros..

Características:

-Basado hasta el ultimo update de  L2j Lisvus pack server.
-Los skilles corregidos.
-Pagina web añadida.
-Npc posicionados.
-Npc Buffer corregido.
-GK global.
-Habilite el bar de Gludin como en C1 xD aunque tiene el npc de juegos,despues veo si programo uno que venda bebidas jaja.
-Incluí las herramientas necesarias y la db completa (obligatoria)
-Otras cosas..

Descarga:

 Descarga por Mediafire:https://www.mediafire.com/?hw0o2k0rnnns02v
 Descarga por 4shared:   http://www.4shared.com/rar/iCEux-AAba/L2J_Server_C4_netixzenblogspot.html


Instalacion:

Siguen masomenos el manual este: http://www.netixzen.blogspot.com.ar/2012/09/megatutorial-de-como-hacer-un-server-de.html

Luego en vez de instalar la db,crean la db desde el navicat e inyectan el sql que deje en la carpeta principal del server,para que funcione.La inyección va a tomar un rato.

Aclaraciones…

Usar Dispositivo Android como Volante para PC

En esta ocasion les dejo una app para usar su dispositivo android con acelerometro como manubrio/volante/joystick para su pc.


Lo que tienen que hacer es descargar el siguiente archivo:
https://www.mediafire.com/?ewbcjrqslt93y8z

Luego van a ver que tiene un apk y un programa para instalar,el programa es el cliente y el apk es lo que vamos a instalar en nuestro dispositivo.
A la hora de instalar el cliente le damos si a lo que la instalacion de drivers y soportes que tiene para que funcione,les va a quedar algo asi:


Luego van a instalar el apk en su celualr,copiando el apk a la memoria,buscandolo con un gestor de archivos y abriendolo para proceder a la instalacion.

Una vez instaladas las dos cosas,procedemos a abrir la aplicacion 




En el cliente tienen que apretar en "Start Server" y se va a iniciar el servidor para que nuestro dispositivo se conecte a través de la app y pueda funcionar como un control real.

En la app colocamos la ip que aparece en el cliente de la pc

Y si todo…