Method and apparatus for analysing service performance data

EP4616627A4Pending Publication Date: 2026-05-20TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Filing Date
2022-11-10
Publication Date
2026-05-20

Smart Images

  • Figure 1.1
    Figure 1.1
Patent Text Reader

Abstract

Embodiments of the present disclosure provide methods and apparatus for analysing service performance data. The method (200) comprising: obtaining (S202) a plurality of points of data for a key performance indicator, KPI; modelling (S204) the plurality of points, with generalized Pareto distribution, GPD; calculating (S206) at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; and determining (S208) a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold. According to exemplary embodiments of the present disclosure, extreme values (which more possibly corresponds to anomaly) will be distinguished more accurately.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND APPARATUS FOR ANALYSING SERVICE PERFORMANCE DATATECHNICAL FIELD

[0001] The present disclosure relates generally to the technology of data acquisition and analysis, and in particular, to a method and an apparatus for analysing service performance data.BACKGROUND

[0002] This section introduces aspects that may facilitate better understanding of the present disclosure. Accordingly, the statements of this section are to be read in this light and are not to be understood as admissions about what is in the prior art or what is not in the prior art.

[0003] In computing or communication systems, it is important to monitor the performance of the system, and make maintenance if anomaly happens.

[0004] For example, service performance data (such as KPI data) will be obtained to indicate the current performance of the system, and such data will be analysed to determine whether some anomaly happens or will happen.

[0005] Usually, the amount of data is large, and it is difficult to presume the distribution characteristics of the data. Thus, it is hard to distinguish or predict the anomaly (especially extreme scenario) of the systems.

[0006] SUMMARY

[0007] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.

[0008] Certain aspects of the present disclosure and their embodiments may provide solutions to these or other challenges. There are, proposed herein, various embodiments which address one or more of the issues disclosed herein. Improved methods and apparatuses are provided for analysing service performance data. For example, generalized Pareto distribution may be used to model the data, and thus extreme values (which more possibly corresponds to anomaly) will be distinguished more accurately.

[0009] According to a first aspect of the present disclosure, there is provided a method for analysing service performance data. The method comprises: obtaining a plurality of points of data for a key performance indicator, KPI; modelling the plurality of points, with generalized Pareto distribution, GPD; calculating at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; and determining a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.

[0010] In exemplary embodiments of the present disclosure, a plurality of values is configured for the probability parameter. The at least one threshold comprises a plurality of thresholds respectively  corresponding to the plurality of values of the probability parameter.

[0011] In exemplary embodiments of the present disclosure, a plurality of value scope is determined, based on the plurality of thresholds. An anomaly score for a point is determined based on a value scope that the point belongs to.

[0012] In exemplary embodiments of the present disclosure, the method may further comprise: adjusting the anomaly score for the point, based on one or more anomaly scores of one or more points around the point.

[0013] In exemplary embodiments of the present disclosure, the anomaly score for the point is adjusted, based on a decay factor and a sum of the anomaly scores of one or more points before the point and of the point. The decay factor is determined based on whether an anomaly happens at the point, or the decay factor is determined based on whether an anomaly happens at a point before the point.

[0014] In exemplary embodiments of the present disclosure, the decay factor is smaller when an anomaly happens at a point further away from the point.

[0015] In exemplary embodiments of the present disclosure, the one or more distribution parameters of the plurality of points are calculated by using maximum likelihood estimation, MLE, and Grimshaw’s law.

[0016] In exemplary embodiments of the present disclosure, the method may further comprise: summing anomaly scores of points with the same timestamp for more than one KPI in a group, at each timestamp, to obtain a plurality of group anomaly scores for the group.

[0017] In exemplary embodiments of the present disclosure, the method may further comprise: creating a sample including one or more groups for a learning machine, each group with a plurality of group anomaly scores. The sample is labelled as a first type or a second type, based on whether an event happens after the sample. The first type is positive, and the second type is negative.

[0018] In exemplary embodiments of the present disclosure, the method may further comprise: training the learning machine with a plurality of labelled samples.

[0019] In exemplary embodiments of the present disclosure, a first task of the learning machine is trained to predict whether an event will happen after an unlabeled sample; and / or a second task of the learning machine is trained to predict a characteristic parameter of data after the unlabeled sample.

[0020] In exemplary embodiments of the present disclosure, the learning machine comprises a neural network.

[0021] In exemplary embodiments of the present disclosure, convolutional layers of the learning machine are frozen when training the first task and the second task.

[0022] In exemplary embodiments of the present disclosure, a first number of labeled samples with the first type are used to train the learning machine. A first number of labeled samples with the second type are selected from a plurality of labeled samples with the second type, to be used to train the learning machine.

[0023] In exemplary embodiments of the present disclosure, scores for ranking of the plurality of labeled samples with the second type are generated, by a one-class support vector method, OCSVM, based on embedding vectors outputted from convolutional layers of the learning machine. The first  number of labeled samples with the second type are selected, based on the scores of the plurality of labeled samples with the second type.

[0024] In exemplary embodiments of the present disclosure, a distribution scope of the scores of the plurality of labeled samples with the second type is divided into a plurality of sub scopes, based on appearance frequency of the scores. A sub scope covering scores with lower appearance frequencies has a smaller size. The first number of labeled samples with the second type are selected from each sub scope averagely.

[0025] In exemplary embodiments of the present disclosure, the service performance data is related to KPI data in algorithmic information technology operations, AIOps, or a sensor acquired data in a monitoring system.

[0026] According to a second aspect of the present disclosure, there is provided an apparatus for analysing service performance data. The apparatus comprises: a processor; and a memory, containing instructions executable by the processor. The apparatus is operative for: obtaining a plurality of points of data for a key performance indicator, KPI; modelling the plurality of points, with generalized Pareto distribution, GPD; calculating at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; and determining a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.

[0027] In exemplary embodiments of the present disclosure, the apparatus is further operative to perform the method according to any exemplary embodiment of the first aspect.

[0028] According to a third aspect of the present disclosure, there is provided a computer-readable storage medium storing instructions which when executed by at least one processor, cause the at least one processor to perform the method according to exemplary embodiment of the first aspect.

[0029] Embodiments herein afford many advantages. For example, in embodiments herein, generalized Pareto distribution may be used to model the data, and thus extreme values (which more possibly corresponds to anomaly) will be distinguished more accurately. Further, the data may be raw metrics data (KPI data) , and thus the solutions is more scalable and can be widely used in different scenarios and products.

[0030] BRIEF DESCRIPTION OF DRAWINGS

[0031] The above and other aspects, features, and benefits of various embodiments of the present disclosure will become more fully apparent, by way of example, from the following detailed description with reference to the accompanying drawings, in which like reference numerals or letters are used to designate like or equivalent elements. The drawings are illustrated for facilitating better understanding of the embodiments of the disclosure and not necessarily drawn to scale, in which:

[0032] FIG. 1 is a diagram showing an example for service degradation prediction.

[0033] FIG. 2A is an exemplary flow chart showing a method for analysing service performance data, according to exemplary embodiments of the present disclosure.

[0034] FIG. 2B is an exemplary flow chart showing additional steps of the method as shown in FIG. 2A, according to embodiments of the present disclosure.

[0035] FIG. 2C is an exemplary flow chart showing additional steps of the method as shown in FIG. 2A, according to embodiments of the present disclosure.

[0036] FIG. 3A is a diagram illustrating an extreme value theory.

[0037] FIG. 3B is a diagram showing false alarms by 3 sigma method.

[0038] FIG. 3C is a diagram showing how extreme value detection helps to reduce false alarm.

[0039] FIG. 4A is a diagram showing 3 thresholds determined by extreme value theory.

[0040] FIG. 4B is a diagram showing point-wise anomaly score before being adjusted.

[0041] FIG. 4C is a diagram showing point-wise anomaly score after being adjusted.

[0042] FIG. 5 is a diagram showing an approach for constructing a group anomaly score.

[0043] FIG. 6 is a diagram showing multiple groups, generated by using approach shown in FIG. 5.

