Training Models From GA selected features

In previous steps features were selected by using GA technology to assess the suitability of such features.

Differnt GA strategies for fitness evaluation and we have tested nearcenter and randomforest technologies.

Feature selection was prepared acording to document paso2

suppressPackageStartupMessages(library(googleVis))
suppressPackageStartupMessages(library(xtable))
suppressPackageStartupMessages(library(Peaks))
suppressPackageStartupMessages(library(magic))
suppressPackageStartupMessages(library(segmented))
suppressPackageStartupMessages(library(fftw))
suppressPackageStartupMessages(library(FITSio))
suppressPackageStartupMessages(library(stringr))
suppressPackageStartupMessages(library(utils))
suppressPackageStartupMessages(library(e1071))
suppressPackageStartupMessages(library(quantmod))
suppressPackageStartupMessages(library(JADE))
suppressPackageStartupMessages(library(zoo))
suppressPackageStartupMessages(library(plyr))
suppressPackageStartupMessages(library(doMC))
suppressPackageStartupMessages(library(multicore))
suppressPackageStartupMessages(library(parallel))
suppressPackageStartupMessages(library(foreach))
suppressPackageStartupMessages(library(compiler))
suppressPackageStartupMessages(library(galgo))

##Feature extraction as defined by the GA

For feature selection BT-Settl 2012 library from France Allard was selected and wavelength reduction was performed to become compatible with the data coming from the satellite IPAC.

# Procesado del genético de Tª
setwd("~/git/M_sel")
load("nearcenter_ALL_T_5_900.RData")
plot(bb.nc.1, type = "fitness")

plot of chunk lee01

plot(bb.nc.1, type = "fitness", filter = "nosolutions")

plot of chunk lee01

plot(bb.nc.1, type = "confusion")
## Computing confusion from class prediction...
## 5% 10% 15% 20% 25% 30% 35% 40% 45% 50% 55% 60% 65% 70% 75% 80% 85% 90% 95% 100%

plot of chunk lee01

cpm <- classPredictionMatrix(bb.nc.1)
cm <- confusionMatrix(bb.nc.1, cpm)
sec <- sensitivityClass(bb.nc.1, cm)
spc <- specificityClass(bb.nc.1, cm)
plot(bb.nc.1, type = "confusion", set = c(1, 0), splits = 1)
## Computing confusion from class prediction...
## 5% 10% 15% 20% 25% 30% 35% 40% 45% 50% 55% 60% 65% 70% 75% 80% 85% 90% 95% 100%

plot of chunk lee01

plot(bb.nc.1, type = "confusion", set = c(1, 0), splits = 1, chromosomes = list(bb.nc.1$bestChromosomes[[1]]))
## Computing confusion from class prediction...

plot of chunk lee01

plot(bb.nc.1, type = "generankstability")

plot of chunk lee01

rchr <- lapply(bb.nc.1$bestChromosomes[1:300], robustGeneBackwardElimination, 
    bb.nc.1, result = "shortest")
fsm <- forwardSelectionModels(bb.nc.1, plot = FALSE)
## 4% 8% 12% 16% 20% 24% 29% 33% 37% 41% 45% 49% 53% 57% 61% 65% 69% 73% 78% 82% 86% 90% 94% 98%
fsm$models
## [[1]]
##  [1]  2661 37503 10025  2662 37077 10026  3555  3701 38514  9882 10905
## [12] 37502 37078 17868 10762 14840
## 
## [[2]]
##  [1]  2661 37503 10025  2662 37077 10026  3555  3701 38514  9882 10905
## [12] 37502 37078 17868 10762 14840 17867
## 
## [[3]]
##  [1]  2661 37503 10025  2662 37077 10026  3555  3701 38514  9882 10905
## [12] 37502 37078 17868 10762 14840 17867  2225
## 
## [[4]]
##  [1]  2661 37503 10025  2662 37077 10026  3555  3701 38514  9882 10905
## [12] 37502 37078 17868 10762 14840 17867  2225  2226
rownames(ALL)[fsm$models[[3]]]
##  [1] "48:51_55:62" "47:52_55:62" "48:51_55:64" "49:52_55:62" "57:62_46:53"
##  [6] "49:52_55:64" "83:86_73:80" "84:87_76:83" "84:89_76:83" "48:51_52:61"
## [11] "83:86_73:82" "46:51_55:62" "58:63_46:53" "83:86_70:81" "83:86_70:79"
## [16] "1:4_7:18"    "82:85_70:81" "58:61_46:53"
#
features <- list()
features$T <- c("1:4_7:18", "48:51_55:62", "57:62_46:53", "83:86_73:82", "147:150_130:137")
#

Now, we start to load the original data bp_clean and bq_clean, and we will process the features according to the feature list.

In order to generate features we will use the formula \( \int{lambda_{1}}{\lambda_{2}}{1-\frac{F_{line}}{F_{cont}} dlambda} \) as depicted in formula (1) of the above reference.

The band frequences are defined in the previous table but \( F_{cont} \) is not defined. As such a genetic algorithm testing different potential continuum spectra will be tested and looking the best matching to explain spectral parameters by precious feature functions.

Once the signal points and continuous regions were identified, models were setted-up and assessed by crossvalidation procedure. Iedas for the implementation were taken from http://moderntoolmaking.blogspot.com.es/2013/03/caretensemble-classification-example.html

# Cargamos bp_clean (BT_SETTL) & bq_clean (IPAC)
load("~/git/M_prep/M_prep_cleanip_BT-Settl.RData")
rm(xtmp)
# Buscamos las catacterísticas para extraerla del conjunto de train par T
signal <- unlist(lapply(features$T, function(x) {
    a <- strsplit(x, "_")
    return(a[[1]][1])
}))
noise <- unlist(lapply(features$T, function(x) {
    a <- strsplit(x, "_")
    return(a[[1]][2])
}))
sn <- cbind(signal, noise)
int_spec <- function(x, idx, norm = 0) {
    y <- x$data[[1]][eval(parse(text = idx)), ]
    xz <- diff(as.numeric(y[, 1]), 1)
    yz <- as.numeric(y[, 2])
    if (norm > 0) {
        yz <- rep(1, length(xz))
    }
    z <- sum(xz * rollmean(yz, 2))
    return(z)
}
#
feature_extr <- function(sn, bp) {
    sig <- sn[1]
    noi <- sn[2]
    Fcont <- unlist(lapply(bp, int_spec, noi, 0))/unlist(lapply(bp, int_spec, 
        noi, 1))
    fea <- unlist(lapply(bp, int_spec, sig, 1)) - unlist(lapply(bp, int_spec, 
        sig, 0))/Fcont
    return(fea)
}
xx <- apply(sn, 1, feature_extr, bp_clean)
colnames(xx) <- as.character(sn[, 1])
xx <- cbind(xx, unlist(lapply(bp_clean, function(x) {
    return(x$stellarp[1])
})))
colnames(xx)[6] <- "T"

# Just informing for the features
newfea <- cbind(t(apply(sn, 1, function(x) {
    return(range(bp_clean[[1]]$data[[1]][eval(parse(text = x[1])), 1]))
})), t(apply(sn, 1, function(x) {
    return(range(bp_clean[[1]]$data[[1]][eval(parse(text = x[2])), 1]))
})))
colnames(newfea) <- c("Signal_from", "Signal_To", "Cont_From", "Cont_To")

print(xtable(newfea), type = "html")
Signal_from Signal_To Cont_From Cont_To
1 8461.00 8471.80 8482.60 8522.20
2 8630.20 8641.00 8655.40 8680.60
3 8662.60 8680.60 8623.00 8648.20
4 8756.20 8767.00 8720.20 8752.60
5 8986.60 8997.40 8925.40 8950.60
#

Regression and modeling

Let's build up several models and compare their performance. Generally speaking we split randomly the learning set and we will learn by ten folder cross validation. Then we will test the models against the unseen data and we will test the ensamble technology, even.

# Setup
gc(reset = TRUE)
##             used   (Mb) gc trigger   (Mb)  max used   (Mb)
## Ncells   2142714  114.5    6910418  369.1   2142714  114.5
## Vcells 566268933 4320.3  769748627 5872.8 566268933 4320.3
set.seed(42)  #From random.org

# Libraries
library(caret)
## Loading required package: cluster
## Loading required package: lattice
## Attaching package: 'lattice'
## The following object is masked from 'package:multicore':
## 
## parallel
## Loading required package: reshape2
## Attaching package: 'caret'
## The following object is masked from 'package:galgo':
## 
## best, confusionMatrix
library(devtools)
## Attaching package: 'devtools'
## The following object is masked from 'package:R.oo':
## 
## check, unload
# Solo una vez: install_github('caretEnsemble', 'zachmayer') #Install
# zach's caretEnsemble package Code gathered from the author's post.
library(caretEnsemble)

# Data
library(mlbench)
xx <- as.data.frame(xx)
X <- xx[, -6]
rownames(X) <- 1:nrow(X)
X <- data.frame(X)
Y <- xx$T

# Split train/test
train <- runif(nrow(X)) <= 0.66

# Setup CV Folds returnData=FALSE saves some space
folds = 10
repeats = 1
myControl <- trainControl(method = "cv", number = folds, repeats = repeats, 
    returnResamp = "none", returnData = FALSE, savePredictions = TRUE, verboseIter = FALSE, 
    allowParallel = TRUE, index = createMultiFolds(Y[train], k = folds, times = repeats))
# Train some models
model1 <- train(X[train, ], Y[train], method = "gbm", trControl = myControl, 
    tuneGrid = expand.grid(.n.trees = 500, .interaction.depth = 15, .shrinkage = 0.01))
