# How you can you take the min of what looks like a single value calculation in SVD++?

And I'm looking at the equation t the very end of section 2.1 regarding baseline estimates, and it's the addition of 3 summations, which I would expect to result in a single value, but the result is passed into the min[b*] function.

I must be misinterpreting something about the equation. Is min maybe not taking the result of the sum of summations? Is it a constant that multiplies the first summation?

I must admit, I'm an engineer, and I'm a bit rusty on my mathematical notation. I'm used to reading things in code, but I want to struggle with the math notation rather than read the SVD++ implementation in MLLib because it's important to me that I get comfortable with it.

Edit Original equation for context.

• $u$ is an index over users
• $i$ is an index over items
• $r_{u,i}$ is the rating that user $u$ gives the $i$th item
• $\mathcal{K} = (u, i \mid r_{u,i} \textrm{is known})$ (i.e., the knowledge or training data)
• $\mu$ is the average rating over all items
• $b_i$ is the "baseline" or average rating for the $i$th item, across users, relative to $\mu$
• $b_u$ is the "baseline" or average rating given by user $u$, relative to $\mu$

$$\underset{b*}{\min} \sum_{(u,i) \in \mathcal{K}} \bigg(r_{u,i} - \mu - b_u - b_i\bigg)^2 + \lambda_1 \bigg(\sum_u b_{u}^2 + \sum_i b_{i}^2\bigg)$$

tl;dr: It's (sort of) a typo and essentially means "find the values that minimize this equation", not "take the min of the single number output by this equation." It probably would have been clearer if the authors wrote $\underset{b_u, b_i}{\arg \min}$.

This paper is about building a recommendation system and Section 2.1 describes a baseline model that doesn't take any information about the item or user into account. The following variables were defined previously.

• $u$ is an index over users
• $i$ is an index over items
• $r_{u,i}$ is the rating that user $u$ gives the $i$th item
• $\mathcal{K} = (u, i \mid r_{u,i} \textrm{is known})$ (i.e., the knowledge or training data)
• $\mu$ is the average rating over all items
• $b_i$ is the "baseline" or average rating for the $i$th item, across users, relative to $\mu$
• $b_u$ is the "baseline" or average rating given by user $u$, relative to $\mu$

The section in question concerns estimating $b_u$ and $b_i$, which is set up as the least squares problem: $$\underset{b*}{\min} = \sum_{(u,i) \in \mathcal{K}} \bigg(r_{u,i} - \mu - b_u - b_i\bigg)^2 + \lambda_1 \bigg(\sum_u b_{u}^2 + \sum_i b_{i}^2\bigg)$$

From context, it seems like we want to find the $b_u$ and $b_i$ values that minimize this equation. The first part of this equation is the actual least-squares part: note that if we got $\mu$, $b_u$ and $b_i$ exactly right, it would become zero; in other words, we would predict the user's rating perfectly. The second part is a regularization term that penalizes extreme values of $b_u$ and $b_i$.

min is not taking the minimum of what follows. It is short for "minimize", and denotes an optimization problem. The symbols under min list the variables whose values can be adjusted to find the best solution.

This particular optimization problem is to find the values of the $b_i$'s and $b_u$'s such that what follows (the sum of sums), a.k.a. objective function, is minimized. In this particular case, the minimization problem is to solve a least squares problem, actually a least squares problem with penalty term (the term beginning with $\lambda_1$), a.k.a. regularizing term.

The specification of the optimization problem doesn't tell you (there) how to solve it. That's a separate matter. The result of solving the optimization problem will be the optimal values of the $b_i$'s and $b_u$'s, sometimes called argmin (denoting the argument values which achieve the minimum objective value), which result in the smallest value of the objective function.