Taller de introducción a la inteligencia artificial
ujué :: karlos
@ujue @patxangas
Definimos, diseñamos y construimos negocios digitales
Bikolabs Laboratorio de especulación
Nos conformamos con estar 20 minutos por delante
Apostamos por la ESPECULACIÓN, centrándonos en las tecnologías exponenciales, en cómo avanza la tecnología y en cómo pensar críticamente sus consecuencias.
No buscamos encontrar soluciones, sino descubrir los problemas.
Porque lo llaman IA, cuando quieren decir...
ACLARANDO ALGUNOS TÉRMINOS
Definimos Inteligencia Artificial como cualquier invención que de alguna manera imita la inteligencia humana
INTELIGENCIA ARTIFICIAL
ACLARANDO ALGUNOS TÉRMINOS
Inteligencia artificial
Machine learning
Redes neuronales
Deep learning
El aprendizaje automático o Machine Learning es un método científico que nos permite usar los ordenadores y otros dispositivos con capacidad computacional para que aprendan a extraer los patrones y relaciones que hay en nuestros datos por sí solos. Esos patrones se pueden usar luego para predecir comportamientos y en la toma de decisiones.
MACHINE LEARNING
ACLARANDO ALGUNOS TÉRMINOS
El Aprendizaje Automático es un campo en la Inteligencia Artificial, donde las máquinas pueden "aprender" de sí mismas, sin ser explícitamente programadas por los seres humanos.
-
Seguridad informática, diagnóstico de ataques, prevención de fraude online, detección de anomalías, etc.
-
Reconocimiento de imágenes o patrones (facial, dactilar, objetos, voz, etc)
-
Conducción autónoma, mediante algoritmos deep learning: identificación de imágenes en tiempo real, detección de obstáculos y señales de tráfico, prevención de accidentes…
-
Salud: evaluación automática de pruebas diagnósticas, robótica médica etc
-
Análisis de mercado de valores ( predicciones financieras, evolución de mercados etc)
-
Motores de recomendación
Maher (2019). Which machine learning model to use?
https://towardsdatascience.com/which-machine-learning-model-to-use-db5fdf37f3dd
TIPOS DE MACHINE LEARNING
Aprendizaje Supervisado
En el aprendizaje supervisado, los algoritmos trabajan con datos “etiquetados” (labeled data), intentado encontrar una función que, dadas las variables de entrada (input data), les asigne la etiqueta de salida adecuada. El algoritmo se entrena con un “histórico” de datos y así “aprende” a asignar la etiqueta de salida adecuada a un nuevo valor, es decir, predice el valor de salida
-
Problemas de clasificación (identificación de dígitos, diagnósticos, o detección de fraude de identidad).
-
Problemas de regresión (predicciones meteorológicas, de expectativa de vida, de crecimiento etc).
Google Arts & Culture
Art Palette
TIPOS DE MACHINE LEARNING
Aprendizaje no Supervisado
El aprendizaje no supervisado tiene lugar cuando no se dispone de datos “etiquetados” para el entrenamiento. Sólo conocemos los datos de entrada, pero no existen datos de salida que correspondan a un determinado input. Por tanto, sólo podemos describir la estructura de los datos, para intentar encontrar algún tipo de organización que simplifique el análisis. Por ello, tienen un carácter exploratorio.
-
Problemas de clustering
-
Agrupamientos de co-ocurrencias
-
Perfilado o profiling.
Google Arts & Culture
Runwaypalette
Google Arts & Culture
Tsnemap
TIPOS DE MACHINE LEARNING
aprendizaje por refuerzo
Este tipo aprendizaje se basa en mejorar la respuesta del modelo usando un proceso de retroalimentación. El algoritmo aprende observando el mundo que le rodea. Su información de entrada es el feedback o retroalimentación que obtiene del mundo exterior como respuesta a sus acciones. Por lo tanto, el sistema aprende a base de ensayo-error.
REDES NEURONALES
ACLARANDO ALGUNOS TÉRMINOS
Es paradigma de aprendizaje y procesamiento automático inspirado en el funcionamiento del sistema nervioso humano.
Una red neuronal está compuesta por un conjunto de neuronas interconectadas entre sí mediante enlaces.
Cada neurona toma como entradas las salidas de las neuronas de las capas antecesoras, cada una de esas entradas se multiplica por un peso, se agregan los resultados parciales y mediante una función de activación se calcula la salida. Esta salida es a su vez es entrada de la neurona a la que precede.
DEEP LEARNING
ACLARANDO ALGUNOS TÉRMINOS
APLICACIÓN MÁS ALLÁ DE LA CIENCIA FICCIÓN
USOS DE LA IA
-
Clasificación, como detección de correo basura o “spam”.
-
Clustering y recomendación, como sugerir un libro a un usuario basándonos en sus compras anteriores
-
Regresión-predicción, como averiguar cuánto va usar un cliente determinado servicio (determinar un valor)
-
Interpretación y generación de lenguaje natural
- Generación creativa y artística
USOS DE LA IA
LA REALIDAD TRAS LOS TITULARES DE LOS MEDIOS
LA AUTOMAGIA
Peters (2018). Having A Heart Attack? This AI Helps Emergency Dispatchers Find Out.
https://www.fastcompany.com/40515740/having-a-heart-attack-this-ai-helps-emergency-dispatchers-find-out
Creemos que el humano no interviene
AUTO
No sabemos lo que hay por detrás
MAGIA
AUTO
LA PARTE
Fuente https://ai.googleblog.com/2019/12/fairness-indicators-scalable.html
Discriminar entre afectados y no afectados
CASO 1. AUTO. AECC
Pacientes y Familiares / No afectados
Triaje para servicios / Información
En el campo de la medicina, el distrés o estrés negativo es un estado de angustia o sufrimiento en el cual una persona o animal es incapaz de adaptarse completamente a factores amenazantes o de demanda incrementada, en otras palabras, es la «inadecuada activación psicofisiológica que conduce al fracaso»
distrés
Fuente Wikipedia
¿Cómo podríamos aplicar
ia para responder a este desafío?
NUESTRA SOLUCIÓN:
ML de aprendizaje supervisado con una Red neuronal para el Procesamiento de lenguaje natural y Clasificación de texto (binaria)
Entrada
- Respuesta abierta, amplia y genérica
- La palabra clave "cáncer" es un problema
Proceso
- Detectar si es triaje o no (binario)
Triaje sí
Triaje no
COLLECTING & LABELING DATA- HUMAN
TRAINING & MODELS - HUMAN
df['consulta'] = df['consulta'].map(lambda x: clean_text(x))
vocabulary_size = 16000
tokenizer = Tokenizer(num_words= vocabulary_size)
tokenizer.fit_on_texts(df['consulta'])
count_thres = 4
low_count_words = [w for w,c in tokenizer.word_counts.items() if c < count_thres]
sequences = tokenizer.texts_to_sequences(df['consulta'])
print(tokenizer.word_counts)
data = pad_sequences(sequences, maxlen=300)
X_train, X_test, y_train, y_test = train_test_split(data , labels, test_size=0.25, random_state=42)
model_lstm = Sequential()
model_lstm.add(Embedding(vocabulary_size, 300, input_length=300))
model_lstm.add(LSTM(100, dropout=0.2, recurrent_dropout=0.2))
model_lstm.add(Dense(numeroClases, activation='softmax'))
model_lstm.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['acc'])
history = model_lstm.fit(X_train, y_train, epochs=epochs, batch_size=32,validation_split=0.2,callbacks=[EarlyStopping(monitor='val_loss',patience=7, min_delta=0.0001)])
model_lstm.save('model_lstm.h5'
user behavior - HUMAN
new learning - HUMAN
new learning - HUMAN
MAGIA
LA PARTE
Cualquier tecnología suficientemente avanzada es indistinguible de la magia
Arthur C. Clarke
MAGIA
LA PARTE
PARANORMAL
Caja negra
Gunning (2018). Explainable Artificial Intelligence (XAI).
https://www.darpa.mil/program/explainable-artificial-intelligence
- Problema "duelo" no sabíamos por qué no lo entendía como triaje
- No siempre el resultado es el mismo ante la misma frase
CAJA NEGRA EN AECC
Gunning (2018). Explainable Artificial Intelligence (XAI).
https://www.darpa.mil/program/explainable-artificial-intelligence
PROGRAMA XAI: EXPLAINABLE ARTIFICIAL INTELLIGENCE
Title Text
Subtitle
Carter et al. (2019). Activation Atlas
http://distill.pub/2019/activation-atlas
y MIENTRAS TANTO...
EXPLICABILIDAD
=
INTERPRETABILIDAD
LA RESPONSABILIDAD DE LA PREDICCIÓN
"I would like to live in a world whose systems are built on rigorous, reliable, verifiable knowledge, and not on alchemy"
Ali Rahimi, AI researcher in Google (2018)
NO ES MIEDO, ES CORDURA
DISCRIMINAR ENTRE TIPOS DE NECESIDAD
CASO 2. MAGIA. AECC II
Entrada
- Respuesta abierta, amplia y genérica
- Ofrecer respuesta directa a la pregunta
NUESTRA SOLUCIÓN:
Herramienta de ML de análisis predictivo de textos, con una Red neuronal (desconocida) con Procesamiento de lenguaje natural y Análisis de contexto-sintaxis
Fuente https://cloud.google.com/dialogflow/docs/basics?hl=es-419
¿Cómo podríamos aplicar
ia para responder a este desafío?
¡Y MAÑANA A MANCHARSE LAS MANOS!
runwayml.com
BINARIO CON CERO PROGRAMACIÓN
CASO 3. MAGIA. PATORNALISTA
CLASIFICACIÓN BINARIA DE IMAGEN
utilizar
teachable para crear vuestra clasificación binaria de imágenes, audios o vídeos
teachablemachine.withgoogle.com
DETECCIÓN DE POSTURA EN MOVIMIENTO
CASO 4. MAGIA. GENERACIÓN Y PROCESOS CREATIVOS
Belleza en el confinamiento
utilizar
RUNWAY para EXPERIMENTAR UN PROCESO GENERATIVO
(NO TIENE POR QUÉ SER PURAMENTE ESTÉTICO)
1
2
3
SHOW ME YOUR MAGIC
ETIQUETAdo DE IMÁGENES
CASO 5. MAGIA. GENERACIÓN DESCRIPCIÓN
Taller ML para UX Bikolabs
By Bikolabs
Taller ML para UX Bikolabs
- 244