One-machine multi-card identification method and device based on communication network signaling plane data, medium and program product

By constructing user trajectory data sequences and multi-scale matching structures for communication network signaling data, combined with auxiliary verification, the problem of accurately identifying users with multiple SIM cards on one device in a cross-operator environment is solved, thereby improving the accuracy and security of identification.

CN120640247AActive Publication Date: 2025-09-12SINO TELECOM TECHNOLOGY CO INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510963652.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-14
Publication Date
2025-09-12
Estimated Expiration
2045-07-14

AI Technical Summary

Technical Problem

Existing technologies have difficulty in accurately identifying multiple user identities held by the same terminal in a cross-operator environment, and there are problems with device identity forgery and insufficient identity sharing authentication.

Method used

By collecting signaling data from the communication network, constructing a user trajectory data sequence, and calculating the trajectory matching degree at multiple scale levels, combined with auxiliary verification mechanisms such as traffic behavior, operating system differences, and location conflict detection, users with multiple SIM cards on one device can be identified.

Benefits of technology

It improves the accuracy and security of multi-card recognition on one device, reduces the false positive rate and missed positive rate, and is suitable for high-confidence recognition by telecom operators and network security regulators.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120640247A_ABST
    Figure CN120640247A_ABST
Patent Text Reader

Abstract

The invention provides a one-machine multi-card identification method and device based on communication network signaling plane data, a medium and a program product, and the method comprises the steps: collecting the communication network signaling plane data of a plurality of user identities, extracting a base station access record, converting a base station position identifier in the base station access record into a spatial position point under a unified plane coordinate system, completing region rasterization processing based on a preset spatial resolution, and generating a corresponding user track data sequence; mapping to a multi-scale matching structure fusing time and space dimensions, calculating trajectory matching degrees under different scale hierarchies, and performing weighted fusion to obtain trajectory similarity scores; in combination with a multi-period or multi-date matching result, user identity pairs with multi-day trajectory similarity are screened out; an auxiliary verification mechanism is introduced, user identities with multi-day trajectory similarity are judged, and finally one-machine multi-card users are recognized. According to the invention, the accuracy and confidence of one-machine multi-card identification are improved, and the misjudgment rate and the missed judgment rate are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of network communication technology, and in particular to a method, device, medium and program product for identifying multiple cards on a single device based on communication network signaling data. Background Art

[0002] With the rapid development of mobile communications technology, dual-SIM dual-standby devices have become widespread worldwide. Users holding multiple SIM cards simultaneously, particularly those configured with multiple SIM cards from different carriers, have become the norm. In these scenarios, multiple SIM cards used in the same device are often connected to different carrier networks, resulting in the fragmented recording of user communication activity across multiple independent systems, making it more difficult to accurately identify individual users.

[0003] To identify users with multiple SIM cards, existing technologies often rely on device identification information (such as IMEI and IMSI) to correlate and normalize behavioral data. However, in practice, device identification carries the risk of being forged, tampered with, or hidden. Furthermore, there's a lack of a unified identification sharing and authentication mechanism between different carriers, making such methods ineffective in cross-carrier, heterogeneous network scenarios.

[0004] Therefore, existing technologies have obvious limitations in handling the need for multi-card identification on one device across networks. There is an urgent need for a technical solution that can integrate signaling data from multiple operators' communication networks and achieve high-confidence identification based on user behavior trajectories to improve recognition accuracy and system applicability. Summary of the Invention

[0005] In response to the shortcomings of the existing technology, the present application provides a method, device, medium and program product for identifying multiple cards on a single device based on communication network signaling data, which is at least used to solve the problem in the existing technology that it is difficult to accurately identify multiple user identities held by the same terminal in a cross-operator environment in the absence of reliable device identification.

[0006] In order to achieve the above objectives and other advantages, some embodiments of the present application provide the following aspects:

[0007] In a first aspect, some embodiments of the present application provide a method for identifying multiple cards on a single device based on communication network signaling plane data, including:

[0008] Collect communication network signaling data for multiple user identities and extract base station access records for each user identity within the target time period;

[0009] Converting the base station location identifier in the base station access record into a spatial location point in a unified plane coordinate system, dividing the target area into grids based on a preset spatial resolution, and generating a corresponding user trajectory data sequence;

[0010] Mapping the user trajectory data sequence to a multi-scale matching structure built based on time and space dimensions, calculating the trajectory matching degree between different user identities at multiple scale levels, and fusing the weights set at each scale level to determine the trajectory similarity score;

[0011] Based on the trajectory similarity score, the matching of user identity pairs in multiple time periods or multiple dates is counted, and user identity pairs that meet the multi-day trajectory similarity are selected;

[0012] Auxiliary verification is performed on user identity pairs that meet multi-day trajectory similarity. If the user identity pair meets the same-terminal judgment condition, the user identity pair is determined to be a one-device multi-SIM user. The auxiliary verification includes: detecting whether there is simultaneous traffic behavior in the same time period, detecting operating system type differences, and detecting spatial location conflicts.

[0013] In a second aspect, some embodiments of the present application further provide an electronic device, comprising:

[0014] One or more processors; and a memory storing computer program instructions, wherein when the computer program instructions are executed, the processor executes any one of the above-mentioned methods for identifying multiple cards on a single machine based on communication network signaling plane data.

[0015] On the third aspect, some embodiments of the present application also provide a computer-readable storage medium on which computer programs and / or instructions are stored. When the computer programs and / or instructions are executed by a processor, a one-machine multi-card identification method based on communication network signaling plane data as described in any one of the above is implemented.

[0016] In a fourth aspect, some embodiments of the present application also provide a computer program product, including a computer program and / or instructions, which, when executed by a processor, implements a one-machine multi-card identification method based on communication network signaling plane data as described in any one of the above.

[0017] Compared to related technologies, the solution provided in the embodiments of this application constructs user trajectory data based on communication network signaling data and combines it with multi-scale trajectory matching and auxiliary verification mechanisms to accurately identify users with multiple SIM cards on a single device. Compared to existing solutions that rely on terminal device identification, this solution does not rely on static device information, effectively avoiding risks such as device counterfeiting and tampering, and significantly improving the security and robustness of the identification system. By constructing user trajectory data in a unified plane coordinate based on communication network signaling data and building a multi-scale matching structure in both time and space, the similarity of mobility behavior between user identities can be evaluated at multiple granularity levels, thereby improving the accuracy and coverage of trajectory matching. Furthermore, by combining multi-day trajectory statistics with auxiliary verification mechanisms including traffic behavior conflicts, terminal system differences, and location conflicts, the accuracy and confidence of single-device multi-SIM identification are further improved, reducing the false positive and missed positive rates. This solution can be widely used in scenarios such as telecom operators and network security regulators. While achieving high-confidence and high-real-time single-device multi-SIM identification, it also provides strong technical support for communication network security management and user identity identification. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other implementation methods can be obtained based on these drawings without paying any creative work.