## Loading required package: survival
## Loading required package: splines
## Loaded gbm 2.1
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   179290.6756            -nan     0.0100 3449.4813
##      2   175924.1114            -nan     0.0100 3650.4133
##      3   172871.5828            -nan     0.0100 2816.4498
##      4   169565.8759            -nan     0.0100 3722.4145
##      5   166309.2222            -nan     0.0100 2953.1469
##      6   163188.4398            -nan     0.0100 2627.2671
##      7   160124.8503            -nan     0.0100 2833.4640
##      8   157038.2829            -nan     0.0100 2977.3407
##      9   154066.3264            -nan     0.0100 2959.1656
##     10   151206.4371            -nan     0.0100 2974.4705
##     20   125731.2368            -nan     0.0100 2295.7701
##     40    87144.6802            -nan     0.0100 1647.6697
##     60    60427.6257            -nan     0.0100  933.2772
##     80    42650.4567            -nan     0.0100  792.6213
##    100    30464.3794            -nan     0.0100  404.4520
##    120    22222.7277            -nan     0.0100  348.1633
##    140    16662.5197            -nan     0.0100  224.6389
##    160    12788.1064            -nan     0.0100  149.0559
##    180    10185.8651            -nan     0.0100  107.3944
##    200     8255.0302            -nan     0.0100   50.7436
##    220     6900.7945            -nan     0.0100   30.9922
##    240     5957.8823            -nan     0.0100   34.7786
##    260     5265.2262            -nan     0.0100   22.9824
##    280     4774.3978            -nan     0.0100    7.9768
##    300     4392.3341            -nan     0.0100    6.2300
##    320     4127.5256            -nan     0.0100    2.6225
##    340     3911.5160            -nan     0.0100   -0.7811
##    360     3731.6083            -nan     0.0100    0.0938
##    380     3605.8887            -nan     0.0100  -13.5423
##    400     3488.6971            -nan     0.0100   -6.1995
##    420     3380.4812            -nan     0.0100   -3.7972
##    440     3290.3131            -nan     0.0100   -2.7742
##    460     3201.1714            -nan     0.0100    0.6074
##    480     3122.9301            -nan     0.0100   -6.7846
##    500     3035.2478            -nan     0.0100   -3.3754
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180912.6788            -nan     0.0100 3076.1039
##      2   177491.6558            -nan     0.0100 3476.0803
##      3   174212.9223            -nan     0.0100 3050.3013
##      4   171041.3012            -nan     0.0100 3134.4460
##      5   167792.3145            -nan     0.0100 3114.8881
##      6   164687.5520            -nan     0.0100 3197.3762
##      7   161551.2629            -nan     0.0100 3136.6213
##      8   158510.8980            -nan     0.0100 3165.4616
##      9   155451.1966            -nan     0.0100 2930.0809
##     10   152462.0014            -nan     0.0100 3343.3901
##     20   126645.0338            -nan     0.0100 2070.3030
##     40    87458.0379            -nan     0.0100 1506.5785
##     60    60835.7274            -nan     0.0100 1002.8963
##     80    42796.5255            -nan     0.0100  681.6587
##    100    30723.6866            -nan     0.0100  500.1387
##    120    22434.9566            -nan     0.0100  319.1192
##    140    16827.7076            -nan     0.0100  188.0334
##    160    13054.2416            -nan     0.0100  117.7106
##    180    10268.7649            -nan     0.0100  103.4030
##    200     8419.8439            -nan     0.0100   79.0092
##    220     7000.5604            -nan     0.0100   36.1001
##    240     6070.5954            -nan     0.0100   19.5363
##    260     5423.5554            -nan     0.0100   17.9201
##    280     4874.6011            -nan     0.0100    2.5073
##    300     4491.3550            -nan     0.0100    3.6627
##    320     4207.2599            -nan     0.0100    5.0352
##    340     3965.7381            -nan     0.0100   -3.6509
##    360     3778.5756            -nan     0.0100   -2.1880
##    380     3645.4784            -nan     0.0100    1.9233
##    400     3501.5179            -nan     0.0100   -6.5030
##    420     3371.1858            -nan     0.0100   -8.8150
##    440     3252.1586            -nan     0.0100   -6.0876
##    460     3140.8605            -nan     0.0100    0.5251
##    480     3059.4407            -nan     0.0100   -3.8562
##    500     2978.9388            -nan     0.0100   -9.5219
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   181555.4807            -nan     0.0100 3067.6590
##      2   178076.1752            -nan     0.0100 3143.8524
##      3   174754.9127            -nan     0.0100 3158.8047
##      4   171426.0028            -nan     0.0100 3499.3733
##      5   168250.6720            -nan     0.0100 3367.1626
##      6   165125.4923            -nan     0.0100 2998.0795
##      7   162059.2632            -nan     0.0100 2956.9210
##      8   159098.2969            -nan     0.0100 3003.1056
##      9   156173.2811            -nan     0.0100 2710.0201
##     10   153261.1831            -nan     0.0100 2858.1986
##     20   127080.1921            -nan     0.0100 2216.6041
##     40    87702.1586            -nan     0.0100 1556.3787
##     60    61302.3751            -nan     0.0100 1089.7144
##     80    43268.3041            -nan     0.0100  621.9405
##    100    31014.7562            -nan     0.0100  467.4122
##    120    22534.4469            -nan     0.0100  328.4570
##    140    16958.5830            -nan     0.0100  185.9166
##    160    13056.8996            -nan     0.0100  130.8775
##    180    10320.7001            -nan     0.0100   66.9451
##    200     8444.7758            -nan     0.0100   69.0655
##    220     7152.3156            -nan     0.0100   50.0892
##    240     6201.1581            -nan     0.0100   24.0518
##    260     5482.3256            -nan     0.0100   18.3081
##    280     4959.3316            -nan     0.0100   13.5270
##    300     4572.7137            -nan     0.0100    2.3583
##    320     4292.2765            -nan     0.0100   -4.0026
##    340     4073.3105            -nan     0.0100   -2.6376
##    360     3903.0377            -nan     0.0100   -3.2307
##    380     3742.1824            -nan     0.0100   -4.4067
##    400     3602.6183            -nan     0.0100   -6.4981
##    420     3491.5048            -nan     0.0100   -5.4746
##    440     3398.6622            -nan     0.0100   -1.5090
##    460     3289.7407            -nan     0.0100  -11.7832
##    480     3187.8200            -nan     0.0100   -5.9593
##    500     3100.1104            -nan     0.0100   -2.4360
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   189050.1915            -nan     0.0100 3510.3418
##      2   185428.0170            -nan     0.0100 3910.4349
##      3   181951.7019            -nan     0.0100 3654.0943
##      4   178413.2833            -nan     0.0100 3601.8139
##      5   175071.0759            -nan     0.0100 3240.3316
##      6   171715.9136            -nan     0.0100 3264.8749
##      7   168413.0334            -nan     0.0100 3246.4949
##      8   165187.6621            -nan     0.0100 3224.2356
##      9   162078.2189            -nan     0.0100 2933.5884
##     10   158968.7351            -nan     0.0100 2766.2756
##     20   131625.5462            -nan     0.0100 2250.3539
##     40    90431.0894            -nan     0.0100 1606.6971
##     60    63175.3808            -nan     0.0100 1273.7639
##     80    44495.5144            -nan     0.0100  712.0235
##    100    31812.6820            -nan     0.0100  492.1736
##    120    23109.9172            -nan     0.0100  385.7201
##    140    17104.9103            -nan     0.0100  241.2376
##    160    13062.8692            -nan     0.0100  179.5442
##    180    10244.6594            -nan     0.0100   93.5667
##    200     8327.0764            -nan     0.0100   64.8814
##    220     6978.8418            -nan     0.0100   42.6870
##    240     6057.7964            -nan     0.0100   37.1927
##    260     5355.5857            -nan     0.0100   14.2391
##    280     4860.4783            -nan     0.0100   16.7950
##    300     4500.7915            -nan     0.0100    6.4336
##    320     4227.1208            -nan     0.0100    7.6112
##    340     3995.4284            -nan     0.0100    2.9987
##    360     3799.8770            -nan     0.0100    4.1219
##    380     3623.9772            -nan     0.0100   -3.7763
##    400     3490.2749            -nan     0.0100    1.5276
##    420     3385.6882            -nan     0.0100   -5.8123
##    440     3288.3149            -nan     0.0100   -2.0150
##    460     3203.0731            -nan     0.0100  -13.0881
##    480     3120.3683            -nan     0.0100   -4.8818
##    500     3052.3156            -nan     0.0100   -0.8426
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   172895.4458            -nan     0.0100 3707.5933
##      2   169847.1383            -nan     0.0100 3117.0799
##      3   166662.1109            -nan     0.0100 3349.3722
##      4   163437.0341            -nan     0.0100 3542.5793
##      5   160421.0792            -nan     0.0100 2732.7173
##      6   157572.7805            -nan     0.0100 2819.4386
##      7   154711.3524            -nan     0.0100 2633.3310
##      8   151779.4900            -nan     0.0100 3319.3703
##      9   148879.7787            -nan     0.0100 2931.3127
##     10   146046.2465            -nan     0.0100 2862.2353
##     20   120877.7623            -nan     0.0100 2379.6293
##     40    83960.8753            -nan     0.0100 1408.4273
##     60    58729.1951            -nan     0.0100 1155.2843
##     80    41619.0453            -nan     0.0100  516.6235
##    100    29737.4909            -nan     0.0100  494.5595
##    120    21705.3142            -nan     0.0100  314.8177
##    140    16163.8570            -nan     0.0100  205.6146
##    160    12428.4761            -nan     0.0100  160.3794
##    180     9870.4851            -nan     0.0100   97.7310
##    200     8101.4123            -nan     0.0100   50.1720
##    220     6839.2060            -nan     0.0100   34.6143
##    240     5948.0439            -nan     0.0100   32.1059
##    260     5329.4012            -nan     0.0100   10.7630
##    280     4854.2699            -nan     0.0100    4.0034
##    300     4491.5398            -nan     0.0100   16.6955
##    320     4204.5474            -nan     0.0100    8.2026
##    340     3961.1897            -nan     0.0100    4.3021
##    360     3769.0487            -nan     0.0100   -4.8070
##    380     3624.4165            -nan     0.0100   -2.5215
##    400     3479.4727            -nan     0.0100    2.8709
##    420     3353.9994            -nan     0.0100   -8.7182
##    440     3246.0430            -nan     0.0100    0.9098
##    460     3161.7512            -nan     0.0100   -7.4962
##    480     3059.9811            -nan     0.0100   -4.3569
##    500     2965.8538            -nan     0.0100   -3.7445
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   179296.8108            -nan     0.0100 3551.3548
##      2   176096.0189            -nan     0.0100 3417.5753
##      3   172802.2068            -nan     0.0100 3005.5931
##      4   169541.8418            -nan     0.0100 3370.0602
##      5   166267.9818            -nan     0.0100 3175.6485
##      6   163213.6012            -nan     0.0100 3302.7908
##      7   160104.4645            -nan     0.0100 3068.4469
##      8   157099.5303            -nan     0.0100 2743.5744
##      9   154118.7947            -nan     0.0100 2764.1320
##     10   151293.8828            -nan     0.0100 2762.6866
##     20   125399.4141            -nan     0.0100 2337.3398
##     40    86749.9893            -nan     0.0100 1701.8883
##     60    60608.7089            -nan     0.0100 1054.4965
##     80    42735.6735            -nan     0.0100  648.0236
##    100    30618.9774            -nan     0.0100  414.0266
##    120    22317.6415            -nan     0.0100  359.3509
##    140    16614.0952            -nan     0.0100  211.2492
##    160    12788.0282            -nan     0.0100  134.7489
##    180     9984.1944            -nan     0.0100  113.3066
##    200     8136.5710            -nan     0.0100   48.4987
##    220     6804.9680            -nan     0.0100   55.3231
##    240     5857.7154            -nan     0.0100   33.5586
##    260     5189.5502            -nan     0.0100   23.3230
##    280     4718.4146            -nan     0.0100   17.7238
##    300     4361.4018            -nan     0.0100    2.8188
##    320     4097.8704            -nan     0.0100   -0.5482
##    340     3889.7961            -nan     0.0100    4.4900
##    360     3723.4608            -nan     0.0100   -3.2263
##    380     3560.0907            -nan     0.0100    3.2863
##    400     3426.3206            -nan     0.0100   -8.6422
##    420     3314.7080            -nan     0.0100    0.2924
##    440     3219.7816            -nan     0.0100   -3.9917
##    460     3133.1492            -nan     0.0100   -8.6189
##    480     3044.2161            -nan     0.0100   -6.9106
##    500     2973.0018            -nan     0.0100   -2.2413
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   182521.5809            -nan     0.0100 3231.3557
##      2   179182.8821            -nan     0.0100 3809.4275
##      3   175712.8656            -nan     0.0100 3010.7257
##      4   172303.6894            -nan     0.0100 3411.7117
##      5   169028.2429            -nan     0.0100 3774.0642
##      6   165744.9402            -nan     0.0100 3077.4976
##      7   162547.5270            -nan     0.0100 3115.0629
##      8   159438.5078            -nan     0.0100 3172.2675
##      9   156407.5566            -nan     0.0100 2781.3710
##     10   153536.9136            -nan     0.0100 3080.7905
##     20   127132.1672            -nan     0.0100 2250.1426
##     40    87664.5633            -nan     0.0100 1725.5455
##     60    60628.8640            -nan     0.0100 1212.1554
##     80    42438.3971            -nan     0.0100  783.2344
##    100    30058.3598            -nan     0.0100  462.5452
##    120    21507.4596            -nan     0.0100  359.1727
##    140    15811.9338            -nan     0.0100  218.0352
##    160    11823.2375            -nan     0.0100  135.6783
##    180     9178.1890            -nan     0.0100   99.1947
##    200     7313.5482            -nan     0.0100   58.8838
##    220     6024.6547            -nan     0.0100   41.7402
##    240     5129.2074            -nan     0.0100   32.6645
##    260     4470.5188            -nan     0.0100   12.9794
##    280     4000.4962            -nan     0.0100   12.9082
##    300     3673.2386            -nan     0.0100    3.8143
##    320     3416.0399            -nan     0.0100   -1.5341
##    340     3232.0376            -nan     0.0100    0.5454
##    360     3056.9010            -nan     0.0100   -4.0369
##    380     2937.7512            -nan     0.0100   -6.3901
##    400     2817.9370            -nan     0.0100   -3.9459
##    420     2723.7531            -nan     0.0100   -1.1297
##    440     2639.7933            -nan     0.0100   -1.9682
##    460     2577.1891            -nan     0.0100   -2.8133
##    480     2515.9969            -nan     0.0100   -3.1721
##    500     2448.7845            -nan     0.0100    0.0515
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   174654.6731            -nan     0.0100 3050.9672
##      2   171658.6711            -nan     0.0100 3113.2176
##      3   168515.6986            -nan     0.0100 3181.6632
##      4   165411.7591            -nan     0.0100 3127.0437
##      5   162319.8698            -nan     0.0100 2953.0267
##      6   159443.3829            -nan     0.0100 2902.4102
##      7   156615.0750            -nan     0.0100 2847.8342
##      8   153772.8902            -nan     0.0100 2694.5024
##      9   150954.8349            -nan     0.0100 2912.3203
##     10   148389.2793            -nan     0.0100 2756.3250
##     20   123372.3822            -nan     0.0100 2208.0367
##     40    85139.0900            -nan     0.0100 1514.1613
##     60    59192.0807            -nan     0.0100 1122.4057
##     80    41811.3479            -nan     0.0100  697.0307
##    100    30032.8220            -nan     0.0100  435.1154
##    120    21963.0249            -nan     0.0100  312.4659
##    140    16489.3155            -nan     0.0100  233.0801
##    160    12554.3764            -nan     0.0100  148.0965
##    180    10050.5135            -nan     0.0100   76.5435
##    200     8211.6511            -nan     0.0100   53.2932
##    220     7026.4926            -nan     0.0100   41.8047
##    240     6108.5642            -nan     0.0100   24.4610
##    260     5433.5438            -nan     0.0100   28.3330
##    280     4960.5320            -nan     0.0100    6.3201
##    300     4593.6810            -nan     0.0100    9.7330
##    320     4347.1932            -nan     0.0100   -4.1386
##    340     4085.0722            -nan     0.0100    2.8133
##    360     3901.8773            -nan     0.0100   -1.5323
##    380     3748.0176            -nan     0.0100    0.1315
##    400     3599.4279            -nan     0.0100   -4.2810
##    420     3477.4223            -nan     0.0100   -4.6731
##    440     3368.2125            -nan     0.0100   -6.9314
##    460     3268.8318            -nan     0.0100   -2.5734
##    480     3170.2733            -nan     0.0100   -3.2102
##    500     3089.9489            -nan     0.0100   -4.8216
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180505.4695            -nan     0.0100 3194.3077
##      2   176882.5503            -nan     0.0100 3781.0935
##      3   173378.9161            -nan     0.0100 3550.6578
##      4   170222.1000            -nan     0.0100 2733.1950
##      5   167094.1314            -nan     0.0100 3054.9965
##      6   163908.8276            -nan     0.0100 2942.1081
##      7   160960.5046            -nan     0.0100 2779.1790
##      8   157968.7934            -nan     0.0100 3435.6038
##      9   155167.6896            -nan     0.0100 3179.0610
##     10   152220.8055            -nan     0.0100 2809.9726
##     20   126230.0534            -nan     0.0100 2228.0748
##     40    87183.1335            -nan     0.0100 1612.6739
##     60    60807.9376            -nan     0.0100 1204.2402
##     80    42619.7181            -nan     0.0100  598.6200
##    100    30557.1255            -nan     0.0100  462.0330
##    120    22349.6422            -nan     0.0100  311.9872
##    140    16514.8674            -nan     0.0100  229.2890
##    160    12594.0771            -nan     0.0100  145.5517
##    180     9790.4918            -nan     0.0100   78.3545
##    200     7949.0073            -nan     0.0100   64.9700
##    220     6604.5963            -nan     0.0100   35.8757
##    240     5733.4518            -nan     0.0100   22.2263
##    260     5057.6308            -nan     0.0100   18.7855
##    280     4579.2172            -nan     0.0100   -2.1979
##    300     4242.8742            -nan     0.0100    8.0177
##    320     3973.4934            -nan     0.0100    0.1302
##    340     3761.3209            -nan     0.0100    1.8514
##    360     3593.4661            -nan     0.0100   -4.9383
##    380     3456.0977            -nan     0.0100   -3.5878
##    400     3333.9171            -nan     0.0100   -4.3075
##    420     3224.1942            -nan     0.0100   -4.2443
##    440     3135.8365            -nan     0.0100   -3.4775
##    460     3046.7203            -nan     0.0100   -6.8691
##    480     2957.6733            -nan     0.0100   -6.4531
##    500     2885.4532            -nan     0.0100   -9.3480
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   182809.3295            -nan     0.0100 3699.8001
##      2   179388.1214            -nan     0.0100 3459.6492
##      3   175878.0538            -nan     0.0100 3446.4266
##      4   172510.8127            -nan     0.0100 3332.5098
##      5   169182.7299            -nan     0.0100 3054.8305
##      6   166062.4797            -nan     0.0100 3159.2190
##      7   162982.5671            -nan     0.0100 2859.3682
##      8   159837.8834            -nan     0.0100 2942.1230
##      9   156835.4001            -nan     0.0100 2964.0026
##     10   153921.4163            -nan     0.0100 2925.2120
##     20   127394.4344            -nan     0.0100 2179.5175
##     40    88296.9979            -nan     0.0100 1562.1830
##     60    61570.9452            -nan     0.0100  870.2543
##     80    43171.0548            -nan     0.0100  659.4346
##    100    30677.6043            -nan     0.0100  483.0924
##    120    22072.4422            -nan     0.0100  393.5813
##    140    16234.2907            -nan     0.0100  228.9434
##    160    12310.3129            -nan     0.0100  170.4798
##    180     9653.6370            -nan     0.0100   89.7174
##    200     7786.3114            -nan     0.0100   70.2031
##    220     6451.7690            -nan     0.0100   41.2557
##    240     5498.9343            -nan     0.0100   35.8068
##    260     4791.5098            -nan     0.0100   17.1448
##    280     4307.6510            -nan     0.0100    8.5792
##    300     3941.1789            -nan     0.0100    4.2447
##    320     3663.4196            -nan     0.0100   -0.1407
##    340     3439.9978            -nan     0.0100   -2.2878
##    360     3249.7832            -nan     0.0100   -3.9335
##    380     3097.6176            -nan     0.0100   -1.7505
##    400     2960.5609            -nan     0.0100    0.2262
##    420     2842.4860            -nan     0.0100   -6.4762
##    440     2733.1067            -nan     0.0100   -0.7972
##    460     2639.7022            -nan     0.0100   -1.9787
##    480     2560.3355            -nan     0.0100   -2.3919
##    500     2483.1297            -nan     0.0100   -1.3719
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180300.3810            -nan     0.0100 3493.8635
##      2   176847.2663            -nan     0.0100 3325.1028
##      3   173531.2643            -nan     0.0100 3895.8545
##      4   170178.7444            -nan     0.0100 2947.4752
##      5   166958.7103            -nan     0.0100 3150.3364
##      6   163661.2166            -nan     0.0100 3362.6307
##      7   160437.1233            -nan     0.0100 3166.1541
##      8   157416.1655            -nan     0.0100 2517.4354
##      9   154434.8307            -nan     0.0100 2953.9066
##     10   151492.9404            -nan     0.0100 2720.1202
##     20   125371.1249            -nan     0.0100 2154.8025
##     40    86255.6606            -nan     0.0100 1630.6219
##     60    60080.8193            -nan     0.0100  952.3057
##     80    42386.6434            -nan     0.0100  664.7829
##    100    30280.5067            -nan     0.0100  464.5393
##    120    21965.4648            -nan     0.0100  334.7773
##    140    16343.2889            -nan     0.0100  227.4824
##    160    12498.1651            -nan     0.0100  154.3943
##    180     9824.5771            -nan     0.0100   88.8799
##    200     7945.4057            -nan     0.0100   64.1962
##    220     6636.4891            -nan     0.0100   39.2606
##    240     5670.7704            -nan     0.0100   29.2992
##    260     4981.6326            -nan     0.0100   22.5874
##    280     4526.0910            -nan     0.0100   12.1338
##    300     4144.5798            -nan     0.0100    1.2385
##    320     3834.4095            -nan     0.0100    2.4866
##    340     3570.2221            -nan     0.0100    9.4946
##    360     3377.1558            -nan     0.0100    3.2826
##    380     3216.2047            -nan     0.0100   -9.7074
##    400     3090.1029            -nan     0.0100    4.5483
##    420     3002.0631            -nan     0.0100   -3.9290
##    440     2913.3161            -nan     0.0100  -12.6389
##    460     2814.0676            -nan     0.0100   -2.3569
##    480     2738.2060            -nan     0.0100   -2.8661
##    500     2670.3260            -nan     0.0100   -7.7681
model2 <- train(X[train, ], Y[train], method = "blackboost", trControl = myControl)
## This is mboost 2.2-2. See 'package?mboost' and the NEWS file for a
## complete list of changes. Note: The default for the computation of the
## degrees of freedom has changed.  For details see section 'Global Options'
## of '?bols'.
## Loading required package: grid
## Loading required package: modeltools
## Loading required package: stats4
## Attaching package: 'modeltools'
## The following object is masked from 'package:R.oo':
## 
## clone, dimension
## The following object is masked from 'package:plyr':
## 
## empty
## Loading required package: coin
## Loading required package: mvtnorm
## Loading required package: sandwich
## Loading required package: strucchange
## Loading required package: vcd
## Loading required package: MASS
## Loading required package: colorspace
model3 <- train(X[train, ], Y[train], method = "parRF", trControl = myControl)
## randomForest 4.6-7
## Type rfNews() to see new features/changes/bug fixes.
model4 <- train(X[train, ], Y[train], method = "mlpWeightDecay", trControl = myControl, 
    trace = FALSE)
