Latent factor model vector
Representation of a user-item rating
Representation of a user-item rating
User ID of the rating user
Item iD of the rated item
Rating value
Creates the meta information needed to route the item and user vectors to the respective user and item blocks.
Creates the meta information needed to route the item and user vectors to the respective user and item blocks. * @param userBlocks
Creates the incoming block information
Creates the incoming block information
Creates for every user block the incoming block information. The incoming block information contains the userIDs of the users in the respective block and for every item block a BlockRating instance. The BlockRating instance describes for every incoming set of item vectors of an item block, which user rated these items and what the rating was. For that purpose it contains for every incoming item vector a tuple of an id array us and a rating array rs. The array us contains the indices of the users having rated the respective item vector with the ratings in rs.
Creates the outgoing block information
Creates the outgoing block information
Creates for every user block the outgoing block information. The out block information contains for every item block a scala.collection.mutable.BitSet which indicates which user vector has to be sent to this block. If a vector v has to be sent to a block b, then bitsets(b)'s bit v is set to 1, otherwise 0. Additionally the user IDataSet are replaced by the user vector's index value.
Calculates the userIDs in ascending order of each user block
Calculates the matrix factorization for the given ratings.
Calculates the matrix factorization for the given ratings. A rating is defined as a tuple of user ID, item ID and the corresponding rating.
Factorization containing the user and item matrix
Predict operation which calculates the matrix entry for the given indices
Unblocks the blocked user and item matrix representation so that it is at DataSet of column vectors.
Calculates a single half step of the ALS optimization.
Calculates a single half step of the ALS optimization. The result is the new value for either the user or item matrix, depending with which matrix the method was called.
Number of blocks in the respective dimension
Fixed matrix value for the half step
Out information to know where to send the vectors
In information for the cogroup step
Number of latent factors
Regularization constant
Custom Flink partitioner
New value for the optimized matrix (either user or item)