Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DevelopmentML estimator #129

Closed
jbogaardt opened this issue Feb 22, 2021 · 3 comments
Closed

DevelopmentML estimator #129

jbogaardt opened this issue Feb 22, 2021 · 3 comments

Comments

@jbogaardt
Copy link
Collaborator

With sparse triangle support, index and column values, and tight integration with sklearn already available, it shouldn't take too much effort to blend ML regression techniques with the convenient reserving properties of the chainladder package.

Refer to the ideas presented here -
https://www.casact.org/education/clrs/2016/presentations/AR-1_1.pdf

Something like:

cl.DevelopmentML(
   estimator=sklearn.ensemble.RandomForestRegressor()
).fit(cl.load_sample('prism')).ldf_

We'd need some way of providing control over feature selection and feature engineering, but otherwise seems doable.

jbogaardt added a commit that referenced this issue Feb 26, 2021
jbogaardt added a commit that referenced this issue Feb 28, 2021
@jbogaardt
Copy link
Collaborator Author

GLM is such an important framework in actuarial science it made sense to develop a separate TweedieGLM development esimtator just for that. Under the hood it uses the DevelopmentML estimator. The TweedieGLM is similar to the R ChainLadder glmReserve, but where we differ is:

  1. I haven't fleshed out the prediction error, and they are thorough there
  2. Instead I focused on flexibility in adding covariates (jurisdiction, cause of loss, limits, report lag, etc) to the model. In theory it could be used for policy/claim level loss reserving since the sparse backend allows for high throughput of data in chainladder. Flexibility come by way of the patsy package, but its a reasonably small dependency for a lot of flexibility.

Pre-release docs:
https://chainladder-python.readthedocs.io/en/latest/modules/development.html#tweedieglm

@andrejakobsen
Copy link
Contributor

Are there plans to continue developing this feature? I could try to contribute, if I find the time.

@jbogaardt
Copy link
Collaborator Author

Hello @andrejakobsen, welcome! Yes, I would like to see this developed out more. Time is definitely the most constraining factor. If you have ideas, I would like to get them on board.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants