Home
libcuml
cucim
cudf-java
cudf
cugraph
cuml
cuproj
cuspatial
cuvs
cuxfilter
dask-cuda
dask-cudf
kvikio
libcudf
libcuml
libcuproj
libcuspatial
libkvikio
libucxx
raft
rapids-cmake
rmm
nightly (24.12)
nightly (24.12)
stable (24.10)
legacy (24.08)
include
cuml
linear_model
qn.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2021-2022, NVIDIA CORPORATION.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
#pragma once
17
18
#include <stdbool.h>
19
20
#ifdef __cplusplus
21
namespace
ML::GLM
{
22
23
extern
"C"
{
24
#endif
25
27
enum
qn_loss_type
{
31
QN_LOSS_LOGISTIC
= 0,
35
QN_LOSS_SQUARED
= 1,
39
QN_LOSS_SOFTMAX
= 2,
43
QN_LOSS_SVC_L1
= 3,
47
QN_LOSS_SVC_L2
= 4,
51
QN_LOSS_SVR_L1
= 5,
55
QN_LOSS_SVR_L2
= 6,
59
QN_LOSS_ABS
= 7,
61
QN_LOSS_UNKNOWN
= 99
62
};
63
#ifndef __cplusplus
64
typedef
enum
qn_loss_type
qn_loss_type
;
65
#endif
66
67
struct
qn_params
{
69
qn_loss_type
loss
;
71
double
penalty_l1
;
73
double
penalty_l2
;
75
double
grad_tol
;
77
double
change_tol
;
79
int
max_iter
;
81
int
linesearch_max_iter
;
83
int
lbfgs_memory
;
85
int
verbose
;
87
bool
fit_intercept
;
96
bool
penalty_normalized
;
97
98
#ifdef __cplusplus
99
qn_params
()
100
: loss(
QN_LOSS_UNKNOWN
),
101
penalty_l1(0),
102
penalty_l2(0),
103
grad_tol(1e-4),
104
change_tol(1e-5),
105
max_iter(1000),
106
linesearch_max_iter(50),
107
lbfgs_memory(5),
108
verbose(0),
109
fit_intercept(true),
110
penalty_normalized(true)
111
{
112
}
113
#endif
114
};
115
116
#ifndef __cplusplus
117
typedef
struct
qn_params
qn_params
;
118
#endif
119
120
#ifdef __cplusplus
121
}
122
}
123
#endif
ML::GLM
Definition:
glm.hpp:23
qn_params
struct qn_params qn_params
Definition:
qn.h:117
qn_loss_type
qn_loss_type
Definition:
qn.h:27
QN_LOSS_UNKNOWN
@ QN_LOSS_UNKNOWN
Definition:
qn.h:61
QN_LOSS_SOFTMAX
@ QN_LOSS_SOFTMAX
Definition:
qn.h:39
QN_LOSS_SVR_L1
@ QN_LOSS_SVR_L1
Definition:
qn.h:51
QN_LOSS_SQUARED
@ QN_LOSS_SQUARED
Definition:
qn.h:35
QN_LOSS_SVR_L2
@ QN_LOSS_SVR_L2
Definition:
qn.h:55
QN_LOSS_SVC_L1
@ QN_LOSS_SVC_L1
Definition:
qn.h:43
QN_LOSS_ABS
@ QN_LOSS_ABS
Definition:
qn.h:59
QN_LOSS_SVC_L2
@ QN_LOSS_SVC_L2
Definition:
qn.h:47
QN_LOSS_LOGISTIC
@ QN_LOSS_LOGISTIC
Definition:
qn.h:31
qn_params
Definition:
qn.h:67
qn_params::fit_intercept
bool fit_intercept
Definition:
qn.h:87
qn_params::lbfgs_memory
int lbfgs_memory
Definition:
qn.h:83
qn_params::grad_tol
double grad_tol
Definition:
qn.h:75
qn_params::penalty_normalized
bool penalty_normalized
Definition:
qn.h:96
qn_params::penalty_l1
double penalty_l1
Definition:
qn.h:71
qn_params::loss
qn_loss_type loss
Definition:
qn.h:69
qn_params::verbose
int verbose
Definition:
qn.h:85
qn_params::change_tol
double change_tol
Definition:
qn.h:77
qn_params::max_iter
int max_iter
Definition:
qn.h:79
qn_params::penalty_l2
double penalty_l2
Definition:
qn.h:73
qn_params::linesearch_max_iter
int linesearch_max_iter
Definition:
qn.h:81
Generated by
1.9.1