# Boosting Next-Best
Let $\tau:pid \to tag$ be the map from products to tags and let $f_{nb}: customer \to pid$ be the next-best model. Boosting next-best via tags comes down to learning the error
$$
\varepsilon(x,y) = (\tau \circ f_{nb})(x) - \tau(y)
$$
for each $(x,y) \in customers \times products$.
Any function family that includes the constant function $$\epsilon = 0$$ should have the ability to boost next-best while maintaining next-best itself as a floor in terms of performance.
## Aggregation
While $f_{nb}$ is trained per partner, the funtion $\varepsilon$ must neccessarily come from a function $f_{boost}: tags \to \mathbb{R}^n$ which predicts the error of next-best in tag-space. Thus boosting consists of looking at data in tag-space, which can be aggregated across partners.