Inteligencia Artificial: Algoritmos para automatizar la toma de decisiones
Por Alfonso Calderón,
Director Corporativo de Tecnología y Desarrollo Softland.
La Inteligencia Artificial, IA, se compone de un conjunto de algoritmos que tienen como objetivo disponer en las máquinas las mismas capacidades deductivas y de decisión que los seres humanos. El deseo final es que las máquinas aprendan de la experiencia, se ajusten a las nuevas circunstancias y realicen tareas lo más próximo posible a como lo haría un ser humano.
El proceso asociado para lograr el objetivo final de un Sistema de IA está compuesto a su vez de un proceso de aprendizaje (recogida de información y reglas para su uso), razonamiento (reglas para llegar a conclusiones) y autocorrección.
Básicamente hay dos tipos de IA que dependen del tipo de pensamiento o reconocimiento del entorno que utilicen. Por un lado, el tipo de IA que utiliza la lógica y es el más utilizado, que emplea principios del racionamiento humano basado exclusivamente en algoritmos y por otro lado el tipo de IA que emplea, además, la intuición, pero basados en redes neuronales artificiales; estas redes neuronales están diseñadas como neuronas humanas para que aprendan por sí solas y de ahí el nombre de “Deep Learning” con el que se le conoce.
Un sistema de IA se construye, por tanto, con base en algoritmos que no son más que capacidades matemáticas de aprendizaje.
Los algoritmos que se aplican en la actualidad son diferentes dependiendo del tipo de IA (Aprendizaje por refuerzo, Aprendizaje supervisado y Aprendizaje no Supervisado) que se le desea dotar al Sistema de Inteligencia Artificial.
Algoritmos Aprendizaje por Refuerzo (RL Reinforcemente Learning)
El aprendizaje por refuerzo consiste en la interacción continua basada en “prueba y error” ante ciertas situaciones con un objetivo específico “recompensa”.
Algoritmos más utilizados en Aprendizaje por refuerzo:
- Programación dinámica: Se utiliza para la optimización y consiste en el uso de subproblemas superpuestos de los que se van obteniendo sus soluciones que combinadas dan solución al problema original.
- SARSA (State – Action – Reward – State – Action): Algoritmo de aprendizaje basado en el proceso de decisión de Markov que proporciona un marco matemático para modelar la toma de decisiones en casos en que los resultados son en parte aleatorios y en parte están bajo control.
- Q-Learning: Resuelve problemas de decisiones secuenciales en el que la bondad de una acción depende de una secuencia de decisiones en el que además existe incertidumbre del entorno.
Algoritmos Aprendizaje Supervisado (SML Supervised Machine Learning)
El aprendizaje supervisado está basado en modelos predictivos que usan datos para el entrenamiento relacionando entradas con salidas que se van ajustando por los conocedores del problema por medio de ejemplos y en los que se sabe la relación entre la entrada y la salida deseada.
Algoritmos más utilizados en Aprendizaje Supervisado:
- Árboles de Decisión: Modelo predictivo en el que, para obtener una predicción, se siguen las decisiones definidas desde el nodo raíz hasta llegar a el nodo final.
- Regresión Logística: Modelo predictivo de análisis de regresión en el que el resultado, acotado en sus valores posibles, es función de las variables independientes de entrada.
- Support Vector Machines (SVM): Método de clasificación regresión, en el que el objetivo es encontrar el hiperplano que mejor separe dos clases diferentes de datos.
Algoritmos Aprendizaje No Supervisado (Unsupervised Machine Learning)
Los algoritmos de aprendizaje no supervisado son semejantes a los algoritmos de aprendizaje supervisado pero su modelo se autoajusta sin necesidad de indicaciones externas.
Algoritmos más utilizados en Aprendizaje Supervisado:
- Algoritmos de agrupamiento (Clustering): Su objetivo es agrupar objetos según su similitud de forma que los objetos que caen dentro de un grupo tengan mayor grado de similitud que los que caen en otros agrupamientos.
- Algoritmos de Análisis de Componentes Principales (PCA): El análisis de componentes principales se basa en la reducción de la dimensión para pasar de una gran cantidad de variables interrelacionadas a unas pocas componentes principales. El método es buscar combinaciones lineales de las variables originales que representen lo mejor posible a la variabilidad presente en los datos.
- Análisis de Componentes Independientes (ICA): Método estadístico para analizar datos en espacios multidimensionales en las que se supone que las entradas tienen independencia estadística.
Conclusiones.
La selección del método de aprendizaje para IA depende del objetivo buscado, así como de la decisión del analista de datos que se enfrenta al problema a solucionar. Los algoritmos son de base matemática y existen numerosas herramientas que tienen algunos de ellos implementados, TensorFlow incluye algunas de ellas, y librerías de software (R es un buen ejemplo).
Para profundizar en la base matemática de los algoritmos de IA y en los propios algoritmos hay disponibles en internet numerosos blogs siendo muy recomendable leer el blog de Camparriny si se desea profundizar en este aspecto.