## Loading required package: Rcpp
## Attaching package: 'RSNNS'
## The following object is masked from 'package:caret':
## 
## confusionMatrix, train
## The following object is masked from 'package:galgo':
## 
## confusionMatrix
model5 <- train(X[train, ], Y[train], method = "ppr", trControl = myControl)
model6 <- train(X[train, ], Y[train], method = "earth", trControl = myControl)
## Loading required package: plotmo
## Loading required package: plotrix
model7 <- train(X[train, ], Y[train], method = "glm", trControl = myControl)
model8 <- train(X[train, ], Y[train], method = "svmRadial", trControl = myControl)
## Attaching package: 'kernlab'
## The following object is masked from 'package:modeltools':
## 
## prior
## The following object is masked from 'package:galgo':
## 
## scaling
model9 <- train(X[train, ], Y[train], method = "gam", trControl = myControl)
## This is mgcv 1.7-22. For overview type 'help("mgcv-package")'.
## Attaching package: 'mgcv'
## The following object is masked from 'package:magic':
## 
## magic
model10 <- train(X[train, ], Y[train], method = "glmnet", trControl = myControl)
## Loading required package: Matrix
## Loaded glmnet 1.9-3

# Make a list of all the models
all.models <- list(model1, model2, model3, model4, model5, model6, model7, model8, 
    model9, model10)
names(all.models) <- sapply(all.models, function(x) x$method)
sort(sapply(all.models, function(x) min(x$results$RMSE)))
##          earth            gam            ppr          parRF            gbm 
##          59.32          62.92          70.95          77.28          82.05 
##     blackboost            glm         glmnet      svmRadial mlpWeightDecay 
##          88.18         102.01         102.16         117.24         396.80

# Make a greedy ensemble - currently can only use RMSE
greedy <- caretEnsemble(all.models, iter = 1000L)
## Loading required package: pbapply
sort(greedy$weights, decreasing = TRUE)
## earth parRF   ppr   gam 
## 0.463 0.217 0.205 0.115
greedy$error
##  RMSE 
## 56.18

# Make a linear regression ensemble
linear <- caretStack(all.models, method = "glm", trControl = trainControl(method = "cv"))
summary(linear$ens_model$finalModel)
## 
## Call:
## NULL
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -217.08   -26.11     0.11    28.80   224.34  
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    39.10687   36.41750    1.07   0.2841    
## gbm            -0.20480    0.15756   -1.30   0.1950    
## blackboost     -0.18870    0.11666   -1.62   0.1072    
## parRF           0.71215    0.14603    4.88  2.1e-06 ***
## mlpWeightDecay  0.00744    0.01138    0.65   0.5138    
## ppr             0.30563    0.07345    4.16  4.5e-05 ***
## earth           0.50430    0.12725    3.96   0.0001 ***
## glm             1.71630    0.85300    2.01   0.0454 *  
## svmRadial      -0.09517    0.04747   -2.00   0.0462 *  
## gam             0.03065    0.10765    0.28   0.7761    
## glmnet         -1.80049    0.85606   -2.10   0.0366 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 3042)
## 
##     Null deviance: 42463442  on 230  degrees of freedom
## Residual deviance:   669182  on 220  degrees of freedom
## AIC: 2521
## 
## Number of Fisher Scoring iterations: 2
linear$error
##   parameter RMSE Rsquared RMSESD RsquaredSD
## 1      none 61.6   0.9806  7.872   0.006314

