Está en la página 1de 27

ALGORITMIA EN INTELIGENCIA

ARTIFICIAL
Instructor: Ing. Flor de Maria Rodriguez Alvarez

www.senati.edu.pe
OBJETIVO:
 Al analizar el modulo formativo, el aprendiz desarrolla
algoritmos aplicados a la inteligencia artificial

www.senati.edu.pe
CLASE 3: INTELIGENCIA
ARTIFICIAL
Almacenamiento Inteligente
www.senati.edu.pe
¿Qué es el almacenamiento Inteligente?
El almacenamiento inteligente es un almacenamiento de datos que utiliza inteligencia
artificial (IA) para gestionar y responder activamente al entorno local y en la nube,
permitiendo que los recursos estén debidamente disponibles, optimizados y sean
rentables. 
El almacenamiento inteligente es un sistema o servicio de almacenamiento que utiliza
inteligencia artificial para aprender continuamente y se adapta a su entorno híbrido para
gestionar y proporcionar datos de forma mejorada. Puede implementarse como
hardware a nivel local, como aplicación virtual o como servicio de nube. El
almacenamiento inteligente puede trasladar los datos adonde sean necesarios y
optimizarlos de forma proactiva durante todo su ciclo de vida. Ofrece protección de
datos y cifrado para eliminar las posibles amenazas de seguridad, y se vende en un
modelo de pago por consumo.

www.senati.edu.pe
IMPORTANCIA DEL ALMACENAMIENTO
INTELIGENTE
Los proyectos de IA exigen una infraestructura
de almacenamiento con un desempeño,
escalabilidad y flexibilidad excelentes. La buena
noticia es que los sistemas de almacenamiento
actuales pueden construirse a medida para suplir
las necesidades de los proyectos de IA. Dos
grandes ejemplos de esto son algunas de las
supercomputadoras más potentes del mundo,
Sierra y Summit.

www.senati.edu.pe
Especificidades de las cargas de trabajo y el movimiento de
datos
Los requisitos de cada etapa del canal de IA deben ser reevaluados para la
carga de trabajo esperada de su aplicación de IA. Las cargas de trabajo varían,
pero algunas empresas que usan grandes conjuntos de datos pueden entrenar
durante largos períodos. Finalizado el entrenamiento, generalmente, los datos
son retirados de las plataformas de almacenamiento crítico a fin de prepararlos
para una nueva carga de trabajo. La gestión manual de datos puede ser un
desafío, por lo tanto, una medida inteligente es anticiparse considerando cómo
se ubican los datos en el almacenamiento y adónde irán una vez que el
entrenamiento esté finalizado. Encontrar una plataforma que pueda mover los
datos automáticamente por usted le coloca un paso más cerca de una gestión
eficiente y hábil de almacenamiento para IA.

www.senati.edu.pe
Necesidades de almacenamiento para diferentes etapas de
IA
Ingesta de datos. Los datos crudos para
cargas de trabajo de IA pueden provenir de
una variedad de fuentes de datos
estructuradas y no estructuradas y usted
necesita un lugar muy confiable donde
almacenar sus datos. El medio de
almacenamiento puede ser un lago de datos
de alta capacidad o un nivel rápido, como el
almacenamiento flash, especialmente para
analítica en tiempo real.

www.senati.edu.pe
Necesidades de almacenamiento para diferentes etapas de
IA
Preparación de los datos. Una vez
almacenados, los datos deben ser preparados,
ya que están en formato “crudo”. Los datos
tienen que procesarse y formatearse para el
consumo durante las fases restantes. El
desempeño de E/S de archivos es una
consideración muy importante en esta etapa, ya
que ahora usted cuenta con una mezcla de
escrituras y lecturas aleatorias. Tómese el
tiempo para descubrir cuáles son las
necesidades de desempeño de su canal de IA.
Una vez formateados los datos, se introducirán
en las redes neurales para entrenamiento.

www.senati.edu.pe
Necesidades de almacenamiento para diferentes etapas de
IA
Entrenamiento e inferencia. Estas etapas conllevan computación intensa y por
lo general requieren un flujo de datos hacia los modelos de entrenamiento. En
entrenamiento es un proceso iterativo que requiere configuraciones y
reconfiguraciones, lo cual se usa para crear los modelos. Puede pensarse la
inferencia como la suma de los datos y el entrenamiento. Las GPU en los
servidores y su infraestructura de almacenamiento se vuelven muy importantes
aquí por la necesidad de baja latencia, alto rendimiento y rápido tiempo de
respuesta. Sus redes de almacenamiento deben diseñarse para manejar estos
requisitos, así como la ingesta y preparación de los datos. A escala, esto recarga
muchos sistemas de almacenamiento, especialmente aquellos que no están
preparados para cargas de trabajo de IA, por lo tanto, es importante considerar
específicamente si su plataforma de almacenamiento puede manejar las
necesidades de carga de trabajo alineadas con sus objetivos comerciales.

