MeLOn
svmData.h
Go to the documentation of this file.
1 /**********************************************************************************
2 * Copyright (c) 2020 Process Systems Engineering (AVT.SVT), RWTH Aachen University
3 *
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License 2.0 which is available at
6 * http://www.eclipse.org/legal/epl-2.0.
7 *
8 * SPDX-License-Identifier: EPL-2.0
9 *
10 * @file svmData.h
11 *
12 * @brief File containing declaration of a struct for storing SVM data.
13 *
14 **********************************************************************************/
15 
16 #pragma once
17 
18 #include <vector> // std::vector
19 #include <memory> // std::shared_ptr, std::unique_ptr
20 
21 #include "modelData.h"
22 #include "scaler.h"
23 #include "kernel.h"
24 
25 namespace melon {
26 
31  enum KERNEL_FUNCTION {
32  RBF
33  };
34 
40  struct SvmData : public ModelData {
41  double rho;
42  std::vector<std::vector<double>> supportVectors;
43  std::vector<double> dualCoefficients;
46  std::vector<double> kernelParameters;
48  std::shared_ptr<const ScalerData> inputScalerData;
49  std::shared_ptr<const ScalerData> outputScalerData;
50  };
51 }
kernel.h
melon::RBF
@ RBF
Definition: svmData.h:45
melon::SvmData::supportVectors
std::vector< std::vector< double > > supportVectors
Definition: svmData.h:55
melon::KERNEL_FUNCTION
KERNEL_FUNCTION
enum for representing different kernel functions
Definition: svmData.h:44
scaler.h
modelData.h
melon::SvmData::outputScalerData
std::shared_ptr< const ScalerData > outputScalerData
Definition: svmData.h:62
melon::SvmData::inputScalerData
std::shared_ptr< const ScalerData > inputScalerData
Definition: svmData.h:61
ModelData
Abstract class from which specific model data object can be derived and enabling polymorphism.
Definition: modelData.h:22
melon::SvmData::kernelFunction
KERNEL_FUNCTION kernelFunction
Definition: svmData.h:58
melon::SvmData::rho
double rho
Definition: svmData.h:54
melon::SvmData::kernelParameters
std::vector< double > kernelParameters
Definition: svmData.h:59
melon::SvmData::dualCoefficients
std::vector< double > dualCoefficients
Definition: svmData.h:56
melon
Definition: kernel.h:21