Inteligencia Artificial Avanzada Examen Final 2020-I
Inteligencia Artificial Avanzada Examen Final 2020-I
Inteligencia Artificial Avanzada Examen Final 2020-I
2020-I
EXAMEN FINAL
Pregunta 1 (6 puntos)
Atributos:
This research employed a binary variable, default payment (Yes = 1, No = 0), as the
response variable. This study reviewed the literature and used the following 23
variables as explanatory variables:
X1: Amount of the given credit (NT dollar): it includes both the individual consumer
credit and his/her family (supplementary) credit.
X2: Gender (1 = male; 2 = female).
X3: Education (1 = graduate school; 2 = university; 3 = high school; 4 = others).
X4: Marital status (1 = married; 2 = single; 3 = others).
X5: Age (year).
X6 - X11: History of past payment. We tracked the past monthly payment records
(from April to September, 2005) as follows: X6 = the repayment status in September,
2005; X7 = the repayment status in August, 2005; . . .;X11 = the repayment status in
April, 2005. The measurement scale for the repayment status is: -1 = pay duly; 1 =
payment delay for one month; 2 = payment delay for two months; . . .; 8 = payment
delay for eight months; 9 = payment delay for nine months and above.
X12-X17: Amount of bill statement (NT dollar). X12 = amount of bill statement in
September, 2005; X13 = amount of bill statement in August, 2005; . . .; X17 = amount
of bill statement in April, 2005.
X18-X23: Amount of previous payment (NT dollar). X18 = amount paid in September,
2005; X19 = amount paid in August, 2005; . . .;X23 = amount paid in April, 2005.
- Weka
Nota: Las respuestas a las preguntas de este examen se devolverán en este mismo
documento en formato digital. Si fuera necesario usar screenshots, figuras, o
reportes, también incluirlas en este documento.
1
Inteligencia Artificial Avanzada
2020-I
Una matriz de confusión es una matriz que permite ver qué clases se han predicho
correctamente y cuántas no.
- Revisar todos los modelos de clasificación revisados en el curso y explicar el mejor
modelo obtenido.
Resultados con j48
Redes neuronales
2
Inteligencia Artificial Avanzada
2020-I
Llevo gran parte del examen esperando a que cargue este modelo, incluso ya está normalizado
el ejercicio, pero aún no carga.
¿Como identificar que variables son relevantes de clasificación? Explicar
Para poder identificar las variables más importantes hacemos uso del infogain, vemos que el
pago tiene una gran importancia en estos casos y el Bill no tanto.
Con el algoritmo RelifF algunos payment tendrán importancia, así como el sexo, género,
estado civil, y educación
3
Inteligencia Artificial Avanzada
2020-I
Entre ambos algoritmos los que tienen más relevancia son todos menos los Bill, por eso se
escogerá el resto de atributos para el PCA.
4
Inteligencia Artificial Avanzada
2020-I
5
Inteligencia Artificial Avanzada
2020-I
Como se ve en la imagen, las instancias de cada clase son muy disparejas, por lo que se
recomienda balancear.
Pregunta 2 (6 puntos)
Atributos:
Input variables:
# bank client data:
1 - age (numeric)
2 - job : type of job (categorical: 'admin.','blue-
collar','entrepreneur','housemaid','management','retired','self-
employed','services','student','technician','unemployed','unknown')
3 - marital : marital status (categorical: 'divorced','married','single','unknown'; note: 'divorced' means
divorced or widowed)
4 - education (categorical:
'basic.4y','basic.6y','basic.9y','high.school','illiterate','professional.course','university.degree','unknown')
5 - default: has credit in default? (categorical: 'no','yes','unknown')
6 - housing: has housing loan? (categorical: 'no','yes','unknown')
7 - loan: has personal loan? (categorical: 'no','yes','unknown')
# related with the last contact of the current campaign:
8 - contact: contact communication type (categorical: 'cellular','telephone')
9 - month: last contact month of year (categorical: 'jan', 'feb', 'mar', ..., 'nov', 'dec')
10 - day_of_week: last contact day of the week (categorical: 'mon','tue','wed','thu','fri')
11 - duration: last contact duration, in seconds (numeric). Important note: this attribute highly affects
the output target (e.g., if duration=0 then y='no'). Yet, the duration is not known before a call is
6
Inteligencia Artificial Avanzada
2020-I
performed. Also, after the end of the call y is obviously known. Thus, this input should only be included
for benchmark purposes and should be discarded if the intention is to have a realistic predictive
model.
# other attributes:
12 - campaign: number of contacts performed during this campaign and for this client (numeric,
includes last contact)
13 - pdays: number of days that passed by after the client was last contacted from a previous
campaign (numeric; 999 means client was not previously contacted)
14 - previous: number of contacts performed before this campaign and for this client (numeric)
15 - poutcome: outcome of the previous marketing campaign (categorical:
'failure','nonexistent','success')
# social and economic context attributes
16 - emp.var.rate: employment variation rate - quarterly indicator (numeric)
17 - cons.price.idx: consumer price index - monthly indicator (numeric)
18 - cons.conf.idx: consumer confidence index - monthly indicator (numeric)
19 - euribor3m: euribor 3 month rate - daily indicator (numeric)
20 - nr.employed: number of employees - quarterly indicator (numeric)
- Weka
Nota: Las respuestas a las preguntas de este examen se devolverán en este mismo
documento en formato digital. Si fuera necesario usar screenshots, figuras, o
reportes, también incluirlas en este documento.
Primero la normalización
7
Inteligencia Artificial Avanzada
2020-I
8
Inteligencia Artificial Avanzada
2020-I
Random forest:
Svm:
9
Inteligencia Artificial Avanzada
2020-I
BAYES CON MANTO DE MARKOV DE 2:
10
Inteligencia Artificial Avanzada
2020-I
Redes neuronales, considerando un tiempo de entrenamiento de 200:
11
Inteligencia Artificial Avanzada
2020-I
- ¿Qué es una matriz de confusión?
La matriz de confusión es una matriz de orden n, donde n es el número de salidas, el
cual nos dice que tan correctamente están clasificadas las instancias y como estas se
distribuyen según el algoritmo es usa para su entrenamiento, de esa forma podemos
observar cuantas salidas han sido clasificadas correctamente y cuantos han sido
clasificadas erróneamente dándonos un alcance de la distribución de nuestro resultado
para determinado modelo.
- Revisar todos los modelos de clasificación revisados en el curso y explicar el mejor
modelo obtenido.
Algoritmo CONFIABILIDAD TPRATE A TPRATE B
J48 89.00% 96% 35.50%
RANDOM FOREST 89.83% 98.10% 26.70%
SVM 89.29% 98.90% 15.90%
BAYES 89.27% 96.60% 33%
REDES
NEURONALES 88.80% 95.30% 39.20%
A partir del análisis del modelo podríamos pensar que el mejor modelo es con Random
Forest al tener una mayor confiabilidad de clasificación de nuestro modelo, sin embargo
observamos que el TP Rate de B es uno de los menores, a diferencia del algoritmo de
redes neuronales donde el Tp Rate de B está en 39.2%, es por ello que por necesidad
de distribución del modelo elegiremos utilizar redes neuronales porque no solo es
necesario la confiabilidad sino la distribución de las instancias de clasificación.
Para J48 y Random Forest vemos que el porcentaje de confiabilidad ha disminuido; sin
embargo, vemos que existe una mejora en el TP Rate de B con j48 para Random forest
hay una mejora en el TP rate de A, esto es debido a que ha habido una correlación entre
los nuevos atributos analizados con PCA.
- De ser necesario realizar Balanceo de Clases. Explicar
Al analizar nuestro data set podemos observar que nuestra data se encuentra
desbalanceada es por ello que aplicaremos la función SMOTE y luego randomize para
que nuestras instancias que ayuden a nuestro balance no perjudiquen el modelo.
12
Inteligencia Artificial Avanzada
2020-I
J48:
13
Inteligencia Artificial Avanzada
2020-I
RANDOM FOREST:
14
Inteligencia Artificial Avanzada
2020-I
A partir de los anterior obtenemos una nueva tabla:
Algoritmo CONFIABILIDAD TPRATE A TPRATE B
NORMAL J48 89.00% 96% 35.50%
NORMAL RANDOM FOREST 89.83% 98.10% 26.70%
PCA J48 87.23% 94.2% 33.60%
PCA RANDOM FOREST 89.42% 98.30% 21.30%
SMOTE Y
PCA J48 83.89% 89.80% 61.40%
SMOTE Y
PCA RANDOM FOREST 88.29% 96.20% 58.10%
Donde observamos que disminuye el porcentaje de confiabilidad para ambos algoritmos,
sin embargo vemos una mejora en el Tp Rate de B donde J48 tiene 61.4%.
15
Inteligencia Artificial Avanzada
2020-I
Pregunta 3 (6 puntos)
Atributos:
Data Review :
• Evet = Yes
• Hayır = No
• Erkek = Male
• Kadın = Female
• Yas = Age
• Bolge = City
• Egitim = Education
• İlkokul = primary school
• OrtaOkul = junior high school
• Lise = High School
• Lisans = University
• Lisans Üstü = MA
16
Inteligencia Artificial Avanzada
2020-I
- Weka
Nota: Las respuestas a las preguntas de este examen se devolverán en este mismo
documento en formato digital. Si fuera necesario usar screenshots, figuras, o
reportes, también incluirlas en este documento.
Analizar los datos y aplicar algoritmos de clustering para opiniones politicas en Turquia
(archive.zip).
Resolver las siguientes preguntas:
- Explicar el algoritmo K-Means en este problema
En base a las variables dadas se busca agrupar a los electores en grupos óptimos de puntos de
vista político, en este caso podemos observar 6 grupos predeterminados en la data en los
cuales 4 grupos obtienen la mayor parte de la población y dos grupos son minoritarios.
Con la data original. Aplicando el algoritmo Simple Kmeans y poniendo como parámetro
número de clusters igual a 6. Obtenemos:
Con la data smoteada. Aplicando el algoritmo Simple Kmeans y poniendo como parámetro
número de clusters igual a 6. Obtenemos:
17
Inteligencia Artificial Avanzada
2020-I
Como podemos observar con la data ya procesada en el ultimo cuadro podemos observar 3
grandes grupos de partidarios (población), esto es contrario a la data sin procesar en el primer
cuadro en el observamos mayor atomización de los grupos en los cuales ninguno llega a
prevalecer por completo sobre los otros individualmente.
18
Inteligencia Artificial Avanzada
2020-I
Considero que si es necesario debido a que como observamos en la data incial 2 grupos tenían
cantidades ínfimas de adeptos por ende se busca aumentar esta población para poder así tener
mejores predicciones, utilizando la función SMOTE obtenemos la siguiente nueva
distribución:
- Crear el mejor modelo para identificar para detectar los fraudes de tarjetas
Pregunta 4 (5 puntos)
Pregunta 5 (5 puntos)
19
Inteligencia Artificial Avanzada
2020-I
Pregunta 6 (6 puntos)
Se tiene la función:
20
Inteligencia Artificial Avanzada
2020-I
Algoritmos Geneticos
F(x) X
0 1 MAX 28.657022
0.3437256 2
0.93409057 3 1) Poblacion de genomas 1 9
2.41313226 4
2) Funcion
3.84217968 5 fitness F(x) x
2.90598921 6 0 1
2.25819731 7 3.31658666 9
2.34163972 8 9.99990207 11
3.31658666 9 5.28244509 15
6.18140831 10 15.4053162 17
9.99990207 11 9.04958228 26
7.51660273 12 7.51660273 12
4.95833544 13 8.3725712 19
4.3469431 14 2.41313226 4
5.28244509 15
8.76118746 16 3)) Mutacion Agregar un numero +1
15.4053162 17
13.6107497 18 4) Aplicación del algoritmo
8.3725712 19
6.522608 20 Nueva generacion de genomas 12
7.0505562 21
10.5466759 22 Evalucion de la funcion fitness
19.0677666 23 F(x) x
21.0156664 24 7.51660273 12
12.8503855 25 13.6107497 18
9.04958228 26 8.79455138 27
8.79455138 27
11.8895289 28
20.9523421 29
28.657022 30 y continuamos asi con la iteracion
Pregunta 7 (
Teniendo el mapa de Rumanía, considere el punto de inicio “Timisoara” y el objetivo
“Bucharest”. Encontrar el camino más óptimo con el Algoritmo A*
21
Inteligencia Artificial Avanzada
2020-I
22