[0044] FIG. 7 is a diagram showing an approach to slide the observing windows to collect data.

[0045] FIG. 8 is a diagram showing a periodic feature of obtained data.

[0046] FIG. 9A is a diagram showing a first example about a sample for pretext task.

[0047] FIG. 9B is a diagram showing a second example about a sample for pretext task.

[0048] FIG. 10 is a diagram showing a multi task learning for multiple tasks.

[0049] FIG. 11 shows the network structure for multi-task learning.

[0050] FIG. 12 is a diagram showing only the main task for detection.

[0051] FIG. 13 is a diagram showing an apply of OneClassSVM.

[0052] FIG. 14 is a diagram showing a training for the main task.

[0053] FIG. 15 is a diagram showing a successful use case.

[0054] FIG. 16A is a diagram showing a first group of exemplary group anomaly score KPI, during an implementation of embodiments of the present disclosure.

[0055] FIG. 16B is a diagram showing a second group of exemplary group anomaly score KPI, during an implementation of embodiments of the present disclosure.

[0056] FIG. 16C is a diagram showing a 39th group of exemplary group anomaly score KPI, during an implementation of embodiments of the present disclosure.

[0057] FIG. 17 is a diagram showing a flowchart for whole service degradation prediction procedure.

[0058] FIG. 18 is a block diagram showing exemplary apparatuses suitable for practicing the reception apparatus, according to embodiments of the disclosure.

[0059] FIG. 19 is a block diagram showing an apparatus readable storage medium, according to embodiments of the present disclosure.

[0060] FIG. 20 is a schematic showing units for the apparatus, according to embodiments of the present disclosure.DETAILED DESCRIPTION

[0061] The embodiments of the present disclosure are described in detail with reference to the accompanying drawings. It should be understood that these embodiments are discussed only for the purpose of enabling those skilled persons in the art to better understand and thus implement the present  disclosure, rather than suggesting any limitations on the scope of the present disclosure. Reference throughout this specification to features, advantages, or similar language does not imply that all of the features and advantages that may be realized with the present disclosure should be or are in any single embodiment of the disclosure. Rather, language referring to the features and advantages is understood to mean that a specific feature, advantage, or characteristic described in connection with an embodiment is included in at least one embodiment of the present disclosure. Furthermore, the described features, advantages, and characteristics of the disclosure may be combined in any suitable manner in one or more embodiments. One skilled in the relevant art will recognize that the disclosure may be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be recognized in certain embodiments that may not be present in all embodiments of the disclosure.

[0062] Generally, all terms used herein are to be interpreted according to their ordinary meaning in the relevant technical field, unless a different meaning is clearly given and / or is implied from the context in which it is used. All references to a / an / the element, apparatus, component, means, step, etc. are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any methods disclosed herein do not have to be performed in the exact order disclosed, unless a step is explicitly described as following or preceding another step and / or where it is implicit that a step must follow or precede another step. Any feature of any of the embodiments disclosed herein may be applied to any other embodiment, wherever appropriate. Likewise, any advantage of any of the embodiments may apply to any other embodiments, and vice versa. Other objectives, features and advantages of the enclosed embodiments will be apparent from the following description.

[0063] As used herein, the term “network” or “communication network” refers to a network following any suitable wireless communication standards. For example, the wireless communication standards may comprise 5th generation (5G) , new radio (NR) , 4th generation (4G) , long term evolution (LTE) , LTE-Advanced, wideband code division multiple access (WCDMA) , high-speed packet access (HSPA) , Code Division Multiple Access (CDMA) , Time Division Multiple Address (TDMA) , Frequency Division Multiple Access (FDMA) , Orthogonal Frequency-Division Multiple Access (OFDMA) , Single carrier frequency division multiple access (SC-FDMA) and other wireless networks. In the following description, the terms “network” and “system” can be used interchangeably. Furthermore, the communications between two devices in the network may be performed according to any suitable communication protocols, including, but not limited to, the wireless communication protocols as defined by a standard organization such as 3rd generation partnership project (3GPP) or the wired communication protocols.

[0064] The term “apparatus” used herein may refer to a network device or network entity or network function or any other devices (physical or virtual) in a communication network, namely, a network node / device. For example, the “apparatus” in the network may include a base station (BS) , an access point (AP) , a multi-cell / multicast coordination entity (MCE) , a server node / function (such as a service capability server / application server, SCS / AS, group communication service application server, GCS AS, application function, AF) , an exposure node / function (such as a service capability exposure  function, SCEF, network exposure function, NEF) , a unified data management, UDM, a home subscriber server, HSS, a session management function, SMF, an access and mobility management function, AMF, a mobility management entity, MME, a controller or any other suitable device in a wireless communication network. The BS may be, for example, a node B (NodeB or NB) , an evolved NodeB (eNodeB or eNB) , a next generation NodeB (gNodeB or gNB) , a remote radio unit (RRU) , a radio header (RH) , a remote radio head (RRH) , a relay, a low power node such as a femto, a pico, and so forth.

[0065] Yet further examples of the “apparatus” may comprise multi-standard radio (MSR) radio equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs) , base transceiver stations (BTSs) , transmission points, transmission nodes, positioning nodes and / or the like.

[0066] Further, the term “apparatus” may also refer to any suitable function which can be implemented in a network entity (physical or virtual) of a communication network. For example, the 5G system (5GS) may comprise a plurality of NFs such as AMF (Access and mobility Function) , SMF (Session Management Function) , AUSF (Authentication Service Function) , UDM (Unified Data Management) , PCF (Policy Control Function) , AF (Application Function) , NEF (Network Exposure Function) , UPF (User plane Function) and NRF (Network Repository Function) , RAN (radio access network) , SCP (service communication proxy) , OAM (Operation Administration and Maintenance) etc. In other embodiments, the network function may comprise different types of NFs (such as PCRF (Policy and Charging Rules Function) , etc. ) for example depending on the specific network.

[0067] The term “apparatus” may further refer to any end device that can access a communication network and receive services therefrom, namely, a terminal device. By way of example and not limitation, the terminal device refers to a mobile terminal, user equipment (UE) , or other suitable devices. The UE may be, for example, a Subscriber Station (SS) , a Portable Subscriber Station, a Mobile Station (MS) , or an Access Terminal (AT) . The terminal device may include, but not limited to, a portable computer, an image capture terminal device such as a digital camera, a gaming terminal device, a music storage and a playback appliance, a mobile phone, a cellular phone, a smart phone, a voice over IP (VoIP) phone, a wireless local loop phone, a tablet, a wearable device, a personal digital assistant (PDA) , a portable computer, a desktop computer, a wearable terminal device, a vehicle-mounted wireless terminal device, a wireless endpoint, a mobile station, a laptop-embedded equipment (LEE) , a laptop-mounted equipment (LME) , a USB dongle, a smart device, a wireless customer-premises equipment (CPE) and the like. In the following description, the terms “terminal device” , “terminal” , “user equipment” and “UE” may be used interchangeably. As one example, a terminal device may represent a UE configured for communication in accordance with one or more communication standards promulgated by the 3GPP, such as 3GPP’ LTE standard or NR standard. As used herein, a “user equipment” or “UE” may not necessarily have a “user” in the sense of a human user who owns and / or operates the relevant device. In some embodiments, a terminal device may be configured to transmit and / or receive information without direct human interaction. For instance, a terminal device may be designed to transmit information to a network on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the communication  network. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but that may not initially be associated with a specific human user.

[0068] As yet another example, in an Internet of Things (IoT) scenario, a terminal device may represent a machine or other device that performs monitoring and / or measurements, and transmits the results of such monitoring and / or measurements to another terminal device and / or network equipment. The terminal device may in this case be a machine-to-machine (M2M) device, which may in a 3GPP context be referred to as a machine-type communication (MTC) device. As one particular example, the terminal device may be a UE implementing the 3GPP narrow band internet of things (NB-IoT) standard. Particular examples of such machines or devices are sensors, metering devices such as power meters, industrial machinery, or home or personal appliances, for example refrigerators, televisions, personal wearables such as watches etc. In other scenarios, a terminal device may represent a vehicle or other equipment that is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.