[0019] Figure 1 This is a flowchart of a method for identifying multiple cards on a single device based on communication network signaling plane data provided by an embodiment of the present application;

[0020] Figure 2 This is a schematic diagram of constructing a user trajectory data sequence based on communication network signaling plane data in an embodiment of the present application;

[0021] Figure 3 This is a schematic diagram of a hierarchical space-time pyramid model provided by an embodiment of the present application;

[0022] Figure 4 It is a structural diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0023] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0024] First embodiment

[0025] The first embodiment of the present application relates to a method for identifying multiple cards on a single device based on communication network signaling plane data, comprising:

[0026] Step S1: Collect communication network signaling plane data of multiple user identities, and extract base station access records of each user identity within a target time period.

[0027] Regarding step S1, specifically, in existing communication networks, user location awareness based on big data mainly relies on the fusion calculation of multi-source heterogeneous data, including measurement reports MR

[0028] Acquisition of these data types, combined with high-precision positioning algorithms, can improve user location estimation accuracy to within 50 meters. However, in actual deployments, MR and OTT data are difficult to sustainably apply in large-scale deployments due to limited access rights, insufficient real-time performance, and uneven data distribution.

[0029] Therefore, in the implementation of the present application, more stable and reliable signaling plane data is selected as the main positioning basis. The call record data generated by the core network interface (such as the S1MME interface of the LTE (4G) network and the N1 / N2 interface of the 5G core network) can be collected. It can also include underlying signaling protocol data, such as S1AP (S1 Application Protocol) data exchanged through the S1 interface, X2AP data of the X2 interface, and NAS (Non-Access Stratum) signaling data of the non-access layer. The former is usually a structured event record, and the latter can provide more fine-grained access behavior information. The two can be flexibly selected according to specific deployment capabilities.

[0030] In actual applications, the operator side can centrally collect historical signaling data in a specified area on a daily or continuous basis for several hours, and only retain the signaling message records whose timestamp fields are within the target time period. From the signaling message records within the above time period, filter out the signaling event types that can reflect the user's access or residency status, such as initial context establishment request, handover request, tracking area update, etc., to ensure that the extracted records can indicate location change behavior. Group the user identity identification fields contained in each signaling message record, and establish an association index between the user identity and its signaling message record. Parse the access base station identification field of each signaling message record, use it as the spatial node that the user accessed at a certain moment, and extract the corresponding timestamp to form a base station access record with user identity, timestamp, and base station identification as the basic data structure.

[0031] It should be noted that a user identity is an identifier that uniquely identifies a mobile terminal's communication behavior within a communication system. To protect user privacy and enhance the applicability of the solution, user identities can be constructed using anonymization or desensitization mechanisms, without relying on actual device identifiers or user numbers. This mitigates potential risks such as device counterfeiting and identity tampering.

[0032] Step S2: Convert the base station location identifier in the base station access record into a spatial location point in a unified plane coordinate system, divide the target area into grids based on a preset spatial resolution, and generate a corresponding user trajectory data sequence.

[0033] For step S2, specifically, the base station identifier (such as eNodeBID) contained in each base station access record can be converted into the corresponding longitude and latitude coordinates through a pre-established configuration mapping table. The configuration mapping table can be provided by the operator's core network or network management system, and contains the correspondence between each base station identifier and its deployed geographical location. The longitude and latitude coordinates are then converted from the WGS84 coordinate system to plane coordinates in the Mercator projection coordinate system. The system divides the target area into equally spaced grids based on a preset spatial resolution (such as 50 meters × 50 meters) to construct a two-dimensional grid system with unique numbers. Each base station access record is mapped to a discrete trajectory point containing a timestamp and a spatial grid number, ultimately forming a time series trajectory data sequence of the user in the target time period.

[0034] Step S3: Map the user trajectory data sequence to a multi-scale matching structure constructed based on the time dimension and the spatial dimension. Calculate the trajectory matching degree between different user identities at multiple scale levels, and combine the weights set at each scale level to determine the trajectory similarity score.

[0035] Specifically, in step S3, a multi-scale matching structure covering both temporal and spatial dimensions is constructed based on the generated user trajectory data sequence. This structure divides the trajectory feature space into multiple scale levels, used to evaluate the degree of trajectory matching between user identities at different granularities. The temporal scale can be set to different time intervals, such as 5 minutes, 30 minutes, or 1 hour, and the spatial scale can be set to different grid granularities, such as 50 meters, 100 meters, or 200 meters.

[0036] At each scale level, the system first performs a unified temporal alignment on the trajectory sequences of different user identities. This involves dividing the trajectory points into corresponding time segments based on the current time scale. Each trajectory point is then mapped to its corresponding spatial grid based on the grid division method of the current spatial scale. For each pair of user identities, the system calculates whether they fall into the same spatial grid within the same time segment. Based on this, the trajectory similarity at that scale is calculated, which serves as the trajectory matching score at that level.

[0037] Furthermore, to comprehensively consider matching performance at different scales, the system assigns a corresponding weight coefficient to each scale level. The weight is generally inversely proportional to the scale granularity; that is, the finer the scale level, the more reliable the matching result and the greater the weight. Ultimately, the system performs a weighted fusion of the matching scores at all scale levels according to the set weights to generate a global trajectory similarity score for the corresponding user identity.

[0038] Step S4: Based on the trajectory similarity score, the matching of user identity pairs in multiple different time periods or multiple dates is counted, and user identity pairs that meet the multi-day trajectory similarity are screened out.

[0039] In this embodiment, step S4 specifically includes:

[0040] Step S401: comparing the trajectory similarity score of each user identity pair in each target time period with a preset similarity threshold;

[0041] Step S402: If the trajectory similarity score within the target time period is greater than the similarity threshold, the target time period is marked as a matching time period;

[0042] Step S403: Counting the number of times each user identity pair is marked as a matching time period or the number of consecutive matching days within a preset date range;

[0043] Step S404: If the statistical result satisfies the set multi-day matching determination condition, the user identity pairs are filtered to be user identity pairs that meet the multi-day trajectory similarity.

[0044] Specifically, many common scenarios (such as traveling together or traveling together) can cause two trajectories to exhibit high similarity within the same time period. Therefore, in this step, by constructing user identity pairs and introducing multi-day trajectory statistics, occasional co-location users (users whose trajectories briefly overlap but do not belong to the same device user) can be effectively eliminated. Specifically, based on the entire user trajectory data sequence, user identity pairs are constructed for all collected user identities in a pairwise manner. That is, a set of identity combinations is formed for any two different user identities, which is used to analyze the trajectory similarity and behavioral consistency of any two users within a given time period. Each user identity pair serves as the minimum analysis unit for trajectory matching evaluation, used to determine whether there is a suspicious association of multiple cards on the same device. For each user identity pair, the system compares the trajectory similarity score with a set similarity threshold. If the score exceeds the similarity threshold, it indicates that the spatial and temporal movement behavior of the two user identities during that time period is highly consistent. The trajectory similarity score value range can generally be normalized to the range [0, 1], with higher similarity scores closer to 1. The threshold can be set based on historical statistical experience or business rules. For example, a floating value between 0.6 and 0.8 indicates that two users have strong trajectory similarity within a specific time period. A time period marked as matching indicates that the user identity has consistent or highly overlapping movement behavior within that time period.

