Call type identification method and device, nonvolatile storage medium and electronic equipment
By combining the DBSCAN and GMM models, the various features of call data are comprehensively utilized, and the low accuracy problem caused by single feature recognition in the prior art is solved, and more efficient call type recognition is achieved.
Patent Information
- Application Number
- CN202510586195.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-07
- Publication Date
- 2025-08-05
AI Technical Summary
In the prior art, call type recognition for call records usually relies on a single feature, resulting in low recognition accuracy and inability to accurately characterize the internal laws of complex call behavior.
By obtaining the timing characteristics, call statistical characteristics and network characteristics of call data, the DBSCAN density clustering algorithm is used to identify high-density core behavior patterns, and low-density abnormal behaviors are analyzed through the GMM model, and a variety of features are used for call type recognition.
It improves the accuracy of call type recognition, reduces the misjudgment rate, and can more accurately identify various call records types.
Smart Images

Figure CN120434331A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and more specifically, to a call type identification method, device, non-volatile storage medium, and electronic device. Background Art
[0002] In the related art, when identifying the call type of call records, usually only a single feature can be identified, resulting in low recognition accuracy.
[0003] To address the above-mentioned problems, no effective solutions have been proposed so far. Summary of the Invention
[0004] The embodiments of the present application provide a call type identification method, device, non-volatile storage medium and electronic device to at least solve the technical problem of low recognition accuracy caused by the related art of identifying the call type of call records based on a single feature.
[0005] According to one aspect of an embodiment of the present application, a call type identification method is provided, including: obtaining original call data, and determining communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include time series characteristics, call statistical characteristics and network characteristics; clustering calling numbers based on the communication characteristics of the call records, and determining classified call records and unclassified call records in the call records, as well as the call types of the classified call records based on the clustering results, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; determining a target Gaussian mixture model for the unclassified call records, and determining a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are the probabilities that the unclassified call records belong to the call type; and determining the call type of the unclassified call records based on the posterior probability matrix.
[0006] Optionally, clustering the calling number based on the communication characteristics of the call records includes: determining a correction parameter based on the number of call records in the original call data, wherein the correction parameter is used to correct the clustering radius in the clustering process; determining the total number of feature dimensions of the communication characteristics, wherein the total number of feature dimensions is the sum of the number of sub-feature dimensions contained in each type of feature dimension; determining the clustering radius in the clustering process based on the correction parameter and the total number of feature dimensions, and clustering the calling number based on the clustering radius and the communication characteristics of the calling number.
[0007] Optionally, determining the classified call records and unclassified call records in the call records, as well as the call type of the classified call records based on the clustering results includes: determining the main communication characteristics of each cluster based on the distribution of communication characteristics of the call records within each cluster in the clustering results; determining the call type corresponding to each cluster based on the main communication characteristics; determining the call records clustered into the cluster as classified call records, and determining the call type of the classified call records according to the cluster where the classified call records are located.
[0008] Optionally, determining the target Gaussian mixture model of the unclassified call records includes: determining an initial Gaussian mixture model of the unclassified call records; determining an initial posterior probability matrix of the unclassified call records based on the initial Gaussian mixture model, and iteratively updating the model parameters of the initial Gaussian mixture model based on the initial posterior probability matrix to obtain a target Gaussian mixture model, wherein after each update of the model parameters of the Gaussian mixture model, the posterior probability matrix of the unclassified call records is determined based on the updated Gaussian mixture model, and the posterior probability matrix obtained in this iteration is used to update the model parameters of the Gaussian mixture model in the next iteration of this iteration.
[0009] Optionally, determining the call type of the unclassified call record based on the posterior probability matrix includes: determining the posterior probability conditions corresponding to each call type, wherein the posterior probability conditions include the value range of each type of posterior probability corresponding to the call type, and the type of posterior probability corresponds to the call type one-to-one; determining the posterior probability value set of the unclassified call record based on the posterior probability matrix, wherein the posterior probability value set includes the values of each type of posterior probability of the unclassified call record; and determining the call type corresponding to the unclassified call record based on the posterior probability value set and the posterior probability conditions.
[0010] Optionally, the timing features include at least one of the following: call distribution entropy, call time interval and first active period, wherein the call distribution entropy includes the call frequency distribution of the calling number of the call record within a first preset time period, the call time interval includes the time interval between a preset number of call records of the calling number, and the first active period includes the sub-time period of the calling number's first call within a second preset time period.
[0011] Optionally, the statistical features include at least one of the following: Shannon entropy of the called number, call duration information and high-frequency call index, wherein the Shannon entropy of the called number includes the discrete degree of different called numbers called by the calling number corresponding to the call record, the call duration information includes the discrete degree of call duration of the calling number corresponding to the call record, and the high-frequency call index includes the call frequency of the calling number corresponding to the call record in a third preset time period.
[0012] Optionally, the network characteristics include at least one of the following: base station switching information, caller IP geographic information and network type distribution, wherein the base station switching frequency includes the number of base station switches during the call process of the call record; the caller IP geographic information includes the standard deviation of the geographic location discreteness of the IP address of the caller number corresponding to the call record; the network type distribution includes the Shannon entropy of the number of times the network type of the caller number corresponding to the call record is used.
[0013] According to another aspect of an embodiment of the present application, a call type identification device is also provided, including: a first processing module, used to obtain original call data, and determine the communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include time series characteristics, call statistical characteristics and network characteristics; a second processing module, used to cluster caller numbers based on the communication characteristics of the call records, and determine the classified call records and unclassified call records in the call records, as well as the call types of the classified call records based on the clustering results, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; a third processing module, used to determine a target Gaussian mixture model for the unclassified call records, and determine a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are the probabilities that the unclassified call records belong to the call type; a fourth processing module, used to determine the call type of the unclassified call records based on the posterior probability matrix.
[0014] According to another aspect of an embodiment of the present application, a non-volatile storage medium is provided, in which a program is stored. When the program is executed, the device where the non-volatile storage medium is located is controlled to execute the call type identification method.
[0015] According to another aspect of an embodiment of the present application, an electronic device is provided, including: a memory and a processor, wherein the processor is configured to run a program stored in the memory, wherein the call type identification method is executed when the program is run.
[0016] According to another aspect of an embodiment of the present application, a computer program product is provided, including a computer program, which implements a call type identification method when executed by a processor.
[0017] In an embodiment of the present application, original call data is obtained, and communication features of multiple call records in the original call data are determined based on the original call data, wherein the communication features include time series features, call statistical features, and network features; calling numbers are clustered based on the communication features of the call records, and classified call records and unclassified call records in the call records, as well as call types of the classified call records, are determined based on the clustering results, wherein the unclassified call records are records that have not been clustered into any cluster during the clustering process; a target Gaussian mixture model for the unclassified call records is determined, and a posterior probability matrix for the unclassified call records is determined based on the target Gaussian mixture model, wherein the posterior probability matrix is the sum of the probability distributions of the unclassified call records and the target Gaussian mixture model. The elements in the rate matrix are the probabilities that the unclassified call records belong to the call type; the method of determining the call type of the unclassified call records based on the posterior probability matrix, clustering the call records by integrating various features of the call records to determine the call type of the call records, and determining the call types of these call records based on the posterior probability matrix of the call records that cannot be clustered into a certain cluster, thereby achieving the purpose of accurately identifying the call types of various call records by comprehensively utilizing multiple features, thereby achieving the technical effect of improving the accuracy of call type recognition, and further solving the technical problem of low recognition accuracy caused by identifying the call type of call records based on a single feature in the related technology. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0019] Figure 1 1 is a schematic diagram of the structure of a computer terminal (mobile terminal) provided according to an embodiment of the present application;
[0020] Figure 2 1 is a flow chart of a method for identifying call types according to an embodiment of the present application;
[0021] Figure 3 is a schematic diagram of a call feature standardization process provided according to an embodiment of the present application;
[0022] Figure 4 Schematic diagram of the K-distance curve and slope change according to an embodiment of the present application;
[0023] Figure 5 is a schematic diagram of the clustering results provided according to an embodiment of the present application;
[0024] Figure 6 1 is a flowchart of a call type identification process provided according to an embodiment of the present application;
[0025] Figure 7 It is a structural diagram of a call type identification device provided according to an embodiment of the present application. DETAILED DESCRIPTION
[0026] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.
[0027] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0028] In order to better understand the embodiments of the present application, the technical terms involved in the embodiments of the present application are explained as follows:
[0029] DBSCAN (Density-Based Spatial Clustering of Applications with Noise) is a density-based clustering algorithm. It defines a cluster as the largest set of densely connected points. It can cluster areas with sufficiently high density and can find clusters of arbitrary shapes in noisy spatial databases.
[0030] GMM (Gaussian Mixture Model): A statistically based probability model used to represent data sets composed of multiple Gaussian distributions. By calculating the probability of each data point belonging to different Gaussian distributions, the data points are assigned to the most likely Gaussian distribution, thereby classifying and organizing the mixed data.
[0031] EM (Expectation-Maximization Algorithm): used to estimate the parameters of GMM. It is divided into the E expectation step and the M maximization step. The two steps are performed alternately until the parameters converge. Through iterative optimization, the optimal parameters are gradually approached to maximize the log-likelihood function.
[0032] In recent years, with the expansion of mobile communication networks and the popularization of smart terminals, operators have access to billions of call records every day. Accurately identifying the underlying patterns of call behavior has become a key requirement for improving network service quality and optimizing user experience. However, current mainstream methods have significant limitations: traditional rules rely on manual experience to define feature thresholds, which makes it difficult to cope with the rapid evolution of new harassment patterns; single clustering algorithms require a preset number of clusters and are sensitive to noise, resulting in unstable recognition results; supervised learning-based classification models such as SVM and random forests rely on large amounts of labeled data and face cold start problems in actual deployment. More importantly, existing technologies often analyze single features (such as call frequency) in isolation, ignoring the dynamic correlation between multi-dimensional features such as time and space, and are unable to accurately characterize the inherent laws of complex call behavior.
[0033] In addition, the identification of call types in related technologies is usually based on a single feature threshold (for example, calls to different numbers greater than 50 times in a single day are considered spam calls). However, there is a significant risk of misjudgment in actual scenarios: courier service calls may exhibit high-frequency call characteristics due to business needs, and traditional methods can easily misjudge them as spam calls; while new types of spam calls can circumvent single-dimensional detection rules by using dynamic calling strategies such as dispersed call time periods. In addition, abnormal patterns of call behavior often manifest as coordinated deviations from multiple features (such as high-frequency calls accompanied by high geographical dispersion), but related technologies have not established a quantitative correlation model between features.
[0034] Therefore, there is an urgent need for a hybrid method that integrates density clustering and probabilistic modeling to achieve dynamic analysis and pattern recognition of call features from multiple dimensions and levels.
[0035] In order to solve the above problems, relevant solutions are provided in the embodiments of the present application, which are described in detail below.
[0036] According to an embodiment of the present application, a method embodiment of a call type identification method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0037] The method embodiments provided in the embodiments of the present application can be executed in a mobile terminal, a computer terminal or a similar computing device. Figure 1FIG1 shows a hardware structure block diagram of a computer terminal (or mobile device) for implementing a call type identification method. Figure 1 As shown, the computer terminal 10 (or mobile device 10) may include one or more (illustrated as 102a, 102b, ..., 102n) processors 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission device 106 for communication functions. In addition, it may also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the BUS bus), a network interface, a power supply and / or a camera. It will be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the above electronic device. Figure 1 More or fewer components than shown, or with Figure 1 Different configurations shown.
[0038] It should be noted that the one or more processors 102 and / or other data processing circuits described above may generally be referred to herein as "data processing circuitry". The data processing circuitry may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. In addition, the data processing circuitry may be a single independent processing module, or may be incorporated in whole or in part into any of the other components of the computer terminal 10 (or mobile device). As described in the embodiments of the present application, the data processing circuitry serves as a processor control (e.g., selection of a variable resistor terminal path connected to an interface).
[0039] Memory 104 can be used to store software programs and modules for application software, such as the program instructions / data storage device corresponding to the call type identification method in the embodiments of the present application. Processor 102 executes the software programs and modules stored in memory 104 to perform various functional applications and data processing, thereby implementing the above-mentioned call type identification method. Memory 104 may include high-speed random access memory and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, memory 104 may further include memory remotely located relative to processor 102, and such remote memory may be connected to computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0040] The transmission device 106 is configured to receive or transmit data via a network. A specific example of the aforementioned network may include a wireless network provided by the communications provider of the computer terminal 10. In one embodiment, the transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to enable communication with the Internet. In another embodiment, the transmission device 106 may be a radio frequency (RF) module, which is configured to communicate with the Internet wirelessly.
[0041] The display may be, for example, a touch screen liquid crystal display (LCD) that enables a user to interact with a user interface of the computer terminal 10 (or mobile device).
[0042] In the above operating environment, the embodiment of the present application provides a method for identifying call types, such as Figure 2 As shown, the method includes the following steps:
[0043] Step S202: obtaining original call data and determining communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include time sequence characteristics, call statistical characteristics, and network characteristics;
[0044] In the technical solution provided in step S202, the timing features include at least one of the following: call distribution entropy, call time interval and first active period, wherein the call distribution entropy includes the call frequency distribution of the calling number of the call record within a first preset time period, the call time interval includes the time interval between a preset number of call records of the calling number, and the first active period includes the sub-time period of the calling number's first call within a second preset time period.
[0045] Optionally, the first preset time period can be within 24 hours. The hourly call distribution entropy can be defined as the uncertainty of the call frequency distribution of the calling number within 24 hours. Normal users' calls are concentrated in the time period, with low entropy, while harassing calls are random throughout the day, with high entropy, which can be expressed as:
[0046]
[0047] Where: c i , c j To count the number of calls per hour from the calling number 0 to 24, i = 1, 2, ..., 24; j = 1, 2, ..., 24; p i is the normalized probability distribution; H hour is the call distribution entropy.
[0048] The above preset number can be set by yourself, for example, set to 10 times. In this way, the call interval can be defined as the time interval volatility of the last 10 calls, which can be expressed by the following variance formula:
[0049]
[0050] Where: Δt i is the time difference between adjacent calls, i=1,2,...,9; μ Δt is the mean of the time interval.
[0051] The second preset time period may also be within 0-24 hours. The first active time period is the hour period within 0-24 hours in which the calling number makes its first call, and is directly rounded to an integer value. The first active time period may reflect the activation time period characteristics of the number.
[0052] As an optional embodiment, the statistical features include at least one of the following: Shannon entropy of the called number, call duration information and high-frequency call index, wherein the Shannon entropy of the called number includes the discrete degree of different called numbers called by the calling number corresponding to the call record, the call duration information includes the discrete degree of call duration of the calling number corresponding to the call record, and the high-frequency call index includes the call frequency of the calling number corresponding to the call record in a third preset time period.
[0053] Shannon entropy of the called number is defined as the discrete degree of the calling number calling different called numbers, which can be expressed as:
[0054]
[0055] Where li is the called number type, which can be a personal number, corporate number, or special service number. Different subscript values correspond to different types of called numbers (i-th number). m is a preset number that is set by the user, i.e., the discreteness of the called numbers that have been called by the calling number for the last m times.
[0056] For call duration, normal call duration is widely distributed, while fraud call duration is concentrated. Variance can be used to reflect this difference. Call duration can be defined as the degree of dispersion of all call durations of the calling number:
[0057]
[0058] Where: di is the call duration of the calling number, μ dur is the average call duration for all numbers.
[0059] The high-frequency call index is defined as the abnormality of the call frequency of the calling number per unit time, which can be expressed as:
[0060]
[0061] Where: μ max The maximum number of calls per day for the calling number; μ day The average daily number of calls to the calling number.
[0062] In some embodiments of the present application, the network characteristics include at least one of the following: base station switching information, caller IP geographic information and network type distribution, wherein the base station switching frequency includes the number of base station switches during the call process of the call record; the caller IP geographic information includes the standard deviation of the geographic location discreteness of the IP address of the caller number corresponding to the call record; the network type distribution includes the Shannon entropy of the number of times the network type of the caller number corresponding to the call record is used.
[0063] The base station switching frequency is defined as the number of base station switches during a single call. The number of switches can be counted through signaling data and the historical average value can be taken.
[0064] The calling number IP geographic dispersion is defined as the degree of geographic dispersion of the calling IP addresses, expressed as the standard deviation:
[0065]
[0066] Where: The calling IP longitude variance; Variance in the calling IP dimension.
[0067] The network type distribution is defined as the diversity of network types (such as 4G / 5G / WiFi) used by the calling number. By counting the number of times each network type is used, the Shannon entropy is calculated:
[0068]
[0069] Where: vi is the network type used by the i-th calling number.
[0070] In some embodiments of the present application, Figure 3 As shown in the figure, after obtaining various features, the following formula can be used to perform Z-score standardization on various features before clustering:
[0071]
[0072] Where: μ (k,i) , σ (k,i) is the mean and standard deviation of the i-th sub-dimension of the k-th dimension feature, is the value of the i-th sub-dimension of the k-th dimension feature.
[0073] Step S204: Clustering the calling number based on the communication characteristics of the call records, and determining the classified call records and unclassified call records in the call records, as well as the call types of the classified call records, based on the clustering results. Unclassified call records are records that have not been clustered into any cluster during the clustering process.
[0074] As an optional implementation, the step of clustering caller numbers based on the communication characteristics of call records includes: determining a correction parameter based on the number of call records in the original call data, wherein the correction parameter is used to correct the clustering radius in the clustering process; determining the total number of feature dimensions of the communication characteristics, wherein the total number of feature dimensions is the sum of the number of sub-feature dimensions contained in each type of feature dimension; determining the clustering radius in the clustering process based on the correction parameter and the total number of feature dimensions, and clustering the caller numbers based on the clustering radius and the communication characteristics of the caller numbers.
[0075] In some embodiments of the present application, DBSCAN adaptive density clustering can be used to divide core feature clusters, identify high-density core behavior patterns, and mark potential noise points to preliminarily screen the raw data. The potential noise points are unclassified call records.
[0076] In the clustering process, in order to avoid fragmented clustering caused by too small neighborhood radius ∈ in the case of a large amount of data, the embodiment of the present application introduces a correction parameter for the total number of samples n This corrects the sample size. Let d be the total number of sub-dimensions, and the sample set is represented by X = {x1, x2, ..., xn}∈Rd. Sub-dimensions refer to the total number of each of the aforementioned types of features. For example, if time series features, call statistics features, and network features each contain three types of features, the total number of sub-dimensions is 9.
[0077] The neighborhood radius can be expressed as:
[0078]
[0079] As an optional implementation, the minimum number of neighborhood samples MinPts can be dynamically determined by the inflection point of the K-distance curve. First, the distance from each sample xj to its K-nearest neighbor is calculated. Then for all Arrange in ascending order, draw the distance-sample number curve, and select the K value corresponding to the maximum mutation point of the curve slope as MinPts, which can be expressed as:
[0080]
[0081] The dynamic core point can be determined as:
[0082] |N ∈ (x j)|≥MinPts
[0083] Where: |N ∈ (x j )| is the set of samples within the ∈ neighborhood of sample xj. This means that when clustering, this application marks as core points any feature point whose number of samples within the neighborhood radius is not less than the minimum number of neighborhood samples. The feature points in this application refer to the corresponding points in the feature space of the call record, and can also be considered equivalent to the call record.
[0084] In some embodiments of the present application, the steps of determining the classified call records and unclassified call records in the call records, as well as the call types of the classified call records, based on the clustering results include: determining the main communication characteristics of each cluster based on the distribution of communication characteristics of the call records in each cluster in the clustering results; determining the call type corresponding to each cluster based on the main communication characteristics; determining the call records clustered into the cluster as classified call records, and determining the call type of the classified call records based on the cluster where the classified call records are located. The final clustering result is as follows: Figure 5 shown.
[0085] The above-mentioned main communication characteristics can be the range of characteristic values possessed by all samples in the cluster, or the range of characteristic values possessed by samples exceeding a certain proportion. Optionally, in the embodiment of the present application, each sample has characteristic values on each characteristic dimension, and the range of values of these characteristic values can reflect the differences and correlations between different samples. For samples in the same cluster, if the distribution of the characteristic values of these samples is similar, then the range of characteristic values can be considered as the main communication characteristics of this cluster. For example, if the call distribution entropy and the called number Shannon entropy of all samples in the cluster or the samples exceeding a certain proportion are lower than the corresponding preset thresholds, then it can be considered that the main communication characteristics of this cluster are low call distribution entropy and low called number Shannon entropy.
[0086] Step S206, determining a target Gaussian mixture model for the unclassified call records, and determining a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are probabilities that the unclassified call records belong to a call type;
[0087] In the technical solution provided in step S206, the step of determining the target Gaussian mixture model of the unclassified call records includes: determining an initial Gaussian mixture model of the unclassified call records; determining an initial posterior probability matrix of the unclassified call records based on the initial Gaussian mixture model, and iteratively updating the model parameters of the initial Gaussian mixture model based on the initial posterior probability matrix to obtain a target Gaussian mixture model, wherein after each update of the model parameters of the Gaussian mixture model, the posterior probability matrix of the unclassified call records is determined based on the updated Gaussian mixture model, and the posterior probability matrix obtained in this iteration is used to update the model parameters of the Gaussian mixture model in the next iteration of this iteration.
[0088] In some embodiments of the present application, since the log-likelihood function in the GMM is highly nonlinear and contains latent variable parameters such as mean and covariance, it is difficult to solve it directly. Parameter estimation is required to determine the model structure and better fit the data. The present invention uses the EM algorithm to iteratively optimize the posterior probability of the latent variables and the model parameters to estimate the GMM parameters. A Gaussian mixture model is established for the noise point set X′ to analyze the low-density abnormal behavior pattern, which can be expressed as:
[0089]
[0090] Where: α k is the weight coefficient of the kth Gaussian distribution; μ k is the mean vector of the k-th Gaussian distribution; Yk is the covariance matrix of the k-th Gaussian distribution, and p(x|θ) represents the probability density of sample x under parameter θ.
[0091] Estimating the parameters of the EM algorithm for sample xj is divided into two steps:
[0092] 1. E-step (expected update)
[0093] Calculate the posterior probability that the sample xj belongs to the kth Gaussian distribution, which can be expressed as:
[0094]
[0095] The Gaussian distribution probability density function can be expressed as:
[0096]
[0097] 2. M-step (maximizing parameter updates)
[0098] Update parameter α k , μ k , Y k :
[0099] (1) Weight coefficient α kUpdate, where γ k is the posterior probability.
[0100]
[0101] Where: N is the number of noise points.
[0102] (2) Mean vector μ k renew
[0103]
[0104] (3) Update of covariance matrix Yk
[0105]
[0106] Set the convergence condition, when the log-likelihood change is less than the threshold δ = 10 -4 The iteration is terminated when , which can be expressed as:
[0107] |logp(X′|θ (t) )-logp(X′|θ (t-1 )|<δ
[0108] Where: θ (t) ,θ (t-1) denote the parameter estimates for the tth and t-1th iterations, respectively.
[0109] Step S208: determining the call type of the unclassified call record according to the posterior probability matrix.
[0110] In the technical solution provided in step S208, the step of determining the call type of the unclassified call record based on the posterior probability matrix includes: determining the posterior probability conditions corresponding to each call type, wherein the posterior probability conditions include the value ranges of various posterior probabilities corresponding to the call type, and the types of posterior probabilities correspond one-to-one to the call types; determining the posterior probability value set of the unclassified call record based on the posterior probability matrix, wherein the posterior probability value set includes the values of various posterior probabilities of the unclassified call record; and determining the call type corresponding to the unclassified call record based on the posterior probability value set and the posterior probability conditions.
[0111] The judgment rule of the method provided in the embodiment of the present application can be expressed as the following formula:
[0112]
[0113] The above formula implies that DBSCAN is used to label normal patterns and noise points in call records, and GMM analyzes these noise points to further determine their classification. The maximum threshold for the absolute value of the prior probability can also be set to other values, not necessarily 0.7.
[0114] The present application also provides a Figure 6 The call type identification process shown includes the following steps:
[0115] Step S602: extracting and classifying call features and constructing a multi-dimensional feature space;
[0116] Step S604, performing Z-score normalization processing on the extracted features;
[0117] Step S606: Divide the core feature clusters using density clustering and mark potential noise points;
[0118] Step S608: constructing a GMM model for potential noise points to analyze low-density abnormal behavior patterns;
[0119] Step S610: Model classification information fusion decision, outputting the final classification label.
[0120] In some embodiments of this application, in order to demonstrate the technical effects of the call type identification method provided by this application, a complete identification process for call type identification using the method provided by this application is provided, taking some call records of XX operator in XX city in December 2024 as an example. The original call data is shown in the following table:
[0121]
[0122] The extracted features are shown in the following table:
[0123]
[0124] Then, according to the definition of sub-dimensions in this application, the following call feature raw data matrix can be obtained:
[0125]
[0126] X=[X1,X2,...,X9]
[0127] Solve the sub-dimension value corresponding to each data:
[0128]
[0129] X′=[X′1X′2,...,X′9」
[0130] Afterwards, you can use Figure 3 The above data is normalized by Z-score in the manner shown, and the following results are obtained:
[0131]
[0132] X"=[X1,X2,...,X9]
[0133] After obtaining the standardized processing results, DBSCAN adaptive density clustering can be used to divide the core feature clusters based on the processing results, mark potential noise points, and perform preliminary screening of the data, including the following steps:
[0134] The first step is to input the original parameter X ”
[0135] The second step is to calculate the correction factor:
[0136]
[0137] The third step is to calculate the neighborhood radius:
[0138]
[0139] The fourth step is to dynamically determine the minimum number of neighborhood samples MinPts through the inflection point of the K-distance curve. First, for each sample xj, the distance to its K-nearest neighbor is calculated. Then for all Arrange in ascending order, draw the distance-sample number curve, select the K value corresponding to the maximum mutation point of the curve slope as MinPts, and the distance-sample number curve is shown in the attached figure. Figure 4 As shown, the corresponding MinPts=5.937.
[0140] In the fifth step, based on the dynamic core points, the samples were divided into seven categories: daily calls, takeaway calls, express calls, government notices, AI voice customer service, fraud calls, and noise points. The clustering results are shown in the attached Figure 4 As shown, the noise points are abnormal points that DBSCAN cannot cluster and require GMM to further judge them. The distribution of seven types of data feature samples and call characteristics are shown in the following table:
[0141]
[0142] It should be noted that the above-mentioned main call features are not decision-making conditions, but clustering results based on a comprehensive judgment of the nine sub-dimensions combined with an algorithm.
[0143] Then, a GMM model can be constructed for the filtered noise points to analyze the low-density abnormal behavior pattern. Optionally, the noise point samples are represented by N′=[N1, N2, ..., N 81 ] indicates that the EM algorithm parameters are estimated for the sample Nj:
[0144] E-step (expected update):
[0145] Specifically, taking the fifth noise point N5 = [0.68, 1.35, ..., 1.95]T as an example, the probability density of each Gaussian distribution is:
[0146]
[0147] The posterior probability is:
[0148]
[0149] γ 5,2 =0.15,γ 5,3 =0.03, ...γ 5,6 =0.001
[0150] The 81 noise points finally generate an 81×6 posterior probability matrix, which represents the attribution probability of each noise point.
[0151] M-step (maximize parameter update):
[0152] Based on the posterior probability matrix, update the parameter α k , μ k , Y k .
[0153] The parameter α1 is updated as:
[0154]
[0155] Then update α in sequence k .
[0156] The parameter μ1 is updated as:
[0157]
[0158] Then update μ k .
[0159] The parameter Y1 is updated as follows:
[0160]
[0161] Then update Y k .
[0162] Convergence judgment:
[0163] After a certain number of iterations, when δ=7.91×10 -5 <10 -4 When , the convergence is determined to be successful and the iteration process ends.
[0164] After the iteration is completed, dynamic decisions can be made on the model classification information, and the final classification label can be obtained by combining the density clustering results and the posterior probability matrix, as shown in the following table:
[0165]
[0166] The final distribution of the six types of data feature samples and call characteristics are shown in the following table:
[0167]
[0168] It should be noted that if the number of clusters changes during clustering, the corresponding clustering results will also change, and will not necessarily be 6 clustering results.
[0169] In addition, in this scenario of call type identification based on real data, compared with other algorithms, the error rates of the method provided by this application and the methods in related technologies are as follows:
[0170]
[0171]
[0172] It can be seen that the method provided in this application has a significantly lower misjudgment rate than traditional methods in multi-scenario call recognition.
[0173] The method obtains original call data and determines the communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include time series characteristics, call statistical characteristics and network characteristics; clusters the caller numbers based on the communication characteristics of the call records, and determines the classified call records and unclassified call records in the call records based on the clustering results, as well as the call types of the classified call records, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; determines the target Gaussian mixture model of the unclassified call records, and determines the posterior probability matrix of the unclassified call records based on the target Gaussian mixture model, wherein the posterior probability matrix The elements in are the probabilities that unclassified call records belong to a call type; the method of determining the call type of unclassified call records based on the posterior probability matrix is to cluster the call records by integrating various features of the call records to determine the call type of the call records, and the call types of these call records are determined based on the posterior probability matrix of the call records that cannot be clustered into a certain cluster, thereby achieving the purpose of accurately identifying the call types of various call records by comprehensively utilizing multiple features, thereby realizing the technical effect of improving the accuracy of call type recognition, and further solving the technical problem of low recognition accuracy caused by identifying the call type of call records based on a single feature in the related art.
[0174] The embodiment of the present application provides a call type identification device, Figure 7 It is a structural diagram of the device. Figure 7As can be seen from the figure, the device includes: a first processing module 70, which is used to obtain original call data and determine the communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include time series characteristics, call statistical characteristics and network characteristics; a second processing module 72, which is used to cluster the calling number according to the communication characteristics of the call record, and determine the classified call records and unclassified call records in the call record, as well as the call type of the classified call record according to the clustering result, wherein the unclassified call record is a record that is not clustered into any cluster during the clustering process; a third processing module 74, which is used to determine the target Gaussian mixture model of the unclassified call record, and determine the posterior probability matrix of the unclassified call record based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are the probabilities that the unclassified call record belongs to the call type; a fourth processing module 76, which is used to determine the call type of the unclassified call record based on the posterior probability matrix.
[0175] In some embodiments of the present application, the timing features include at least one of the following: call distribution entropy, call time interval and first active period, wherein the call distribution entropy includes the call frequency distribution of the calling number of the call record within a first preset time period, the call time interval includes the time interval between a preset number of call records of the calling number, and the first active period includes the sub-time period of the calling number's first call within a second preset time period.
[0176] In some embodiments of the present application, the statistical features include at least one of the following: Shannon entropy of the called number, call duration information and high-frequency call index, wherein the Shannon entropy of the called number includes the discrete degree of different called numbers called by the calling number corresponding to the call record, the call duration information includes the discrete degree of call duration of the calling number corresponding to the call record, and the high-frequency call index includes the call frequency of the calling number corresponding to the call record in a third preset time period.
[0177] In some embodiments of the present application, the network characteristics include at least one of the following: base station switching information, caller IP geographic information and network type distribution, wherein the base station switching frequency includes the number of base station switches during the call process of the call record; the caller IP geographic information includes the standard deviation of the geographic location discreteness of the IP address of the caller number corresponding to the call record; the network type distribution includes the Shannon entropy of the number of times the network type of the caller number corresponding to the call record is used.
[0178] In some embodiments of the present application, the step of clustering the caller number according to the communication characteristics of the call records by the second processing module 72 includes: determining a correction parameter according to the number of call records in the original call data, wherein the correction parameter is used to correct the clustering radius in the clustering process; determining the total number of feature dimensions of the communication characteristics, wherein the total number of feature dimensions is the sum of the number of sub-feature dimensions contained in each type of feature dimension; determining the clustering radius in the clustering process according to the correction parameter and the total number of feature dimensions, and clustering the caller number according to the clustering radius and the communication characteristics of the caller number.
[0179] In some embodiments of the present application, the second processing module 72 determines the classified call records and unclassified call records in the call records based on the clustering results, as well as the call type of the classified call records, including: determining the main communication characteristics of each cluster based on the distribution of communication characteristics of the call records in each cluster in the clustering results; determining the call type corresponding to each cluster based on the main communication characteristics; determining that the call records clustered into the cluster are classified call records, and determining the call type of the classified call records according to the cluster where the classified call records are located.
[0180] In some embodiments of the present application, the step of the third processing module 74 determining the target Gaussian mixture model of the unclassified call records includes: determining an initial Gaussian mixture model of the unclassified call records; determining an initial posterior probability matrix of the unclassified call records based on the initial Gaussian mixture model, and iteratively updating the model parameters of the initial Gaussian mixture model based on the initial posterior probability matrix to obtain a target Gaussian mixture model, wherein after each update of the model parameters of the Gaussian mixture model, the posterior probability matrix of the unclassified call records is determined based on the updated Gaussian mixture model, and the posterior probability matrix obtained in this iteration is used to update the model parameters of the Gaussian mixture model in the next iteration of this iteration.
[0181] In some embodiments of the present application, the step of the third processing module 74 determining the call type of the unclassified call record based on the posterior probability matrix includes: determining the posterior probability conditions corresponding to each call type, wherein the posterior probability conditions include the value ranges of various posterior probabilities corresponding to the call type, and the types of posterior probabilities correspond one-to-one to the call types; determining the posterior probability value set of the unclassified call record based on the posterior probability matrix, wherein the posterior probability value set includes the values of various posterior probabilities of the unclassified call record; and determining the call type corresponding to the unclassified call record based on the posterior probability value set and the posterior probability conditions.
[0182] It should be noted that the various modules in the above-mentioned call type identification device can be program modules (for example, a set of program instructions that implement a certain specific function) or hardware modules. For the latter, it can be expressed in the following forms, but is not limited to this: the expression form of each of the above-mentioned modules is a processor, or the functions of each of the above-mentioned modules are implemented by a processor.
[0183] According to an embodiment of the present application, a non-volatile storage medium is also provided, in which a program is stored, wherein when the program is running, the device where the non-volatile storage medium is located is controlled to perform the following call type identification method: obtaining original call data, and determining the communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include timing characteristics, call statistical characteristics and network characteristics; clustering the calling number according to the communication characteristics of the call record, and determining the classified call records and unclassified call records in the call record, as well as the call type of the classified call record based on the clustering result, wherein the unclassified call record is a record that is not clustered into any cluster during the clustering process; determining a target Gaussian mixture model for the unclassified call record, and determining the posterior probability matrix of the unclassified call record based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are the probabilities that the unclassified call record belongs to the call type; determining the call type of the unclassified call record based on the posterior probability matrix.
[0184] According to an embodiment of the present application, an electronic device is also provided, including: a memory and a processor, the processor being configured to run a program stored in the memory, wherein the program executes the following call type identification method when running: obtaining original call data, and determining communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include timing characteristics, call statistical characteristics, and network characteristics; clustering the calling number based on the communication characteristics of the call records, and determining the classified call records and unclassified call records in the call records, as well as the call types of the classified call records based on the clustering results, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; determining a target Gaussian mixture model for the unclassified call records, and determining a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are the probabilities that the unclassified call records belong to the call type; and determining the call type of the unclassified call records based on the posterior probability matrix.
[0185] According to an embodiment of the present application, a computer program product is also provided, including a computer program. When the computer program is executed by a processor, it implements the following call type identification method: obtaining original call data, and determining the communication characteristics of multiple call records in the original call data based on the original call data, wherein the communication characteristics include time series characteristics, call statistical characteristics and network characteristics; clustering the calling number according to the communication characteristics of the call records, and determining the classified call records and unclassified call records in the call records, as well as the call type of the classified call records based on the clustering results, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; determining a target Gaussian mixture model for the unclassified call records, and determining a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein the elements in the posterior probability matrix are the probabilities that the unclassified call records belong to the call type; and determining the call type of the unclassified call records based on the posterior probability matrix.
[0186] In the above embodiments of the present application, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.
[0187] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only exemplary. For example, the division of the units can be a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0188] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0189] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0190] If 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. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the relevant 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 a number of instructions for enabling a computer device (which can be a personal computer, a server or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0191] The above is only a preferred embodiment of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A method for identifying call types, characterized in that: include: Obtaining original call data, and determining communication characteristics of a plurality of call records in the original call data based on the original call data, wherein the communication characteristics include time sequence characteristics, call statistical characteristics, and network characteristics; Clustering the calling number according to the communication characteristics of the call records, and determining classified call records and unclassified call records in the call records, as well as the call types of the classified call records, according to the clustering results, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; determining a target Gaussian mixture model for the unclassified call records, and determining a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein elements in the posterior probability matrix represent probabilities that the unclassified call records belong to the call type; The call type of the unclassified call record is determined according to the posterior probability matrix.
2. The call type identification method according to claim 1, characterized in that: Clustering the calling number according to the communication characteristics of the call record includes: determining a correction parameter based on the number of call records in the original call data, wherein the correction parameter is used to correct the cluster radius in the clustering process; Determining a total number of feature dimensions of the communication feature, wherein the total number of feature dimensions is the sum of the number of sub-feature dimensions contained in each type of feature dimension; The clustering radius in the clustering process is determined according to the correction parameter and the total number of feature dimensions, and the calling numbers are clustered according to the clustering radius and the communication characteristics of the calling numbers.
3. The call type identification method according to claim 1, characterized in that: Determining classified call records and unclassified call records in the call records according to the clustering results, and determining the call types of the classified call records includes: Determining the main communication characteristics of each cluster based on the distribution of communication characteristics of the call records within each cluster in the clustering result; Determining a call type corresponding to each cluster according to the main communication characteristics; The call records clustered into the cluster are determined to be the classified call records, and the call types of the classified call records are determined according to the clusters where the classified call records are located.
4. The call type identification method according to claim 1, characterized in that: Determining the target Gaussian mixture model of the unclassified call records includes: determining an initial Gaussian mixture model of the unclassified call records; An initial posterior probability matrix of the unclassified call records is determined based on the initial Gaussian mixture model, and model parameters of the initial Gaussian mixture model are iteratively updated based on the initial posterior probability matrix to obtain the target Gaussian mixture model, wherein after each update of the model parameters of the Gaussian mixture model, the posterior probability matrix of the unclassified call records is determined based on the updated Gaussian mixture model, and the posterior probability matrix obtained in this iteration is used to update the model parameters of the Gaussian mixture model in the next iteration of this iteration.
5. The call type identification method according to claim 1, characterized in that: Determining the call type of the unclassified call record according to the posterior probability matrix includes: Determining a posterior probability condition corresponding to each call type, wherein the posterior probability condition includes a value range of each type of posterior probability corresponding to the call type, and the type of the posterior probability corresponds to the call type in a one-to-one correspondence; Determining a posterior probability value set of the unclassified call records based on the posterior probability matrix, wherein the posterior probability value set includes values of various posterior probabilities of the unclassified call records; The call type corresponding to the unclassified call record is determined according to the posterior probability value set and the posterior probability condition.
6. The call type identification method according to claim 1, characterized in that: The time series features include at least one of the following: call distribution entropy, call time interval and first active period, wherein, The call distribution entropy includes the call frequency distribution of the calling number of the call record within a first preset time period, the call time interval includes the time interval between a preset number of call records of the calling number, and the first active period includes the sub-time period of the first call of the calling number within a second preset time period.
7. The call type identification method according to claim 1, characterized in that: The statistical features include at least one of the following: Shannon entropy of the called number, call duration information and high-frequency call index, wherein, The Shannon entropy of the called number includes the discrete degree of different called numbers called by the calling number corresponding to the call record, the call duration information includes the discrete degree of call duration of the calling number corresponding to the call record, and the high-frequency call index includes the call frequency of the calling number corresponding to the call record in the third preset time period.
8. The call type identification method according to claim 1, characterized in that: The network characteristics include at least one of the following: base station switching information, calling IP geographical information and network type distribution, wherein the base station switching frequency includes the number of base station switches during the call process of the call record; The calling IP geographical information includes the standard deviation of the geographical location dispersion of the IP address of the calling number corresponding to the call record; The network type distribution includes the Shannon entropy of the number of times the network type of the calling number corresponding to the call record is used.
9. A call type identification device, characterized in that: include: a first processing module, configured to obtain original call data and determine, based on the original call data, communication characteristics of a plurality of call records in the original call data, wherein the communication characteristics include time sequence characteristics, call statistical characteristics, and network characteristics; a second processing module, configured to cluster calling numbers according to communication characteristics of the call records, and determine classified call records and unclassified call records in the call records, as well as call types of the classified call records, based on the clustering results, wherein the unclassified call records are records that are not clustered into any cluster during the clustering process; a third processing module, configured to determine a target Gaussian mixture model for the unclassified call records, and determine a posterior probability matrix for the unclassified call records based on the target Gaussian mixture model, wherein elements in the posterior probability matrix represent probabilities that the unclassified call records belong to the call type; A fourth processing module is configured to determine the call type of the unclassified call record according to the posterior probability matrix.
10. A non-volatile storage medium, characterized in that: The non-volatile storage medium stores a program, wherein when the program is running, the device where the non-volatile storage medium is located is controlled to execute the call type identification method according to any one of claims 1 to 8.
11. An electronic device, characterized in that: include: A memory and a processor, wherein the processor is configured to run a program stored in the memory, wherein the call type identification method according to any one of claims 1 to 8 is executed when the program is run.
12. A computer program product, characterized in that The invention comprises a computer program, which implements the call type identification method according to any one of claims 1 to 8 when being executed by a processor.