[0069] References in the specification to “one embodiment, ” “an embodiment, ” “an example embodiment, ” and the like indicate that the embodiment described may include a particular feature, structure, or characteristic, but it is not necessary that every embodiment includes the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.

[0070] It shall be understood that although the terms “first” and “second” etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and / or” includes any and all combinations of one or more of the associated listed terms.

[0071] As used herein, the phrase “at least one of A and (or) B” should be understood to mean “only A, only B, or both A and B. ” The phrase “A and / or B” should be understood to mean “only A, only B, or both A and B. ”

[0072] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments. As used herein, the singular forms “a” , “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” , “comprising” , “has” , “having” , “includes” and / or “including” , when used herein, specify the presence of stated features, elements, and / or components etc., but do not preclude the presence or addition of one or more other features, elements, components and / or combinations thereof.

[0073] It is noted that these terms as used in this document are used only for ease of description and differentiation among nodes, devices or networks etc. With the development of the technology, other terms with the similar / same meanings may also be used.

[0074] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skills in the art to which this disclosure belongs.

[0075] In any computing or communication networks providing services to customers, service degradation prediction is vital for incident avoidance, which can reduce customers’ complain and lengthen the MTBF (Mean Time Between Failure) . If the incident can be predicted in advance, NoC (network operation center) &Support team can gain more time to adopt appropriate action such as restarting the VM (virtual machine) , enlarging the memory or changing config file to prevent real incident from occurring. And NoC team’s KPI (key performance indicator) will be improved dramatically after introducing such feature. It is one of the fundamental problems in AIOps (Algorithmic IT Operations) .

[0076] Many enterprises provide service level metrics, which reflect the performance of offering services. By predicting the performance metrics degradation status, the users can early detect performance anomaly events, predict service problems, and prevent or even eliminate service downtime, so as to improve product stability and service reliability, improve customer using experience, etc.

[0077] For example, Nengwen et al (reference [1] ) has proposed a method on this topic. In this paper, they utilize alarm data and introduce a series of feature extraction mechanism and use MIL (multi-instance learning) to train the model. And then employ it to predict incident event.

[0078] The paper (reference [1] ) mentioned above also introduces the mathematical concept on this topic.

[0079] FIG. 1 is a diagram showing an example for service degradation prediction.

[0080] As shown in FIG. 1, they formulate the problem of incident prediction as time window classification. They use FIG. 1 to illustrate the problem formulation. To ensure the real-time online prediction, they adopt the strategy of moving time window with size / length w and a fixed step Δt. For the current time t, they get the observation window [t -w, t] . Then, they use alert data within the observation window to predict whether an incident will occur within the prediction window [t + tl , t +tl + tp] . Lead time tl in FIG. 1 is the minimum time interval that engineers need to react (e.g., master-standby switch) to an early warning. That is, they can leave enough time for engineers to handle the early warning after predicting an incident.

[0081] Some of the problems of these manners, such as described as in Nengwen’s paper, are listed as below.

[0082] They utilize the alarm data as shown in below table 1. However, in fact, this alarm information is very detailed, and it is hard to be realized in most of the systems. So many systems cannot follow their method.

[0083]

[0084] Table 1 The alarm data source from Nengwen’s paper

[0085] Further, many hand-crafted features are proposed, such as alarm count, inter-arrival time. But such feature engineering is tedious and time costing.

[0086] The most challenging issue is extreme sample class unbalancing. The positive sample (incident) is quite rare comparing with negative sample (normal) . The paper proposes over sampling method, but it usually generate many “fake” samples and it is not very helpful to the result.

[0087] The observation time window w is too short. They set 60 min. However, it will miss some important global features. For example, many alarm storm has periodic pattern resulted by software upgrade in certain timestamp in every day / week.

[0088] Exemplary embodiments of the present disclosure provide a method and an apparatus for analysing service performance data.

[0089] FIG. 2A is an exemplary flow chart showing a method for analysing service performance data, according to exemplary embodiments of the present disclosure.

[0090] As shown in FIG. 2A, the method 200 comprises: a step S202, obtaining a plurality of points of data for a key performance indicator, KPI; a step S204, modelling the plurality of points, with generalized Pareto distribution, GPD; a step S206, calculating at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; and a step S208, determining a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.

[0091] According to exemplary embodiments of the present disclosure, the generalized Pareto distribution (GPD) may be used to model the data, and thus extreme values (which more possibly corresponds to anomaly) will be distinguished more accurately. Further, the data may be raw metrics data (KPI data) , and thus the solutions is more scalable and can be widely used in different scenarios and products.

[0092] In exemplary embodiments of the present disclosure, a plurality of values is configured for the probability parameter. The at least one threshold comprises a plurality of thresholds respectively corresponding to the plurality of values of the probability parameter.

[0093] In exemplary embodiments of the present disclosure, a plurality of value scope is determined, based on the plurality of thresholds. An anomaly score for a point is determined based on a value scope that the point belongs to.

[0094] According to exemplary embodiments of the present disclosure, an anomaly score with a plurality of values may be used. And thus, the anomaly grade of the data point may be more accurately presented.

[0095] FIG. 2B is an exemplary flow chart showing additional steps of the method as shown in FIG. 2A, according to embodiments of the present disclosure.

[0096] As shown in FIG. 2B, the method 200 may further comprise: a step S210, adjusting the anomaly score for the point, based on one or more anomaly scores of one or more points around the point.

[0097] In exemplary embodiments of the present disclosure, the anomaly score for the point is  adjusted, based on a decay factor and a sum of the anomaly scores of one or more points before the point and of the point. The decay factor is determined based on whether an anomaly happens at the point, or the decay factor is determined based on whether an anomaly happens at a point before the point.

[0098] In exemplary embodiments of the present disclosure, the decay factor is smaller when an anomaly happens at a point further away from the point.

[0099] According to exemplary embodiments of the present disclosure, the adjusted anomaly score may be related to a duration of an anomaly over more than one points. That is, a continuing anomaly may be focused more.

[0100] In exemplary embodiments of the present disclosure, the one or more distribution parameters of the plurality of points are calculated by using maximum likelihood estimation, MLE, and Grimshaw’s law.

[0101] According to exemplary embodiments of the present disclosure, an extreme value theory is used, and thus, extreme anomaly will be focused more, which is more important in most of systems.

[0102] As shown in FIG. 2B, the method 200 may further comprise: a step S212, summing anomaly scores of points with the same timestamp for more than one KPI in a group, at each timestamp, to obtain a plurality of group anomaly scores for the group.

[0103] According to exemplary embodiments of the present disclosure, more than one KPI which is grouped may be analyzed together. The situation of the service performance may be analyzed or predicted more accurately.

[0104] FIG. 2C is an exemplary flow chart showing additional steps of the method as shown in FIG. 2A, according to embodiments of the present disclosure.

[0105] In exemplary embodiments of the present disclosure, the method may further comprise: a step S214, creating a sample including one or more groups for a learning machine, each group with a plurality of group anomaly scores. The sample is labelled as a first type or a second type, based on whether an event happens after the sample. The first type is positive, and the second type is negative.

[0106] In exemplary embodiments of the present disclosure, the method may further comprise: a step S216, training the learning machine with a plurality of labelled samples.

[0107] According to exemplary embodiments of the present disclosure, leaning machine may be used to classify that the data representing the current situation of the system is related to an event (such as a future incident of the system) or not.

[0108] In exemplary embodiments of the present disclosure, a first task of the learning machine is trained to predict whether an event will happen after an unlabeled sample; and / or a second task of the learning machine is trained to predict a characteristic parameter of data after the unlabeled sample.

[0109] According to exemplary embodiments of the present disclosure, a trained learning machine can be used to predict a future event based on the obtained data representing the current situation of the system.

[0110] In exemplary embodiments of the present disclosure, the learning machine comprises a neural network.

[0111] In exemplary embodiments of the present disclosure, convolutional layers of the learning  machine are frozen when training the first task and the second task.