[0045] For each user-identity pair, the number of times it was marked as a matching time period within a specified date range (e.g., the past 7 or 30 days) is counted. The system can further calculate characteristic indicators such as the number of consecutive matching days, the number of matching time periods per day, and the distribution density of matching time periods. For example, a user-identity pair may have more than two matching time periods per day for three consecutive days, or may have a cumulative matching behavior for more than five days in any seven-day period.

[0046] The multi-day matching judgment condition can be set as follows: there are matching time periods for N consecutive days (such as N=3), or there are matching periods for more than M days in the entire observation period (such as M=5), and the number of matching segments per day is not less than 2. The statistical results are compared with the preset multi-day matching judgment conditions. If the set conditions are met, the user identity pair is filtered as the user identity pair that meets the multi-day trajectory similarity. In this way, trajectory similarities caused only by incidental factors such as carpooling and traveling together in a short period of time can be eliminated to avoid misjudgment. It can effectively identify user identity pairs with consistency in long-term mobile behavior, thereby improving the temporal stability and behavior consistency verification capabilities of multi-card recognition on one machine.

[0047] Step S5: Perform auxiliary verification on user identity pairs that meet the multi-day trajectory similarity. If the user identity pair meets the same terminal judgment condition, the user identity pair is determined to be a single-device multi-SIM user. The auxiliary verification includes: detecting whether there is simultaneous traffic behavior in the same time period, detecting operating system type differences, and detecting spatial location conflicts.

[0048] In this embodiment, step S5 specifically includes:

[0049] Step S501: For user identity pairs that meet multi-day trajectory similarity, collect their corresponding communication behavior data within the same time period to detect whether there is simultaneous communication traffic activity. If there is simultaneous communication behavior, it is determined that they are different terminal users; and / or,

[0050] Extract the terminal operating system identifier corresponding to the user identity within the target time period. If the operating system types are inconsistent, it is determined that the user is not the same terminal user; and / or,

[0051] Compare the positions of trajectory points within the same time period. If two user identities appear at the same time at locations that are more than a preset distance apart, they are determined to be different terminal users.

[0052] Step S502: Only when the user identity pair is not determined to be a different terminal user in multiple auxiliary verifications, it is determined that the same terminal determination condition is met, and the user identity pair is further identified as a one-device multi-card user.

[0053] Specifically, after selecting user identity pairs that meet multi-day trajectory similarity, further auxiliary verification is performed to determine whether the identity pair can be attributed to multi-card usage behavior of the same terminal, thereby achieving high-confidence identification of multi-card users on a single device. For each user identity pair that meets multi-day trajectory similarity, at least one of the following auxiliary verification operations is performed, specifically including:

[0054] Analyze the communication behavior data of the user identity pair during the same time period, especially their respective uplink / downlink data flow records, TCP (Transmission Control Protocol) connection behavior, application layer access logs, etc. If both user identities have obvious active data communication behavior (such as uploading or downloading data at the same time) within a certain time period, it indicates that they are two independent terminals operating concurrently, and the possibility of using the same device is ruled out. In such cases, the system can mark the user identity pair as different terminal users.

[0055] Extract terminal attribute information for the user identity within the same time period, such as the User Agent field (which identifies the client software environment), terminal capability field, and device management signaling information, to identify the corresponding terminal operating system type (such as Android, iOS, HarmonyOS, etc.). If two user identities connect to terminals with different operating system types within the same time period, they are from different device instances and can therefore be determined to be different terminal users.

[0056] Based on the aforementioned user trajectory data, the spatial location points corresponding to the two identities at the same timestamp are compared. If the physical distance between the two exceeds a preset threshold (such as 100 meters or 200 meters, depending on the network positioning accuracy), it is considered impossible that the behavioral trajectory came from the same terminal, and thus it is excluded as different terminal users. This detection is particularly effective in identifying fake co-tracking behaviors (such as remote synchronization forgery).

[0057] The above three detection processes can be used independently or in combination, and the system can choose to enable one or more of them according to the actual deployment scenario and data availability. Summarize the detection results of step S501. If the exclusion judgment of non-same terminal users is not triggered in all enabled auxiliary verifications, it is considered that the identity pair meets the same terminal judgment condition. On this basis, the system formally identifies the user identity pair as a one-machine multi-card user, and can output its results for subsequent application scenarios such as user portrait analysis, communication risk identification, and anti-fraud model input. This auxiliary verification mechanism combines multi-dimensional verification of spatial behavior, communication behavior and terminal attributes, significantly enhances the reliability of trajectory similarity judgment, and effectively avoids misjudgment caused by short-term co-location, equipment sharing and other behaviors, thereby improving the accuracy and robustness of the system in identifying one-machine multi-card users.

[0058] Furthermore, the recognition results of users with multiple SIM cards on one device are synchronized to the user behavior analysis system for recording and marking, and structured user portrait data of users with multiple SIM cards on one device is generated based on the recognition results. The recognition results include the user identity information of users with multiple SIM cards on one device, the corresponding matching time period, the trajectory similarity scores at each scale, and the auxiliary verification results.

[0059] Specifically, the system synchronizes the user identity pair identified as a user with multiple SIM cards to the user behavior analysis system via a pre-defined interface (e.g., a RESTful API, a Kafka message queue channel, or a database write). The synchronization process can be performed in batches on a fixed cycle (e.g., daily or hourly), or pushed immediately after the identification results are generated (quasi-real-time mode) to continuously analyze user network usage characteristics. Synchronized content includes the user identity pair identifier, judgment tag, timestamp, and verification summary information.

[0060] After completing the recognition result record, the system further generates structured profile information for each user identity pair determined to have multiple SIM cards on a single device. This profile information can include the user identity pair identifier, the time period or number of consecutive matching days in which the user was determined to have multiple SIM cards on a single device, trajectory similarity scores at each scale level, the specific results of auxiliary verification, and the set of raster IDs and frequency of co-occurrence in historical trajectories. This structured profile information can be written into the profile database in formats such as JSON (object representation), CSV (tabular data), and Parquet (column storage), or sent to the mid-tier system for risk classification or deep learning modeling.

