fitrgp with censored data

% I can use fitgp to do linear regression without a problem.
m = 0.5;
b = 0.2;
x = [1,2,3,4,5,6,7,8,9,10];
y = m*x + b + 0.1*randn(1,length(x));
% Linear regression can easily be done by maximizing the log likelihood of N(y-(b2*x+b1),sigma)
% I can also use the fitrgp funtion to get the coefficients as well.
gpMod1 = fitrgp(x,y,'Basis','linear','Beta',[1;1],'Sigma',0.1);
% I can also use a custom function for fitrgp
hfcn = @(X) = X;
gpMod2 = fitrgp(x,y,'Basis',hfcn,'Beta',[1;1],'Sigma',0.1);
% However, if I have censored data, I am not sure how to impliment fitrgp or if it is possible. The normal way would be maximizing,
C = [1,1,1,1,1,0,0,0,0,0]; % are my classes for the right and left censored data
logL = @(g) -sum(C.*log(normcdf(y,b2*x+b1,sigma)) + (1-C)*log(1-normcdf(y,b2*x+b1,sigma)));
% or alternatively I could compact it since normcdf(t) = 1-normcdf(-t) so that,
C = [1,1,1,1,1,-1,-1,-1,-1,-1]; % are my classes for the right and left censored data
logL = @(g) -sum(C.*log(normcdf(y,b2*x+b1,sigma)));
% I do not know how to do this with fitrgp or if it is possible since I can't define the likelihood, only the basis. I am aware of other packages out there like GPML but I would like to know if I can do it with fitrgp. Thanks!
.

Antworten (1)

Aditya Patil
Aditya Patil am 5 Apr. 2021

0 Stimmen

fitrgp currently does not support censored data. This might be implemented in any of the future releases.
As a workaround, you might be able to use the tobit models in Toolkit on Econometrics and Economics Teaching. You can also use the Cox Proportional Hazards Model for Censored Data.
Another alternative would be to use mle function to fit custom pdf to the censored data.

3 Kommentare

Gordie Howe
Gordie Howe am 6 Apr. 2021
Thanks for the reply. I can fit the model any number of ways with my own construction (as I have done). I want to use a GP to do it and was wondering if fitrgp could do it. So it cannot handle censored data, but it can do classification correct? (which would be the same thing in my case) It is very vague on this point. It mentions 'classification' in the help section. Is it not able to be used as a classifier?
Aditya Patil
Aditya Patil am 7 Apr. 2021
fitrgp is intended for regression, but you can consider classification as regression with target variable being probability.
Gordie Howe
Gordie Howe am 8 Apr. 2021
So how would you use fitrgp for that? Using my censored data as the class?

Melden Sie sich an, um zu kommentieren.

Produkte

Version

R2018a

Gefragt:

am 31 Mär. 2021

Kommentiert:

am 8 Apr. 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by