www.senati.edu.pe
www.senati.edu.pe
CLASE 3: INTELIGENCIA
ARTIFICIAL
Algoritmos de Aprendizaje por Refuerzo (RL), Aprendizaje
Supervisado y Aprendizaje no Supervisado
www.senati.edu.pe
Existen 2 grandes áreas de aprendizaje
tradicional del Machine Learning, el 
aprendizaje supervisado y el 
aprendizaje no supervisado. Parece difícil
que aquí hubiera espacio para otras
opciones; sin embargo sí la hay y es
el Aprendizaje por refuerzo. En
aprendizaje por refuerzo (ó
Reinforcement Learning en inglés) no
tenemos una “etiqueta de salida”, por lo
que no es de tipo supervisado y si bien 
estos algoritmos aprenden por sí mismos
, tampoco son de tipo no supervisado, en
donde se intenta clasificar grupos
teniendo en cuenta alguna distancia
entre muestras.
www.senati.edu.pe
El aprendizaje por refuerzo
El aprendizaje por refuerzo, o Reinforcement Learning, es otro
tipo de algoritmos de Machine Learning en el que el objetivo es el
desarrollo de un sistema -que recibe el nombre de agente- que se
desea que mejore su eficiencia realizando cierta tarea basándose en la
interacción con su entorno. Para ello, el agente
recibe recompensas (rewards en inglés) que le permiten adaptar su
comportamiento.

www.senati.edu.pe
Componentes y relaciones RL
• el Agente: será nuestro modelo que •Acción: las posibles acciones que
queremos entrenar y que aprenda a tomar puede tomar en un momento
decisiones. determinado el Agente.
• Ambiente: será el entorno en donde •Estado (del ambiente): son los
interactúa y “se mueve” el agente. El indicadores del ambiente de cómo
ambiente contiene las limitaciones y están los diversos elementos que lo
reglas posibles a cada momento. componen en ese momento.
•Recompensas (ó castigos!): a raíz de
cada acción tomada por el Agente,
podremos obtener un premio ó una
penalización que orientarán al Agente
en si lo está haciendo bien ó mal.

www.senati.edu.pe
Casos de Uso
El aprendizaje por refuerzo puede ser usado en robots, por ejemplo en brazos mecánicos
en donde en vez de enseñar instrucción por instrucción a moverse, podemos dejar que
haga intentos “a ciegas” e ir recompensando cuando lo hace bien.
También puede usarse en ambientes que interactúan con el mundo real, como en otro
tipo de maquinaria industrial y para el mantenimiento predictivo, pero también en el
ambiente financiero, por ejemplo para decidir cómo conformar una cartera de inversión
sin intervención humana.
Otro caso de uso que está ganando terreno es el de usar RL para crear “webs
personalizadas” para cada internauta. Y si lo piensas… tiene algo de sentido tomar el
concepto de “premiar” al algoritmo si acierta con las sugerencias que hace al usuario si
hace clic ó penalizar al modelo si sus recomendaciones no le son de utilidad.
También se utiliza el Reinforcement Learning para entrenar sistemas de navegación de
coches, drones ó aviones.

www.senati.edu.pe
Algoritmo más usado: Q-Learning (Elementos)

• Políticas: Es una tabla (aunque puede tener n-dimensiones) que le


indicará al modelo “como actuar” en cada estado.
• Acciones: las diversas elecciones que puede hacer el agente en cada
estado
• Recompensas: si sumamos ó restamos puntaje con la acción tomada
• Comportamiento “avaro” (greedy en inglés) del agente. Es decir, si
se dejará llevar por grandes recompensas inmediatas, ó irá explorando
y valorando las riquezas a largo plazo

www.senati.edu.pe
Algoritmo más usado: Q-Learning (Objetivos)
El objetivo principal al entrenar nuestro modelo a través de las
simulaciones será ir “rellenando” la tabla de Políticas de manera que
las decisiones que vaya tomando nuestro agente obtengan “la mayor
recompensa” a la vez que avanzamos y no nos quedamos estancados, es
decir, pudiendo cumplir el objetivo global (ó final) que deseamos
alcanzar.
A la política la llamaremos “Q” por lo que:
Q(estado, acción) nos indicará el valor de la política para un estado y una acción
determinados.