[0112] According to exemplary embodiments of the present disclosure, the same sample data may be used for different tasks of the training machine, while the consistence may be remained between different tasks.

[0113] In exemplary embodiments of the present disclosure, a first number of labeled samples with the first type are used to train the learning machine. A first number of labeled samples with the second type are selected from a plurality of labeled samples with the second type, to be used to train the learning machine.

[0114] In exemplary embodiments of the present disclosure, scores for ranking of the plurality of labeled samples with the second type are generated, by a one-class support vector method, OCSVM, based on embedding vectors outputted from convolutional layers of the learning machine. The first number of labeled samples with the second type are selected, based on the scores of the plurality of labeled samples with the second type.

[0115] In exemplary embodiments of the present disclosure, a distribution scope of the scores of the plurality of labeled samples with the second type is divided into a plurality of sub scopes, based on appearance frequency of the scores. A sub scope covering scores with lower appearance frequencies has a smaller size. The first number of labeled samples with the second type are selected from each sub scope averagely.

[0116] According to exemplary embodiments of the present disclosure, when selecting the second type samples, which is more than the first type samples, an appearance frequencies (namely, whether this sample is potentially normal or not) is considered. It is tried to select more samples with less appearance frequencies. Therefore, a more accurate leaning machine may be obtained, by using such selected samples.

[0117] In exemplary embodiments of the present disclosure, the service performance data is related to KPI data in algorithmic information technology operations, AIOps, or a sensor acquired data in a monitoring system.

[0118] According to exemplary embodiments of the present disclosure, the solution can scale to many different scenarios, in which service-related data is obtained and analyzed.

[0119] Some more detailed exemplary embodiments will be illustrated below.

[0120] For illustration, the solutions in these exemplary embodiments may be divided into 4 parts.

[0121] Part 1 is about using Extreme value theory to detect anomalies in data points.

[0122] When implementing anomaly detection, a 3-sigma method is widely used. It is very simple. However, the false alarm appearance frequency is very high. In fact, NoC team member usually just pay attention to the extreme scenario. Therefore, 3-sigma method will provide too much useless information.

[0123] In order to overcome the shortcoming of 3 sigma method, extreme value theory (such as shown in reference [2] ) may be used to detect anomalies in data points. The extreme value theory has no assumption on the data distribution.

[0124] For example, by using extreme value theory, 3 thresholds under different parameter value are determined and then point-wise anomaly score and adjusted anomaly score are calculated.

[0125] Part 2 is training Sample collection and multi-task construction.

[0126] Multi-task learning (such as shown in references [3] [4] ) is implemented in this solution. It has main task (incident prediction) and auxiliary task or so-called pretext task. The concept is derived from self-supervised learning, which constructs a learning task to improve the performance.

[0127] There may be two tasks designed in the model.

[0128] Task 1 is main task which is used to predict if incident will happen in next time window. It consists of convolutional layers and full connected layers.

[0129] Task 2 is pretext task which is used to predict the highest anomaly score in next time window. It also consists of convolutional layers and full connected layers. The convolutional layers are shared by both 2 tasks.

[0130] More specifically, training sample for two tasks are collected as follows.

[0131] Part 2a) is for Samples for incident prediction (main task) .

[0132] In many systems, there’ re a large number of metrics. Take IoT Accelerator for example, there’ re about 1 million KPIs.

[0133] Usually, each KPI belongs to 1 metrics group which is defined by domain experts.

[0134] For each metrics group, the adjusted anomaly score of the KPIs within this group may be summed, and may be named group *anomaly score / group anomaly score.

[0135] Suppose there’re Ng metric groups, the feature of training sample is the Ng group anomaly score KPIs. It is a multi-variate time series data. The observing window w may be 4 weeks while the label is whether there’s an incident happens in the future 10min (tl) –30min (tl + tp) . If incident happens, the label for this sample including group anomaly scores will be marked as 1, otherwise, it will be marked as 0. It should be understood these specific parameter values are only used for illustration, and in practice, these values can be changed due to implementation scenarios.

[0136] Part 2b) is for Samples for pretext task.

[0137] The feature of training sample is the same as part 2a) . But a pretext task is constructed here. This task is to predict the maximum value in the next 10-30min of each group anomaly score KPI.

[0138] Maximum value in the next 10-30min in group anomaly score KPI has strong connection with our main task (incident prediction) . Adding pretext task can get better feature representation.

[0139] Part 3 is training phase.

[0140] In part 2, a multi-task neural network model is introduced. Two tasks are trained at the same time.

[0141] After training finish, only task 1 is used to predict service degradation incident. This model is denoted as model T1.

[0142] Usually, the positive sample (incident happens) has few samples while there are many negative samples (no incident happens) . It is an extreme imbalance scenario which causes low performance of the model. Following approaches are adopted in model training to improve the accuracy. We apply the oneClassSVM (such as shown in reference [5] ) to the embedding vectors output by convolutional layer and select the normal sample intelligently by normal score to balance the positive and negative sample. The convolutional layer may be frozen and only full connected layer is trained to get better result.

[0143] Part 4 is detection phase.

[0144] KPI data is coming as streaming format. The 3 thresholds determined by extreme value theory are used to calculate point-wise anomaly score and adjusted anomaly score. Then group anomaly score KPIs are acquired by summing up all the adjusted anomaly score and multiply decay factor alpha within one KPI group. The group anomaly score KPIs of the latest 4 weeks are sent to model T1 to predict incident. It is a multi-variate time series classification. If it is predicted as an incident, NoC team member will be notified by email, SMS, or dashboard so that they can take action to avoid this incident.

[0145] That is, in these solutions, extreme value theory is used to calculate point-wise anomaly score and adjusted anomaly score. This process is very fast. Group anomaly score KPI is utilized as feature to predict incident. Pretext task is constructed, and multi-task learning is used to train to get better feature representation.

[0146] In these specific exemplary embodiments, it specifies how to handle extreme sample imbalance issue. Freeze the convolutional layers of model T1 to train 2 classes (with incident and without incident) under sample balance condition. And smart way has been proposed to select normal samples.

[0147] According to embodiment of the present disclosure, solution just uses raw metrics data instead of the alarm with detailed information. It is more scalable and can be widely used in different kinds of products. Using extreme value theory can be more robust than 3-sigma and meanwhile it can enjoy the high-speed detection as 3-sigma method. Adjusted anomaly score calculation has considered anomaly points intensity and duration simultaneously. Deep learning is used to handle Ng group anomaly score KPIs so that hand-crafted effort can be reduced. Pretext task is added for better learning feature representation. Special method to handle extreme sample imbalance problem is provided, including select the negative samples in smart way.

[0148] Further, the above 4 parts will be further illustrated below.

[0149] Part 1 is using Extreme value theory to detect anomalies.

[0150] When implementing anomaly detection, 3-sigma method might be used. It is very simple. But the false alarm frequency is very high. However, in fact, NoC team members usually just pay attention to the extreme scenario.

[0151] In order to overcome the shortcoming of 3 sigma method, extreme value theory is utilized in embodiments, and it can enjoy the high-speed when detection.

[0152] The typical extreme value theory POT makes no assumption on the data distribution (such as shown in reference [2] ) . It uses the GPD (Generalized Pareto Distribution) to model the value over the peak (for example, it can be defined as 2%maximum value) .

[0153] FIG. 3A is a diagram illustrating an extreme value theory.

[0154] As shown in FIG. 3A, some data points (X1, …Xn) may be used for calibration. That is, these data points will be used to determine a threshold zq. From the data point Xn+1, a data point will be determined as abnormal (FLAG! ) , if the data point’ value is over the threshold zq. An initial threshold t may be configured for the calculation for zq. It is useful to the data stream.

[0155] Particularly, it uses MLE (Maximum Likelihood Estimation) and Grimshaw’s law to get  the parameters of the distribution.

[0156] A basic formulation may be illustrated as below.

[0157]

