La IA es una ciencia que se ocupa del diseño de sistemas de computación capaces de mostrar características que asociamos a la inteligencia en el comportamiento humano: comprensión del lenguaje, razonamiento, aprendizaje y resolución de problemas, entre otros.
En 1956, John McCarthy acuñó la expresión «inteligencia artificial», y la definió como «la ciencia e ingenio de hacer máquinas inteligentes, especialmente programas de cómputo inteligentes».5
Para Nils John Nilsson son cuatro los pilares básicos en los que se apoya la inteligencia artificial:
También existen distintos tipos de percepciones y acciones, que pueden ser obtenidas y producidas, respectivamente, por sensores físicos y sensores mecánicos en máquinas, pulsos eléctricos u ópticos en computadoras, tanto como por entradas y salidas de bits de un software y su entorno software.
Varios ejemplos se encuentran en el área de control de sistemas, planificación automática, la habilidad de responder a diagnósticos y a consultas de los consumidores, reconocimiento de escritura, reconocimiento del habla y reconocimiento de patrones. Los sistemas de IA actualmente son parte de la rutina en campos como economía, medicina, ingeniería y la milicia, y se ha usado en gran variedad de aplicaciones de software, juegos de estrategia, como ajedrez de computador, y otros videojuegos.
Los algoritmos evolutivos constituyen un campo de investigación que incluye:
Evolving simple programs for playing Atari games
http://www.aetsa.org/download/publicaciones/antiguas/AETSA_2009-6_Algoritmos_geneticos.pdf
A partir de la metodología se identifica el número de variables de entrada (neuronas de entrada) y las respuestas que se quieren obtener para las distintas combinaciones de las variables de entrada.
Las opciones son: considerar toda la metodología como una NN o considerar el salto entre actos/escenas como un proceso decisorio susceptible de ser modelado como NN.
En redes computacionales, la Función de Activación de un nodo define la salida de un nodo dada una entrada o un conjunto de entradas. Se podría decir que un circuito estándar de computador se comporta como una red digital de funciones de activación al activarse como “ON” (1) u “OFF” (0), dependiendo de la entrada. Esto es similar al funcionamiento de un Perceptrón en una Red neuronal artificial.
— https://es.wikipedia.org/wiki/Funci%C3%B3n_de_activaci%C3%B3n
Con vistas al entrenamiento supervisado de la red neural que desarrollamos hay que elaborar un conjunto de datos de entrenamiento procedentes de datos reales.
Al ser un software conversacional hay que identificar qué interacciones suponen un refuerzo positivo y un refuerzo negativo a las respuestas proporcionadas por la NN.
http://cs.stanford.edu/people/karpathy/convnetjs/
ConvNetJS is a Javascript library for training Deep Learning models (Neural Networks) entirely in your browser. Open a tab and you're training. No software requirements, no compilers, no installations, no GPUs, no sweat.
This course introduces students to the basic knowledge representation, problem solving, and learning methods of artificial intelligence. Upon completion of 6.034, students should be able to develop intelligent systems by assembling solutions to concrete computational problems; understand the role of knowledge representation, problem solving, and learning in intelligent-system engineering; and appreciate the role of problem solving, vision, and language in understanding human intelligence from a computational perspective.
As Taught In | Fall 2010 |
---|---|
Level | Undergraduate |
Libro de Mira, Delgado, Boticario y Díez, Aspectos básicos de la Inteligencia Artificial, UNED, ed Sanz y Torres, 1995, reimpresión 2003.
En OpenBSD pueden cargarse los siguientes packages
fann-2.1 | Fast Artificial Neural Network Library |
---|---|
p5-AI-FANN | interface to the Fast Artificial Neural Network library |
Existe una iniciativa para crear componentes de fuente abierta para aplicar la inteligencia artificial al desarrollo de software. El proyecto se llama source{d} y, en palabras del exingeniero de Google que se ha unido al proyecto:
“Machine Learning will revolutionize how we analyze programs. There’s a never-ending list of use cases that could benefit from ML over source code and (one day) source code generation from unit tests or even natural language specifications”
— Joaquín Herrero (@joakinen) - https://twitter.com/joakinen/status/940865722749804544
youtube.com, ML 2017 - Pascal van Kooten - Neural Complete