[0061] Through the aforementioned recognition result recording and structured profile generation process, a full-process closed-loop management mechanism for users with multiple SIM cards per device has been implemented, enabling timely incorporation of recognition results into dynamic risk modeling, behavioral pattern mining, and differentiated strategy decision-making. This significantly enhances the platform's intelligent management capabilities and response efficiency in scenarios such as fraud prevention and control, account security, and intelligent auditing. This effectively reduces the cost of human intervention and enhances the system's robustness and scalability in complex network environments.

[0062] Compared to related technologies, the solution provided in the embodiments of this application constructs user trajectory data based on communication network signaling data and combines it with multi-scale trajectory matching and auxiliary verification mechanisms to accurately identify users with multiple SIM cards on a single device. Compared to existing solutions that rely on terminal device identification, this solution does not rely on static device information, effectively avoiding risks such as device counterfeiting and tampering, and significantly improving the security and robustness of the identification system. By constructing user trajectory data in a unified plane coordinate based on communication network signaling data and building a multi-scale matching structure in both time and space, the similarity of mobility behavior between user identities can be evaluated at multiple granularity levels, thereby improving the accuracy and coverage of trajectory matching. Furthermore, by combining multi-day trajectory statistics with auxiliary verification mechanisms including traffic behavior conflicts, terminal system differences, and location conflicts, the accuracy and confidence of single-device multi-SIM identification are further improved, reducing the false positive and missed positive rates. This solution can be widely used in scenarios such as telecom operators and network security regulators. While achieving high-confidence and high-real-time single-device multi-SIM identification, it also provides strong technical support for communication network security management and user identity identification.

[0063] Second embodiment

[0064] The second embodiment of the present application relates to a method for identifying multiple cards on a single device based on communication network signaling data. The second embodiment is an improvement on the first embodiment. The specific improvement is that: in the second embodiment of the present application, a specific implementation method for generating user trajectory data based on base station location mapping and spatial rasterization processing is provided, that is, step S2 can further include the following steps:

[0065] Step S201: Obtain the longitude and latitude coordinate information corresponding to each base station location identifier, and convert the longitude and latitude coordinate information from the WGS84 coordinate system to plane coordinates in the Mercator projection coordinate system;

[0066] Step S202: performing gridding processing on the target area at a preset spatial resolution, dividing the target area into a number of equally spaced rectangular grids;

[0067] Step S203: For each rectangular grid, the number of each grid in the X-axis and Y-axis directions is calculated based on the plane coordinate distance between the grid center point and the reference base point, and a corresponding unique number is generated, thereby constructing a two-dimensional spatial grid index system;

[0068] Step S204: For the plane coordinate position corresponding to each base station access record, determine the grid number to which it belongs, and combine it with the access timestamp to form a discrete trajectory point containing time and space information;

[0069] Step S205: Arrange multiple discrete trajectory points of the same user identity within the target time period in chronological order to generate a corresponding user trajectory data sequence.

[0070] Specifically, refer to Figure 2 As shown, the base station location identifier (e.g., eNodeB ID) included in each base station access record in the signaling plane data is used to obtain the base station's physical deployment location information through a pre-configured base station engineering parameter mapping table. The corresponding longitude and latitude coordinates in the WGS84 coordinate system are then converted to x and y values ​​in the Mercator plane coordinate system using a Mercator projection transformation. After the conversion is complete, each access record is associated with a unique two-dimensional plane location point (x, y) in meters, representing the approximate projected geographic location of the user when they connected to the network through the base station.

[0071] Define a unified target area boundary (e.g., the urban area of ​​a city) and perform equidistant gridding on the area at a preset spatial resolution (e.g., 50 meters × 50 meters), dividing the entire area into a number of rectangular grids. For each rectangular grid, calculate the relative distance between its center point and the reference point in the X and Y axes based on the position of the rectangular grid center point in the Mercator coordinate system. Based on this, determine its row number (Y direction number) and column number (X direction number) in the two-dimensional index matrix. Subsequently, the row and column numbers are combined and encoded into a unique number (e.g., number = row number × total number of columns + column number), thereby establishing a unified number for each grid and constructing a complete two-dimensional spatial grid index system.

[0072] For each base station access record, the corresponding Mercator plane coordinate point is used as the spatial projection position of the user at the access moment. According to the spatial range to which the coordinate point belongs, the grid number to which it is located in the two-dimensional spatial grid index system is determined. The grid number is bound to the timestamp in the access record to form a structured discrete trajectory point. For each user identity, all the discrete trajectory points associated with it in the target time period are sorted in time to construct a trajectory data sequence arranged by time evolution. The trajectory data sequence uses the grid number as the spatial unit and the timestamp as the main line of evolution. Without relying on the terminal GPS (Global Positioning System), the user trajectory can be efficiently reconstructed using only the signaling surface data, effectively reflecting the user's spatial movement path and behavior pattern within a certain time window.

[0073] It is not difficult to find that in the embodiments of this application, through the spatial coordinate conversion and regional gridding of base station access records, user trajectory data is standardized in a unified plane coordinate system, with good spatial alignment capabilities and data consistency. By setting a preset spatial resolution to divide the target area into a two-dimensional grid and generating a unique number and index coordinate for each grid, this not only significantly simplifies the processing complexity of the original position data, but also reduces the interference of spatial errors on trajectory analysis, improving the robustness and accuracy of trajectory construction.

[0074] Third embodiment

[0075] The third embodiment of the present application relates to a method for identifying multiple cards on a single device based on communication network signaling data. The third embodiment is an improvement on the first embodiment. The specific improvement is that: in the third embodiment of the present application, a specific implementation method for pre-cleaning and optimizing trajectory data is provided, that is, before the step of mapping the user trajectory data sequence to a multi-scale matching structure constructed based on the time dimension and the space dimension, specifically including:

[0076] Monitor the number of round-trip handovers between adjacent base stations within the same time window. If the number reaches a preset threshold, mark the corresponding time period as a ping-pong interval. Within the ping-pong interval, identify points whose movement speed between adjacent trajectory points exceeds the physical threshold and remove them as abnormal points. Based on the retained trajectory points, apply Kalman filtering to predict the user's movement path and correct the coordinates of the oscillating trajectory points; and / or,

[0077] Based on terminal sampling points selected within the overlapping area of ​​base station signal coverage, a clustering algorithm is used to determine the centroid of signal coverage, and a position deviation is compared with the engineering parameter coordinates of the target base station. When the position deviation exceeds a preset deviation threshold, triangulation positioning is performed based on the terminal sampling points to infer the actual position of the target base station, and the engineering parameter coordinates of the target base station are corrected accordingly; and / or,

[0078] Using a spatiotemporal joint density clustering algorithm to identify clusters in the trajectory that meet the spatiotemporal aggregation conditions, extracting the geometric center of the cluster as the representative stay point location, and calculating the duration at the stay point location. Subsequently, using a local outlier factor algorithm to identify and remove noise trajectory points; and / or,

