dso-org/deep-symbolic-optimization

How do I used it for binomial distribution?

junluodigitcompass opened this issue · 3 comments

I am using dso for a response of 0 and 1, how do I set p to be Bernoulli distribution below?

Thank you!

image

Sorry, can you provide more details? Not sure what “response” means. Are you saying that you are searching over sequences where each token of the sequence is binary?

Sorry, can you provide more details? Not sure what “response” means. Are you saying that you are searching over sequences where each token of the sequence is binary?

response refers to y. it is like logistic regression model.
we have data X and Y. X are some variables and Y is the indicator of whether the event happens, for example, if the borrowers default, then it is 1 otherwise 0.
The underlying distribution of Y is binomial.

I noticed there is a parameter: "regressor": "dso_least_squares"
is there a way I can define customized cost function. In that case, do I also need provide gradient fun for minimization purposes?

Thanks.

Sounds like you are solving a symbolic regression (regression) task where your response variable takes on binary values.

You can use the standard regression config for this, though your expressions are free to output continuous values. An alternative would be to customize the dso.Task so that y = 0 if the expression takes on a value < 0 and y = 1 otherwise, for example. This should be a quick change.

Note the "distribution" your response variable takes on has nothing to do with the p in the equation above, which is the dso.Policy object that represents a parameterized distribution over symbolic expressions.

is there a way I can define customized cost function

DSO is a generic combinatorial optimization framework, so you can customize any search space or reward function you want.