SHOGUN
v2.0.0
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
shogun
classifier
FeatureBlockLogisticRegression.h
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General Public License as published by
4
* the Free Software Foundation; either version 3 of the License, or
5
* (at your option) any later version.
6
*
7
* Copyright (C) 2012 Sergey Lisitsyn
8
*/
9
10
#ifndef FEATUREBLOCKLOGISTICREGRESSION_H_
11
#define FEATUREBLOCKLOGISTICREGRESSION_H_
12
13
#include <
shogun/lib/config.h
>
14
#include <
shogun/lib/IndexBlockRelation.h
>
15
#include <
shogun/machine/LinearMachine.h
>
16
17
namespace
shogun
18
{
30
class
CFeatureBlockLogisticRegression
:
public
CLinearMachine
31
{
32
33
public
:
34
MACHINE_PROBLEM_TYPE
(
PT_BINARY
)
35
36
37
CFeatureBlockLogisticRegression
();
38
46
CFeatureBlockLogisticRegression
(
47
float64_t
z,
CDotFeatures
* training_data,
48
CBinaryLabels
* training_labels,
CIndexBlockRelation
* task_relation);
49
51
virtual
~CFeatureBlockLogisticRegression
();
52
54
virtual
const
char
*
get_name
()
const
55
{
56
return
"FeatureBlockLogisticRegression"
;
57
}
58
62
CIndexBlockRelation
*
get_feature_relation
()
const
;
63
67
void
set_feature_relation
(
CIndexBlockRelation
* feature_relation);
68
69
virtual
float64_t
apply_one
(int32_t vec_idx);
70
72
int32_t
get_max_iter
()
const
;
74
float64_t
get_q
()
const
;
76
int32_t
get_regularization
()
const
;
78
int32_t
get_termination
()
const
;
80
float64_t
get_tolerance
()
const
;
82
float64_t
get_z
()
const
;
83
85
void
set_max_iter
(int32_t max_iter);
87
void
set_q
(
float64_t
q);
89
void
set_regularization
(int32_t regularization);
91
void
set_termination
(int32_t termination);
93
void
set_tolerance
(
float64_t
tolerance);
95
void
set_z
(
float64_t
z);
96
97
protected
:
98
99
virtual
SGVector<float64_t>
apply_get_outputs
(
CFeatures
* data);
100
102
virtual
bool
train_machine
(
CFeatures
* data=NULL);
103
104
private
:
105
107
void
register_parameters();
108
109
protected
:
110
112
CIndexBlockRelation
*
m_feature_relation
;
113
115
int32_t
m_regularization
;
116
118
int32_t
m_termination
;
119
121
int32_t
m_max_iter
;
122
124
float64_t
m_tolerance
;
125
127
float64_t
m_q
;
128
130
float64_t
m_z
;
131
132
};
133
}
134
#endif
SHOGUN
Machine Learning Toolbox - Documentation