library(caret)
## Loading required package: lattice
## Loading required package: ggplot2
library(e1071)
library(fastICA)
load("~/PED/prepareDataDay/PP_new.RData")
load("~/PED/datasets/dataset_ 14 _prepared.RData")
source('~/functions/normalizationFunction.R', echo=TRUE)
## 
## > normalized <- function(x) {
## +     (x - min(x)) * 0.8/(max(x) - min(x)) + 0.1
## + }
source('~/functions/calculateErrors.R', echo=TRUE)
## 
## > modelErrors <- function(predicted, actual) {
## +     sal <- vector(mode = "numeric", length = 3)
## +     names(sal) <- c("MAE", "RMSE", "RELE")
## +     me .... [TRUNCATED] 
## 
## > modelsErrorsTotal <- 0
## 
## > allModelErrors <- function(models, inputsTest, targetsTest, 
## +     dataset) {
## +     error <- function(model) {
## +         pd <- predict(model, newdat .... [TRUNCATED]

PCA Analysis

inputsTrain_pca<-prcomp(inputsTrain)
plot(inputsTrain_pca)

plot of chunk unnamed-chunk-2

###select the first 5 components one by one####
#####1 component####
inputsTrain_pca$x[,1]->pca1
svm(pca1,targetsTrainReg,gamma=10,cost=0.0001,epsilon=0.0001)->svmFit_pca1
predict(svmFit_pca1,newdata=pca1)->svm_pred_pca_train1
modelErrors(svm_pred_pca_train1,targetsTrainReg)->pca_errors1
######2 components#####
inputsTrain_pca$x[,1:2]->pca2
svm(pca2,targetsTrainReg,gamma=10,cost=0.0001,epsilon=0.0001)->svmFit_pca2
predict(svmFit_pca2,newdata=pca2)->svm_pred_pca_train2
modelErrors(svm_pred_pca_train2,targetsTrainReg)->pca_errors2
######3 components#####
inputsTrain_pca$x[,1:3]->pca3
svm(pca3,targetsTrainReg,gamma=10,cost=0.0001,epsilon=0.0001)->svmFit_pca3
predict(svmFit_pca3,newdata=pca3)->svm_pred_pca_train3
modelErrors(svm_pred_pca_train3,targetsTrainReg)->pca_errors3
######4 components#####
inputsTrain_pca$x[,1:4]->pca4
svm(pca4,targetsTrainReg,gamma=10,cost=0.0001,epsilon=0.0001)->svmFit_pca4
predict(svmFit_pca4,newdata=pca4)->svm_pred_pca_train4
modelErrors(svm_pred_pca_train4,targetsTrainReg)->pca_errors4
######5 components#####
inputsTrain_pca$x[,1:5]->pca5
svm(pca5,targetsTrainReg,gamma=10,cost=0.0001,epsilon=0.0001)->svmFit_pca5
predict(svmFit_pca5,newdata=pca5)->svm_pred_pca_train5
modelErrors(svm_pred_pca_train5,targetsTrainReg)->pca_errors5
rbind(pca_errors1,pca_errors2,pca_errors3,pca_errors4,pca_errors5)->pca_errors

pca_errors
##                 MAE   RMSE   RELE
## pca_errors1 0.09590 0.1220 0.3033
## pca_errors2 0.09590 0.1220 0.3033
## pca_errors3 0.09591 0.1220 0.3033
## pca_errors4 0.09592 0.1221 0.3033
## pca_errors5 0.09592 0.1221 0.3033

ICA

