I. Introduction
Sensor data collected from machinery systems on board ships provide real-time information about the condition of the ship. Such sensor-based condition monitoring can be used to detect changes in the performance of the system in near realtime which may be indicative of a system fault or even an impending fault. However, there is a need for efficient and robust algorithms to detect such changes in the data streams. Typically, a data-driven condition monitoring system include anomaly detection, fault identification and prognostics. The first task is to monitor the data streams to detect deviations from normal system behavior indicative of a change of the system. This is referred to as anomaly detection, and for this task only nominal data is needed to train the algorithms. The next step is fault isolation or fault identification where a diagnostic tool is applied to estimate what type of deviation the anomaly is, i.e. to distinguish real faults from unexpected but normal behavior, and to identify the type of fault. In order to train such algorithms, information (data) about both normal and faulty states of the system is needed. Essentially, in a data-driven approach, this is a classification task, where one need labelled data in order to perform the classification (see e.g. [1] for a review of classification methods that may be used for this purpose). Finally, the prognostics task try to estimate the future behavior of the system, conditioned on the current state, and to estimate the remaining useful life (RUL). Typically for this task to be feasible with a data-driven approach, there is a need for run-to-failure data under varying conditions, something which is rarely available.