summaryrefslogtreecommitdiff
path: root/dtrain/test/log_reg/bin_class.h
diff options
context:
space:
mode:
authorPatrick Simianer <p@simianer.de>2011-09-08 00:06:52 +0200
committerPatrick Simianer <p@simianer.de>2011-09-23 19:13:58 +0200
commit0269777fc54bc554c12107bdd5498f743df2a1ce (patch)
tree05032f88088c2154b4c0ce815bb176ac49dc9b7e /dtrain/test/log_reg/bin_class.h
parentbcf45fc73bd855a3003dee7a8a0b7551eeb0523b (diff)
a lot of stuff, fast_sparse_vector, perceptron, removed sofia, sample [...]
Diffstat (limited to 'dtrain/test/log_reg/bin_class.h')
-rw-r--r--dtrain/test/log_reg/bin_class.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/dtrain/test/log_reg/bin_class.h b/dtrain/test/log_reg/bin_class.h
new file mode 100644
index 00000000..3466109a
--- /dev/null
+++ b/dtrain/test/log_reg/bin_class.h
@@ -0,0 +1,22 @@
+#ifndef _BIN_CLASS_H_
+#define _BIN_CLASS_H_
+
+#include <vector>
+#include "sparse_vector.h"
+
+struct TrainingInstance {
+ // TODO add other info? loss for MIRA-type updates?
+ SparseVector<double> x_feature_map;
+ bool y;
+};
+
+struct Objective {
+ virtual ~Objective();
+
+ // returns f(x) and f'(x)
+ virtual double ObjectiveAndGradient(const SparseVector<double>& x,
+ const std::vector<TrainingInstance>& training_instances,
+ SparseVector<double>* g) const = 0;
+};
+
+#endif