v2.0.0
Loading...
Searching...
No Matches
ml_pipeline.cpp
Go to the documentation of this file.
1//=============================================================================================================
34
35//=============================================================================================================
36// INCLUDES
37//=============================================================================================================
38
39#include "ml_pipeline.h"
40
41//=============================================================================================================
42// QT INCLUDES
43//=============================================================================================================
44
45#include <QDebug>
46
47//=============================================================================================================
48// STL INCLUDES
49//=============================================================================================================
50
51#include <stdexcept>
52
53//=============================================================================================================
54// USED NAMESPACES
55//=============================================================================================================
56
57using namespace MLLIB;
58
59//=============================================================================================================
60// DEFINE MEMBER METHODS
61//=============================================================================================================
62
66
67//=============================================================================================================
68
70{
71 m_scaler = scaler;
72 m_hasScaler = true;
73}
74
75//=============================================================================================================
76
78{
79 m_model = model;
80}
81
82//=============================================================================================================
83
85{
86 if (!m_hasScaler) {
87 qWarning() << "MlPipeline::fitScaler – no scaler has been set.";
88 return;
89 }
90
91 m_scaler.fit(X);
92}
93
94//=============================================================================================================
95
97{
98 if (!m_model) {
99 throw std::runtime_error("MlPipeline::predict – no model has been set.");
100 }
101
102 if (m_hasScaler) {
103 MlTensor Xs = m_scaler.transform(X);
104 return m_model->predict(Xs);
105 }
106
107 return m_model->predict(X);
108}
MlPipeline class declaration.
constexpr int X
Machine learning (models, pipelines, ONNX Runtime integration).
QSharedPointer< MlModel > SPtr
Definition ml_model.h:66
void fitScaler(const MlTensor &X)
MlTensor predict(const MlTensor &X) const
void setScaler(const MlScaler &scaler)
void setModel(MlModel::SPtr model)
Feature scaler (StandardScaler or MinMaxScaler).
Definition ml_scaler.h:62
void fit(const MlTensor &data)
Definition ml_scaler.cpp:66
N-dimensional tensor with contiguous row-major (C-order) float32 storage.
Definition ml_tensor.h:79