1. A method for transforming data comprising: receiving, by a computing device, input data with categorical labels, the input data comprising vectors and each categorical label denoting a subset of the vectors; forming, by the computing device, higher-order links for each subset of the vectors; calculating, by the computing device, a higher-order transform for each attribute in each subset by calculating a higher-order prior for each attribute in each subset, wherein each higher-order prior represents a probability corresponding to the associated attribute that is based on one or more patterns of occurrence of the attribute, wherein calculating a higher-order prior comprises estimating the higher-order prior by: P ^ ⁡ ( x i = 1 | X ) =  φ ⁡ ( i , X )   Φ ⁡ ( X )  , and ⁢ ⁢ P ^ ⁡ ( x i = 0 | X ) = 1 - P ^ ⁡ ( x i = 1 | X ) where Φ(X) denotes a set of higher-order links of a specified order in a dataset X, φ(i,X) ⊂ Φ(X) denotes a subset of higher-order links that contain attribute i in dataset X, set φ(i,X) defines an event that a randomly chosen higher-order link contains attribute i, sets Φ(X) and φ(i,X) allow for characterization of each attribute i by a probability mass function {circumflex over (P)}(x i |X) defined over two events: presence of attribute i in a randomly chosen higher-order link, and an absence of that attribute from a randomly chosen higher-order link; and transmitting, by the computing device, transformed data to a learner to build a model.