
Os propongo un juego con R. El juego parte de unos datos aleatorios que he generado con R (los que veis arriba) que dividimos in entrenamiento y test. Sobre el conjunto de datos de entrenamiento he realizado varios modelos y valoro las predicciones gráficamente sobre los datos de test. El juego consiste in asociar cada resultado gráfico de test a cada código de R correspondiente y justificar brevemente la respuesta.
Los gráficos de los datos de test son:
Figura A:

Figura B:

Figura C:

Figura D:

Figura E:

Figura F:

Figura G:

Los códigos R que tenéis que asociar a cada figura son:
Código 1: Red neuronal con una solo capa y 2 nodos:
library(nnet)
mejor.red <- function(nodos) {
mejor.rss <- 1e10
for (i in 1:50) {
modelo.rn <- nnet(dep ~ indep, data = entrenamiento, size = nodos,
linout = TRUE, trace = FALSE, decay = 0.1)
if (modelo.rn$value < mejor.rss) {
mejor.modelo <- modelo.rn
mejor.rss <- modelo.rn$value
}
}
return(mejor.modelo)
}
modelo_1 <- mejor.red(2)
Código 2: Regresión lineal:
lm(dep ~ indep, data = entrenamiento)
Código 3: Máquina de vector de soporte (SVM) con un margen muy alto:
library(e1071)
svm(dep ~ indep, data = entrenamiento, method = "C-classification",
kernel = "radial", cost = 100, gamma = 100)
Código 4: Árbol de regresión:
library(rpart)
rpart(dep ~ indep, data = entrenamiento)
Código 5: Regresión LOESS:
loess(dep ~ indep, data = entrenamiento)
Código 6: Máquina de vector de soporte (SVM) con un margen bajo:
library(e1071)
svm(dep ~ indep, data = entrenamiento, method = "C-classification",
kernel = "radial", cost = 10, gamma = 10)
Código 7: $k$ vecinos más cercanos (k-NN):
library(kknn)
train.kknn(dep ~ indep, data = entrenamiento,
k = 4, kernel = "rectangular")
Por ejemplo, la figura A irá con el código 2 porque se trata de una estimación lineal. Y ahora os toca a vosotros asociar figuras a modelos de R. Saludos.