statmills.bsky.social @statmills.bsky.social · 07/04/2026The result is smooth curves that can learn high dimensional interaction effects that you can fit at scale! 000
statmills.bsky.social @statmills.bsky.social · 07/04/2026Then fitting our Gradient Boosting Spline model is as simple as calling {DecisionTreeRegressor} in a for loop to build up our coefficient predictions. 100
statmills.bsky.social @statmills.bsky.social · 07/04/2026{JAX} makes this super easy because all we need to do as practitioners is to define our loss function as a function of our parameters and let autodiff handle calculating the partial derivatives 100
statmills.bsky.social @statmills.bsky.social · 07/04/2026Gradient Boosting Machines will generate predictions for each observation by iteratively learning to predict the gradient of the loss function at each iteration. In this blog post I show you can use the same methodology to fit entire parameter sets 100
statmills.bsky.social @statmills.bsky.social · 05/02/2025There is an additional layer of smoothing you can do with low-rank smoothers, which not only smooths the data but speeds up the processing because we use less parameters! 000
statmills.bsky.social @statmills.bsky.social · 05/02/2025The smoothing you can do with location data is really interesting! Similar to penalizing neighboring coefficients in a GAM, you can penalize the difference between neighboring census tracts 100
statmills.bsky.social @statmills.bsky.social · 05/02/2025This allows us to look at some cool maps like where first time home buyers are buying, and where the most expensive homes are 100
statmills.bsky.social @statmills.bsky.social · 05/02/2025I hate how it's never the actual data analysis that trips me up when switching between R and Python, it's the silly base stuff like `int` and `len` that takes me multiple tries to switch over 🤬 030