
рд╣рд╛рдп, рд╣рдмреНрд░реЛрдЬрд╝рд┐рддреЗрд▓реА! "рдкреНрд░реИрдХреНрдЯрд┐рдХреНрдЯрд┐рд╡ рдореЙрдбрд▓рд┐рдВрдЧ рдЗрди рдкреНрд░реИрдХреНрдЯрд┐рд╕" рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЗ рд╕рднреА рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдбреЗрдЯрд╛ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ, рдбреЗрдЯрд╛ рд╡рд┐рднрд╛рдЬрди рдФрд░ рдореЙрдбрд▓ рдЯреНрдпреВрдирд┐рдВрдЧ рдХреЗ рдореВрд▓ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдкреНрд░рдореБрдЦ рдЪрд░рдгреЛрдВ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдореЙрдбрд▓рд┐рдВрдЧ рдХреЗ рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рд╕реЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдЕрдзреНрдпрд╛рдп рдореЗрдВ рдЖрд░ рдореЗрдВ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдХреЛрдб рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕ рдкреБрд╕реНрддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рдореЙрдбрд▓ рдХреЗ рдкрд░рд┐рдЪрдп рдФрд░ рдЙрдирдХреЗ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрд┐рди рдкрд╛рдардХреЛрдВ рдХреЗ рдкрд╛рд╕ рдЧрдгрд┐рддреАрдп рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдирд╣реАрдВ рд╣реИ, рд╡реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рд╕рд╣рдЬ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рд╕реЗ рдЙрди рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреЛ рдорджрдж рдорд┐рд▓реЗрдЧреА рдЬреЛ рдЕрдкрдиреЗ рдХреМрд╢рд▓ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рд▓реЗрдЦрдХреЛрдВ рдиреЗ рдЬрдЯрд┐рд▓ рд╕реВрддреНрд░реЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдореВрд▓ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕рдордЭрдирд╛, рдЬреИрд╕реЗ рдХрд┐ рд╕рд╣рд╕рдВрдмрдВрдз рдФрд░ рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди рд╡рд┐рд╢реНрд▓реЗрд╖рдг, рдореВрд▓ рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдиреНрдирдд рд╡рд┐рд╖рдпреЛрдВ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрдгрд┐рддреАрдп рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЕрдВрд╢ред 7.5ред рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ
рдпрд╣ рдЦрдВрдб рдЖрд░ рдХреИрд░реЗрдЯ, рдЕрд░реНрде, рдХрд░реНрдиреЗрд▓рд▓реИрдм рдФрд░ рдПрдирдиреЗрдЯ рдкреИрдХреЗрдЬ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред
рдЖрд░ рдореЗрдВ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдкреИрдХреЗрдЬ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВред рдЗрдирдореЗрдВ рдПрдирдиреЗрдЯ, рдиреНрдпреВрд░рд▓ рдФрд░ рдЖрд░рдПрд╕рдПрдирдПрдирдПрд╕ рдкреИрдХреЗрдЬ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдореБрдЦреНрдп рдзреНрдпрд╛рди рдПрдирдИрдЯреАрдЯреА рдкреИрдХреЗрдЬ рдкрд░ рд╣реИ, рдЬреЛ рдПрдХ рд╕реНрддрд░ рдХреЗ рдЫрд┐рдкреЗ рд╣реБрдП рдЪрд░, рд╡рдЬрди рдореЗрдВ рдХрдореА рдХреЗ рд╕рд╛рде рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдореЙрдбрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИред RSNNS рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдмрд░реНрдЧрдореАрд░ рдФрд░ рдмреЗрдирд┐рдЯреЗрдЬрд╝ (2012) рдХреЗ рдЖрд░ред рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдкреИрдХреЗрдЬреЛрдВ рдХрд╛ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рд╣реИред RSNNS рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рднреА рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ
рдкреНрд░рддрд┐рдЧрдорди рдореЙрдбрд▓ рдХреЛ рдЕрдиреБрдорд╛рдирд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдирдПрдирдЯреА рдлрд╝рдВрдХреНрд╢рди рдореЙрдбрд▓ рдлреЙрд░реНрдореВрд▓рд╛ рдФрд░ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рджреЛрдиреЛрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд▓рд┐рдП, рдЫрд┐рдкреЗ рд╣реБрдП рдЪрд░ рдФрд░ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЗ рдмреАрдЪ рд░реИрдЦрд┐рдХ рд╕рдВрдмрдВрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рд▓рд╛рдЗрдирдЖрдЙрдЯ = рдЯреНрд░реВ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХреЙрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:
> nnetFit <- nnet(predictors, outcome, + size = 5, + decay = 0.01, + linout = TRUE, + ## + trace = FALSE, + ## + ## .. + maxit = 500, + ## , + MaxNWts = 5 * (ncol(predictors) + 1) + 5 + 1)
рдпрд╣ рдХреЙрд▓ рдкрд╛рдВрдЪ рдЫрд┐рдкреЗ рд╣реБрдП рдЪрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдореЙрдбрд▓ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгрд┐рдпреЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рдПрдХрд▓ рдкреИрдорд╛рдиреЗ рдкрд░ рдорд╛рдирдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдореЙрдбрд▓ рдХреЛ рдФрд╕рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреИрд░реЗрдЯ рдкреИрдХреЗрдЬ рд╕реЗ рдПрд╡реАрдПрдирдиреЗрдЯ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реЛрддрд╛ рд╣реИ:
> nnetAvg <- avNNet(predictors, outcome, + size = 5, + decay = 0.01, + ## + repeats = 5, + linout = TRUE, + ## + trace = FALSE, + ## + ## .. + maxit = 500, + ## , + MaxNWts = 5 * (ncol(predictors) + 1) + 5 + 1)
рдирдП рдбреЗрдЯрд╛ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
> predict(nnetFit, newData) > ## > predict(nnetAvg, newData)
рдЫрд┐рдкреЗ рд╣реБрдП рдЪрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдмрд╛рд░-рдмрд╛рд░ рдирдореВрдиреЗ рджреНрд╡рд╛рд░рд╛ рд╡рдЬрди рдореЗрдВ рдХрдореА рдХреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рдкреНрд░рд╕реНрддреБрдд рд╡рд┐рдзрд┐ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЯреНрд░реЗрди рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╡рд┐рдзрд┐ = "nnet" рдпрд╛ рд╡рд┐рдзрд┐ = "avnNet" рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рдкрд╣рд▓реЗ рднрд╡рд┐рд╖реНрдпрд╡рдХреНрддрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ (рддрд╛рдХрд┐ рднрд╡рд┐рд╖реНрдпрд╡рдХреНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдЕрдзрд┐рдХрддрдо рдкреВрд░реНрдг рдЬреЛрдбрд╝реА рд╕рд╣рд╕рдВрдмрдВрдз рдЕрдзрд┐рдХ рди рд╣реЛред 0.75):
> ## findCorrelation > ## , > ## > tooHigh <- findCorrelation(cor(solTrainXtrans), cutoff = .75) > trainXnnet <- solTrainXtrans[, -tooHigh] > testXnnet <- solTestXtrans[, -tooHigh] > ## - : > nnetGrid <- expand.grid(.decay = c(0, 0.01, .1), + .size = c(1:10), + ## тАФ + ## (. ) + ## . + .bag = FALSE) > set.seed(100) > nnetTune <- train(solTrainXtrans, solTrainY, + method = "avNNet", + tuneGrid = nnetGrid, + trControl = ctrl, + ## + ## + preProc = c("center", "scale"), + linout = TRUE, + trace = FALSE, + MaxNWts = 10 * (ncol(trainXnnet) + 1) + 10 + 1, + maxit = 500)
рдмрд╣реБрдЖрдпрд╛рдореА рдЕрдиреБрдХреВрд▓реА рдкреНрд░рддрд┐рдЧрдорди рд╡рд┐рднрд╛рдЬрди
MARS рдореЙрдбрд▓ рдХрдИ рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рд╕рдорд╛рд╣рд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреГрдереНрд╡реА рдкреИрдХреЗрдЬ рдореЗрдВ рд╕рдмрд╕реЗ рд╡реНрдпрд╛рдкрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред рдкреНрд░рддреНрдпрдХреНрд╖ рдкрд╛рд╕ рдФрд░ рдЯреНрд░рдВрдХреЗрд╢рди рдХреЗ рдирд╛рдордорд╛рддреНрд░ рдЪрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ MARS рдореЙрдбрд▓ рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
> marsFit <- earth(solTrainXtrans, solTrainY) > marsFit Selected 38 of 47 terms, and 30 of 228 predictors Importance: NumNonHAtoms, MolWeight, SurfaceArea2, SurfaceArea1, FP142, ... Number of terms at each degree of interaction: 1 37 (additive model) GCV 0.3877448 RSS 312.877 GRSq 0.907529 RSq 0.9213739
рдЪреВрдВрдХрд┐ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдпрд╣ рдореЙрдбрд▓ рдПрдХ рдореЙрдбрд▓ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП GCV рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреА рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рдЕрдзреНрдпрд╛рдп рдореЗрдВ рдкрд╣рд▓реЗ рд╡рд░реНрдгрд┐рдд рдореЙрдбрд▓ рд╕реЗ рдХреБрдЫ рдЕрд▓рдЧ рд╣реИред рд╕рд╛рд░рд╛рдВрд╢ рд╡рд┐рдзрд┐ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрдХ рдЖрдЙрдЯрдкреБрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИ:
> summary(marsFit) Call: earth(x=solTrainXtrans, y=solTrainY) coefficients (Intercept) -3.223749 FP002 0.517848 FP003 -0.228759 FP059 -0.582140 FP065 -0.273844 FP075 0.285520 FP083 -0.629746 FP085 -0.235622 FP099 0.325018 FP111 -0.403920 FP135 0.394901 FP142 0.407264 FP154 -0.620757 FP172 -0.514016 FP176 0.308482 FP188 0.425123 FP202 0.302688 FP204 -0.311739 FP207 0.457080 h(MolWeight-5.77508) -1.801853 h(5.94516-MolWeight) 0.813322 h(NumNonHAtoms-2.99573) -3.247622 h(2.99573-NumNonHAtoms) 2.520305 h(2.57858-NumNonHBonds) -0.564690 h(NumMultBonds-1.85275) -0.370480 h(NumRotBonds-2.19722) -2.753687 h(2.19722-NumRotBonds) 0.123978 h(NumAromaticBonds-2.48491) -1.453716 h(NumNitrogen-0.584815) 8.239716 h(0.584815-NumNitrogen) -1.542868 h(NumOxygen-1.38629) 3.304643 h(1.38629-NumOxygen) -0.620413 h(NumChlorine-0.46875) -50.431489 h(HydrophilicFactor- -0.816625) 0.237565 h(-0.816625-HydrophilicFactor) -0.370998 h(SurfaceArea1-1.9554) 0.149166 h(SurfaceArea2-4.66178) -0.169960 h(4.66178-SurfaceArea2) -0.157970 Selected 38 of 47 terms, and 30 of 228 predictors Importance: NumNonHAtoms, MolWeight, SurfaceArea2, SurfaceArea1, FP142, ... Number of terms at each degree of interaction: 1 37 (additive model) GCV 0.3877448 RSS 312.877 GRSq 0.907529 RSq 0.9213739
рдЗрд╕ рд╡реНрдпреБрддреНрдкрддреНрддрд┐ рдореЗрдВ, h (┬╖) рдХрд╛рдЬ рдлрд╝рдВрдХреНрд╢рди рд╣реИред рдЙрдкрд░реЛрдХреНрдд рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ, рдШрдЯрдХ h (MolWeight-5.77508) 5.77508 (рдЕрдВрдЬреАрд░ рдХреЗ рдКрдкрд░реА рднрд╛рдЧ 7.3 рдХреЗ рд░реВрдк рдореЗрдВ) рд╕реЗ рдХрдо рдЖрдгрд╡рд┐рдХ рднрд╛рд░ рдХреЗ рд▓рд┐рдП рд╢реВрдиреНрдп рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рдХрд╛рдЬ рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ рдПрдЪ (рел. h --релреж) - рдореЛрд▓рд╛рдЗрдЯ) рд░реВрдк рд╣реИред
рдЕрдВрдЬреАрд░ рдореЗрдВ рджрд┐рдЦрд╛рдП рдЧрдП рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рдорд╛рди рдЖрд░реЗрдЦ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреГрдереНрд╡реА рдкреИрдХреЗрдЬ рд╕реЗ рдкреНрд▓реЙрдЯреЛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред 7.5ред рдЖрдк рдмрд╛рд╣реНрдп рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореЙрдбрд▓ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдЕрдВрдЬреАрд░ рдореЗрдВ рджрд┐рдЦрд╛рдП рдЧрдП рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИред 7.4:
> # - > marsGrid <- expand.grid(.degree = 1:2, .nprune = 2:38) > # > set.seed(100) > marsTuned <- train(solTrainXtrans, solTrainY, + method = "earth", + # - + tuneGrid = marsGrid, + trControl = trainControl(method = "cv")) > marsTuned 951 samples 228 predictors No pre-processing Resampling: Cross-Validation (10-fold) Summary of sample sizes: 856, 857, 855, 856, 856, 855, ... Resampling results across tuning parameters: degree nprune RMSE Rsquared RMSE SD Rsquared SD 1 2 1.54 0.438 0.128 0.0802 1 3 1.12 0.7 0.0968 0.0647 1 4 1.06 0.73 0.0849 0.0594 1 5 1.02 0.75 0.102 0.0551 1 6 0.984 0.768 0.0733 0.042 1 7 0.919 0.796 0.0657 0.0432 1 8 0.862 0.821 0.0418 0.0237 : : : : : : 2 33 0.701 0.883 0.068 0.0307 2 34 0.702 0.883 0.0699 0.0307 2 35 0.696 0.885 0.0746 0.0315 2 36 0.687 0.887 0.0604 0.0281 2 37 0.696 0.885 0.0689 0.0291 2 38 0.686 0.887 0.0626 0.029 RMSE was used to select the optimal model using the smallest value. The final values used for the model were degree = 1 and nprune = 38. > head(predict(marsTuned, solTestXtrans)) [1] 0.3677522 -0.1503220 -0.5051844 0.5398116 -0.4792718 0.7377222
MARS рдореЙрдбрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рднрд╡рд┐рд╖реНрдпрд╡рдХреНрддрд╛ рдХреЗ рдорд╣рддреНрд╡ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдкреГрдереНрд╡реА рдкреИрдХреЗрдЬ рд╕реЗ рдмреЗрджрдЦрд▓ рдХрд░рдирд╛ рдФрд░ рдХреИрд░рдЯ рдкреИрдХреЗрдЬ рд╕реЗ varImp (рджреВрд╕рд░рд╛ рдкрд╣рд▓рд╛ рдХреЙрд▓):
> varImp(marsTuned) earth variable importance only 20 most important variables shown (out of 228) Overall MolWeight 100.00 NumNonHAtoms 89.96 SurfaceArea2 89.51 SurfaceArea1 57.34 FP142 44.31 FP002 39.23 NumMultBond s 39.23 FP204 37.10 FP172 34.96 NumOxygen 30.70 NumNitrogen 29.12 FP083 28.21 NumNonHBonds 26.58 FP059 24.76 FP135 23.51 FP154 21.20 FP207 19.05 FP202 17.92 NumRotBonds 16.94 FP085 16.02
рдпреЗ рдкрд░рд┐рдгрд╛рдо рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдП рдЧрдП рд╕реЗ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реБрдП, 0 рд╕реЗ 100 рддрдХ рдХреА рд╕реАрдорд╛ рдореЗрдВ рд╣реИрдВред 7.1 (рддрд╛рд▓рд┐рдХрд╛ 7.1 рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдореЙрдбрд▓ рд╡рд┐рдХрд╛рд╕ рдФрд░ рдЫрдВрдЯрдиреА рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдирд╣реАрдВ рдЧреБрдЬрд░рд╛)ред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдЫ рдЪрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред
рдПрд╕рд╡реАрдПрдо, рд╕рдорд░реНрдерди рд╡реЗрдХреНрдЯрд░ рд╡рд┐рдзрд┐
рдПрд╕рд╡реАрдПрдо рдореЙрдбрд▓ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрдИ рдЖрд░ рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИрдВред рдЪрд╛рдВрдЧ рдФрд░ рд▓рд┐рди (рдЪрд╛рдВрдЧ рдФрд░ рд▓рд┐рди, 2011) рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд▓рд┐рдП LIBSVM рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП e1071 рдкреИрдХреЗрдЬ рд╕реЗ svm рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред Karatsogl рд░рд┐рдЧреНрд░реЗрд╢рди (Karatzoglou et alред, 2004) рдХреЗ рд▓рд┐рдП SVM рдореЙрдбрд▓ рдХрд╛ рдЕрдзрд┐рдХ рдкреВрд░реНрдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд░реНрдиреЗрд▓реИрдм рдкреИрдХреЗрдЬ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рддрд┐рдЧрдорди рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП ksvm рдлрд╝рдВрдХреНрд╢рди рдФрд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкрд░рдорд╛рдгреБ рдХрд╛рд░реНрдп рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд░реЗрдбрд┐рдпрд▓ рдЖрдзрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рд▓рд╛рдЧрдд рдФрд░ рдкрд░рдорд╛рдгреБ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореЙрдбрд▓ рдХрд╛ рдЕрдиреБрдорд╛рди рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
> svmFit <- ksvm(x = solTrainXtrans, y = solTrainY, + kernel ="rbfdot", kpar = "automatic", + C = 1, epsilon = 0.1)
Analysis рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЪреВрдВрдХрд┐ y рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╡реЗрдХреНрдЯрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐рдЧрдорди рдореЙрдбрд▓ (рд╡рд░реНрдЧреАрдХрд░рдг рдореЙрдбрд▓ рдХреЗ рдмрдЬрд╛рдп) рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддрд╛ рд╣реИред рдЖрдк рдмрд╣реБрдкрдж (рдХрд░реНрдиреЗрд▓ = "рдкреЙрд▓реАрдбреЙрдЯ") рдФрд░ рд░реИрдЦрд┐рдХ (рдХрд░реНрдиреЗрд▓ = "рд╡реИрдирд┐рд▓рдбреЙрдЯ") рд╕рд╣рд┐рдд рдЕрдиреНрдп рдХрд░реНрдиреЗрд▓ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдореВрд▓реНрдп рдЕрдЬреНрдЮрд╛рдд рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рдирдореВрдирд╛ рдХрд░рдХреЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЯреНрд░реЗрди рдореЗрдВ, "svmRadial", "svmLinear" рдпрд╛ "svmPoly" рд╡рд┐рдзрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдорд╛рди рднрд┐рдиреНрди рдХрд░реНрдиреЗрд▓ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ:
> svmRTuned <- train(solTrainXtrans, solTrainY, + method = "svmRadial", + preProc = c("center", "scale"), + tuneLength = 14, + trControl = trainControl(method = "cv"))
рдЯреНрдпреВрдирд▓ рд▓рдп рддрд░реНрдХ 14 рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред


рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ ╧Г рдХрд╛ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
> svmRTuned 951 samples 228 predictors Pre-processing: centered, scaled Resampling: Cross-Validation (10-fold) Summary of sample sizes: 855, 858, 856, 855, 855, 856, ... Resampling results across tuning parameters: C RMSE Rsquared RMSE SD Rsquared SD 0.25 0.793 0.87 0.105 0.0396 0.5 0.708 0.889 0.0936 0.0345 1 0.664 0.898 0.0834 0.0306 2 0.642 0.903 0.0725 0.0277 4 0.629 0.906 0.067 0.0253 8 0.621 0.908 0.0634 0.0238 16 0.617 0.909 0.0602 0.0232 32 0.613 0.91 0.06 0.0234 64 0.611 0.911 0.0586 0.0231 128 0.609 0.911 0.0561 0.0223 256 0.609 0.911 0.056 0.0224 512 0.61 0.911 0.0563 0.0226 1020 0.613 0.91 0.0563 0.023 2050 0.618 0.909 0.0541 0.023 Tuning parameter 'sigma' was held constant at a value of 0.00387 RMSE was used to select the optimal model using the smallest value. The final values used for the model were C = 256 and sigma = 0.00387.
рдлрд╛рдЗрдирд▓рдореЙрдбрд▓ рд╕рдмреЛрдмреЗрдЬ рдореЗрдВ ksvm рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдореЙрдбрд▓ рд╣реЛрддрд╛ рд╣реИ:
> svmRTuned$finalModel Support Vector Machine object of class "ksvm" SV type: eps-svr (regression) parameter : epsilon = 0.1 cost C = 256 Gaussian Radial Basis kernel function. Hyperparameter : sigma = 0.00387037424967707 Number of Support Vectors : 625 Objective Function Value : -1020.558 Training error : 0.009163
рд╕рдВрджрд░реНрдн рд╡реИрдХреНрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдореЙрдбрд▓ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕реЗрдЯ рдХреЗ 625 рдбреЗрдЯрд╛ рдмрд┐рдВрджреБрдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рдпрд╛рдиреА рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╕реЗрдЯ рдХрд╛ 66%)ред
Kernlab рдкреИрдХреЗрдЬ рдореЗрдВ rvm рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд▓рд┐рдП RVM рдореЙрдбрд▓ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╢рд╛рдорд┐рд▓ рд╣реИред рдЗрд╕рдХрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдмрд╣реБрдд рдХреБрдЫ рдРрд╕рд╛ рд╣реА рд╣реИ рдЬреЛ ksvm рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
KNN рд╡рд┐рдзрд┐
рдХреИрд░рди рдкреИрдХреЗрдЬ knnreg KNN рдкреНрд░рддрд┐рдЧрдорди рдореЙрдбрд▓ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддрд╛ рд╣реИ; рдЯреНрд░реЗрди рдлрд╝рдВрдХреНрд╢рди K рдХреЛ рдореЙрдбрд▓ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ:
> # . > knnDescr <- solTrainXtrans[, -nearZeroVar(solTrainXtrans)] > set.seed(100) > knnTune <- train(knnDescr, + solTrainY, + method = "knn", + # + # + preProc = c("center", "scale"), + tuneGrid = data.frame(.k = 1:20), + trControl = trainControl(method = "cv"))
рд▓реЗрдЦрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:
рдореИрдХреНрд╕ рдХреБрди рдлрд╛рдЗрдЬрд░ рдЧреНрд▓реЛрдмрд▓ рдореЗрдВ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдЧреИрд░-рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рд╡рд┐рдХрд╛рд╕ рд╡рд┐рднрд╛рдЧ рдХреЗ рдкреНрд░рдореБрдЦ рд╣реИрдВред рд╡рд╣ 15 рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЖрд░ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рд╢реЗрд╖ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд▓реЗрдЦрдХ рд╣реИрдВред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдореЙрдбрд▓рд┐рдВрдЧ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЗ рд╕рднреА рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рдбреЗрдЯрд╛ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ, рдбреЗрдЯрд╛ рд╡рд┐рднрд╛рдЬрди, рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдкреНрд░рдореБрдЦ рдЪрд░рдгреЛрдВ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред
рдореЙрдбрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред рдореЙрдбрд▓рд┐рдВрдЧ рдХреЗ рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рд╕реЗ, рдкреНрд░рддреНрдпреЗрдХ рдЕрдзреНрдпрд╛рдп R рдореЗрдВ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдХреЛрдб рджреЗрддрд╛ рд╣реИред
рдХреЗрдЬреЗрд▓ рдЬреЙрдирд╕рди рджрд╕ рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдлрд╛рд░реНрдорд╛рд╕реНрдпреБрдЯрд┐рдХрд▓ рд░рд┐рд╕рд░реНрдЪ рдХреЗ рд▓рд┐рдП рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдФрд░ рдкреНрд░реЗрдбрд┐рдХреНрдЯрд┐рд╡ рдореЙрдбрд▓рд┐рдВрдЧ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИрдВред рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рдореЙрдбрд▓рд┐рдВрдЧ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рд╡рд╛рд▓реА рдХрдВрдкрдиреА, рдЖрд░реНрдмрд░ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдХреЗ рд╕рд╣-рд╕рдВрд╕реНрдерд╛рдкрдХ; рдкрд╣рд▓реЗ рдлрд╛рдЗрдЬрд░ рдЧреНрд▓реЛрдмрд▓ рдореЗрдВ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рд╡рд┐рдХрд╛рд╕ рд╡рд┐рднрд╛рдЧ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд┐рдпрд╛ред рдЙрдирдХрд╛ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХрд╛рд░реНрдп рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдкрджреНрдзрддрд┐ рдФрд░ рд╢рд┐рдХреНрд╖рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИред
┬╗рдкреБрд╕реНрддрдХ рдХреА рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА
рдкреНрд░рдХрд╛рд╢рдХ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ
┬╗
рд╕рд╛рдордЧреНрд░реА┬╗
рдЕрдВрд╢рдлреЗрд░реАрд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдХреВрдкрди рдкрд░ 25% рдХреА рдЫреВрдЯ -
рдПрдкреНрд▓рд╛рдЗрдб рдкреНрд░реЗрдбрд┐рдХреНрдЯрд┐рд╡ рдореЙрдбрд▓рд┐рдВрдЧрдкреБрд╕реНрддрдХ рдХреЗ рдкреЗрдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рднреБрдЧрддрд╛рди рдкрд░, рдПрдХ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдкреБрд╕реНрддрдХ рдИ-рдореЗрд▓ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИред