WO2021057537A1 - 一种卡顿预测的方法、数据处理的方法以及相关装置 - Google Patents

一种卡顿预测的方法、数据处理的方法以及相关装置 Download PDF

Info

Publication number
WO2021057537A1
WO2021057537A1 PCT/CN2020/115210 CN2020115210W WO2021057537A1 WO 2021057537 A1 WO2021057537 A1 WO 2021057537A1 CN 2020115210 W CN2020115210 W CN 2020115210W WO 2021057537 A1 WO2021057537 A1 WO 2021057537A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
time window
terminal device
parameter
confidence
Prior art date
Application number
PCT/CN2020/115210
Other languages
English (en)
French (fr)
Inventor
李正兵
庄宏成
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021057537A1 publication Critical patent/WO2021057537A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/06Testing, supervising or monitoring using simulated traffic

Definitions

  • the embodiments of the present application relate to the field of equipment detection, and in particular, to a method for predicting a freeze, a method for data processing, and related devices.
  • the terminal device Before communication optimization, the terminal device needs to predict the network state. If the terminal device predicts that the upcoming network state is smooth, it means that the communication is normal and does not need communication optimization; if the terminal device predicts that the upcoming network state is stuck, it needs Carry out communication optimization.
  • Common communication optimization measures include switching base stations or switching SIM cards without switching subscriber identity modules (SIM cards).
  • the current terminal equipment divides the data according to a fixed time window, and performs segmentation prediction through the divided data.
  • the terminal device can calculate a prediction result in each fixed time window, so that the terminal device can continuously predict the communication state.
  • the stutter prediction effect is usually measured by the following two indicators: low false alarm rate (the number of samples that predict smoothness as stuttering/total number of smooth samples), and high accuracy rate (number of samples that predict correct/total number of samples).
  • the prior art has at least the following shortcomings: Currently, the terminal device divides the data according to a fixed time window, and the terminal device cannot adjust the length of the time window in time during the period when the terminal device predicts the communication state. Therefore, if the length of the time window is set too long, the terminal device cannot predict the stuck communication status in time. If the length of the time window is set too short, there will be less data on which the terminal device makes predictions, and prediction errors are prone to occur.
  • the embodiment of the present application provides a method for predicting a freeze, a method of data processing, and a related device, which are used to dynamically adjust the time window on which the freeze prediction is based, and predict the freeze according to the adjusted time window.
  • an embodiment of the present application provides a method for lagging prediction, which is applied to a terminal device, and the method includes: obtaining a model issued by a server, the model includes an adaptive window model, and the adaptive window model includes a first preset condition ; Acquire the first parameter, the first parameter is the second terminal device parameter acquired by the terminal device within the first time window; if the first parameter meets the first preset condition, the freeze prediction is performed according to the first parameter; if the first parameter If the parameter does not meet the first preset condition, the second parameter is acquired.
  • the second parameter is the second terminal device parameter acquired by the terminal device in the second time window, and the second time window is obtained by extending the first time window; according to the second The parameters are used for lagging prediction.
  • the terminal device can decide whether to extend the first time window according to the first parameter and the adaptive window model, so as to determine an appropriate time window, and then perform the stutter prediction, which solves the problem of the inability to adjust in time.
  • the technical issue of the length of the time window For example, when a user is playing a certain game, the first parameter fluctuates greatly, and the first parameter easily meets the first preset condition, so that the terminal device can more easily trigger the freeze prediction, so that the terminal device can predict the freeze situation in time.
  • the fluctuation of the first parameter is small, the first parameter cannot easily satisfy the first preset condition, and the first time window is prolonged, and the time interval for the terminal device to perform the freeze prediction is longer, and it is not easy to make a false alarm.
  • the adaptive window model further includes a second preset condition
  • the method further includes:
  • the step of performing freeze prediction based on the second parameter is triggered.
  • the second terminal equipment parameters include one or more of signal strength, time delay, packet error rate, packet loss rate, retransmission rate, uplink rate, downlink rate, and channel utilization. .
  • the model delivered by the server also includes a Caton confidence model.
  • the Caton confidence model is one of a decision tree model, a random forest model, and a logistic regression model.
  • the first time window includes M basic time windows, M is a positive integer;
  • the method further includes:
  • M stutter confidences through the stutter confidence model, and M stutter confidences are used to judge whether the terminal device is stuck within the M basic time windows;
  • the Caton confidence model is specifically a decision tree model
  • the determination of M freezing confidence levels through the freezing confidence model includes:
  • the freezing confidence degree corresponding to each basic time window is determined, and M freezing confidence values are obtained.
  • the model delivered by the server further includes a stutter prediction model, and the stutter prediction according to the first parameter includes:
  • the stuttering score is determined by the stuttering prediction model.
  • the stuttering prediction model is one of the first-order exponential smoothing model, the second-order exponential smoothing model, and the linear regression model;
  • the stall score is greater than the second preset threshold, it is predicted that the terminal device will stall within the target time window, and the target time window is a time window after the first time window.
  • the stagnant prediction model is specifically a first-order exponential smoothing model
  • the stuttering score determined by the stuttering prediction model includes:
  • the stuttering score is obtained through the calculation formula in the first-order exponential smoothing model
  • Is the stall score of the terminal device in the target time window Is the stall score of the terminal device in the t-1 base time window
  • y t is the stall confidence of the terminal device in the t base time window
  • is a smoothing hyperparameter
  • t is an integer greater than 0.
  • the method further includes:
  • M is less than the third preset threshold, it is determined whether the first parameter satisfies the first preset condition.
  • an embodiment of the present application provides a data processing method applied to a server, including:
  • the third parameter is the first terminal device parameter acquired by the terminal device in a third time window
  • the third time window includes N basic time windows, and N is a positive integer
  • a fourth time window is determined through an adaptive window model, where the fourth time window includes at least one basic time window among the N basic time windows;
  • the adaptive window model is sent to the terminal device.
  • determining the fourth time window through the adaptive window model according to the third parameter includes:
  • the lagging confidence model is obtained.
  • the lagging confidence model is one of decision tree model, random forest model and logistic regression model;
  • Sending the adaptive window model to the terminal device specifically includes: sending the adaptive window model and the lagging confidence model to the terminal device.
  • the freezing prediction is performed according to the third parameter corresponding to the fourth time window to obtain the freezing prediction result including: performing the freezing prediction through the freezing prediction model according to the freezing confidence, and obtaining the freezing prediction.
  • Stop prediction results, the stagnant prediction model is one of the first-order exponential smoothing model, the second-order exponential smoothing model and the linear regression model;
  • Sending the adaptive window model and the freezing confidence model to the terminal device is specifically: sending the adaptive window model, the freezing confidence model and the freezing prediction model to the terminal device.
  • the method further includes:
  • the false alarm rate is the ratio of the false alarm base time window to the smooth base time window.
  • the false alarm base time window is the base time window where the stutter prediction result is stuck and the label is smooth base time window.
  • the fluent basic time window is the basic time window with the stagnant prediction result and the label is fluent;
  • the method further includes:
  • the stutter prediction result and the label determination accuracy rate is the ratio of the number of accurate basic time windows to the total number of the fourth time window, and the accurate basic time window is the basic time window where the stutter prediction result is the same as the label;
  • the method further includes:
  • an embodiment of the present application provides a device for predicting a freeze, including:
  • the obtaining unit is used to obtain a model issued by the server, the model includes an adaptive window model, and the adaptive window model includes a first preset condition;
  • the acquiring unit is further configured to acquire a first parameter, where the first parameter is a second terminal device parameter acquired by the terminal device within the first time window;
  • a processing unit configured to perform a freeze prediction according to the first parameter if the first parameter satisfies the first preset condition
  • the processing unit is further configured to obtain a second parameter if the first parameter does not satisfy the first preset condition.
  • the second parameter is the second terminal device parameter acquired by the terminal device within the second time window. A time window is extended;
  • the processing unit is also used to perform freeze prediction according to the second parameter.
  • the adaptive window model further includes a second preset condition
  • the processing unit is further configured to, if the second parameter satisfies the second preset condition, trigger the step of performing freeze prediction according to the second parameter.
  • the second terminal equipment parameters include one or more of signal strength, time delay, packet error rate, packet loss rate, retransmission rate, uplink rate, downlink rate, and channel utilization. .
  • the model delivered by the server also includes a Caton confidence model.
  • the Caton confidence model is one of a decision tree model, a random forest model, and a logistic regression model.
  • the first time window includes M basic time windows, M is a positive integer;
  • the processing unit is further configured to determine M freeze confidences through the freeze confidence model according to the first parameter, and the M freeze confidences are used to determine whether the terminal device is stuck within the M basic time windows;
  • the Caton confidence model is specifically a decision tree model
  • the processing unit is further configured to determine the leaf node to which each basic time window belongs in the decision tree model one by one according to the first parameter;
  • the freezing confidence degree corresponding to each basic time window is determined, and M freezing confidence values are obtained.
  • the model delivered by the server also includes a lagging prediction model
  • the processing unit is also used to determine the stagnant score through the stagnant prediction model according to the M stagnant confidences, which is one of the first-order exponential smoothing model, the second-order exponential smoothing model, and the linear regression model;
  • the stall score is greater than the second preset threshold, it is predicted that the terminal device will stall within the target time window, and the target time window is the time window after the first time window.
  • the stagnant prediction model is specifically a first-order exponential smoothing model
  • the processing unit is also used to obtain the stagnant score through the calculation formula in the first-order exponential smoothing model according to the M stagnant confidences;
  • Is the stall score of the terminal device in the target time window Is the stall score of the terminal device in the t-1 base time window
  • y t is the stall confidence of the terminal device in the t base time window
  • is a smoothing hyperparameter
  • t is an integer greater than 0.
  • processing unit is also used for:
  • M is less than the third preset threshold, it is determined whether the first parameter satisfies the first preset condition.
  • an embodiment of the present application provides a data processing device, including:
  • the acquiring unit is configured to acquire a third parameter, where the third parameter is the first terminal device parameter acquired by the terminal device in a third time window, the third time window includes N basic time windows, and N is a positive integer;
  • the processing unit is used to determine the labels of the N basic time windows according to the preset freezing time, and the labels are used to indicate that the terminal device is stuck or smooth in the basic time window;
  • the processing unit is further configured to determine a fourth time window through an adaptive window model according to the third parameter, where the fourth time window includes at least one basic time window among the N basic time windows;
  • the processing unit is further configured to perform freeze prediction according to the third parameter corresponding to the fourth time window to obtain the freeze prediction result;
  • the processing unit is also used to determine the model effect parameters according to the freeze prediction result and the label;
  • the processing unit is further configured to send the adaptive window model to the terminal device if the model effect parameter meets the third preset condition.
  • the processing unit is also used to obtain a Caton confidence model based on the third parameter and label training.
  • the Caton confidence model is one of a decision tree model, a random forest model, and a logistic regression model. ;
  • the processing unit is further configured to determine N freeze confidence levels through the freeze confidence model according to the third parameter;
  • the processing unit is further configured to determine the fourth time window through the adaptive window model according to the N freeze confidences;
  • the processing unit is also used to send the adaptive window model and the lagging confidence model to the terminal device.
  • the processing unit is also used to predict the stalling through the stalling prediction model based on the stalling confidence, and obtain the stalling prediction result.
  • the stalling prediction model is a first-order exponential smoothing model, a second-order exponential smoothing model, One of the first-order exponential smoothing model and linear regression model;
  • the processing unit is also used to send the adaptive window model, the freezing confidence model, and the freezing prediction model to the terminal device.
  • the processing unit is also used to determine the false alarm rate based on the stutter prediction result and the label.
  • the false alarm rate is the ratio of the false alarm basic time window to the smooth basic time window, and the false alarm basic time window It is the basic time window whose stutter prediction result is stutter and the label is smooth, and the smooth basic time window is the basic time window with stutter prediction result and the label is smooth;
  • the processing unit is also used for the stagnant prediction result and the label determination accuracy rate.
  • the accuracy rate is the ratio of the number of accurate basic time windows to the total number of the fourth time window, and the accurate basic time window is the card The basic time window with the same prediction result as the label;
  • the processing unit is further configured to determine the average length of the fourth time window according to the freeze prediction result, and if the average length of the fourth time window is less than the sixth preset threshold, determine the model effect parameter Meet the third preset condition.
  • an embodiment of the present application provides a terminal device, including:
  • One or more central processing units memory, input and output interfaces, wired or wireless network interfaces, power supply;
  • the memory is a short-term storage memory or a persistent storage memory
  • the central processing unit is configured to communicate with the memory, and execute the instruction operations in the memory on the terminal device to execute the method of the above-mentioned first aspect.
  • an embodiment of the present application provides a server, which is characterized in that it includes:
  • One or more central processing units memory, input and output interfaces, wired or wireless network interfaces, power supply;
  • the memory is a short-term storage memory or a persistent storage memory
  • the central processing unit is configured to communicate with the memory, and execute the instruction operations in the memory on the server to execute the method of the second aspect described above.
  • an embodiment of the present application provides a chip system, which includes a processor, which is used to support the terminal to implement the functions involved in the above aspects, for example, to process the data and/or information involved in the above methods.
  • the chip system further includes a memory, and the memory is used to store necessary program instructions and data of the terminal device.
  • the chip system can be composed of chips, and can also include chips and other discrete devices.
  • an embodiment of the present application provides a computer storage medium.
  • the computer storage medium may include computer instructions.
  • the terminal device can execute the possibilities of the first aspect above.
  • the method in any one of the implementation manners, or the server is caused to execute the method in any one of the possible implementation manners of the second aspect described above.
  • this application provides a computer program product, which when the computer program product runs on a computer, causes the computer to execute the method in the first aspect or any of the possible implementation manners of the first aspect.
  • the embodiment of the present application provides a method for predicting a freeze, a method for data processing, and a related device.
  • the first parameter corresponding to the first time window meets the condition
  • the first parameter corresponding to the first time window is used to predict the freeze.
  • the first time window is extended to obtain the second time window, and the extension of the time window is realized.
  • the embodiment of the present application determines whether to extend the first time window according to whether the first parameter meets the condition, and can adjust the time window on which the freeze prediction is based in real time according to the first parameter, and solves the current problem that the time window cannot be adjusted in time.
  • FIG. 1 is an example diagram of a system architecture of a method for predicting a freeze in an embodiment of the application
  • Figure 2 is a schematic flow diagram of a method for lagging prediction
  • FIG. 3 is an example diagram of a relationship between a basic time window and an application time window provided by an embodiment of this application;
  • Figure 4 is an example diagram of the relationship between the basic time window and the application time window when a fixed application time window is adopted;
  • Figure 5a is an example diagram of an architecture in which a terminal device detects its own device status
  • Figure 5b is a schematic diagram of the process corresponding to the architecture
  • Fig. 6a is an example diagram of a user interface selected for communication optimization in an embodiment of the application
  • Figure 6b is an example diagram of an interface where the terminal device prompts the user to choose whether to participate in the optimization plan
  • Fig. 7 is an example diagram of a user interface for selecting to switch SIM cards in an embodiment of the application.
  • FIG. 8 is a schematic flowchart of an embodiment of a terminal device detection method provided by an embodiment of the application.
  • FIG. 9 is a schematic diagram of a decision tree model in an embodiment of the application.
  • FIG. 10 is a schematic diagram of an adaptive window model in an embodiment of the application.
  • Fig. 11 is a schematic diagram of the server calculating the stuttering score through the stuttering prediction model in an embodiment of the application;
  • FIG. 12 is a schematic diagram of continuously predicting the state of a terminal device in an embodiment of the application.
  • FIG. 13 is a schematic flowchart of an embodiment of a method for predicting a freeze in an embodiment of the application
  • FIG. 14 is a schematic diagram of a data processing method provided by an embodiment of this application.
  • 15 is a schematic flowchart of an adaptive window model including support degree judgment conditions in an embodiment of the application.
  • FIG. 16 is a schematic flowchart of a method for predicting a freeze according to an embodiment of the application.
  • FIG. 17 is a schematic structural diagram of a terminal device in an architecture system provided by an embodiment of the application.
  • FIG. 18 is a block diagram of the software structure of a terminal device in an embodiment of the application.
  • FIG. 19 is a diagram of an example of a device for predicting a freeze in an embodiment of the application.
  • FIG. 20 is an example diagram of a data processing device in an embodiment of the application.
  • the embodiment of the present application provides a method for predicting a freeze, a method of data processing, and a related device, which are used to dynamically adjust the time window on which the freeze prediction is based, and predict the freeze according to the adjusted time window.
  • words such as “exemplary” or “for example” are used as examples, illustrations, or illustrations. Any embodiment or design solution described as “exemplary” or “for example” in the embodiments of the present application should not be construed as being more preferable or advantageous than other embodiments or design solutions. To be precise, words such as “exemplary” or “for example” are used to present related concepts in a specific manner.
  • FIG. 1 is an example diagram of the system architecture of the method for stutter prediction in an embodiment of the present application, in which a server establishes a communication connection with a terminal device through a network.
  • terminal devices include, but are not limited to, mobile phones, desktop computers, tablet computers, notebook computers, and palmtop computers.
  • a client is installed on the terminal device, and the terminal device can implement the functions and steps of the terminal device in the embodiments of the present application through the client.
  • the communication connection between the server and the terminal device needs to be smooth, so the communication state needs to be predicted, and when the communication state is stuck, the communication is optimized in time.
  • the terminal equipment Before the terminal equipment is optimized for communication, the terminal equipment needs to predict the network state. If the terminal device predicts that the upcoming network state is smooth, it means that the communication is normal, and communication optimization is not required; if the terminal device predicts that the upcoming network state is stuck, it needs to perform communication optimization.
  • the terminal equipment can predict the upcoming network state through the stall prediction method, as shown in Figure 2.
  • Figure 2 shows the flow of a method for lagging prediction, including:
  • the server sorts the communication data according to time
  • the server first obtains communication data.
  • These communication data may be historical data stored in a database, or data reported by a terminal device received by the server.
  • the embodiment of the present application does not specifically limit the source of the communication data.
  • These communication data may include, but are not limited to, signal strength, packet size, source IP address, source port, destination IP address, destination port, transmission protocol, etc.
  • the server sorts these communication data according to time.
  • the server may implement sorting through the timestamp corresponding to the communication data.
  • the timestamp can be a series of specific numbers to indicate the time when the corresponding communication data is generated or corresponding.
  • the server may also implement sorting according to the time corresponding to the communication data. The embodiment of the application does not limit this. For example, if the server obtains the communication data from 8 o'clock to 9 o'clock, it can be sorted according to the timestamps of these parameters. It should be noted that the server may obtain communication data of one terminal device, or may obtain communication data of multiple terminal devices, which is not limited in the embodiment of the present application.
  • the server divides the communication data according to the basic time window, obtains the parameters of the first terminal device, trains the model, and delivers the trained model to the terminal device;
  • the server can divide the communication data according to the length of the basic time window, and the length of the basic time window is a preset time length, for example, 1 second.
  • the worker sets an appropriate length of the basic time window according to the actual situation, and inputs the length of the basic time window into the server.
  • the server divides the communication data according to the length of the basic time window.
  • the length of the basic time window is 1 second
  • the time period involved in the communication data is from 8 am to 9 am
  • the server may divide different basic time windows according to 1 second. For example, the server may divide 8:00 am to 8:00:01 am as a basic time window.
  • the length of the basic time window in Figure 3 is 1 second, and the starting time of the segmentation is 8:00, 00:00, then the basic time window 301 is the first basic time window 8:00: 00 To 01 seconds, the basic time window 302 is the second basic time window from 8:00:01 to 02 seconds, and the basic time window 303 is the third basic time window from 8:00:02 to 03 seconds.
  • the length of the basic time window is assumed to be 1 second.
  • the first terminal device parameters may include, but are not limited to, signal strength, time delay, packet error rate, packet loss rate, retransmission rate, uplink rate, downlink rate, and channel utilization of the communication between the terminal device and the server.
  • the first terminal device parameter may also be other parameters, which are not specifically limited in the embodiment of the present application.
  • the server may segment the acquired communication data according to the basic time window, and then determine the first terminal device parameter according to the segmented communication data.
  • the server may use the average value of the communication data in the basic time window as the first terminal device parameter. For example, if the communication data in the basic time window is signal strength, and there are three signal strengths in this basic time window, the server may use the average value of these three signal strengths as the signal strength corresponding to this basic time window.
  • the server may calculate the first terminal device parameters based on the communication data in the basic time window. For example, the communication data in the basic time window shows that the terminal device has downloaded 3 data packets from the server, and the packet size is 3 bytes, 4 bytes, and 5 bytes.
  • the server can calculate the data according to these communication data (packet size).
  • the basic time window (1 second) corresponds to a downlink rate of 12 bytes per second.
  • the server may also determine the parameters of the first terminal device in other ways, which are not specifically limited here.
  • each basic time window may correspond to a label, and the label is used to indicate that the terminal device is stuck or smooth in the corresponding basic time window.
  • the server may use 1 and 0 to indicate the meaning of the label, a label of 1 indicates a freeze, and a label of 0 indicates smoothness.
  • the server may obtain the manually input stall time, and then set the label corresponding to the basic time window within the stall time as stall according to the stall time, and set the label corresponding to the remaining basic time windows as smooth .
  • the server obtains the manually inputted freeze time from 08:00 to 02 seconds, then the server can set the labels corresponding to the basic time window 301 and the basic time window 302 to Stuck, other basic time windows, such as the label corresponding to the basic time window 303, are set to be smooth.
  • the embodiment of the present application does not limit the generation method of the label.
  • the server can train the model according to the parameters of the first terminal device and the label.
  • the trained model can be a neural network model, and a supervised learning algorithm can be used to train the neural network model.
  • Algorithms for supervised learning can be algorithms such as support vector machines, linear regression, and logistic regression.
  • the server After the server has trained the trained model, it sends the trained model to the terminal device.
  • the terminal device obtains the parameters of the second terminal device, and calculates the freeze confidence corresponding to the basic time window according to the model issued by the server;
  • the second terminal device parameter may be used to perform the freeze prediction.
  • the second terminal device parameters may include, but are not limited to, the signal strength, time delay, error packet rate, packet loss rate, retransmission rate, uplink rate, downlink rate, and channel utilization of the communication between the terminal device and the server. For details, refer to the description of the parameters of the first terminal device in step 202, which will not be repeated here.
  • the terminal device can obtain the communication data in real time, then divide the communication data according to the basic time window, and finally determine the second terminal device parameter according to the communication data in the basic time window.
  • the basic time window is a preset time window. In some embodiments, the predetermined length of the basic time window is 1 second, and the terminal device needs to predict whether the card is stuck according to the second terminal device parameters from 8:00: 00: 00 to 03 sec. Pause, the terminal device can determine the communication data of 8:00: 00: 00: 00 to 01 sec, 8:00: 00: 00 sec to 02 sec, 8:00: 00: 02 sec to 03 sec. The second terminal device parameters corresponding to the three basic time windows. Then, the terminal device obtains the freeze confidence corresponding to the three basic time windows through the model issued by the server according to the second terminal device parameter.
  • the terminal device predicts whether the terminal device is stuck according to the fixed application time window length and the freezing confidence in the application time window;
  • the terminal device performs a freeze prediction every other fixed application time window.
  • the application time window is the time window used by the terminal device to perform the freeze prediction.
  • the application time window includes at least one basic time window. For example, when the length of the application time window is set to 3 seconds, the terminal device performs a freeze prediction every 3 seconds, that is, when the terminal device performs the freeze prediction, the second terminal device using the application time window of the past 3 seconds
  • the parameters are used for lag prediction, where the application time window includes multiple basic time windows.
  • FIG. 3 is an example diagram of a relationship between a basic time window and an application time window provided by an embodiment of this application. As shown in FIG. 3, the application time window 300 includes a basic time window 301, a basic time window 302, and a basic time window 303.
  • Figure 4 is an example diagram of the relationship between the basic time window and the application time window when a fixed application time window is adopted. It can be seen that the fixed length of the application time window is 3 seconds. Therefore, the terminal device predicts the state of the terminal device every 3 seconds based on the second terminal device parameters of the application time window 410, the application time window 411, and the application time window 412, respectively.
  • the terminal device performs communication optimization.
  • the terminal device when the terminal device predicts that the terminal device is about to freeze according to the model issued by the server and the freeze confidence determined in step 204, the terminal device may perform communication optimization.
  • Communication optimization methods include, but are not limited to, switching subscriber identity modules (SIM cards) and switching base stations. In practical applications, there may also be other communication optimization methods, which are not limited in the embodiment of the present application.
  • the terminal device after the length of the application time window is set, the terminal device always predicts the freeze based on the length of the fixed application time window.
  • the length of the application time window is fixed. As shown in Figure 4, the length of the application time window is always 3 seconds, and the terminal device performs a freeze prediction every 3 seconds. If the application time window length is set to be too long, the terminal device will only predict the freeze at a relatively long time interval. The real-time performance of the freeze prediction is low. When the terminal device has a freeze, the terminal device cannot predict the freeze in time. For example, the application time window is set to 1 minute, but the terminal device has a freeze at 30 seconds, and the terminal device needs another 30 seconds to reach the set 1 minute.
  • the terminal device cannot predict the freeze in time.
  • the communication is optimized in time, and the user experience is poor. If the length of the application time window is set too short, the time window used by the terminal device for the freeze prediction is shorter, and the data based on it is less, and errors are prone to occur, resulting in a high rate of false alarms for the freeze prediction. For example, when the application time window is set to 1 second, during which the second terminal device parameter may have normal numerical fluctuations within this 1 second, the terminal device is likely to predict the result of the freeze based on the normal numerical fluctuations, leading to false alarms.
  • the embodiment of the present application provides a method for predicting a freeze to realize the automatic adjustment of the length of the application time window.
  • the freeze prediction method provided by the embodiment of the present application will be described in detail below.
  • Figure 5a shows an example architecture diagram of the method for stuttering prediction in an embodiment of the present application.
  • the server provides AI model services to build and train the model used by the terminal device for stuttering prediction, and the terminal device receives the model of the server, Calculate and predict the device state through the model. If the device state is predicted to be stuck, the terminal device needs to perform communication optimization.
  • Figure 5b shows a schematic diagram of the process corresponding to this architecture. A detailed description will be given below with reference to Figures 5a and 5b.
  • the process shown in Figure 5b includes:
  • the server obtains communication data
  • the server can obtain these communication data in multiple ways. For example, the server can obtain log information generated during the operation of the terminal device, and then the server extracts the communication data from the log information, or the server reads the communication data from the database. Take historical data, extract communication data from historical data, or the server receives communication data reported by the terminal device.
  • the server can be connected to several manual test machines, and the server can obtain communication data from the manual test machines.
  • the terminal device can prompt the user to choose whether to participate in the optimization plan. If the user participates in the optimization plan, the terminal device participating in the optimization plan reports its communication data to the server.
  • Figure 6b is an example of a terminal device prompting the user to choose whether to participate in the optimization plan. It can be seen from Figure 6b that if the user clicks the "OK" virtual button, the terminal device can report the communication data to the server. If the user clicks "Cancel" virtual Button, the server will not receive the communication data of the terminal device.
  • the server divides the communication data according to the basic time window, and obtains the parameters of the first terminal device.
  • the concept of the basic time window is similar to the foregoing step 202, and the details are not repeated here.
  • the staff sets an appropriate length of the basic time window according to the actual situation, such as 1 second, and inputs the length of the basic time window into the server, so that the server cuts the length according to the length of the basic time window. Sub-communication data.
  • the terminal device calculates the basic time window length through a certain algorithm according to its own operating conditions, and then the terminal device sends the basic time window length to the server, so that the server divides the communication according to the basic time window length Data, the embodiment of the application does not specifically limit the algorithm for calculating the length of the basic time window.
  • the server may also obtain the basic time window length in other ways, which is not specifically limited here.
  • the server can segment the communication data according to the length of the basic time window, and then determine the first terminal device parameters according to the segmented communication data, and the segmentation method and determination method are the same as those of the determination method.
  • the method of the foregoing step 202 is similar, and the details are not repeated here.
  • the server may obtain the label corresponding to the basic time window. It is understandable that each basic time window may correspond to at least one label, and the label may be used to indicate that the basic time window is stuck or smooth.
  • the server may obtain the jam time manually entered, and then set the label corresponding to the basic time window within the jam time as the jam according to the jam time, and set the labels corresponding to the remaining basic time windows. Set as smooth.
  • the server can extract the stall time of the terminal device according to the log information of the terminal device, and then set the label corresponding to the basic time window within the stall time as the stall time according to the stall time. , The labels corresponding to the remaining basic time windows are set to smooth.
  • the server may also obtain the stall time in other ways, and the embodiment of the present application does not specifically limit the manner in which the server obtains the stall time.
  • the server may obtain the manually entered smooth time, and then set the label corresponding to the basic time window within the smooth time to smooth according to the smooth time, and set the labels corresponding to the remaining basic time windows to freeze. .
  • the server uses a value of 1 to indicate that the label corresponding to the basic time window is set to freeze, and uses a value of 0 to indicate that the label corresponding to the basic time window is set to be smooth.
  • other methods may also be used for setting, which is not specifically limited in the embodiment of the present application.
  • the server trains the model according to the parameters, tags, and AI algorithms of the first terminal device.
  • the server After the server obtains the parameters of the first terminal device, it trains the freeze confidence model, the adaptive window model, and the freeze prediction model according to the first terminal device parameters, tags, and AI algorithm.
  • the AI algorithm can be a decision tree algorithm, a random forest algorithm, or a linear regression algorithm or a neural network algorithm, which is not specifically limited here.
  • the specific training process please refer to the respective embodiments corresponding to FIG. 8, and the details are not repeated here.
  • the server may construct and train an artificial intelligence (AI) model used for stutter prediction.
  • AI models include, but are not limited to, linear regression, logistic regression, linear discriminant analysis (LDA), decision trees, and naive bayes , K nearest neighbor classification model (k-nearest neighbors), learning vector quantization model (learning vector quantization), support vector machine model (support vector machines), random decision forest model (random decision forests or bagging) and deep neural network model ( deep neural networks).
  • the aforementioned model can be used as a stagnant confidence model, an adaptive window model, a stagnant prediction model, or a business recognition model according to its function or role in the embodiments of the present application.
  • the lagging confidence model is used to calculate the lagging confidence, which has an association relationship with the basic time window, and the lagging confidence is used to indicate whether the terminal device is within the basic time window associated with the lagging confidence.
  • the stuttering confidence exceeds the threshold, it means that the terminal device is stuck in the basic time window associated with the stuttering confidence that exceeds the threshold.
  • the server may use a supervised learning algorithm to train the lagging confidence model according to the parameters of the first terminal device and the label.
  • the lagging confidence model may be a decision tree model, a random forest model, a logistic regression model, and the like. For details, refer to the subsequent embodiment corresponding to FIG. 8, which will not be repeated here.
  • the server may train the freeze confidence model according to the parameters of the first terminal device through an unsupervised learning algorithm, which is not specifically limited here.
  • the adaptive window model is a model used to automatically calculate the length of the application time window, and the relationship between the basic time window and the application time window is similar to the description in the foregoing step 204, and the details are not repeated here.
  • the server can obtain the length of the application time window through an adaptive window model according to the lag confidence. For details, refer to the subsequent embodiment corresponding to FIG. 8, which will not be repeated here.
  • the server After obtaining the length of the application time window, the server can divide the time period involved in the communication data into several application time windows according to the length of the application time window.
  • the server can calculate the freezing score through the freezing prediction model according to the freezing confidence in the application time window.
  • the stagnant prediction model can be a first-order exponential smoothing model, a second-order exponential smoothing model, or a linear regression model.
  • FIG. 11 is a schematic diagram of the server in the embodiment of the application calculating the freezing score through the freezing prediction model. As shown in FIG. 11, the server calculates the freezing confidence of the basic time window 1101, the freezing confidence of the basic time window 1102, and The stutter confidence of the basic time window 1103 is input into the stutter prediction model, and then the stutter score of the basic time window 1104 can be obtained through the stutter prediction model.
  • the specific process of the server training model can refer to the subsequent embodiment corresponding to FIG. 8, which will not be repeated here.
  • the server delivers the trained model to the terminal device
  • the trained model can be distributed to each terminal device.
  • the server can train a model corresponding to each terminal device.
  • the server may train the A model applicable to the terminal device 1 and then send the A model to the terminal device 1.
  • the server may train the B model applicable to the terminal device 2 and then send the B model to the terminal device 2.
  • the server may also train a model suitable for multiple terminal devices, and then send it to each terminal device.
  • the terminal device receives the model distributed by the server, and obtains the parameters of the second terminal device.
  • the second terminal device parameter acquired by the terminal device may be used to perform the freeze prediction.
  • the terminal device may first obtain the parameters of the second terminal device and then obtain the model. In other embodiments, the terminal device may first acquire the model and then acquire the parameters of the second terminal device. In other embodiments, the terminal device simultaneously obtains the parameters and model of the second terminal device.
  • the process for the terminal device to obtain the parameters of the second terminal device may be that the terminal device obtains the communication data in the communication process in real time, and the terminal device determines the second terminal device parameters according to the communication data every other basic time window.
  • the terminal device obtains the communication data in the communication process in real time, and the terminal device determines the second terminal device parameters according to the communication data every other basic time window.
  • the length of the basic time window can be obtained in multiple ways.
  • the staff sets an appropriate length of the basic time window and stores it in the server.
  • it may first obtain the basic time window issued by the server. length.
  • the terminal device determines the length of the basic time window according to the trained freeze confidence model issued by the server.
  • the staff can set several modes and the length of the basic time window corresponding to each mode and store them in the server. For example, the length of the basic time window corresponding to the game mode is 1 millisecond, and the length of the basic time window of the reading mode is 3 seconds.
  • the terminal device When the terminal device needs to predict the freeze of the game mode, it can first obtain the corresponding game mode from the server
  • the length of the basic time window is 1 millisecond. It should be noted that the basic time window may also be stored on the terminal device, and the embodiment of the present application does not limit the length of the basic time window.
  • the type of the second terminal device parameter acquired by the terminal device may be determined according to the needs of the model issued by the server.
  • the stuttering confidence model issued by the server requires three parameter types: delay, uplink rate, and downlink rate, and the terminal device can obtain the delay and time corresponding to the basic time window according to the communication data and the length of the basic time window. Uplink rate, downlink rate.
  • the terminal device predicts the freeze according to the model issued by the server and the parameters of the second terminal device, and judges whether communication optimization is required according to the prediction result;
  • the terminal device after the terminal device obtains the parameters of the second terminal device and the model issued by the server, it can perform the freeze prediction based on the parameters of the second terminal device and the model issued by the server.
  • the method for predicting the freeze based on the model can refer to the descriptions in the respective embodiments corresponding to FIG. 8, which is only briefly described here:
  • the model delivered by the server may include a lagging confidence model, an adaptive window model, and a lagging prediction model.
  • the freezing confidence model, the adaptive window model, and the freezing prediction model may refer to the description of the foregoing step 503, and the details are not repeated here.
  • the terminal device calculates the freeze confidence level through the freeze confidence model according to the second terminal device parameters, and then the terminal device automatically calculates the application time window length according to the freeze confidence level through the adaptive window model, thereby Determine the application time window, and then the terminal device calculates the freeze score of the target basic time window through the freeze prediction model according to the respective lag confidences corresponding to the basic time window in the application time window.
  • the terminal device when the stall score exceeds the threshold, can perform communication optimization.
  • the communication optimization may include, but is not limited to, switching subscriber identity modules (SIM) and switching base stations.
  • SIM subscriber identity modules
  • switching the SIM card means that a terminal device with two or more SIM cards switches the SIM card used for communication from the original SIM card in communication to another SIM card, and the terminal device uses the switched SIM card. Card to communicate.
  • handover of a base station means that a terminal device switches the base station currently in communication with the terminal device from the original base station to another base station. It should be understood that it can be switched from a 2G/3G/4G/5G base station to another 2G base station. /3G/4G/5G base station.
  • the terminal device may also display device status information on a user interface (UI), remind the user of the current device status through the UI, and display the option of whether to optimize communication.
  • Figure 6a is an embodiment of this application.
  • UI user interface
  • No action is performed after the optimized instruction, so that the user can control whether the terminal device performs communication optimization. It is understandable that if the terminal device obtains an instruction to perform communication optimization, the terminal device performs communication optimization such as switching a SIM card or switching a base station, and if the terminal device obtains an instruction not to perform communication optimization, the terminal device does not perform communication optimization.
  • the terminal device when the terminal device performs communication optimization and prepares to switch the SIM card, the terminal device displays an option of whether to switch the SIM card on the user interface.
  • Figure 7 is an example diagram of a user interface for selecting SIM card switching in an embodiment of the application. It can be seen that the word “stuck” can be displayed in the upper right corner of the terminal device. Due to the stuck, the terminal device is ready to switch the SIM card, and then a selection box pops up. You can click the virtual button "OK” or the virtual button “Cancel”. The user clicks the virtual button "OK” to trigger the instruction to switch the SIM card, thereby instructing the terminal device to switch the SIM card, and the user clicks the virtual button "Cancel", and the terminal device does not switch the SIM card.
  • the terminal device may also display the communication optimization information on the UI, and remind the user of the communication optimization information currently being used through the UI. For example, if the terminal device currently optimizes communication by switching the SIM card, the terminal device may display "switching SIM card" on the UI.
  • the terminal device after the terminal device has switched the SIM card, it can display the words "SIM card switching completed" on the user interface to indicate that the terminal device has switched the SIM card. Generally, if the terminal device is no longer stuck after switching the SIM card, the word “stuck" in the upper right corner of the user interface disappears.
  • mobile phone software application, APP
  • an operating system kernel is the software part of the terminal device, used to carry the APP and display the user interface.
  • the terminal device may include multiple operating system kernels, and the operating system kernels may carry multiple APPs.
  • the APP can display device status information, display options for whether to perform communication optimization, or display information about communication optimization on the UI. In actual applications, other clients or operating systems can also be installed on the terminal device, which is not specifically limited here.
  • FIG. 8 is a schematic diagram of an embodiment flow of a terminal device detection method provided by an embodiment of the application, and the flow includes:
  • the server obtains communication data, and sorts the communication data according to time;
  • the communication data obtained by the server is used to train the model.
  • the communication data obtained by the server in step 501 in the foregoing embodiment please refer to the description of the communication data obtained by the server in step 501 in the foregoing embodiment, which will not be repeated here.
  • the server can then sort the communication data according to time.
  • the server can sort the communication data by timestamp. For example, if the server obtains communication data from 8 o'clock to 9 o'clock, it can be sorted according to the time stamp of the communication data.
  • the timestamp can be a string of specific numbers to indicate the time when the corresponding data is generated or corresponding.
  • Table 1 is an example in which the server sorts communication data according to timestamps in this embodiment of the application.
  • the timestamp can be used to indicate the time when the corresponding communication data is generated or corresponding.
  • the time stamp in Table 1 is 20190416080001, which means that the time corresponding to this line of communication data is 08:00, 00:01.
  • the server can time-stamp each data according to the time when the communication data is received. For example, if the server receives the communication data at 08:00:01, the time stamp of the communication data can be marked as 080101. .
  • the communication data received by the server carries a time stamp.
  • the server can arrange the communication data of mobile phone A into a table according to the size of the timestamp. For example, in Table 1, the communication data with a time stamp of 20190416080001 is ranked first, and the communication data with a time stamp of 20190416080002 is ranked second, and so on. In other embodiments, the server may directly sort according to the time and date, which is not limited in the embodiment of the present application.
  • the server sets a device number for the communication data according to the source of the communication data. For example, if the server determines that the source of the signal strength is mobile phone A, the server sets the device number corresponding to the signal strength as mobile phone A.
  • the data reported by the terminal device received by the server already has a device number tag, and the server can directly determine the device number of the communication data.
  • Mobile phone A and mobile phone B are only the device numbers of some of the terminal devices. In actual applications, there may also be device numbers of other terminal devices such as computer C and tablet D, which are not specifically limited here.
  • the application name in Table 1 indicates which application generated the communication data.
  • the communication data obtained by the server carries a label with the application name. For example, if the label corresponding to signal strength -40.1 is application 1, the server can determine that the signal strength is generated during application 1 communication. The server may also determine the application corresponding to the communication data according to other methods, which is not specifically limited here.
  • the type of communication data may include, but is not limited to, signal strength, quintuple, packet size (bytes), time delay, uplink rate, downlink rate, and so on.
  • the five-tuple is composed of source IP address, source port, destination IP address, destination port, and transmission protocol.
  • A.1 means that the source IP address is 10.7.1.8, the source port is 123, the destination IP address is 202.119.17.24, the destination port is 80, the transmission protocol is TCP, and the remaining five-tuple identifiers (such as A.2) represent The meaning can be specifically set according to actual applications, and the specifics are not limited here.
  • the server divides the communication data according to the basic time window, determines the parameters of the first terminal device according to the divided communication data, trains the model, and delivers the trained model to the terminal device;
  • the basic time window in the embodiment of the present application is similar to the basic time window in each embodiment corresponding to FIG. 5b, and will not be repeated here.
  • the method for the server to determine the length of the basic time window is similar to the foregoing step 502, and will not be repeated here.
  • the server may first divide the time period involved in the communication data into several basic time windows according to the length of the basic time window. For details, please refer to the description of the method for dividing the basic time window in the foregoing step 202, which will not be repeated here.
  • the base time window may include the end time of the base time window, but does not include the start time of the base time window.
  • the server can determine the basic time window in which the communication data is divided according to the timestamp corresponding to the communication data.
  • the basic time window 1101 may represent 8:00 to 01 seconds, including the end time of 8:00, 00:01, and excluding the start time of 8:00, 00:00.
  • the server can segment the signal strength with the time stamp of 20190416080001 to the base Time window 1101.
  • the segmentation method of other communication data is similar, and will not be repeated here.
  • the base time window may include the start time of the base time window, but does not include the end time of the base time window. The embodiments of this application do not limit this.
  • the server After the server finishes dividing the communication data, it can determine the first terminal device parameter corresponding to the basic time window according to the communication data in the basic time window. For details, please refer to the description of the method for determining the first terminal device parameter in step 202 above. There are no restrictions.
  • the server may obtain the label corresponding to the basic time window. For details, refer to the description of obtaining the label corresponding to the basic time window in step 502, which will not be repeated here.
  • Table 2 is an example in which the server determines the parameters and tags of the first terminal device in this embodiment of the application.
  • the time window numbers in Table 2 can be used to represent the basic time window.
  • the time window number in Table 2 may be the time stamp of the end time of the basic time window.
  • the time window number 20190416080001 represents the basic time window from 8:00 to 01 second.
  • the time window number may also be the time stamp of the start time of the basic time window, and the embodiment of the present application does not specifically limit the method for setting the time window number.
  • the server can sort the basic time windows according to the time window numbers as shown in FIG. 2.
  • mobile phone A is in the basic time window from 8:00:00 to 01 second, the delay is 50, the uplink rate is 10, and the downlink rate is 0, and the mobile phone A is between 8:00:00 and 8:00.
  • the label of 01 second is stuck.
  • the server can train the model to be trained according to the parameters of the first terminal device and the label.
  • the model trained in the embodiment of the present application may include a stuck-at confidence model, an adaptive window model, and a stuck-at prediction model.
  • the server may only use the first terminal device parameters of mobile phone A to train the model, so as to train a model suitable for mobile phone A. In other embodiments, the server may simultaneously use the first terminal device parameters of multiple mobile phones to train the model to obtain a model suitable for most mobile phones. For ease of description, the embodiments of the present application and subsequent embodiments are described by using the first terminal device parameter training model of mobile phone A.
  • the lagging confidence model is used to calculate the lagging confidence, which has an association relationship with the basic time window, and the lagging confidence is used to indicate whether the terminal device is within the basic time window associated with the lagging confidence. Caton. For example, if the stuttering confidence exceeds the threshold, it means that the terminal device is stuck in the basic time window associated with the stuttering confidence that exceeds the threshold.
  • the server can use a supervised learning algorithm to train the lagging confidence model according to the parameters of the first terminal device and the label.
  • the lagging confidence model may be a decision tree model, a random forest model, a logistic regression model, and the like. For example, FIG.
  • the method for the server to train the lagging confidence model is: the server obtains the first terminal device parameters corresponding to 100 basic time windows And labels; according to the decision tree algorithm, the split attributes in the decision tree are obtained (the split attributes in the example in Figure 9 are delay, uplink rate, and downlink rate), and the basic time window is classified into leaf nodes according to the parameters of the first terminal device.
  • the label corresponding to the basic time window in the node determines the freeze confidence of the leaf node.
  • the first leaf node from the left in Figure 9 is classified into 10 basic time windows, and the labels corresponding to the 10 basic time windows are stuck, then the stuck confidence of the leaf node is that the label in the leaf node is
  • the ratio of the basic time window (10) of stagnation to the number of basic time windows (10) in the leaf node is equal to 100%.
  • the stuck confidence of the leaf node is that the ratio of the basic time windows (9) with the label of stuck in the leaf node to the number of basic time windows (10) in the leaf node is equal to 90%.
  • the training methods of other leaf nodes are similar, so I won't repeat them here.
  • the server After the server finishes training the stutter confidence model, it can determine which leaf node the corresponding basic time window belongs to according to the first terminal device parameters, and the stutter confidence of the leaf node may be the stutter confidence of the basic time window.
  • Table 3 is an example of the parameters, support and confidence of the first terminal device corresponding to the basic time window in the embodiment of the application.
  • the basic time window with the time window number of 20190416080001 in Table 3, if the delay is 50, the uplink rate is 10, and the downlink rate is 0, the basic time window belongs to the first leaf node from the left in Figure 9. This leaf node
  • the stutter confidence (100%) of can be used as the stutter confidence (100%) of the basic time window.
  • the server may also calculate the support degree corresponding to the basic time window through the lagging confidence model, and the support degree is the ratio of the number of basic time windows based on training to the total number of basic time windows.
  • the method for the server to train the lagging confidence model is in a possible embodiment: the server obtains the first terminal device parameters and labels corresponding to 100 basic time windows; according to the decision The tree algorithm obtains the split attributes in the decision tree, classifies the basic time window into leaf nodes according to the parameters of the first terminal device, and determines the support degree of the leaf node according to the label corresponding to the basic time window in the leaf node.
  • the first leaf node from the left in Figure 9 is classified into 10 basic time windows, then the support of this leaf node is the ratio of the number of basic time windows (10) in the leaf node to the total number of basic time windows (100) is equal to 0.1.
  • the training methods of other leaf nodes are similar, so I won't repeat them here.
  • the server may determine which leaf node the corresponding basic time window belongs to according to the parameters of the first terminal device, and the support degree of the leaf node may be the support degree of the basic time window. For example, in the basic time window whose time window number is 20190416080001 in Table 3, if the delay is 50, the uplink rate is 10, and the downlink rate is 0, the basic time window belongs to the first leaf node from the left in Figure 9.
  • the support degree (0.1) of the node can be used as the support degree (0.1) of the basic time window.
  • the adaptive window model can be used to calculate the length of the application time window.
  • the relationship between the basic time window and the application time window is similar to the description in the foregoing step 204, and the details are not repeated here.
  • FIG. 10 is a schematic diagram of an adaptive window model in an embodiment of the application.
  • the server can determine whether the freeze confidence of the basic time window meets the judgment condition through the adaptive window model, thereby obtaining the length of the application time window. Taking the basic time window representing 1 second as an example, when the freezing confidence of the first basic time window satisfies the judgment condition, the server uses the first basic time window as the application time window (the length of the application time window is 1 second).
  • the server judges the first and second basics through the adaptive window model based on the stuttering confidence of the first and second basic time windows Whether the freezing confidence of the time window meets the judgment condition, if the judgment condition is satisfied, the server uses the first and second basic time windows as application time windows (the adaptive window model output application time window length is 2 seconds). If the judgment condition is still not satisfied, the server continues to judge the first, second and third basic time through the adaptive window model based on the freezing confidence of the first, second and third basic time windows Whether the freezing confidence of the window satisfies the judgment condition, and so on. In some embodiments, the order of the first, second, and third basic time windows is sorted in chronological order, and the server may pre-sort according to the time window numbers as shown in Table 3.
  • the server may also set a threshold for the number of stuttering confidence levels to 4, and the server first detects whether the number of stuttering confidence levels reaches 4. If not, the server judges the jam confidence according to the aforementioned judgment conditions. If so, the server may determine that the first to fourth basic time windows are application time windows, and obtain that the application time window has a length of 4 seconds. The server sets a threshold for the number of stuttering confidence levels, which can allow the number of stuttering confidence levels to reach the threshold and output the corresponding application time window length to prevent the application time window length from being extended indefinitely.
  • the judgment condition in the adaptive window model may be whether the average value of the freezing confidence of the basic time window is greater than a preset threshold. In other embodiments, the judgment condition in the adaptive window model may also be whether the median of the lagging confidence is greater than a preset threshold. In practical applications, it may also be other judgment conditions. Not limited.
  • the judgment condition may have an association relationship with the number of input stuttering confidences.
  • the judgment condition in the adaptive window model may be whether the average value of the freezing confidence of the basic time window is greater than 0.9 or 0.7.
  • the server after the server calculates the length of the application time window through the adaptive window model, it can determine the application time window according to the length of the application time window.
  • the server may determine the application time window according to the time period involved in the parameters of the first terminal device and the length of the application time window.
  • the time period involved in the first terminal device parameter in FIG. 12 includes a basic time window 1201, a basic time window 1202,... a basic time window 1209, where the basic time window 1201 may represent 8:00, 00, 00, and 01 seconds.
  • the basic time window 1200 can represent 8:00:01 second to 02 seconds
  • the basic time window 1209 can represent 8:00:08 second to 09 seconds.
  • the server can determine the application time window 1211, the application time window 1212, and the application time window 1213 according to the length of these application time windows.
  • the server may input the freeze confidence in the application time window into the freeze prediction model.
  • the server can calculate the stagnant score through the stagnant prediction model according to the stagnant confidence.
  • the stagnant prediction model can be a first-order exponential smoothing model, a second-order exponential smoothing model, or a linear regression model.
  • the three black dots in Fig. 11 respectively represent the stuttering confidence of the basic time window 1101, the basic time window 1102, and the basic time window 1103.
  • the server can obtain the white point through the fitted line according to the stutter prediction model, and the white point represents the stutter score of the basic time window 1104.
  • the parameter values of linear fitting in the Caton prediction model can be obtained through training.
  • the server may determine that the prediction result of the basic time window is stutter. If the freeze score corresponding to the basic time window does not exceed the set threshold, the server may determine that the prediction result of the basic time window is smooth. Exemplarily, if the stutter score of the basic time window 1204 in FIG. 12 exceeds the set threshold, the server may determine that the prediction result of the basic time window 1204 is stutter. In some embodiments, the server determines the label of a basic time window after the application time window according to the labels in the application time window. Exemplarily, in FIG. 12, the server may determine the label of the basic time window 1210 according to the label in the application time window 1213.
  • the server may mark the label of the basic time window 1210 as stuck. If one of the labels in the application time window 1213 is not stuck, the server may mark the label of the basic time window 1210 as smooth. In another implementation manner, if the number of tabs of stutter in the application time window 1213 is greater than the number of smooth labels, the server may mark the label of the basic time window 1210 as stutter. If the number of stuck tags in the application time window 1213 is not greater than the number of smooth tags, the server may mark the tags of the basic time window 1210 as smooth.
  • the server may compare the prediction result of the basic time window with the label of the basic time window to obtain effect parameters (such as accuracy, etc.).
  • effect parameters such as accuracy, etc.
  • the server can calculate that there are 3 basic time windows with prediction results in Figure 12, among which, there are 3 basic time windows with the same prediction result as the label, and the accuracy rate is 100% (the accuracy rate can be the same as the prediction result and the label.
  • the server may deliver the corresponding model (the stutter confidence model, the adaptive window model, and the stutter prediction model) to the terminal device.
  • the server can select another model to recalculate the effect parameter.
  • the other model may be preset by the server or automatically generated by the server. This embodiment of the application does not do this Specific restrictions.
  • the server presets multiple models, and the model parameters between the models may be different. For example, the server presets the first adaptive window model, the second adaptive window model, the first lagging prediction model, and the second lagging prediction model.
  • the lagging confidence model can be used when calculating the effect parameters. Obtained through the first terminal device parameters and label training. The server can then randomly combine these models to form multiple model combinations. In some embodiments, the server may calculate the effect parameters corresponding to the model combination one by one. When the server determines that the currently calculated effect parameter meets a preset condition, the server may deliver the model combination corresponding to the effect parameter to the terminal device. In other embodiments, the server may deliver all the model combinations whose effect parameters meet the preset conditions to the terminal device, and then the terminal device may select one of the model combinations to perform the freeze prediction. The terminal device may randomly select one of the model combinations, or may select it through a certain algorithm, which is not limited in the embodiment of the present application.
  • Table 4 is an example table of the server training process in the embodiment of the application. It can be seen that the accuracy of the three models, namely the Caton Confidence Model 1, the Adaptive Window Model 1, and the Caton Prediction Model 1, are 100%. If the condition that the set accuracy rate is greater than 90% is met, the server can send the three models as a combination of the trained models to the terminal device.
  • the server may also obtain other effect parameters, such as the misjudgment rate.
  • the false alarm rate can be the ratio of the basic time window with the prediction result and the label as smooth, and the prediction result as the ratio of the basic time window with stuttering.
  • the false alarm rate may be the ratio of the false alarm base time window to the smooth base time window.
  • the false alarm base time window is the base time window whose stutter prediction result is stutter and the label is smooth, and the smooth base time window It is a basic time window with a stutter prediction result and a smooth label. Taking FIG.
  • the label of the basic time window 1204 is stuck
  • the label of the basic time window 1208 is smooth
  • the label of the basic time window 1210 is stuck.
  • the server can calculate that the number of false alarms of the basic time window is 0, and the basic time window is smooth.
  • the number of time windows is 1 (only the label of the basic time window 1208 in the basic time window 1204, the basic time window 1208, and the basic time window 1210 is smooth), and the server calculates that the false alarm rate of this prediction is 0%. Therefore, the false alarm rate meets the condition that the false alarm rate is less than 1%, and the server can deliver the freeze confidence model, the adaptive window model, and the freeze prediction model corresponding to the false alarm rate to the terminal device.
  • the server may also obtain other effect parameters, such as the average length of the application time window.
  • the application time window 1211 has a length of 3 seconds
  • the application time window 1212 has a length of 4 seconds
  • the application time window 1213 has a length of 2 seconds.
  • the server can calculate that the average length of the application time window is 3 seconds. . If the set condition is that the average length of the application time window needs to be less than 3.5 seconds, the prediction result meets the conditions, and the server can deliver the stutter confidence model, adaptive window model, and stutter prediction model corresponding to the prediction result to the terminal equipment.
  • the server may calculate the effect parameters of multiple model combinations, and select the model combination with the best effect parameters to deliver to the terminal device.
  • Table 5 is an example table for the server to sort the model combinations according to the effect parameters in the embodiment of the application.
  • the model combinations preset by the server include the A group, the B group, and the C group.
  • the model combination A is the combination of the freezing confidence model 1, the adaptive window model 1, and the freezing prediction model 1
  • the model combination B is the freezing confidence model 2, the adaptive window model 1, and the freezing prediction model. The combination of 1, and so on.
  • Group Model combination False alarm rate Accuracy Average length of application time window Group A 1, 1, 1 0.1% 99% 2 Group B 2, 1, 1 0.1% 99% 3 Group C 1, 2, 1 0.5% 95% 4
  • the server may also sort according to the effect parameters of each group, and rank those with a low false alarm rate, a high accuracy rate, and a low average application time window length in the first place. It can be seen from Table 5 that group A has the lowest false alarm rate, the highest accuracy rate, and the smallest average application time window length, so it ranks first.
  • the server can send the top model combination to the terminal device according to the sorting situation. Exemplarily, in the example in Table 5, the server may send the stutter confidence model 1, the adaptive window model 1, and the stutter prediction model 1 to the terminal device.
  • the server may store a service type and a stagnant confidence model, an adaptive window model, and a stagnant prediction model that match the service type.
  • the adaptive window model corresponding to the game service type is a game-type adaptive window model.
  • the adaptive window model corresponding to the browsing service type is the browsing adaptive window model.
  • the server can identify the current service type of the terminal device through the service recognition model, and then further issue the stall confidence model, the adaptive window model, and the stall prediction that match the service type to the terminal device. model.
  • the method for generating the service recognition model may be:
  • the server may first obtain the third terminal device parameters and the corresponding service tags (the third terminal device parameters may be used to construct a service identification model).
  • the third terminal device parameters may include, but are not limited to, message data, header information, etc.
  • Business tags are used to indicate business types, such as games, videos, etc.
  • the parameters of the third terminal device and the service label are shown in Table 6. Table 6 is an example of the parameters of the third terminal device and the stuck label in the embodiment of the application:
  • the server can generate a service identification model based on these third terminal device parameters and service tags.
  • the business recognition model can be a decision tree model or a neural network model.
  • the service identification model can be used to identify the service type as game or video or other service types.
  • the service identification model is a decision tree model, and you can refer to the method for training the decision tree model in step 802 in the embodiment of the present application, which will not be repeated here.
  • the server may deliver the service recognition model to the terminal device.
  • the terminal device can identify the current service type of the terminal device through the service recognition model, and thereby request the server to issue a stall confidence model, an adaptive window model, and a stall prediction model that match the service type.
  • the terminal device obtains the parameters of the second terminal device, and calculates the freezing confidence degree corresponding to the basic time window according to the freezing confidence degree model issued by the server.
  • the second terminal device parameter acquired by the terminal device is used to perform freeze prediction.
  • the terminal device may obtain the length of the basic time window from the server. For details, refer to the description of obtaining the basic time window length by the terminal device in step 505 in the foregoing embodiment, which will not be repeated here.
  • the terminal device can obtain the freeze confidence level corresponding to the basic time window through the freeze confidence model issued by the server according to the second terminal device parameter. For details, reference may be made to the description of obtaining the freezing confidence corresponding to the basic time window through the freezing confidence model in the foregoing step 802, which will not be repeated here.
  • the terminal device may request a model required for the freeze prediction from the server.
  • the terminal device may request the stutter confidence model, the adaptive window model, and the stutter prediction model from the server.
  • the terminal device may first obtain the service recognition model from the server. The terminal device can then identify the current service type of the terminal device through the service recognition model, and further request the server for a jam confidence model, an adaptive window model, and a jam prediction model that match the service type.
  • identifying the service type through the service recognition model in the foregoing step 802, which will not be repeated here.
  • the terminal device calculates the length of the application time window through an adaptive window model according to the lagging confidence.
  • the terminal device can obtain the length of the application time window through the adaptive window model issued by the server according to the freeze confidence corresponding to the basic time window, thereby determining the basic time window constituting the application time window.
  • the terminal device may determine the second terminal device parameter corresponding to the basic time window 1201 according to the communication data obtained in real time.
  • the terminal device then inputs the second terminal device parameter into the freezing confidence model issued by the server to obtain the freezing confidence corresponding to the basic time window 1201.
  • the terminal device determines whether the freeze confidence corresponding to the basic time window 1201 satisfies the judgment condition through the adaptive window model according to the freeze confidence corresponding to the basic time window 1201. Exemplarily, if the stutter confidence corresponding to the basic time window 1201 in FIG. 12 does not satisfy the judgment condition, the terminal device continues to acquire communication data without calculating the stutter score.
  • the terminal device may determine the second terminal device parameter corresponding to the basic time window 1202 according to the communication data obtained in real time. Then, the terminal device inputs the second terminal device parameter into the freeze confidence model issued by the server to obtain the freeze confidence degree corresponding to the basic time window 1202. Then, the terminal device judges whether the two freeze confidences meet the judgment conditions through the adaptive window model according to the freeze confidence corresponding to the basic time window 1201 and the freeze confidence corresponding to the basic time window 1202. Exemplarily, if the two stutter confidences in FIG. 12 do not satisfy the judgment condition, the terminal device continues to acquire communication data without calculating the stutter score.
  • the terminal device may determine the second terminal device parameter corresponding to the basic time window 1203 according to the communication data obtained in real time. Then, the terminal device inputs the second terminal device parameter into the freeze confidence model issued by the server to obtain the freeze confidence degree corresponding to the basic time window 1203. Then the terminal device can judge the three freeze confidences through the adaptive window model according to the freeze confidence corresponding to the basic time window 1201, the freeze confidence corresponding to the basic time window 1202, and the freeze confidence corresponding to the basic time window 1203. Whether the degree satisfies the judgment condition. Exemplarily, the three freeze confidences in FIG. 12 satisfy the judgment condition, and the terminal device obtains the length of the application time window through the adaptive window model to be 3 seconds.
  • the terminal device can use the time period of 3 seconds past the current moment (08:00:03) as the application time window 1211 according to the length of the application time window, and calculate the application time window 1211 based on the freezing confidence of the application time window 1211 through the freezing prediction model Caton score.
  • the terminal device may determine the second terminal device parameter corresponding to the basic time window 1204 according to the communication data obtained in real time. Then, the terminal device can input the second terminal device parameter into the freeze confidence model issued by the server to obtain the freeze confidence corresponding to the basic time window 1204. Then, the terminal device can determine whether the freezing confidence corresponding to the basic time window 1204 satisfies the judgment condition through the adaptive window model according to the freezing confidence corresponding to the basic time window 1204. Exemplarily, if the stutter confidence corresponding to the basic time window 1204 in FIG. 12 does not meet the judgment condition, the terminal device continues to acquire communication data without calculating the stutter score.
  • the situation of the terminal device is similar to the above situation.
  • the length of the application time window in the embodiment of the present application can be determined based on the communication data obtained in real time. Therefore, the length of the application time window can be lengthened or shortened according to the communication data obtained in real time, so that the terminal device is performing In the process of stuttering prediction, the length of the application time window can be dynamically adjusted in time to avoid the problem of too long or too short application time windows.
  • the terminal device can determine the application time window according to the current time and the length of the application time window.
  • the current time of the terminal device is 08:00:00:03
  • the length of the application time window obtained through the adaptive window model is 3 seconds
  • the terminal device can calculate the current time (08:00:00) according to the length of the application time window. 03 seconds) The time period of the past 3 seconds is used as the application time window.
  • the terminal device calculates the freezing point value through the model according to the basic time window in the application time window, and predicts whether the terminal device is stuck or not according to the freezing point value;
  • the terminal device may input the freeze confidence of the basic time window within the application time window into the freeze prediction model, and calculate the freeze score.
  • the terminal device may input the freeze confidence of the basic time window within the application time window into the freeze prediction model, and calculate the freeze score.
  • the terminal device may calculate the freeze score by using the freeze prediction model, please refer to the description of step 506 in the foregoing embodiment, which will not be repeated here.
  • the terminal device performs communication optimization.
  • the terminal device when the terminal device predicts that the device state is stuck, the terminal device can perform communication optimization.
  • the communication optimization method please refer to the description of step 506 in the foregoing embodiment, which will not be repeated here.
  • FIG. 13 is a schematic flowchart of an embodiment of a method for predicting a freeze in an embodiment of the application. Please refer to FIG. 13, the stutter prediction method embodiment in the embodiment of the present application, which is applied to terminal equipment, includes:
  • the terminal device may obtain the second terminal device parameter corresponding to the basic time window, and the obtaining method is similar to the foregoing step 803, and the details are not repeated here.
  • the second terminal device parameters obtained in step 1301 are used to perform freeze prediction.
  • the manner of obtaining the second terminal device can refer to the description of step 803 in the foregoing embodiment, which is not specifically limited here.
  • the terminal device obtains the freeze confidence corresponding to the basic time window through the freeze confidence model according to the second terminal device parameter;
  • the stagnant confidence model can refer to the description of step 802, which will not be repeated here.
  • the process of the terminal device requesting the model required for the freeze prediction from the server can be specifically referred to the description of the foregoing step 803, which will not be repeated here.
  • the terminal device obtains the length of the application time window through an adaptive window model according to the lag confidence level
  • the process of the terminal device calling the adaptive window model to calculate the application time window length can be described as: the terminal device obtains communication data in real time, and then determines the second terminal device parameter corresponding to the basic time window according to the communication data, and then according to the card
  • the pause confidence model calculates the pause confidence corresponding to the basic time window. Assuming that there are M basic time windows, the terminal device calculates M freeze confidences (M is an integer greater than or equal to 1).
  • the terminal device calculates whether the average value of the M freeze confidence is greater than the preset threshold, and if so, the terminal device obtains the length of the application time window, which is the sum of the lengths of the M basic time windows. If not, continue to obtain the lagging confidence of the next basic time window. For example, when M is 1, calculate whether the first freeze confidence is greater than the preset threshold, if it is greater than the preset threshold, the length of the first basic time window is the length of the application time window, and the first basic time window For the application time window, if it is not greater than the preset threshold, the terminal device continues to obtain the next freeze confidence, that is, the second freeze confidence.
  • the terminal device calculates whether the average value of the first and second freeze confidence is greater than the preset threshold, if so, the terminal device obtains the length of the application time window as the first and second basic time The sum of the length of the window, the application time window is the first and second basic time window.
  • the judgment condition for example, whether the above-mentioned average value of the freezing confidence level is greater than a preset threshold
  • the first preset condition or the second preset condition may be referred to as the first preset condition or the second preset condition .
  • the first time window may be a combination of basic time windows corresponding to the freeze confidence when the terminal device makes a judgment based on the freeze confidence.
  • the terminal device may determine that the first time window is the application time window.
  • the terminal device can obtain the stutter confidence corresponding to the next basic time window, and the basic time window corresponding to the stutter confidence increases, and the first time window is extended to the second time window.
  • the terminal device can determine the application time window according to the length of the application time window. Exemplarily, if the terminal device acquires the application time window at 8:00:03 seconds and the length of the application time window is 3 seconds, the terminal device determines that the application time window is a time period of 3 seconds past the current time (8:00:03 seconds). Please refer to the description of the terminal device determining the application time window in the foregoing step 804, which will not be repeated here.
  • the length of the application time window in the embodiment of the present application can be determined according to the communication data obtained in real time, and therefore the length of the application time window can be longer or shorter according to the communication data obtained in real time.
  • the length of the application time window can be dynamically adjusted in time to avoid the problem of too long or too short application time windows.
  • the terminal device obtains the freezing score through the freezing prediction model according to the freezing confidence corresponding to the application time window;
  • the stagnant prediction model may be a first-order exponential smoothing model, a second-order exponential smoothing model, or a linear regression model, etc., which is not specifically limited here.
  • the lagging prediction model is a first-order exponential smoothing model, and the calculation formula is: among them Is the stall score of the terminal device in the t-th basic time window, Is the stall score of the terminal device in the t-1 base time window, y t is the stall confidence of the terminal device in the t base time window, ⁇ is a smoothing hyperparameter, and t is an integer greater than 0.
  • the smoothing hyperparameters can be determined by training in the server.
  • the terminal device may fit the values of the M stutter confidence levels according to the first-order exponential smoothing model, and predict the next possible stutter score value.
  • the stagnation score can be used to predict the stagnation of a basic time window after the application time window.
  • the freeze prediction model can refer to the foregoing embodiments.
  • the terminal device judges whether the freezing score is greater than a preset threshold, and if so, performs communication optimization.
  • the terminal device after the terminal device obtains the freeze score through the freeze prediction model, it can determine whether the freeze score is greater than the preset threshold. If so, the terminal device can determine that the terminal device is stuck in the corresponding basic time window. Then the terminal device can perform communication optimization according to the judgment result.
  • the terminal equipment may perform communication optimization by switching SIM cards or switching base stations, switching operators, etc.
  • For the specific method of communication optimization refer to the foregoing embodiment, which will not be repeated here.
  • FIG. 14 is a schematic diagram of a data processing method provided by an embodiment of the application.
  • the data processing method is applied to the server, including:
  • the server obtains a parameter and a label of a first terminal device.
  • the first terminal device parameter corresponds to the basic time window and is used to train the model.
  • the time period involved in the first terminal device parameter may be referred to as the third time window.
  • the embodiment of the present application is collectively referred to as the time period involved in the first terminal device parameter.
  • the server obtains the communication data from the terminal device, and then determines the first terminal device parameter according to the communication data. For details, please refer to the description of the foregoing step 801, which will not be repeated here.
  • the server may determine the label (stuck label or smooth label) corresponding to the basic time window. For details, refer to the description of step 802 in the foregoing embodiment, and the details are not repeated here.
  • the server obtains the freezing confidence model according to the first terminal device parameters and the label training, and calculates the freezing confidence corresponding to the basic time window;
  • the lagging confidence model is similar to the description of step 802 in the foregoing embodiment, and will not be repeated here.
  • the server After the server has trained the freeze confidence model, it can obtain the freeze confidence corresponding to the basic time window according to the parameters of the first terminal device and the trained freeze confidence model.
  • the server calculates the length of the application time window according to the lagging confidence and the at least one adaptive window model.
  • the server may preset several adaptive window models, and each adaptive window model has different preset model parameters.
  • the server After the server sets the initial model parameters of the adaptive window model, it can calculate the length of the application time window through the adaptive window model according to the N freeze confidences. For details, refer to the description of calculating the length of the application time window by the server in step 802 in the foregoing embodiment, which will not be repeated here.
  • the server may also determine whether the support degree meets the preset condition according to the adaptive window model.
  • FIG. 15 is a schematic flowchart of an adaptive window model including support degree judgment conditions in an embodiment of the application.
  • the server may first use the adaptive window model to calculate whether the stutter confidence of the first basic time window is greater than 0.9 and the support degree is greater than 0.1. If both are yes, the server obtains the length of the application time window as 1 second. If one of them is no, continue to calculate whether the average value of the stuttering confidence of the first and second basic time windows is greater than 0.7 and the support is greater than 0.1, if both are yes, the server gets the length of the application time window Is 2 seconds, and so on.
  • the length of the application time window is directly output to 4 seconds.
  • the server can identify the current service type of the terminal device through the service recognition model, so as to further obtain the freezing confidence model, the adaptive window model, and the freezing prediction model that match the service type.
  • the service identification model refer to the description of the foregoing step 802, which will not be repeated here.
  • the server determines the composition of the application time window according to the length of the application time window, and calculates the freeze score through the freeze prediction model according to the freezing confidence in the application time window;
  • the server may determine the basic time window constituting the application time window by the length of the application time window. For the specific determination method, refer to the description of step 802 in the foregoing embodiment, which will not be repeated here.
  • the application time window determined by the server may also be referred to as the fourth time window.
  • the server may input the freeze confidence in the application time window into the freeze prediction model to obtain the freeze score.
  • the stagnant prediction model can be a first-order exponential smoothing model, a second-order exponential smoothing model, or a linear regression model.
  • the stuttering prediction model can refer to the description of the stuttering prediction model in the foregoing embodiment, which will not be repeated here.
  • the server determines the prediction result according to the lag score
  • the server presets a threshold, and if the stall score exceeds the threshold, the server determines that the prediction result of the basic time window corresponding to the stall score is the stall.
  • the server determines the effect parameter according to the prediction result and the label. If the effect parameter satisfies the condition, the server sends the stutter confidence model, the adaptive window model, and the stutter prediction model to the terminal device;
  • the effect parameter may include, but is not limited to, the false alarm rate, the accuracy rate, and the average length of the application time window. In practical applications, other effect parameters can also be set, which are not limited here.
  • the server may determine the false alarm rate according to the prediction result and the label.
  • the false alarm rate is the proportion of the basic time window with the prediction result and the label being smooth, and the prediction result is the basic time window of the freeze.
  • the prediction result is the basic time window of the freeze.
  • the server may determine the accuracy rate based on the prediction result and the label.
  • the accuracy rate is the ratio of the basic time window with the same prediction result and the label in the basic time window with the prediction result. For details, refer to the description of the accuracy in step 802 in the foregoing embodiment, which is not repeated here.
  • the server may also perform statistics based on the average length of the application time window in the prediction result. For details, please refer to the description of the average length of the application time window in step 802 in the foregoing embodiment, which will not be repeated here.
  • the server may also select one or more of the above-mentioned false alarm rate, accuracy rate, and average value of the application time window length for judgment. For example, the server selects a lag confidence model, an adaptive window model, and a lag prediction model corresponding to a false alarm rate of less than 1%, an accuracy rate of greater than 90%, and an average application time window length of less than 3.5, and delivers it to the terminal device.
  • the server selection model in step 802 in the foregoing embodiment please refer to the description of the server selection model in step 802 in the foregoing embodiment, which will not be repeated here.
  • the server may also sort the prediction results of each group, and then select the model combination with the best prediction result according to the sorting result and send it to the terminal device.
  • the server may also sort the prediction results of each group, and then select the model combination with the best prediction result according to the sorting result and send it to the terminal device.
  • the terminal device can execute the corresponding steps according to the model issued by the server. .
  • the stutter confidence model delivered by the server to the terminal device may be used by the terminal device to determine the stutter confidence of the basic time window according to the second terminal device parameter corresponding to the basic time window;
  • the adaptive window model delivered by the server to the terminal device may be used for the terminal device to calculate the length of the application time window.
  • the terminal device can use the adaptive window model to determine the length of the application time window according to whether the lag confidence of the basic time window meets the preset conditions in the adaptive window model;
  • the stutter prediction model delivered by the server to the terminal device is used for the terminal device to predict the stutter according to the application time window.
  • the terminal device can use the freeze prediction model to perform linear fitting according to the freeze confidence of the basic time window in the application time window to predict the state of the terminal device.
  • Fig. 16 is a schematic flow chart of a method for predicting a freeze provided by an embodiment of the application, which is applied to a server and a terminal device.
  • the method includes:
  • the server obtains the first terminal device parameter and tag of the terminal device in the basic time window
  • step 1601 is similar to step 1401 in the foregoing embodiments corresponding to FIG. 14, and will not be repeated here.
  • the server obtains the freezing confidence model according to the first terminal device parameters and the label training, and calculates the freezing confidence corresponding to the basic time window;
  • step 1602 is similar to step 1402 in the foregoing embodiments corresponding to FIG. 14, and will not be repeated here.
  • the server calculates the length of the application time window according to the lagging confidence and the at least one adaptive window model.
  • step 1603 is similar to step 1403 in the foregoing embodiments corresponding to FIG. 14, and will not be repeated here.
  • the server determines the composition of the application time window according to the length of the application time window, and calculates the freeze score through the freeze prediction model according to the freezing confidence in the application time window;
  • step 1604 is similar to step 1404 in the foregoing embodiments corresponding to FIG. 14, and will not be repeated here.
  • the server determines the prediction result according to the lag score
  • step 1605 is similar to step 1405 in the foregoing embodiments corresponding to FIG. 14, and will not be repeated here.
  • the server determines the effect parameter according to the prediction result and the label. If the effect parameter satisfies the condition, the server sends the stutter confidence model, the adaptive window model, and the stutter prediction model to the terminal device;
  • step 1606 is similar to step 1406 in the foregoing embodiments corresponding to FIG. 14, and will not be repeated here.
  • the terminal device obtains parameters of the second terminal device.
  • step 1607 is similar to step 1301 in the foregoing embodiments corresponding to FIG. 13, and will not be repeated here.
  • the second terminal device parameter acquired by the terminal device is used for stutter prediction.
  • the terminal device obtains the freeze confidence corresponding to the basic time window through the freeze confidence model according to the second terminal device parameter;
  • step 1608 is similar to step 1302 in the foregoing respective embodiments corresponding to FIG. 13, and will not be repeated here.
  • the terminal device obtains the length of the application time window through an adaptive window model according to the lag confidence level
  • step 1609 is similar to step 1303 in the foregoing embodiments corresponding to FIG. 13, and will not be repeated here.
  • the terminal device obtains the freeze score through the freeze prediction model according to the freeze confidence corresponding to the application time window;
  • step 1610 is similar to step 1304 in the foregoing embodiments corresponding to FIG. 13, and will not be repeated here.
  • the terminal device judges whether the stall score is greater than a preset threshold, and if so, performs communication optimization.
  • step 1611 is similar to step 1305 in the foregoing embodiments corresponding to FIG. 13, and will not be repeated here.
  • the communication connection between the server and the terminal device is mutual. Whether the server device status is stuck or the terminal device status is stuck, it will cause the communication to be stuck. Therefore, in some embodiments, the terminal device can perform the freeze prediction. In other embodiments, the server may also perform the freeze prediction. For the situation that the server performs the freeze prediction, refer to the description of the terminal device performing the freeze prediction in the foregoing embodiment, which is not repeated here.
  • the terminal device can also speculate on the past communication state. For example, if the terminal device lacks the communication status of the terminal device at 8:00:02 to 03, then the second terminal device parameter from 8:00:03 to 06 can be used to determine the communication status between 8:00:02 and 03. Secondly, the device communication status is estimated.
  • One of the implementation methods can be to use the linear fitting of the stagnant prediction model to infer the stagnant score from 8:00:02 to 03 seconds, and then determine whether the communication status of the device is based on the stagnant score It is stuck, and the specific situation may be similar to the foregoing embodiment of the present application, and will not be repeated here.
  • the server may train the aforementioned model through state data such as the response time of the terminal device, the utilization rate of the central processing unit, and the utilization rate of the memory, and then deliver it to the terminal device. Then the terminal device can obtain its own status data in real time, and make a freeze prediction through the model issued by the server. It can be implemented with reference to the foregoing embodiments of the present application, and the details are not limited here.
  • the terminal device 1700 may be a mobile phone (as shown in FIG. 1), a tablet computer, a desktop, a laptop, a notebook computer, an Ultra-mobile Personal Computer (UMPC), a handheld computer , Netbooks, Personal Digital Assistants (PDAs), wearable terminal devices, smart watches and other devices.
  • UMPC Ultra-mobile Personal Computer
  • PDAs Personal Digital Assistants
  • FIG. 17 is a schematic structural diagram of the terminal device 1700 in the architecture system shown in FIG. 1 provided by an embodiment of the present application.
  • the terminal device 1700 may include a processor 1710, an external memory interface 1720, an internal memory 1721, a universal serial bus (USB) interface 1730, a charging management module 1740, a power management module 1741, and a battery 1742 , Antenna 17, antenna 2, mobile communication module 1750, wireless communication module 1760, audio module 1770, speaker 1770A, receiver 1770B, microphone 1770C, earphone jack 1770D, sensor module 1780, buttons 1790, motor 1791, indicator 1792, camera 1793 , The display screen 1794, and the subscriber identification module (subscriber identification module, SIM) card interface 1795, etc.
  • SIM subscriber identification module
  • the sensor module 1780 may include pressure sensor 1780A, gyroscope sensor 1780B, air pressure sensor 1780C, magnetic sensor 1780D, acceleration sensor 1780E, distance sensor 1780F, proximity light sensor 1780G, fingerprint sensor 1780H, temperature sensor 1780J, touch sensor 1780K, ambient light Sensor 1780L, bone conduction sensor 1780M, etc.
  • the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the terminal device 1700.
  • the terminal device 1700 may include more or fewer components than shown, or combine certain components, or split certain components, or arrange different components.
  • the illustrated components can be implemented in hardware, software, or a combination of software and hardware.
  • the processor 1710 may include one or more processing units.
  • the processor 1710 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), and an image signal processor. (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (NPU), etc.
  • the different processing units may be independent devices or integrated in one or more processors.
  • the processor 1710 may obtain a model issued by the server and perform a freeze prediction based on the model.
  • the controller may be the nerve center and command center of the terminal device 1700.
  • the controller can generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.
  • a memory may also be provided in the processor 1710 to store instructions and data.
  • the memory in the processor 1710 is a cache memory.
  • the memory can store instructions or data that have just been used or recycled by the processor 1710. If the processor 1710 needs to use the instruction or data again, it can be directly called from the memory. Repeated accesses are avoided, the waiting time of the processor 1710 is reduced, and the efficiency of the system is improved.
  • the processor 1710 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, and a universal asynchronous transceiver (universal asynchronous) interface.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transceiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB Universal Serial Bus
  • the I2C interface is a bidirectional synchronous serial bus, which includes a serial data line (SDA) and a serial clock line (SCL).
  • the processor 1710 may include multiple sets of I2C buses.
  • the processor 1710 may be coupled to the touch sensor 1780K, charger, flash, camera 1793, etc. through different I2C bus interfaces.
  • the processor 1710 may couple the touch sensor 1780K through an I2C interface, so that the processor 1710 and the touch sensor 1780K communicate through an I2C bus interface to implement the touch function of the terminal device 1700.
  • the I2S interface can be used for audio communication.
  • the processor 1710 may include multiple sets of I2S buses.
  • the processor 1710 may be coupled with the audio module 1770 through an I2S bus to implement communication between the processor 1710 and the audio module 1770.
  • the audio module 1770 can transmit audio signals to the wireless communication module 1760 through the I2S interface, so as to realize the function of answering calls through the Bluetooth headset.
  • the PCM interface can also be used for audio communication to sample, quantize and encode analog signals.
  • the audio module 1770 and the wireless communication module 1760 may be coupled through a PCM bus interface.
  • the audio module 1770 may also transmit audio signals to the wireless communication module 1760 through the PCM interface, so as to realize the function of answering calls through the Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
  • the UART interface is a universal serial data bus used for asynchronous communication.
  • the bus can be a two-way communication bus. It converts the data to be transmitted between serial communication and parallel communication.
  • the UART interface is generally used to connect the processor 1710 and the wireless communication module 1760.
  • the processor 1710 communicates with the Bluetooth module in the wireless communication module 1760 through the UART interface to realize the Bluetooth function.
  • the audio module 1770 can transmit audio signals to the wireless communication module 1760 through the UART interface, so as to realize the function of playing music through the Bluetooth headset.
  • the MIPI interface can be used to connect the processor 1710 with the display screen 1794, the camera 1793 and other peripheral devices.
  • the MIPI interface includes a camera serial interface (camera serial interface, CSI), a display serial interface (display serial interface, DSI), and so on.
  • the processor 1710 and the camera 1793 communicate through a CSI interface to implement the shooting function of the terminal device 1700.
  • the processor 1710 and the display screen 1794 communicate through the DSI interface to realize the display function of the terminal device 1700.
  • the GPIO interface can be configured through software.
  • the GPIO interface can be configured as a control signal or as a data signal.
  • the GPIO interface can be used to connect the processor 1710 with the camera 1793, the display screen 1794, the wireless communication module 1760, the audio module 1770, the sensor module 1780, and so on.
  • the GPIO interface can also be configured as an I2C interface, I2S interface, UART interface, MIPI interface, etc.
  • the USB interface 1730 is an interface that complies with the USB standard and specifications, and specifically can be a Mini USB interface, a Micro USB interface, a USB Type C interface, and so on.
  • the USB interface 1730 can be used to connect a charger to charge the terminal device 1700, and can also be used to transfer data between the terminal device 1700 and peripheral devices. It can also be used to connect headphones and play audio through the headphones. This interface can also be used to connect to other terminal devices, such as AR devices.
  • the interface connection relationship between the modules illustrated in the embodiment of the present application is merely a schematic description, and does not constitute a structural limitation of the terminal device 1700.
  • the terminal device 1700 may also adopt different interface connection modes in the foregoing embodiments, or a combination of multiple interface connection modes.
  • the charging management module 1740 is used to receive charging input from the charger.
  • the charger can be a wireless charger or a wired charger.
  • the charging management module 1740 may receive the charging input of the wired charger through the USB interface 1730.
  • the charging management module 1740 may receive the wireless charging input through the wireless charging coil of the terminal device 1700. While the charging management module 1740 charges the battery 1742, it can also supply power to the terminal device through the power management module 1741.
  • the power management module 1741 is used to connect the battery 1742, the charging management module 1740 and the processor 1710.
  • the power management module 1741 receives input from the battery 1742 and/or the charging management module 1740, and supplies power to the processor 1710, internal memory 1721, display screen 1794, camera 1793, and wireless communication module 1760.
  • the power management module 1741 can also be used to monitor battery capacity, battery cycle times, battery health status (leakage, impedance) and other parameters.
  • the power management module 1741 may also be provided in the processor 1710.
  • the power management module 1741 and the charging management module 1740 may also be provided in the same device.
  • the wireless communication function of the terminal device 1700 can be implemented by the antenna 17, the antenna 2, the mobile communication module 1750, the wireless communication module 1760, the modem processor, and the baseband processor.
  • the antenna 17 and the antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in the terminal device 1700 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • the antenna 17 can be multiplexed as a diversity antenna of a wireless local area network. In other embodiments, the antenna can be used in combination with a tuning switch.
  • the mobile communication module 1750 can provide a wireless communication solution including 2G/3G/4G/5G and the like applied to the terminal device 1700.
  • the mobile communication module 1750 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), and so on.
  • the mobile communication module 1750 can receive electromagnetic waves by the antenna 17, filter and amplify the received electromagnetic waves, and transmit them to the modem processor for demodulation.
  • the mobile communication module 1750 can also amplify the signal modulated by the modem processor, and convert it into electromagnetic wave radiation via the antenna 17.
  • at least part of the functional modules of the mobile communication module 1750 may be provided in the processor 1710.
  • the mobile communication module 1750 can switch the base station currently in communication with the terminal device 1700, such as switching from a 2G/3G/4G/5G base station to another 2G/3G/4G/5G base station to implement the foregoing embodiments Switch the function of the base station.
  • the modem processor may include a modulator and a demodulator.
  • the modulator is used to modulate the low frequency baseband signal to be sent into a medium and high frequency signal.
  • the demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. Then the demodulator transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After the low-frequency baseband signal is processed by the baseband processor, it is passed to the application processor.
  • the application processor outputs a sound signal through an audio device (not limited to a speaker 1770A, a receiver 1770B, etc.), or displays an image or video through a display screen 1794.
  • the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 1710 and be provided in the same device as the mobile communication module 1750 or other functional modules.
  • the wireless communication module 1760 can provide applications on the terminal device 1700 including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), and global navigation satellites.
  • WLAN wireless local area networks
  • BT wireless fidelity
  • GNSS global navigation satellite system
  • FM frequency modulation
  • NFC near field communication technology
  • infrared technology infrared, IR
  • the wireless communication module 1760 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 1760 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 1710.
  • the wireless communication module 1760 can also receive the signal to be sent from the processor 1710, perform frequency modulation, amplify, and convert it into electromagnetic waves to radiate through the antenna 2.
  • the antenna 17 of the terminal device 1700 is coupled with the mobile communication module 1750, and the antenna 2 is coupled with the wireless communication module 1760, so that the terminal device 1700 can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code division multiple access (wideband code division multiple access, WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc.
  • the GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite-based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite-based augmentation systems
  • the terminal device 1700 implements a display function through a GPU, a display screen 1794, and an application processor.
  • the GPU is a microprocessor for image processing, connected to the display 1794 and the application processor.
  • the GPU is used to perform mathematical and geometric calculations for graphics rendering.
  • the processor 1710 may include one or more GPUs that execute program instructions to generate or change display information.
  • the display screen 1794 is used to display images, videos, and so on.
  • the display screen 1794 includes a display panel.
  • the display panel can use liquid crystal display (LCD), organic light-emitting diode (OLED), active matrix organic light-emitting diode or active-matrix organic light-emitting diode (active-matrix organic light-emitting diode).
  • LCD liquid crystal display
  • OLED organic light-emitting diode
  • active-matrix organic light-emitting diode active-matrix organic light-emitting diode
  • AMOLED flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oled, quantum dot light-emitting diode (QLED), etc.
  • the terminal device 1700 may include 1 or N display screens 1794, and N is a positive integer greater than 1.
  • GUIs graphical user interfaces
  • the size of the display screen 1794 of the terminal device 1700 is fixed, and only limited controls can be displayed on the display screen 1794 of the terminal device 1700.
  • a control is a GUI element. It is a software component contained in an application. It controls all the data processed by the application and the interactive operations on these data. The user can interact with the control through direct manipulation. , So as to read or edit the relevant information of the application.
  • controls may include visual interface elements such as icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and Widgets.
  • the display screen 1794 may display virtual keys (OK, Cancel).
  • the terminal device 1700 can realize a shooting function through an ISP, a camera 1793, a video codec, a GPU, a display screen 1794, and an application processor.
  • the ISP is used to process the data fed back from the camera 1793. For example, when taking a picture, the shutter is opened, the light is transmitted to the photosensitive element of the camera through the lens, the light signal is converted into an electrical signal, and the photosensitive element of the camera transmits the electrical signal to the ISP for processing and is converted into an image visible to the naked eye.
  • ISP can also optimize the image noise, brightness, and skin color. ISP can also optimize the exposure, color temperature and other parameters of the shooting scene.
  • the ISP may be provided in the camera 1793.
  • the camera 1793 is used to capture still images or video.
  • the object generates an optical image through the lens and is projected to the photosensitive element.
  • the photosensitive element may be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
  • CMOS complementary metal-oxide-semiconductor
  • the photosensitive element converts the optical signal into an electrical signal, and then transfers the electrical signal to the ISP to convert it into a digital image signal.
  • ISP outputs digital image signals to DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other formats of image signals.
  • the terminal device 1700 may include 1 or N cameras 1793, and N is a positive integer greater than 1.
  • Digital signal processors are used to process digital signals. In addition to digital image signals, they can also process other digital signals. For example, when the terminal device 1700 selects the frequency point, the digital signal processor is used to perform Fourier transform on the energy of the frequency point.
  • Video codecs are used to compress or decompress digital video.
  • the terminal device 1700 may support one or more video codecs. In this way, the terminal device 1700 can play or record videos in multiple encoding formats, such as: moving picture experts group (MPEG) 17, MPEG2, MPEG3, MPEG4, and so on.
  • MPEG moving picture experts group
  • NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • applications such as intelligent cognition of the terminal device 1700 can be realized, such as: image recognition, face recognition, voice recognition, text understanding, and so on.
  • the external memory interface 1720 may be used to connect an external memory card, such as a Micro SD card, so as to expand the storage capacity of the terminal device 1700.
  • the external memory card communicates with the processor 1710 through the external memory interface 1720 to realize the data storage function. For example, save music, video and other files in an external memory card.
  • the internal memory 1721 may be used to store computer executable program code, where the executable program code includes instructions.
  • the processor 1710 executes various functional applications and data processing of the terminal device 1700 by running instructions stored in the internal memory 1721.
  • the processor 1710 may execute the instructions stored in the internal memory 1721 to perform the freeze prediction.
  • the internal memory 1721 may include a program storage area and a data storage area.
  • the storage program area can store an operating system, at least one application program (such as a sound playback function, an image playback function, etc.) required by at least one function.
  • the data storage area can store data (such as audio data, phone book, etc.) created during the use of the terminal device 1700.
  • the internal memory 1721 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), and the like.
  • the processor 1710 executes various functional applications and data processing of the terminal device 1700 by running instructions stored in the internal memory 1721 and/or instructions stored in a memory provided in the processor.
  • the terminal device 1700 can implement audio functions through an audio module 1770, a speaker 1770A, a receiver 1770B, a microphone 1770C, a headphone interface 1770D, and an application processor. For example, music playback, recording, etc.
  • the audio module 1770 is used to convert digital audio information into an analog audio signal for output, and is also used to convert an analog audio input into a digital audio signal.
  • the audio module 1770 can also be used to encode and decode audio signals.
  • the audio module 1770 may be provided in the processor 1710, or part of the functional modules of the audio module 1770 may be provided in the processor 1710.
  • the speaker 1770A also called “speaker” is used to convert audio electrical signals into sound signals.
  • the terminal device 1700 can listen to music through the speaker 1770A, or listen to a hands-free call.
  • the receiver 1770B also called a "handset" is used to convert audio electrical signals into sound signals.
  • the terminal device 1700 answers a call or voice message, it can receive the voice by bringing the receiver 1770B close to the human ear.
  • the microphone 1770C also called “microphone”, “microphone”, is used to convert sound signals into electrical signals.
  • the user can make a sound by approaching the microphone 1770C through the human mouth, and input the sound signal into the microphone 1770C.
  • the terminal device 1700 may be provided with at least one microphone 1770C. In other embodiments, the terminal device 1700 may be provided with two microphones 1770C, which can implement noise reduction functions in addition to collecting sound signals. In other embodiments, the terminal device 1700 may also be provided with three, four or more microphones 1770C to collect sound signals, reduce noise, identify sound sources, and realize directional recording functions.
  • the earphone interface 1770D is used to connect wired earphones.
  • the earphone interface 1770D can be a USB interface 1730, or a 3.5mm open mobile terminal platform (OMTP) standard interface, and a cellular telecommunications industry association (cellular telecommunications industry association of the USA, CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA, CTIA
  • the pressure sensor 1780A is used to sense the pressure signal and can convert the pressure signal into an electrical signal.
  • the pressure sensor 1780A may be provided on the display screen 1794.
  • the capacitive pressure sensor may include at least two parallel plates with conductive materials.
  • the terminal device 1700 may also calculate the touched position according to the detection signal of the pressure sensor 1780A.
  • touch operations that act on the same touch position but have different touch operation strengths may correspond to different operation instructions. For example, when a touch operation whose intensity of the touch operation is less than the first pressure threshold is applied to the short message application icon, an instruction to view the short message is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold acts on the short message application icon, an instruction to create a new short message is executed.
  • the gyro sensor 1780B may be used to determine the motion posture of the terminal device 1700.
  • the angular velocity of the terminal device 1700 around three axes ie, x, y, and z axes
  • the gyro sensor 1780B can be used for image stabilization.
  • the gyro sensor 1780B detects the shaking angle of the terminal device 1700, and calculates the distance that the lens module needs to compensate according to the angle, so that the lens can counteract the shaking of the terminal device 1700 through a reverse movement to achieve anti-shake.
  • the gyro sensor 1780B can also be used for navigation and somatosensory game scenes.
  • the air pressure sensor 1780C is used to measure air pressure. In some embodiments, the terminal device 1700 calculates the altitude based on the air pressure value measured by the air pressure sensor 1780C to assist positioning and navigation.
  • the magnetic sensor 1780D includes a Hall sensor.
  • the terminal device 1700 can use the magnetic sensor 1780D to detect the opening and closing of the flip holster.
  • the terminal device 1700 when the terminal device 1700 is a flip machine, the terminal device 1700 can detect the opening and closing of the flip according to the magnetic sensor 1780D.
  • features such as automatic unlocking of the flip cover are set.
  • the acceleration sensor 1780E can detect the magnitude of the acceleration of the terminal device 1700 in various directions (generally three axes). When the terminal device 1700 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify the posture of the terminal device, applied to horizontal and vertical screen switching, pedometer and other applications.
  • the terminal device 1700 can measure the distance by infrared or laser. In some embodiments, when shooting a scene, the terminal device 1700 may use the distance sensor 1780F to measure the distance to achieve fast focusing.
  • the proximity light sensor 1780G may include, for example, a light emitting diode (LED) and a light detector, such as a photodiode.
  • the light emitting diode may be an infrared light emitting diode.
  • the terminal device 1700 emits infrared light to the outside through the light emitting diode.
  • the terminal device 1700 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the terminal device 1700. When insufficient reflected light is detected, the terminal device 1700 can determine that there is no object near the terminal device 1700.
  • the terminal device 1700 can use the proximity light sensor 1780G to detect that the user holds the terminal device 1700 close to the ear to talk, so as to automatically turn off the screen to save power.
  • Proximity light sensor 1780G can also be used in leather case mode, pocket mode automatically unlocks and locks the screen.
  • the ambient light sensor 1780L is used to sense the brightness of the ambient light.
  • the terminal device 1700 can adaptively adjust the brightness of the display screen 1794 according to the perceived brightness of the ambient light.
  • the ambient light sensor 1780L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 1780L can also cooperate with the proximity light sensor 1780G to detect whether the terminal device 1700 is in the pocket to prevent accidental touch.
  • the fingerprint sensor 1780H is used to collect fingerprints.
  • the terminal device 1700 can use the collected fingerprint characteristics to realize fingerprint unlocking, access application locks, fingerprint photographs, fingerprint answering calls, and so on.
  • the temperature sensor 1780J is used to detect temperature.
  • the terminal device 1700 uses the temperature detected by the temperature sensor 1780J to execute the temperature processing strategy. For example, when the temperature reported by the temperature sensor 1780J exceeds the threshold, the terminal device 1700 performs a reduction in the performance of the processor located near the temperature sensor 1780J, so as to reduce power consumption and implement thermal protection.
  • the terminal device 1700 when the temperature is lower than another threshold, the terminal device 1700 heats the battery 1742 to avoid abnormal shutdown of the terminal device 1700 due to low temperature.
  • the terminal device 1700 boosts the output voltage of the battery 1742 to avoid abnormal shutdown caused by low temperature.
  • Touch sensor 1780K also known as "touch device”.
  • the touch sensor 1780K can be arranged on the display screen 1794, and the touch screen is composed of the touch sensor 1780K and the display screen 1794, which is also called a “touch screen”.
  • the touch sensor 1780K is used to detect touch operations acting on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • the visual output related to the touch operation can be provided through the display 1794.
  • the touch sensor 1780K may also be disposed on the surface of the terminal device 1700, which is different from the position of the display screen 1794.
  • the bone conduction sensor 1780M can acquire vibration signals.
  • the bone conduction sensor 1780M can obtain the vibration signal of the vibrating bone mass of the human voice.
  • the bone conduction sensor 1780M can also contact the human pulse and receive the blood pressure pulse signal.
  • the bone conduction sensor 1780M may also be provided in the earphone, combined with the bone conduction earphone.
  • the audio module 1770 can parse the voice signal based on the vibration signal of the vibrating bone block of the voice obtained by the bone conduction sensor 1780M, and realize the voice function.
  • the application processor may analyze the heart rate information based on the blood pressure beating signal obtained by the bone conduction sensor 1780M, and realize the heart rate detection function.
  • the button 1790 includes a power button, a volume button, and so on.
  • the button 1790 may be a mechanical button. It can also be a touch button.
  • the terminal device 1700 may receive key input, and generate key signal input related to user settings and function control of the terminal device 1700.
  • the motor 1791 can generate vibration prompts.
  • the motor 1791 can be used for incoming call vibration notification, and can also be used for touch vibration feedback.
  • touch operations that act on different applications can correspond to different vibration feedback effects.
  • Acting on touch operations in different areas of the display screen 1794, the motor 1791 can also correspond to different vibration feedback effects.
  • Different application scenarios for example: time reminding, receiving information, alarm clock, games, etc.
  • the touch vibration feedback effect can also support customization.
  • the indicator 1792 can be an indicator light, which can be used to indicate the charging status, power change, and can also be used to indicate messages, missed calls, notifications, and so on.
  • the SIM card interface 1795 is used to connect to the SIM card.
  • the SIM card can be inserted into the SIM card interface 1795 or pulled out from the SIM card interface 1795 to achieve contact and separation with the terminal device 1700.
  • the terminal device 1700 may support 1 or N SIM card interfaces, and N is a positive integer greater than 1.
  • the SIM card interface 1795 can support Nano SIM cards, Micro SIM cards, SIM cards, etc.
  • the same SIM card interface 1795 can insert multiple cards at the same time. The types of the multiple cards can be the same or different.
  • the SIM card interface 1795 can also be compatible with different types of SIM cards.
  • the SIM card interface 1795 can also be compatible with external memory cards.
  • the terminal device 1700 interacts with the network through the SIM card to implement functions such as call and data communication.
  • the terminal device 1700 adopts an eSIM, that is, an embedded SIM card.
  • the eSIM card can be embedded in the terminal device 1700 and cannot be separated from the terminal device 1700.
  • the terminal device 1700 can shield the SIM card in the SIM card interface 1795, and can also connect to the SIM card in the SIM card interface 1795, so as to implement the SIM card switching function in the foregoing embodiments.
  • an operating system runs.
  • the iOS operating system developed by Apple the Android open source operating system developed by Google
  • the Windows operating system developed by Microsoft You can install and run applications on this operating system.
  • the operating system of the terminal device 1700 may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
  • the embodiment of the present application takes an Android system with a layered architecture as an example to exemplarily illustrate the software structure of the terminal device 1700.
  • FIG. 18 is a software structure block diagram of a terminal device 1700 according to an embodiment of the present application.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Communication between layers through software interface.
  • the Android system is divided into four layers, from top to bottom, the application layer, the application framework layer, the Android runtime and system library, and the kernel layer.
  • the application layer can include a series of application packages.
  • the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc.
  • the application package may also include a freeze prediction application.
  • the freeze prediction application can be executed in the background for the freeze prediction.
  • an interface may pop up for the user to select, for example The interface shown in Figure 6a, Figure 6b, Figure 7 and so on will pop up.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer can include a window manager, a content provider, a view system, a phone manager, a resource manager, and a notification manager.
  • the application framework layer may provide the application layer with the result of the freeze prediction.
  • the window manager is used to manage window programs.
  • the window manager can obtain the size of the display, determine whether there is a status bar, lock the screen, take a screenshot, etc.
  • the content provider is used to store and retrieve data and make these data accessible to applications.
  • the data may include videos, images, audios, phone calls made and received, browsing history and bookmarks, phone book, etc.
  • the view system includes visual controls, such as controls that display text, controls that display pictures, and so on.
  • the view system can be used to build applications.
  • the display interface can be composed of one or more views.
  • a display interface that includes a short message notification icon may include a view that displays text and a view that displays pictures.
  • the phone manager is used to provide the communication function of the terminal device 1700. For example, the management of the call status (including connecting, hanging up, etc.).
  • the resource manager provides various resources for the application, such as localized strings, icons, pictures, layout files, video files, and so on.
  • the notification manager enables the application to display notification information in the status bar, which can be used to convey notification-type messages, and it can disappear automatically after a short stay without user interaction.
  • the notification manager is used to notify download completion, message reminders, and so on.
  • the notification manager can also be a notification that appears in the status bar at the top of the system in the form of a chart or a scroll bar text, such as a notification of an application running in the background, or a notification that appears on the screen in the form of a dialog window.
  • prompt text information in the status bar sound a prompt tone, terminal equipment vibration, flashing indicator light, etc.
  • Android Runtime includes core libraries and virtual machines. Android runtime is responsible for the scheduling and management of the Android system.
  • the core library consists of two parts: one part is the function functions that the java language needs to call, and the other part is the core library of Android.
  • the application layer and the application framework layer run in a virtual machine.
  • the virtual machine executes the java files of the application layer and the application framework layer as binary files.
  • the virtual machine is used to perform functions such as object life cycle management, stack management, thread management, security and exception management, and garbage collection.
  • the system library can include multiple functional modules. For example: surface manager (surface manager), media library (Media Libraries), three-dimensional graphics processing library (for example: OpenGL ES), 2D graphics engine (for example: SGL), etc.
  • the surface manager is used to manage the display subsystem and provides a combination of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of a variety of commonly used audio and video formats, as well as still image files.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to realize 3D graphics drawing, image rendering, synthesis, and layer processing.
  • the 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer contains at least display driver, camera driver, audio driver, and sensor driver.
  • the embodiment of the present application may divide the terminal device into functional modules according to the foregoing method examples.
  • each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or software function modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
  • FIG. 19 shows a schematic diagram of a possible composition of the stall prediction device involved in the above and the embodiment, and the stall prediction device can execute each method of the present application.
  • the apparatus 1900 for predicting a freeze may include: a processing unit 1901, a display unit 1902, and an acquiring unit 1903.
  • the processing unit 1901 is configured to support the device for freeze prediction to execute the method described in the embodiment of the present application.
  • a device for executing or supporting freeze prediction executes step 506 in the freeze prediction method shown in FIG. 5b, and calculates the freeze confidence in step 803 in the freeze prediction method shown in FIG. 8
  • the display unit 1902 is configured to execute or support the stutter prediction device to execute the steps of displaying the interface in the stutter prediction method in the above embodiment.
  • the obtaining unit 1903 is configured to perform or support the stall prediction device to perform step 505 in the stall prediction method shown in FIG. 5b, and obtain the second terminal device parameters in step 803 in the stall prediction method shown in FIG. 8
  • the process is step 1301 in the freezing prediction method shown in FIG. 13, and step 1607 in the freezing prediction method shown in FIG. 16.
  • FIG. 20 shows a schematic diagram of a possible composition of a data processing device.
  • the stall prediction device can execute the steps executed by the server in any method embodiment of the method embodiments of the present application.
  • the data processing device 2000 includes: an acquiring unit 2001 and a processing unit 2002.
  • the acquiring unit 2001 a device for executing or supporting data processing executes step 501 shown in FIG. 5b, step 801 shown in FIG. 8, step 1401 shown in FIG. 14, and step 1601 shown in FIG.
  • the processing unit 2002 executes step 502, step 503, step 504 shown in FIG. 5b, step 802 shown in FIG. 8, step 1402 to step 1406 shown in FIG. 14, as shown in FIG. Step 1602 to step 1606 shown.
  • the embodiment of the present application also provides a computer-readable storage medium, which includes instructions.
  • the terminal device executes FIG. 5b, FIG. 8, FIG. 13 and FIG.
  • the relevant method steps in 16 are used to implement the method in the above-mentioned embodiment.
  • the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium includes instructions, and when the above-mentioned instructions run on a server, the server executes the steps shown in Figure 5b, Figure 8, Figure 14 and Figure 16. Related method steps to implement the method in the above-mentioned embodiment.
  • the embodiment of the present application also provides a computer program product containing instructions.
  • the computer program product runs on a terminal device, the terminal device executes the relevant method steps in Figure 5b, Figure 8, Figure 13, and Figure 16. , In order to realize the method in the above-mentioned embodiment.
  • the embodiment of the present application also provides a computer program product containing instructions.
  • the server executes the relevant method steps shown in Figure 5b, Figure 8, Figure 14, and Figure 16, to Implement the method in the above embodiment.
  • the disclosed system, device, and method may be implemented in other ways.
  • the device embodiments described above are merely illustrative, for example, the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components may be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual couplings or direct couplings or communication connections may be indirect couplings or communication connections between devices or units through some interfaces, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments of the present application.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of the present application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , Including several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes. .

Abstract

本申请实施例提供一种卡顿预测的方法、数据处理的方法以及相关装置,当第一时间窗口对应的第一参数满足条件时,按照第一时间窗口对应的第一参数进行卡顿预测,当第一时间窗口对应的第一参数不满足条件时,延长第一时间窗口得到第二时间窗口,实现了时间窗口的延长。本申请实施例根据第一参数是否满足条件决定是否延长第一时间窗口,能够根据第一参数进行实时调整进行卡顿预测依据的时间窗口,解决了目前无法及时调整时间窗口的问题。

Description

一种卡顿预测的方法、数据处理的方法以及相关装置
本申请要求于2019年9月26日提交中国专利局、申请号为201910921938.X、发明名称为“一种卡顿预测的方法、数据处理的方法以及相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及设备检测领域,尤其涉及一种卡顿预测的方法、数据处理的方法以及相关装置。
背景技术
随着科技进步,手机安装越来越多的应用,大多数应用需要通过网络与服务器交互,以支撑其业务,因此需要保证其运行流畅不卡顿。若终端设备出现卡顿,则终端设备进行通信优化。
通信优化前,终端设备需要对网络状态做预测,如果终端设备预测到即将到来的网络状态为流畅说明通信正常,不需要通信优化;如果终端设备预测到即将到来的网络状态为卡顿,则需要进行通信优化。常见的通信优化措施包括在不切换用户身份识别卡(subscriber identity module,SIM卡)的情况下切换基站或者切换SIM卡等。
为保证卡顿预测的效果,目前终端设备将数据按照固定的时间窗口切分,通过切分后的数据进行分段预测。终端设备在每段固定的时间窗口都能计算得到一个预测结果,从而终端设备能够持续地对通信状态进行预测。卡顿预测效果通常采用如下两个指标衡量:低误报率(将流畅预测为卡顿的样本数/总流畅样本数),高准确率(预测正确的样本数/总样本数)。
现有技术至少存在如下缺点:目前终端设备将数据按照固定的时间窗口切分,终端设备对通信状态进行预测期间无法及时调整时间窗口的长度。因此导致若时间窗口的长度设定过长,终端设备无法及时预测到卡顿的通信状态。若时间窗口的长度设定过短,终端设备进行预测所依据的数据较少,容易出现预测错误。
发明内容
本申请实施例提供了一种卡顿预测的方法、数据处理的方法以及相关装置,用于对卡顿预测依据的时间窗口进行动态调整,并根据调整后时间窗口进行卡顿预测。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供了一种卡顿预测的方法,应用于终端设备,方法包括:获取服务器下发的模型,模型包括自适应窗口模型,自适应窗口模型包括第一预设条件;获取第一参数,第一参数为终端设备在第一时间窗口内获取的第二终端设备参数;若第一参数满足第一预设条件,则根据第一参数进行卡顿预测;若第一参数不满足第一预设条件,则获取第二参数,第二参数为终端设备在第二时间窗口内获取的第二终端设备参数,第二时间窗口由第一时间窗口延长得到;根据第二参数进行卡顿预测。
本申请实施例提供的卡顿预测的方法,终端设备可以根据第一参数和自适应窗口模型决定是否延长第一时间窗口,从而确定合适的时间窗口,然后进行卡顿预测,解决了无法及时调整时间窗口的长度的技术问题。例如,用户进行某游戏时,第一参数波动较大,第一参数容易满足第一预设条件从而终端设备更容易触发卡顿预测,使得终端设备能够及时预测得到卡顿的情况。又例如,用户待机时,第一参数波动较小,第一参数不容易满足第一预设条件从而第一时间窗口延长,终端设备进行卡顿预测的时间间隔较长,不容易误报。
在一种可能的实现方式中,自适应窗口模型还包括第二预设条件;
获取第二参数之后,方法还包括:
若第二参数满足第二预设条件,则触发根据第二参数进行卡顿预测的步骤。
在另一种可能的实现方式中,第二终端设备参数包括信号强度、时延、错包率、丢包率、重传率、上行速率、下行速率和信道利用率中的一种或多种。
在另一种可能的实现方式中,服务器下发的模型还包括卡顿置信度模型,卡顿置信度模型为决策树模型、随机森林模型和逻辑回归模型中的一种,第一时间窗口包括M个基础时间窗口,M为正整数;
获取第一参数之后,方法还包括:
根据第一参数,通过卡顿置信度模型确定M个卡顿置信度,M个卡顿置信度用于判断终端设备在与M个基础时间窗口内是否卡顿;
判断M个卡顿置信度的平均值是否大于第一预设阈值;
若是,则确定第一参数满足第一预设条件;
若否,则确定第一参数不满足第一预设条件。
在另一种可能的实现方式中,卡顿置信度模型具体为决策树模型;
根据第一参数,通过卡顿置信度模型确定M个卡顿置信度包括:
根据第一参数逐一确定每个基础时间窗口在决策树模型中所属的叶节点;
根据叶节点对应的卡顿置信度设定值,确定每个基础时间窗口对应的卡顿置信度,得到M个卡顿置信度。
在另一种可能的实现方式中,服务器下发的模型还包括卡顿预测模型,根据第一参数进行卡顿预测包括:
根据M个卡顿置信度,通过卡顿预测模型确定卡顿分值,卡顿预测模型为一阶指数平滑模型、二阶指数平滑模型和线性回归模型中的一种;
若卡顿分值大于第二预设阈值,则预测终端设备在目标时间窗口内卡顿,目标时间窗口为第一时间窗口后的时间窗口。
在另一种可能的实现方式中,卡顿预测模型具体为一阶指数平滑模型;
根据M个卡顿置信度,通过卡顿预测模型确定卡顿分值包括:
根据M个卡顿置信度,通过一阶指数平滑模型中的计算公式得到卡顿分值;
计算公式为:
Figure PCTCN2020115210-appb-000001
其中
Figure PCTCN2020115210-appb-000002
为终端设备在目标时间窗口的卡顿分值,
Figure PCTCN2020115210-appb-000003
为终端设备在第t-1个基础时间 窗口的卡顿分值,y t为终端设备在第t个基础时间窗口的卡顿置信度,α为平滑超参数,t为大于0的整数。
在另一种可能的实现方式中,获取第一参数之后,方法还包括:
若M小于第三预设阈值,则判断第一参数是否满足第一预设条件。
第二方面,本申请实施例提供了一种数据处理的方法,应用于服务器,包括:
获取第三参数,第三参数为终端设备在第三时间窗口内获取的第一终端设备参数,第三时间窗口包括N个基础时间窗口,N为正整数;
根据预设的卡顿时间确定N个基础时间窗口的标签,标签用于表示终端设备在基础时间窗口卡顿或流畅;
根据第三参数,通过自适应窗口模型确定第四时间窗口,第四时间窗口包括N个基础时间窗口中的至少一个基础时间窗口;
根据第四时间窗口对应的第三参数进行卡顿预测,得到卡顿预测结果;
根据卡顿预测结果和标签确定模型效果参数;
若模型效果参数满足第三预设条件,则向终端设备发送自适应窗口模型。
在一种可能的实现方式中,根据第三参数,通过自适应窗口模型确定第四时间窗口包括:
根据第三参数以及标签训练得到卡顿置信度模型,卡顿置信度模型为决策树模型、随机森林模型和逻辑回归模型中的一种;
根据第三参数,通过卡顿置信度模型确定N个卡顿置信度;
根据N个卡顿置信度,通过自适应窗口模型确定第四时间窗口;
向终端设备发送自适应窗口模型具体为:向终端设备发送自适应窗口模型以及卡顿置信度模型。
在另一种可能的实现方式中,根据第四时间窗口对应的第三参数进行卡顿预测,得到卡顿预测结果包括:根据卡顿置信度,通过卡顿预测模型进行卡顿预测,得到卡顿预测结果,卡顿预测模型为一阶指数平滑模型、二阶指数平滑模型和线性回归模型中的一种;
向终端设备发送自适应窗口模型以及卡顿置信度模型具体为:向终端设备发送自适应窗口模型、卡顿置信度模型以及卡顿预测模型。在另一种可能的实现方式中,根据卡顿预测结果和标签确定模型效果参数之后,方法还包括:
根据卡顿预测结果和标签确定误报率,误报率为误报基础时间窗口占流畅基础时间窗口的比例,误报基础时间窗口为卡顿预测结果为卡顿且标签为流畅的基础时间窗口,流畅基础时间窗口为具有卡顿预测结果且标签为流畅的基础时间窗口;
若误报率小于第四预设阈值,则确定模型效果参数满足第三预设条件。
在另一种可能的实现方式中,根据卡顿预测结果和标签确定模型效果参数之后,方法还包括:
卡顿预测结果和标签确定准确率,准确率为准确基础时间窗口的数量与第四时间窗口总数的比值,准确基础时间窗口为卡顿预测结果与标签相同的基础时间窗口;
若准确率大于第五预设阈值,则确定模型效果参数满足第三预设条件。
在另一种可能的实现方式中,根据卡顿预测结果和标签确定模型效果参数之后,方法还包括:
根据卡顿预测结果确定第四时间窗口的平均长度;
若第四时间窗口的平均长度小于第六预设阈值,则确定模型效果参数满足第三预设条件。
第三方面,本申请实施例提供了一种卡顿预测的装置,包括:
获取单元,用于获取服务器下发的模型,模型包括自适应窗口模型,自适应窗口模型包括第一预设条件;
获取单元,还用于获取第一参数,第一参数为终端设备在第一时间窗口内获取的第二终端设备参数;
处理单元,用于若第一参数满足第一预设条件,则根据第一参数进行卡顿预测;
处理单元,还用于若第一参数不满足第一预设条件,则获取第二参数,第二参数为终端设备在第二时间窗口内获取的第二终端设备参数,第二时间窗口由第一时间窗口延长得到;
处理单元,还用于根据第二参数进行卡顿预测。
在一种可能的实现方式中,自适应窗口模型还包括第二预设条件;
处理单元,还用于若第二参数满足第二预设条件,则触发根据第二参数进行卡顿预测的步骤。
在另一种可能的实现方式中,第二终端设备参数包括信号强度、时延、错包率、丢包率、重传率、上行速率、下行速率和信道利用率中的一种或多种。
在另一种可能的实现方式中,服务器下发的模型还包括卡顿置信度模型,卡顿置信度模型为决策树模型、随机森林模型和逻辑回归模型中的一种,第一时间窗口包括M个基础时间窗口,M为正整数;
处理单元,还用于根据第一参数,通过卡顿置信度模型确定M个卡顿置信度,M个卡顿置信度用于判断终端设备在与M个基础时间窗口内是否卡顿;
判断M个卡顿置信度的平均值是否大于第一预设阈值;
若是,则确定第一参数满足第一预设条件;
若否,则确定第一参数不满足第一预设条件。
在另一种可能的实现方式中,卡顿置信度模型具体为决策树模型;
处理单元,还用于根据第一参数逐一确定每个基础时间窗口在决策树模型中所属的叶节点;
根据叶节点对应的卡顿置信度设定值,确定每个基础时间窗口对应的卡顿置信度,得到M个卡顿置信度。
在另一种可能的实现方式中,服务器下发的模型还包括卡顿预测模型;
处理单元,还用于根据M个卡顿置信度,通过卡顿预测模型确定卡顿分值,卡顿预测模型为一阶指数平滑模型、二阶指数平滑模型和线性回归模型中的一种;
若卡顿分值大于第二预设阈值,则预测终端设备在目标时间窗口内卡顿,目标时间窗 口为第一时间窗口后的时间窗口。
在另一种可能的实现方式中,卡顿预测模型具体为一阶指数平滑模型;
处理单元,还用于根据M个卡顿置信度,通过一阶指数平滑模型中的计算公式得到卡顿分值;
计算公式为:
Figure PCTCN2020115210-appb-000004
其中
Figure PCTCN2020115210-appb-000005
为终端设备在目标时间窗口的卡顿分值,
Figure PCTCN2020115210-appb-000006
为终端设备在第t-1个基础时间窗口的卡顿分值,y t为终端设备在第t个基础时间窗口的卡顿置信度,α为平滑超参数,t为大于0的整数。
在另一种可能的实现方式中,处理单元,还用于:
若M小于第三预设阈值,则判断第一参数是否满足第一预设条件。
第四方面,本申请实施例提供了一种数据处理的装置,包括:
获取单元,用于获取第三参数,第三参数为终端设备在第三时间窗口内获取的第一终端设备参数,第三时间窗口包括N个基础时间窗口,N为正整数;
处理单元,用于根据预设的卡顿时间确定N个基础时间窗口的标签,标签用于表示终端设备在基础时间窗口卡顿或流畅;
处理单元,还用于根据第三参数,通过自适应窗口模型确定第四时间窗口,第四时间窗口包括N个基础时间窗口中的至少一个基础时间窗口;
处理单元,还用于根据第四时间窗口对应的第三参数进行卡顿预测,得到卡顿预测结果;
处理单元,还用于根据卡顿预测结果和标签确定模型效果参数;
处理单元,还用于若模型效果参数满足第三预设条件,则向终端设备发送自适应窗口模型。
在一种可能的实现方式中,处理单元,还用于根据第三参数以及标签训练得到卡顿置信度模型,卡顿置信度模型为决策树模型、随机森林模型和逻辑回归模型中的一种;
处理单元,还用于根据第三参数,通过卡顿置信度模型确定N个卡顿置信度;
处理单元,还用于根据N个卡顿置信度,通过自适应窗口模型确定第四时间窗口;
处理单元,还用于向终端设备发送自适应窗口模型以及卡顿置信度模型。
在另一种可能的实现方式中,处理单元,还用于根据卡顿置信度,通过卡顿预测模型进行卡顿预测,得到卡顿预测结果,卡顿预测模型为一阶指数平滑模型、二阶指数平滑模型和线性回归模型中的一种;
处理单元,还用于向终端设备发送自适应窗口模型、卡顿置信度模型以及卡顿预测模型。
在另一种可能的实现方式中,处理单元,还用于根据卡顿预测结果和标签确定误报率,误报率为误报基础时间窗口占流畅基础时间窗口的比例,误报基础时间窗口为卡顿预测结果为卡顿且标签为流畅的基础时间窗口,流畅基础时间窗口为具有卡顿预测结果且标签为流畅的基础时间窗口;
若误报率小于第四预设阈值,则确定模型效果参数满足第三预设条件。
在另一种可能的实现方式中,处理单元,还用于卡顿预测结果和标签确定准确率,准确率为准确基础时间窗口的数量与第四时间窗口总数的比值,准确基础时间窗口为卡顿预测结果与标签相同的基础时间窗口;
若准确率大于第五预设阈值,则确定模型效果参数满足第三预设条件。
在另一种可能的实现方式中,处理单元,还用于根据卡顿预测结果确定第四时间窗口的平均长度,若第四时间窗口的平均长度小于第六预设阈值,则确定模型效果参数满足第三预设条件。
第五方面,本申请实施例提供了一种终端设备,包括:
一个或一个以上中央处理器,存储器,输入输出接口,有线或无线网络接口,电源;
存储器为短暂存储存储器或持久存储存储器;
中央处理器配置为与存储器通信,在终端设备上执行存储器中的指令操作以执行如上述第一方面的方法。
第六方面,本申请实施例提供了一种服务器,其特征在于,包括:
一个或一个以上中央处理器,存储器,输入输出接口,有线或无线网络接口,电源;
存储器为短暂存储存储器或持久存储存储器;
中央处理器配置为与存储器通信,在服务器上执行存储器中的指令操作以执行如上述第二方面的方法。
第七方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持终端实现上述方面中所涉及的功能,例如,例如处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存终端设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
第八方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质可包括计算机指令,当该计算机指令在终端设备或服务器上运行时,使得该终端设备执行如上述第一方面的可能的实现方式中任一项的方法,或使得服务器执行如上述第二方面的可能的实现方式中任一项的方法。
第九方面,本申请提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行如上述第一方面或第一方面的可能的实现方式中任一的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供一种卡顿预测的方法、数据处理的方法以及相关装置,当第一时间窗口对应的第一参数满足条件时,按照第一时间窗口对应的第一参数进行卡顿预测,当第一时间窗口对应的第一参数不满足条件时,延长第一时间窗口得到第二时间窗口,实现了时间窗口的延长。本申请实施例根据第一参数是否满足条件决定是否延长第一时间窗口,能够根据第一参数进行实时调整进行卡顿预测依据的时间窗口,解决了目前无法及时调整时间窗口的问题。
附图说明
图1为本申请实施例中卡顿预测的方法的系统架构示例图;
图2为一种卡顿预测方法的流程示意图;
图3为本申请实施例提供的一种基础时间窗口与应用时间窗口的关系示例图;
图4为采用固定应用时间窗口时基础时间窗口与应用时间窗口的关系示例图;
图5a为终端设备对自身设备状态进行检测的一种架构示例图;
图5b为架构对应的流程示意图;
图6a为本申请实施例中通信优化选择的一种用户界面示例图;
图6b为终端设备提示用户选择是否参与优化计划的界面示例图;
图7为本申请实施例中选择切换SIM卡的用户界面示例图;
图8为本申请实施例提供的终端设备检测方法的实施例流程示意图;
图9为本申请实施例中一种决策树模型的示意图;
图10为本申请实施例中自适应窗口模型的一种示意图;
图11为本申请实施例中服务器通过卡顿预测模型计算卡顿分值的示意图;
图12为本申请实施例中连续预测终端设备状态的一种示意图;
图13为本申请实施例中卡顿预测方法的一个实施例的流程示意图;
图14为本申请实施例提供的一种数据处理的方法的示意图;
图15为本申请实施例中包括支持度判断条件的自适应窗口模型的流程示意图;
图16为本申请实施例提供的卡顿预测方法的流程示意图;
图17为本申请实施例提供的架构系统中的终端设备的结构示意图;
图18为本申请实施例中终端设备的软件结构框图;
图19为本申请实施例中卡顿预测的装置的示例图;
图20为本申请实施例中数据处理的装置的示例图。
具体实施方式
本申请实施例提供了一种卡顿预测的方法、数据处理的方法以及相关装置,用于对卡顿预测依据的时间窗口进行动态调整,并根据调整后时间窗口进行卡顿预测。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
应理解,本申请实施例可应用于如图1所示的架构中,图1为本申请实施例中卡顿预测的方法的系统架构示例图,其中服务器通过网络与终端设备建立通信连接。本申请实施例中,终端设备包含但不仅限于手机、台式电脑、平板电脑、笔记本电脑以及掌上电脑。终端设备上安装有客户端,终端设备可以通过客户端实现本申请实施例中终端设备的功能和步骤。服务器与终端设备之间的通信连接需要保证流畅,因此需要对通信状态进行预测,当通信状态出现卡顿时,及时进行通信优化。
终端设备在通信优化前,终端设备需要对网络状态做预测。如果终端设备预测到即将到来的网络状态为流畅说明通信正常,不需要通信优化;如果终端设备预测到即将到来的网络状态为卡顿,则需要进行通信优化。终端设备可以通过卡顿预测方法对即将到来的网络状态进行预测,如图2所示。
图2示出了一种卡顿预测方法的流程,包括:
201、服务器将通信数据按照时间排序;
服务器首先获取通信数据,这些通信数据可以是存储在数据库中的历史数据,或者是服务器接收终端设备上报的数据,本申请实施例对通信数据的来源不做具体限定。这些通信数据可以包括但不限于信号强度、包大小、源IP地址、源端口、目标IP地址、目标端口、传输协议等。
然后服务器将这些通信数据按照时间进行排序。在一些实施例中,服务器可以通过通信数据所对应的时间戳实现排序。时间戳可以是一串具体的数字,用来表示对应的通信数据所产生或者所对应的时间。在另一些实施例中,服务器也可以通过通信数据所对应的时间实现排序。本申请实施例对此不作限定。例如,服务器获取了8点至9点的通信数据,则可以按照这些参数的时间戳排序。需要说明的是,服务器可以获取一个终端设备的通信数据,也可以获取多个终端设备的通信数据,本申请实施例对此不作限定。
202、服务器对通信数据按照基础时间窗口切分,得到第一终端设备参数,训练模型并向终端设备下发训练完的模型;
服务器获取到训练模型所用的通信数据后,服务器可以按照基础时间窗口的长度将通信数据进行切分,基础时间窗口的长度为预先设定的时间长度,例如1秒。在一些实施例中,工作人员根据实际情况设定合适的基础时间窗口的长度,并将该基础时间窗口的长度输入服务器。然后,服务器根据基础时间窗口的长度,切分通信数据。示例性的,例如基础时间窗口的长度为1秒,通信数据所涉及的时间段为从上午8点整到上午9点整,则服务器可以根据1秒划分不同的基础时间窗口。例如,服务器可以将上午8点到上午8点00分01秒划分为一个基础时间窗口。如图3所示,图3中的基础时间窗口长度为1秒,切分的起始时刻为8点00分00秒,则基础时间窗口301为第一个基础时间窗口8点00分00秒至01秒,基础时间窗口302为第二个基础时间窗口8点00分01秒至02秒,基础时间窗口303为第三个基础时间窗口8点00分02秒至03秒。为方便描述,本申请实施例以及后续实施例中,除特殊说明外,基础时间窗口的长度假设为1秒。
在一些实施例中,第一终端设备参数可以包括但不限于终端设备与服务器通信的信号强度、时延、错包率、丢包率、重传率、上行速率、下行速率和信道利用率。在实际应用 中,第一终端设备参数还可以是其他参数,本申请实施例对此不做具体限定。
服务器可以根据基础时间窗口将获取到的通信数据切分,然后根据切分后的通信数据确定第一终端设备参数。在一些实施例中,服务器可以将基础时间窗口内的通信数据的平均值作为第一终端设备参数。例如,基础时间窗口内的通信数据为信号强度,且这个基础时间窗口内的信号强度有3个,则服务器可以将这3个信号强度的平均值作为这个基础时间窗口对应的信号强度。在另一些实施例中,服务器可以根据基础时间窗口内的通信数据计算得到第一终端设备参数。例如,基础时间窗口内的通信数据显示终端设备从服务器下载了3个数据包,包大小为3字节、4字节和5字节,则服务器可以根据这些通信数据(包大小)计算得到该基础时间窗口(1秒)对应的下行速率为12字节每秒。在实际应用中,服务器还可以通过其他方式确定第一终端设备参数,具体此处不做限定。
在一些实施例中,每个基础时间窗口可以对应有一个标签,该标签用于表示终端设备在对应的基础时间窗口卡顿或流畅。示例性的,服务器可以通过1和0表示标签的含义,标签为1则表示卡顿,标签为0则表示流畅。标签的生成方式有很多种。在一些实施例中,服务器可以获取人工输入的卡顿时间,然后根据卡顿时间将卡顿时间内的基础时间窗口对应的标签设定为卡顿,其余基础时间窗口对应的标签设定为流畅。例如,图3中,服务器获取到人工输入的卡顿时间为08点00分00秒至02秒,则服务器可以根据这个卡顿时间将基础时间窗口301和基础时间窗口302对应的标签设定为卡顿,其他基础时间窗口如基础时间窗口303对应的标签设定为流畅。本申请实施例对标签的生成方式不作限定。
服务器可以根据第一终端设备参数以及标签训练模型。训练的模型可以是神经网络模型,可以采用有监督学习的算法对神经网络模型进行训练。有监督学习的算法可以是支持向量机(support vector machines)、线性回归(linear regression)、逻辑回归(logistic regression)等的算法。
服务器训练得到训练完的模型后,向终端设备下发训练完的模型。
203、终端设备获取第二终端设备参数,根据服务器下发的模型计算与基础时间窗口对应的卡顿置信度;
在本申请实施例中,第二终端设备参数可以用于进行卡顿预测。第二终端设备参数可以包括但不限于终端设备与服务器通信的信号强度、时延、错包率、丢包率、重传率、上行速率、下行速率和信道利用率。具体可参照前述步骤202关于第一终端设备参数的描述,此处不再赘述。
在一些实施例中,终端设备可以实时获取通信数据,然后按基础时间窗口切分该通信数据,最后根据基础时间窗口内的通信数据确定第二终端设备参数。基础时间窗口为预先设定的时间窗口。在一些实施例中,基础时间窗口预先设定的长度为1秒,而且终端设备需要根据8点00分00秒至03秒的第二终端设备参数预测8点00分03秒至04秒是否卡顿,则终端设备可以根据8点00分00秒至03秒的通信数据确定8点00分00秒至01秒、8点00分01秒至02秒、8点00分02秒至03秒这三个基础时间窗口对应的第二终端设备参数。然后,终端设备根据第二终端设备参数,通过服务器下发的模型得到这三个基础时间窗口对应的卡顿置信度。
204、终端设备依据固定的应用时间窗口长度,根据应用时间窗口内的卡顿置信度预测终端设备是否卡顿;
为了保证卡顿预测效果,终端设备每隔一个固定应用时间窗口进行一次卡顿预测,应用时间窗口为终端设备进行卡顿预测利用的时间窗口,应用时间窗口中包括至少一个基础时间窗口。例如,当应用时间窗口的长度设定为3秒时,终端设备每隔3秒进行一次卡顿预测,即当终端设备进行卡顿预测时,采用过去3秒的应用时间窗口的第二终端设备参数进行卡顿预测,其中,应用时间窗口包括多个基础时间窗口。图3为本申请实施例提供的一种基础时间窗口与应用时间窗口的关系示例图。如图3所示,应用时间窗口300包括基础时间窗口301、基础时间窗口302和基础时间窗口303。
图4为采用固定应用时间窗口时基础时间窗口与应用时间窗口的关系示例图。可见,应用时间窗口的固定长度为3秒,因此终端设备每隔3秒预测一次终端设备的状态,分别依据应用时间窗口410、应用时间窗口411和应用时间窗口412的第二终端设备参数。
205、若终端设备卡顿,则终端设备进行通信优化。
在一些实施例中,当终端设备根据服务器下发的模型以及步骤204中确定的卡顿置信度预测到终端设备即将卡顿时,终端设备可以进行通信优化。通信优化的方式包括但不限于切换用户身份识别卡(subscriber identity module,SIM卡)和切换基站,在实际应用中,还可以有其他通信优化的方法,本申请实施例对此不做限定。
图2对应的实施例中,应用时间窗口的长度设定完毕后,终端设备便一直根据固定的应用时间窗口的长度进行卡顿预测。应用时间窗口的长度固定不变,如图4所示,应用时间窗口的长度一直为3秒,则终端设备每隔3秒进行一次卡顿预测。如果应用时间窗口长度设定过长,则终端设备每隔较长时间才进行一次卡顿预测,卡顿预测的实时性低,当终端设备出现卡顿时,终端设备无法及时预测到卡顿。例如,应用时间窗口设定为1分钟,但终端设备在30秒时发生了卡顿,终端设备需要再经过30秒才能到达设定的1分钟,因此终端设备无法及时预测到该卡顿,无法及时进行通信优化,用户体验较差。如果应用时间窗口长度设定过短,则终端设备用于卡顿预测的时间窗口较短,依据的数据较少,容易出现误差,导致卡顿预测的误报率高。例如应用时间窗口设定为1秒,期间第二终端设备参数可能在这1秒内出现正常的数值波动,则终端设备容易根据正常的数值波动预测到卡顿的结果,导致误报。
本申请实施例提供卡顿预测的方法,实现应用时间窗口的长度的自动调节。以下将对本申请实施例提供的卡顿预测方法进行详细的描述。
图5a示出了本申请实施例中实现卡顿预测方法的一种架构示例图,服务器提供AI模型服务,构建和训练终端设备进行卡顿预测用到的模型,而终端设备接收服务器的模型,通过模型计算和预测设备状态,若设备状态预测为卡顿,则终端设备需要进行通信优化。图5b示出了该架构对应的流程示意图。以下将结合图5a和图5b进行详细的描述,图5b所示的流程包括:
501、服务器获取通信数据;
服务器获取的通信数据可以参考前述步骤201中的描述,具体此处不再赘述。
在一些实施例中,服务器可以通过多种方式获取到这些通信数据,例如,服务器可以获取终端设备运行过程中产生的日志信息,然后服务器从日志信息中提取通信数据,或者是服务器从数据库中读取历史数据,从历史数据中提取通信数据,或者是服务器接收终端设备上报的通信数据。
在实际应用中,服务器可以与若干个人工测试机连接,服务器可以从人工测试机中获取到通信数据。这种情况下,终端设备可以提示用户选择是否参与优化计划,若用户参与优化计划,则参与优化计划的终端设备向服务器上报其通信数据。图6b为终端设备提示用户选择是否参与优化计划的界面示例图,由图6b可见,若用户点击“好的”虚拟按钮,则终端设备可以将通信数据上报至服务器,若用户点击“取消”虚拟按钮,则服务器不会接收到该终端设备的通信数据。
502、服务器按照基础时间窗口切分通信数据,得到第一终端设备参数;
在本申请实施例中,基础时间窗口的概念与前述步骤202类似,具体此处不再赘述。在一种可能的实施例中,工作人员根据实际情况设定一个合适的基础时间窗口的长度,例如1秒,并将该基础时间窗口的长度输入服务器,使得服务器按照该基础时间窗口的长度切分通信数据。在另一种可能的实施例中,终端设备根据自身运行情况通过一定的算法计算得到基础时间窗口长度,然后终端设备向服务器发送该基础时间窗口长度,使得服务器按照该基础时间窗口长度切分通信数据,本申请实施例对计算基础时间窗口长度的算法不做具体限定。在实际应用中,服务器还可以通过其他方式获取到基础时间窗口长度,具体此处不做限定。
在本申请实施例中,服务器获取到通信数据后,服务器可以按照基础时间窗口长度对通信数据进行切分,然后根据切分后的通信数据确定第一终端设备参数,切分方法和确定方法与前述步骤202的方法类似,具体此处不再赘述。
在本申请实施例中,服务器可以获取基础时间窗口对应的标签,可以理解的是,每个基础时间窗口可以对应有至少一个标签,标签可以用于表示该基础时间窗口卡顿或流畅。在一种可能的实施例中,服务器可以获取人工输入的卡顿时间,然后根据卡顿时间将卡顿时间内的基础时间窗口对应的标签设定为卡顿,其余基础时间窗口对应的标签设定为流畅。在另一种可能的实施例中,服务器可以根据终端设备的日志信息提取出该终端设备的卡顿时间,然后根据卡顿时间将卡顿时间内的基础时间窗口对应的标签设定为卡顿,其余基础时间窗口对应的标签设定为流畅。在实际应用中,服务器还可以通过其他方式获取到卡顿时间,本申请实施例对服务器获取卡顿时间的方式不做具体限定。
在一种可能的实施例中,服务器可以获取人工输入的流畅时间,然后根据流畅时间将流畅时间内的基础时间窗口对应的标签设定为流畅,其余基础时间窗口对应的标签设定为卡顿。
在一些实施例中,服务器用数值1表示基础时间窗口对应的标签设定为卡顿,用数值0表示基础时间窗口对应的标签设定为流畅。在实际应用中,也可以采用其他方式进行设定,本申请实施例对此不做具体限定。
503、服务器根据第一终端设备参数、标签以及AI算法对模型进行训练;
如图5a所示,服务器获取第一终端设备参数后,根据第一终端设备参数、标签以及AI算法,训练卡顿置信度模型、自适应窗口模型、卡顿预测模型。其中,AI算法可以是决策树算法、随机森林算法,也可以是线性回归算法或神经网络算法,具体此处不做限定。具体训练过程可参阅图8对应的各个实施例,具体此处不再赘述。
在本申请实施例中,服务器可以构建和训练进行卡顿预测用到的人工智能(artificial intelligence,AI)模型。AI模型包括但不限于线性回归模型(linear regression)、逻辑回归模型(logistic regression)、线性判别分析模型(linear discriminant analysis,LDA)、决策树模型(decision trees)、贝叶斯模型(naive bayes)、K最近邻分类模型(k-nearest neighbors)、学习矢量量化模型(learning vector quantization)、支持向量机模型(support vector machines)、随机决策森林模型(random decision forests or bagging)和深度神经网络模型(deep neural networks)。上述模型按其在本申请实施例中的功能或作用可以作为卡顿置信度模型、自适应窗口模型、卡顿预测模型或业务识别模型。
其中,卡顿置信度模型用于计算卡顿置信度,卡顿置信度与基础时间窗口具有关联关系,卡顿置信度用于表示终端设备在与该卡顿置信度关联的基础时间窗口内是否卡顿。例如,卡顿置信度超过阈值则表示该终端设备在与该超过阈值的卡顿置信度关联的基础时间窗口内卡顿。
在一些实施例中,服务器可以通过有监督学习算法,根据第一终端设备参数以及标签可以对卡顿置信度模型进行训练。在一些实施例中,卡顿置信度模型可以是决策树模型、随机森林模型、逻辑回归模型等。具体可参照后续图8对应的实施例,此处不再赘述。在另一些实施例中,服务器可以通过无监督学习算法,根据第一终端设备参数对卡顿置信度模型进行训练,此处不做具体限定。
其中,自适应窗口模型为用于自动计算应用时间窗口长度的模型,基础时间窗口与应用时间窗口的关系与前述步骤204中的描述类似,具体此处不再赘述。服务器可以根据卡顿置信度,通过自适应窗口模型得到应用时间窗口的长度。具体可参照后续图8对应的实施例,此处不再赘述。
服务器得到应用时间窗口的长度后,可以根据应用时间窗口的长度将通信数据所涉及的时间段切分为若干个应用时间窗口。
服务器可以根据应用时间窗口内的卡顿置信度,通过卡顿预测模型计算出卡顿分值。卡顿预测模型可以是一阶指数平滑模型、二阶指数平滑模型或线性回归模型等。图11为本申请实施例中服务器通过卡顿预测模型计算卡顿分值的示意图,如图11所示,服务器将基础时间窗口1101的卡顿置信度、基础时间窗口1102的卡顿置信度以及基础时间窗口1103的卡顿置信度输入卡顿预测模型,然后可以通过卡顿预测模型得到基础时间窗口1104的卡顿分值。
服务器训练模型的具体过程可参照后续图8对应的实施例,此处不再赘述。
504、服务器向终端设备下发训练完的模型;
如图5a所示,服务器训练模型后,可以将训练完的模型分发到各个终端设备。
在一些实施例中,服务器可以训练对应于每个终端设备的模型。示例性的,服务器可以训练适用于终端设备1的A模型,然后将A模型发送至终端设备1,另一方面,服务器可以训练适用于终端设备2的B模型,然后将B模型发送至终端设备2。在另一些实施例中,服务器也可以训练一个适用于多个终端设备的模型,然后发给各个终端设备。
505、终端设备接收服务器分发的模型,获取第二终端设备参数;
在本申请实施例中,终端设备获取的第二终端设备参数可以用于进行卡顿预测。
需要说明的是,终端设备获取第二终端设备参数以及终端设备获取服务器发送的模型可以没有顺序关系。在一些实施例中,终端设备可以先获取第二终端设备参数然后获取模型。在另一些实施例中,终端设备可以先获取模型然后获取第二终端设备参数。在另一些实施例中,终端设备同时获取第二终端设备参数和模型。
在本申请实施例中,终端设备获取第二终端设备参数的过程可以为,终端设备实时获取在通信过程中的通信数据,每隔一个基础时间窗口则终端设备根据通信数据确定第二终端设备参数。具体确定第二终端设备参数的方法可参阅前述步骤203中确定第二终端设备参数的描述,具体此处不再赘述。
基础时间窗口的长度可以有多种获取方式。在一种可能的实施例中,工作人员设定合适的基础时间窗口的长度存储到服务器,当终端设备需要应用本申请实施例提供的方法时,可以是先获取到服务器下发的基础时间窗口的长度。在另一种可能的实施例中,终端设备根据服务器下发的训练完的卡顿置信度模型确定基础时间窗口的长度。在一种可能的实施例中,工作人员可以设定若干个模式以及每个模式对应的基础时间窗口的长度并存储在服务器。例如,游戏模式对应的基础时间窗口的长度为1毫秒,阅读模式的基础时间窗口的长度为3秒,当终端设备需要进行游戏模式的卡顿预测时,可以先从服务器中获取对应于游戏模式的基础时间窗口的长度为1毫秒。需要说明的是,基础时间窗口也可以是存储在终端设备上,本申请实施例对基础时间窗口的长度不作限定。
在一些实施例中,终端设备获取的第二终端设备参数的类型可以根据服务器下发的模型的需要确定。例如,服务器下发的卡顿置信度模型需要时延、上行速率、下行速率这三种参数类型,则终端设备可以根据通信数据和基础时间窗口的长度获取到与基础时间窗口对应的时延、上行速率、下行速率。
506、终端设备根据服务器下发的模型以及第二终端设备参数预测卡顿,根据预测结果判断是否需要通信优化;
在一些实施例中,终端设备获取到第二终端设备参数以及服务器下发的模型后,可以通过这些第二终端设备参数以及服务器下发的模型进行卡顿预测。根据模型进行卡顿预测方法可参考图8对应的各个实施例中描述,此处仅简单描述:
服务器下发的模型可以包括卡顿置信度模型、自适应窗口模型和卡顿预测模型。卡顿置信度模型、自适应窗口模型和卡顿预测模型可参考前述步骤503的描述,具体此处不再赘述。
在一种可能的实施例中,终端设备根据第二终端设备参数通过卡顿置信度模型计算卡顿置信度,然后终端设备根据卡顿置信度通过自适应窗口模型自动计算应用时间窗口长度, 从而确定应用时间窗口,然后终端设备根据应用时间窗口内的基础时间窗口对应的各个卡顿置信度,通过卡顿预测模型计算目标基础时间窗口的卡顿分值。
在本申请实施例中,当卡顿分值超过阈值时,终端设备可以进行通信优化,通信优化可以包括但不限于切换用户身份识别卡(subscriber identity module,SIM)和切换基站。在一些实施例中,切换SIM卡是指具有两个或两个以上SIM卡的终端设备将通信用的SIM卡由原来正在通信的SIM卡切换成另一个SIM卡,终端设备通过切换后的SIM卡进行通信。在一些实施例中,切换基站是指终端设备将当前与该终端设备通信连接的基站由原来的基站切换至另一个基站,应理解,可以由2G/3G/4G/5G基站切换至另一个2G/3G/4G/5G基站。
在一些实施例中,终端设备还可以将设备状态信息显示在用户界面(user interface,UI)上,通过UI提醒用户目前设备状态,并显示是否进行通信优化的选项,图6a为本申请实施例中通信优化选择的用户界面示例图,可见,当终端设备检测到卡顿后,终端设备的右上角可以显示“卡顿”字样,同时弹出选择框,用户可以点击其中的虚拟按钮“好的”或者虚拟按钮“取消”。点击虚拟按钮“好的”可触发进行通信优化的指令,点击虚拟按钮“取消”可触发不进行通信优化的指令,终端设备接收到通信优化的指令后进行通信优化,终端设备接收到不进行通信优化的指令后不进行动作,从而用户可以控制终端设备是否进行通信优化。可以理解的是,若终端设备获取进行通信优化的指令,则终端设备进行如切换SIM卡或切换基站的通信优化,若终端设备获取不进行通信优化的指令,则终端设备不进行通信优化。
在一些实施例中,终端设备进行通信优化准备切换SIM卡时,终端设备在用户界面上显示是否切换SIM卡的选项。图7为本申请实施例中选择切换SIM卡的用户界面示例图,可见,终端设备的右上角可以显示“卡顿”字样,由于卡顿,终端设备准备切换SIM卡,则弹出选择框,用户可以点击其中的虚拟按钮“好的”或者虚拟按钮“取消”。用户点击虚拟按钮“好的”可触发切换SIM卡的指令,从而指示终端设备切换SIM卡,用户点击虚拟按钮“取消”则终端设备不切换SIM卡。
如图7所示,终端设备还可以将进行通信优化的信息显示在UI上,通过UI提醒用户目前正在采用的通信优化信息。例如,终端设备目前通过切换SIM卡的方式进行通信优化,则终端设备可以在UI上显示“正在切换SIM卡”。
如图7所示,终端设备切换SIM卡完毕后,可以在用户界面上显示“切换SIM卡完毕”的字样,用于说明终端设备切换SIM卡完毕。一般地,终端设备切换SIM卡后不再卡顿,则用户界面右上角的“卡顿”字样消失。
如图5a所示,终端设备上可以安装有手机软件(application,APP)和操作系统内核。操作系统内核是终端设备的软件部分,用于搭载APP和显示用户界面。终端设备上可以包括多个操作系统内核,操作系统内核上可以搭载多个APP。APP可以在UI上显示设备状态信息、显示是否进行通信优化的选项或显示进行通信优化的信息。在实际应用中,终端设备上还可以安装其他客户端或操作系统,此处具体不做限定。
图8为本申请实施例提供的终端设备检测方法的实施例流程示意图,该流程包括:
801、服务器获取通信数据,并将通信数据按照时间排序;
在本申请实施例中,服务器获取的通信数据用于训练模型,具体可参照前述实施例中步骤501中服务器获取通信数据的描述,此处不再赘述。
然后服务器可以将这些通信数据按照时间进行排序。在一些实施例中服务器可以通过时间戳对通信数据进行排序。例如,服务器获取了8点至9点的通信数据,则可以按照这些通信数据的时间戳排序。时间戳可以是一串具体的数字,用来表示对应的数据所产生或者所对应的时间。例如,表1为本申请实施例中,服务器将通信数据按照时间戳进行排序的一种示例。
表1
Figure PCTCN2020115210-appb-000007
请参阅表1,时间戳可以用来表示对应的通信数据所产生或者所对应的时间。例如表1中时间戳为20190416080001则表示该一行通信数据所对应的的时间为08点00分01秒。在一些实施例中,服务器可以根据接收到通信数据的时间为每个数据打上时间戳,例如,服务器在08点00分01秒接收到通信数据,则可以将该通信数据的时间戳标为080101。在一种可能的实施例中,服务器接收到的通信数据中自带时间戳。
然后,服务器可以根据时间戳大小,将手机A的通信数据排列成表格。例如表1中,时间戳为20190416080001的通信数据排在最前,时间戳为20190416080002的通信数据排在第二,以此类推。在另一些实施例中,服务器可以直接根据时间日期进行排序,本申请实施例对此不作限定。
在一种可能的实施例中,服务器根据该通信数据的来源为该通信数据设定设备号。例如,服务器判断信号强度的来源是手机A,则服务器设定该信号强度对应的设备号为手机A。在一种可能的实施例中,服务器接收到的终端设备上报的数据中已经带有设备号的标签,则服务器可以直接确定该通信数据的设备号。手机A和手机B仅是其中一些终端设备的设备号,在实际应用中,还可以有电脑C、平板D等其他终端设备的设备号,具体此处不做限定。
表1中的应用名称表示该通信数据是哪个应用产生的。在一些实施例中,服务器获取 到的通信数据中带有应用名称的标签。例如,信号强度-40.1对应的标签为应用1,则服务器可以确定该信号强度是应用1通信时产生的。服务器也可以根据其他方式确定通信数据对应的应用,具体此处不做限定。
示例性的,通信数据的类型可以包括但不限于信号强度、五元组、包大小(字节)、时延、上行速率、下行速率等。其中,五元组由源IP地址、源端口、目标IP地址、目标端口、传输协议组成。例如,A.1表示源IP地址为10.7.1.8、源端口为123、目标IP地址为202.119.17.24、目标端口为80、传输协议为TCP,其余五元组标识(例如A.2)代表的含义可根据实际应用具体设定,具体此处不做限定。
802、服务器对通信数据按照基础时间窗口切分,并根据切分后的通信数据确定第一终端设备参数,训练模型并向终端设备下发训练完的模型;
在本申请实施例中的基础时间窗口与前述图5b对应的各个实施例中基础时间窗口类似,此处不再赘述。
在本申请实施例中,服务器确定基础时间窗口长度的方法与前述步骤502类似,此处不再赘述。
在一些实施例中,服务器可以首先根据基础时间窗口的长度将通信数据所涉及的时间段切分为若干个基础时间窗口。具体可参照前述步骤202中切分基础时间窗口的方法的描述,此处不再赘述。
在一些实施例中,基础时间窗口可以包括基础时间窗口的结束时刻,不包括基础时间窗口的开始时刻。则服务器可以根据通信数据对应的时间戳确定该通信数据被切分在哪个基础时间窗口。如图11所示,基础时间窗口1101可以表示8点00分00秒至01秒,包括8点00分01秒这个结束时刻,不包括8点00分00秒这个开始时刻。在这种情况下,若表1中时间戳为20190416080001的信号强度为-40.1,该信号强度对应的时间为08点00分01秒,则服务器可以将时间戳为20190416080001的信号强度切分到基础时间窗口1101中。其他通信数据的切分方式类似,此处不再赘述。在另一些实施例中,基础时间窗口可以包括基础时间窗口的开始时刻,但不包括基础时间窗口的结束时刻。本申请实施例对此不做限定。
服务器对通信数据切分完毕后,可以根据基础时间窗口内的通信数据确定基础时间窗口对应的第一终端设备参数,具体可以参照前述步骤202中确定第一终端设备参数的方法的描述,具体此处不做限定。
在一些实施例中,服务器可以获取基础时间窗口对应的标签,具体可参照前述步骤502中获取基础时间窗口对应的标签的描述,此处不再赘述。
表2为本申请实施例中,服务器确定第一终端设备参数以及标签的一种示例。表2中的时间窗口编号可以用于表示基础时间窗口。示例性的,表2中时间窗口编号可以为该基础时间窗口的结束时刻的时间戳。例如,时间窗口编号20190416080001表示8点00分00秒至01秒的基础时间窗口。在另一些实施例中,时间窗口编号也可以为该基础时间窗口的开始时刻的时间戳,本申请实施例对时间窗口编号的设定方法不做具体限定。服务器可以根据如图2所示的时间窗口编号将基础时间窗口排序。在表2的示例中手机A在8点00分 00秒至01秒的基础时间窗口内,时延为50、上行速率为10以及下行速率为0,且手机A在8点00分00秒至01秒的标签为卡顿。
表2
设备号 时间窗口编号 时延 上行速率 下行速率 标签
手机A 20190416080001 50 10 0 卡顿
手机A 20190416080002 60 5 30 卡顿
手机A 20190416080003 70 50 50 流畅
…. …. …. ….
手机B 20190416080001 40 10 0 …. 卡顿
手机B 20190416080002 20 5 20 …. 流畅
…. …. …. …. …. …. ….
然后,服务器可以根据第一终端设备参数以及标签对待训练的模型进行训练。本申请实施例中训练的模型可以包括卡顿置信度模型、自适应窗口模型和卡顿预测模型。
在一些实施例中,服务器可以仅采用手机A的第一终端设备参数对模型进行训练,以训练得到适合手机A的模型。在另一些实施例中,服务器可以同时采用多个手机的第一终端设备参数对模型进行训练,以得到适合大部分手机的模型。为方便描述,本申请实施例以及后续实施例以采用手机A的第一终端设备参数训练模型进行描述。
其中,卡顿置信度模型用于计算卡顿置信度,卡顿置信度与基础时间窗口具有关联关系,卡顿置信度用于表示终端设备在与该卡顿置信度关联的基础时间窗口内是否卡顿。例如,卡顿置信度超过阈值则表示该终端设备在与该超过阈值的卡顿置信度关联的基础时间窗口内卡顿。服务器可以通过有监督学习算法,根据第一终端设备参数以及标签可以对卡顿置信度模型进行训练。本申请实施例中,卡顿置信度模型可以是决策树模型、随机森林模型、逻辑回归模型等。例如图9为本申请实施例中一种决策树模型的示意图,服务器训练卡顿置信度模型的方法在一种可能的实施例中为:服务器获取100个基础时间窗口对应的第一终端设备参数以及标签;根据决策树算法得到决策树中的分裂属性(图9的示例中分裂属性为时延、上行速率、下行速率),根据第一终端设备参数将基础时间窗口分类至叶节点,根据叶节点中的基础时间窗口对应的标签确定该叶节点的卡顿置信度。例如,图9中左边数起第1个叶节点中分类有10个基础时间窗口,其中10个基础时间窗口对应的标签为卡顿,则该叶节点的卡顿置信度为叶节点中标签为卡顿的基础时间窗口(10个)占叶节点中基础时间窗口数量(10个)比率等于100%,又例如,左边数起第2个叶节点中有10个基础时间窗口,其中9个基础时间窗口的标签为卡顿,则该叶节点的卡顿置信度为叶节点中标签为卡顿的基础时间窗口(9个)占叶节点中基础时间窗口数量(10个)比率等于90%。其他叶节点的训练方式类似,此处不再赘述。服务器对卡顿置信度模型训练完毕 后,可以根据第一终端设备参数判断对应的基础时间窗口属于哪个叶节点,该叶节点的卡顿置信度可以为该基础时间窗口的卡顿置信度。表3为本申请实施例中基础时间窗口对应的第一终端设备参数、支持度以及置信度的一种示例。表3中时间窗口编号为20190416080001的基础时间窗口中,时延为50、上行速率为10、下行速率为0,则该基础时间窗口属于图9中左边数起第1个叶节点,该叶节点的卡顿置信度(100%)可以作为该基础时间窗口的卡顿置信度(100%)。
在一些可能的实施例中,服务器还可以通过卡顿置信度模型计算基础时间窗口对应的支持度,支持度为训练时所依据的基础时间窗口数量占总基础时间窗口数量的比率。以卡顿置信度模型为决策树为例,服务器训练卡顿置信度模型的方法在一种可能的实施例中为:服务器获取100个基础时间窗口对应的第一终端设备参数以及标签;根据决策树算法得到决策树中的分裂属性,根据第一终端设备参数将基础时间窗口分类至叶节点,根据叶节点中的基础时间窗口对应的标签确定该叶节点的支持度。例如,图9中左边数起第1个叶节点中分类有10个基础时间窗口,则该叶节点的支持度为叶节点中基础时间窗口的数量(10个)占总基础时间窗口数量的比率(100个)等于0.1。其他叶节点的训练方式类似,此处不再赘述。服务器可以根据第一终端设备参数判断对应的基础时间窗口属于哪个叶节点,该叶节点的支持度可以为该基础时间窗口的支持度。例如表3中时间窗口编号为20190416080001的基础时间窗口中,时延为50、上行速率为10、下行速率为0,则该基础时间窗口属于图9中左边数起第1个叶节点,该叶节点的支持度(0.1)可以作为该基础时间窗口的支持度(0.1)。
表3
设备号 时间窗口编号 时延 上行速率 下行速率 支持度 卡顿置信度
手机A 20190416080001 50 10 0 0.1 100%
手机A 20190416080002 60 5 30 0.1 90%
手机A 20190416080003 70 50 50 0.3 3.3%
…. …. ….  
在本申请实施例中,自适应窗口模型可以用于计算应用时间窗口长度的模型,基础时间窗口与应用时间窗口的关系与前述步骤204中的描述类似,具体此处不再赘述。图10为本申请实施例中自适应窗口模型的一种示意图,服务器可以通过自适应窗口模型判断基础时间窗口的卡顿置信度是否满足判断条件,从而得到应用时间窗口的长度。以基础时间窗口表示1秒为例,当第一个基础时间窗口的卡顿置信度满足判断条件时,服务器以第一个基础时间窗口为应用时间窗口(应用时间窗口长度为1秒)。当第一个基础时间窗口的卡顿置信度不满足判断条件时,服务器根据第一个和第二个基础时间窗口的卡顿置信度,通过自适应窗口模型判断第一个和第二个基础时间窗口的卡顿置信度是否满足判断条件,若满足判断条件,则服务器以第一个和第二个基础时间窗口为应用时间窗口(自适应窗口模型 输出应用时间窗口长度为2秒)。若还是不满足判断条件,则服务器继续根据第一个、第二个和第三个基础时间窗口的卡顿置信度,通过自适应窗口模型判断第一个、第二个和第三个基础时间窗口的卡顿置信度是否满足判断条件,以此类推。在一些实施例中,第一个、第二个、第三个基础时间窗口的顺序是以时间顺序排序的,服务器可以通过如表3的时间窗口编号预先进行排序。
在一些实施例中,服务器还可以设置卡顿置信度的数量阈值为4,则服务器首先检测卡顿置信度的数量是否达到4。若否,则服务器对这些卡顿置信度按照前述的判断条件进行判断。若是,则服务器可以确定第一个至第四个基础时间窗口为应用时间窗口,得到应用时间窗口长度为4秒。服务器设定卡顿置信度的数量阈值,能够让卡顿置信度的数量达到阈值后输出对应的应用时间窗口长度,防止让应用时间窗口长度无限延长。
在一些实施例中,自适应窗口模型中的判断条件可以为基础时间窗口的卡顿置信度平均值是否大于预设阈值。在另一些实施例中,自适应窗口模型中的判断条件还可以为卡顿置信度的中位数是否大于预设阈值,在实际应用中,还可以是其他判断条件,本申请实施例对此不做限定。
在一些实施例中,判断条件可以与输入的卡顿置信度个数具有关联关系。示例性的,如图10所示,自适应窗口模型中的判断条件可以是基础时间窗口的卡顿置信度平均值是否大于0.9或0.7等。
在本申请实施例中,服务器通过自适应窗口模型计算出应用时间窗口的长度后,可以根据应用时间窗口的长度确定应用时间窗口。在一些实施例中,服务器可以根据第一终端设备参数所涉及的时间段以及应用时间窗口的长度确定应用时间窗口。示例性的,图12中第一终端设备参数所涉及的时间段包括基础时间窗口1201、基础时间窗口1202…基础时间窗口1209,其中,基础时间窗口1201可以表示8点00分00秒至01秒,基础时间窗口1200可以表示8点00分01秒至02秒…基础时间窗口1209可以表示8点00分08秒至09秒。假设服务器根据自适应窗口模型依次得到应用时间窗口的长度为3秒、4秒、2秒,则服务器可以根据这些应用时间窗口的长度确定应用时间窗口1211、应用时间窗口1212以及应用时间窗口1213。
然后,服务器可以将应用时间窗口内的卡顿置信度输入卡顿预测模型。服务器可以根据卡顿置信度,通过卡顿预测模型计算出卡顿分值。卡顿预测模型可以是一阶指数平滑模型、二阶指数平滑模型或线性回归模型等。如图11中三个黑点分别表示基础时间窗口1101,基础时间窗口1102和基础时间窗口1103的卡顿置信度。服务器根据卡顿预测模型,通过拟合线可以得到白点,白点表示基础时间窗口1104的卡顿分值。卡顿预测模型中的线性拟合的参数值可以通过训练得到。
在一些实施例中,若基础时间窗口对应的卡顿分值超过设定的阈值,则服务器可以确定该基础时间窗口的预测结果为卡顿。若基础时间窗口对应的卡顿分值没有超过设定的阈值,则服务器可以确定该基础时间窗口的预测结果为流畅。示例性的,图12中基础时间窗口1204的卡顿分值超过设定的阈值,则服务器可以确定基础时间窗口1204的预测结果为卡顿。在一些实施例中,服务器根据应用时间窗口内的标签确定应用时间窗口后一个基础 时间窗口的标签。示例性的,图12中,服务器可以根据应用时间窗口1213内的标签确定基础时间窗口1210的标签。在一种实现方式中,若应用时间窗口1213内的标签均为卡顿,则服务器可以标注基础时间窗口1210的标签为卡顿。若应用时间窗口1213内的标签有一个不是卡顿,则服务器可以标注基础时间窗口1210的标签为流畅。在另一种实现方式中,若应用时间窗口1213内的卡顿的标签数量大于流畅的标签数量,则服务器可以标注基础时间窗口1210的标签为卡顿。若应用时间窗口1213内的卡顿的标签数量不大于流畅的标签数量,则服务器可以标注基础时间窗口1210的标签为流畅。
在一些实施例中,服务器可以将基础时间窗口的预测结果与基础时间窗口的标签进行比较得到效果参数(如准确率等)。示例性的,假设图12中基础时间窗口1204的标签为卡顿,基础时间窗口1208的标签为流畅,基础时间窗口1210的标签为卡顿。服务器可以统计得到图12中具有预测结果的基础时间窗口有3个,其中,预测结果与标签相同的基础时间窗口有3个,则准确率为100%(准确率可以为预测结果与标签相同的基础时间窗口数量除以具有预测结果的基础时间窗口数量)。
在一些实施例中,当服务器确定效果参数满足预设条件时,服务器可以将对应的模型(卡顿置信度模型,自适应窗口模型和卡顿预测模型)下发至终端设备。当服务器确定效果参数不满足预设条件时,服务器可以选择其他模型重新计算效果参数,其中,其他模型可以是服务器预先设定的,也可以是服务器自动生成的,本申请实施例对此不做具体限定。在另一些实施例中,服务器预先设定多个模型,各个模型之间的模型参数可以不同。例如,服务器预先设定第一自适应窗口模型、第二自适应窗口模型,第一卡顿预测模型、第二卡顿预测模型,可以理解的是,卡顿置信度模型可以在计算效果参数时通过第一终端设备参数和标签训练得到。然后服务器可以将这些模型进行随机组合,形成多个模型组合。在一些实施例中,服务器可以逐一计算模型组合对应的效果参数,当服务器确定当前计算的效果参数满足预设条件时,服务器可以将该效果参数对应的模型组合下发至终端设备。在另一些实施例中,服务器可以将效果参数满足预设条件的模型组合全部下发至终端设备,然后终端设备可以选择其中一个模型组合进行卡顿预测。终端设备可以随机选择其中一个模型组合,也可以通过一定算法进行选择,本申请实施例对此不做限定。表4为本申请实施例中,服务器训练过程的一种示例表格,可见,卡顿置信度模型1、自适应窗口模型1和卡顿预测模型1这三个模型对应的准确率为100%,符合设定的准确率需大于90%的条件,则服务器可以将这三个模型作为训练得到的模型组合下发至终端设备。
表4
Figure PCTCN2020115210-appb-000008
在一些实施例中,服务器还可以获取其他效果参数,例如误判率。误报率可以为具有 预测结果且标签为流畅的基础时间窗口中,预测结果为卡顿的基础时间窗口的比例。在一些实施例中,误报率可以为误报基础时间窗口占流畅基础时间窗口的比例,误报基础时间窗口为卡顿预测结果为卡顿且标签为流畅的基础时间窗口,流畅基础时间窗口为具有卡顿预测结果且标签为流畅的基础时间窗口。以图12为例,基础时间窗口1204的标签为卡顿,基础时间窗口1208的标签为流畅,基础时间窗口1210的标签为卡顿。假设基础时间窗口1204的预测结果为卡顿,基础时间窗口1208的预测结果为流畅,基础时间窗口1210的预测结果为卡顿,则服务器可以统计得到误报基础时间窗口的数量为0,流畅基础时间窗口的数量为1(基础时间窗口1204、基础时间窗口1208以及基础时间窗口1210中仅有基础时间窗口1208的标签为流畅),服务器计算得到本次预测的误报率为0%。因此该误报率符合误报率小于1%的条件,则服务器可以将该误报率对应的卡顿置信度模型、自适应窗口模型以及卡顿预测模型下发至终端设备。
在一些实施例中,服务器还可以获取其他效果参数,例如应用时间窗口的平均长度。以图12为例,应用时间窗口1211的长度为3秒,应用时间窗口1212的长度为4秒,应用时间窗口1213的长度为2秒,则服务器可以统计得到应用时间窗口的平均长度为3秒。若设定的条件为应用时间窗口的平均长度需要小于3.5秒,则预测结果符合条件,服务器可以将该预测结果对应的卡顿置信度模型、自适应窗口模型以及卡顿预测模型下发至终端设备。
在另一些实施例中,服务器可以计算多个模型组合的效果参数,选择效果参数最好的模型组合下发至终端设备。示例性的,表5为本申请实施例中,服务器根据效果参数对模型组合排序的一种示例表格,如表5所示,服务器预先设定的模型组合包括A组、B组和C组。其中,模型组合A为表示卡顿置信度模型1、自适应窗口模型1和卡顿预测模型1的组合,模型组合B为表示卡顿置信度模型2、自适应窗口模型1和卡顿预测模型1的组合,以此类推。
表5
组别 模型组合 误报率 准确率 应用时间窗口长度平均值
A组 1、1、1 0.1% 99% 2
B组 2、1、1 0.1% 99% 3
C组 1、2、1 0.5% 95% 4
在一些实施例中,服务器还可以根据各组的效果参数进行排序,将误报率低的、准确率高的以及应用时间窗口长度平均值低的排在前面。从表5可见,A组误报率最低,准确率最高,应用时间窗口长度平均值最小,因此排在第1。服务器可以根据排序情况将排在最前的模型组合发送至终端设备。示例性的,在表5的示例中服务器可以发送卡顿置信度模型1、自适应窗口模型1和卡顿预测模型1至终端设备。
在一种可能的实施例中,服务器中可以存储有业务类型以及该业务类型匹配的卡顿置信度模型、自适应窗口模型以及卡顿预测模型。例如游戏业务类型对应的自适应窗口模型为游戏类自适应窗口模型。又例如,浏览业务类型对应的自适应窗口模型为浏览类自适应 窗口模型。在一些可能的实施例中,服务器可以通过业务识别模型识别终端设备当前的业务类型,从而进一步向该终端设备下发与该业务类型匹配的卡顿置信度模型、自适应窗口模型以及卡顿预测模型。业务识别模型的生成方法在一些实施例中可以为:
服务器可以首先获取第三终端设备参数以及对应的业务标签(第三终端设备参数可以用于构建业务识别模型),第三终端设备参数中可以包括但不限于报文数据、包头信息等。业务标签用于表示业务类型,例如游戏、视频等。第三终端设备参数以及业务标签如表6所示,表6为本申请实施例中,第三终端设备参数以及卡顿标签的一种示例:
表6
Figure PCTCN2020115210-appb-000009
服务器可以根据这些第三终端设备参数以及业务标签,生成业务识别模型。业务识别模型可以是决策树模型或者神经网络模型。该业务识别模型可以用于识别业务类型为游戏或视频或其他业务类型。在一个可能的实施例中,业务识别模型为决策树模型,则可以参照本申请实施例前述步骤802中训练决策树模型的方法,此处不再赘述。
在一种可能的实施例中,服务器训练完业务识别模型后,可以将业务识别模型下发至终端设备。然后,终端设备可以通过业务识别模型识别终端设备当前的业务类型,从而向服务器请求下发与该业务类型匹配的卡顿置信度模型、自适应窗口模型以及卡顿预测模型。
803、终端设备获取第二终端设备参数,根据服务器下发的卡顿置信度模型计算与基础时间窗口对应的卡顿置信度;
本申请实施例中,终端设备获取的第二终端设备参数用于进行卡顿预测,具体可以参照前述实施例中步骤505中终端设备获取第二终端设备参数的描述,此处不再赘述。
在一些实施例中,终端设备可以从服务器中获取基础时间窗口的长度,具体可以参阅前述实施例中步骤505中终端设备获取基础时间窗口长度的描述,此处不再赘述。
终端设备可以根据第二终端设备参数,通过服务器下发的卡顿置信度模型得到与基础时间窗口对应的卡顿置信度。具体可以参照前述步骤802中通过卡顿置信度模型得到与基础时间窗口对应的卡顿置信度的描述,此处不再赘述。
在本申请实施例中,终端设备可以向服务器请求进行卡顿预测所需的模型。在一些可能的实施例中,终端设备可以向服务器请求卡顿置信度模型、自适应窗口模型以及卡顿预测模型。在一些可能的实施例中,终端设备可以先从服务器中获取业务识别模型。然后终端设备可以通过业务识别模型识别终端设备当前的业务类型,从而进一步向服务器请求与该业务类型匹配的卡顿置信度模型、自适应窗口模型以及卡顿预测模型。具体可参照前述 步骤802中通过业务识别模型识别业务类型的描述,此处不再赘述。
804、终端设备根据卡顿置信度,通过自适应窗口模型计算应用时间窗口的长度;
在本申请实施例中,终端设备可以根据基础时间窗口对应的卡顿置信度,通过服务器下发的自适应窗口模型得到应用时间窗口的长度,从而确定组成应用时间窗口的基础时间窗口。
示例性的,以下对终端设备计算应用时间窗口长度的过程示例进行描述:
1、在08点00分01秒:
终端设备可以根据实时获取的通信数据确定与基础时间窗口1201对应的第二终端设备参数。然后终端设备将该第二终端设备参数输入服务器下发的卡顿置信度模型,得到基础时间窗口1201对应的卡顿置信度。然后终端设备根据基础时间窗口1201对应的卡顿置信度,通过自适应窗口模型判断基础时间窗口1201对应的卡顿置信度是否满足判断条件。示例性的,图12中基础时间窗口1201对应的卡顿置信度没有满足判断条件,则终端设备继续实施获取通信数据,不需要计算卡顿分值。
2、在08点00分02秒:
终端设备可以根据实时获取的通信数据确定与基础时间窗口1202对应的第二终端设备参数。然后终端设备将该第二终端设备参数输入服务器下发的卡顿置信度模型,得到基础时间窗口1202对应的卡顿置信度。然后终端设备根据基础时间窗口1201对应的卡顿置信度以及基础时间窗口1202对应的卡顿置信度,通过自适应窗口模型判断这两个卡顿置信度是否满足判断条件。示例性的,图12中这两个卡顿置信度没有满足判断条件,则终端设备继续实施获取通信数据,不需要计算卡顿分值。
3、在08点00分03秒:
终端设备可以根据实时获取的通信数据确定与基础时间窗口1203对应的第二终端设备参数。然后终端设备将该第二终端设备参数输入服务器下发的卡顿置信度模型,得到基础时间窗口1203对应的卡顿置信度。然后终端设备可以根据基础时间窗口1201对应的卡顿置信度、基础时间窗口1202对应的卡顿置信度以及基础时间窗口1203对应的卡顿置信度,通过自适应窗口模型判断这三个卡顿置信度是否满足判断条件。示例性的,图12中这三个卡顿置信度满足判断条件,则终端设备通过自适应窗口模型得到应用时间窗口的长度为3秒。终端设备可以根据应用时间窗口的长度将当前时刻(08点00分03秒)过去3秒的时间段作为应用时间窗口1211,并根据应用时间窗口1211的卡顿置信度,通过卡顿预测模型计算卡顿分值。
4、在08点00分04秒:
终端设备可以根据实时获取的通信数据确定与基础时间窗口1204对应的第二终端设备参数。然后,终端设备可以将该第二终端设备参数输入服务器下发的卡顿置信度模型,得到基础时间窗口1204对应的卡顿置信度。然后终端设备可以根据基础时间窗口1204对应的卡顿置信度,通过自适应窗口模型判断基础时间窗口1204对应的卡顿置信度是否满足判断条件。示例性的,图12中基础时间窗口1204对应的卡顿置信度没有满足判断条件,则终端设备继续实施获取通信数据,不需要计算卡顿分值。
后续时间中,终端设备的情况与上述情况类似,具体可参阅前述步骤802中通过自适应窗口模型得到应用时间窗口长度的过程的描述。
通过上述情况可知,本申请实施例中应用时间窗口的长度可以根据实时获取的通信数据确定,因此应用时间窗口的长度可以根据实时获取的通信数据而变长或变短,从而使得终端设备在进行卡顿预测的过程中,应用时间窗口的长度能够及时动态调整,避免出现应用时间窗口过长或过短的问题。
在一些实施例中,终端设备得到应用时间窗口的长度后,可以根据当前时刻以及应用时间窗口的长度确定应用时间窗口。示例性的,终端设备当前时刻为08点00分03秒,通过自适应窗口模型得到的应用时间窗口的长度为3秒,则终端设备可以根据应用时间窗口的长度将当前时刻(08点00分03秒)过去3秒的时间段作为应用时间窗口。
805、终端设备根据应用时间窗口内的基础时间窗口,通过模型计算出卡顿分值,并根据卡顿分值预测终端设备是否卡顿;
在本申请实施例中,终端设备可以将应用时间窗口内的基础时间窗口的卡顿置信度输入卡顿预测模型,计算得到卡顿分值。终端设备通过卡顿预测模型计算卡顿分值具体可参阅前述实施例中步骤506的描述,此处不再赘述。
806、若终端设备卡顿,则终端设备进行通信优化。
在本申请实施例中,终端设备预测设备状态为卡顿时,终端设备可以进行通信优化。通信优化的方式具体可参照前述实施例中步骤506的描述,此处不再赘述。
图13为本申请实施例中卡顿预测方法的一个实施例的流程示意图。请参阅图13,本申请实施例中卡顿预测方法实施例,应用于终端设备,包括:
1301、获取第二终端设备参数;
在本申请实施例中,终端设备可以获取与基础时间窗口对应的第二终端设备参数,获取方式与前述步骤803类似,具体此处不再赘述。
在一些实施例中,步骤1301获取到的第二终端设备参数用于进行卡顿预测,获取第二终端设备的方式可参照前述实施例中步骤803的描述,此处不做具体限定。
1302、终端设备根据第二终端设备参数,通过卡顿置信度模型得到基础时间窗口对应的卡顿置信度;
在本申请实施例中,卡顿置信度模型可参阅前述步骤802的描述,此处不再赘述。
在本申请实施例中,终端设备向服务器请求进行卡顿预测所需的模型的过程具体可参照前述步骤803的描述,此处不再赘述。
1303、终端设备根据卡顿置信度,通过自适应窗口模型得到应用时间窗口的长度;
在本申请实施例中,基础时间窗口与应用时间窗口的关系可参照前述步骤204中的描述,具体此处不再赘述。在一些实施例中,终端设备调用自适应窗口模型计算应用时间窗口长度的过程可以描述为:终端设备实时获取通信数据,然后根据通信数据确定基础时间窗口对应的第二终端设备参数,然后根据卡顿置信度模型计算得到基础时间窗口对应的卡顿置信度。假设基础时间窗口有M个,则终端设备计算得到M个卡顿置信度(M为大于或等于1的整数)。然后终端设备计算M个卡顿置信度的平均值是否大于预设阈值,若是,则 终端设备得到应用时间窗口长度,该应用时间窗口的长度为M个基础时间窗口的长度之和。若否,则继续获取下一个基础时间窗口的卡顿置信度。例如,当M为1时,计算第1个卡顿置信是否大于预设阈值,若大于预设阈值,则第1个基础时间窗口的长度为该应用时间窗口的长度,第1个基础时间窗口为该应用时间窗口,若不大于预设阈值,则终端设备继续获取下一个卡顿置信度,即第2个卡顿置信度。当M为2时,终端设备计算第1个和第2个卡顿置信度的平均值是否大于预设阈值,若是,则终端设备得到应用时间窗口的长度为第1个和第2个基础时间窗口的长度之和,应用时间窗口即为第1个和第2个基础时间窗口。M为其他数值的情况类似,此处不再赘述。在一些实施例中,终端设备通过自适应窗口模型进行判断时,判断的条件(例如上述的卡顿置信度平均值是否大于预设阈值)可以称为第一预设条件或第二预设条件。在一些实施例中,第一时间窗口可以为终端设备依据卡顿置信度进行判断时,卡顿置信度对应的基础时间窗口的组合。当卡顿置信度满足判断条件时,终端设备可以确定第一时间窗口为应用时间窗口。当卡顿置信度不满足判断条件时,终端设备可以获取下一个基础时间窗口对应的卡顿置信度,则卡顿置信度对应的基础时间窗口增多,第一时间窗口延长为第二时间窗口。
自适应窗口模型中的训练方法可参照本申请其他实施例,此处不再赘述。
在本申请实施例中,终端设备获取到应用时间窗口的长度后,可以根据应用时间窗口的长度确定应用时间窗口。示例性的,终端设备在8点00分03秒获取到应用时间窗口的长度为3秒,则终端设备确定应用时间窗口为当前时刻(8点00分03秒)过去3秒的时间段,具体可参阅前述步骤804中终端设备确定应用时间窗口的描述,此处不再赘述。
本申请实施例中应用时间窗口的长度可以根据实时获取的通信数据确定,因此应用时间窗口的长度可以根据实时获取的通信数据而变长或变短。终端设备在进行卡顿预测的过程中,应用时间窗口的长度能够及时动态调整,避免出现应用时间窗口过长或过短的问题。
1304、终端设备根据应用时间窗口对应的卡顿置信度,通过卡顿预测模型得到卡顿分值;
在本申请实施例中,卡顿预测模型可以是一阶指数平滑模型、二阶指数平滑模型或线性回归模型等,具体此处不做限定。示例性的,卡顿预测模型为一阶指数平滑模型,计算公式为:
Figure PCTCN2020115210-appb-000010
其中
Figure PCTCN2020115210-appb-000011
为终端设备在第t个基础时间窗口的卡顿分值,
Figure PCTCN2020115210-appb-000012
为终端设备在第t-1个基础时间窗口的卡顿分值,y t为终端设备在第t个基础时间窗口的卡顿置信度,α为平滑超参数,t为大于0的整数。平滑超参数可以在服务器中训练确定,训练方法参照本申请其他实施例,此处不再赘述。在一些实施例中,终端设备可以根据一阶指数平滑模型将M个卡顿置信度的数值进行拟合,预测得到下一个可能的卡顿分值。该卡顿分值可以用于预测应用时间窗口后一个基础时间窗口的卡顿。在一些实施例中,卡顿预测模型可以参照前述实施例。
1305、终端设备判断卡顿分值是否大于预设阈值,若是,则进行通信优化。
在本申请实施例中,终端设备通过卡顿预测模型得到卡顿分值后,可以判断该卡顿分值是否大于预设阈值。若是,则终端设备可以确定终端设备在对应的基础时间窗口卡顿。然后终端设备可以根据该判断结果进行通信优化。
终端设备进行通信优化可以是切换SIM卡或者切换基站、切换运营商等,通信优化的具体方式参照前述实施例,此处不再赘述。
下面将从服务器侧对本申请实施例进行详细的描述。图14为本申请实施例提供的一种数据处理的方法的示意图。该数据处理的方法应用于服务器,包括:
1401、服务器获取第一终端设备参数以及标签;
第一终端设备参数与基础时间窗口对应,用于训练模型,具体可参照前述步骤801和步骤802中关于第一终端设备参数以及基础时间窗口的描述,此处不再赘述。在本申请实施例中,第一终端设备参数所涉及的时间段可以称为第三时间窗口,为描述方便,本申请实施例统一称为第一终端设备参数所涉及的时间段。
在本申请实施例中,服务器从终端设备中获取通信数据,然后根据通信数据确定第一终端设备参数,具体可参照前述步骤801的描述,此处不再赘述。
在一些实施例中,服务器可以确定基础时间窗口对应的标签(卡顿标签或流畅标签),具体可参照前述实施例中步骤802的描述,具体此处不再赘述。
1402、服务器根据第一终端设备参数和标签训练得到卡顿置信度模型,并计算基础时间窗口对应的卡顿置信度;
在本申请实施例中,卡顿置信度模型与前述实施例中步骤802的描述类似,此处不再赘述。
服务器训练完卡顿置信度模型后,可以根据第一终端设备参数和训练完的卡顿置信度模型得到基础时间窗口对应的卡顿置信度。
1403、服务器根据卡顿置信度和至少一个自适应窗口模型计算应用时间窗口的长度;
在本申请实施例中,服务器可以预先设定若干个自适应窗口模型,每个自适应窗口模型有不同的预设模型参数。
服务器设定好自适应窗口模型的初始模型参数后,可以根据N个卡顿置信度,通过自适应窗口模型计算得到应用时间窗口的长度。具体可参照前述实施例中步骤802中服务器计算应用时间窗口的长度的描述,此处不再赘述。
在一些可能的实施例中,服务器还可以根据自适应窗口模型判断支持度是否符合预设条件。图15为本申请实施例中包括支持度判断条件的自适应窗口模型的流程示意图。在一些实施例中,服务器可以首先通过自适应窗口模型计算第1个基础时间窗口的卡顿置信度是否大于0.9且支持度是否大于0.1,若均为是,则服务器得到应用时间窗口的长度为1秒。若其中一个为否,则继续计算第1个和第2个基础时间窗口的卡顿置信度平均值是否大于0.7以及支持度是否均大于0.1,若均为是,则服务器得到应用时间窗口的长度为2秒,以此类推。若一直不满足条件,最后服务器检测卡顿置信度的数量达到预设最大值4(基础时间窗口的数量达到预设最大值4),则直接输出应用时间窗口的长度为4秒。
在一些可能的实施例中,服务器可以通过业务识别模型识别终端设备当前的业务类型,从而进一步获取与该业务类型匹配的卡顿置信度模型、自适应窗口模型以及卡顿预测模型。业务识别模型可参照前述步骤802的描述,此处不再赘述。
1404、服务器根据应用时间窗口的长度确定组成应用时间窗口,根据应用时间窗口内 的卡顿置信度,通过卡顿预测模型计算得到卡顿分值;
在本申请实施例中,服务器可以通过应用时间窗口的长度确定组成应用时间窗口的基础时间窗口,具体确定方法可以参照前述实施例中步骤802的描述,此处不再赘述。服务器确定的应用时间窗口也可以称为第四时间窗口。
在一些实施例中,服务器根据应用时间窗口的长度确定组成应用时间窗口后,可以将应用时间窗口内的卡顿置信度输入卡顿预测模型,得到卡顿分值。
卡顿预测模型可以是一阶指数平滑模型、二阶指数平滑模型或线性回归模型等。卡顿预测模型可参照前述实施例中对卡顿预测模型的描述,此处不再赘述。
1405、服务器根据卡顿分值确定预测结果;
在本申请实施例中,服务器预先设定阈值,若卡顿分值超过该阈值,则服务器确定该卡顿分值对应的基础时间窗口的预测结果为卡顿。
1406、服务器根据预测结果和标签确定效果参数,若效果参数满足条件,则服务器向终端设备发送卡顿置信度模型、自适应窗口模型和卡顿预测模型;
在本申请实施例中,效果参数可以包括但不限于误报率、准确率和应用时间窗口的长度平均值。在实际应用中,还可以设定其他效果参数,具体此处不做限定。
在一种可能的实施例中,服务器可以根据预测结果和标签确定误报率。误报率为具有预测结果且标签为流畅的基础时间窗口中,预测结果为卡顿的基础时间窗口的比例。具体可参照前述实施例中步骤802中关于误报率的描述,此处不再赘述。
在一些实施例中,服务器可以根据预测结果和标签确定准确率。准确率为具有预测结果的基础时间窗口中预测结果与标签相同的基础时间窗口的比例。具体可参照前述实施例中步骤802中关于准确率的描述,此处不再赘述。
服务器还可以根据预测结果中的应用时间窗口的长度平均值进行统计。具体可参照前述实施例中步骤802中关于应用时间窗口的长度平均值的描述,此处不再赘述。
服务器也可以选择上述误报率、准确率和应用时间窗口长度平均值的一种或多种条件进行判断。例如服务器选择误报率低于1%、准确率高于90%且应用时间窗口长度平均值小于3.5所对应的卡顿置信度模型、自适应窗口模型以及卡顿预测模型下发至终端设备。具体可参照前述实施例中步骤802中服务器选择模型的描述,此处不再赘述。
在一种可能的实施例中,服务器还可以对各组的预测结果进行排序,然后根据排序结果选择预测结果最优的模型组合下发至终端设备。具体可参照前述实施例中步骤802中排序的描述,此处不再赘述。可以理解的是,服务器向终端设备下发的卡顿置信度模型、自适应窗口模型和卡顿预测模型已经训练完毕,具有合适的模型参数,终端设备可以根据服务器下发的模型执行相应的步骤。
在一些实施例中,服务器向终端设备下发的卡顿置信度模型可以用于终端设备根据基础时间窗口对应的第二终端设备参数确定基础时间窗口的卡顿置信度;
在一些实施例中,服务器向终端设备下发的自适应窗口模型可以用于终端设备计算应用时间窗口的长度。终端设备可以通过自适应窗口模型,根据基础时间窗口的卡顿置信度是否符合自适应窗口模型中的预设条件,确定应用时间窗口的长度;
在一些实施例中,服务器向终端设备下发的卡顿预测模型用于终端设备根据应用时间窗口进行卡顿预测。终端设备可以通过卡顿预测模型,根据应用时间窗口中基础时间窗口的卡顿置信度进行线性拟合,预测出终端设备的状态。
图16为本申请实施例提供的卡顿预测方法的流程示意图,应用于服务器以及终端设备,该方法包括:
1601、服务器获取终端设备在基础时间窗口的第一终端设备参数以及标签;
本申请实施例中,步骤1601与前述图14对应的各个实施例中步骤1401类似,此处不再赘述。
1602、服务器根据第一终端设备参数和标签训练得到卡顿置信度模型,并计算得到基础时间窗口对应的卡顿置信度;
本申请实施例中,步骤1602与前述图14对应的各个实施例中步骤1402类似,此处不再赘述。
1603、服务器根据卡顿置信度和至少一个自适应窗口模型计算应用时间窗口的长度;
本申请实施例中,步骤1603与前述图14对应的各个实施例中步骤1403类似,此处不再赘述。
1604、服务器根据应用时间窗口的长度确定组成应用时间窗口,根据应用时间窗口内的卡顿置信度,通过卡顿预测模型计算得到卡顿分值;
本申请实施例中,步骤1604与前述图14对应的各个实施例中步骤1404类似,此处不再赘述。
1605、服务器根据卡顿分值确定预测结果;
本申请实施例中,步骤1605与前述图14对应的各个实施例中步骤1405类似,此处不再赘述。
1606、服务器根据预测结果和标签确定效果参数,若效果参数满足条件,则服务器向终端设备发送卡顿置信度模型、自适应窗口模型和卡顿预测模型;
本申请实施例中,步骤1606与前述图14对应的各个实施例中步骤1406类似,此处不再赘述。
1607、终端设备获取第二终端设备参数;
本申请实施例中,步骤1607与前述图13对应的各个实施例中步骤1301类似,此处不再赘述。
在本申请实施例中,终端设备获取的第二终端设备参数用于卡顿预测。
1608、终端设备根据第二终端设备参数,通过卡顿置信度模型得到基础时间窗口对应的卡顿置信度;
本申请实施例中,步骤1608与前述图13对应的各个实施例中步骤1302类似,此处不再赘述。
1609、终端设备根据卡顿置信度,通过自适应窗口模型得到应用时间窗口的长度;
本申请实施例中,步骤1609与前述图13对应的各个实施例中步骤1303类似,此处不再赘述。
1610、终端设备根据应用时间窗口对应的卡顿置信度,通过卡顿预测模型得到卡顿分值;
本申请实施例中,步骤1610与前述图13对应的各个实施例中步骤1304类似,此处不再赘述。
1611、终端设备判断卡顿分值是否大于预设阈值,若是,则进行通信优化。
本申请实施例中,步骤1611与前述图13对应的各个实施例中步骤1305类似,此处不再赘述。
服务器与终端设备的通信连接是相互的,无论是服务器设备状态出现卡顿或终端设备状态出现卡顿都会导致通信卡顿。因此在一些实施例中,可以由终端设备进行卡顿预测。在另一些实施例中,也可以由服务器进行卡顿预测。服务器进行卡顿预测的情况可参照前述实施例中终端设备进行卡顿预测的描述,此处不再赘述。
在一种可能的实施例中,终端设备还可以对过去的通信状态进行推测。例如,终端设备缺失了终端设备在8点00分02秒至03秒的设备通信状态,则可以根据8点00分03秒至06秒的第二终端设备参数对8点00分02秒至03秒的设备通信状态进行推测。其中一种实现方式可以是通过卡顿预测模型的线性拟合得到的拟合线推测出8点00分02秒至03秒的卡顿分值,然后根据卡顿分值确定该设备通信状态是否为卡顿,具体情况可以与本申请前述实施例类似,此处不再赘述。
在一种可能的实施例中,服务器可以通过终端设备的响应时间、中央处理器利用率、内存利用率等状态数据训练前述的模型,并下发至终端设备。然后终端设备可以实时获取自身的状态数据,通过服务器下发的模型进行卡顿预测。可参照本申请前述实施例进行实现,具体此处不做限定。
在一些实施例中,终端设备1700可以是手机(如图1中所示)、平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、个人数字助理(Personal Digital Assistant,PDA)、可穿戴终端设备、智能手表等设备,本申请对上述服务器和终端设备的具体形式不做特殊限制。在本申请实施例中,终端设备1700的结构可以如图17所示,为本申请实施例提供的一种图1所示的架构系统中的终端设备1700的结构示意图。
如图17所示,终端设备1700可以包括处理器1710,外部存储器接口1720,内部存储器1721,通用串行总线(universal serial bus,USB)接口1730,充电管理模块1740,电源管理模块1741,电池1742,天线17,天线2,移动通信模块1750,无线通信模块1760,音频模块1770,扬声器1770A,受话器1770B,麦克风1770C,耳机接口1770D,传感器模块1780,按键1790,马达1791,指示器1792,摄像头1793,显示屏1794,以及用户标识模块(subscriber identification module,SIM)卡接口1795等。其中传感器模块1780可以包括压力传感器1780A,陀螺仪传感器1780B,气压传感器1780C,磁传感器1780D,加速度传感器1780E,距离传感器1780F,接近光传感器1780G,指纹传感器1780H,温度传感器1780J,触摸传感器1780K,环境光传感器1780L,骨传导传感器1780M等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备1700的具体限定。在另 一些实施例中,终端设备1700可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器1710可以包括一个或多个处理单元,例如:处理器1710可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。例如,在本申请中,处理器1710可以获取服务器下发的模型并根据模型进行卡顿预测。
其中,控制器可以是终端设备1700的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器1710中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器1710中的存储器为高速缓冲存储器。该存储器可以保存处理器1710刚用过或循环使用的指令或数据。如果处理器1710需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器1710的等待时间,因而提高了系统的效率。
在一些实施例中,处理器1710可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器1710可以包含多组I2C总线。处理器1710可以通过不同的I2C总线接口分别耦合触摸传感器1780K,充电器,闪光灯,摄像头1793等。例如:处理器1710可以通过I2C接口耦合触摸传感器1780K,使处理器1710与触摸传感器1780K通过I2C总线接口通信,实现终端设备1700的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器1710可以包含多组I2S总线。处理器1710可以通过I2S总线与音频模块1770耦合,实现处理器1710与音频模块1770之间的通信。在一些实施例中,音频模块1770可以通过I2S接口向无线通信模块1760传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块1770与无线通信模块1760可以通过PCM总线接口耦合。在一些实施例中,音频模块1770也可以通过PCM接口向无线通信模块1760传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器1710与无线通信模块1760。例如:处理器1710通过UART接口与无线通信模块1760中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块1770可以通过UART接口向无线通信模块1760传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器1710与显示屏1794,摄像头1793等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器1710和摄像头1793通过CSI接口通信,实现终端设备1700的拍摄功能。处理器1710和显示屏1794通过DSI接口通信,实现终端设备1700的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器1710与摄像头1793,显示屏1794,无线通信模块1760,音频模块1770,传感器模块1780等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口1730是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口1730可以用于连接充电器为终端设备1700充电,也可以用于终端设备1700与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备1700的结构限定。在本申请另一些实施例中,终端设备1700也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块1740用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块1740可以通过USB接口1730接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块1740可以通过终端设备1700的无线充电线圈接收无线充电输入。充电管理模块1740为电池1742充电的同时,还可以通过电源管理模块1741为终端设备供电。
电源管理模块1741用于连接电池1742,充电管理模块1740与处理器1710。电源管理模块1741接收电池1742和/或充电管理模块1740的输入,为处理器1710,内部存储器1721,显示屏1794,摄像头1793,和无线通信模块1760等供电。电源管理模块1741还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块1741也可以设置于处理器1710中。在另一些实施例中,电源管理模块1741和充电管理模块1740也可以设置于同一个器件中。
终端设备1700的无线通信功能可以通过天线17,天线2,移动通信模块1750,无线通信模块1760,调制解调处理器以及基带处理器等实现。
天线17和天线2用于发射和接收电磁波信号。终端设备1700中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线17复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块1750可以提供应用在终端设备1700上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块1750可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块1750可以由天线17接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块1750还可以对经调制解调处理器调制后的信号放大,经天线17转为电磁波辐射出去。在一些实施例中,移动通信模块1750的至少部分功能模块可以被设置于处理器1710中。在一些实施例中,移动通信模块1750的至少部分功能模块可以与处理器1710的至少部分模块被设置在同一个器件中。在一些实施例中,移动通信模块1750可以切换当前与该终端设备1700通信连接的基站,例如由2G/3G/4G/5G基站切换至另一个2G/3G/4G/5G基站,实现前述实施例中切换基站的功能。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器1770A,受话器1770B等)输出声音信号,或通过显示屏1794显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器1710,与移动通信模块1750或其他功能模块设置在同一个器件中。
无线通信模块1760可以提供应用在终端设备1700上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块1760可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块1760经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器1710。无线通信模块1760还可以从处理器1710接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备1700的天线17和移动通信模块1750耦合,天线2和无线通信模块1760耦合,使得终端设备1700可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备1700通过GPU,显示屏1794,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏1794和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器1710可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏1794用于显示图像,视频等。显示屏1794包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,终端设备1700可以包括1个或N个显示屏1794,N为大于1的正整数。
终端设备1700的显示屏1794上可以显示一系列图形用户界面(graphical user interface,GUI),这些GUI都是该终端设备1700的主屏幕。一般来说,终端设备1700的显示屏1794的尺寸是固定的,只能在该终端设备1700的显示屏1794中显示有限的控件。控件是一种GUI元素,它是一种软件组件,包含在应用程序中,控制着该应用程序处理的所有数据以及关于这些数据的交互操作,用户可以通过直接操作(direct manipulation)来与控件交互,从而对应用程序的有关信息进行读取或者编辑。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。例如,在本申请实施例中,显示屏1794可以显示虚拟按键(确定、取消)。
终端设备1700可以通过ISP,摄像头1793,视频编解码器,GPU,显示屏1794以及应用处理器等实现拍摄功能。
ISP用于处理摄像头1793反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头1793中。
摄像头1793用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端设备1700可以包括1个或N个摄像头1793,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备1700在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端设备1700可以支持一种或多种视频编解码器。这样,终端设备1700可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)17,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备1700的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口1720可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备1700的存储能力。外部存储卡通过外部存储器接口1720与处理器1710通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器1721可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器1710通过运行存储在内部存储器1721的指令,从而执行终端设备1700的各种功能应用以及数据处理。例如,在本申请实施例中,处理器1710可以通过执行存储在内部存储器1721中的指令,进行卡顿预测。内部存储器1721可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备1700使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器1721可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器1710通过运行存储在内部存储器1721的指令,和/或存储在设置于处理器中的存储器的指令,执行终端设备1700的各种功能应用以及数据处理。
终端设备1700可以通过音频模块1770,扬声器1770A,受话器1770B,麦克风1770C,耳机接口1770D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块1770用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块1770还可以用于对音频信号编码和解码。在一些实施例中,音频模块1770可以设置于处理器1710中,或将音频模块1770的部分功能模块设置于处理器1710中。
扬声器1770A,也称“喇叭”,用于将音频电信号转换为声音信号。终端设备1700可以通过扬声器1770A收听音乐,或收听免提通话。
受话器1770B,也称“听筒”,用于将音频电信号转换成声音信号。当终端设备1700接听电话或语音信息时,可以通过将受话器1770B靠近人耳接听语音。
麦克风1770C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风1770C发声,将声音信号输入到麦克风1770C。终端设备1700可以设置至少一个麦克风1770C。在另一些实施例中,终端设备1700可以设置两个麦克风1770C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端设备1700还可以设置三个,四个或更多麦克风1770C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口1770D用于连接有线耳机。耳机接口1770D可以是USB接口1730,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器1780A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器1780A可以设置于显示屏1794。压力传感器1780A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器1780A,电极之间的电容改变。终端设备1700根据电容的变化确定压力的强度。当有触摸操作作用于显示屏1794,终端设备1700根据压力传感器1780A检测所述触摸操作强度。终端设备1700也可以根据压力传感器1780A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器1780B可以用于确定终端设备1700的运动姿态。在一些实施例中,可以通过陀螺仪传感器1780B确定终端设备1700围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器1780B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器1780B检测终端设备1700抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消终端设备1700的抖动,实现防抖。陀螺仪传感器1780B还可以用于导航,体感游戏场景。
气压传感器1780C用于测量气压。在一些实施例中,终端设备1700通过气压传感器1780C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器1780D包括霍尔传感器。终端设备1700可以利用磁传感器1780D检测翻盖皮套的开合。在一些实施例中,当终端设备1700是翻盖机时,终端设备1700可以根据磁传感器1780D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器1780E可检测终端设备1700在各个方向上(一般为三轴)加速度的大小。当终端设备1700静止时可检测出重力的大小及方向。还可以用于识别终端设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器1780F,用于测量距离。终端设备1700可以通过红外或激光测量距离。在一些实施例中,拍摄场景,终端设备1700可以利用距离传感器1780F测距以实现快速对焦。
接近光传感器1780G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。终端设备1700通过发光二极管向外发射红外光。终端设备1700使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定终端设备1700附近有物体。当检测到不充分的反射光时,终端设备1700可以确定终端设备1700附近没有物体。终端设备1700可以利用接近光传感器1780G检测用户手持终端设备1700贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器1780G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器1780L用于感知环境光亮度。终端设备1700可以根据感知的环境光亮度自适应调节显示屏1794亮度。环境光传感器1780L也可用于拍照时自动调节白平衡。环境 光传感器1780L还可以与接近光传感器1780G配合,检测终端设备1700是否在口袋里,以防误触。
指纹传感器1780H用于采集指纹。终端设备1700可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器1780J用于检测温度。在一些实施例中,终端设备1700利用温度传感器1780J检测的温度,执行温度处理策略。例如,当温度传感器1780J上报的温度超过阈值,终端设备1700执行降低位于温度传感器1780J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,终端设备1700对电池1742加热,以避免低温导致终端设备1700异常关机。在其他一些实施例中,当温度低于又一阈值时,终端设备1700对电池1742的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器1780K,也称“触控器件”。触摸传感器1780K可以设置于显示屏1794,由触摸传感器1780K与显示屏1794组成触摸屏,也称“触控屏”。触摸传感器1780K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏1794提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器1780K也可以设置于终端设备1700的表面,与显示屏1794所处的位置不同。
骨传导传感器1780M可以获取振动信号。在一些实施例中,骨传导传感器1780M可以获取人体声部振动骨块的振动信号。骨传导传感器1780M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器1780M也可以设置于耳机中,结合成骨传导耳机。音频模块1770可以基于所述骨传导传感器1780M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器1780M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键1790包括开机键,音量键等。按键1790可以是机械按键。也可以是触摸式按键。终端设备1700可以接收按键输入,产生与终端设备1700的用户设置以及功能控制有关的键信号输入。
马达1791可以产生振动提示。马达1791可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏1794不同区域的触摸操作,马达1791也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器1792可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口1795用于连接SIM卡。SIM卡可以通过插入SIM卡接口1795,或从SIM卡接口1795拔出,实现和终端设备1700的接触和分离。终端设备1700可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口1795可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口1795可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口1795也可以兼容不同类型的SIM卡。SIM卡接口1795也可以兼容外 部存储卡。终端设备1700通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,终端设备1700采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在终端设备1700中,不能和终端设备1700分离。在一些实施例中,终端设备1700可以屏蔽SIM卡接口1795中的SIM卡,也可以接通SIM卡接口1795中的SIM卡,从而实现前述实施例中SIM卡切换的功能。
另外,在上述部件之上,运行有操作系统。例如苹果公司所开发的iOS操作系统,谷歌公司所开发的Android开源操作系统,微软公司所开发的Windows操作系统等。在该操作系统上可以安装运行应用程序。
终端设备1700的操作系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明终端设备1700的软件结构。
图18是本申请实施例的终端设备1700的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图18所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。例如,在本申请实施例中,应用程序包还可以包括卡顿预测应用,卡顿预测应用可以在后台执行,用于卡顿预测,在一些实施例中,可以弹出界面让用户进行选择,例如弹出如图6a、图6b、图7等界面。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图18所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。例如,在本申请实施例中,在卡顿预测时,应用程序框架层可以为应用程序层提供卡顿预测的结果。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供终端设备1700的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息, 可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
需要说明的是,本申请实施例虽然以Android系统为例进行说明,但是其基本原理同样适用于基于iOS或Windows等操作系统的终端设备。
终端设备1700软件以及硬件的工作流程可以参照本申请前述的实施例,此处不再赘述。
本申请实施例可以根据上述方法示例对终端设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图19示出了上述和实施例中涉及的卡顿预测的装置的一种可能的组成示意图,该卡顿预测的装置能执行本申请各方法实施例中任一方法实施例中终端设备所执行的步骤。如图19所示,该卡顿预测的装置1900可以包括:处理单元1901、显示单元1902和获取单元1903。
其中,处理单元1901,用于支持卡顿预测的装置执行本申请实施例中描述的方法。例如,处理单元1901,用于执行或用于支持卡顿预测的装置执行图5b所示的卡顿预测方法中的步骤506,图8所示的卡顿预测方法中步骤803中计算卡顿置信度的过程、步骤804、步骤805和步骤806,图13所示的卡顿预测方法中的步骤1302、步骤1303、步骤1304和 步骤1305,图16所示的卡顿预测方法中的步骤1608至步骤1611。
显示单元1902,用于执行或用于支持卡顿预测的装置执行上述实施例中卡顿预测方法中显示界面的步骤。
获取单元1903,用于执行或用于支持卡顿预测的装置执行图5b所示的卡顿预测方法中的步骤505,图8所示的卡顿预测方法中步骤803中获取第二终端设备参数的过程,图13所示的卡顿预测方法中的步骤1301,图16所示的卡顿预测方法中的步骤1607。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
图20示出了数据处理的装置的一种可能的组成示意图,该卡顿预测的装置能执行本申请各方法实施例中任一方法实施例中服务器所执行的步骤。该数据处理的装置2000包括:获取单元2001和处理单元2002。
其中,获取单元2001,用于执行或支持数据处理的装置执行图5b所示的步骤501,图8所示的步骤801,图14所示的步骤1401,图16所示的步骤1601。
处理单元2002,用于执行或支持数据处理的装置执行图5b所示的步骤502、步骤503、步骤504,图8所示的步骤802,图14所示的步骤1402至步骤1406,图16所示的步骤1602至步骤1606。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中包括指令,当上述指令在终端设备上运行时,使得该终端设备执行图5b、图8、图13和图16中的相关方法步骤,以实现上述实施例中的方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中包括指令,当上述指令在服务器上运行时,使得该服务器执行图5b、图8、图14和图16中的相关方法步骤,以实现上述实施例中的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在终端设备上运行时,使得该终端设备执行如图5b、图8、图13和图16中的相关方法步骤,以实现上述实施例中的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在服务器上运行时,使得该服务器执行如图5b、图8、图14和图16中的相关方法步骤,以实现上述实施例中的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间 接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (21)

  1. 一种卡顿预测的方法,其特征在于,应用于终端设备,包括:
    获取服务器下发的模型,所述模型包括自适应窗口模型,所述自适应窗口模型包括第一预设条件;
    获取第一参数,所述第一参数为终端设备在第一时间窗口内获取的第二终端设备参数;
    若所述第一参数满足所述第一预设条件,则根据所述第一参数进行卡顿预测;
    若所述第一参数不满足所述第一预设条件,则获取第二参数,所述第二参数为所述终端设备在第二时间窗口内获取的第二终端设备参数,所述第二时间窗口由所述第一时间窗口延长得到;
    根据所述第二参数进行卡顿预测。
  2. 根据权利要求1所述的方法,其特征在于,所述自适应窗口模型还包括第二预设条件;
    所述获取第二参数之后,所述方法还包括:
    若所述第二参数满足所述第二预设条件,则触发所述根据所述第二参数进行卡顿预测的步骤。
  3. 根据权利要求1所述的方法,其特征在于,所述第二终端设备参数包括信号强度、时延、错包率、丢包率、重传率、上行速率、下行速率和信道利用率中的一种或多种。
  4. 根据权利要求1所述的方法,其特征在于,所述服务器下发的模型还包括卡顿置信度模型,所述卡顿置信度模型为决策树模型、随机森林模型和逻辑回归模型中的一种,所述第一时间窗口包括M个基础时间窗口,所述M为正整数;
    所述获取第一参数之后,所述方法还包括:
    根据所述第一参数,通过所述卡顿置信度模型确定M个卡顿置信度,所述M个卡顿置信度用于判断所述终端设备在与所述M个基础时间窗口内是否卡顿;
    判断所述M个卡顿置信度的平均值是否大于第一预设阈值;
    若是,则确定所述第一参数满足所述第一预设条件;
    若否,则确定所述第一参数不满足所述第一预设条件。
  5. 根据权利要求4所述的方法,其特征在于,所述卡顿置信度模型具体为所述决策树模型;
    所述根据所述第一参数,通过所述卡顿置信度模型确定M个卡顿置信度包括:
    根据所述第一参数逐一确定每个所述基础时间窗口在所述决策树模型中所属的叶节点;
    根据所述叶节点对应的卡顿置信度设定值,确定每个所述基础时间窗口对应的所述卡顿置信度,得到M个所述卡顿置信度。
  6. 根据权利要求4所述的方法,其特征在于,所述服务器下发的模型还包括卡顿预测模型,所述根据所述第一参数进行卡顿预测包括:
    根据所述M个卡顿置信度,通过所述卡顿预测模型确定卡顿分值,所述卡顿预测模型为一阶指数平滑模型、二阶指数平滑模型和线性回归模型中的一种;
    若所述卡顿分值大于第二预设阈值,则预测所述终端设备在所述目标时间窗口内卡顿,所述目标时间窗口为所述第一时间窗口后的时间窗口。
  7. 根据权利要求6所述的方法,其特征在于,所述卡顿预测模型具体为所述一阶指数平滑模型;
    所述根据所述M个卡顿置信度,通过所述卡顿预测模型确定卡顿分值包括:
    根据所述M个卡顿置信度,通过所述一阶指数平滑模型中的计算公式得到卡顿分值;
    所述计算公式为:
    Figure PCTCN2020115210-appb-100001
    其中
    Figure PCTCN2020115210-appb-100002
    为终端设备在所述目标时间窗口的卡顿分值,
    Figure PCTCN2020115210-appb-100003
    为终端设备在第t-1个所述基础时间窗口的卡顿分值,y t为终端设备在第t个所述基础时间窗口的卡顿置信度,α为平滑超参数,t为大于0的整数。
  8. 根据权利要求4所述的方法,其特征在于,所述获取第一参数之后,所述方法还包括:
    若所述M小于所述第三预设阈值,则判断所述第一参数是否满足所述第一预设条件。
  9. 一种数据处理的方法,其特征在于,应用于服务器,包括:
    获取第三参数,所述第三参数为终端设备在第三时间窗口内获取的第一终端设备参数,所述第三时间窗口包括N个基础时间窗口,所述N为正整数;
    根据预设的卡顿时间确定所述N个基础时间窗口的标签,所述标签用于表示所述终端设备在所述基础时间窗口卡顿或流畅;
    根据所述第三参数,通过自适应窗口模型确定第四时间窗口,所述第四时间窗口包括所述N个基础时间窗口中的至少一个所述基础时间窗口;
    根据所述第四时间窗口对应的第三参数进行卡顿预测,得到卡顿预测结果;
    根据所述卡顿预测结果和所述标签确定模型效果参数;
    若所述模型效果参数满足第三预设条件,则向终端设备发送所述自适应窗口模型。
  10. 根据权利要求9所述的方法,其特征在于,所述根据所述第三参数,通过自适应窗口模型确定第四时间窗口包括:
    根据所述第三参数以及所述标签训练得到卡顿置信度模型,所述卡顿置信度模型为决策树模型、随机森林模型和逻辑回归模型中的一种;
    根据所述第三参数,通过所述卡顿置信度模型确定N个卡顿置信度;
    根据所述N个卡顿置信度,通过自适应窗口模型确定第四时间窗口;
    所述向终端设备发送所述自适应窗口模型具体为:向所述终端设备发送所述自适应窗口模型以及所述卡顿置信度模型。
  11. 根据权利要求10所述的方法,其特征在于,所述根据所述第四时间窗口对应的第三参数进行卡顿预测,得到卡顿预测结果包括:根据所述卡顿置信度,通过卡顿预测模型进行卡顿预测,得到卡顿预测结果,所述卡顿预测模型为一阶指数平滑模型、二阶指数平滑模型和线性回归模型中的一种;
    所述向所述终端设备发送所述自适应窗口模型以及所述卡顿置信度模型具体为:向所 述终端设备发送所述自适应窗口模型、所述卡顿置信度模型以及所述卡顿预测模型。
  12. 根据权利要求9至10任意一项所述的方法,其特征在于,所述根据所述卡顿预测结果和所述标签确定模型效果参数之后,所述方法还包括:
    根据所述卡顿预测结果和所述标签确定误报率,所述误报率为误报基础时间窗口占流畅基础时间窗口的比例,所述误报基础时间窗口为所述卡顿预测结果为卡顿且所述标签为流畅的所述基础时间窗口,所述流畅基础时间窗口为具有所述卡顿预测结果且所述标签为流畅的所述基础时间窗口;
    若所述误报率小于第四预设阈值,则确定所述模型效果参数满足所述第三预设条件。
  13. 根据权利要求9至10任意一项所述的方法,其特征在于,所述根据所述卡顿预测结果和所述标签确定模型效果参数之后,所述方法还包括:
    所述卡顿预测结果和所述标签确定准确率,所述准确率为准确基础时间窗口的数量与所述第四时间窗口总数的比值,所述准确基础时间窗口为所述卡顿预测结果与所述标签相同的所述基础时间窗口;
    若所述准确率大于第五预设阈值,则确定所述模型效果参数满足所述第三预设条件。
  14. 根据权利要求9至10任意一项所述的方法,其特征在于,所述根据所述卡顿预测结果和所述标签确定模型效果参数之后,所述方法还包括:
    根据所述卡顿预测结果确定所述第四时间窗口的平均长度;
    若所述第四时间窗口的平均长度小于第六预设阈值,则确定所述模型效果参数满足所述第三预设条件。
  15. 一种终端设备,其特征在于,包括:
    一个或一个以上中央处理器,存储器,输入输出接口,有线或无线网络接口,电源;
    所述存储器为短暂存储存储器或持久存储存储器;
    所述中央处理器配置为与所述存储器通信,在所述终端设备上执行所述存储器中的指令操作以执行权利要求1至8中任意一项所述的方法。
  16. 一种服务器,其特征在于,包括:
    一个或一个以上中央处理器,存储器,输入输出接口,有线或无线网络接口,电源;
    所述存储器为短暂存储存储器或持久存储存储器;
    所述中央处理器配置为与所述存储器通信,在所述服务器上执行所述存储器中的指令操作以执行权利要求9至14中任意一项所述的方法。
  17. 一种卡顿预测的装置,包括处理器和存储器,其特征在于,所述处理器与存储器耦合,用于读取并执行所述存储器中存储的指令,实现如权利要求1-8中任一项的步骤。
  18. 如权利要求17所述的装置,其特征在于,所述卡顿预测的装置为芯片或片上系统。
  19. 一种数据处理的装置,包括处理器和存储器,其特征在于,所述处理器与存储器耦合,用于读取并执行所述存储器中存储的指令,实现如权利要求9-14中任一项的步骤。
  20. 如权利要求19所述的装置,其特征在于,所述数据处理的装置为芯片或片上系统。
  21. 一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至14中任意一项所述的方法。
