A computer-implemented method is presented of processing a data set to detect clusters of outlier data, and of using the processed data to automatically detect outlier events based on sensor data and to issue alerts when such events are detected. The outlier detection technique employs two infinite model mixtures, one tailored to detection of non-outlier data, and the other tailored to detection of outlier data. Clusters of data are created and labelled as non-outlier or outlier clusters according to which infinite mixture model generated the clusters.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer-implemented method of processing a data set to detect clusters of outlier data, comprising the steps of: a) receiving as an input a data set of N data points; b) iterating through the entire data set a plurality of times, wherein each iteration comprises: (i) inferring a prior cluster profile having one or more clusters, each of which is identified as a non-outlier cluster or an outlier cluster, and each of which is characterised by its own probability distribution parameters, and by a weighting based on the relative number of data points assigned to the cluster, the prior cluster profile being inferred according to the output of the preceding iteration or, on the first iteration, according to an initial inferred cluster profile; ii) for each data point in the data set: (aa) evaluating the probabilities that the data point belongs to each of the existing clusters in the prior cluster profile and that it belongs to a new cluster identified as a non-outlier cluster or an outlier cluster; (bb) assigning the data point to one of the existing clusters or creating a new cluster in a probabilistic fashion according to the evaluated probabilities in (aa); iii) updating the prior cluster profile to reflect the assignment of the data points to existing clusters or the creation of new clusters and assignment of data points to the new clusters and returning the number of clusters, the identification of each cluster as outlier or non-outlier, and the probability distribution parameters and weightings for each cluster, for use as a prior cluster profile in the next iteration; c) after a predetermined number of iterations through the entire data set, computing the most likely number of clusters in the data set according to all iterations in order to label data items and clusters as non-outliers and outliers along with determining the parameters for the cluster. 2. The method of claim 1, wherein the initial inferred cluster profile is generated by: i) initialising a non-outlier cluster having first probability distribution parameters and a weighting indicating the relative number of data points assigned to the non-outlier cluster; and optionally ii) initialising an outlier cluster having second probability distribution parameters and a weighting indicating the relative number of data points assigned to the outlier cluster. 3. The method of claim 2, wherein all data points are initially assigned to the non-outlier cluster. 4. The method of claim 1, wherein for each point in the data set, the data point is identified as being a non-outlier data point or an outlier data point. 5. The method of claim 4, wherein if the data point is identified as a non-outlier data point, then in step (aa) the probability is evaluated that it belongs to a new cluster identified as a non-outlier cluster, using a probability distribution function typical of non-outlier data, whereas if the data point is identified as an outlier data point, then in step (aa) the probability is evaluated that it belongs to a new cluster identified as an outlier cluster, using a distribution function typical of outlier data. 6. The method of claim 1, wherein the evaluation of probabilities in step (aa) comprises evaluating the probability that the data point would be generated by the probability distribution parameters of each such cluster, modified by the weighting based on the relative number of data points assigned to the cluster. 7. The method of claim 1, wherein step (bb) of assigning the data point to an existing cluster or creating a new cluster comprises, where the data point is assigned to a different cluster than it had previously been assigned to, removing the data point from the previous cluster and adding the data point to the new cluster, and updating the weightings accordingly. 8. The method of claim 7, wherein if the data point is assigned to a new cluster, adding said new cluster to the cluster profile and assigning it a weighting for a cluster with a single member. 9. The method of claim 1, further comprising the step of, on each iteration through the data set, removing from the prior cluster profile any clusters with a single member. 10. The method of claim 1, wherein the probability distribution parameters are updated for each cluster in step (iii) after each iteration through the data set based on the data points assigned to each cluster at the end of that iteration. 11. The method of claim 1, wherein the probability distribution parameters of non-outlier clusters are characterised by a first hyper-parameter vector and those of outlier clusters are characterised by a second hyper-parameter vector. 12. The method of claim 11, wherein each cluster is characterised by a random variable with a posterior probability distribution. 13. The method of claim 1, wherein the initial inferred cluster profile is initialised as a pair of clusters whose probability distribution parameters are generated according to the minimum and maximum values in the data set, respectively and which are labelled as non-outlier and outlier clusters, respectively. 14. A method of generating an alert in a system comprising one or more sensors, the method comprising: (i) receiving a data series representing signals from said one or more sensors; (ii) maintaining a data model, the data model comprising a cluster profile generated by the method of claim 1, in which a plurality of clusters are identified, including at least one cluster identified as representative of non-outlier data and at least one cluster identified as representative of outlier data, each cluster having a probability distribution parameter; (iii) calculating, for a plurality of data items in the data series, a best fit between each data item and at least one cluster in the cluster profile; (iv) where the best fit is to a cluster identified as representative of outlier data, outputting an alert signal. 15. A system comprising one or more sensors for detecting a condition and generating a signal in response thereto, a computing system operatively connected to receive data representative of signals from said one or more sensors, and an output interface for the computing system, the computing system being programmed with instructions which when executed carry out the method of claim 14.