# Predict for test set:
preds <- data.frame(sapply(all.models, predict, newdata = X[!train, ]))
preds$ENS_greedy <- predict(greedy, newdata = X[!train, ])
preds$ENS_linear <- predict(linear, newdata = X[!train, ])
sort(sqrt(colMeans((preds - Y[!train])^2)))
##     ENS_greedy     ENS_linear            gam          earth          parRF 
##          55.27          58.30          63.66          63.95          72.97 
##            gbm            ppr     blackboost         glmnet            glm 
##          76.93          81.66          85.66         115.39         115.95 
##      svmRadial mlpWeightDecay 
##         122.60         533.94

IPAC validation

After having the models built as well as the ensamble of them it is time to predict for the IPAC dataset. Thus we start to prepare the data,

# Cargamos bq_clean (IPAC)
yy <- apply(sn, 1, feature_extr, bq_clean)
yy <- as.data.frame(yy)
colnames(yy) <- as.character(sn[, 1])
colnames(yy) <- str_replace(paste("X", colnames(yy), sep = ""), ":", ".")
# Predict for new dataset:
predf <- data.frame(sapply(all.models, predict, newdata = yy))
predf$ENS_greedy <- predict(greedy, newdata = yy)
predf$ENS_linear <- predict(linear, newdata = yy)

Neighbourhood Analysis

In order to realize how close or isolated the both sets (BT-SETTL and IPAC) are a PCA analysis is performed:

# Cargamos bq_clean (IPAC)
zz <- rbind(X, yy)
pcaz <- prcomp(zz)
plot(pcaz$x[, 1], pcaz$x[, 2], pch = ".")
points(pcaz$x[(nrow(X) + 1):nrow(zz), 1], pcaz$x[(nrow(X) + 1):nrow(zz), 2], 
    pch = "x", col = 3)
points(pcaz$x[1:nrow(X), 1], pcaz$x[1:nrow(X), 2], pch = "+", col = 2)

plot of chunk lee04

rownames(yy)[896 - nrow(X)]
## [1] "LP_799-3.7512.txt"

According to the obtained predictions, some comparison will be performed against the prediction carried out by using spectrafull projection by means of ICA/JADE technology. This was carried out by Miss Prendes Gero at http://innova.uned.es, so we will download her prediction datasets and just compare them.

# Cargamos bq_clean (IPAC)
load("~/git/M_sel/belen_resul_T.RData")
idx <- unlist(lapply(bq_clean, function(x) {
    return(x$name)
})) %in% rownames(dd)
plot(dd[, 1], predf$ENS_greedy[idx])

plot of chunk lee05

rownames(dd)[124]
## [1] "LP_799-3.7512.txt"
plot(dd[, 1], predf$ENS_greedy[idx], xlim = c(1500, 3500), ylim = c(1500, 3500))
lines(c(1500, 3500), c(1500, 3500), col = 2)

plot of chunk lee05

hist((dd[, 1] - predf$ENS_greedy[idx])/sd(dd[, 1] - predf$ENS_greedy[idx]), 
    breaks = 20)

plot of chunk lee05

mean(dd[, 1] - predf$ENS_greedy[idx])
## [1] 4.765
sd(dd[, 1] - predf$ENS_greedy[idx])
## [1] 636.9

What if we test the data windows proposed by the paper?

As it was depicted in “The Infrared Telescope Facility (IRTF) spectral library: Spectral diagnostics for cool stars” A&A 549, A129 (2013), the authors M. Cesetti; A. Pizzella; V. D. Ivanov; L. Morelli; E. M. Corsini and E. Dalla Bontà have proposed a set of ranges for signals and for continuum inside the K band, it could make sense to test the same features for BT-SETTL instead of IRTF as they have done, especially whenever the data are inside the wavelenght range for IPAC. This means that the last two rows of the band I don't make sense in the IPAC case and they are not presented.

Just as a remainder those values are:

#
require(xtable)
print(xtable(bi[, 1:7]), "html")
Element From To ContFrom_1 ContTo_1 ContFrom_2 ContTo_2
1 Pa1 8461 8474 8474 8484 8563 8577
2 Ca1 8484 8513 8474 8484 8563 8577
3 Ca2 8522 8562 8474 8484 8563 8577
4 Pa2 8577 8619 8563 8577 8619 8642
5 Ca3 8642 8682 8619 8642 8700 8725
6 Pa3 8730 8772 8700 8725 8776 8792
7 Mg 8802 8811 8776 8792 8815 8850
8 Pa4 8850 8890 8815 8850 8890 8900
9 Pa5 9000 9030 8983 8998 9040 9050
#
lgth <- 3.6
org <- 8461 - lgth
signal2 <- paste(round((bi[, 2] - org)/lgth), round((bi[, 3] - org)/lgth), sep = ":")
noise2 <- paste(round((bi[, 4] - org)/lgth), round((bi[, 5] - org)/lgth), sep = ":")
sn2 <- cbind(signal2, noise2)
xx2 <- apply(sn2, 1, feature_extr, bp_clean)
colnames(xx2) <- as.character(sn2[, 1])
xx2 <- cbind(xx2, unlist(lapply(bp_clean, function(x) {
    return(x$stellarp[1])
})))
colnames(xx2)[10] <- "T"

Now we perform the regression analysis

Regression analysis against features defined by the paper

# Data
library(mlbench)
xx2 <- as.data.frame(xx2)
X <- xx2[, -10]
rownames(X) <- 1:nrow(X)
X <- data.frame(X)
Y <- xx2$T