PCT/CN2020/115210 2019-09-26 2020-09-15 一种卡顿预测的方法、数据处理的方法以及相关装置 WO2021057537A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910921938.XA CN112566152B (zh) 2019-09-26 2019-09-26 一种卡顿预测的方法、数据处理的方法以及相关装置
CN201910921938.X 2019-09-26

Publications (1)

Publication Number Publication Date
WO2021057537A1 true WO2021057537A1 (zh) 2021-04-01

Family

ID=75030302

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/115210 WO2021057537A1 (zh) 2019-09-26 2020-09-15 一种卡顿预测的方法、数据处理的方法以及相关装置

Country Status (2)

Country Link
CN (1) CN112566152B (zh)
WO (1) WO2021057537A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115856423A (zh) * 2023-03-01 2023-03-28 青岛高科通信股份有限公司 一种电子电能表改造装置及抄表系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113923488B (zh) * 2021-09-15 2024-04-16 青岛海信网络科技股份有限公司 一种公交车、视频流量控制方法及存储介质
CN113810901A (zh) * 2021-09-24 2021-12-17 维沃移动通信有限公司 网络恢复方法和装置
CN115016035B (zh) * 2022-05-31 2023-12-22 中国科学院光电技术研究所 一种基于波前探测的实时大气湍流分层强度测量方法
WO2024065352A1 (en) * 2022-09-29 2024-04-04 Nokia Shanghai Bell Co., Ltd. Devices, methods, apparatuses, and computer readable media for non-terrestrial networks

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012131424A1 (en) * 2011-02-25 2012-10-04 Telefonaktiebolaget L M Ericsson (Publ) Method for introducing network congestion predictions in policy decision
CN108427582A (zh) * 2018-03-09 2018-08-21 北京小米移动软件有限公司 卡顿状态确定方法、装置及计算机可读存储介质
US20180270711A1 (en) * 2017-03-14 2018-09-20 Samsung Electronics Co., Ltd. Method and device for detecting congestion in data transmission path
CN108984369A (zh) * 2018-07-13 2018-12-11 厦门美图移动科技有限公司 卡顿预测方法、装置及移动终端
CN109640340A (zh) * 2018-12-25 2019-04-16 中国联合网络通信集团有限公司 基站数据处理方法、装置、设备及计算机可读存储介质
CN109921941A (zh) * 2019-03-18 2019-06-21 腾讯科技(深圳)有限公司 网络业务质量评估和优化方法、装置、介质及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110225417B (zh) * 2019-05-09 2022-06-10 网宿科技股份有限公司 数据处理方法及服务器、检测卡顿的方法及服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012131424A1 (en) * 2011-02-25 2012-10-04 Telefonaktiebolaget L M Ericsson (Publ) Method for introducing network congestion predictions in policy decision
US20180270711A1 (en) * 2017-03-14 2018-09-20 Samsung Electronics Co., Ltd. Method and device for detecting congestion in data transmission path
CN108427582A (zh) * 2018-03-09 2018-08-21 北京小米移动软件有限公司 卡顿状态确定方法、装置及计算机可读存储介质
CN108984369A (zh) * 2018-07-13 2018-12-11 厦门美图移动科技有限公司 卡顿预测方法、装置及移动终端
CN109640340A (zh) * 2018-12-25 2019-04-16 中国联合网络通信集团有限公司 基站数据处理方法、装置、设备及计算机可读存储介质
CN109921941A (zh) * 2019-03-18 2019-06-21 腾讯科技(深圳)有限公司 网络业务质量评估和优化方法、装置、介质及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115856423A (zh) * 2023-03-01 2023-03-28 青岛高科通信股份有限公司 一种电子电能表改造装置及抄表系统
CN115856423B (zh) * 2023-03-01 2023-07-07 青岛高科通信股份有限公司 一种电子电能表改造装置及抄表系统

