hyperparameters.h
Go to the documentation of this file.
1 #ifndef DNAI_MODELS_ML_HYPERPARAMETERS_H
2 #define DNAI_MODELS_ML_HYPERPARAMETERS_H
3 
4 #include <QObject>
5 #include <QQmlPropertyMap>
6 
8 
9 namespace dnai {
10 namespace models {
11 namespace ml {
12 class HyperParameters : public QObject, public interfaces::ASerializable<HyperParameters>
13 {
14  Q_OBJECT
15  Q_PROPERTY(QQmlPropertyMap *data READ data WRITE setData NOTIFY dataChanged)
16 
17  Q_PROPERTY(int epoch READ epoch WRITE setEpoch NOTIFY epochChanged)
18  Q_PROPERTY(int batchSize READ batchSize WRITE setBatchSize NOTIFY batchSizeChanged)
19  Q_PROPERTY(float customLoss READ customLoss WRITE setCustomLoss NOTIFY customLossChanged)
20  Q_PROPERTY(QString lossFunction READ lossFunction WRITE setLossFunction NOTIFY lossFunctionChanged)
21  Q_PROPERTY(QString optimizer READ optimizerNam WRITE setoptimizerNam NOTIFY optimizerNamChanged)
22  Q_PROPERTY(float learningRate READ learningRate WRITE setLearningRate NOTIFY learningRateChanged)
23  Q_PROPERTY(float epsilon READ epsilon WRITE setEpsilon NOTIFY epsilonChanged)
24  Q_PROPERTY(float decay READ decay WRITE setDecay NOTIFY decayChanged)
25  Q_PROPERTY(float rho READ rho WRITE setRho NOTIFY rhoChanged)
26 
27 private:
28  QQmlPropertyMap m_data;
29 
30 public:
32  virtual ~HyperParameters();
33 
34 public:
35  QQmlPropertyMap *data();
36 
37  int epoch() const;
38 
39  int batchSize() const;
40 
41  float customLoss() const;
42 
43  QString lossFunction() const;
44 
45  QString optimizerNam() const;
46 
47  float learningRate() const;
48 
49  float epsilon() const;
50 
51  float decay() const;
52 
53  float rho() const;
54 
55 public slots:
56  void setData(QQmlPropertyMap *parameters);
57 
58  void setEpoch(int epoch);
59 
60  void setBatchSize(int batchSize);
61 
62  void setCustomLoss(float customLoss);
63 
64  void setLossFunction(const QString &lossFunction);
65 
66  void setoptimizerNam(const QString &optimizer);
67 
68  void setLearningRate(float learningRate);
69 
70  void setEpsilon(float epsilon);
71 
72  void setDecay(float decay);
73 
74  void setRho(float rho);
75 
76 signals:
77  void dataChanged(QQmlPropertyMap *parameters);
78 
79  void epochChanged(int epoch);
80 
81  void batchSizeChanged(int batchSize);
82 
83  void customLossChanged(float customLoss);
84 
85  void lossFunctionChanged(QString lossFunction);
86 
87  void optimizerNamChanged(QString optimizer);
88 
89  void learningRateChanged(float learningRate);
90 
91  void epsilonChanged(float epsilon);
92 
93  void decayChanged(float decay);
94 
95  void rhoChanged(float rho);
96 
97  // ISerializable interface
98 public:
99  void serialize(QJsonObject &obj) const;
100 
101 protected:
102  void _deserialize(const QJsonObject &obj);
103 };
104 
105 }
106 }
107 }
108 
109 #endif // DNAI_MODELS_ML_HYPERPARAMETERS_H
Definition: hyperparameters.h:12
void setoptimizerNam(const QString &optimizer)
Definition: hyperparameters.cpp:106
Allow inherited class to serialize and deserialize itself.
Definition: iserializable.h:33
void customLossChanged(float customLoss)
Definition: moc_hyperparameters.cpp:416
void lossFunctionChanged(QString lossFunction)
Definition: moc_hyperparameters.cpp:423
void batchSizeChanged(int batchSize)
Definition: moc_hyperparameters.cpp:409
void setBatchSize(int batchSize)
Definition: hyperparameters.cpp:79
void learningRateChanged(float learningRate)
Definition: moc_hyperparameters.cpp:437
void epsilonChanged(float epsilon)
Definition: moc_hyperparameters.cpp:444
void setLearningRate(float learningRate)
Definition: hyperparameters.cpp:115
void setDecay(float decay)
Definition: hyperparameters.cpp:133
void epochChanged(int epoch)
Definition: moc_hyperparameters.cpp:402
void setEpoch(int epoch)
Definition: hyperparameters.cpp:70
void optimizerNamChanged(QString optimizer)
Definition: moc_hyperparameters.cpp:430
void rhoChanged(float rho)
Definition: moc_hyperparameters.cpp:458
void serialize(QJsonObject &obj) const
Implement this function to serialize into QJsonObject.
Definition: hyperparameters.cpp:151
QQmlPropertyMap m_data
Definition: hyperparameters.h:28
void setEpsilon(float epsilon)
Definition: hyperparameters.cpp:124
void setData(QQmlPropertyMap *parameters)
Definition: hyperparameters.cpp:63
QString optimizerNam() const
Definition: hyperparameters.cpp:38
void decayChanged(float decay)
Definition: moc_hyperparameters.cpp:451
Definition: api.h:13
void dataChanged(QQmlPropertyMap *parameters)
Definition: moc_hyperparameters.cpp:395
void setCustomLoss(float customLoss)
Definition: hyperparameters.cpp:88
void _deserialize(const QJsonObject &obj)
Implement this function in order to use deserialize(const QJsonObject &obj)
Definition: hyperparameters.cpp:157
QString optimizer
Definition: hyperparameters.h:21
void setLossFunction(const QString &lossFunction)
Definition: hyperparameters.cpp:97
void setRho(float rho)
Definition: hyperparameters.cpp:142