[0158] In this formula, t is the initial threshold. For example, in practice t may be to a high empirical quantile (98%) . q is the desired probability. n is the total number of observations, while Nt is the number of peaks (whose value is larger than t) . γ and σ are 2 learnable distribution characteristic parameters, calculated based on the observations, for example, using Grimshaw’s manner. Zq is the final determined threshold for the extreme value.

[0159] Once the input parameters (right side of the above formulation) are acquired, the threshold Zq can be determined. Then, if the value of a data point is above threshold, it can be marked as extreme value. It should be noted that anomaly or extreme value may sometimes be mix-used in this disclosure and other papers, for such context.

[0160] An exemplary process for calculating the zq may be as follows.

[0161] 1: start procedure POT (Peaks-over-Threshold) (Xi, ... Xn, q)

[0162] 2: t <- SetInitialThreshold (Xi, ... Xn)

[0163] 3: Yt <- {Xi-t | Xi >t}

[0164] 4:

[0165] 5:

[0166] 6: return zq, t

[0167] 7: end procedure

[0168] As an exemplary implementation, t may be set to 98%. Then, after comparing each data point to the t, a data combination of Yt may be obtained. If a data point Xi is bigger than t, then a difference between the data point Xi and t will be included in Yt (namely, the GPD distribution is trained in respect with the values over the initial threshold, by POT) . Then, a Grimshaw method will be used to generate based on Yt. Further, the zq can be calculated by the above formulation.

[0169] The Grimshaw method is widely used since it can reduce the two variables optimization problem to a single variable equation. And thus the two parameters will be easier to be solved.

[0170] Such as illustrated in the reference [2] , “The trick of the Grimshaw’s procedure is to reduce the two variables optimization problem to a single variable equation. Let us write  As we find an extremum of l, we look for solutions of the system  Grimshaw has shown that if we get a solution (γ *, σ*) of this system then the variable x *= γ * / σ*is solution of the scalar equation u (x) v (x) = 1 where:

[0171]

[0172] Moreover, by finding a solution x *of this equation, we can retrieve γ *= v (x *) -1 and σ *= γ * / x*. Nevertheless, the solutions of this equation give only possible candidates for the maximum of l, so we have to get all the roots, to calculate the corresponding likelihood and keep the best tuple as our final estimates. We have to pay attention to how this numerical root search is done. In fact, the values 1+xYi must be strictly positives. As the Yi are positive, we must find x *on where YM = max Yi. Grimshaw calculates also an upper-bound x *max for this root search:  where Ym = min Yi and is the mean of the Yi. Finally, the number of roots is not known and 0 is always a solution so the implementation must find all the solutions and pick up those which maximizes the likelihood. ”

[0173] Here is the result for 3-sigma method and extreme value theory respectively.

[0174] FIG. 3B is a diagram showing false alarms by 3 sigma method.

[0175] As shown in FIG. 3B, too many alarms (peaks which are flagged by bold dots in FIG) will be caused.

[0176] FIG. 3C is a diagram showing how extreme value detection helps to reduce false alarm.

[0177] As shown in FIG. 3C, alarms are greatly reduced. Only these extreme values are flagged.

[0178] The solutions in exemplary embodiments may also provide further improvement for implementation of the extreme value theory.

[0179] FIG. 4A is a diagram showing 3 thresholds determined by extreme value theory.

[0180] FIG. 4B is a diagram showing point-wise anomaly score before being adjusted.

[0181] FIG. 4C is a diagram showing point-wise anomaly score after being adjusted.

[0182] The extreme value theory only requires to input probability parameter q. The higher q value means the criteria is stricter and more points will be detected as anomalies (while the threshold will be lower) , and wise versa. It is recommended to set q from 10-3 to 10-5. The embodiments may set q1 = 10-3, q2=10-4, q3 = 10-5 to get 3 thresholds (such as, t1, t2, t3 in FIG. 4A) and calculate the point-wise anomaly score according to the below table, in which the point value in data point of each timestamp is denoted as v.

[0183] RangePoint-wise anomaly scorev < t10t1 <= v < t21t2 <= v < t32v >= t33

[0184] Table 2 The definition of point-wise anomaly score of each timestamp

[0185] The point-wise anomaly score can reflect the anomaly intensity in each timestamp. And the embodiments further use sliding window (e.g., 15min) to sum up the point-wise anomaly score in this window and multiply decay factor alpha to get adjusted anomaly score.

[0186] If there’s only 1 anomaly point (take v=1 for example) , the point-wise anomaly score value 1 will last for 15 min (e.g., time sliding window is 15min) , without adjustment. It is not reasonable. So, decay factor alpha is introduced.

[0187]

[0188] Then adjusted anomaly score is defined as below. Suppose current timestamp is t and the time window length is N while v is the point-wise anomaly score.

[0189]

[0190] In implementation, that may be a streaming process, and the data will come in a data stream. For example, one data point will come every minute. When the data comes, it will be the last point of the sliding window (for example, 15 minutes in length) . If the point is an exception (anomaly) , add the exception score of the previous 14 points and the exception score of the point itself (that is, the exception score of a total of 15 points) . If the point is not an exception, see how many consecutive points in the front are not exceptions. For example, the sliding window has 15 points, and the last 5 points are not exceptions. The n power of 0.8 is taken as 5, which means that if a group of exceptions may have ended, they will be attenuated as soon as possible.

[0191] The advantage is that it not only considers the point-wise intensity but also utilizes the duration of the anomalies. If the duration time is long, it needs to be higher alert.

[0192] Many warning systems has the function to display the severity level such as Minor, Major, Critical. The KPI adjusted anomaly score can be also set thresholds to distinguish Minor, Major, Critical, and therefore is compatible.

[0193] As shown in FIG. 4A, in right side circuited region, anomalies last for a long time while in left side circuited region, anomalies only last for a short time. From point-wise anomaly score perspective, there’s no difference between these two regions (See FIG. 4B) ) . After applying adjusted anomaly score, there’s great difference between these two regions (See FIG. 4C) ) . This is what a practical system needs.

[0194] In the cold start of a processing system, historical data is collected from pipeline or data source, for example, from any data collection system, such as Prometheus, Kafka (which are systems widely used in technical field of bigdata) , etc., any database and so on. Extreme value theory algorithm is employed for each KPI to acquire 3 thresholds. Then point-wise anomaly score and adjusted anomaly score are calculated. Of course, the thresholds can be updated by day or week to tackle concept drift issue.

[0195] As in part 2, training Sample collection and multi-task construction may be illustrated.

[0196] Multi-task learning is introduced in solutions in the embodiments. Besides implementing incident prediction, pretext task may be also constructed. The concept is derived from self-supervised  learning. It creates a learning task to improve the performance.

[0197] In a sub part 2a) , samples for incident prediction (main task) are illustrated.

[0198] In many systems, there’ re a large number of metrics. Take IoT Accelerator for example, there’re about 1 million KPIs.

[0199] Usually, each KPI belongs to 1 metrics group which is defined by domain experts. The number of metrics group varies in different system. It can be denoted as Ng. In an exemplary system, there’re 39 metrics groups, so Ng = 39. If there’s no metrics group, the KPI can be clustered to generate group, such as according to its name (by using topic model, such as shown in reference [6] ) . Then each cluster can be considered as one metrics group.

[0200] FIG. 5 is a diagram showing an approach for constructing a group anomaly score.

[0201] FIG. 6 is a diagram showing multiple groups, generated by using approach shown in FIG. 5.

[0202] For each metrics group, the adjusted anomaly score of the KPIs within this group for each timestamp may be summed up to get the new KPI named group *anomaly score (See FIG. 5) . There’re Ng group anomaly score KPIs constructed by this approach (See FIG. 6) . It is multi-variate time series data.

[0203] FIG. 7 is a diagram showing an approach to slide the observing windows to collect data.

[0204] As showing in FIG. 7, two rectangles (representing the observing windows) are shown. That illustrates that the observing window slides from a first position to a second position.

[0205] The observing window w is 4 weeks. Lead time tl is defined 10 min and predictive time window tp is 20 min.