[0079] When it is detected that the speed between adjacent trajectory points exceeds a preset speed threshold or the heading angle change between three consecutive trajectory points exceeds a preset angle threshold, the trajectory point is marked as an abnormal trajectory point, and piecewise interpolation, cubic spline fitting and trajectory prediction based on the motion model are performed in sequence to reconstruct the trajectory continuous path and correct the coordinates of the abnormal trajectory point.

[0080] Specifically, during the communication process, the terminal may frequently switch between adjacent base stations in a short period of time, forming a typical "ping-pong effect". In this embodiment, the system sets a sliding time window (such as 5 minutes) to detect whether the user switches back and forth between two base stations multiple times within the time window. If the number exceeds the threshold (such as ≥3 times), the time period is marked as a ping-pong interval. In the ping-pong interval, the system further calculates the moving speed between adjacent trajectory points. If the speed of certain point pairs exceeds the physical movement upper limit (such as 120km / h), they are marked as abnormal points and removed. Subsequently, the Kalman filter algorithm is used to reconstruct the trajectory using the retained trajectory points to predict a reasonable moving path and correct the position jitter caused by switching oscillations.

[0081] To correct user trajectory positioning anomalies caused by incorrect configuration of base station engineering coordinates, the system introduces a base station position calibration mechanism. Specifically, multiple terminal trajectory sampling points located within the overlapping coverage area of ​​the target base station and surrounding base stations are selected as analysis samples. These sampling points are extracted from the access records reported by users when accessing the base station and have a certain degree of spatial distribution representativeness. Based on the spatial distribution characteristics of these sampling points, a density clustering algorithm (such as DBSCAN) is applied for spatial clustering. Clustering extracts clusters of data points with spatiotemporal stability within the coverage area and calculates their centroid coordinates as an estimate of the actual signal coverage center. The system compares the spatial distance between the centroid coordinates obtained from clustering and the engineering coordinates preset in the network configuration for the base station. If the deviation between the two exceeds a set spatial position threshold (e.g., 300 meters), the base station's engineering coordinate records are considered to have significant positional errors. The system then uses a triangulation positioning algorithm, combining the azimuth distribution of multiple terminal sampling points, to infer the actual deployment location of the base station and, accordingly, updates or corrects the base station's engineering coordinate data.

[0082] In user trajectory data, there is often a type of trajectory fragment that is highly clustered in position and continuously stays in time, which usually corresponds to the actual stay behavior of the user. In order to effectively extract such stay point information, this embodiment uses the ST-DBSCAN (clustering algorithm based on spatiotemporal density) algorithm to perform spatiotemporal joint clustering of discrete trajectory points, setting the time threshold to 15 minutes, the spatial distance threshold to 500 meters, and the minimum number of points to 3. Through this clustering method, the system can classify points in the trajectory that meet the "close time and close ground" conditions into the same cluster cluster. For each identified cluster cluster, the system further calculates its geometric center coordinates based on the following formula, which is used as the representative spatial position of the stay area:

[0083]

[0084] Among them, (x i ,yi) represents the plane coordinates of the i-th cluster point under the Mercator projection, k is the total number of trajectory points in the cluster, (x c ,yc) is the center position of the stop point. The system also counts the earliest and latest timestamps of the trajectory points in the cluster and calculates the user's stay time at the stop point:

[0085] Stay time = latest time - earliest time

[0086] After completing the initial clustering of the trajectory points, the local outlier factor (LOF) algorithm is used to evaluate the density of the spatial neighborhood of each trajectory point. The LOF algorithm can effectively detect outliers in a local area with a significantly lower density than neighboring points, namely "isolated points" or "drifting points."

[0087] For example, after preliminary ST-DBSCAN clustering, a candidate stay cluster containing 12 trajectory points was identified. Among them, 10 trajectory points were densely distributed in an area of ​​300 meters by 300 meters; 2 trajectory points appeared at the edge of the cluster about 800 meters away, suspected to be abnormal deviations caused by transient signal switching. The system performed the LOF algorithm on all points in the cluster, set the neighborhood size parameter k = 5, and calculated the neighborhood density LRD of each point using the following formula:

[0088]

[0089] Among them, reach-disk k (p,o) is the reachable distance from point p to its neighbor o, N k (p) is the k neighbors of point p.

[0090] Calculate the local outlier factor LOF:

[0091]

[0092] If LOF k (p)≈1 indicates that the density of the point is close to that of its neighbors and it is a normal point. k If (p)>1.5~2.0, it means that the density of the point is much lower than that of its neighbors and it is a potential outlier.

[0093] In this example, the LOF values ​​of the 10 core trajectory points are concentrated between 0.9 and 1.2, indicating balanced density. The LOF values ​​of the other two edge trajectory points, 2.8 and 3.1, are significantly higher than the average, making them outliers. After removing these two trajectory points, the system recalculates the geometric center and dwell time of the cluster, avoiding the influence of outliers on the dwell location and improving the accuracy of the final trajectory model.

[0094] In actual communication scenarios, the trajectory extracted from the signaling surface data may be affected by factors such as network jitter, abnormal base station deployment, and switching delays, resulting in some trajectory points showing unreasonable speed jumps or sudden changes in direction. To ensure the physical rationality and continuity of the trajectory data, the system in this embodiment performs a three-stage dynamic analysis and correction of the speed and direction changes of the trajectory through segmented interpolation, cubic spline fitting, and motion model prediction. The three-stage processing mechanism works together to effectively eliminate speed mutation points and direction drift points in the trajectory, and restore continuous, smooth, and physically reasonable trajectory data.

[0095] Specifically, set the speed threshold V max (such as 150km / h) and the heading angle change threshold θ max (such as 45°), continuously detect any two adjacent points P in the trajectory point sequencei , P i+1 The speed between them exceeds V max ,Right now:

[0096]

[0097] Alternatively, it is detected that the angle θ formed by any three consecutive points exceeds the threshold θ max , that is, there is an obvious return or unnatural turn. Once any of the above conditions are met, the system will determine that the trajectory segment is an abnormal drift segment and enter the repair process.

[0098] For the abnormal trajectory points removed in the drift segment, if they cause the trajectory to be broken, the system will first use the linear interpolation method on the time axis to fill them. k The segment where it is located uses the two valid trajectory points before and after it (t k-1 ,P k-1 )、(t k+1 ,P k+1 ) to perform linear interpolation, which can quickly complete the time continuity of the trajectory link:

[0099]

[0100] To avoid the problem of broken line jumps or sudden angle changes in the trajectory, the system performs cubic spline curve fitting on the current trajectory segment. This method constructs a function of the following form in each trajectory segment:

[0101] S i (t) = a i +b i (tt i )+c i (tt i ) 2 +d i (tt i ) 3

