File indexing completed on 2025-12-27 11:37:37
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030 #ifndef ROOT_TMVA_MethodLD
0031 #define ROOT_TMVA_MethodLD
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043 #include <vector>
0044
0045 #include "TMVA/MethodBase.h"
0046 #include "TMatrixDfwd.h"
0047
0048 namespace TMVA {
0049
0050 class MethodLD : public MethodBase {
0051
0052 public:
0053
0054
0055 MethodLD( const TString& jobName,
0056 const TString& methodTitle,
0057 DataSetInfo& dsi,
0058 const TString& theOption = "LD");
0059
0060
0061 MethodLD( DataSetInfo& dsi,
0062 const TString& theWeightFile);
0063
0064
0065 virtual ~MethodLD( void );
0066
0067 Bool_t HasAnalysisType( Types::EAnalysisType type, UInt_t numberClasses, UInt_t numberTargets ) override;
0068
0069
0070 void Train( void ) override;
0071
0072
0073 Double_t GetMvaValue( Double_t* err = nullptr, Double_t* errUpper = nullptr ) override;
0074
0075
0076 const std::vector<Float_t>& GetRegressionValues() override;
0077
0078 using MethodBase::ReadWeightsFromStream;
0079
0080 void AddWeightsXMLTo ( void* parent ) const override;
0081
0082 void ReadWeightsFromStream( std::istream & i ) override;
0083 void ReadWeightsFromXML ( void* wghtnode ) override;
0084
0085 const Ranking* CreateRanking() override;
0086 void DeclareOptions() override;
0087 void ProcessOptions() override;
0088
0089 protected:
0090
0091 void MakeClassSpecific( std::ostream&, const TString& ) const override;
0092 void GetHelpMessage() const override;
0093
0094 private:
0095
0096 Int_t fNRegOut;
0097
0098 TMatrixD *fSumMatx;
0099 TMatrixD *fSumValMatx;
0100 TMatrixD *fCoeffMatx;
0101 std::vector< std::vector<Double_t>* > *fLDCoeff;
0102
0103
0104 void Init( void ) override;
0105
0106
0107 void InitMatrices( void );
0108
0109
0110 void GetSum( void );
0111
0112
0113 void GetSumVal( void );
0114
0115
0116 void GetLDCoeff( void );
0117
0118
0119 void PrintCoefficients( void );
0120
0121 ClassDefOverride(MethodLD,0);
0122 };
0123 }
0124
0125 #endif