[0206] The feature of training sample is the Ng KPIs in the observing window (4 weeks) while the label is whether there’s an incident happens in the future 10min (tl) –30min (tl + tp) . If incident happens, the label will be marked as 1, otherwise, it will be marked as 0. Sliding window is used to keep on collecting samples.

[0207] FIG. 8 is a diagram showing a periodic feature of obtained data.

[0208] The reason why to collect 4 weeks data is that the group anomaly score KPI may have periodic feature as in FIG. 8. If the sequence is too short, it cannot capture this information.

[0209] For calculation, each input group anomaly score KPI may be normalized as the method below:

[0210] 1) Get the maximum value of the past duration, such as half years, ymax of each group anomaly score KPI.

[0211] 2) For each point (the value is denoted as v) of each group anomaly score KPI, y = y / ymax. ymax may be denoted as pre-defined maximum value.

[0212] The maximum value of the past half years instead of just 4 weeks is used. The reason is that the normalization scale can be unified for all the samples.

[0213] In a subpart 2b) , samples for pretext task may be illustrated.

[0214] FIG. 9A is a diagram showing a first example about a sample for pretext task.

[0215] FIG. 9B is a diagram showing a second example about a sample for pretext task.

[0216] The feature of training sample is still the Ng group anomaly score KPIs as part 2a) and the  normalization method is identical. This pretext task is constructed to predict the maximum value in the next 10-30min of each group anomaly score KPI. Here is the pretext task illustration. The label is the maximum value (after normalized) . In this example, the label is 0.26 (in FIG. 9A) and 0.63 (in FIG. 9B) respectively.

[0217] Maximum value in the next 10-30min in group anomaly score KPI has strong connection with main task (incident prediction) . Adding pretext task can get better feature representation.

[0218] The main task label incident is usually provided by NoC team (since whether a incident happens may be judged by NoC team) while the pretext task label can be acquired by the group anomaly score KPI itself (since a specific value can be directly calculated based on the data) (self-supervised learning) .

[0219] Part 3 may be training phase.

[0220] A multi-task neural network model may be introduced, and applied in time series data (such as showing in reference [4] ) .

[0221] FIG. 10 is a diagram showing a multi task learning for multiple tasks.

[0222] Multi-task learning means using one model, here using one neural network, for do simultaneously several tasks (FIG. 10 is also seen in reference [3] ) .

[0223] In this case, for example, it will implement 2 training tasks at the same time.

[0224] Task 1 consists of convolutional layers and full connected layers. It is used to predict incident.

[0225] Task 2 also consists of convolutional layers and full connected layers. It predicts the labels of pretext task. The convolutional layers are shared by both 2 tasks. Adding pretext task is good for representation learning.

[0226] Task 1 is the main task while the task 2 is the pretext task.

[0227] FIG. 11 shows the network structure for multi-task learning.

[0228] The neural network of FIG. 11 consists of 2 parts: The shared layers (CNN) and FC (Fully connected layers) .

[0229] As shown in FIG. 11, the multi-variate time series (including all group anomaly score KPIs) are inputted to the convolutional part of the learning machine. The convolutional part may include a first layer for convolution, a second layer for convolution, max pooling layer, and flatten layer. There are also ReLU (Rectified Linear Unit) between some layers.

[0230] Then, the output from the convolutional part will go for different FC (full connect) layers of two tasks.

[0231] The main task may be a 2 classes classifier, using a softmax function. A class of 0 may indicate no incident. A class of 1 may indicate incident.

[0232] For the pretext task, the reason that ReLU (Rectified Linear Unit) is used at the last output layer instead of sigmoid function in the pretext task is the maximum value in the next 10-30min may exceed the pre-defined maximum value. It will be larger than 1 after normalization in this scenario.

[0233] The input is all the group anomaly score KPIs in 4 weeks. It is multi-variate time series handling.

[0234] Specifically, for the CNN (convolutional neural network) structure, the first layer is  Conv1D with 64 filters and the kernel size is 3. The ReLU is the activation function for this layer. The second layer is also Conv1D with 64 filters and the kernel size is 3. The ReLU is the activation function. The third layer is the max pooling layer. Finally, the output will be flattened as the input for the FC layers.

[0235] There’re 2 branches of FC layers for different tasks. The first branch is for main task. It consists of hidden layer with 256 neurons and finally output by softmax activation function to predict 0 or 1. The second branch is for pretext task. It consists of hidden layer with 256 neurons and finally output the prediction for the maximum value of each group anomaly KPI by ReLU activation functions.

[0236] FIG. 12 is a diagram showing only the main task for detection.

[0237] After training finishes, only task 1 is used to predict service degradation incident (See FIG. 12) . This model may be denoted as model T1.

[0238] In the samples for training (such as, the samples already labelled by human) , usually, the positive sample (incident happens) has few samples while there are many negative samples (no incident) . It is extreme imbalance scenario. There’ re 2 traditional approaches to solve this problem.

[0239] 1) Apply pressure test or chaos engineering in the lab to simulate many incident scenarios. But not all the products can implement this operation and incident generated in the lab doesn’ t necessarily mean it will happen in the customers’ practical site.

[0240] 2) Use machine learning method. There are 3 traditional ways and disadvantages.

[0241] a) Over sample the positive samples. Simply duplicate or just making some noises of positive sample usually generate meaningless samples. It has risk of over-fitting of the positive sample.

[0242] b) Under sample the negative sample. It fails to utilize all the data to get good feature representation and it will under-fit for the whole dataset.

[0243] c) Give very high weight to the negative sample for the training loss. But in practice, it doesn’t have good result.

[0244] The strategy mentioned below is adopted to re-balance the dataset (see reference [7] for handling long tail image classification) .

[0245] FIG. 13 is a diagram showing an apply of OneClassSVM.

[0246] FIG. 14 is a diagram showing a training for the main task.

[0247] Suppose the number of positive samples is N, the negative sample is re-sampled to N as below:

[0248] i. Input all the negative samples to the neural network of convolutional part already trained. The convolutional part is the same as before. The embedding vectors are outputted from the convolutional layer and are used for a OneClassSVM to get the normal score for each sample, as shown in FIG. 13.

[0249] ii. For the normal score output from OneClassSVM, if the score is low, it means the sample is rare. If the score is high, it means the sample happens frequently. The sample is sorted by the normal score from the lowest to highest. Suppose the number of positive samples is N, we sample from the negative sample according to the table below. Accordingly, the samples with low frequency may be also selected equally to the samples with high frequency.

[0250] RankSample NumberLowest 2%N / 6Lowest 2%-5%N / 6Lowest 5%-10%N / 6Lowest 10%-20%N / 6Lowest 20%-40%N / 6OtherN / 6

[0251] Table 3 The sample method to balance positive and negative

[0252] iii. After sampling, the positive and negative sample is 1: 1. And the convolutional layer is frozen and only the full connected layer is trained using these 1: 1 balance samples. It can overcome sample extreme imbalance issue. See FIG. 14. The model T1 is updated by this step. Further, all the samples have been seen in the multi-task learning. So, it means the whole datasets have been utilized.

[0253] Part 4 is Detection phase.

[0254] KPI data is coming as streaming format. The 3 thresholds determined by extreme value theory are used to calculate point-wise anomaly score and adjusted anomaly score. Then group anomaly score KPIs are acquired by summing up all the adjusted anomaly score within one KPI group. The group anomaly score KPIs of the latest 4 weeks are sent to model T1 to predict incident. It is a multi-variate time series classification. If it is predicted as an incident, NoC team member will be notified by email, SMS, or dashboard so that they can take action to avoid this incident.

[0255] FIG. 15 is a diagram showing a successful use case.

[0256] As shown in FIG. 15, on certain time slot in a July, the program according to embodiments of the present disclosure predicts an incident will happen for a customer CSP (Communication Service Provider) A. NoC team has received our incident notification and adopt actions in a lead time to avoid potential issue, which reduces customer’s complain.

[0257] According to NOC team feedback, without the service prediction, the data base query will be much slower than normal, which will result offering API service not available, and impact the platform reliability and stability. So, after introducing system according to embodiments of the present disclosure, the MTBF (Mean Time Between Failure) is lengthened and ticket number decreases, which can improve NoC team’s KPI.

