Systems, methods, non-transitory computer readable media can be configured to access a plurality of sensor logs corresponding to a first machine, each sensor log spanning at least a first period; access first computer readable logs corresponding to the first machine, each computer readable log spanning at least the first period, the computer readable logs comprising a maintenance log comprising a plurality of maintenance task objects, each maintenance task object comprising a time and a maintenance task type; determine a set of statistical metrics derived from the sensor logs; determine a set of log metrics derived from the computer readable logs; and determine, using a risk model that receives the statistical metrics and log metrics as inputs, fault probabilities or risk scores indicative of one or more fault types occurring in the first machine within a second period.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer-implemented method of determining a fault probability for a first machine, wherein the method is performed using one or more processors or special-purpose computing hardware, the method comprising: accessing a plurality of sensor logs corresponding to a first machine, each sensor log spanning at least a first period; accessing first computer readable logs corresponding to the first machine, each computer readable log spanning at least the first period, the computer readable logs comprising a maintenance log comprising a plurality of maintenance task objects, each maintenance task object comprising a time and a maintenance task type; determining a set of statistical metrics derived from the sensor logs; determining a set of log metrics derived from the computer readable logs; and determining, using a risk model that receives the statistical metrics and log metrics as inputs, fault probabilities or risk scores indicative of one or more fault types occurring in the first machine within a second period. 2. The method according to claim 1, wherein the computer readable logs for each machine further comprise a message log including a plurality of message objects, each message object comprising a time and a message type. 3. The method according to claim 1, wherein the computer readable logs for each machine further comprise a fault log including a plurality of fault objects, each fault object comprising a time, a duration and a fault type. 4. The method according to claim 1, wherein the risk model is a machine learning model configured to: receive the statistical metrics and log metrics as inputs; and output fault probabilities corresponding to one or more fault types occurring in the first machine within a second period. 5. The method according to claim 1, wherein the risk model is a weighted average model comprising: one or more fault criteria groups, each fault criteria group corresponding to a fault type, each fault criteria group comprising: a plurality of statistical criteria and/or a plurality of log criteria; a set of weighting values, each weighting value corresponding to a statistical criterion or a log criterion; wherein determining risk scores comprises, for each fault criteria group: determining, based on the statistical metrics, whether one or more statistical criteria are satisfied; determining, based on the log criteria, whether one or more log criteria are satisfied; in dependence upon at least one statistical criterion or at least one log criterion are satisfied, calculating a risk score for the fault criteria group by summing the weighting values corresponding to each satisfied criterion. 6. The method according to claim 5, wherein each weighting value is a fault probability value and each risk score takes the form of an overall probability of the corresponding fault type. 7. The method according to claim 5, wherein each weighting value is an importance metric. 8. The method according to claim 1, the method further comprising: accessing a plurality of second computer readable logs corresponding to one or more second machines which are the same as the first machine, the computer readable logs for each second machine comprising: a maintenance log comprising a plurality of maintenance task objects, each maintenance task object comprising a time and a maintenance task type; and a fault log comprising a plurality of fault objects, each fault object comprising a time, a duration and a fault type; determining a fault metric for each fault type based on the fault probabilities; determining a priority fault type based on the fault metric; analysing the maintenance logs and fault logs belonging to the plurality of second computer readable logs to correlate the priority fault type with a priority maintenance task; and outputting the priority maintenance task. 9. The method according to claim 8, wherein the fault metric for each fault type is a product of a fault probability for that fault type and an average duration for that fault type determined based on the second computer readable logs. 10. The method according to claim 8, further comprising: determining, based on the priority maintenance task type, a change in the probabilities for each fault type which would result if the priority maintenance task was subsequently performed. 11. The method according to claim 1, wherein one or more sensor logs are processed using a dynamic time-warping technique to obtain corresponding warped sensor logs, and wherein one or more statistical metrics are determined from the warped sensor logs. 12. A non-transitory computer-readable storage medium including instructions that, when executed by at least one processor of a computing system, cause the computing system to perform a method comprising: accessing a plurality of sensor logs corresponding to a first machine, each sensor log spanning at least a first period; accessing first computer readable logs corresponding to the first machine, each computer readable log spanning at least the first period, the computer readable logs comprising a maintenance log comprising a plurality of maintenance task objects, each maintenance task object comprising a time and a maintenance task type; determining a set of statistical metrics derived from the sensor logs; determining a set of log metrics derived from the computer readable logs; and determining, using a risk model that receives the statistical metrics and log metrics as inputs, fault probabilities or risk scores indicative of one or more fault types occurring in the first machine within a second period. 13. A system, the system comprising one or more processors or special-purpose computing hardware configured to: accessing a plurality of sensor logs corresponding to a first machine, each sensor log spanning at least a first period; accessing first computer readable logs corresponding to the first machine, each computer readable log spanning at least the first period, the computer readable logs comprising a maintenance log comprising a plurality of maintenance task objects, each maintenance task object comprising a time and a maintenance task type; determining a set of statistical metrics derived from the sensor logs; determining a set of log metrics derived from the computer readable logs; and determining, using a risk model that receives the statistical metrics and log metrics as inputs, fault probabilities or risk scores indicative of one or more fault types occurring in the first machine within a second period. 14. The system according to claim 13, wherein the computer readable logs for each machine further comprise a message log including a plurality of message objects, each message object comprising a time and a message type. 15. The system according to claim 13, wherein the computer readable logs for each machine further comprise a fault log including a plurality of fault objects, each fault object comprising a time, a duration and a fault type. 16. The system according to claim 13, wherein the risk model is a machine learning model configured to: receive the statistical metrics and log metrics as inputs; and output fault probabilities corresponding to one or more fault types occurring in the first machine within a second period. 17. The system according to claim 13, wherein the risk model is a weighted average model comprising: one or more fault criteria groups, each fault criteria group corresponding to a fault type, each fault criteria group comprising: a plurality of statistical criteria and/or a plurality of log criteria; a set of weighting values, each weighting value corresponding to a statistical criterion or a log criterion; wherein determining risk scores comprises, for each fault criteria group: determining, based on the statistical metrics, whether one or more statistical criteria are satisfied; determining, based on the log criteria, whether one or more log criteria are satisfied; in dependence upon at least one statistical criterion or at least one log criterion are satisfied, calculating a risk score for the fault criteria group by summing the weighting values corresponding to each satisfied criterion. 18. The system according to claim 17, wherein each weighting value is a fault probability value and each risk score takes the form of an overall probability of the corresponding fault type. 19. The system according to claim 17, wherein each weighting value is an importance metric. 20. The system according to claim 13, wherein the system is further configured to perform: accessing a plurality of second computer readable logs corresponding to one or more second machines which are the same as the first machine, the computer readable logs for each second machine comprising: a maintenance log comprising a plurality of maintenance task objects, each maintenance task object comprising a time and a maintenance task type; and a fault log comprising a plurality of fault objects, each fault object comprising a time, a duration and a fault type; determining a fault metric for each fault type based on the fault probabilities; determining a priority fault type based on the fault metric; analysing the maintenance logs and fault logs belonging to the plurality of second computer readable logs to correlate the priority fault type with a priority maintenance task; and outputting the priority maintenance task.