Stan Math Library
4.9.0
Automatic Differentiation
|
__kernel void stan::math::opencl_kernels::ordered_logistic | ( | __global double * | logp_global, |
__global double * | lambda_derivative, | ||
__global double * | cuts_derivative, | ||
const __global int * | y_global, | ||
const __global double * | lambda_global, | ||
const __global double * | cuts, | ||
const int | N_instances, | ||
const int | N_classes, | ||
const int | is_y_vector, | ||
const int | is_cuts_matrix, | ||
const int | need_lambda_derivative, | ||
const int | need_cuts_derivative | ||
) |
GPU implementation of ordinal regression.
Must be run with at least N_instances threads and local size equal to LOCAL_SIZE_.
[out] | logp_global | partially summed log probability (1 value per work group) |
[out] | lambda_derivative | derivative wrt lambda |
[out] | cuts_derivative | partially summed derivative wrt cuts (1 column per work group) |
[in] | y_global | a scalar or vector of classes. |
[in] | lambda_global | vector of continuous lambda variables |
[in] | cuts | cutpoints vector |
N_instances | number of cases | |
N_classes | number of classes | |
is_y_vector | 0 or 1 - whether y is a vector (alternatively it is a scalar we need to broadcast) | |
is_cuts_matrix | 0 or 1 - whether cuts is a matrix (alternatively it is a vector we need to broadcast) | |
need_lambda_derivative | 0 or 1 - whether lambda_derivative needs to be computed | |
need_cuts_derivative | 0 or 1 - whether cuts_derivative needs to be computed |
Definition at line 41 of file ordered_logistic_lpmf.hpp.