aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xexamples/src/main/python/als.py15
1 files changed, 7 insertions, 8 deletions
diff --git a/examples/src/main/python/als.py b/examples/src/main/python/als.py
index a77dfb2577..33700ab4f8 100755
--- a/examples/src/main/python/als.py
+++ b/examples/src/main/python/als.py
@@ -36,14 +36,13 @@ def rmse(R, ms, us):
def update(i, vec, mat, ratings):
uu = mat.shape[0]
ff = mat.shape[1]
- XtX = matrix(np.zeros((ff, ff)))
- Xty = np.zeros((ff, 1))
-
- for j in range(uu):
- v = mat[j, :]
- XtX += v.T * v
- Xty += v.T * ratings[i, j]
- XtX += np.eye(ff, ff) * LAMBDA * uu
+
+ XtX = mat.T * mat
+ XtY = mat.T * ratings[i, :].T
+
+ for j in range(ff):
+ XtX[j,j] += LAMBDA * uu
+
return np.linalg.solve(XtX, Xty)
if __name__ == "__main__":