# Train some models
model1.2 <- train(X[train, ], Y[train], method = "gbm", trControl = myControl, 
    tuneGrid = expand.grid(.n.trees = 500, .interaction.depth = 15, .shrinkage = 0.01))
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   179445.0091            -nan     0.0100 3314.8931
##      2   176204.4837            -nan     0.0100 3407.0007
##      3   172988.2950            -nan     0.0100 3309.7664
##      4   169767.2731            -nan     0.0100 3243.8598
##      5   166752.0394            -nan     0.0100 2884.2308
##      6   163579.5742            -nan     0.0100 3021.4193
##      7   160583.1556            -nan     0.0100 2863.9737
##      8   157556.4919            -nan     0.0100 2948.8068
##      9   154872.1398            -nan     0.0100 2529.7055
##     10   152149.8912            -nan     0.0100 2776.0688
##     20   126595.9125            -nan     0.0100 2203.0916
##     40    87922.1610            -nan     0.0100 1734.9142
##     60    61857.7379            -nan     0.0100 1001.1975
##     80    44066.1849            -nan     0.0100  688.3692
##    100    31962.8839            -nan     0.0100  487.6291
##    120    23461.1087            -nan     0.0100  342.3530
##    140    17512.6943            -nan     0.0100  213.1078
##    160    13415.1583            -nan     0.0100  104.4063
##    180    10614.1665            -nan     0.0100  126.3339
##    200     8605.4747            -nan     0.0100   64.5891
##    220     7152.2044            -nan     0.0100   49.5786
##    240     6130.3479            -nan     0.0100   32.5434
##    260     5417.4061            -nan     0.0100   22.6540
##    280     4829.6650            -nan     0.0100   17.6767
##    300     4427.1794            -nan     0.0100   14.2165
##    320     4096.8869            -nan     0.0100    8.0810
##    340     3860.7530            -nan     0.0100   -1.3809
##    360     3664.7491            -nan     0.0100    0.6119
##    380     3486.7197            -nan     0.0100   -8.1842
##    400     3346.6435            -nan     0.0100   -1.8841
##    420     3190.4075            -nan     0.0100   -1.8405
##    440     3067.4885            -nan     0.0100   -0.3704
##    460     2944.4376            -nan     0.0100   -2.6919
##    480     2843.7108            -nan     0.0100   -8.4598
##    500     2749.5311            -nan     0.0100   -3.7408
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180802.1159            -nan     0.0100 3307.8582
##      2   177412.7585            -nan     0.0100 3393.5947
##      3   174172.8617            -nan     0.0100 3091.7678
##      4   171170.4818            -nan     0.0100 2667.2954
##      5   168006.4188            -nan     0.0100 3170.7767
##      6   164915.3299            -nan     0.0100 2588.8424
##      7   162048.4881            -nan     0.0100 2055.6316
##      8   159223.2853            -nan     0.0100 2554.1612
##      9   156437.5611            -nan     0.0100 2794.7770
##     10   153693.8646            -nan     0.0100 3113.9286
##     20   127900.3343            -nan     0.0100 2065.8493
##     40    89241.1954            -nan     0.0100 1525.2010
##     60    62677.1519            -nan     0.0100  994.7882
##     80    44586.5397            -nan     0.0100  883.8525
##    100    32364.8634            -nan     0.0100  477.4207
##    120    23749.7339            -nan     0.0100  343.9178
##    140    17797.7154            -nan     0.0100  214.0946
##    160    13823.8291            -nan     0.0100  161.9267
##    180    10781.2492            -nan     0.0100   83.0017
##    200     8758.8651            -nan     0.0100   61.8085
##    220     7284.1889            -nan     0.0100   48.3711
##    240     6283.1948            -nan     0.0100   31.9307
##    260     5542.1157            -nan     0.0100   19.0477
##    280     4982.3368            -nan     0.0100    9.8610
##    300     4545.6055            -nan     0.0100    6.2612
##    320     4237.6663            -nan     0.0100   -1.0775
##    340     3992.5845            -nan     0.0100    2.0102
##    360     3759.7364            -nan     0.0100   -6.2455
##    380     3576.2507            -nan     0.0100   -3.7255
##    400     3420.1741            -nan     0.0100    0.1382
##    420     3283.7989            -nan     0.0100   -5.5520
##    440     3146.1010            -nan     0.0100   -4.4418
##    460     3045.9011            -nan     0.0100   -0.7124
##    480     2936.4634            -nan     0.0100   -5.0077
##    500     2830.8786            -nan     0.0100   -0.8950
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   181648.4928            -nan     0.0100 3057.3595
##      2   178390.3995            -nan     0.0100 3522.7490
##      3   175299.3076            -nan     0.0100 3652.2996
##      4   172244.0135            -nan     0.0100 2825.7204
##      5   168995.1841            -nan     0.0100 3516.5245
##      6   165815.8042            -nan     0.0100 2928.6002
##      7   162740.3648            -nan     0.0100 3159.0529
##      8   160040.6028            -nan     0.0100 2613.6945
##      9   157115.0883            -nan     0.0100 3169.2118
##     10   154174.9236            -nan     0.0100 2914.3465
##     20   127913.1627            -nan     0.0100 2492.9214
##     40    89017.2814            -nan     0.0100 1530.1240
##     60    62628.0484            -nan     0.0100  927.4124
##     80    44592.2426            -nan     0.0100  725.4507
##    100    32315.5987            -nan     0.0100  538.5748
##    120    23797.9375            -nan     0.0100  361.5696
##    140    17728.1322            -nan     0.0100  263.9159
##    160    13747.3121            -nan     0.0100  161.6578
##    180    10796.3624            -nan     0.0100  100.6915
##    200     8702.9041            -nan     0.0100   80.0431
##    220     7258.2648            -nan     0.0100   46.0947
##    240     6196.2400            -nan     0.0100   27.2165
##    260     5430.3107            -nan     0.0100   24.8229
##    280     4924.8261            -nan     0.0100    4.6141
##    300     4481.8405            -nan     0.0100   13.1262
##    320     4182.9155            -nan     0.0100    5.6090
##    340     3893.3217            -nan     0.0100    4.9757
##    360     3677.5524            -nan     0.0100   -5.5066
##    380     3513.2839            -nan     0.0100   -2.4458
##    400     3354.3031            -nan     0.0100   -3.2189
##    420     3210.8769            -nan     0.0100   -1.1445
##    440     3092.5747            -nan     0.0100   -2.0456
##    460     2970.0296            -nan     0.0100   -2.3250
##    480     2866.6667            -nan     0.0100   -2.3249
##    500     2773.8351            -nan     0.0100   -9.8697
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   189177.4266            -nan     0.0100 3389.5750
##      2   185623.5952            -nan     0.0100 3330.6154
##      3   182211.7509            -nan     0.0100 3732.1488
##      4   178839.3934            -nan     0.0100 2911.0088
##      5   175561.0028            -nan     0.0100 3161.0052
##      6   172254.8348            -nan     0.0100 2679.9907
##      7   169078.0496            -nan     0.0100 3304.7331
##      8   166018.9399            -nan     0.0100 3023.5596
##      9   162905.8477            -nan     0.0100 3106.6096
##     10   159854.9654            -nan     0.0100 2712.8134
##     20   132944.2294            -nan     0.0100 2227.4107
##     40    92666.3401            -nan     0.0100 1639.8125
##     60    65170.2927            -nan     0.0100 1124.9875
##     80    46285.4016            -nan     0.0100  616.6015
##    100    33355.4511            -nan     0.0100  488.7676
##    120    24446.3357            -nan     0.0100  365.1312
##    140    18137.3066            -nan     0.0100  233.1558
##    160    13752.2929            -nan     0.0100  156.9903
##    180    10835.9478            -nan     0.0100  115.9096
##    200     8797.5618            -nan     0.0100   82.8223
##    220     7309.2783            -nan     0.0100   36.5429
##    240     6276.7383            -nan     0.0100   38.4420
##    260     5537.0351            -nan     0.0100   20.7257
##    280     4956.4890            -nan     0.0100   10.1447
##    300     4571.2637            -nan     0.0100   10.7087
##    320     4289.3882            -nan     0.0100    2.1109
##    340     4025.8376            -nan     0.0100    2.0079
##    360     3776.8608            -nan     0.0100   -4.0240
##    380     3590.1845            -nan     0.0100   -2.5410
##    400     3421.9131            -nan     0.0100   -0.6144
##    420     3301.3996            -nan     0.0100    1.0975
##    440     3182.1628            -nan     0.0100   -2.8445
##    460     3072.3360            -nan     0.0100   -0.5009
##    480     2957.9069            -nan     0.0100   -5.5704
##    500     2875.0104            -nan     0.0100   -2.9976
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   172962.2465            -nan     0.0100 3240.1958
##      2   169571.9116            -nan     0.0100 3194.2310
##      3   166441.0905            -nan     0.0100 2969.4029
##      4   163316.2929            -nan     0.0100 3564.3742
##      5   160373.0507            -nan     0.0100 2926.5410
##      6   157394.2064            -nan     0.0100 2486.2859
##      7   154548.3460            -nan     0.0100 2915.5848
##      8   151759.5399            -nan     0.0100 2796.1975
##      9   148919.1926            -nan     0.0100 2808.6227
##     10   146353.7756            -nan     0.0100 2845.0085
##     20   121833.2170            -nan     0.0100 2356.7797
##     40    85355.0479            -nan     0.0100 1657.9792
##     60    60199.0385            -nan     0.0100 1055.2818
##     80    42919.9932            -nan     0.0100  764.6807
##    100    31101.0581            -nan     0.0100  452.3415
##    120    22864.7791            -nan     0.0100  230.0907
##    140    17195.1357            -nan     0.0100  202.7614
##    160    13345.3652            -nan     0.0100  149.9095
##    180    10624.1334            -nan     0.0100  114.2349
##    200     8590.1942            -nan     0.0100   62.5145
##    220     7180.7656            -nan     0.0100   55.6644
##    240     6109.9651            -nan     0.0100   42.9793
##    260     5343.2717            -nan     0.0100   13.4036
##    280     4821.2190            -nan     0.0100   11.4373
##    300     4393.1294            -nan     0.0100    8.8547
##    320     4046.3976            -nan     0.0100   -1.7611
##    340     3809.5617            -nan     0.0100    3.6664
##    360     3604.6794            -nan     0.0100    7.0390
##    380     3421.6200            -nan     0.0100   -3.1602
##    400     3286.8996            -nan     0.0100   -3.4779
##    420     3153.6859            -nan     0.0100    1.3997
##    440     3027.8187            -nan     0.0100   -0.5909
##    460     2925.7346            -nan     0.0100   -3.4509
##    480     2836.5252            -nan     0.0100    0.6045
##    500     2743.3084            -nan     0.0100   -0.1533
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   179347.1834            -nan     0.0100 3658.2386
##      2   176021.9847            -nan     0.0100 2790.9039
##      3   172834.2847            -nan     0.0100 3188.5945
##      4   169725.2588            -nan     0.0100 3338.0800
##      5   166771.0903            -nan     0.0100 3436.6585
##      6   163674.7060            -nan     0.0100 3063.6291
##      7   160697.0529            -nan     0.0100 3332.8936
##      8   157746.1208            -nan     0.0100 2868.6741
##      9   154796.8475            -nan     0.0100 2961.1436
##     10   152088.0634            -nan     0.0100 2579.2105
##     20   126854.9890            -nan     0.0100 1849.7370
##     40    87884.1304            -nan     0.0100 1528.6530
##     60    61664.0334            -nan     0.0100 1014.9169
##     80    43832.5666            -nan     0.0100  675.3175
##    100    31502.2239            -nan     0.0100  471.9732
##    120    23069.0455            -nan     0.0100  261.9049
##    140    17328.2332            -nan     0.0100  144.1412
##    160    13346.5674            -nan     0.0100  170.6402
##    180    10610.7973            -nan     0.0100  122.3278
##    200     8623.0232            -nan     0.0100   72.2113
##    220     7079.3716            -nan     0.0100   46.4378
##    240     6117.3499            -nan     0.0100   41.9476
##    260     5356.6008            -nan     0.0100   14.6314
##    280     4808.5966            -nan     0.0100    8.8988
##    300     4418.1643            -nan     0.0100   -4.0479
##    320     4088.6311            -nan     0.0100    9.4720
##    340     3829.5021            -nan     0.0100    6.0794
##    360     3595.0544            -nan     0.0100    6.1924
##    380     3421.0029            -nan     0.0100    3.2150
##    400     3291.5773            -nan     0.0100   -5.3025
##    420     3168.0713            -nan     0.0100   -4.0054
##    440     3057.5715            -nan     0.0100   -7.3039
##    460     2948.2054            -nan     0.0100   -4.8111
##    480     2847.7809            -nan     0.0100   -2.8430
##    500     2752.2320            -nan     0.0100   -1.8050
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   182989.8128            -nan     0.0100 3318.5461
##      2   179615.2152            -nan     0.0100 3059.9227
##      3   176340.7357            -nan     0.0100 3510.0982
##      4   172950.4543            -nan     0.0100 3526.3998
##      5   169890.7241            -nan     0.0100 3403.1022
##      6   166751.0800            -nan     0.0100 2988.0202
##      7   163557.1440            -nan     0.0100 2817.3661
##      8   160533.0015            -nan     0.0100 2706.5549
##      9   157531.6232            -nan     0.0100 2927.2076
##     10   154631.0315            -nan     0.0100 2585.1608
##     20   128429.0106            -nan     0.0100 2342.8350
##     40    88792.0880            -nan     0.0100 1734.2848
##     60    62305.5130            -nan     0.0100  916.6672
##     80    44357.0238            -nan     0.0100  653.2070
##    100    31873.6684            -nan     0.0100  490.0681
##    120    23215.9882            -nan     0.0100  317.2659
##    140    17241.7092            -nan     0.0100  244.6502
##    160    13133.0613            -nan     0.0100  181.6092
##    180    10276.6629            -nan     0.0100   94.4888
##    200     8158.8976            -nan     0.0100   68.1566
##    220     6706.9458            -nan     0.0100   62.1828
##    240     5610.6609            -nan     0.0100   30.4679
##    260     4869.7075            -nan     0.0100   22.2786
##    280     4325.9350            -nan     0.0100    8.6543
##    300     3947.6766            -nan     0.0100    5.9386
##    320     3616.8692            -nan     0.0100    5.2659
##    340     3346.9311            -nan     0.0100   12.0551
##    360     3133.8614            -nan     0.0100   -2.7944
##    380     2967.6166            -nan     0.0100   -1.5663
##    400     2847.6581            -nan     0.0100   -6.5066
##    420     2718.7955            -nan     0.0100   -2.2658
##    440     2631.0444            -nan     0.0100   -4.2134
##    460     2522.6098            -nan     0.0100    0.0252
##    480     2429.1185            -nan     0.0100    2.4179
##    500     2332.0522            -nan     0.0100   -3.4717
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   174475.1494            -nan     0.0100 3328.1716
##      2   171177.4495            -nan     0.0100 3241.7076
##      3   168019.4129            -nan     0.0100 3267.6229
##      4   164917.7055            -nan     0.0100 3039.2485
##      5   161877.2854            -nan     0.0100 3462.3934
##      6   159081.4166            -nan     0.0100 2474.6396
##      7   156108.4056            -nan     0.0100 2552.5743
##      8   153170.8674            -nan     0.0100 3075.9586
##      9   150411.6005            -nan     0.0100 2730.3856
##     10   147704.6976            -nan     0.0100 2959.6957
##     20   122680.4431            -nan     0.0100 1993.4833
##     40    85160.2253            -nan     0.0100 1654.8740
##     60    59905.3002            -nan     0.0100  984.1646
##     80    42281.8847            -nan     0.0100  705.7755
##    100    30267.5606            -nan     0.0100  491.3174
##    120    22036.0829            -nan     0.0100  265.4609
##    140    16381.5182            -nan     0.0100  234.6781
##    160    12477.4489            -nan     0.0100  135.9498
##    180     9681.3549            -nan     0.0100   85.4198
##    200     7774.2683            -nan     0.0100   80.3217
##    220     6385.4739            -nan     0.0100   55.4490
##    240     5387.6783            -nan     0.0100   26.7191
##    260     4710.9067            -nan     0.0100    9.2347
##    280     4181.5375            -nan     0.0100   10.1532
##    300     3755.5223            -nan     0.0100    8.5276
##    320     3445.3414            -nan     0.0100    6.8672
##    340     3197.9142            -nan     0.0100    7.8333
##    360     3019.6126            -nan     0.0100    0.0108
##    380     2861.9221            -nan     0.0100   -5.2618
##    400     2719.7928            -nan     0.0100   -1.2715
##    420     2606.3637            -nan     0.0100   -1.2502
##    440     2481.7914            -nan     0.0100   -1.9550
##    460     2382.2404            -nan     0.0100   -4.3065
##    480     2299.8227            -nan     0.0100   -0.6351
##    500     2231.0603            -nan     0.0100   -2.6285
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180427.4344            -nan     0.0100 3349.4116
##      2   176986.6872            -nan     0.0100 2833.3262
##      3   173690.1140            -nan     0.0100 2710.3206
##      4   170457.3239            -nan     0.0100 2592.9440
##      5   167370.5996            -nan     0.0100 2656.0473
##      6   164296.2313            -nan     0.0100 3156.6567
##      7   161315.3381            -nan     0.0100 3011.3885
##      8   158299.9158            -nan     0.0100 3204.5312
##      9   155419.2735            -nan     0.0100 2648.6476
##     10   152610.0029            -nan     0.0100 2855.0519
##     20   126707.9898            -nan     0.0100 2441.7567
##     40    87932.8138            -nan     0.0100 1586.4756
##     60    61724.2314            -nan     0.0100  992.8255
##     80    43881.5188            -nan     0.0100  601.3610
##    100    31575.2843            -nan     0.0100  576.8949
##    120    23232.8999            -nan     0.0100  273.2499
##    140    17495.0874            -nan     0.0100  217.4653
##    160    13372.0214            -nan     0.0100  161.1615
##    180    10392.3765            -nan     0.0100  112.9783
##    200     8387.0940            -nan     0.0100   83.5188
##    220     6891.4407            -nan     0.0100   52.7940
##    240     5871.0891            -nan     0.0100   27.3906
##    260     5082.6692            -nan     0.0100   25.2838
##    280     4565.4086            -nan     0.0100   10.2740
##    300     4149.9939            -nan     0.0100    5.3932
##    320     3868.3955            -nan     0.0100    4.8904
##    340     3614.2791            -nan     0.0100    0.8740
##    360     3387.8490            -nan     0.0100    4.4917
##    380     3241.6633            -nan     0.0100   -3.8277
##    400     3089.2513            -nan     0.0100   -2.9099
##    420     2969.7569            -nan     0.0100    0.5733
##    440     2867.9550            -nan     0.0100   -1.8894
##    460     2763.0996            -nan     0.0100   -4.2643
##    480     2656.0868            -nan     0.0100   -5.3459
##    500     2572.8924            -nan     0.0100   -1.6244
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   182994.6102            -nan     0.0100 3242.4034
##      2   179809.5704            -nan     0.0100 3350.2444
##      3   176408.6821            -nan     0.0100 3346.2534
##      4   173224.6194            -nan     0.0100 3593.5816
##      5   170079.3857            -nan     0.0100 3649.6286
##      6   167046.6660            -nan     0.0100 2777.8348
##      7   163949.1293            -nan     0.0100 3228.1778
##      8   161108.1597            -nan     0.0100 2865.6246
##      9   158138.8627            -nan     0.0100 3057.2755
##     10   155333.5363            -nan     0.0100 2618.9342
##     20   129042.1163            -nan     0.0100 2280.3632
##     40    90101.0813            -nan     0.0100 1500.8083
##     60    63522.2098            -nan     0.0100 1116.3479
##     80    45311.9358            -nan     0.0100  603.7064
##    100    32836.4534            -nan     0.0100  474.8936
##    120    24241.7600            -nan     0.0100  362.1998
##    140    18165.6681            -nan     0.0100  246.8387
##    160    13883.6339            -nan     0.0100  175.2391
##    180    10939.1249            -nan     0.0100  113.0845
##    200     8829.5713            -nan     0.0100   84.0874
##    220     7394.7012            -nan     0.0100   61.1350
##    240     6279.6483            -nan     0.0100   17.7947
##    260     5443.0124            -nan     0.0100   23.3477
##    280     4840.9230            -nan     0.0100   19.4786
##    300     4423.7960            -nan     0.0100    8.4413
##    320     4099.1755            -nan     0.0100    3.2354
##    340     3836.2906            -nan     0.0100   -1.7482
##    360     3593.2324            -nan     0.0100    1.3882
##    380     3431.2936            -nan     0.0100   -2.8528
##    400     3279.1931            -nan     0.0100    3.3129
##    420     3151.5336            -nan     0.0100   -0.7165
##    440     3025.6396            -nan     0.0100   -3.4522
##    460     2909.5420            -nan     0.0100   -3.9018
##    480     2808.1866            -nan     0.0100   -5.4572
##    500     2715.8593            -nan     0.0100   -3.1184
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180257.5064            -nan     0.0100 3848.6552
##      2   176904.6715            -nan     0.0100 3197.9544
##      3   173672.6746            -nan     0.0100 3132.2871
##      4   170405.5657            -nan     0.0100 2824.8469
##      5   167213.6228            -nan     0.0100 3008.2092
##      6   164128.0946            -nan     0.0100 3055.4635
##      7   161052.5260            -nan     0.0100 3068.8319
##      8   158005.7062            -nan     0.0100 2843.9057
##      9   155252.8921            -nan     0.0100 2823.8071
##     10   152289.7268            -nan     0.0100 2697.2809
##     20   126967.5817            -nan     0.0100 2356.9609
##     40    88223.3660            -nan     0.0100 1672.3634
##     60    61632.9052            -nan     0.0100 1195.3011
##     80    43400.1421            -nan     0.0100  729.6176
##    100    31001.2361            -nan     0.0100  417.5663
##    120    22704.3522            -nan     0.0100  321.1080
##    140    16883.5510            -nan     0.0100  215.7166
##    160    12842.4912            -nan     0.0100  145.8655
##    180     9989.9525            -nan     0.0100   96.2549
##    200     7992.9759            -nan     0.0100   77.6544
##    220     6669.0326            -nan     0.0100   50.9184
##    240     5687.0128            -nan     0.0100   27.4601
##    260     4934.5339            -nan     0.0100   22.4137
##    280     4406.7040            -nan     0.0100    7.6819
##    300     4016.2177            -nan     0.0100    5.3613
##    320     3735.6146            -nan     0.0100   10.8004
##    340     3516.3358            -nan     0.0100    0.9274
##    360     3311.2825            -nan     0.0100    2.7866
##    380     3137.9076            -nan     0.0100   -7.6009
##    400     2997.6086            -nan     0.0100   -1.9281
##    420     2858.4642            -nan     0.0100   -2.9289
##    440     2755.0744            -nan     0.0100   -0.2170
##    460     2645.7761            -nan     0.0100   -0.4552
##    480     2562.4022            -nan     0.0100   -6.0316
##    500     2476.4244            -nan     0.0100    0.3883
model2.2 <- train(X[train, ], Y[train], method = "blackboost", trControl = myControl)
model3.2 <- train(X[train, ], Y[train], method = "parRF", trControl = myControl)
model4.2 <- train(X[train, ], Y[train], method = "mlpWeightDecay", trControl = myControl, 
    trace = FALSE)
