BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Abbas_Arkawazi
Fluorite | Level 6

hello everybody can you help me in the problem in how we can chose the intial values for parms in the proc nlmixed? is there specified method can I chose from it the intial values for the parameters

please help me, my distribution and the program is:

 

proc nlmixed data=WORK.y;
parms b0=1 b1=2 b2=2=1 a=1 b=1 s=2;
m =b0+(b1*age)+(b2*creatin)+(b3*gender2);
y=urea;
if status_u=1 then f=((a*b)*((1-exp(-exp((y-m)/s)))**(a-1))*((1+((exp(exp((y-m)/s))-1)**(a)))**(-(b+1)))) /(s*exp((-a*exp((y-m)/s))-((y-m)/s))) ;
else f= (1+(((1-exp(-exp((y-m)/s)))/(exp(-exp((y-m)/s))))**a))**-b ;
ll=log(f);
model y ~ general(ll);
run;

1 ACCEPTED SOLUTION

Accepted Solutions
Rick_SAS
SAS Super FREQ

It looks like you have a typo on the PARMS statement?
parms b0=1 b1=2 b2=2=1 a=1 b=1 s=2;

 

I know of three ways to choose initial parameters:

  1. The brute force method: Use a grid search to find initial parameter values
  2. Fit a reduced model. Sometimes your model is a generalization of a simpler model that has fewer parameters. You can estimate the simpler model and use those estimates as initial guesses for the full model.
  3. Use the method of moments for parameters that are connected to means, standard deviations, etc.

 

View solution in original post

2 REPLIES 2
Rick_SAS
SAS Super FREQ

It looks like you have a typo on the PARMS statement?
parms b0=1 b1=2 b2=2=1 a=1 b=1 s=2;

 

I know of three ways to choose initial parameters:

  1. The brute force method: Use a grid search to find initial parameter values
  2. Fit a reduced model. Sometimes your model is a generalization of a simpler model that has fewer parameters. You can estimate the simpler model and use those estimates as initial guesses for the full model.
  3. Use the method of moments for parameters that are connected to means, standard deviations, etc.

 

Abbas_Arkawazi
Fluorite | Level 6
Thank u very very much for your help, really it is a very important methods to chose initial values.

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 2 replies
  • 685 views
  • 3 likes
  • 2 in conversation