Also Published As

Publication number Publication date
CN112566152A (zh) 2021-03-26
CN112566152B (zh) 2022-04-29

Similar Documents

Publication Publication Date Title
WO2021057537A1 (zh) 一种卡顿预测的方法、数据处理的方法以及相关装置
EP3872807B1 (en) Voice control method and electronic device
WO2021063343A1 (zh) 语音交互方法及装置
WO2021052263A1 (zh) 语音助手显示方法及装置
US11871328B2 (en) Method for identifying specific position on specific route and electronic device
WO2020151387A1 (zh) 一种基于用户运动状态的推荐方法及电子设备
WO2020211701A1 (zh) 模型训练方法、情绪识别方法及相关装置和设备
US11922935B2 (en) Voice interaction method and apparatus, terminal, and storage medium
WO2021000807A1 (zh) 一种应用程序中等待场景的处理方法和装置
EP4064284A1 (en) Voice detection method, prediction model training method, apparatus, device, and medium
WO2021115007A1 (zh) 一种网络切换方法及电子设备
WO2021258814A1 (zh) 视频合成方法、装置、电子设备及存储介质
WO2021052139A1 (zh) 手势输入方法及电子设备
CN111316199A (zh) 一种信息处理方法及电子设备
WO2020042112A1 (zh) 一种终端对ai任务支持能力的评测方法及终端
WO2021249281A1 (zh) 一种用于电子设备的交互方法和电子设备
CN111222836A (zh) 一种到站提醒方法及相关装置
CN114242037A (zh) 一种虚拟人物生成方法及其装置
CN115333941B (zh) 获取应用运行情况的方法及相关设备
CN114466449A (zh) 一种位置特征获取方法及电子设备
WO2022135157A1 (zh) 页面显示的方法、装置、电子设备以及可读存储介质
WO2021223681A1 (zh) 一种智能提醒方法及设备
WO2023130931A1 (zh) 服务异常提醒方法、电子设备及存储介质
WO2022100141A1 (zh) 插件管理方法、系统及装置
WO2022033355A1 (zh) 一种邮件处理方法及电子设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20869837

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20869837

Country of ref document: EP

Kind code of ref document: A1