[0258] The solution can scale to other scenarios.

[0259] Elderly people fall detection is very important in health-care system. Sensors such as X, Y, Z accelerometers are popular used to monitor elderly people status. Multi-task learning as mentioned above may be used to train the model to distinguish fall or not fall. The main task is to  classify fall happens or not while the pretext task is to predict the next value of the time series. And the sample balance method and training method can also be employed in this scenario for the fall sample is quite few comparing with normal sample.

[0260] Time series anomaly detection is widely used in AIOps. Multi-task learning can be employed in this scenario. Main task is to implement normal or abnormal classification while pretext task is to predict the future point value. It is also extreme imbalance problem since anomaly sample is rare. So, our re-balance method can be introduced in this scenario.

[0261] FIG. 16A is a diagram showing a first group of exemplary group anomaly score KPI, during an implementation of embodiments of the present disclosure.

[0262] FIG. 16B is a diagram showing a second group of exemplary group anomaly score KPI, during an implementation of embodiments of the present disclosure.

[0263] FIG. 16C is a diagram showing a 39th group of exemplary group anomaly score KPI, during an implementation of embodiments of the present disclosure.

[0264] During an exemplary implementation, there are about 1million KPI to handle. And it is divided into 39 KPI groups. The observing window w is 4 weeks. Lead time tl is defined 10 min and predictive time window tp is 20 min.

[0265] KPI data is coming as streaming format. The 3 thresholds determined by extreme value theory are used to calculate point-wise anomaly score and adjusted anomaly score. Then group anomaly score KPIs are acquired by summing up all the adjusted anomaly score within one KPI group. The group anomaly score KPIs of the latest 4 weeks are sent to model T1 to predict incident. It is a multi-variate time series classification. If it is predicted as an incident, NoC team member will be notified by email, SMS, or dashboard so that they can take action to avoid this incident.

[0266] FIG. 17 is a diagram showing a flowchart for whole service degradation prediction procedure.

[0267] FIG. 17 shows a whole procedure, and details of each part of FIG. 17 are already illustrated above, such as in FIG. 2 to FIG. 16. As shown in FIG. 17, the model T1 is built up firstly as below.

[0268] a) Multi-task learning is implemented. Task 1 (main task, predict incident) and task 2 (pretext task, predict he maximum value in the next 10-30min within each metric group) are constructed. The model consists of convolutional layers and full connected layers and it is trained to learn 2 tasks at the same time.

[0269] b) Only Task 1 branch is left for prediction, namely model T1, but it is under serious label imbalance.

[0270] c) In order to balance the positive sample and negative sample, OneClassSVM trained by the embedding vectors (only of negative samples) output from convolutional layer is utilized. Then normal score is calculated for each negative sample. And negative sample is re-sampled according to the ranking of normal score. If the sample is rare, it will have more opportunity to be selected.

[0271] d) The model T1 is re-trained under sample balance condition. The convolutional layer is frozen while the FC layers are trainable.

[0272] e) Finally, model T1 is used in the real customers’s ite to predict incident.

[0273] According to exemplary embodiments of the present disclosure, extreme values (which more possibly corresponds to anomaly) will be distinguished more accurately, and thus NoC team will be notified more accurately. The NoC team will get accurate alarm about possible incident, and will not be noised by too many “false” alarms.

[0274] FIG. 18 is a block diagram showing exemplary apparatuses suitable for practicing the reception apparatus, according to embodiments of the disclosure.

[0275] As shown in FIG. 18, the apparatus 180 for analysing service performance data may comprise: a processor 1801; and a memory 1802. The memory 1802 contains instructions executable by the processor 1801, whereby the apparatus is operative for: obtaining a plurality of points of data for a key performance indicator, KPI; modelling the plurality of points, with generalized Pareto distribution, GPD; calculating at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; and determining a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.

[0276] Further, the apparatus 180 may be operative to perform the method according to any of the above embodiments, such as these shown in FIG. 2A, 2B, 2C.

[0277] The processors 1801 may be any kind of processing component, such as one or more microprocessor or microcontrollers, as well as other digital hardware, which may include digital signal processors (DSPs) , special-purpose digital logic, and the like. The memories 1802 may be any kind of storage component, such as read-only memory (ROM) , random-access memory, cache memory, flash memory devices, optical storage devices, etc.

[0278] FIG. 19 is a block diagram showing an apparatus readable storage medium, according to embodiments of the present disclosure.

[0279] As shown in FIG. 19, the computer-readable storage medium 190, or any other kind of product, storing instructions 1901 which when executed by at least one processor, cause the at least one processor to perform the method according to any one of the above embodiments, such as these shown in FIG. 2A, 2B, 2C.

[0280] In addition, the present disclosure may also provide a carrier containing the computer program as mentioned above, wherein the carrier is one of an electronic signal, optical signal, radio signal, or computer readable storage medium. The computer readable storage medium can be, for example, an optical compact disk or an electronic memory device like a RAM (random access memory) , a ROM (read only memory) , Flash memory, magnetic tape, CD-ROM, DVD, Blue-ray disc and the like.

[0281] FIG. 20 is a schematic showing units for the apparatus, according to embodiments of the present disclosure.

[0282] In embodiments of the present disclosure, the apparatus 2000 may comprise: an obtaining unit 2002, configured for obtaining a plurality of points of data for a key performance indicator, KPI; a modelling unit 2004, configured for modelling the plurality of points, with generalized Pareto distribution, GPD; a calculating unit 2006, configured for calculating at least one threshold for  distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; and a determining unit 2008, configured for determining a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.

[0283] In embodiments of the present disclosure, the apparatus is further operative to perform the method according to any of embodiments above described, such as shown in FIG. 2A, 2B, 2C.

[0284] The term ‘unit’ may have conventional meaning in the field of electronics, electrical devices and / or electronic devices and may include, for example, electrical and / or electronic circuitry, devices, modules, processors, memories, logic solid state and / or discrete devices, computer programs or instructions for carrying out respective tasks, procedures, computations, outputs, and / or displaying functions, and so on, as such as those that are described herein.

[0285] With these units, the apparatus 2000 may not need a fixed processor or memory, any computing resource and storage resource may be arranged from at least one network node / device / entity / apparatus relating to the communication system. The virtualization technology and network computing technology (e.g. cloud computing) may be further introduced, so as to improve the usage efficiency of the network resources and the flexibility of the network.

[0286] The techniques described herein may be implemented by various means so that an apparatus implementing one or more functions of a corresponding apparatus described with an embodiment comprises not only prior art means, but also means for implementing the one or more functions of the corresponding apparatus described with the embodiment and it may comprise separate means for each separate function, or means that may be configured to perform two or more functions. For example, these techniques may be implemented in hardware (one or more apparatuses) , firmware (one or more apparatuses) , software (one or more modules) , or combinations thereof. For a firmware or software, implementation may be made through modules (e.g., procedures, functions, and so on) that perform the functions described herein.

[0287] Particularly, these function units may be implemented either as a network element on a dedicated hardware, as a software instance running on a dedicated hardware, or as a virtualized function instantiated on an appropriate platform, e.g. on a cloud infrastructure.

[0288] In general, the various exemplary embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software that may be executed by a controller, microprocessor or other computing device, although the disclosure is not limited thereto. While various aspects of the exemplary embodiments of this disclosure may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.

[0289] As such, it should be appreciated that at least some aspects of the exemplary embodiments of the disclosure may be practiced in various components such as integrated circuit chips and modules.  It should thus be appreciated that the exemplary embodiments of this disclosure may be realized in an apparatus that is embodied as an integrated circuit, where the integrated circuit may include circuitry (as well as possibly firmware) for embodying at least one or more of a data processor, a digital signal processor, baseband circuitry and radio frequency circuitry that are configurable so as to operate in accordance with the exemplary embodiments of this disclosure.

[0290] It should be appreciated that at least some aspects of the exemplary embodiments of the disclosure may be embodied in computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, RAM, etc. As will be appreciated by those skilled in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA) , and the like.

