A user profile tag value analysis method and system
By fitting and matching virtual user data in a spatial coordinate system, identifying and processing unmatched point groups, the label conversion of user profiles across platforms is realized, solving the data sharing difficulties caused by differences in label systems and supporting multi-platform collaborative applications.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN SUOXINDA DATA TECH CO LTD
- Filing Date
- 2025-11-10
- Publication Date
- 2026-05-01
AI Technical Summary
Existing unsupervised learning methods in user profile tag analysis suffer from differences in clustering algorithms and the choice of normalization scale, resulting in the inability to directly convert tag systems. This leads to difficulties in cross-platform data sharing and tag matching, especially in the case of information loss, where there is a lack of effective matching mechanisms.
By generating virtual user data, processing it with clustering models of different subjects, fitting and matching it in a spatial coordinate system, identifying unmatched point groups, determining reference dimensions and performing segmentation and scaling, recording transformation vectors and segmentation/scaling vectors, and realizing coordinate transformation to obtain user profile conversion across tag systems.
Without sharing the original data, it achieves cross-tag system user profile conversion, solves the tag matching problem caused by loss of normalization information, and supports collaborative application of user profiles on multiple platforms.
Smart Images

Figure CN121093025B_ABST
Abstract
Description
A method and system for analyzing user profile tag values Technical Field
[0001] This invention relates to the field of data analysis technology, specifically a method and system for analyzing user profile tag values. Background Technology
[0002] User profile tags are obtained through mining user basic information or user behavior information. Tag definitions are generally human-defined, such as "age" and "gender," but can also be defined through unsupervised learning, such as "shopping preferences" and "preferred prices" on shopping websites. Existing unsupervised learning algorithms, such as clustering algorithms, do not inherently define user behavior tags in advance. Instead, they normalize user behavior and project it into a high-dimensional space to form a distribution of points. Similarities are found by statistically analyzing the clusters formed by these high-dimensional point distributions—a concrete manifestation of the principle "birds of a feather flock together." The final tag values generated by user profile analysis heavily depend on how user behavior was initially normalized, and the parameters of the clustering algorithm also influence the characteristics of the final clusters.
[0003] Different companies use different clustering algorithms for similar user data, resulting in inconsistencies in labeling systems that cannot be directly converted. The choice of normalization scale affects clustering results; for example, segmenting continuous values using a logarithmic scale versus a linear scale will change the position, shape, and number of clusters formed after projecting them into a high-dimensional space. Some normalization methods can cause information loss, categorizing previously distinguishable user features into the same interval, leading to decreased clustering accuracy. Differences in parameter settings between different clustering algorithms can also cause spatial clusters to rotate, stretch, or split, resulting in a lack of mapping between two labeling systems. When companies need to collaborate on user profiles across different systems but cannot directly share raw data, data integration is impossible due to differences in labeling systems. Current technologies lack methods to establish cross-label conversion by analyzing the geometric transformation relationships of spatial clusters, and also lack label matching mechanisms for situations where normalization information is lost. Summary of the Invention
[0004] (1) Technical problems to be solved
[0005] The purpose of this invention is to provide a user profile tag value analysis method and system to solve the problem of cluster feature tag transformation in the case of cross-platform data non-sharing.
[0006] (2) Technical solution
[0007] To achieve the above objectives, on the one hand, the present invention provides a user profile tag value analysis method, the method comprising:
[0008] Obtain the user profile tag values of the first subject and map them to a spatial coordinate system to form a first user discrete point group;
[0009] A virtual user dataset is generated based on the statistical distribution characteristics of the first subject user profile label values. The virtual user dataset is then input into the first subject clustering model and the second subject clustering model for processing to obtain the corresponding user profile label values, which are then mapped to space to form the first simulated discrete point group and the second simulated discrete point group. The first simulated discrete point group and the second simulated discrete point group are used to perform spatial fitting and matching in space and the transformation vector is recorded. Unmatched discrete point groups are identified during the spatial fitting process.
[0010] The label dimension corresponding to each discrete point in the unmatched discrete point group is identified as the reference dimension. The first subject and the second subject with fewer discrete points in the reference dimension are identified as the first point group and the second point group with more discrete points are identified as the second point group. The first point group is segmented and scaled according to the statistical distribution characteristics of the second point group in the label dimensions other than the reference dimension, and the segmentation and scaling vector is recorded.
[0011] The first user discrete point group is transformed into a second user discrete point group by using a transformation vector and a split scaling vector. The user profile tag value of the second subject is obtained from the second user discrete point group.
[0012] Furthermore, the method for identifying unmatched discrete point groups during the spatial fitting process by performing spatial fitting and matching using a first simulated discrete point group and a second simulated discrete point group and recording the transformation vector includes:
[0013] Define a spatial coordinate system, where each axis corresponds to a dimension of the user profile tag value. Within this system, fit the first and second simulated discrete point groups to obtain a first curve and a second curve using spline interpolation, respectively. Then, take equidistant points on the first curve... The set of sampling points is Meanwhile, take equal intervals on the second curve. The set of sampling points is ,in For the number of label dimensions, The value ranges from 1 to Integer variables; through the movement vector The second curve is moved to the first curve for superposition and fitting; the sum of the squared Euclidean distances between the first and second curves is used. for:
[0014] ;
[0015] Input the coordinate data of the sampling point set to obtain... , … Under the conditions The transformation vector is used to superimpose and fit the second curve onto the first curve; after the second curve is superimposed and fitted onto the first curve, the Euclidean distance between a point on the first curve and its corresponding projection point on the second curve is calculated. for:
[0016] ;
[0017] in It is a point on the first curve. It is a point on the first curve. Points projected onto the second curve; Euclidean distance The area corresponding to a point that exceeds a set distance threshold is marked as an unmatched area.
[0018] Further, the method of determining the label dimension corresponding to each discrete point in the unmatched discrete point group as the reference dimension, and classifying the first subject and the second subject with fewer discrete points in the reference dimension as the first point group and more discrete points as the second point group, and then segmenting and scaling the first point group according to the statistical distribution characteristics of the second point group in label dimensions other than the reference dimension and recording the segmentation and scaling vector includes:
[0019] In the unmatched discrete point groups, calculate the density difference of discrete points in each label dimension for the first simulated discrete point group and the second simulated discrete point group, and select the label dimension with the largest density difference as the reference dimension; count the number of discrete points in the first simulated discrete point group on the reference dimension and record it as the first quantity, and count the number of discrete points in the second simulated discrete point group and record it as the second quantity; when the first quantity is less than the second quantity, the discrete points of the first simulated discrete point group on the reference dimension are recorded as the first point group, and the discrete points of the second simulated discrete point group on the reference dimension are recorded as the second point group; when the first quantity is greater than or equal to the second quantity, the discrete points of the second simulated discrete point group on the reference dimension are recorded as the first point group, and the discrete points of the first simulated discrete point group on the reference dimension are recorded as the second point group.
[0020] Calculate the distance between each discrete point in the second point group across all label dimensions except the reference dimension, and record the median distance as the baseline distance. Record the coordinates of each discrete point in the first point group across all label dimensions, and calculate the distance between adjacent discrete points in the first point group across all label dimensions. When the distance between two adjacent discrete points in the first point group is greater than the baseline distance, insert a new discrete point between these two adjacent discrete points. The coordinates of the new discrete point in the reference dimension are calculated by linear interpolation, and the coordinates of the new discrete point in other label dimensions are calculated by Gaussian kernel density estimation based on the statistical distribution characteristics of the second point group across all label dimensions.
[0021] Record the number of discrete points before the first point group is divided into two groups, and record the number of discrete points after the division. Calculate the scaling ratio by dividing the number of points after the division by the number of points before the division. Record the coordinate offset of the newly inserted discrete points in the reference dimension and the coordinate offset of the newly inserted discrete points in other label dimensions. Combine the scaling ratio, reference dimension identifier, and coordinate offset as the scaling vector.
[0022] Furthermore, the method for calculating the coordinates of the new discrete points in other label dimensions using the Gaussian kernel density estimation method based on the statistical distribution characteristics of the second point group in other label dimensions includes:
[0023] Obtain the second point group in the dimension other than the reference dimension. The set of coordinates of all discrete points along each label dimension is denoted as . ,in Let be the number of discrete points in the second point group. The value ranges from 1 to Integer variables, The value ranges from 1 to Integer variables; calculate the second point group at the th... Bandwidth parameters at each label dimension for:
[0024] ;
[0025] in For the second point group in the th The standard deviation of the coordinate values on each label dimension This is the preset bandwidth adjustment factor. For preset power parameters, This is the preset sample size adjustment coefficient; for a new discrete point to be inserted in the first point group, its value at the th... Coordinates of each label dimension probability density function for:
[0026] ;
[0027] in Let be the Gaussian kernel function; in the... Candidate coordinate values are generated by sampling at equal intervals within the range of coordinate values for each label dimension. The probability density function value corresponding to each candidate coordinate value is calculated, and the candidate coordinate value with the largest probability density function value is selected as the new discrete point at the i-th label dimension. Coordinates of the new discrete point in each label dimension; until the coordinates of the new discrete point in all other label dimensions are obtained.
[0028] Furthermore, the method of recording the coordinate offset of the newly inserted discrete point in the reference dimension, recording the coordinate offset of the newly inserted discrete point in other label dimensions, and combining the segmentation scaling ratio, reference dimension identifier, and coordinate offset as the segmentation scaling vector includes:
[0029] In the first point group, for each pair of adjacent discrete points between which a new discrete point needs to be inserted, the discrete point with the smaller coordinate value in the reference dimension is denoted as the point before insertion, and its coordinate value in the reference dimension is denoted as... The discrete point with the larger coordinate value in the reference dimension will be recorded as the insertion point, and its coordinate value in the reference dimension will be recorded as... The coordinates of the newly inserted discrete point in the reference dimension are denoted as... ;
[0030] Calculate the coordinate offset of the newly inserted discrete point relative to the point before insertion in the reference dimension. For label dimensions other than the reference dimension, process each other label dimension sequentially, and insert the coordinates of the previous point in the currently processed label dimension, denoted as . The coordinates of the inserted point are denoted as... The coordinates of the newly inserted discrete point are denoted as ;
[0031] Calculate the average coordinates of the point before and after insertion in the dimensions of the current label. ; Calculate the coordinate offset of the newly inserted discrete point relative to the average coordinates in the current other label dimensions. ;
[0032] Arrange the reference dimension coordinate offsets of all newly inserted discrete points in the first point group in ascending order of their coordinate values on the reference dimension to form a reference dimension offset sequence. For each other label dimension, arrange the coordinate offsets of all newly inserted discrete points in the first point group on other label dimensions in ascending order of their coordinate values on the reference dimension to form an other label dimension offset sequence. Combine the split scaling ratio, the dimension number of the reference dimension, the reference dimension offset sequence, and all other label dimension offset sequences in sequence to form a split scaling vector.
[0033] Furthermore, the method of obtaining the second user discrete point group by performing coordinate transformation on the first user discrete point group through transformation vector and split scaling vector, and obtaining the user profile tag value of the second subject through the second user discrete point group includes:
[0034] Obtain the coordinates of each discrete point in the first user discrete point group, and label the coordinates of each discrete point as the first coordinate. Apply the transformation vector to each discrete point in the first user's discrete point group. Perform a coordinate translation to obtain the translated coordinates, which are then designated as the second coordinate system. ;
[0035] Extract the dimension number of the reference dimension from the split and scaled vector, and denote it as the reference dimension number. The scaling factor for the extracted segments is denoted as the segmentation ratio. Extract the reference dimension offset sequence and all other label dimension offset sequences; for each discrete point in the first user discrete point group, determine whether the coordinate value of the discrete point in the reference dimension is within the interval that needs to be segmented and scaled. If it is within the segmentation and scaling interval, then the discrete point is segmented and scaled. If it is not within the segmentation and scaling interval, then the second coordinate of the discrete point remains unchanged.
[0036] For a discrete point located within the segmentation scaling interval, the corresponding reference dimension coordinate offset is found in the reference dimension offset sequence based on the coordinate value of the discrete point in the reference dimension, and recorded as the offset. Find the corresponding offset of other label dimensions in the offset sequence of other label dimensions, and record it as the offset. Add the offset to the coordinate values of the reference dimension in the second coordinate system of the discrete point. Add the corresponding offset to the coordinate values of other label dimensions in the second coordinate of the discrete point to obtain the coordinates after segmentation and scaling, which is called the third coordinate.
[0037] The coordinate set obtained after transforming, translating, and scaling all discrete points is taken as the second user discrete point group. The coordinate values of each label dimension are mapped back to the user profile label value system of the second subject through the coordinate values of each discrete point in the second user discrete point group, so as to obtain the second subject user profile label value corresponding to each discrete point. The second subject user profile label values corresponding to all discrete points in the second user discrete point group are summarized to form the user profile label value set of the first user under the second subject label system.
[0038] Based on the same inventive concept, in another aspect, the present invention also provides a user profile tag value analysis system, which is used to perform the aforementioned user profile tag value analysis method.
[0039] (3) Beneficial effects
[0040] Compared with existing technologies, this invention can achieve cross-tag system user profile conversion without sharing original user data, solve the tag matching problem caused by loss of normalization information, and support collaborative application of user profiles on multiple platforms. Attached Figure Description
[0041] Figure 1 is a flowchart of a user profile tag value analysis method according to Embodiment 1 of the present invention. Detailed Implementation
[0042] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0043] Before providing examples, it's necessary to describe the application scenario of this invention. Taking an e-commerce platform as an example, the first entity mainly sells product I, and the second entity mainly sells product II. Both companies have a large user base and have categorized users using tags. However, due to relevant laws and data security considerations, they cannot directly share raw user behavior data. The first entity uses a user profile classification model that normalizes user spending amounts on a logarithmic scale and divides them into multiple tiers. It uses the DBSCAN density clustering algorithm with a minimum cluster size parameter of 50, forming 12 user clusters labeled A1 to A12. The second entity uses a classification model that normalizes user spending amounts on a linear scale and divides them into fewer tiers. It uses the K-means clustering algorithm with a cluster size parameter of 8, forming 8 user clusters labeled B1 to B8. The two tagging systems have different tag numbers, naming rules, and corresponding user characteristic ranges. A high-value user labeled A5 by the first entity cannot be identified by the second entity as corresponding to tag B3, B4, or another tag under the second entity's system. Of course, with the increasingly segmented analysis of user groups, there may be hundreds of such tags, making the analysis and transformation of model tag values difficult. Therefore, it is necessary to use simulated virtual user data and two separate classification models to generate corresponding user profile tag values, then find the mapping relationship between the two, and process any missing information accordingly (different tag values may be missing from the first subject or the second subject). Finally, the first subject finds user profile tag value information that can be transformed into usable information for the second subject through the mapping relationship.
[0044] Example 1: As shown in Figure 1, this example provides a user profile tag value analysis method, the method including:
[0045] Obtain the user profile tag values of the first subject and map them to a spatial coordinate system to form a first user discrete point group;
[0046] A virtual user dataset is generated based on the statistical distribution characteristics of the first subject user profile label values. The virtual user dataset is then input into the first subject clustering model and the second subject clustering model for processing to obtain the corresponding user profile label values, which are then mapped to space to form the first simulated discrete point group and the second simulated discrete point group. The first simulated discrete point group and the second simulated discrete point group are used to perform spatial fitting and matching in space and the transformation vector is recorded. Unmatched discrete point groups are identified during the spatial fitting process.
[0047] The label dimension corresponding to each discrete point in the unmatched discrete point group is identified as the reference dimension. The first subject and the second subject with fewer discrete points in the reference dimension are identified as the first point group and the second point group with more discrete points are identified as the second point group. The first point group is segmented and scaled according to the statistical distribution characteristics of the second point group in the label dimensions other than the reference dimension, and the segmentation and scaling vector is recorded.
[0048] The first user discrete point group is transformed into a second user discrete point group by using a transformation vector and a split scaling vector. The user profile tag value of the second subject is obtained from the second user discrete point group.
[0049] For example, data from 8,600 users of a certain e-commerce platform's primary entity are obtained. These users have been divided into 12 tag categories using the primary entity's clustering model, labeled as tag category 1 to category 12. The primary entity's clustering model uses a logarithmic scaling normalization method to process the users' raw behavioral data, including three indicators: average monthly spending, monthly purchase frequency, and average order value. After normalization, density clustering algorithm is used to generate tags. Each tag category corresponds to a centroid coordinate in three-dimensional space. The centroid coordinates of the 12 tag categories are labeled in a three-dimensional coordinate system, with the first dimension being the normalized value of average monthly spending, the second dimension being the normalized value of monthly purchase frequency, and the third dimension being the normalized value of average order value. Eight thousand users were mapped to a three-dimensional space according to the centroid coordinates of their respective tag categories. Users with the same tag were mapped to the same centroid position, forming a first set of 8,600 discrete points. Tag category 1 had 720 users, tag category 2 had 680 users, tag category 3 had 750 users, and so on. Since the first and second entities cannot directly share raw user behavior data, virtual user data was generated as an intermediary to establish the mapping relationship between the two tag systems. The distribution characteristics of the raw behavior data of the 8,600 users in the first entity were statistically analyzed: the average monthly spending was 1,850 yuan with a standard deviation of 920 yuan; the average monthly purchase frequency was 3.7 times with a standard deviation of 1.8 times; and the average order value was 520 yuan with a standard deviation of 210 yuan. Based on the aforementioned statistical parameters, a normal distribution random sampling method was used to generate 50,000 pieces of raw behavioral data from virtual users. This ensured that the distribution patterns of the virtual data in terms of consumption amount, purchase frequency, and average order value were consistent with the distribution patterns of the real users in the primary entity, avoiding distortion of the subsequent mapping relationship due to distribution deviations in the virtual data. The statistical distribution patterns here can be referenced to generate data with similar patterns (most statistical patterns in nature are variations of the normal distribution). It is important to note that even without uniform normalization when fitting the two curves (detailed implementation methods will be discussed later), an optimal fitting method can still be found (because in the case of a perfect fit, even scaling the corresponding curve in space should result in the closest fitting position). However, in our actual implementation, to prevent special cases (such as scaling resulting in only a local fit, rendering the obtained fit meaningless), we uniformly normalized the simulated data beforehand and then input it into the clustering models of the two platform entities to reduce the difficulty of obtaining the mapping relationship between the two.
[0050] The generated 50,000 original virtual user data entries were input into the clustering models of the first and second subjects for processing. The first subject's clustering model normalized the consumption amount using a logarithmic scale and the purchase frequency and average order value using the standard deviation. Then, a density clustering algorithm was used to divide the 50,000 virtual users into 12 categories, calculating the centroid coordinates of each category. The 50,000 virtual users were mapped to 3D space according to their category centroid coordinates, forming 50,000 discrete points, denoted as the first simulated discrete point group. The second subject's clustering model processed the same 50,000 original virtual user data entries, using a linear scale normalization method and a mean clustering algorithm to divide the virtual users into 8 categories, labeled as second subject category 1 to category 8. The centroid coordinates of each category were calculated, and the 50,000 virtual users were mapped to 3D space according to their category centroid coordinates, forming 50,000 discrete points, denoted as the second simulated discrete point group. Because the normalization methods and algorithm parameters of the two clustering models are different, the same virtual user data will be classified into different categories under the two labeling systems, resulting in spatial point cluster distributions with positional shifts and density differences. Cubic spline interpolation fitting is performed on the first and second simulated discrete point clusters respectively. 1000 sampling points are extracted at equal intervals on the fitting curve of the first simulated point cluster and 1000 sampling points are extracted at equal intervals on the fitting curve of the second simulated point cluster. The shift vector that minimizes the sum of squared distances between the two curves is calculated. By taking the partial derivatives of the sum of squared distance function with respect to the three dimensions and setting them to zero, the three-dimensional transformation vector is obtained as follows: first dimension shift -0.35, second dimension shift +0.18, and third dimension shift -0.22. The second simulated discrete point cluster is then translated according to this transformation vector and superimposed on the first simulated discrete point cluster for fitting. After overlaying, the Euclidean distance between corresponding points on the two fitted curves was calculated. It was found that 231 points out of 1000 sampled points had distances exceeding the set threshold of 0.08. These points were mainly concentrated in the range of 0.42 to 0.68 for the first dimension's normalized value, and this range was marked as an unmatched region. The unmatched region arose because the second subject, when performing linear scaling on the consumption amount, divided the continuous numerical range into fewer tiers. This caused users with moderate consumption that the first subject could distinguish to be grouped into the same category in the second subject's labeling system, resulting in decreased label resolution and information loss.
[0051] The discrete point densities of the first and second simulated discrete point groups within the unmatched region were calculated across three dimensions. In the first dimension, the first simulated point group had 27 discrete points per 0.01 interval within the range of 0.42 to 0.68, while the second simulated point group had 11 discrete points per 0.01 interval, with a density difference of 0.59. The density difference in the second dimension was 0.08, and in the third dimension, it was 0.06. The first dimension, with the largest density difference, was selected as the reference dimension. In this dimension, the discrete point density of the second simulated point group was significantly lower than that of the first, reflecting information loss due to coarse segmentation during the normalization of consumption amounts by the second subject. The number of discrete points in the first simulated discrete point group within the range of 0.42 to 0.68 in the first dimension was counted as 415, while the number of discrete points in the second simulated discrete point group within the same range was counted as 176. Because the second simulated discrete point group had fewer discrete points, it was designated as the first point group, and the first simulated discrete point group was designated as the second point group. The median distance between adjacent discrete points in the second point group in the second and third dimensions is calculated. The median distance in the second dimension is 0.031, and the median distance in the third dimension is 0.027. These two values are used as the baseline distance. Traversing the 176 discrete points in the first point group, the distance between adjacent discrete points in the second and third dimensions is calculated. It is found that the distance between 48 locations exceeds the baseline distance, indicating that new discrete points need to be inserted at these locations to match the density distribution of the second point group. New discrete points are inserted at these 48 locations. The coordinates of the new discrete points in the first dimension are calculated by linear interpolation of the coordinates of two adjacent discrete points. The coordinates of the new discrete points in the second and third dimensions are calculated using the Gaussian kernel density estimation method. Specifically, the coordinates of all 415 discrete points in the second dimension of the second point group are obtained, with a bandwidth parameter of 0.019. For the new discrete point to be inserted, candidate values are generated every 0.001 within the candidate coordinate range in the second dimension. The probability density function value corresponding to each candidate value is calculated, and the candidate value with the highest probability density is selected as the coordinates of the new discrete point in the second dimension. The third dimension is calculated using the same method. After segmentation, the number of discrete points in the first point group increased from 176 to 224, and the segmentation scaling ratio was calculated to be 1.27. The coordinate offsets of the 48 newly inserted discrete points relative to the original points in the first dimension were recorded, as well as the offsets of the newly inserted discrete points relative to the average coordinates of their two adjacent points in the second and third dimensions. The segmentation scaling ratio of 1.27, the reference dimension number 1, and all offset sequences were combined to form the segmentation scaling vector.
[0052] The coordinates of the 8600 discrete points in the first user discrete point group were sequentially transformed. First, a three-dimensional transformation vector was applied to each discrete point for coordinate translation: the first dimension coordinate was subtracted by 0.35, the second dimension coordinate was added by 0.18, and the third dimension coordinate was subtracted by 0.22 to obtain the translated coordinates. Then, it was determined whether the translated coordinates of each discrete point in the first dimension fell within the scaling range of 0.42 to 0.68. 1820 discrete points were found to fall within this range, corresponding to users in the first entity with moderate spending levels. For these 1820 discrete points, coordinate adjustments were made according to the patterns recorded in the scaling vector. Since the scaling ratio was 1.27, it indicated that the tag resolution of the second entity in this range was only 78.7% of that of the first entity, requiring fine-tuning of the coordinates to compensate for information loss. The specific operation involves finding the closest offset value in the offset sequence based on the coordinates of each discrete point in the first dimension, adding this offset to the first-dimensional coordinates, and simultaneously adding the corresponding offsets to the second and third dimensions to obtain the adjusted coordinates. For the 6780 discrete points not within the scaling interval, their translated coordinates remain unchanged. The transformed coordinates of all 8600 discrete points are then aggregated to form a second user discrete point group. Based on the centroid coordinates of the eight label categories in the second subject clustering model, the Euclidean distance between each discrete point in the second user discrete point group and the eight centroid coordinates is calculated, and each discrete point is assigned to the label category corresponding to the nearest centroid. After the attribution is completed, the tag values of 8,600 users under the second subject tag system are obtained. Among them, 950 users are assigned to the second subject tag category 1, 1,120 users are assigned to the tag category 2, 1,050 users are assigned to the tag category 3, and so on, forming a complete mapping result of the first subject users under the second subject tag system. This enables the second subject to identify user characteristics and carry out collaborative marketing activities based on these converted tag values.
[0053] Furthermore, the method for identifying unmatched discrete point groups during the spatial fitting process by performing spatial fitting and matching using a first simulated discrete point group and a second simulated discrete point group and recording the transformation vector includes:
[0054] Define a spatial coordinate system, where each axis corresponds to a dimension of the user profile tag value. Within this system, fit the first and second simulated discrete point groups to obtain a first curve and a second curve using spline interpolation, respectively. Then, take equidistant points on the first curve... The set of sampling points is Meanwhile, take equal intervals on the second curve. The set of sampling points is ,in For the number of label dimensions, The value ranges from 1 to Integer variables; through the movement vector The second curve is moved to the first curve for superposition and fitting; the sum of the squared Euclidean distances between the first and second curves is used. for:
[0055] ;
[0056] Input the coordinate data of the sampling point set to obtain... , … Under the conditions The transformation vector is used to superimpose and fit the second curve onto the first curve; after the second curve is superimposed and fitted onto the first curve, the Euclidean distance between a point on the first curve and its corresponding projection point on the second curve is calculated. for:
[0057] ;
[0058] in It is a point on the first curve. It is a point on the first curve. Points projected onto the second curve; Euclidean distance The area corresponding to a point that exceeds a set distance threshold is marked as an unmatched area.
[0059] For example, a three-dimensional spatial coordinate system is defined here. The first axis of the coordinate system is defined as the normalized value of average monthly spending, the second axis as the normalized value of monthly purchase frequency, and the third axis as the normalized value of average order value. The value of each axis ranges from 0 to 1. Within this coordinate system, 50,000 discrete points of the first simulated discrete point group and 50,000 discrete points of the second simulated discrete point group are labeled. These discrete points correspond to the centroid coordinates of 50,000 virtual users under the first and second main tag systems, respectively. The first simulated discrete point group is fitted using a cubic spline interpolation method. Since the 50,000 discrete points are clustered into 12 clusters according to 12 tag categories, the centroid coordinates of each cluster are connected in ascending order of the first dimension value. The connection path is calculated using the cubic spline interpolation function to form a smooth first fitting curve. The same method was used to fit the second simulated discrete point group. The centroid coordinates of the eight label category clusters were connected in ascending order of the first dimension value, and a smooth second fitting curve was formed using a cubic spline interpolation function. 1000 sampling points were extracted from the first fitting curve according to the principle of equal arc length. The three-dimensional coordinates of the first sampling point were 0.05 (first dimension), 0.12 (second dimension), and 0.09 (third dimension); the coordinates of the second sampling point were 0.06 (first dimension), 0.13 (second dimension), and 0.10 (third dimension), and so on, until the coordinates of the 1000th sampling point were 0.93 (first dimension), 0.88 (second dimension), and 0.91 (third dimension). On the second fitted curve, 1000 sampling points were extracted according to the principle of equal arc length. The coordinates of the first sampling point were 0.38 in the first dimension, 0.06 in the second dimension, and 0.29 in the third dimension. The coordinates of the second sampling point were 0.39 in the first dimension, 0.07 in the second dimension, and 0.30 in the third dimension, and so on, until the coordinates of the 1000th sampling point were 0.95 in the first dimension, 0.82 in the second dimension, and 0.89 in the third dimension.
[0060] The second fitted curve is superimposed onto the first fitted curve by calculating a translation vector. Specifically, the translation vector is set to include three components, each corresponding to a translation distance in one of the three dimensions. The sum of squares of the distances between the first and second fitted curves is then calculated. The specific calculation method involves iterating through 1000 sampling points. For the first... There are 1 sampling points, and the coordinates on the first curve are denoted as . , , The coordinates on the second curve are marked as , , ,in The range is from 1 to 1000. After applying the translation vector, the second curve... The coordinates of the points become Add the first dimension shift component, Add the second-dimensional shift component, Add the third-dimensional translation component. Calculate the... The sum of the squared differences in the coordinates of each point on the two curves is used to obtain the total squared distance. The partial derivatives of the total squared distance with respect to the three dimensions of the translation component are calculated, and all three partial derivatives are set to 0. Solving the linear equations yields the values of the three components of the translation vector: -0.35 for the first dimension, +0.18 for the second dimension, and -0.22 for the third dimension. All points on the second fitted curve are translated according to this translation vector. The first sampling point is translated from its original coordinates of 0.38, 0.06, 0.29 to new coordinates of 0.03, 0.24, 0.07; the second sampling point is translated from its original coordinates of 0.39, 0.07, 0.30 to new coordinates of 0.04, 0.25, 0.08, and so on, completing the translation of all 1000 points to achieve the superposition and fitting of the two curves. After superposition, the Euclidean distance between each point on the first fitted curve and its corresponding projection point on the second fitted curve is calculated. For the first curve... For each point, the point on the second curve whose first-dimensional coordinate value is closest is found as the corresponding projection point. The square root of the sum of the squares of the differences in the three-dimensional coordinates between the two points is then taken to obtain the Euclidean distance. The Euclidean distances of 1000 points are calculated iteratively. The distances are found to be 0.03 for the 1st point, 0.04 for the 2nd point, 0.05 for the 3rd point, 0.12 for the 327th point, 0.15 for the 328th point, 0.18 for the 329th point, 0.11 for the 557th point, 0.06 for the 558th point, and so on. A distance threshold of 0.08 is set. Statistics show that 231 points from the 328th to the 557th point have Euclidean distances exceeding the threshold of 0.08. The coordinate values of these 231 points in the first dimension are distributed in the range of 0.42 to 0.68. This range is marked as an unmatched region. The identification of unmatched regions indicates that there is a significant difference between the two labeling systems in classifying users with medium spending amounts. The labeling of the second subject's clustering model in this interval is too coarse and cannot be matched with the labeling system of the first subject through simple linear translation. Further segmentation and scaling are needed to compensate for information loss.
[0061] Further, the method of determining the label dimension corresponding to each discrete point in the unmatched discrete point group as the reference dimension, and classifying the first subject and the second subject with fewer discrete points in the reference dimension as the first point group and more discrete points as the second point group, and then segmenting and scaling the first point group according to the statistical distribution characteristics of the second point group in label dimensions other than the reference dimension and recording the segmentation and scaling vector includes:
[0062] In the unmatched discrete point groups, calculate the density difference of discrete points in each label dimension for the first simulated discrete point group and the second simulated discrete point group, and select the label dimension with the largest density difference as the reference dimension; count the number of discrete points in the first simulated discrete point group on the reference dimension and record it as the first quantity, and count the number of discrete points in the second simulated discrete point group and record it as the second quantity; when the first quantity is less than the second quantity, the discrete points of the first simulated discrete point group on the reference dimension are recorded as the first point group, and the discrete points of the second simulated discrete point group on the reference dimension are recorded as the second point group; when the first quantity is greater than or equal to the second quantity, the discrete points of the second simulated discrete point group on the reference dimension are recorded as the first point group, and the discrete points of the first simulated discrete point group on the reference dimension are recorded as the second point group.
[0063] Calculate the distance between each discrete point in the second point group across all label dimensions except the reference dimension, and record the median distance as the baseline distance. Record the coordinates of each discrete point in the first point group across all label dimensions, and calculate the distance between adjacent discrete points in the first point group across all label dimensions. When the distance between two adjacent discrete points in the first point group is greater than the baseline distance, insert a new discrete point between these two adjacent discrete points. The coordinates of the new discrete point in the reference dimension are calculated by linear interpolation, and the coordinates of the new discrete point in other label dimensions are calculated by Gaussian kernel density estimation based on the statistical distribution characteristics of the second point group across all label dimensions.
[0064] Record the number of discrete points before the first point group is divided into two groups, and record the number of discrete points after the division. Calculate the scaling ratio by dividing the number of points after the division by the number of points before the division. Record the coordinate offset of the newly inserted discrete points in the reference dimension and the coordinate offset of the newly inserted discrete points in other label dimensions. Combine the scaling ratio, reference dimension identifier, and coordinate offset as the scaling vector.
[0065] For example, within the identified unmatched region, i.e., the interval from 0.42 to 0.68 in the first dimension, all discrete points belonging to this interval are extracted from the first and second simulated discrete point groups. The number of discrete points in the first simulated discrete point group within this interval for every 0.01 interval in the first dimension is counted. There are 28 points in the interval from 0.42 to 0.43, 27 points in the interval from 0.43 to 0.44, 26 points in the interval from 0.44 to 0.45, and so on up to 27 points in the interval from 0.67 to 0.68. The average density is calculated to be 27 points per 0.01 interval. The number of discrete points in each 0.01 interval of the first dimension within the second simulated discrete point group was counted. There were 11 points in the interval 0.42-0.43, 12 points in the interval 0.43-0.44, 11 points in the interval 0.44-0.45, and so on up to 12 points in the interval 0.67-0.68. The average density was calculated to be 11 points per 0.01 interval. The density difference for the first dimension was calculated as 0.59 (27 minus 11 divided by 27). The same density statistics were performed on the second dimension. The first simulated point group had an average of 15 points per 0.01 interval in the unmatched region, while the second simulated point group had an average of 14 points, with a density difference of 0.08. For the third dimension, the first simulated point group had an average of 16 points per 0.01 interval, while the second simulated point group had an average of 15 points, with a density difference of 0.06. Comparing the density difference values of 0.59, 0.08, and 0.06 across the three dimensions, the first dimension with the largest value was selected as the reference dimension. The density difference on this dimension was significantly higher than that on the other two dimensions, reflecting that the second subject used a linear scale when normalizing the consumption amount, resulting in coarser segmentation. This compressed the medium-level consumers, who could originally be divided into multiple tiers, into fewer categories, causing a decrease in the label resolution on this dimension.
[0066] The first simulated discrete point group contains 415 discrete points within the reference dimension (the first dimension), ranging from 0.42 to 0.68. These discrete points are distributed across multiple categories in the first main labeling system. The second simulated discrete point group contains 176 discrete points within the same interval, distributed only across three categories in the second main labeling system. Since 415 is greater than 176, the 176 discrete points from the second simulated discrete point group within this interval are designated as the first point group, and the 415 discrete points from the first simulated discrete point group within this interval are designated as the second point group. The distance between adjacent discrete points in the second point group along the second dimension is calculated. The 415 discrete points are sorted in ascending order of their second dimension coordinates: the first point has a second dimension coordinate of 0.18, the second point 0.21, and the third point 0.24, with distances of 0.03, 0.03, and so on. Calculating these distances for 414 points, the median distance is 0.031, which is designated as the baseline distance in the second dimension. Calculate the distance between adjacent discrete points in the second point group along the third dimension. After sorting by the third-dimensional coordinate values, calculate 414 distances, and the median is 0.027, which is denoted as the baseline distance in the third dimension. Traverse the 176 discrete points in the first point group, sorting them by their first-dimensional coordinate values from smallest to largest, and calculate the distance between adjacent discrete points along the second and third dimensions. It is found that the distance between the 15th and 16th points in the second dimension is 0.068, which is greater than the baseline distance of 0.031; the distance between the 23rd and 24th points in the third dimension is 0.059, which is also greater than the baseline distance of 0.027. Further inspection reveals 48 locations where the distance exceeds the baseline distance; these locations require the insertion of new discrete points to supplement the density.
[0067] For the 48 locations in the first point group where new discrete points need to be inserted, the insertion process is performed sequentially. Taking the insertion between the 15th and 16th points as an example, the coordinates of the 15th point are 0.48 in the first dimension, 0.35 in the second dimension, and 0.52 in the third dimension; the coordinates of the 16th point are 0.49 in the first dimension, 0.42 in the second dimension, and 0.54 in the third dimension. The coordinates of the newly inserted discrete point in the first dimension are calculated, and the average of the coordinates of the two points in the first dimension is taken using a linear interpolation method, resulting in 0.485. The coordinates of the newly inserted discrete point in the second dimension are calculated using the Gaussian kernel density estimation method based on the statistical distribution characteristics of the second point group in the second dimension. The set of coordinate values of all 415 discrete points in the second point group in the second dimension is obtained, and the standard deviation of this set is calculated to be 0.078. The bandwidth parameter is calculated to be 0.019 according to the bandwidth parameter calculation formula. Candidate coordinate values are generated every 0.001 within the range of 0.35 to 0.42 in the second dimension, resulting in a total of 71 candidate values. For each candidate value, its probability density function value is calculated. A Gaussian kernel function is used to estimate the kernel density of the second-dimensional coordinates of the 415 discrete points in the second point group. The candidate value 0.377 has the highest probability density function value of 2.83, so 0.377 is selected as the coordinate value of the newly inserted discrete point in the second dimension. The same method is used to calculate the coordinate value of the newly inserted discrete point in the third dimension. The standard deviation of the third dimension is 0.065, and the bandwidth parameter is 0.016. Candidate values are generated within the range of 0.52 to 0.54, and their probability density function values are calculated. The candidate value with the highest probability density, 0.529, is selected as the coordinate value of the third dimension. After the insertion of this new point, its complete coordinates are: first dimension 0.485, second dimension 0.377, third dimension 0.529. The same method is used to process the remaining 47 locations where new points need to be inserted. After all insertion operations are completed, the number of discrete points in the first point group increases from 176 to 224.
[0068] The number of discrete points in the first point group before segmentation is recorded as 176, and the number of discrete points after segmentation is recorded as 224. The segmentation scaling ratio is calculated as 224 divided by 176, which gives 1.27. The coordinate offsets of 48 newly inserted discrete points in the first dimension relative to the points before insertion are recorded. The offset of the first newly inserted point in the first dimension is 0.485 minus 0.48, which gives 0.005. The offset of the second newly inserted point is 0.007, and so on, forming a sequence of 48 offsets. The offset of the newly inserted discrete points in the second dimension relative to the average coordinates of two adjacent points is recorded. The average coordinates of the first newly inserted point in the second dimension are 0.35 plus 0.42 divided by 2, which gives 0.385. The offset is 0.377 minus 0.385, which gives -0.008, and so on, forming a sequence of 48 second-dimensional offsets. The offset of newly inserted discrete points in the third dimension is recorded. The average third-dimensional coordinate of the first newly inserted point is 0.53, and the offset is 0.529 minus 0.53, resulting in -0.001. This is repeated to form a sequence of 48 third-dimensional offsets. The segmentation scaling ratio of 1.27, reference dimension number 1, the first-dimensional offset sequence, the second-dimensional offset sequence, and the third-dimensional offset sequence are sequentially combined to form a segmentation scaling vector. This vector records the complete transformation law of the first point group matching the density distribution of the second point group through segmentation scaling. This law is subsequently applied to the coordinate transformation of the first user discrete point group to realize the conversion of the first subject's real user label values to the second subject's label system.
[0069] Furthermore, the method for calculating the coordinates of the new discrete points in other label dimensions using the Gaussian kernel density estimation method based on the statistical distribution characteristics of the second point group in other label dimensions includes:
[0070] Obtain the second point group in the dimension other than the reference dimension. The set of coordinates of all discrete points along each label dimension is denoted as . ,in Let be the number of discrete points in the second point group. The value ranges from 1 to Integer variables, The value ranges from 1 to Integer variables; calculate the second point group at the th... Bandwidth parameters at each label dimension for:
[0071] ;
[0072] in For the second point group in the th The standard deviation of the coordinate values on each label dimension This is the preset bandwidth adjustment factor. For preset power parameters, This is the preset sample size adjustment coefficient; for a new discrete point to be inserted in the first point group, its value at the th... Coordinates of each label dimension probability density function for:
[0073] ;
[0074] in Let be the Gaussian kernel function; in the... Candidate coordinate values are generated by sampling at equal intervals within the range of coordinate values for each label dimension. The probability density function value corresponding to each candidate coordinate value is calculated, and the candidate coordinate value with the largest probability density function value is selected as the new discrete point at the i-th label dimension. Coordinates of the new discrete point in each label dimension; until the coordinates of the new discrete point in all other label dimensions are obtained.
[0075] For example, the coordinate values of all 415 discrete points in the second point group in the second dimension are obtained. These 415 coordinate values are 0.18, 0.21, 0.24, 0.26, 0.29 up to 0.87, 0.89, 0.91, forming a complete coordinate value dataset. The standard deviation of this coordinate value set is calculated by subtracting the square of the mean from the sum of the squares of the 415 values and then taking the square root, resulting in a standard deviation of 0.078. With a bandwidth adjustment factor of 1.06, a power parameter of 5, and a sample size adjustment factor of 4, the bandwidth parameter for the second dimension is calculated as 1.06 multiplied by 0.078 to the power of 5, divided by 4, multiplied by 415, and then the fifth root is taken, yielding a bandwidth parameter of 0.019. This bandwidth parameter determines the smoothness of the Gaussian kernel function. Too small a bandwidth will cause the probability density function to be overly sensitive, leading to overfitting; too large a bandwidth will result in excessive smoothing and loss of data features. The bandwidth parameter calculated using the above formula achieves a balance between smoothness and accuracy. For the new discrete point to be inserted between the 15th and 16th points in the first point group, the coordinates of this new point in the second dimension need to be determined by calculating the probability density function. Candidate coordinate values are generated every 0.001 within the range of 0.35 to 0.42 in the second dimension, resulting in 71 candidate values: 0.350, 0.351, 0.352, up to 0.419 and 0.420. For the candidate value 0.377, the probability density function is calculated by iterating through the second-dimensional coordinates of the 415 discrete points in the second point group. For each coordinate value, the difference between the candidate value and the given coordinate value is calculated and divided by the bandwidth parameter 0.019 to obtain the standardized distance. This standardized distance is then substituted into the Gaussian kernel function to calculate the kernel function value. The sum of the 415 kernel function values is divided by 415 and then by the bandwidth parameter 0.019, yielding a probability density function value of 2.83 for the candidate value 0.377. The probability density function values of the 71 candidate values were calculated sequentially. The probability densities for candidate values of 0.350, 0.360, 0.370, 0.377, 0.380, and 0.390 were 2.41, respectively. The candidate value of 0.377 had the highest probability density function value, and 0.377 was selected as the coordinate value of the newly inserted discrete point in the second dimension. This coordinate value reflects the location of the most likely discrete point in the second dimension of the second point group, which conforms to the statistical distribution law of the second point group.
[0076] The same method was used to calculate the coordinates of the newly inserted discrete point in the third dimension. Specifically, the set of coordinates of all 415 discrete points in the second point group in the third dimension was obtained, and the standard deviation was calculated to be 0.065. According to the bandwidth parameter calculation formula, the bandwidth parameter in the third dimension was 0.016. Candidate coordinate values were generated every 0.001 within the range of 0.52 to 0.54 in the third dimension, resulting in a total of 21 candidate values. The probability density function value was calculated for each candidate value. The probability density values for candidate values 0.520, 0.525, 0.529, 0.530, and 0.535 were 3.43. It was found that the candidate value 0.529 had the largest probability density function value, so 0.529 was selected as the coordinate value of the newly inserted discrete point in the third dimension. This completes the calculation of the coordinates of the newly inserted discrete point in the two label dimensions other than the reference dimension. Combining this with the first dimension coordinate value of 0.485 obtained through linear interpolation, the complete three-dimensional coordinates of the newly inserted discrete point are determined to be 0.485 in the first dimension, 0.377 in the second dimension, and 0.529 in the third dimension. For the remaining 47 locations in the first point group where new discrete points need to be inserted, the same Gaussian kernel density estimation method is used to calculate the coordinates of each new point in the second and third dimensions. This ensures that the spatial distribution of all newly inserted discrete points conforms to the statistical regularity of the second point group, avoiding deviations from the true data distribution characteristics due to random interpolation or simple averaging. This ensures that the first point group after segmentation and scaling can accurately match the density distribution of the second point group.
[0077] Furthermore, the method of recording the coordinate offset of the newly inserted discrete point in the reference dimension, recording the coordinate offset of the newly inserted discrete point in other label dimensions, and combining the segmentation scaling ratio, reference dimension identifier, and coordinate offset as the segmentation scaling vector includes:
[0078] In the first point group, for each pair of adjacent discrete points between which a new discrete point needs to be inserted, the discrete point with the smaller coordinate value in the reference dimension is denoted as the point before insertion, and its coordinate value in the reference dimension is denoted as... The discrete point with the larger coordinate value in the reference dimension will be recorded as the insertion point, and its coordinate value in the reference dimension will be recorded as... The coordinates of the newly inserted discrete point in the reference dimension are denoted as... ;
[0079] Calculate the coordinate offset of the newly inserted discrete point relative to the point before insertion in the reference dimension. For label dimensions other than the reference dimension, process each other label dimension sequentially, and insert the coordinates of the previous point in the currently processed label dimension, denoted as . The coordinates of the inserted point are denoted as... The coordinates of the newly inserted discrete point are denoted as ;
[0080] Calculate the average coordinates of the point before and after insertion in the dimensions of the current label. ; Calculate the coordinate offset of the newly inserted discrete point relative to the average coordinates in the current other label dimensions. ;
[0081] Arrange the reference dimension coordinate offsets of all newly inserted discrete points in the first point group in ascending order of their coordinate values on the reference dimension to form a reference dimension offset sequence. For each other label dimension, arrange the coordinate offsets of all newly inserted discrete points in the first point group on that other label dimension in ascending order of their coordinate values on the reference dimension to form that other label dimension offset sequence. Combine the split scaling ratio, the dimension number of the reference dimension, the reference dimension offset sequence, and all other label dimension offset sequences in sequence to form a split scaling vector.
[0082] For example, among the 176 original discrete points in the first point group, 48 pairs of adjacent discrete points need to be inserted between them to allow for the insertion of new discrete points. For the first pair of adjacent discrete points, the discrete point with the smaller coordinate value in the first dimension (reference dimension) is the 15th point, with a first-dimensional coordinate value of 0.48, denoted as the point before insertion. The discrete point with the larger coordinate value in the first dimension is the 16th point, with a first-dimensional coordinate value of 0.49, denoted as the point after insertion. The new discrete point inserted between these two points has a first-dimensional coordinate value of 0.485. The coordinate offset of the new inserted discrete point relative to the point before insertion in the first dimension is calculated as 0.485 minus 0.48, resulting in 0.005. For the other two label dimensions besides the first dimension, the coordinates of the point before insertion are 0.35 and the coordinates of the point after insertion are 0.42 in the second dimension. The average of the two coordinates is calculated as 0.35 plus 0.42 divided by 2, resulting in 0.385. The newly inserted discrete point has a coordinate value of 0.377 calculated using Gaussian kernel density estimation in the second dimension. The offset of this new point in the second dimension relative to the average coordinate value of 0.385 is calculated as 0.377 minus 0.385, resulting in -0.008. In the third dimension, the coordinates of the point before insertion are 0.52, and the coordinates of the point after insertion are 0.54. The average coordinate value is calculated to be 0.53, and the third-dimensional coordinate value of the newly inserted discrete point is 0.529. The offset is calculated as 0.529 minus 0.53, resulting in -0.001. After calculating the offsets of the first newly inserted discrete point in all three dimensions, the offsets of the remaining 47 newly inserted discrete points are calculated sequentially. The second newly inserted discrete point is located between the 23rd and 24th points, with an offset of 0.007 in the first dimension, 0.012 in the second dimension, and -0.003 in the third dimension. The offset of the third newly inserted discrete point is 0.006 in the first dimension, -0.005 in the second dimension, and 0.009 in the third dimension. This process is repeated until the offset of the 48th newly inserted discrete point is 0.008 in the first dimension, 0.011 in the second dimension, and -0.006 in the third dimension.
[0083] The first-dimensional (reference dimension) coordinate offsets of the 48 newly inserted discrete points are arranged in ascending order of their first-dimensional coordinate values. Since the coordinate values of the newly inserted discrete points in the first dimension are distributed between 0.42 and 0.68, all new points within this range are sorted by their coordinate values. The first new point has a first-dimensional coordinate of 0.445 and an offset of 0.006; the second new point has a coordinate of 0.463 and an offset of 0.005; the third new point has a coordinate of 0.485 and an offset of 0.005. This sequence of 48 offsets is denoted as the reference dimension offset sequence. The same arrangement is performed for the second and third dimensions. The coordinate offsets of the 48 newly inserted discrete points in the second dimension are arranged in ascending order of their first-dimensional coordinate values. The first new point has a second-dimensional offset of 0.012; the second new point has an offset of -0.005; and the third new point has an offset of -0.008. This sequence of second-dimensional offsets is denoted as the second-dimensional offset sequence. The coordinate offsets of the 48 new points in the third dimension are arranged in the same order: the first new point has a third-dimensional offset of 0.009, the second 0.011, and the third -0.001, forming a sequence of third-dimensional offsets. The reason all offset sequences are arranged according to the coordinate values of the newly inserted discrete points in the reference dimension is that when performing coordinate transformation on the first group of user discrete points, it is necessary to quickly find the corresponding offset based on the coordinate values of the user discrete points in the reference dimension. A consistent arrangement ensures the accuracy of offset matching. The segmentation scaling ratio 1.27, reference dimension number 1, reference dimension offset sequence, second-dimensional offset sequence, and third-dimensional offset sequence are combined sequentially to form a complete segmentation scaling vector. This vector fully records the transformation rule of density matching achieved by inserting 48 new discrete points into the first point group. This vector will be applied to the coordinate transformation of the first group of user discrete points.
[0084] Furthermore, the method of obtaining the second user discrete point group by performing coordinate transformation on the first user discrete point group through transformation vector and split scaling vector, and obtaining the user profile tag value of the second subject through the second user discrete point group includes:
[0085] Obtain the coordinates of each discrete point in the first user discrete point group, and label the coordinates of each discrete point as the first coordinate. Apply the transformation vector to each discrete point in the first user's discrete point group. Perform a coordinate translation to obtain the translated coordinates, which are then designated as the second coordinate system. ;
[0086] Extract the dimension number of the reference dimension from the split and scaled vector, and denote it as the reference dimension number. The scaling factor for the extracted segments is denoted as the segmentation ratio. Extract the reference dimension offset sequence and all other label dimension offset sequences; for each discrete point in the first user discrete point group, determine whether the coordinate value of the discrete point in the reference dimension is within the interval that needs to be segmented and scaled. If it is within the segmentation and scaling interval, then segment and scale the discrete point. If it is not within the segmentation and scaling interval, then keep the second coordinate of the discrete point unchanged.
[0087] For a discrete point located within the segmentation scaling interval, find the corresponding reference dimension coordinate offset in the reference dimension offset sequence based on the coordinate value of the discrete point in the reference dimension, and record it as the offset. Find the corresponding offset of other label dimensions in the offset sequence of other label dimensions, and record it as the offset. Add the offset to the coordinate values of the reference dimension in the second coordinate system of the discrete point. Add the corresponding offset to the coordinate values of other label dimensions in the second coordinate of the discrete point to obtain the coordinates after segmentation and scaling, which is called the third coordinate.
[0088] The coordinate set obtained after transforming, translating, and scaling all discrete points is taken as the second user discrete point group. The coordinate values of each label dimension are mapped back to the user profile label value system of the second subject through the coordinate values of each discrete point in the second user discrete point group, so as to obtain the second subject user profile label value corresponding to each discrete point. The second subject user profile label values corresponding to all discrete points in the second user discrete point group are summarized to form the user profile label value set of the first user under the second subject label system.
[0089] For example, the coordinates of all 8600 discrete points in the first user discrete point group are obtained. The coordinates of the first discrete point are 0.08 in the first dimension, 0.15 in the second dimension, and 0.12 in the third dimension. The coordinates of the second discrete point are 0.09 in the first dimension, 0.16 in the second dimension, and 0.13 in the third dimension. The three-dimensional coordinate values of all discrete points are recorded as the first coordinates. A three-dimensional transformation vector is applied to each discrete point in the first user discrete point group for coordinate translation. The three components of the transformation vector are -0.35 in the first dimension, +0.18 in the second dimension, and -0.22 in the third dimension. For the first discrete point, the first dimension coordinate 0.08 is subtracted from 0.35 to get -0.27. Since the coordinate value cannot be negative, it is corrected to 0. The second dimension coordinate 0.15 is added to 0.18 to get 0.33. The third dimension coordinate 0.12 is subtracted from 0.22 to get -0.10, which is corrected to 0. The translated second coordinates are 0 in the first dimension, 0.33 in the second dimension, and 0 in the third dimension. The second discrete point is translated to obtain second coordinates with dimensions 0 in the first dimension, 0.34 in the second dimension, and 0 in the third dimension. This translation process is repeated for all 8600 discrete points. The 720th discrete point has first coordinates of 0.53 in the first dimension, 0.42 in the second dimension, and 0.58 in the third dimension; after translation, its second coordinates are 0.18 in the first dimension, 0.60 in the second dimension, and 0.36 in the third dimension. The 1500th discrete point has translated coordinates of 0.45 in the first dimension, 0.55 in the second dimension, and 0.48 in the third dimension; the 3000th discrete point has translated coordinates of 0.62 in the first dimension, 0.71 in the second dimension, and 0.65 in the third dimension. This process is repeated for all discrete points.
[0090] From the segmented scaling vector, extract the reference dimension number 1, extract the segmentation scaling ratio of 1.27, and extract the reference dimension offset sequence containing 48 offset values. Extract the second dimension offset sequence and the third dimension offset sequence, each containing 48 offset values. For each discrete point in the first user discrete point group, determine whether the second coordinate value of the discrete point after translation in the first dimension falls within the segmentation scaling interval of 0.42 to 0.68. Traverse 8600 discrete points. The first discrete point has a first dimension second coordinate value of 0, which is not within the segmentation scaling interval, so its second coordinate remains unchanged. The second discrete point has a first dimension second coordinate value of 0, which is not within the interval, so it remains unchanged. The 720th discrete point has a first dimension second coordinate value of 0.18, which is not within the interval, so it remains unchanged. The 1438th discrete point has a first dimension second coordinate value of 0.43, which is within the segmentation scaling interval, so this discrete point needs to be segmented and scaled. Based on the second coordinate value of 0.43 in the first dimension of the discrete point, the corresponding offset is found in the offset sequence of the reference dimension. Since the offset sequence is arranged in ascending order of the first dimension coordinate values, the offset closest to 0.43 is 0.006. The corresponding offset in the second dimension offset sequence is 0.012, and the corresponding offset in the third dimension offset sequence is 0.009. Adding the first dimension coordinate value of 0.43 to the offset of 0.006 in the second coordinate of the discrete point gives 0.436, adding the second dimension coordinate value of 0.58 to the offset of 0.012 gives 0.592, and adding the third dimension coordinate value of 0.52 to the offset of 0.009 gives 0.529. Therefore, the third coordinate after segmentation and scaling is 0.436 in the first dimension, 0.592 in the second dimension, and 0.529 in the third dimension. All discrete points within the scaling interval were processed sequentially. The third coordinates of the 1520th discrete point after scaling were 0.477 (first dimension), 0.613 (second dimension), and 0.541 (third dimension). The coordinates of the 2180th discrete point were 0.551 (first dimension), 0.688 (second dimension), and 0.602 (third dimension). Statistical analysis revealed that 1820 discrete points were within the scaling interval and their coordinates were adjusted. For the 6780 discrete points outside the scaling interval, their second coordinates were retained as their final coordinates.
[0091] The coordinates of all 8600 discrete points are aggregated after transformation vector translation and splitting / scaling vector processing. The final coordinates of 6780 discrete points are their second coordinates, and the final coordinates of 1820 discrete points are their third coordinates. These 8600 coordinates form the second user discrete point group. Based on the centroid coordinates of the eight label categories in the second subject clustering model, the centroid coordinates of label category 1 are 0.12 (first dimension), 0.25 (second dimension), and 0.18 (third dimension), and the centroid coordinates of label category 2 are 0.26 (first dimension), 0.38 (second dimension), and 0.31 (third dimension). The centroid coordinates of the eight label categories are recorded sequentially. For each discrete point in the second user discrete point group, the Euclidean distance between the discrete point and the eight centroid coordinates is calculated, and the discrete point is assigned to the label category corresponding to the nearest centroid. The coordinates of the first discrete point are 0 in the first dimension, 0.33 in the second dimension, and 0 in the third dimension. Its distance to the centroid of label class 1 is calculated to be 0.30, and its distance to the centroid of label class 2 is 0.47. The distances to the eight centroids are calculated sequentially, and the closest distance is found to be to label class 1. Therefore, this discrete point is assigned to the second main label class 1. The 720th discrete point is assigned to label class 2, the 1438th discrete point to label class 4, and so on, completing the label assignment for 8600 discrete points. The assignment results are as follows: 950 discrete points are assigned to the second main label class 1, 1120 to label class 2, 1050 to label class 3, 1180 to label class 4, 1090 to label class 5, 980 to label class 6, 1040 to label class 7, and 1190 to label class 8. By associating 8,600 users with their corresponding secondary subject tag categories, a set of user profile tag values for primary subject users under the secondary subject tag system is formed. This completes the cross-system conversion of tag values, enabling the secondary subject to identify the consumption characteristics of these users based on the converted tag values and carry out targeted marketing activities.
[0092] Example 2: Based on the same inventive concept, this example also provides a user profile tag value analysis system, which is used to execute the user profile tag value analysis method described above.
[0093] It should be noted that the specific methods of each execution operation in the system described in the above embodiments have been described in detail in the embodiments related to the method, and will not be elaborated here.
[0094] Finally, it should be noted that although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing embodiments or make equivalent substitutions for some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for analyzing user profile tag values, characterized in that, The method includes: obtaining user profile label values of a first subject and mapping them to a spatial coordinate system to form a first user discrete point group; generating a virtual user dataset based on the statistical distribution characteristics of the user profile label values of the first subject; inputting the virtual user dataset into a first subject clustering model and a second subject clustering model respectively for processing to obtain corresponding user profile label values, and mapping them to space to form a first simulated discrete point group and a second simulated discrete point group respectively; performing spatial fitting and matching on the first simulated discrete point group and the second simulated discrete point group and recording the transformation vector; identifying unmatched discrete point groups during the spatial fitting process; determining the label dimension corresponding to each discrete point in the unmatched discrete point group as the reference dimension; recording the first point group as the group with fewer discrete points in the reference dimension and the second point group as the group with more discrete points; segmenting and scaling the first point group according to the statistical distribution characteristics of the second point group on label dimensions other than the reference dimension and recording the segmentation and scaling vectors; performing coordinate transformation on the first user discrete point group through the transformation vector and the segmentation and scaling vector to obtain the second user discrete point group; and obtaining the user profile label values of the second subject through the second user discrete point group.
2. The user profile tag value analysis method according to claim 1, characterized in that, The method for identifying unmatched discrete point groups during spatial fitting by performing spatial fitting and matching on the first and second simulated discrete point groups and recording the transformation vector includes: defining a spatial coordinate system, where each axis of the spatial coordinate system corresponds to a label dimension of the user profile label value; fitting the first and second simulated discrete point groups to obtain a first curve and a second curve respectively by spline interpolation within the spatial coordinate system; and taking equidistant points on the first curve. The set of sampling points is Meanwhile, take equal intervals on the second curve. The set of sampling points is ,in For the number of label dimensions, The value ranges from 1 to Integer variables; through the movement vector The second curve is moved to the first curve for superposition and fitting; the sum of the squared Euclidean distances between the first and second curves is used. for: Input the coordinate data of the sampling point set and obtain the results respectively. 、 、…、 Under the conditions The transformation vector is used to superimpose and fit the second curve onto the first curve; after the second curve is superimposed and fitted onto the first curve, the Euclidean distance between a point on the first curve and its corresponding projection point on the second curve is calculated. for: ;in It is a point on the first curve. It is a point on the first curve. Points projected onto the second curve; Euclidean distance The area corresponding to a point that exceeds a set distance threshold is marked as an unmatched area.
3. The user profile tag value analysis method according to claim 2, characterized in that, The method for determining the label dimension corresponding to each discrete point in the unmatched discrete point group as the reference dimension, and classifying the first subject and the second subject with fewer discrete points in the reference dimension as the first point group and more discrete points as the second point group, and then segmenting and scaling the first point group according to the statistical distribution characteristics of the second point group in the label dimensions other than the reference dimension and recording the segmentation and scaling vector, includes: in the unmatched discrete point group, calculating the discrete point density difference value of the first simulated discrete point group and the second simulated discrete point group in each label dimension, and selecting the label dimension with the largest density difference value as the reference dimension; counting the number of discrete points of the first simulated discrete point group in the reference dimension as the first quantity, and counting the number of discrete points of the second simulated discrete point group as the second quantity; when the first quantity is less than the second quantity, recording the discrete points of the first simulated discrete point group in the reference dimension as the first point group, and the discrete points of the second simulated discrete point group in the reference dimension as the second point group; when the first quantity is greater than or equal to the second quantity, recording the discrete points of the second simulated discrete point group in the reference dimension as the first point group, and recording the discrete points of the first simulated discrete point group in the reference dimension as the second point group; The scattered points are denoted as the second point group. The distance between each discrete point in the second point group on all label dimensions except the reference dimension is calculated, and the median of the distance is recorded as the baseline distance. The coordinates of each discrete point in the first point group on other label dimensions are recorded, and the distance between adjacent discrete points in the first point group on other label dimensions is calculated. When the distance between two adjacent discrete points in the first point group is greater than the baseline distance, a new discrete point is inserted between these two adjacent discrete points. The coordinates of the new discrete point on the reference dimension are calculated by linear interpolation, and the coordinates of the new discrete point on other label dimensions are calculated by the Gaussian kernel density estimation method based on the statistical distribution characteristics of the second point group on other label dimensions. The number of discrete points before the first point group is segmented is recorded as the number before segmentation, and the number of discrete points after segmentation is recorded as the number after segmentation. The segmentation scaling ratio is calculated by dividing the number after segmentation by the number before segmentation. The coordinate offset of the newly inserted discrete point on the reference dimension is recorded, and the coordinate offset of the newly inserted discrete point on other label dimensions is recorded. The segmentation scaling ratio, reference dimension identifier, and coordinate offset are combined as the segmentation scaling vector.
4. The user profile tag value analysis method according to claim 3, characterized in that, The method for calculating the coordinates of the new discrete points in other label dimensions using the Gaussian kernel density estimation method based on the statistical distribution characteristics of the second point group in other label dimensions includes: obtaining the coordinates of the second point group in the third label dimension other than the reference dimension. The set of coordinates of all discrete points along each label dimension is denoted as . ,in Let be the number of discrete points in the second point group. The value ranges from 1 to Integer variables, The value ranges from 1 to Integer variables; calculate the second point group at the th... Bandwidth parameters at each label dimension for: ;in For the second point group in the th The standard deviation of the coordinate values on each label dimension This is the preset bandwidth adjustment factor. For preset power parameters, This is the preset sample size adjustment coefficient; for a new discrete point to be inserted in the first point group, its value at the th... Coordinates of each label dimension probability density function for: ;in Let be the Gaussian kernel function; in the... Candidate coordinate values are generated by sampling at equal intervals within the range of coordinate values for each label dimension. The probability density function value corresponding to each candidate coordinate value is calculated, and the candidate coordinate value with the largest probability density function value is selected as the new discrete point at the i-th label dimension. Coordinates of the new discrete point in each label dimension; until the coordinates of the new discrete point in all other label dimensions are obtained.
5. The user profile tag value analysis method according to claim 3, characterized in that, The method of recording the coordinate offset of the newly inserted discrete point in the reference dimension, recording the coordinate offset of the newly inserted discrete point in other label dimensions, and combining the segmentation scaling ratio, reference dimension identifier, and coordinate offset as the segmentation scaling vector includes: In the first point group, for each pair of adjacent discrete points between which a new discrete point needs to be inserted, the discrete point with the smaller coordinate value in the reference dimension is recorded as the point before insertion, and its coordinate value in the reference dimension is recorded as... The discrete point with the larger coordinate value in the reference dimension will be recorded as the insertion point, and its coordinate value in the reference dimension will be recorded as... The coordinates of the newly inserted discrete point in the reference dimension are denoted as... ; Calculate the coordinate offset of the newly inserted discrete point relative to the point before insertion in the reference dimension. For label dimensions other than the reference dimension, process each other label dimension sequentially, and insert the coordinates of the previous point in the currently processed label dimension, denoted as . The coordinates of the inserted point are denoted as... The coordinates of the newly inserted discrete point are denoted as ; Calculate the average coordinates of the point before and after insertion in the dimensions of the current label. ; Calculate the coordinate offset of the newly inserted discrete point relative to the average coordinates in the current other label dimensions. Arrange the reference dimension coordinate offsets of all newly inserted discrete points in the first point group in ascending order of their coordinate values on the reference dimension to form a reference dimension offset sequence. For each other label dimension, arrange the coordinate offsets of all newly inserted discrete points in the first point group on other label dimensions in ascending order of their coordinate values on the reference dimension to form an other label dimension offset sequence. Combine the split scaling ratio, the dimension number of the reference dimension, the reference dimension offset sequence, and all other label dimension offset sequences in sequence to form a split scaling vector.
6. The user profile tag value analysis method according to claim 5, characterized in that, The method for obtaining a second user discrete point group by performing coordinate transformation on the first user discrete point group through transformation vectors and segmentation scaling vectors, and obtaining the user profile tag value of the second subject from the second user discrete point group includes: obtaining the coordinates of each discrete point in the first user discrete point group, and labeling the coordinates of each discrete point as the first coordinate. Apply the transformation vector to each discrete point in the first user's discrete point group. Perform a coordinate translation to obtain the translated coordinates, which are then designated as the second coordinate system. The dimension number of the reference dimension is extracted from the split and scaled vector and denoted as the reference dimension number. The scaling factor for the extracted segments is denoted as the segmentation ratio. Extract the reference dimension offset sequence and all other label dimension offset sequences; for each discrete point in the first user discrete point group, determine whether the coordinate value of the discrete point in the reference dimension is within the interval that needs to be segmented and scaled. If it is within the segmentation and scaling interval, then the discrete point is segmented and scaled; if it is not within the segmentation and scaling interval, then the second coordinate of the discrete point remains unchanged; for discrete points that are within the segmentation and scaling interval, find the corresponding reference dimension coordinate offset in the reference dimension offset sequence based on the coordinate value of the discrete point in the reference dimension, and record it as the offset. Find the corresponding offset of other label dimensions in the offset sequence of other label dimensions, and record it as the offset. Add the offset to the coordinate values of the reference dimension in the second coordinate system of the discrete point. The coordinates of the other label dimensions in the second coordinates of the discrete points are added with the corresponding offsets to obtain the coordinates after segmentation and scaling, which are called the third coordinates. The set of coordinates obtained after all discrete points are processed by transformation vector translation and segmentation and scaling vector processing is called the second user discrete point group. The coordinates of each label dimension of each discrete point in the second user discrete point group are mapped back to the user profile label value system of the second subject to obtain the second subject user profile label value corresponding to each discrete point. The second subject user profile label values corresponding to all discrete points in the second user discrete point group are summarized to form the user profile label value set of the first user under the second subject label system.
7. A user profile tag value analysis system, characterized in that, include: processor; A memory for storing processor-executable instructions; wherein the processor is configured to invoke the executable instructions stored in the memory to execute a user profile tag value analysis method according to any one of claims 1-6.
Citation Information
Patent Citations
Method and device for labeling user
CN113554041A
Personalized user portrait optimization method based on multi-source data fusion
CN118094011A