// Class: ReadH6AONN5MEMLP // Automatically generated by MethodBase::MakeClass // /* configuration options ===================================================== #GEN -*-*-*-*-*-*-*-*-*-*-*- general info -*-*-*-*-*-*-*-*-*-*-*- Method : MLP::H6AONN5MEMLP TMVA Release : 3.8.6 [198662] ROOT Release : 5.26/00 [334336] Creator : stdenis Date : Sun Jan 1 10:12:57 2012 Host : Linux psr-lts309-32bit-kvm 2.4.21-63.ELsmp #1 SMP Wed Nov 4 04:34:43 CST 2009 i686 i686 i386 GNU/Linux Dir : /data/cdf04/stdenis/batch/run20572/job405 Training events: 48406 #OPT -*-*-*-*-*-*-*-*-*-*-*-*- options -*-*-*-*-*-*-*-*-*-*-*-*- # Set by User: V: "False" [Verbose mode] NCycles: "1000" [Number of training cycles] HiddenLayers: "N+1,N" [Specification of hidden layer architecture] # Default: D: "False" [use-decorrelated-variables flag (depreciated)] Normalise: "True" [Normalise input variables] VarTransform: "None" [Variable transformation method] VarTransformType: "Signal" [Use signal or background events for var transform] NbinsMVAPdf: "60" [Number of bins used to create MVA PDF] NsmoothMVAPdf: "2" [Number of smoothing iterations for MVA PDF] VerboseLevel: "Info" [Verbosity level] H: "False" [Print classifier-specific help message] CreateMVAPdfs: "False" [Create PDFs for classifier outputs] TxtWeightFilesOnly: "True" [if True, write all weights as text files] NeuronType: "sigmoid" [Neuron activation function type] NeuronInputType: "sum" [Neuron input function type] RandomSeed: "1" [Random Number Seed for TRandom3] RandomFile: "None" [Random Number input file for TRandom3] TrainingMethod: "BP" [Train with Back-Propagation (BP - default) or Genetic Algorithm (GA - slower and worse)] LearningRate: "0.02" [ANN learning rate parameter] DecayRate: "0.01" [Decay rate for learning parameter] TestRate: "10" [Test for overtraining performed at each #th epochs] BPMode: "sequential" [Back-propagation learning mode: sequential or batch] BatchSize: "-1" [Batch size: number of events/batch, only set if in Batch Mode, -1 for BatchSize=number_of_events] ## #VAR -*-*-*-*-*-*-*-*-*-*-*-* variables *-*-*-*-*-*-*-*-*-*-*-*- NVar 13 Ht Ht 'F' [47.0173530579,675.482849121] LepAPt LepAPt 'F' [20.0003395081,158.143112183] LepBPt LepBPt 'F' [10.000120163,74.1576004028] MetSigLeptonsJets MetSigLeptonsJets 'F' [1.07960414886,19.0481109619] MetSpec MetSpec 'F' [15.0053844452,236.562576294] SumEtLeptonsJets SumEtLeptonsJets 'F' [30.1877574921,477.637084961] VSumJetLeptonsPt VSumJetLeptonsPt 'F' [0.331718683243,277.168395996] addEt addEt 'F' [47.0173530579,338.202270508] dPhiLepSumMet dPhiLepSumMet 'F' [0.00253169541247,3.14158678055] dPhiLeptons dPhiLeptons 'F' [1.71661376953e-05,1.11657130718] dRLeptons dRLeptons 'F' [0.200001657009,1.13453125954] lep1_E lep1_E 'F' [20.0277633667,232.066116333] lep2_E lep2_E 'F' [10.0093269348,120.71686554] ============================================================================ */ #include #include #include #include #ifndef IClassifierReader__def #define IClassifierReader__def class IClassifierReader { public: // constructor IClassifierReader() {} virtual ~IClassifierReader() {} // return classifier response virtual double GetMvaValue( const std::vector& inputValues ) const = 0; }; #endif class ReadH6AONN5MEMLP : public IClassifierReader { public: // constructor ReadH6AONN5MEMLP( std::vector& theInputVars ) : IClassifierReader(), fClassName( "ReadH6AONN5MEMLP" ), fStatusIsClean( true ), fNvars( 13 ), fIsNormalised( true ) { // the training input variables const char* inputVars[] = { "Ht", "LepAPt", "LepBPt", "MetSigLeptonsJets", "MetSpec", "SumEtLeptonsJets", "VSumJetLeptonsPt", "addEt", "dPhiLepSumMet", "dPhiLeptons", "dRLeptons", "lep1_E", "lep2_E" }; // sanity checks if (theInputVars.size() <= 0) { std::cout << "Problem in class \"" << fClassName << "\": empty input vector" << std::endl; fStatusIsClean = false; } if (theInputVars.size() != fNvars) { std::cout << "Problem in class \"" << fClassName << "\": mismatch in number of input values: " << theInputVars.size() << " != " << fNvars << std::endl; fStatusIsClean = false; } // validate input variables for (size_t ivar = 0; ivar < theInputVars.size(); ivar++) { if (theInputVars[ivar] != inputVars[ivar]) { std::cout << "Problem in class \"" << fClassName << "\": mismatch in input variable names" << std::endl << " for variable [" << ivar << "]: " << theInputVars[ivar].c_str() << " != " << inputVars[ivar] << std::endl; fStatusIsClean = false; } } // initialize min and max vectors (for normalisation) fVmin[0] = 47.0173530578613; fVmax[0] = 675.482849121094; fVmin[1] = 20.0003395080566; fVmax[1] = 158.143112182617; fVmin[2] = 10.0001201629639; fVmax[2] = 74.157600402832; fVmin[3] = 1.07960414886475; fVmax[3] = 19.0481109619141; fVmin[4] = 15.0053844451904; fVmax[4] = 236.562576293945; fVmin[5] = 30.1877574920654; fVmax[5] = 477.637084960938; fVmin[6] = 0.331718683242798; fVmax[6] = 277.168395996094; fVmin[7] = 47.0173530578613; fVmax[7] = 338.202270507812; fVmin[8] = 0.00253169541247189; fVmax[8] = 3.1415867805481; fVmin[9] = 1.71661376953125e-05; fVmax[9] = 1.11657130718231; fVmin[10] = 0.200001657009125; fVmax[10] = 1.13453125953674; fVmin[11] = 20.0277633666992; fVmax[11] = 232.066116333008; fVmin[12] = 10.0093269348145; fVmax[12] = 120.716865539551; // initialize input variable types fType[0] = 'F'; fType[1] = 'F'; fType[2] = 'F'; fType[3] = 'F'; fType[4] = 'F'; fType[5] = 'F'; fType[6] = 'F'; fType[7] = 'F'; fType[8] = 'F'; fType[9] = 'F'; fType[10] = 'F'; fType[11] = 'F'; fType[12] = 'F'; // initialize constants Initialize(); } // destructor virtual ~ReadH6AONN5MEMLP() { Clear(); // method-specific } // the classifier response // "inputValues" is a vector of input values in the same order as the // variables given to the constructor double GetMvaValue( const std::vector& inputValues ) const { // classifier response value double retval = 0; // classifier response, sanity check first if (!fStatusIsClean) { std::cout << "Problem in class \"" << fClassName << "\": cannot return classifier response" << " because status is dirty" << std::endl; retval = 0; } else { if (IsNormalised()) { // normalise variables std::vector iV; int ivar = 0; for (std::vector::const_iterator varIt = inputValues.begin(); varIt != inputValues.end(); varIt++, ivar++) { iV.push_back(NormVariable( *varIt, fVmin[ivar], fVmax[ivar] )); } retval = GetMvaValue__( iV ); } else { retval = GetMvaValue__( inputValues ); } } return retval; } private: // method-specific destructor void Clear(); // common member variables const char* fClassName; bool fStatusIsClean; const size_t fNvars; size_t GetNvar() const { return fNvars; } char GetType( int ivar ) const { return fType[ivar]; } // normalisation of input variables const bool fIsNormalised; bool IsNormalised() const { return fIsNormalised; } double fVmin[13]; double fVmax[13]; double NormVariable( double x, double xmin, double xmax ) const { // normalise to output range: [-1, 1] return 2*(x - xmin)/(xmax - xmin) - 1.0; } // type of input variable: 'F' or 'I' char fType[13]; // initialize internal variables void Initialize(); double GetMvaValue__( const std::vector& inputValues ) const; // private members (method specific) double ActivationFnc(double x) const; int fLayers; int fLayerSize[4]; double fWeightMatrix0to1[15][14]; // weight matrix from layer 0 to 1 double fWeightMatrix1to2[14][15]; // weight matrix from layer 1 to 2 double fWeightMatrix2to3[1][14]; // weight matrix from layer 2 to 3 double * fWeights[4]; }; inline void ReadH6AONN5MEMLP::Initialize() { // build network structure fLayers = 4; fLayerSize[0] = 14; fWeights[0] = new double[14]; fLayerSize[1] = 15; fWeights[1] = new double[15]; fLayerSize[2] = 14; fWeights[2] = new double[14]; fLayerSize[3] = 1; fWeights[3] = new double[1]; // weight matrix from layer 0 to 1 fWeightMatrix0to1[0][0] = -0.223326174325915; fWeightMatrix0to1[1][0] = 2.28742854078502; fWeightMatrix0to1[2][0] = 0.833220095717885; fWeightMatrix0to1[3][0] = 1.80632287597199; fWeightMatrix0to1[4][0] = -1.84609251024766; fWeightMatrix0to1[5][0] = -1.51147364852346; fWeightMatrix0to1[6][0] = -0.481796107181601; fWeightMatrix0to1[7][0] = 1.7031708776737; fWeightMatrix0to1[8][0] = -1.49657189201827; fWeightMatrix0to1[9][0] = -0.462743191513273; fWeightMatrix0to1[10][0] = -1.06404105454872; fWeightMatrix0to1[11][0] = -0.128026434997106; fWeightMatrix0to1[12][0] = -0.529869767707378; fWeightMatrix0to1[13][0] = 0.0593283595574795; fWeightMatrix0to1[0][1] = -0.532826681128339; fWeightMatrix0to1[1][1] = 0.916484999953393; fWeightMatrix0to1[2][1] = -0.297206744304559; fWeightMatrix0to1[3][1] = 4.30412078193576; fWeightMatrix0to1[4][1] = -0.321834382492774; fWeightMatrix0to1[5][1] = 4.64309974783282; fWeightMatrix0to1[6][1] = -2.03468155081897; fWeightMatrix0to1[7][1] = 2.88488502936865; fWeightMatrix0to1[8][1] = 1.06855696614007; fWeightMatrix0to1[9][1] = 0.719841746603109; fWeightMatrix0to1[10][1] = -1.17006427504566; fWeightMatrix0to1[11][1] = 1.62713034724437; fWeightMatrix0to1[12][1] = 0.830487345783174; fWeightMatrix0to1[13][1] = -2.7814194619497; fWeightMatrix0to1[0][2] = -1.7141651099226; fWeightMatrix0to1[1][2] = 0.693248854457947; fWeightMatrix0to1[2][2] = -0.318529665721541; fWeightMatrix0to1[3][2] = 2.44992461135908; fWeightMatrix0to1[4][2] = -0.287152031358538; fWeightMatrix0to1[5][2] = 1.37076018399509; fWeightMatrix0to1[6][2] = -1.99288058827807; fWeightMatrix0to1[7][2] = 4.91081388966338; fWeightMatrix0to1[8][2] = -1.80849853679464; fWeightMatrix0to1[9][2] = 2.25994072674284; fWeightMatrix0to1[10][2] = -2.42953864948177; fWeightMatrix0to1[11][2] = 1.36597949069716; fWeightMatrix0to1[12][2] = 1.33744189071572; fWeightMatrix0to1[13][2] = 1.71906417617561; fWeightMatrix0to1[0][3] = 1.50896493323194; fWeightMatrix0to1[1][3] = 1.34242368130234; fWeightMatrix0to1[2][3] = -1.1679569632915; fWeightMatrix0to1[3][3] = -2.49023279885196; fWeightMatrix0to1[4][3] = 0.613594105590465; fWeightMatrix0to1[5][3] = -0.332620568123878; fWeightMatrix0to1[6][3] = 4.17025862150697; fWeightMatrix0to1[7][3] = 1.45779309030346; fWeightMatrix0to1[8][3] = 2.02628634216497; fWeightMatrix0to1[9][3] = 1.60695622280662; fWeightMatrix0to1[10][3] = -1.30414951260509; fWeightMatrix0to1[11][3] = 2.10178228417142; fWeightMatrix0to1[12][3] = -1.47561588144273; fWeightMatrix0to1[13][3] = 0.195305548884981; fWeightMatrix0to1[0][4] = -1.25419535959596; fWeightMatrix0to1[1][4] = -1.46716896452453; fWeightMatrix0to1[2][4] = 1.9279976422391; fWeightMatrix0to1[3][4] = 0.412557398933858; fWeightMatrix0to1[4][4] = -1.43775247335128; fWeightMatrix0to1[5][4] = 0.160707189113255; fWeightMatrix0to1[6][4] = 1.4359610869747; fWeightMatrix0to1[7][4] = 0.737017911723547; fWeightMatrix0to1[8][4] = 2.51728851838086; fWeightMatrix0to1[9][4] = 0.163923657459008; fWeightMatrix0to1[10][4] = 0.285214966956004; fWeightMatrix0to1[11][4] = 0.0888785995081846; fWeightMatrix0to1[12][4] = 1.57845979845458; fWeightMatrix0to1[13][4] = -0.560579756828133; fWeightMatrix0to1[0][5] = -0.358727958369389; fWeightMatrix0to1[1][5] = -1.04824626041763; fWeightMatrix0to1[2][5] = 0.771027051813969; fWeightMatrix0to1[3][5] = 0.82353764020369; fWeightMatrix0to1[4][5] = 1.71648788808357; fWeightMatrix0to1[5][5] = -0.980709317116097; fWeightMatrix0to1[6][5] = -1.28623395211929; fWeightMatrix0to1[7][5] = -4.74299106540909; fWeightMatrix0to1[8][5] = 0.512360362124204; fWeightMatrix0to1[9][5] = 1.15638856878163; fWeightMatrix0to1[10][5] = 2.73670880832258; fWeightMatrix0to1[11][5] = 0.655059712535751; fWeightMatrix0to1[12][5] = 1.82127383597559; fWeightMatrix0to1[13][5] = -0.324141901722854; fWeightMatrix0to1[0][6] = -0.955292596688066; fWeightMatrix0to1[1][6] = -0.00454503027228938; fWeightMatrix0to1[2][6] = 0.969758804593241; fWeightMatrix0to1[3][6] = -1.69857722144061; fWeightMatrix0to1[4][6] = -1.77002004116871; fWeightMatrix0to1[5][6] = -0.46931051501889; fWeightMatrix0to1[6][6] = -0.566564388145146; fWeightMatrix0to1[7][6] = 2.96556099641364; fWeightMatrix0to1[8][6] = 1.94666949951638; fWeightMatrix0to1[9][6] = -1.14956039683353; fWeightMatrix0to1[10][6] = -0.712226977886588; fWeightMatrix0to1[11][6] = 2.30145029774179; fWeightMatrix0to1[12][6] = -0.746398179445279; fWeightMatrix0to1[13][6] = -1.83436982480844; fWeightMatrix0to1[0][7] = -2.03316860069382; fWeightMatrix0to1[1][7] = 0.186260931145462; fWeightMatrix0to1[2][7] = -1.91467017648189; fWeightMatrix0to1[3][7] = 1.39940108633346; fWeightMatrix0to1[4][7] = -0.00494461463087719; fWeightMatrix0to1[5][7] = 5.4614409494006; fWeightMatrix0to1[6][7] = -4.18770743337352; fWeightMatrix0to1[7][7] = 12.7492223945247; fWeightMatrix0to1[8][7] = 0.12238664218337; fWeightMatrix0to1[9][7] = -0.402709707850633; fWeightMatrix0to1[10][7] = -0.859348679688349; fWeightMatrix0to1[11][7] = 1.90576873775147; fWeightMatrix0to1[12][7] = -2.00481099679942; fWeightMatrix0to1[13][7] = -0.295829810608332; fWeightMatrix0to1[0][8] = -0.406063208983256; fWeightMatrix0to1[1][8] = 0.118236432468035; fWeightMatrix0to1[2][8] = -0.984368500242921; fWeightMatrix0to1[3][8] = 1.77391934149652; fWeightMatrix0to1[4][8] = -0.51919779249033; fWeightMatrix0to1[5][8] = -1.82927614365354; fWeightMatrix0to1[6][8] = 3.59845220461895; fWeightMatrix0to1[7][8] = -1.1754207796141; fWeightMatrix0to1[8][8] = -0.0785764639596749; fWeightMatrix0to1[9][8] = -0.459217933495395; fWeightMatrix0to1[10][8] = -1.60695178241064; fWeightMatrix0to1[11][8] = 3.09850351991718; fWeightMatrix0to1[12][8] = -0.475867994913432; fWeightMatrix0to1[13][8] = -0.0805078724625748; fWeightMatrix0to1[0][9] = 0.775766575323362; fWeightMatrix0to1[1][9] = 0.286777944606686; fWeightMatrix0to1[2][9] = -1.783561102736; fWeightMatrix0to1[3][9] = 1.79332868585475; fWeightMatrix0to1[4][9] = 0.319768155372617; fWeightMatrix0to1[5][9] = -0.468826619911866; fWeightMatrix0to1[6][9] = 0.48186548884604; fWeightMatrix0to1[7][9] = -0.317302364680625; fWeightMatrix0to1[8][9] = 1.90230583343687; fWeightMatrix0to1[9][9] = 1.418895157565; fWeightMatrix0to1[10][9] = 2.35935230533014; fWeightMatrix0to1[11][9] = -1.09362658202221; fWeightMatrix0to1[12][9] = 0.0452939445364956; fWeightMatrix0to1[13][9] = 1.51509557777551; fWeightMatrix0to1[0][10] = 2.29390709655856; fWeightMatrix0to1[1][10] = 0.431503161438267; fWeightMatrix0to1[2][10] = -3.15698664721011; fWeightMatrix0to1[3][10] = -1.21407429600356; fWeightMatrix0to1[4][10] = -1.02234555393757; fWeightMatrix0to1[5][10] = 0.796907353676281; fWeightMatrix0to1[6][10] = 0.119695592196465; fWeightMatrix0to1[7][10] = 0.952205028180473; fWeightMatrix0to1[8][10] = 0.660966554365786; fWeightMatrix0to1[9][10] = 0.346273926610391; fWeightMatrix0to1[10][10] = -0.424804214564287; fWeightMatrix0to1[11][10] = 1.38905351910167; fWeightMatrix0to1[12][10] = 1.92352036665979; fWeightMatrix0to1[13][10] = -0.86960926888419; fWeightMatrix0to1[0][11] = -0.301387088325699; fWeightMatrix0to1[1][11] = 0.612561321448001; fWeightMatrix0to1[2][11] = 1.79231549549969; fWeightMatrix0to1[3][11] = -0.46383544403113; fWeightMatrix0to1[4][11] = 0.66699636455172; fWeightMatrix0to1[5][11] = -2.45346714987544; fWeightMatrix0to1[6][11] = 2.40402537109385; fWeightMatrix0to1[7][11] = -1.50774609546635; fWeightMatrix0to1[8][11] = -0.140490009319912; fWeightMatrix0to1[9][11] = 1.4882625343316; fWeightMatrix0to1[10][11] = 1.51792449542162; fWeightMatrix0to1[11][11] = 0.518779939725334; fWeightMatrix0to1[12][11] = -1.66431203432361; fWeightMatrix0to1[13][11] = -0.317644111204933; fWeightMatrix0to1[0][12] = -0.363115841143166; fWeightMatrix0to1[1][12] = -0.0092856087531325; fWeightMatrix0to1[2][12] = 1.62681951936202; fWeightMatrix0to1[3][12] = -1.34211384210446; fWeightMatrix0to1[4][12] = -0.213720598982189; fWeightMatrix0to1[5][12] = 1.63434737087976; fWeightMatrix0to1[6][12] = 1.93558553778036; fWeightMatrix0to1[7][12] = -1.41812917124546; fWeightMatrix0to1[8][12] = -0.408963730618401; fWeightMatrix0to1[9][12] = 0.837144723583469; fWeightMatrix0to1[10][12] = -0.0322423890626342; fWeightMatrix0to1[11][12] = -0.520499886796804; fWeightMatrix0to1[12][12] = -1.98315502013263; fWeightMatrix0to1[13][12] = 0.625644102276537; fWeightMatrix0to1[0][13] = 0.89649361822784; fWeightMatrix0to1[1][13] = -2.39025987095516; fWeightMatrix0to1[2][13] = 0.801187720137079; fWeightMatrix0to1[3][13] = 2.70367850615473; fWeightMatrix0to1[4][13] = -0.492227530093298; fWeightMatrix0to1[5][13] = 4.91221538492955; fWeightMatrix0to1[6][13] = -4.85374413566624; fWeightMatrix0to1[7][13] = 13.6367956372583; fWeightMatrix0to1[8][13] = 0.269790083403416; fWeightMatrix0to1[9][13] = 0.196975991130768; fWeightMatrix0to1[10][13] = -0.241468850898994; fWeightMatrix0to1[11][13] = 1.20082859864448; fWeightMatrix0to1[12][13] = -0.390815436876752; fWeightMatrix0to1[13][13] = -1.73639551778498; // weight matrix from layer 1 to 2 fWeightMatrix1to2[0][0] = -2.79767935010148; fWeightMatrix1to2[1][0] = 0.198598152613599; fWeightMatrix1to2[2][0] = -0.839310567331374; fWeightMatrix1to2[3][0] = -2.41655129126527; fWeightMatrix1to2[4][0] = -0.785337957915004; fWeightMatrix1to2[5][0] = -0.284102330591968; fWeightMatrix1to2[6][0] = -0.930218495563177; fWeightMatrix1to2[7][0] = -2.05118978594129; fWeightMatrix1to2[8][0] = 0.116610354071821; fWeightMatrix1to2[9][0] = 0.0784551718737897; fWeightMatrix1to2[10][0] = -2.04627519279091; fWeightMatrix1to2[11][0] = -0.220395412327783; fWeightMatrix1to2[12][0] = -0.38449003554811; fWeightMatrix1to2[0][1] = 1.04147068562696; fWeightMatrix1to2[1][1] = 0.278071718233304; fWeightMatrix1to2[2][1] = -0.223988222871651; fWeightMatrix1to2[3][1] = -2.19931836504218; fWeightMatrix1to2[4][1] = -0.922986679196998; fWeightMatrix1to2[5][1] = 1.14258539510047; fWeightMatrix1to2[6][1] = 1.28458844300667; fWeightMatrix1to2[7][1] = 0.750776700205342; fWeightMatrix1to2[8][1] = 0.0338100966595737; fWeightMatrix1to2[9][1] = 2.00701879290086; fWeightMatrix1to2[10][1] = -1.49939084954803; fWeightMatrix1to2[11][1] = -1.29905179862033; fWeightMatrix1to2[12][1] = -0.383186747680667; fWeightMatrix1to2[0][2] = -2.48241765895656; fWeightMatrix1to2[1][2] = 0.0861499439814454; fWeightMatrix1to2[2][2] = 1.3490021171966; fWeightMatrix1to2[3][2] = -1.27572962611768; fWeightMatrix1to2[4][2] = 1.19493656979659; fWeightMatrix1to2[5][2] = 2.59131178646392; fWeightMatrix1to2[6][2] = -1.85171205094105; fWeightMatrix1to2[7][2] = -1.22902157171892; fWeightMatrix1to2[8][2] = 0.62214794801425; fWeightMatrix1to2[9][2] = -0.63598839894873; fWeightMatrix1to2[10][2] = 0.338033257927143; fWeightMatrix1to2[11][2] = -1.16277852163207; fWeightMatrix1to2[12][2] = 1.36848168859001; fWeightMatrix1to2[0][3] = -1.23971788643401; fWeightMatrix1to2[1][3] = 0.485490336535873; fWeightMatrix1to2[2][3] = 1.94942951868379; fWeightMatrix1to2[3][3] = -2.04467269250976; fWeightMatrix1to2[4][3] = -2.04771883924968; fWeightMatrix1to2[5][3] = -3.2549151368402; fWeightMatrix1to2[6][3] = -0.472456036810413; fWeightMatrix1to2[7][3] = -2.08856764780248; fWeightMatrix1to2[8][3] = -1.71786484163265; fWeightMatrix1to2[9][3] = -1.3964768864128; fWeightMatrix1to2[10][3] = 1.9739364256655; fWeightMatrix1to2[11][3] = -0.981230764062923; fWeightMatrix1to2[12][3] = -1.79436811132568; fWeightMatrix1to2[0][4] = 1.14054105189115; fWeightMatrix1to2[1][4] = -1.50120540878702; fWeightMatrix1to2[2][4] = -1.25691789900225; fWeightMatrix1to2[3][4] = -1.50097658904816; fWeightMatrix1to2[4][4] = 0.442696217021724; fWeightMatrix1to2[5][4] = 1.16229127269743; fWeightMatrix1to2[6][4] = 0.37135069646294; fWeightMatrix1to2[7][4] = -0.858753146152104; fWeightMatrix1to2[8][4] = -2.8624644562344; fWeightMatrix1to2[9][4] = -1.57620078378941; fWeightMatrix1to2[10][4] = -1.77743426879767; fWeightMatrix1to2[11][4] = -1.74946835849515; fWeightMatrix1to2[12][4] = -1.58699796542755; fWeightMatrix1to2[0][5] = -0.444329648565698; fWeightMatrix1to2[1][5] = 0.805976383514058; fWeightMatrix1to2[2][5] = 2.6695305976287; fWeightMatrix1to2[3][5] = -0.635117630108887; fWeightMatrix1to2[4][5] = -0.662602913486518; fWeightMatrix1to2[5][5] = -5.22387152349261; fWeightMatrix1to2[6][5] = 0.556562902286743; fWeightMatrix1to2[7][5] = 0.71619170006161; fWeightMatrix1to2[8][5] = -1.47918145580142; fWeightMatrix1to2[9][5] = -1.28794407777567; fWeightMatrix1to2[10][5] = 0.477090445361026; fWeightMatrix1to2[11][5] = 1.15730191743743; fWeightMatrix1to2[12][5] = -0.226284006805237; fWeightMatrix1to2[0][6] = -0.854591398614513; fWeightMatrix1to2[1][6] = 0.109640686705328; fWeightMatrix1to2[2][6] = -0.285818950543093; fWeightMatrix1to2[3][6] = 1.88018678836037; fWeightMatrix1to2[4][6] = 1.10494400089551; fWeightMatrix1to2[5][6] = 3.02294965017787; fWeightMatrix1to2[6][6] = -0.568082987814947; fWeightMatrix1to2[7][6] = -0.275852165685124; fWeightMatrix1to2[8][6] = -1.54279905467922; fWeightMatrix1to2[9][6] = -1.41059649713974; fWeightMatrix1to2[10][6] = -2.53991025113167; fWeightMatrix1to2[11][6] = -1.61585562186407; fWeightMatrix1to2[12][6] = -1.69156892307247; fWeightMatrix1to2[0][7] = 2.15681148841411; fWeightMatrix1to2[1][7] = -3.56158287507854; fWeightMatrix1to2[2][7] = 2.01684920617466; fWeightMatrix1to2[3][7] = -3.30345727295307; fWeightMatrix1to2[4][7] = 1.15811898075532; fWeightMatrix1to2[5][7] = -8.31236619817708; fWeightMatrix1to2[6][7] = 0.195197943434322; fWeightMatrix1to2[7][7] = 0.632530681630284; fWeightMatrix1to2[8][7] = -2.76712560649348; fWeightMatrix1to2[9][7] = 0.648501396065684; fWeightMatrix1to2[10][7] = -0.060606662157841; fWeightMatrix1to2[11][7] = -1.86377225007063; fWeightMatrix1to2[12][7] = -3.93784731543368; fWeightMatrix1to2[0][8] = -1.95491018155464; fWeightMatrix1to2[1][8] = -0.63416944378585; fWeightMatrix1to2[2][8] = 2.13046366308703; fWeightMatrix1to2[3][8] = -0.672364971687449; fWeightMatrix1to2[4][8] = -0.0991555618838931; fWeightMatrix1to2[5][8] = -1.18814120018577; fWeightMatrix1to2[6][8] = -1.30725700488671; fWeightMatrix1to2[7][8] = -1.88788393660455; fWeightMatrix1to2[8][8] = -0.805606427086462; fWeightMatrix1to2[9][8] = -1.70152217463897; fWeightMatrix1to2[10][8] = 1.30962372166818; fWeightMatrix1to2[11][8] = -1.35473479740853; fWeightMatrix1to2[12][8] = -1.15582083899341; fWeightMatrix1to2[0][9] = 1.58584314910853; fWeightMatrix1to2[1][9] = 0.01710691260552; fWeightMatrix1to2[2][9] = -0.595522215088183; fWeightMatrix1to2[3][9] = 1.49566248521914; fWeightMatrix1to2[4][9] = -1.84536638913948; fWeightMatrix1to2[5][9] = 1.21065474444273; fWeightMatrix1to2[6][9] = 0.964273143234081; fWeightMatrix1to2[7][9] = -1.00691279125702; fWeightMatrix1to2[8][9] = -1.10278803121112; fWeightMatrix1to2[9][9] = -0.123269817672764; fWeightMatrix1to2[10][9] = -1.05377740543055; fWeightMatrix1to2[11][9] = 0.518465921484499; fWeightMatrix1to2[12][9] = 1.87071835411799; fWeightMatrix1to2[0][10] = 0.855910531500272; fWeightMatrix1to2[1][10] = 1.13145396589903; fWeightMatrix1to2[2][10] = -2.46628217161682; fWeightMatrix1to2[3][10] = 1.54716558102936; fWeightMatrix1to2[4][10] = -2.13420576537523; fWeightMatrix1to2[5][10] = -0.467183699488057; fWeightMatrix1to2[6][10] = -2.28699331305911; fWeightMatrix1to2[7][10] = -1.80677482083574; fWeightMatrix1to2[8][10] = -0.943344278107537; fWeightMatrix1to2[9][10] = 0.472781925909283; fWeightMatrix1to2[10][10] = 0.322606965661809; fWeightMatrix1to2[11][10] = 0.92233713255338; fWeightMatrix1to2[12][10] = -0.632220664797621; fWeightMatrix1to2[0][11] = -0.720861499355094; fWeightMatrix1to2[1][11] = -1.26072019007322; fWeightMatrix1to2[2][11] = 1.48702184458091; fWeightMatrix1to2[3][11] = 1.36925581482643; fWeightMatrix1to2[4][11] = -1.93521128813243; fWeightMatrix1to2[5][11] = -1.51348470777351; fWeightMatrix1to2[6][11] = -2.12038694139962; fWeightMatrix1to2[7][11] = -0.820175396924206; fWeightMatrix1to2[8][11] = -0.536233482947093; fWeightMatrix1to2[9][11] = -0.0453083191614878; fWeightMatrix1to2[10][11] = 0.346182270931998; fWeightMatrix1to2[11][11] = 0.889436893276093; fWeightMatrix1to2[12][11] = 0.666511420169445; fWeightMatrix1to2[0][12] = -1.10677062794328; fWeightMatrix1to2[1][12] = -0.700618109472243; fWeightMatrix1to2[2][12] = -2.5526725323695; fWeightMatrix1to2[3][12] = -2.14132221321128; fWeightMatrix1to2[4][12] = -2.10113153859107; fWeightMatrix1to2[5][12] = -1.0916530116138; fWeightMatrix1to2[6][12] = -1.39043858206376; fWeightMatrix1to2[7][12] = -1.16265687614228; fWeightMatrix1to2[8][12] = -0.724570276812454; fWeightMatrix1to2[9][12] = -2.34397627946324; fWeightMatrix1to2[10][12] = -1.97811826041045; fWeightMatrix1to2[11][12] = -1.74537316084703; fWeightMatrix1to2[12][12] = -0.922798337901103; fWeightMatrix1to2[0][13] = -0.90103983136439; fWeightMatrix1to2[1][13] = -2.60153121877786; fWeightMatrix1to2[2][13] = -2.84570589364801; fWeightMatrix1to2[3][13] = -1.07633818113715; fWeightMatrix1to2[4][13] = -1.89060079679535; fWeightMatrix1to2[5][13] = 0.264873646588341; fWeightMatrix1to2[6][13] = -1.85098403392461; fWeightMatrix1to2[7][13] = -0.886133738033973; fWeightMatrix1to2[8][13] = 0.661463414459084; fWeightMatrix1to2[9][13] = 0.338891762777818; fWeightMatrix1to2[10][13] = 0.302107573081142; fWeightMatrix1to2[11][13] = -0.0263971813983717; fWeightMatrix1to2[12][13] = -0.643602745241412; fWeightMatrix1to2[0][14] = 0.753287367033028; fWeightMatrix1to2[1][14] = -0.448045737621768; fWeightMatrix1to2[2][14] = -2.59510861983014; fWeightMatrix1to2[3][14] = -1.74886343946604; fWeightMatrix1to2[4][14] = -1.82009886542976; fWeightMatrix1to2[5][14] = 0.381409912290923; fWeightMatrix1to2[6][14] = -0.0991199218890959; fWeightMatrix1to2[7][14] = 0.012338486268858; fWeightMatrix1to2[8][14] = -0.345719407395779; fWeightMatrix1to2[9][14] = 0.191553077066982; fWeightMatrix1to2[10][14] = 0.755546881547668; fWeightMatrix1to2[11][14] = -1.4380032782942; fWeightMatrix1to2[12][14] = -0.281632629286099; // weight matrix from layer 2 to 3 fWeightMatrix2to3[0][0] = 0.921052653395056; fWeightMatrix2to3[0][1] = -1.17370919896776; fWeightMatrix2to3[0][2] = -1.10464882299766; fWeightMatrix2to3[0][3] = 0.804606692005168; fWeightMatrix2to3[0][4] = 1.32260032337324; fWeightMatrix2to3[0][5] = -0.64693067038242; fWeightMatrix2to3[0][6] = 0.32983002158932; fWeightMatrix2to3[0][7] = 1.75810438947916; fWeightMatrix2to3[0][8] = -0.524154561668716; fWeightMatrix2to3[0][9] = 1.02009119708774; fWeightMatrix2to3[0][10] = 1.39281626228497; fWeightMatrix2to3[0][11] = 0.143413085190052; fWeightMatrix2to3[0][12] = -0.693368895060533; fWeightMatrix2to3[0][13] = 0.558378698933857; } inline double ReadH6AONN5MEMLP::GetMvaValue__( const std::vector& inputValues ) const { if (inputValues.size() != (unsigned int)fLayerSize[0]-1) { std::cout << "Input vector needs to be of size " << fLayerSize[0]-1 << std::endl; return 0; } for (int l=0; l