A method of machine condition monitoring, comprising: receiving, by a computer, historic operating data including operating data from O signals over time; extracting I patterns x, each pattern x being extracted from operating data from an individual signal; clustering the I patterns into K pattern clusters c k based on similarities; clustering the O signals into R signal clusters based on correlations among the operating data from the O signals; receiving an annotated training data sample containing training data from N signals selected from the O signals, the training data having at least one marked failure time period; creating a K × N confidence vector containing K confidence values for each of the N signals, each confidence value representing a confidence that a pattern x extracted from data in the marked failure time period of a signal belongs to one of the K pattern clusters; training a classifier using the K × N confidence vector; receiving, by a computer, a monitored data sample including monitored data from the O signals; and classifying, by the classifier running on a computer, the monitored data sample as indicating or not indicating a failure, wherein classifying the monitored data sample comprises evaluating confidence vectors for sub-combinations of the monitored data sample signals O in which each of the annotated data training signals N is either included in the sub-combination or is represented in the sub-combination by a monitored data sample signal in the same signal cluster c k as the represented annotated data training signal, wherein classifying the monitored data sample further comprises: applying a greedy algorithm to identify a dominant confidence vector, wherein each data sample signal in each sub-combination is replaced by another data sample signal within the same signal cluster that achieves the highest value of an evaluation function; and determining whether the evaluation function value for the dominant confidence vector exceeds a threshold. receiving, by a computer, historic operating data including operating data from O signals over time; extracting I patterns x, each pattern x being extracted from operating data from an individual signal; clustering the I patterns into K pattern clusters c k based on similarities; clustering the O signals into R signal clusters based on correlations among the operating data from the O signals; receiving an annotated training data sample containing training data from N signals selected from the O signals, the training data having at least one marked failure time period; creating a K × N confidence vector containing K confidence values for each of the N signals, each confidence value representing a confidence that a pattern x extracted from data in the marked failure time period of a signal belongs to one of the K pattern clusters; training a classifier using the K × N confidence vector; receiving, by a computer, a monitored data sample including monitored data from the O signals; and classifying, by the classifier running on a computer, the monitored data sample as indicating or not indicating a failure, wherein classifying the monitored data sample comprises evaluating confidence vectors for sub-combinations of the monitored data sample signals O in which each of the annotated data training signals N is either included in the sub-combination or is represented in the sub-combination by a monitored data sample signal in the same signal cluster c k as the represented annotated data training signal, wherein classifying the monitored data sample further comprises: applying a greedy algorithm to identify a dominant confidence vector, wherein each data sample signal in each sub-combination is replaced by another data sample signal within the same signal cluster that achieves the highest value of an evaluation function; and determining whether the evaluation function value for the dominant confidence vector exceeds a threshold. applying a greedy algorithm to identify a dominant confidence vector, wherein each data sample signal in each sub-combination is replaced by another data sample signal within the same signal cluster that achieves the highest value of an evaluation function; and determining whether the evaluation function value for the dominant confidence vector exceeds a threshold.