Patent ID: 8452770

Claim:
A method of clustering a plurality of information items using nonnegative tensor factorization, the method comprising: receiving, by a processing device, one or more class labels, wherein each class label corresponds to an information item; receiving, by the processing device, a selection for a nonnegative tensor factorization model having an associated objective function, wherein the nonnegative tensor factorization model comprises the nonnegative Parafac tensor factorization model; receiving, by the processing device, one or more parameter values, wherein each parameter value corresponds to one of one or more penalty constraints; determining, by the processing device, a constrained objective function including the one or more penalty constraints, wherein the constrained objective function is based on the objective function associated with the selected nonnegative tensor factorization model, the one or more parameter values and the one or more class labels; and determining, by the processing device, clusters for the plurality of information items by evaluating the constrained objective function; wherein determining clusters comprises: determining ⁢ ⁢ u ij = u ij ⁢ ( X _ ( 1 ) ⁡ ( S * V ) + α 1 ⁢ U 0 ) ij ( U ⁡ ( S * V ) T ⁢ ( S * V ) + α 1 ⁢ E u ⁢ U ) ij for each u ij , wherein: X (1) is the first mode of tensor X, U, V and S are matrices identifying clusters for first, second and third types of information items, respectively, u ij is the (i, j)-th entry of U, α 1 represents a first parameter value of the one or more parameter values, U 0 is a matrix identifying class labels for the first information item type, and E u is a diagonal matrix in which a 1 indicates prior knowledge for a corresponding first information item and a 0 indicates no prior knowledge for the corresponding first information item; determining ⁢ ⁢ v ij = v ij ⁢ ( X _ ( 2 ) ⁡ ( S * U ) + α 2 ⁢ V 0 ) ij ( V ⁡ ( S * U ) T ⁢ ( S * U ) + α 2 ⁢ E v ⁢ V ) ij for each v ij , wherein: X (2) is the second mode of tensor X, v ij is the (i, j)-th entry of V, α 2 represents a second parameter value of the one or more parameter values, V 0 is a matrix identifying class labels for the second information item type, and E v is a diagonal matrix in which a 1 indicates prior knowledge for a corresponding second information item and a 0 indicates no prior knowledge for the corresponding second information item; determining ⁢ ⁢ s ij = s ij ⁢ ( X _ ( 3 ) ⁡ ( V * U ) + α 3 ⁢ S 0 ) ij ( S ⁡ ( V * U ) T ⁢ ( V * U ) + α 3 ⁢ E s ⁢ S ) ij for each s ij wherein: X (3) is the third mode of tensor X, s ij is the (i, j)-th entry of S, α 3 represents a third parameter value of the one or more parameter values, S 0 is a matrix identifying class labels for the third information item type, and E s is a diagonal matrix in which a 1 indicates prior knowledge for a corresponding third information item and a 0 indicates no prior knowledge for the corresponding third information item; and repeating the determining steps until the values of u ij v ij and s ij converge.