model5.2 <- train(X[train, ], Y[train], method = "ppr", trControl = myControl)
model6.2 <- train(X[train, ], Y[train], method = "earth", trControl = myControl)
model7.2 <- train(X[train, ], Y[train], method = "glm", trControl = myControl)
model8.2 <- train(X[train, ], Y[train], method = "svmRadial", trControl = myControl)
model9.2 <- train(X[train, ], Y[train], method = "gam", trControl = myControl)
model10.2 <- train(X[train, ], Y[train], method = "glmnet", trControl = myControl)

# Make a list of all the models
all.models.2 <- list(model1.2, model2.2, model3.2, model4.2, model5.2, model6.2, 
    model7.2, model8.2, model9.2, model10.2)
names(all.models.2) <- sapply(all.models.2, function(x) x$method)
sort(sapply(all.models.2, function(x) min(x$results$RMSE)))
##          earth          parRF            gbm     blackboost            ppr 
##          78.60          79.64          81.88          93.53          95.11 
##            gam         glmnet            glm      svmRadial mlpWeightDecay 
##         105.75         118.37         121.31         132.48         676.21

# Make a greedy ensemble - currently can only use RMSE
greedy2 <- caretEnsemble(all.models.2, iter = 1000L)
sort(greedy2$weights, decreasing = TRUE)
##     earth       ppr     parRF       gbm svmRadial 
##     0.323     0.301     0.257     0.109     0.010
greedy2$error
## RMSE 
##   NA

# Make a linear regression ensemble
linear2 <- caretStack(all.models.2, method = "glm", trControl = trainControl(method = "cv"))
summary(linear2$ens_model$finalModel)
## 
## Call:
## NULL
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -214.16   -31.14     1.58    25.85   260.88  
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    -32.28652   45.14171   -0.72  0.47557    
## gbm              0.08825    0.19395    0.45  0.64977    
## blackboost      -0.20125    0.14720   -1.37  0.17360    
## parRF            0.60243    0.15753    3.82  0.00019 ***
## mlpWeightDecay  -0.00685    0.00473   -1.45  0.15005    
## ppr              0.06816    0.07032    0.97  0.33391    
## earth            0.43423    0.08662    5.01  1.5e-06 ***
## glm              0.19262    0.32767    0.59  0.55750    
## svmRadial        0.05455    0.05760    0.95  0.34510    
## gam             -0.00750    0.05187   -0.14  0.88520    
## glmnet          -0.21545    0.34160   -0.63  0.52918    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 3420)
## 
##     Null deviance: 28979141  on 162  degrees of freedom
## Residual deviance:   519826  on 152  degrees of freedom
##   (68 observations deleted due to missingness)
## AIC: 1802
## 
## Number of Fisher Scoring iterations: 2
linear2$error
##   parameter  RMSE Rsquared RMSESD RsquaredSD
## 1      none 64.76   0.9729  26.17    0.02657

# Predict for test set:
preds2 <- data.frame(sapply(all.models.2, predict, newdata = X[!train, ]))
preds2$ENS_greedy <- predict(greedy2, newdata = X[!train, ])
preds2$ENS_linear <- predict(linear2, newdata = X[!train, ])
sort(sqrt(colMeans((preds2 - Y[!train])^2)))
##     ENS_greedy     ENS_linear          earth          parRF            gbm 
##          56.03          58.19          79.14          81.10          87.65 
##            ppr     blackboost            glm         glmnet            gam 
##          93.80         100.94         114.86         115.35         139.70 
##      svmRadial mlpWeightDecay 
##         147.07         582.76

Now we can test the paper's second proposal for continuous range: Just as a remainder those values are:

#
require(xtable)
print(xtable(bi[, 1:7]), "html")
Element From To ContFrom_1 ContTo_1 ContFrom_2 ContTo_2
1 Pa1 8461 8474 8474 8484 8563 8577
2 Ca1 8484 8513 8474 8484 8563 8577
3 Ca2 8522 8562 8474 8484 8563 8577
4 Pa2 8577 8619 8563 8577 8619 8642
5 Ca3 8642 8682 8619 8642 8700 8725
6 Pa3 8730 8772 8700 8725 8776 8792
7 Mg 8802 8811 8776 8792 8815 8850
8 Pa4 8850 8890 8815 8850 8890 8900
9 Pa5 9000 9030 8983 8998 9040 9050
#
lgth <- 3.6
org <- 8461 - lgth
signal3 <- paste(round((bi[1:8, 2] - org)/lgth), round((bi[1:8, 3] - org)/lgth), 
    sep = ":")
noise3 <- paste(round((bi[1:8, 6] - org)/lgth), round((bi[1:8, 7] - org)/lgth), 
    sep = ":")
sn3 <- cbind(signal3, noise3)
xx3 <- apply(sn3, 1, feature_extr, bp_clean)
colnames(xx3) <- as.character(sn3[, 1])
xx3 <- cbind(xx3, unlist(lapply(bp_clean, function(x) {
    return(x$stellarp[1])
})))
colnames(xx3)[9] <- "T"

Now we perform the regression analysis

Regression analysis against features defined by the paper

# Data
xx3 <- as.data.frame(xx3)
X <- xx3[, -9]
rownames(X) <- 1:nrow(X)
X <- data.frame(X)
Y <- xx3$T