www.senati.edu.pe
Y para saber cómo ir completando la tabla de políticas nos valemos de la 
ecuación de Bellman.
En resumen; lo que explica la ecuación es cómo ir actualizando las políticas
Q^(s,a) en base al valor actual más una futura recompensa que recibiremos,
en caso de tomar dicha acción. Hay dos ratios que afectan a la manera en que
influye esa recompensa: el ratio de aprendizaje, que regula “la velocidad” en
la que se aprende, y la “tasa de descuento” que tendrá en cuenta la
recompensa a corto o largo plazo.
www.senati.edu.pe
Algoritmos de Aprendizaje Supervisado (SML)
Los algoritmos que parten de un conjunto de datos etiquetados se
denominan supervisados pues se supone que un "instructor" o supervisor está
mostrando al aprendiz los datos de entrenamiento al mismo tiempo que le indica cuál
es la respuesta correcta en cada caso
En cualquier caso este tipo de algoritmos son los que más éxito tienen pues son bien
conocidos y es muy sencillo evaluar su rendimiento (partimos de datos etiquetados,
podemos dividirlos en los bloques de entrenamiento y prueba, entrenar nuestro modelo
y ver hasta qué punto es capaz de predecir las etiquetas del conjunto de pruebas).Tal y
como se ha explicado, estos algoritmos tienen como objetivo encontrar la forma de
relacionar las características que forman el conjunto de entrenamiento con sus
etiquetas, y esta relación, una vez identificada, es la que se utilizará con nuevos datos
para predecir sus etiquetas.

www.senati.edu.pe
Algoritmos de Clasificación
En escenarios de clasificación los datos de
entrenamiento y los datos sobre los que realizar la
predicción están divididos en clases, estando ésta
registrada en la etiqueta de cada muestra. En
ocasiones se distingue la clasificación binaria (en la
que solo hay dos clases) de la clasificación multiclase
(en la que encontramos más de dos clases).

www.senati.edu.pe
Algunos algoritmos
Algunos algoritmos de clasificación (Random Forest o Naive Bayes) son capaces de
realizar su trabajo tanto en entornos de clasificación binaria como de clasificación
multiclase.
Otros algoritmos, sin embargo, son puros clasificadores binarios (Support Vector
Machines o clasificadores lineales). Aun así, hay métodos que nos permiten utilizar estos
últimos también en clasificación multiclase. Para esto hay dos estrategias principales: Uno-
contra-todos (one-versus-all) y uno-contra-uno (one-versus-one).

www.senati.edu.pe
Las redes neuronales
Las redes neuronales artificiales (ANN) o, simplemente, redes neuronales, son un modelo
computacional basado en el comportamiento observado en sus equivalentes biológicos. Están
formadas por un conjunto de unidades de procesamiento denominadas neuronas artificiales,
unidas unas con otras, que transforman los datos de entrada que llegan a ellas en otros datos
de salida. La información que llega a la red neuronal la recorre mientras se transforma en
cada neurona artificial atravesada, hasta alcanzar el final de la red, en el que se devuelve el
valor resultante.
En su versión más sencilla, la neurona artificial funciona del siguiente modo:

www.senati.edu.pe
LIBRERÍA PANDAS
Pandas es una librería de Python especializada en el manejo y análisis de
estructuras de datos.
Las principales características de esta librería son:
• Define nuevas estructuras de datos basadas en los arrays de la librería NumPy pero
con nuevas funcionalidades.
• Permite leer y escribir fácilmente ficheros en formato CSV, Excel y bases de datos
SQL.
• Permite acceder a los datos mediante índices o nombres para filas y columnas.
• Ofrece métodos para reordenar, dividir y combinar conjuntos de datos.
• Permite trabajar con series temporales.
• Realiza todas estas operaciones de manera muy eficiente.
www.senati.edu.pe
TIPOS DE DATOS PANDAS
Pandas dispone de tres estructuras de datos diferentes:

Series: Estructura de una dimensión.


DataFrame: Estructura de dos dimensiones (tablas).
Panel: Estructura de tres dimensiones (cubos).
Estas estructuras se construyen a partir de arrays de la librería NumPy,
añadiendo nuevas funcionalidades.

www.senati.edu.pe
LA CLASE DE OBJETOS SERIES
Son estructuras similares a los arrays de una dimensión. Son homogéneas, es
decir, sus elementos tienen que ser del mismo tipo, y su tamaño es inmutable,
es decir, no se puede cambiar, aunque si su contenido.
Dispone de un índice que asocia un nombre a cada elemento del la serie, a
través de la cuál se accede al elemento.
Ejemplo. La siguiente serie contiene las asignaturas de un curso.

www.senati.edu.pe
www.senati.edu.pe
www.senati.edu.pe

También podría gustarte