[0102] Among them, S i (t) is the estimated value of the trajectory position at time point t, calculated by the i-th spline curve; t i is the starting time point of the i-th spline curve, corresponding to the timestamp of a certain trajectory point; a i is the spline curve at time t i Function value on b i For the spline curve at t i The first-order derivative at represents the initial velocity trend of the curve; c i For the spline curve at t i A part of the second-order derivative at d is used to ensure the continuity of acceleration; i For the spline curve at ti The third derivative at controls the curvature of the trajectory between the two points. This fitting results in a smooth transition of the trajectory, making it more consistent with the actual physical movement path, improving spatial smoothness and readability.

[0103] To enhance the naturalness and interpretability of the trajectory segments in terms of motion trends, a common kinematic model is used to predict subsequent points in the trajectory. For example, the constant acceleration model is used:

[0104]

[0105] Among them, P t+Δt represents the predicted location coordinates of the user at the future time t+Δt; P t represents the spatial position coordinates of the user at time t; v t is the current speed estimate; a t is the average acceleration obtained by fitting the three most recent points; Δt is the prediction interval. This stage allows for trajectory extension in intervals lacking signaling samples, maintaining a smooth and natural trajectory. This is suitable for boundary completion and trajectory extension analysis scenarios.

[0106] It is not difficult to see that in this embodiment of the application, the above-mentioned cleaning mechanism effectively solves the trajectory noise and structural deviation problems caused by factors such as frequent handoffs, base station mismatches, static aggregation, or transient anomalies in the communication environment, thereby improving the stability, reliability, and expression integrity of user trajectory data. It provides higher-quality basic data support for subsequent trajectory similarity calculation and single-device multi-card recognition.

[0107] It should be noted that the third embodiment of the present application may also be an improvement based on any one or more of the first to second embodiments.

[0108] Fourth embodiment

[0109] The fourth embodiment of the present application relates to a method for identifying multiple cards on a single device based on communication network signaling data. The fourth embodiment is an improvement on the first embodiment. Specifically, the fourth embodiment provides a specific implementation method for constructing a multi-scale trajectory matching structure based on the time and space dimensions to enhance the accuracy of trajectory similarity analysis. That is, step S3 can further include the following steps:

[0110] Step S301: Divide the user trajectory data sequence into multiple scale levels according to the time dimension and the spatial dimension to form a matching structure containing different time intervals and spatial grid granularities;

[0111] Step S302: At each scale level, grid mapping and time alignment are performed on the trajectory points of different user identities according to the preset time interval and spatial grid granularity, and their matching scores at the current scale are calculated.

[0112] Step S303: A preset weight coefficient is assigned to each scale level. The weight coefficient increases as the scale granularity decreases. The matching scores at all scale levels are weighted and fused according to the weight coefficient to obtain the final trajectory similarity score.

[0113] Specifically, the trajectory data sequence corresponding to each user identity is divided into multiple scales according to the time dimension and the space dimension. The optional scales of the time dimension can be, for example, 5 minutes, 15 minutes, 30 minutes, etc.; the space dimension can be set to a grid granularity of 50 meters, 100 meters, 200 meters, etc. Each pair of time-space scale combinations constitutes a matching level, for example, "5min-50m" is the first level, "15min-100m" is the second level, and "30min-200m" is the third level. Figure 3 As shown in Figure 1, the entire trajectory space is organized in a multi-layered structure, with different layers representing different temporal and spatial resolutions, forming a trajectory structure index with multiple granularity levels. The grids in each layer represent the combination of a specific time period and spatial region, with grid numbers such as "111" and "112." The dotted lines indicate the mapping paths of user trajectories at different levels. It can be seen that at lower levels (fine-scale), trajectories have wider coverage and higher matching accuracy, while at higher levels (coarse-scale), paths are sparser.

[0114] At each scale level, the user's trajectory points are mapped to the spatial grid of the current scale, and the time axis is sliced ​​according to the current time interval. If the trajectory points of user A and user B fall into the same or adjacent spatial grid within the same time window, it is considered a trajectory point match; the total number of matching point pairs is counted and normalized to the matching score at that scale level. For example, if there are a total of 20 time windows at a certain level, and the trajectory grids of the two users overlap in 15 of them, the matching score for that level is 15 / 20 = 0.75. Common matching metrics include Jaccard similarity (Jaccard similarity coefficient or intersection-over-union ratio, used to measure the similarity of two sets) or cosine similarity (cosine similarity, used to measure the angle between two vectors to determine directional consistency), etc., which are used to improve matching accuracy.

[0115] Taking into account the different sensitivities of different scales to trajectory behavior, the system configures corresponding weight coefficients for each layer (for example, first layer: 0.5, second layer: 0.3, third layer: 0.2), and performs trajectory matching score fusion according to the following formula:

[0116]

[0117] Where L is the total number of scale levels; τ l Indicates the trajectory matching score of point sets X and Y at the lth scale level; K L (X, Y) represents the final trajectory similarity score obtained by fusing the matching scores of all scale levels from layer 1 to layer L; It is used to balance the weighted items of different scales, so that the finer the scale, the greater the weight given.

[0118] This fusion approach allows for unified calculation of trajectory matching scores at different scales, taking into account both the long-term co-occurrence of user trajectories at a coarse granularity and the detailed co-tracking at a fine granularity, enabling a multi-level, comprehensive assessment of trajectory similarity between user identities. This approach effectively improves the stability and discriminative power of the final trajectory similarity score, enhancing the algorithm's robustness and generalization capabilities in complex scenarios such as sampling noise, behavioral differences, and partial occlusion.

[0119] It is not difficult to find that in the embodiment of the present application, by introducing a multi-scale trajectory matching structure based on the time dimension and the spatial dimension, it is possible to comprehensively measure the similarity of mobile behaviors between user identities at different granularities. This embodiment divides the trajectory data into multiple time intervals and spatial grid granularity levels, calculates the matching scores at different scales respectively, and then fuses them based on preset weights. It not only retains the stability characteristics of the long-term co-occurrence of user trajectories at coarse granularity, but also takes into account the difference discrimination ability of short-term fine trajectories at fine granularity. Compared with the single-scale matching method, it can significantly improve the robustness and discrimination of trajectory similarity calculation, avoid the information bias problem caused by improper granularity selection, and effectively enhance the credibility of trajectory comparison results in multi-card recognition of one machine.

[0120] It should be noted that the fourth embodiment of the present application may also be an improvement based on any one or more of the first to third embodiments.

[0121] The step division of the above various methods is only for the purpose of clear description. During implementation, they can be combined into one step or some steps can be split and decomposed into multiple steps. As long as they include the same logical relationship, they are all within the scope of protection of this application; adding insignificant modifications or introducing insignificant designs to the algorithm or process without changing the core design of the algorithm and process are all within the scope of protection of this application.

[0122] In addition, some embodiments of the present application further provide an electronic device. The electronic device may be various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, etc. The electronic device may also be various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices.