[0291] The present disclosure includes any novel feature or combination of features disclosed herein either explicitly or any generalization thereof. Various modifications and adaptations to the foregoing exemplary embodiments of this disclosure may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings. However, any and all modifications will still fall within the scope of the non-limiting and exemplary embodiments of this disclosure.

[0292] Exemplary embodiments herein have been described above with reference to block diagrams and flowchart illustrations of methods and apparatuses. It will be understood that each block of the block diagrams and flowchart illustrations, and combinations of blocks in the block diagrams and flowchart illustrations, respectively, can be implemented by various means including computer program instructions. These computer program instructions may be loaded onto a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions which execute on the computer or other programmable data processing apparatus create means for implementing the functions specified in the flowchart block or blocks.

[0293] Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are contained in the above discussions, these should not be construed as limitations on the scope of the subject matter described herein, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in  multiple embodiments separately or in any suitable sub-combination.

[0294] While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any implementation or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular implementations. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.

[0295] It will be obvious to a person skilled in the art that, as the technology advances, the inventive concept can be implemented in various ways. The above described embodiments are given for describing rather than limiting the disclosure, and it is to be understood that modifications and variations may be resorted to without departing from the spirit and scope of the disclosure as those skilled in the art readily understand. Such modifications and variations are considered to be within the scope of the disclosure and the appended claims. The protection scope of the disclosure is defined by the accompanying claims.

[0296] Abbreviation Explanation

[0297] MTBF         Mean Time Between Failure

[0298] MIL          Multi-instances learning

[0299] GPD          Generalized Pareto Distribution

[0300] MLE          Maximum likelihood

[0301] NOC          Network Operations Center

[0302] References

[0303] The followings are the references which are incorporated herein in their entirety:

[0304] [1] Nengwen zhao et al., “Real-Time Incident Prediction for Online Service Systems” , ESEC / FSE 2020: Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering; November 2020; Pages 315–326; ISBN: 9781450370431; DOI: 10.1145 / 3368089

[0305] [2] ALBAN SIFFER, PIERRE-ALAIN FOUQUE, ALEXANDRE TERMIER, et al.

[0306] Anomaly Detection in Streams with Extreme Value Theory [J] . KDD '17: The 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining Halifax NS Canada, August 13 -17, 2017. Pages 1067–1075, ISBN: 978-1-4503-4887-4; DOI: 10.1145 / 3097983.3098144.

[0307] [3] Multi-task Learning in Keras | Implementation of Multi-task Classification Loss, https:  / / blog. manash. io / multi-task-learning-in-keras-implementation-of-multi-task-classification-loss-f1d42da5c3f6, Manash Kumar Mandal, Feb 18, 2018

[0308] [4] Jawed, S., Grabocka, J., Schmidt-Thieme, L. (2020) . Self-supervised Learning for Semi-supervised Time Series Classification. In: Lauw, H., Wong, RW., Ntoulas, A., Lim, EP., Ng, SK., Pan, S. (eds) Advances in Knowledge Discovery and Data Mining. PAKDD 2020. Lecture Notes in Computer Science () , vol 12084. Springer, Cham.; ISBN978-3-030-47426-3; https:  / / doi. org / 10.1007 / 978-3-030-47426-3_39; 06 May 2020

[0309] [5] Introduction to One-class Support Vector Machines, http:  / / rvlasveld. github. io / blog / 2013 / 07 / 12 / introduction-to-one-class-support-vector-machines, Roemer Vlasveld -Jul 12th, 2013

[0310] [6] Topic Model, https:  / / en. wikipedia. org / wiki / Topic_model

[0311] [7] Boyan Zhou et al., “BBN: Bilateral-Branch Network with Cumulative Learning for Long-Tailed Visual Recognition” , Mar. 2020, https:  / / doi. org / 10.48550 / arXiv. 1912.02413

Claims

1.A method (200) for analysing service performance data, comprising:obtaining (S202) a plurality of points of data for a key performance indicator, KPI;modelling (S204) the plurality of points, with generalized Pareto distribution, GPD;calculating (S206) at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; anddetermining (S208) a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.2.The method (200) according to claim 1,wherein a plurality of values is configured for the probability parameter; andwherein the at least one threshold comprises a plurality of thresholds respectively corresponding to the plurality of values of the probability parameter.3.The method (200) according to claim 2,wherein a plurality of value scope is determined, based on the plurality of thresholds;wherein an anomaly score for a point is determined based on a value scope that the point belongs to.4.The method (200) according to any of claims 1 to 3, further comprising:adjusting (S210) the anomaly score for the point, based on one or more anomaly scores of one or more points around the point.5.The method (200) according to claim 4,wherein the anomaly score for the point is adjusted, based on a decay factor and a sum of the anomaly scores of one or more points before the point and of the point;wherein the decay factor is determined based on whether an anomaly happens at the point, or the decay factor is determined based on whether an anomaly happens at a point before the point.6.The method (200) according to claim 5,wherein the decay factor is smaller when an anomaly happens at a point further away from the point.7.The method (200) according to any of claims 1 to 6,wherein the one or more distribution parameters of the plurality of points are calculated by using maximum likelihood estimation, MLE, and Grimshaw’s law.8.The method (200) according to any of claims 1 to 7, further comprising:summing (S212) anomaly scores of points with the same timestamp for more than one KPI in a group, at each timestamp, to obtain a plurality of group anomaly scores for the group.9.The method (200) according to claim 8, further comprising:creating (S214) a sample including one or more groups for a learning machine, each group with a plurality of group anomaly scores;wherein the sample is labelled as a first type or a second type, based on whether an event happens after the sample; andwherein the first type is positive, and the second type is negative.10.The method (200) according to claim 9, further comprising:training (S216) the learning machine with a plurality of labelled samples.11.The method (200) according to claim 10,wherein a first task of the learning machine is trained to predict whether an event will happen after an unlabeled sample; and / orwherein a second task of the learning machine is trained to predict a characteristic parameter of data after the unlabeled sample.12.The method (200) according to claim 10 or 11,wherein the learning machine comprises a neural network.13.The method (200) according to claim 12,wherein convolutional layers of the learning machine are frozen when training the first task and the second task.14.The method (200) according to any of claims 10 to 13,wherein a first number of labeled samples with the first type are used to train the learning machine;wherein a first number of labeled samples with the second type are selected from a plurality of labeled samples with the second type, to be used to train the learning machine.15.The method (200) according to claim 14,wherein scores for ranking of the plurality of labeled samples with the second type are generated, by a one-class support vector method, OCSVM, based on embedding vectors outputted from convolutional layers of the learning machine; andwherein the first number of labeled samples with the second type are selected, based on the scores of the plurality of labeled samples with the second type.16.The method (200) according to claim 15,wherein a distribution scope of the scores of the plurality of labeled samples with the second type is divided into a plurality of sub scopes, based on appearance frequency of the scores;wherein a sub scope covering scores with lower appearance frequencies has a smaller size; andwherein the first number of labeled samples with the second type are selected from each sub scope averagely.17.The method (200) according to any of claims 1 to 16,wherein the service performance data is related to KPI data in algorithmic information technology operations, AIOps, or a sensor acquired data in a monitoring system.18.An apparatus (180) for analysing service performance data, comprising:a processor (1801) ; anda memory (1802) , the memory (1802) containing instructions executable by the processor (1801) , whereby the apparatus (180) is operative for:obtaining a plurality of points of data for a key performance indicator, KPI;modelling the plurality of points, with generalized Pareto distribution, GPD;calculating at least one threshold for distinguishing extreme values of the plurality of points, based at least on one or more distribution parameters of the plurality of points and a probability parameter; anddetermining a plurality of anomaly scores for the plurality of points, based on a comparison of each of the plurality of the points to the at least one threshold.19.The apparatus (180) according to claim 18, wherein the apparatus (180) is further operative to perform the method (200) according to any of claims 2 to 17.20.A computer-readable storage medium (190) storing instructions (1901) which when executed by at least one processor, cause the at least one processor to perform the method according to any one of claims 1 to 17.