(
        self,
        rank=40,
        learning_rate=0.01,
        max_iters=50,
        shrinkage_value=0,
        min_value=None,
        max_value=None,
        verbose=True,
    )
Train a matrix factorization model to predict empty
        entries in a matrix. Mostly copied (with permission) from:
        https://blog.insightdatascience.com/explicit-matrix-factorization-als-sgd-and-all-that-jazz-b00e4d9b21ea

        Params
        =====+
        rank : (int)
            Number of latent factors to use in matrix
            factorization model

        learning_rate : (float)
            Learning rate for optimizer

        max_iters : (int)
            Number of max_iters to train for

        shrinkage_value : (float)
            Regularization term for sgd penalty

        min_value : float
            Smallest possible imputed value

        max_value : float
            Largest possible imputed value

        verbose : (bool)
            Whether or not to printout training progress
Train a matrix factorization model to predict empty
        entries in a matrix. Mostly copied (with permission) from:
        https://blog.insightdatascience.com/explicit-matrix-factorization-als-sgd-and-all-that-jazz-b00e4d9b21ea
Train a matrix factorization model to predict empty entries in a matrix . Mostly copied ( with permission ) from : https : // blog . insightdatascience . com / explicit - matrix - factorization - als - sgd - and - all - that - jazz - b00e4d9b21ea
def __init__(
        self,
        rank=40,
        learning_rate=0.01,
        max_iters=50,
        shrinkage_value=0,
        min_value=None,
        max_value=None,
        verbose=True,
    ):
        """
        Train a matrix factorization model to predict empty
        entries in a matrix. Mostly copied (with permission) from:
        https://blog.insightdatascience.com/explicit-matrix-factorization-als-sgd-and-all-that-jazz-b00e4d9b21ea

        Params
        =====+
        rank : (int)
            Number of latent factors to use in matrix
            factorization model

        learning_rate : (float)
            Learning rate for optimizer

        max_iters : (int)
            Number of max_iters to train for

        shrinkage_value : (float)
            Regularization term for sgd penalty

        min_value : float
            Smallest possible imputed value

        max_value : float
            Largest possible imputed value

        verbose : (bool)
            Whether or not to printout training progress
        """
        Solver.__init__(self, min_value=min_value, max_value=max_value)
        self.rank = rank
        self.learning_rate = learning_rate
        self.max_iters = max_iters
        self.shrinkage_value = shrinkage_value
        self._v = verbose
def __init__ ( self , rank = 40 , learning_rate = 0.01 , max_iters = 50 , shrinkage_value = 0 , min_value = None , max_value = None , verbose = True , ) : Solver . __init__ ( self , min_value = min_value , max_value = max_value ) self . rank = rank self . learning_rate = learning_rate self . max_iters = max_iters self . shrinkage_value = shrinkage_value self . _v = verbose