[0123] The electronic device includes: one or more processors; and a memory storing computer program instructions, and when the computer program instructions are executed, the processor executes a method for identifying multiple cards on a single machine based on communication network signaling plane data as provided in any one or more of the above embodiments. Figure 4 An exemplary structural diagram of the electronic device is disclosed. The electronic device includes: one or more processors 1101, a memory 1102, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses and can be installed on a common mainboard or installed in other ways as needed. The processor can process instructions executed in the electronic device, including instructions stored in or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some other embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, and each device provides some necessary operations. Among them, the components shown in this article, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or required herein.

[0124] The electronic device may further include: an input device 1103 and an output device 1104. The processor 1101, the memory 1102, the input device 1103 and the output device 1104 may be connected via a bus or other means. Figure 4 The bus connection is taken as an example.

[0125] The input device 1103 can receive input digital or character information and generate key signal input related to user settings and function control of the electronic device, such as input devices such as a touch screen, a keypad, a mouse, a trackpad, a touch pad, an indicator stick, one or more mouse buttons, a trackball, and a joystick. The output device 1104 may include a display device, an auxiliary lighting device (e.g., an LED), and a tactile feedback device (e.g., a vibration motor). The display device may include, but is not limited to, a liquid crystal display, a light emitting diode display, and a plasma display. In some embodiments, the display device may be a touch screen.

[0126] To provide interaction with a user, the electronic device may be a computer. The computer may include a display device (e.g., a cathode ray tube or LCD monitor) for displaying information to the user, and a keyboard and pointing device (e.g., a mouse) through which the user can provide input to the computer. Other types of devices may also be used to provide interaction with the user. For example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback), and input from the user may be received in any form (e.g., voice input or tactile input).

[0127] In an embodiment of the present application, a computer-readable medium stores a computer program / instruction. When executed by a processor, the computer program / instruction implements a method for identifying multiple cards in a single device based on communication network signaling plane data, as provided in any one or more of the above-described embodiments. The computer-readable medium may be included in the electronic device described in the above-described embodiments, or it may exist independently and not be incorporated into the device. The computer-readable medium carries one or more computer-readable instructions.

[0128] The memory 1102 can be used as a non-transitory computer-readable storage medium to store non-transitory software programs, non-transitory computer executable programs, and modules. The processor 1101 executes the non-transitory software programs, instructions, and modules stored in the memory 1102 to execute various functional applications and data processing of the server, thereby implementing the program instructions / modules corresponding to the method provided in any one or more of the above embodiments of the present application.

[0129] The memory 1102 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and applications required for at least one function; the data storage area may store data created based on the use of the electronic device, etc. In addition, the memory 1102 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory 1102 may optionally include a memory remotely located relative to the processor 1101, and these remote memories may be connected to the electronic device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0130] It should be noted that the computer-readable medium described in this application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above. Computer-readable media may be, for example, but not limited to: electrical, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or components, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory, a read-only memory, an erasable programmable read-only memory, an optical fiber, a portable compact disk read-only memory, an optical storage device, a magnetic storage device, or any suitable combination of the above. In this application, a computer-readable medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, device or device.

[0131] Computer-readable media includes both permanent and non-permanent, removable and non-removable media, and can be implemented using any method or technology for information storage. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change memory, static random access memory, dynamic random access memory, other types of random access memory, read-only memory, electrically erasable programmable read-only memory, flash memory or other memory technology, compact discs, digital versatile discs or other optical storage, magnetic cassettes, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device.

[0132] Computer program code for performing the operations of the present application can be written in one or more programming languages, or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as C or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network or a wide area network, or can be connected to an external computer (e.g., through the Internet using an Internet service provider).

[0133] In the above-described embodiment, can realize wholly or in part by software, hardware, firmware or its arbitrary combination.For example, can adopt application-specific integrated circuit, general-purpose computer or any other similar hardware device to realize.In certain embodiments, the software program of the present application can be carried out to realize above steps or function by processor.Similarly, the software program of the present application (comprising relevant data structure) can be stored in computer-readable recording medium, for example, RAM memory, magnetic or optical drive or floppy disk and similar device.In addition, some steps or functions of the present application can adopt hardware to realize, for example, as the circuit that cooperates with processor to perform each step or function.

[0134] The computer program product provided by the embodiment of the present application includes one or more computer programs / instructions, and when the computer program / instructions are executed by the processor, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instruction can be stored in a computer-readable storage medium, or transmitted from a computer-readable storage medium to another computer-readable storage medium. For example, the computer instruction can be transmitted from a website, a computer, a server or a data center by wired (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) mode to another website, a computer, a server or a data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server, a data center that includes one or more available media integrations. The available medium can be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid-state hard disk) etc.

[0135] The flowcharts or block diagrams in the accompanying drawings illustrate the possible architectures, functions and operations of the devices, methods and computer program products according to various embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, program segment or part of code, and the module, program segment or part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, as well as the combination of boxes in the block diagram and / or flowchart, can be implemented with a dedicated hardware-specific system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0136] The scope of this application is defined by the appended claims rather than the foregoing description and is therefore intended to encompass within this application all changes that come within the meaning and range of equivalents of the claims. Any reference signs in the claims should not be construed as limiting the claims to which they relate. In addition, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices stated in a device claim may also be implemented by one unit or device through software or hardware. Words such as "first" and "second" are only used to distinguish the description and do not indicate any particular order, nor should they be understood as indicating or implying relative importance.

[0137] The above descriptions are merely specific embodiments of the present application, but the scope of protection of the present application is not limited thereto. Any person skilled in the art may easily propose variations or substitutions within the technical scope disclosed in the present application, and such variations or substitutions shall be encompassed within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be subject to the scope of protection of the claims, and the above descriptions shall be regarded as exemplary and non-limiting.

Claims

1. A method for identifying multiple cards on a single device based on communication network signaling data, characterized in that: include: Collect communication network signaling data for multiple user identities and extract base station access records for each user identity within the target time period; Converting the base station location identifier in the base station access record into a spatial location point in a unified plane coordinate system, dividing the target area into grids based on a preset spatial resolution, and generating a corresponding user trajectory data sequence; Mapping the user trajectory data sequence to a multi-scale matching structure built based on time and space dimensions, calculating the trajectory matching degree between different user identities at multiple scale levels, and fusing the weights set at each scale level to determine the trajectory similarity score; Based on the trajectory similarity score, the matching of user identity pairs in multiple time periods or multiple dates is counted, and user identity pairs that meet the multi-day trajectory similarity are selected; Auxiliary verification is performed on user identity pairs that meet multi-day trajectory similarity. If the user identity pair meets the same-terminal judgment condition, the user identity pair is determined to be a one-device multi-SIM user. The auxiliary verification includes: detecting whether there is simultaneous traffic behavior in the same time period, detecting operating system type differences, and detecting spatial location conflicts.

