/*! \page cppexamples PMMLlib C++ examples \section sectionA Create a neural network in a new PMML file : \verbatim PMMLlib::PMMLlib p; // Set Header node p.SetHeader("copyright", "description", "name", "version", "annotation"); // Set DataDictionnary node and its DataField nodes int nInput = 8; vectorvfieldNameI(nInput); vfieldNameI[0] = "rw"; vfieldNameI[1] = "r"; vfieldNameI[2] = "tu"; vfieldNameI[3] = "tl"; vfieldNameI[4] = "hu"; vfieldNameI[5] = "hl"; vfieldNameI[6] = "l"; VfieldNameI[7] = "kw"; string fieldNameO("yhat"); string opType = "continuous"; string dataType = "float"; for(int j=0 ; jvnorm1(nInput); vnorm1[0] = -2.889932e-01; vnorm1[1] = -5.756638e-01; vnorm1[2] = -1.699313e-01; vnorm1[3] = -1.707007e-01; vnorm1[4] = -3.302777e-02; vnorm1[5] = -4.562070e-02; vnorm1[6] = -1.155882e-01; vnorm1[7] = -5.780019e-02; vectorvorig2(nInput); vorig2[0] = 9.999901e-02; vorig2[1] = 2.504894e+04; vorig2[2] = 8.933486e+04; vorig2[3] = 8.955232e+01; vorig2[4] = 1.050003e+03; vorig2[5] = 7.600007e+02; vorig2[6] = 1.400018e+03; vorig2[7] = 1.095001e+04; double norm2=0; for(int j=0 ; jweights1(nWeights1); weights1[0] = 7.536629e-01; weights1[1] = 1.653660e-03; weights1[2] = 4.725001e-03; weights1[3] = 9.969786e-03; weights1[4] = 1.787976e-01; weights1[5] = -1.809809e-01; weights1[6] = -1.735688e-01; weights1[7] = 8.559675e-02; p.AddNeuron(idN1, bias1, conNb1, from1, weights1); // Add second NeuralLayer and its neuron p.AddNeuralLayer(PMMLlib::kIDENTITY); int idN2 = 9; double bias2 = -1.745483; int conNb2 = nWeights2; int from2 = 8; int nWeights2 = 1; vectorweights2(nWeights2); weights2[0] = 6.965512e+00; p.AddNeuron(idN2, bias2, conNb2, from2, weights2); // Set NeuralOutput int idO = 9; double dorig1 = 0; double dnorm1 = -5.873935e-01; double dorig2 = 7.781171e+01 ; double dnorm2 = 0; p.AddNeuralOutput(idO, fieldNameO, opType, dataType, dorig1, dnorm1, dorig2, dnorm2); // Generate the PMML file string pmmlFilename = "myPmmlFile.pmml"; p.Write( pmmlFilename ); \endverbatim The matching PMML file is: \verbatim
Tests unitaires PMMLlib
\endverbatim \section sectionB Create a regression model in new PMML file : \verbatim PMMLlib::PMMLlib p; // Header node p.SetHeader("copyright", "description", "name", "version", "annotation"); // DataDictionnary node and its DataField nodes int nData = 3; vectorfieldName(nData); fieldName[0] = "x6"; fieldName[1] = "x8"; fieldName[2] = "x1"; vectordisplayName(nData); displayName[0] = " x_{6}"; displayName[1] = " x_{8}"; displayName[2] = " x_{1}"; vectorleftMargin(nData); leftMargin[0] = 1.1e+01; leftMargin[1] = 2.81e+01; leftMargin[2] = 6.36e+00; vectorrightMargin(nData); rightMargin[0] = 2.3e+01; rightMargin[1] = 7.67e+01; rightMargin[2] = 1.251e+01; for(int j=0; jnumPredCoeff(nData-1); numPredCoeff[0] = 0.4759134; numPredCoeff[1] = 0.1428838; for(int j=0; jpredTermCoeff(nData-1); predTermCoeff[0] = -0.02201903; predTermCoeff[1] = 0.000536256; vector< vector > fieldRefVect(nData-1); vectorfieldRef0(2); fieldRef0[0] = fieldName[0]; fieldRef0[1] = fieldName[1]; vectorfieldRef1(3); fieldRef1[0] = fieldName[0]; fieldRef1[1] = fieldName[0]; fieldRef1[2] = fieldName[1]; fieldRefVect[0] = fieldRef0; fieldRefVect[nData-2] = fieldRef1; for(int j=0; j
Tests unitaires PMMLlib
\endverbatim */