###########one component##########
ica1<- fastICA(inputsTrain, 1, alg.typ = "parallel", fun = "logcosh", alpha = 1,
method = "R", row.norm = FALSE, maxit = 500,
tol = 0.0001, verbose = TRUE)
## Centering
## Whitening
## Symmetric FastICA using logcosh approx. to neg-entropy function
## Iteration 1 tol = 0
icaS1<-ica1$S
svm(icaS1,targetsTrainReg,gamma=1,cost=0.0001,epsilon=0.0001)->svmFit_ica1
predict(svmFit_ica1,newdata=icaS1)->svm_pred_ica_train1
modelErrors(svm_pred_ica_train1,targetsTrainReg)->ica_errors1
############two components##########
ica2<- fastICA(inputsTrain, 2, alg.typ = "parallel", fun = "logcosh", alpha = 1,
method = "R", row.norm = FALSE, maxit = 500,
tol = 0.0001, verbose = TRUE)
## Centering
## Whitening
## Symmetric FastICA using logcosh approx. to neg-entropy function
## Iteration 1 tol = 0.009032
## Iteration 2 tol = 7.484e-07
icaS2<-ica2$S
svm(icaS2,targetsTrainReg,gamma=1,cost=0.0001,epsilon=0.0001)->svmFit_ica2
predict(svmFit_ica2,newdata=icaS2)->svm_pred_ica_train2
modelErrors(svm_pred_ica_train2,targetsTrainReg)->ica_errors2
############three components##########
ica3<- fastICA(inputsTrain, 3, alg.typ = "parallel", fun = "logcosh", alpha = 1,
method = "R", row.norm = FALSE, maxit = 500,
tol = 0.0001, verbose = TRUE)
## Centering
## Whitening
## Symmetric FastICA using logcosh approx. to neg-entropy function
## Iteration 1 tol = 0.1782
## Iteration 2 tol = 0.01246
## Iteration 3 tol = 2.706e-06
icaS3<-ica3$S
svm(icaS3,targetsTrainReg,gamma=1,cost=0.0001,epsilon=0.0001)->svmFit_ica3
predict(svmFit_ica3,newdata=icaS3)->svm_pred_ica_train3
modelErrors(svm_pred_ica_train3,targetsTrainReg)->ica_errors3
############four components##########
ica4<- fastICA(inputsTrain, 4, alg.typ = "parallel", fun = "logcosh", alpha = 1,
method = "R", row.norm = FALSE, maxit = 500,
tol = 0.0001, verbose = TRUE)
## Centering
## Whitening
## Symmetric FastICA using logcosh approx. to neg-entropy function
## Iteration 1 tol = 0.7281
## Iteration 2 tol = 0.2966
## Iteration 3 tol = 0.03471
## Iteration 4 tol = 0.0002377
## Iteration 5 tol = 2.395e-05
icaS4<-ica4$S
svm(icaS4,targetsTrainReg,gamma=1,cost=0.0001,epsilon=0.0001)->svmFit_ica4
predict(svmFit_ica4,newdata=icaS4)->svm_pred_ica_train4
modelErrors(svm_pred_ica_train4,targetsTrainReg)->ica_errors4
############five components##########
ica5<- fastICA(inputsTrain, 5, alg.typ = "parallel", fun = "logcosh", alpha = 1,
method = "R", row.norm = FALSE, maxit = 500,
tol = 0.0001, verbose = TRUE)
## Centering
## Whitening
## Symmetric FastICA using logcosh approx. to neg-entropy function
## Iteration 1 tol = 0.3231
## Iteration 2 tol = 0.09083
## Iteration 3 tol = 0.004361
## Iteration 4 tol = 0.000549
## Iteration 5 tol = 3.061e-05
icaS5<-ica5$S
svm(icaS5,targetsTrainReg,gamma=1,cost=0.0001,epsilon=0.0001)->svmFit_ica5
predict(svmFit_ica5,newdata=icaS5)->svm_pred_ica_train5
modelErrors(svm_pred_ica_train5,targetsTrainReg)->ica_errors5
ica_errors<-rbind(ica_errors1,ica_errors2,ica_errors3,ica_errors4,ica_errors5)
ica_errors
##                 MAE   RMSE   RELE
## ica_errors1 0.09592 0.1221 0.3032
## ica_errors2 0.09581 0.1219 0.3034
## ica_errors3 0.09572 0.1218 0.3029
## ica_errors4 0.09582 0.1219 0.3031
## ica_errors5 0.09586 0.1220 0.3032