2. The method for identifying multiple cards on a single device based on communication network signaling data according to claim 1, characterized in that: The step of converting the base station location identifier in the base station access record into a spatial location point in a unified plane coordinate system, dividing the target area into grids based on a preset spatial resolution, and generating a corresponding user trajectory data sequence includes: Obtaining the latitude and longitude coordinate information corresponding to each base station location identifier, and converting the latitude and longitude coordinate information from the WGS84 coordinate system to plane coordinates in the Mercator projection coordinate system; Gridding the target area at a preset spatial resolution to divide the target area into a number of equally spaced rectangular grids; For each rectangular grid, the X-axis and Y-axis numbers of each rectangular grid are calculated based on the plane coordinate distance between the grid center point and the reference reference point, and the corresponding unique numbers are generated, thereby constructing a two-dimensional spatial grid index system; For the plane coordinate position corresponding to each base station access record, determine the grid number to which it belongs, and combine it with the access timestamp to form a discrete trajectory point containing time and space information; Arrange multiple discrete trajectory points of the same user identity within the target time period in chronological order to generate the corresponding user trajectory data sequence.

3. The method for identifying multiple cards on a single device based on communication network signaling data according to claim 1, characterized in that: Before mapping the user trajectory data sequence to a multi-scale matching structure constructed based on the time dimension and the space dimension, the user trajectory data sequence is subjected to trajectory cleaning processing, specifically including: Monitor the number of round-trip handovers of the terminal between adjacent base stations within the same time window. If a preset number threshold is reached, mark the corresponding time period as a ping-pong interval. Within the ping-pong interval, determine the points between adjacent trajectory points whose movement speed exceeds a physical threshold and remove them as abnormal points. Based on the retained trajectory points, apply Kalman filtering to predict the user's movement path and correct the coordinates of the oscillating trajectory points; and / or, Based on terminal sampling points selected within the overlapping area of ​​base station signal coverage, a clustering algorithm is used to determine the centroid position of the signal coverage, and a position deviation is compared with the engineering parameter coordinates of the target base station. When the position deviation exceeds a preset deviation threshold, triangulation positioning is performed based on the terminal sampling points to infer the actual position of the target base station, and the engineering parameter coordinates of the target base station are corrected accordingly; and / or, Using a spatiotemporal joint density clustering algorithm to identify clusters in the trajectory that meet spatiotemporal aggregation conditions, extracting the geometric center of the cluster as the representative stay point location, and calculating the duration at the stay point location, and then using a local outlier factor algorithm to identify and remove noise trajectory points; and / or, When it is detected that the speed between adjacent trajectory points exceeds a preset speed threshold or the heading angle change between three consecutive trajectory points exceeds a preset angle threshold, the trajectory point is marked as an abnormal trajectory point, and piecewise interpolation, cubic spline fitting and trajectory prediction based on the motion model are performed in sequence to reconstruct the trajectory continuous path and correct the coordinates of the abnormal trajectory point.

4. The method for identifying multiple cards on a single device based on communication network signaling data according to claim 1, characterized in that: The step of mapping the user trajectory data sequence to a multi-scale matching structure constructed based on the time dimension and the space dimension, calculating the trajectory matching degree between different user identities at multiple scale levels, and fusing the weights set at each scale level to determine the trajectory similarity score includes: Dividing the user trajectory data sequence into multiple scale levels according to the time dimension and the space dimension to form a matching structure containing different time intervals and spatial grid granularities; At each scale level, according to the preset time interval and spatial grid granularity, the trajectory points of different user identities are grid mapped and time aligned, and their matching scores at the current scale are calculated. Each scale level is assigned a preset weight coefficient, which increases as the scale granularity decreases. The matching scores at all scale levels are weighted and fused according to the weight coefficient to obtain the final trajectory similarity score.

5. The method for identifying multiple cards on a single device based on communication network signaling plane data according to claim 1, characterized in that: The step of collecting statistics on the matching of user identity pairs in multiple time periods or multiple dates based on the trajectory similarity scores and selecting user identity pairs that meet the multi-day trajectory similarity includes: Compare the trajectory similarity score of each user identity pair in each target time period with the preset similarity threshold; If the trajectory similarity score within the target time period is greater than the similarity threshold, marking the target time period as a matching time period; Count the number of times each user identity pair is marked as a matching time period or the number of consecutive matching days within a preset date range; If the statistical result meets the set multi-day matching determination condition, the user identity pairs are filtered to be user identity pairs that meet the multi-day trajectory similarity.

6. The method for identifying multiple cards on a single device based on communication network signaling data according to claim 1, characterized in that: The step of performing auxiliary verification on a user identity pair that satisfies multi-day trajectory similarity, and determining that the user identity pair is a one-device multi-SIM user when the user identity pair satisfies a same-terminal determination condition, includes: For user identity pairs that meet multi-day trajectory similarity, collect their corresponding communication behavior data within the same time period to detect whether there is simultaneous communication traffic activity. If there is simultaneous communication behavior, it is determined that they are different terminal users; and / or, Extracting the terminal operating system identifier corresponding to the user identity pair within the target time period, and if the operating system types are inconsistent, determining that the user is a different terminal user; and / or, Compare the positions of trajectory points within the same time period. If two user identities appear at the same time at locations that are more than a preset distance apart, they are determined to be different terminal users. Only when the user identity pair is not determined to be a different terminal user in multiple auxiliary verifications, it is determined that the same terminal determination condition is met, and the user identity pair is further identified as a one-device multi-card user.

7. The method for identifying multiple cards on a single device based on communication network signaling plane data according to any one of claims 1 to 6, characterized in that: Also includes: The recognition results of users with multiple SIM cards on one device are synchronized to the user behavior analysis system for recording and marking. Structured user portrait data of users with multiple SIM cards on one device is generated based on the recognition results. The recognition results include user identity information of users with multiple SIM cards on one device, corresponding matching time periods, trajectory similarity scores at various scales, and auxiliary verification results.

8. An electronic device, characterized in that: The electronic device comprises: One or more processors; and a memory storing computer program instructions, wherein when the computer program instructions are executed, the processor executes the one-machine multi-card identification method based on communication network signaling plane data as described in any one of claims 1-7.

9. A computer-readable storage medium having a computer program and / or instructions stored thereon, characterized in that: When the computer program and / or instructions are executed by a processor, the method for identifying multiple cards on a single machine based on communication network signaling plane data is implemented as described in any one of claims 1 to 7.

10. A computer program product comprising a computer program and / or instructions, characterized in that When the computer program and / or instruction is executed by a processor, the method for identifying multiple cards on a single machine based on communication network signaling plane data is implemented.

Citation Information

Patent Citations

  • One-machine multi-card user discrimination method based on track similarity

    CN110958599A

  • Method for judging number of one-machine multi-card users in regional population based on track similarity

    CN110958600A

  • One-machine multi-number identification method, device, equipment and medium

    CN117596723A

  • High-precision spatio-temporal trajectory recovery method based on cell phone signaling data

    US20240276446A1