# Train some models
model1.3 <- train(X[train, ], Y[train], method = "gbm", trControl = myControl, 
    tuneGrid = expand.grid(.n.trees = 500, .interaction.depth = 15, .shrinkage = 0.01))
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   179553.4388            -nan     0.0100 3120.0824
##      2   176296.7525            -nan     0.0100 3178.0412
##      3   173360.4593            -nan     0.0100 2505.5101
##      4   170376.1185            -nan     0.0100 2950.7233
##      5   167396.8188            -nan     0.0100 2782.1099
##      6   164494.4807            -nan     0.0100 2598.3687
##      7   161623.3715            -nan     0.0100 2915.4160
##      8   158832.6523            -nan     0.0100 2102.7270
##      9   156156.8783            -nan     0.0100 2532.9456
##     10   153572.0233            -nan     0.0100 2660.8061
##     20   129669.1651            -nan     0.0100 2147.3235
##     40    93214.4836            -nan     0.0100 1249.5984
##     60    68267.8796            -nan     0.0100  833.4305
##     80    50480.0172            -nan     0.0100  858.2302
##    100    38044.9780            -nan     0.0100  566.4014
##    120    29655.6519            -nan     0.0100  339.1302
##    140    23453.5040            -nan     0.0100  267.2947
##    160    18985.8300            -nan     0.0100  143.7085
##    180    15673.1295            -nan     0.0100   68.1079
##    200    13462.8134            -nan     0.0100   88.3344
##    220    11739.5052            -nan     0.0100   62.2357
##    240    10476.7398            -nan     0.0100    8.3373
##    260     9543.0681            -nan     0.0100   32.8244
##    280     8733.2852            -nan     0.0100   31.1274
##    300     8115.7770            -nan     0.0100   20.0176
##    320     7581.3384            -nan     0.0100   -2.9581
##    340     7158.6815            -nan     0.0100    6.9979
##    360     6784.4167            -nan     0.0100    4.9425
##    380     6404.5592            -nan     0.0100   -4.8293
##    400     6094.6405            -nan     0.0100   -4.2400
##    420     5813.5062            -nan     0.0100   -6.2604
##    440     5558.6149            -nan     0.0100   -2.5751
##    460     5309.0660            -nan     0.0100    5.1211
##    480     5092.8062            -nan     0.0100   -3.1038
##    500     4911.7362            -nan     0.0100   -7.2865
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   181159.6053            -nan     0.0100 2697.1425
##      2   178190.8551            -nan     0.0100 2903.5099
##      3   175194.0142            -nan     0.0100 2700.4493
##      4   172040.7059            -nan     0.0100 3182.8751
##      5   169164.7946            -nan     0.0100 2692.1850
##      6   166240.9690            -nan     0.0100 2992.6615
##      7   163415.0238            -nan     0.0100 2890.8930
##      8   160585.3702            -nan     0.0100 2304.8914
##      9   157828.0112            -nan     0.0100 2603.8594
##     10   155244.8313            -nan     0.0100 2638.6725
##     20   130718.0551            -nan     0.0100 2635.5667
##     40    94149.6585            -nan     0.0100 1486.4234
##     60    68885.4834            -nan     0.0100  846.8659
##     80    51302.0119            -nan     0.0100  741.6112
##    100    38655.9033            -nan     0.0100  417.8098
##    120    30070.4286            -nan     0.0100  299.7750
##    140    23768.7990            -nan     0.0100  219.5311
##    160    19415.5906            -nan     0.0100  205.1879
##    180    16304.7095            -nan     0.0100   62.9929
##    200    13983.5883            -nan     0.0100   40.1724
##    220    12197.2474            -nan     0.0100   51.4589
##    240    10816.4725            -nan     0.0100   48.6945
##    260     9875.7445            -nan     0.0100   13.6797
##    280     9110.5908            -nan     0.0100   17.5382
##    300     8498.7947            -nan     0.0100    3.9134
##    320     8011.1351            -nan     0.0100   -4.8225
##    340     7556.7807            -nan     0.0100   -9.1562
##    360     7161.5558            -nan     0.0100   -3.6279
##    380     6799.8243            -nan     0.0100    4.9723
##    400     6475.5271            -nan     0.0100    7.6944
##    420     6207.7343            -nan     0.0100    5.8952
##    440     5916.0974            -nan     0.0100   -0.7747
##    460     5671.2264            -nan     0.0100    0.3785
##    480     5450.3727            -nan     0.0100    0.2397
##    500     5244.6395            -nan     0.0100    4.4868
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   181821.3942            -nan     0.0100 2926.0235
##      2   178592.3760            -nan     0.0100 3045.7445
##      3   175737.0706            -nan     0.0100 2666.4230
##      4   172762.0008            -nan     0.0100 2890.2504
##      5   169811.6367            -nan     0.0100 3008.5229
##      6   166811.4282            -nan     0.0100 2585.6101
##      7   164152.1885            -nan     0.0100 2489.0439
##      8   161420.5751            -nan     0.0100 2851.0169
##      9   158764.9832            -nan     0.0100 2265.1858
##     10   156126.5403            -nan     0.0100 2015.4446
##     20   131100.4536            -nan     0.0100 2411.4176
##     40    94229.2479            -nan     0.0100 1478.6046
##     60    68975.4334            -nan     0.0100 1006.8055
##     80    51300.9561            -nan     0.0100  820.5546
##    100    39062.2720            -nan     0.0100  398.8423
##    120    30380.8853            -nan     0.0100  305.2962
##    140    23881.6953            -nan     0.0100  219.9196
##    160    19419.8758            -nan     0.0100  134.3542
##    180    16217.8324            -nan     0.0100  101.6273
##    200    13704.2553            -nan     0.0100   95.6188
##    220    11776.2124            -nan     0.0100   72.9186
##    240    10429.9229            -nan     0.0100   54.1692
##    260     9499.6673            -nan     0.0100   10.8964
##    280     8767.7401            -nan     0.0100   13.0734
##    300     8118.0581            -nan     0.0100    8.2191
##    320     7568.7719            -nan     0.0100  -16.4334
##    340     7145.6107            -nan     0.0100   -0.7293
##    360     6772.4021            -nan     0.0100    4.9470
##    380     6451.3270            -nan     0.0100    0.2992
##    400     6120.4377            -nan     0.0100   -4.5562
##    420     5820.0028            -nan     0.0100    2.9232
##    440     5586.2170            -nan     0.0100   -0.7270
##    460     5345.2089            -nan     0.0100   -0.2427
##    480     5145.5977            -nan     0.0100   -8.3337
##    500     4931.0147            -nan     0.0100   -4.4611
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   189174.8002            -nan     0.0100 3216.9886
##      2   185693.5350            -nan     0.0100 2966.3445
##      3   182357.3235            -nan     0.0100 3156.9501
##      4   179208.8382            -nan     0.0100 2777.8253
##      5   176052.1388            -nan     0.0100 2847.9926
##      6   173115.4364            -nan     0.0100 2712.6579
##      7   170201.0658            -nan     0.0100 2563.3259
##      8   167224.9930            -nan     0.0100 2869.2581
##      9   164374.4992            -nan     0.0100 2660.4375
##     10   161753.4944            -nan     0.0100 2829.7469
##     20   136159.5714            -nan     0.0100 1949.9695
##     40    98242.7687            -nan     0.0100 1461.3565
##     60    71226.5600            -nan     0.0100  954.2828
##     80    52816.1595            -nan     0.0100  725.7782
##    100    39768.7302            -nan     0.0100  408.5507
##    120    30788.9268            -nan     0.0100  248.4782
##    140    24237.4412            -nan     0.0100  203.1258
##    160    19733.7080            -nan     0.0100  184.1072
##    180    16426.4071            -nan     0.0100   90.4322
##    200    13932.8129            -nan     0.0100   85.8738
##    220    12190.3485            -nan     0.0100   41.5246
##    240    10776.3278            -nan     0.0100   43.1579
##    260     9714.3863            -nan     0.0100   26.6153
##    280     8887.4986            -nan     0.0100   24.1191
##    300     8243.4753            -nan     0.0100   10.5448
##    320     7658.4910            -nan     0.0100  -11.3195
##    340     7170.5710            -nan     0.0100    9.7543
##    360     6774.6438            -nan     0.0100    6.4386
##    380     6417.6120            -nan     0.0100    6.4583
##    400     6073.0570            -nan     0.0100   -8.6195
##    420     5771.0557            -nan     0.0100    0.5669
##    440     5506.4715            -nan     0.0100   -7.6647
##    460     5270.5700            -nan     0.0100   -2.2765
##    480     5051.7775            -nan     0.0100   -6.3446
##    500     4810.0987            -nan     0.0100   -3.1188
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   173348.2971            -nan     0.0100 2661.3908
##      2   170361.2770            -nan     0.0100 3051.6761
##      3   167465.0904            -nan     0.0100 2336.1070
##      4   164578.2054            -nan     0.0100 2462.4567
##      5   161661.0524            -nan     0.0100 2721.2608
##      6   158920.7851            -nan     0.0100 2675.8822
##      7   156169.4594            -nan     0.0100 2432.9702
##      8   153745.3018            -nan     0.0100 2286.1872
##      9   151158.6240            -nan     0.0100 2428.2110
##     10   148781.5477            -nan     0.0100 2449.7308
##     20   126232.2631            -nan     0.0100 1427.9496
##     40    91033.1934            -nan     0.0100 1289.1133
##     60    66846.9842            -nan     0.0100  921.6301
##     80    49830.6807            -nan     0.0100  667.8274
##    100    38115.3475            -nan     0.0100  479.1498
##    120    29632.8027            -nan     0.0100  297.9203
##    140    23530.5192            -nan     0.0100  316.5664
##    160    19177.9210            -nan     0.0100  167.9565
##    180    16044.4609            -nan     0.0100   46.1325
##    200    13742.6207            -nan     0.0100   73.2805
##    220    12138.0033            -nan     0.0100   33.3675
##    240    10884.0312            -nan     0.0100   19.1516
##    260     9800.4605            -nan     0.0100   20.6344
##    280     8975.2848            -nan     0.0100   17.6368
##    300     8327.1424            -nan     0.0100   -2.7372
##    320     7811.8899            -nan     0.0100   -0.7450
##    340     7348.8863            -nan     0.0100   10.9613
##    360     6955.6290            -nan     0.0100    1.7563
##    380     6632.9219            -nan     0.0100    0.3308
##    400     6327.1114            -nan     0.0100    7.5463
##    420     6052.7592            -nan     0.0100  -10.3489
##    440     5789.6616            -nan     0.0100    1.6533
##    460     5543.1423            -nan     0.0100    0.9619
##    480     5303.4802            -nan     0.0100    0.3681
##    500     5075.0055            -nan     0.0100    4.6775
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   179464.3274            -nan     0.0100 2990.9891
##      2   176432.4479            -nan     0.0100 2911.0726
##      3   173476.3697            -nan     0.0100 2763.9240
##      4   170564.9533            -nan     0.0100 2350.3365
##      5   167588.1515            -nan     0.0100 2670.9370
##      6   164885.8727            -nan     0.0100 2309.5498
##      7   162017.4513            -nan     0.0100 2813.2594
##      8   159236.3176            -nan     0.0100 2520.7941
##      9   156551.7396            -nan     0.0100 2507.0828
##     10   153962.6667            -nan     0.0100 2665.6884
##     20   130232.9713            -nan     0.0100 2135.3848
##     40    93392.3707            -nan     0.0100 1629.9472
##     60    67701.9216            -nan     0.0100 1259.9661
##     80    50158.9376            -nan     0.0100  671.2623
##    100    38143.7485            -nan     0.0100  281.6296
##    120    29593.9609            -nan     0.0100  306.8295
##    140    23476.4078            -nan     0.0100  150.6977
##    160    19086.2217            -nan     0.0100  100.5396
##    180    15972.8190            -nan     0.0100  153.5651
##    200    13622.3428            -nan     0.0100  117.6383
##    220    11823.5070            -nan     0.0100   51.9921
##    240    10559.7922            -nan     0.0100   47.9796
##    260     9674.4294            -nan     0.0100   22.8672
##    280     8907.3108            -nan     0.0100   11.0651
##    300     8282.6550            -nan     0.0100    8.6807
##    320     7741.4000            -nan     0.0100   -1.9956
##    340     7334.2223            -nan     0.0100   -0.8892
##    360     6911.4596            -nan     0.0100    4.4541
##    380     6556.0771            -nan     0.0100   -7.4334
##    400     6275.0297            -nan     0.0100    2.0255
##    420     6027.5460            -nan     0.0100    7.2564
##    440     5774.6139            -nan     0.0100   -5.1181
##    460     5538.5293            -nan     0.0100   -9.1742
##    480     5318.9001            -nan     0.0100    1.7298
##    500     5120.3286            -nan     0.0100   -4.2861
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   182944.6521            -nan     0.0100 2663.6856
##      2   179839.0382            -nan     0.0100 2897.9382
##      3   176636.5913            -nan     0.0100 3116.2393
##      4   173520.4688            -nan     0.0100 3105.7048
##      5   170509.1500            -nan     0.0100 2835.0153
##      6   167531.5830            -nan     0.0100 2451.2473
##      7   165021.5841            -nan     0.0100 2723.1534
##      8   162217.5466            -nan     0.0100 2861.6244
##      9   159360.3406            -nan     0.0100 2808.6032
##     10   156695.9520            -nan     0.0100 2611.0638
##     20   131666.2341            -nan     0.0100 2331.6573
##     40    94568.1869            -nan     0.0100 1539.9169
##     60    69235.8356            -nan     0.0100 1023.9897
##     80    51603.0507            -nan     0.0100  793.3382
##    100    38909.6630            -nan     0.0100  582.2489
##    120    29874.5573            -nan     0.0100  338.0921
##    140    23362.2798            -nan     0.0100  206.0839
##    160    18825.3823            -nan     0.0100  137.9662
##    180    15779.3565            -nan     0.0100  124.2654
##    200    13367.6495            -nan     0.0100   73.1646
##    220    11732.3102            -nan     0.0100   53.8478
##    240    10352.3316            -nan     0.0100   49.2639
##    260     9413.1629            -nan     0.0100   -3.4545
##    280     8621.8824            -nan     0.0100   17.9617
##    300     7990.1349            -nan     0.0100   10.5897
##    320     7514.7126            -nan     0.0100    8.6136
##    340     7046.3681            -nan     0.0100   -2.3397
##    360     6685.9784            -nan     0.0100   -8.9885
##    380     6361.6851            -nan     0.0100   -6.5969
##    400     6049.9531            -nan     0.0100   -4.7640
##    420     5758.6155            -nan     0.0100    3.3166
##    440     5511.3951            -nan     0.0100   -3.2634
##    460     5271.8677            -nan     0.0100   -4.6541
##    480     5074.9073            -nan     0.0100   -6.4858
##    500     4873.4827            -nan     0.0100   -6.2905
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   174571.6570            -nan     0.0100 3739.6418
##      2   171408.0983            -nan     0.0100 2996.8617
##      3   168390.0128            -nan     0.0100 2980.1560
##      4   165443.1848            -nan     0.0100 2809.8300
##      5   162619.9317            -nan     0.0100 2317.0174
##      6   159736.8843            -nan     0.0100 2509.2836
##      7   156901.9531            -nan     0.0100 2082.2842
##      8   154249.1444            -nan     0.0100 2454.0358
##      9   151491.7831            -nan     0.0100 2856.7322
##     10   148754.2603            -nan     0.0100 2676.2537
##     20   125166.9395            -nan     0.0100 2314.0078
##     40    89777.4652            -nan     0.0100 1388.1739
##     60    65071.2199            -nan     0.0100  918.3009
##     80    47849.8151            -nan     0.0100  646.3617
##    100    36016.3949            -nan     0.0100  524.5612
##    120    27638.2827            -nan     0.0100  340.1791
##    140    21711.0391            -nan     0.0100  186.8867
##    160    17483.1606            -nan     0.0100  165.9178
##    180    14453.5795            -nan     0.0100   74.8396
##    200    12212.1732            -nan     0.0100   83.5402
##    220    10565.2849            -nan     0.0100   32.2927
##    240     9363.4566            -nan     0.0100   39.1590
##    260     8386.1887            -nan     0.0100    6.7193
##    280     7595.0239            -nan     0.0100   28.8285
##    300     7042.8362            -nan     0.0100   11.7681
##    320     6581.9881            -nan     0.0100    0.4713
##    340     6154.8059            -nan     0.0100    4.7919
##    360     5753.2791            -nan     0.0100   -0.8824
##    380     5446.0427            -nan     0.0100    1.6062
##    400     5184.9071            -nan     0.0100    1.3536
##    420     4917.9646            -nan     0.0100   -0.8411
##    440     4670.8887            -nan     0.0100  -12.4186
##    460     4474.0091            -nan     0.0100   -5.7495
##    480     4278.8917            -nan     0.0100   -1.7501
##    500     4078.5888            -nan     0.0100   10.1417
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180486.3821            -nan     0.0100 3230.5074
##      2   177376.7592            -nan     0.0100 3329.0746
##      3   174250.3234            -nan     0.0100 2720.8124
##      4   171306.8817            -nan     0.0100 2980.4818
##      5   168341.0558            -nan     0.0100 3086.4656
##      6   165374.8082            -nan     0.0100 2923.9024
##      7   162354.6463            -nan     0.0100 3075.6636
##      8   159555.4008            -nan     0.0100 2675.7649
##      9   156854.9780            -nan     0.0100 2769.6226
##     10   154141.4810            -nan     0.0100 2677.3966
##     20   129859.1526            -nan     0.0100 1821.8383
##     40    92657.9243            -nan     0.0100 1481.9376
##     60    67221.8760            -nan     0.0100  802.0616
##     80    49831.3991            -nan     0.0100  537.5021
##    100    37772.5314            -nan     0.0100  514.9675
##    120    29225.8339            -nan     0.0100  338.6568
##    140    23049.0155            -nan     0.0100  251.3541
##    160    18698.1493            -nan     0.0100  142.1868
##    180    15517.0902            -nan     0.0100   84.0891
##    200    13236.9634            -nan     0.0100   65.4599
##    220    11557.5833            -nan     0.0100   48.5192
##    240    10287.9083            -nan     0.0100   35.0787
##    260     9402.9223            -nan     0.0100   30.0504
##    280     8672.4708            -nan     0.0100   19.2736
##    300     8104.2433            -nan     0.0100   13.9249
##    320     7647.6906            -nan     0.0100   -1.2660
##    340     7238.2897            -nan     0.0100    0.4483
##    360     6905.1524            -nan     0.0100   -5.4018
##    380     6600.4498            -nan     0.0100   -8.7176
##    400     6354.4613            -nan     0.0100  -17.4212
##    420     6082.9552            -nan     0.0100   -3.5187
##    440     5878.9046            -nan     0.0100   -7.3759
##    460     5641.6498            -nan     0.0100   -7.9061
##    480     5459.1956            -nan     0.0100   -7.0993
##    500     5307.7969            -nan     0.0100   -2.4281
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   183097.7060            -nan     0.0100 2992.3039
##      2   179799.4866            -nan     0.0100 3512.6343
##      3   176702.4137            -nan     0.0100 2934.9394
##      4   173589.0781            -nan     0.0100 2517.4386
##      5   170528.2518            -nan     0.0100 2743.7904
##      6   167449.2999            -nan     0.0100 2911.1442
##      7   164674.6220            -nan     0.0100 2944.2949
##      8   161823.8260            -nan     0.0100 2724.1059
##      9   159106.7200            -nan     0.0100 2648.8798
##     10   156327.2170            -nan     0.0100 2633.4134
##     20   132059.0279            -nan     0.0100 2472.6651
##     40    94692.7162            -nan     0.0100 1384.5564
##     60    68855.4914            -nan     0.0100 1003.7434
##     80    50732.9635            -nan     0.0100  573.5248
##    100    38273.0692            -nan     0.0100  422.8424
##    120    29456.4477            -nan     0.0100  334.2562
##    140    23261.5185            -nan     0.0100  241.5035
##    160    18982.9453            -nan     0.0100  152.8731
##    180    15888.2525            -nan     0.0100   63.2450
##    200    13488.6470            -nan     0.0100   90.7306
##    220    11863.6517            -nan     0.0100   62.1583
##    240    10615.8791            -nan     0.0100   12.5641
##    260     9624.1331            -nan     0.0100   12.7326
##    280     8827.4188            -nan     0.0100   12.9125
##    300     8219.0158            -nan     0.0100    3.0346
##    320     7692.5359            -nan     0.0100    8.5956
##    340     7184.4181            -nan     0.0100   16.7223
##    360     6785.7178            -nan     0.0100    3.6590
##    380     6476.2992            -nan     0.0100    2.9719
##    400     6142.1059            -nan     0.0100   -4.2732
##    420     5867.6741            -nan     0.0100   -4.2531
##    440     5636.4574            -nan     0.0100   -7.0563
##    460     5393.9419            -nan     0.0100  -16.3335
##    480     5169.8712            -nan     0.0100   -8.5764
##    500     4989.2899            -nan     0.0100   -3.3780
## Iter   TrainDeviance   ValidDeviance   StepSize   Improve
##      1   180596.1822            -nan     0.0100 3008.4185
##      2   177528.7417            -nan     0.0100 2924.7594
##      3   174488.7467            -nan     0.0100 2600.8216
##      4   171534.8314            -nan     0.0100 2941.7967
##      5   168639.2947            -nan     0.0100 3087.1306
##      6   165673.8623            -nan     0.0100 2575.4387
##      7   162891.3991            -nan     0.0100 2692.2450
##      8   160048.0507            -nan     0.0100 2761.3750
##      9   157381.5226            -nan     0.0100 2612.9546
##     10   154737.6153            -nan     0.0100 2123.2156
##     20   130058.3807            -nan     0.0100 1937.3801
##     40    93296.3414            -nan     0.0100 1732.8554
##     60    67609.9037            -nan     0.0100 1127.0017
##     80    49848.5760            -nan     0.0100  727.1784
##    100    37759.6758            -nan     0.0100  406.2785
##    120    29029.9526            -nan     0.0100  329.7076
##    140    22637.0263            -nan     0.0100  240.6013
##    160    18434.6890            -nan     0.0100   99.8279
##    180    15141.5248            -nan     0.0100   92.7513
##    200    12871.0519            -nan     0.0100   77.7678
##    220    11245.2026            -nan     0.0100   52.5604
##    240     9985.2714            -nan     0.0100   42.6621
##    260     9017.9758            -nan     0.0100   26.8540
##    280     8234.8059            -nan     0.0100    4.0552
##    300     7653.9035            -nan     0.0100   11.6780
##    320     7180.4321            -nan     0.0100    6.0730
##    340     6765.1337            -nan     0.0100    0.6889
##    360     6376.3614            -nan     0.0100   -2.8761
##    380     6074.7233            -nan     0.0100   -3.6191
##    400     5795.6989            -nan     0.0100   -7.8345
##    420     5556.2666            -nan     0.0100   -5.1912
##    440     5295.1376            -nan     0.0100  -11.4274
##    460     5055.0945            -nan     0.0100  -15.4156
##    480     4842.3959            -nan     0.0100   -0.7406
##    500     4673.1977            -nan     0.0100    2.1055
model2.3 <- train(X[train, ], Y[train], method = "blackboost", trControl = myControl)
model3.3 <- train(X[train, ], Y[train], method = "parRF", trControl = myControl)
model4.3 <- train(X[train, ], Y[train], method = "mlpWeightDecay", trControl = myControl, 
    trace = FALSE)
model5.3 <- train(X[train, ], Y[train], method = "ppr", trControl = myControl)
model6.3 <- train(X[train, ], Y[train], method = "earth", trControl = myControl)
model7.3 <- train(X[train, ], Y[train], method = "glm", trControl = myControl)
model8.3 <- train(X[train, ], Y[train], method = "svmRadial", trControl = myControl)
model9.3 <- train(X[train, ], Y[train], method = "gam", trControl = myControl)
model10.3 <- train(X[train, ], Y[train], method = "glmnet", trControl = myControl)

# Make a list of all the models
all.models.3 <- list(model1.3, model2.3, model3.3, model4.3, model5.3, model6.3, 
    model7.3, model8.3, model9.3, model10.3)
names(all.models.3) <- sapply(all.models.3, function(x) x$method)
sort(sapply(all.models.3, function(x) min(x$results$RMSE)))
##            ppr          parRF            gbm      svmRadial          earth 
##          86.98         103.78         112.06         121.49         127.93 
##     blackboost         glmnet            glm            gam mlpWeightDecay 
##         131.64         138.68         139.24         335.74         464.92

# Make a greedy ensemble - currently can only use RMSE
greedy3 <- caretEnsemble(all.models.3, iter = 1000L)
sort(greedy3$weights, decreasing = TRUE)
##       ppr     parRF svmRadial     earth       gam 
##     0.611     0.159     0.139     0.084     0.007
greedy2$error
## RMSE 
##   NA

# Make a linear regression ensemble
linear3 <- caretStack(all.models.3, method = "glm", trControl = trainControl(method = "cv"))
summary(linear3$ens_model$finalModel)
## 
## Call:
## NULL
## 
## Deviance Residuals: 
##    Min      1Q  Median      3Q     Max  
## -437.4   -39.5    -1.0    43.4   296.1  
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    -1.19e+02   5.49e+01   -2.17  0.03111 *  
## gbm            -2.02e-01   1.43e-01   -1.41  0.15875    
## blackboost     -9.56e-02   9.59e-02   -1.00  0.32002    
## parRF           5.79e-01   1.54e-01    3.76  0.00022 ***
## mlpWeightDecay  1.21e-02   1.39e-02    0.87  0.38490    
## ppr             6.04e-01   6.84e-02    8.83  3.4e-16 ***
## earth           8.69e-02   5.74e-02    1.51  0.13166    
## glm             1.29e+00   6.75e-01    1.91  0.05736 .  
## svmRadial       1.91e-01   6.03e-02    3.16  0.00179 ** 
## gam             2.16e-03   1.06e-02    0.20  0.83885    
## glmnet         -1.43e+00   6.92e-01   -2.06  0.04015 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 6335)
## 
##     Null deviance: 42463442  on 230  degrees of freedom
## Residual deviance:  1393635  on 220  degrees of freedom
## AIC: 2690
## 
## Number of Fisher Scoring iterations: 2
linear3$error
##   parameter  RMSE Rsquared RMSESD RsquaredSD
## 1      none 84.25   0.9639  23.08    0.02104

# Predict for test set:
preds3 <- data.frame(sapply(all.models.3, predict, newdata = X[!train, ]))
preds3$ENS_greedy <- predict(greedy3, newdata = X[!train, ])
preds3$ENS_linear <- predict(linear3, newdata = X[!train, ])
sort(sqrt(colMeans((preds3 - Y[!train])^2)))
##     ENS_linear     ENS_greedy            gam            ppr            gbm 
##          101.2          105.6          116.3          118.4          135.8 
##          parRF          earth      svmRadial         glmnet            glm 
##          136.2          136.8          137.4          146.4          146.8 
##     blackboost mlpWeightDecay 
##          148.4          601.2