Information recommendation method and device, equipment and storage medium
By calculating the changes in the profile data of service objects, dynamically adjusting the centroid, and deciding whether to re-divide the set based on the rate of change, the problem of frequent updates in service object grouping is solved, the stability and continuity of information recommendation are achieved, and the experience and effect are improved.
Patent Information
- Application Number
- CN202511661297.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-13
- Publication Date
- 2026-02-27
AI Technical Summary
In existing technologies, the grouping and updating of service objects are too frequent, resulting in a waste of computing resources and the inability to continuously and stably execute information recommendation strategies, which affects the effect and user experience.
By calculating the changes in the profile data of service objects in the current period, the centroid is dynamically adjusted and the service object set is re-divided based on the rate of change. An adaptive grouping maintenance mechanism is adopted to avoid frequent changes caused by minor fluctuations.
It enables dynamic adjustment and optimization of service recipient grouping, ensuring the continuity and stability of information recommendation, and improving the service recipient experience and recommendation effect.
Smart Images

Figure CN121579770A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application relate to the field of big data, and in particular to an information recommendation method and device, equipment and a storage medium. BACKGROUND
[0002] Reasonably and effectively classifying a large number of service objects is the core basis for realizing accurate information recommendation. Taking a bank as an example, the total number of its customers has reached hundreds of millions. Grouping these large numbers of customers is a prerequisite for developing accurate information pushing, risk control and personalized services.
[0003] In the prior art, a one-time clustering is usually performed on service objects to form fixed groups, and the entire service object grouping is updated globally after a fixed time interval, and information recommendation is re-performed based on the updated service object grouping.
[0004] However, the prior art can cause the service object grouping to be updated too frequently, which not only wastes a large amount of computing resources, but also causes the information recommendation strategy to be unable to be continuously and stably executed, thereby affecting the information recommendation effect and the experience of service objects. SUMMARY
[0005] Embodiments of the present application provide an information recommendation method, device, equipment and storage medium for improving the stability and continuity of information recommendation, and improving the information recommendation effect and the experience of service objects.
[0006] To achieve the above-mentioned purpose, embodiments of the present application adopt the following technical solutions: In a first aspect, an information recommendation method is provided, comprising: obtaining state data of a plurality of service objects in a current period, and obtaining portrait data of the plurality of service objects in the current period according to the state data; determining a data change value of the portrait data of the plurality of service objects relative to historical portrait data of the plurality of service objects in a previous period, and updating a centroid of one or more service object sets in N service object sets based on a size of the data change value to determine the centroid of each service object set in the current period; wherein N is a positive integer greater than 1, and the N service object sets are determined by clustering according to the portrait data of the plurality of service objects in advance; determining a change rate of the centroid of each service object set in the current period relative to the centroid of each service object set in the previous period; wherein the change rate represents a change degree of the centroid of the service object set; if there is a change rate of the centroid of the service object set greater than or equal to a first preset threshold, then the plurality of service objects are re-divided into N target service object sets, and the N target service object sets are taken as the service object sets in the current period. an information recommendation strategy corresponding to each service object set is executed.
[0007] In the embodiment, a data change value of portrait data of a current period service object relative to data of a previous period is calculated, a centroid of a service object set is updated based on a size of the data change value, it is determined whether to re-divide the service object set according to a centroid change rate before and after the update, and finally an information recommendation strategy corresponding to each service object set is executed. An adaptive and on-demand adjustment service object set maintenance mechanism is constructed, and dynamic adjustment and optimization of service object grouping are realized. This method effectively avoids frequent calculation resource consumption caused by fixed period comprehensive update of the service object set. The centroid change rate is used as a basis for re-division, which ensures that grouping is adjusted only when the service object state changes substantially, avoids frequent changes of the service object set caused by slight fluctuations, and thus ensures the continuity and stability of the information recommendation service for the service object set, thereby improving the experience of the service object and the information recommendation effect.
[0008] In a possible implementation of the first aspect, the updating of the centroid of one or more service object sets in the N service object sets based on the size of the data change value comprises: if the data change value is less than a second preset threshold, adjusting the centroid of the service object set based on the data change value to determine the centroid of each service object set in the current period; if the data change value is greater than or equal to the second preset threshold, re-clustering the plurality of service objects based on the portrait data of the plurality of service objects to generate N new service object sets, and determining the centroid of each new service object set in the current period.
[0009] Based on the above technical content, the embodiment sets a second preset threshold as a basis for judgment, and realizes a differentiated centroid update mechanism based on the degree of data change: when the data change value is small, it indicates that the service object state only has slight fluctuations, and at this time, the centroid is updated by an incremental adjustment method, which can avoid the global calculation overhead while ensuring the continuous and accurate tracking of the centroid to the small evolution of the service object state, and preventing the centroid from being solidified and distorted; when the data change value is large, it indicates that the service object state has changed significantly, and at this time, new service object sets are generated by re-clustering, which can fundamentally reset the centroid to accurately reflect the real distribution of the service object in the current period, and avoid the accumulated error problem caused by continuous adjustment based on the old centroid. This mechanism ensures that the centroid is reasonably updated regardless of the magnitude of the service object state change, thereby maintaining the accuracy and effectiveness of service object grouping as a whole, and laying a stable and reliable foundation for accurate information recommendation.
[0010] In a possible implementation form of the first aspect, the adjusting the centroid of the service object set based on the data change value comprises: determining a target service object whose profile data changes, and determining a target service object set to which the target service object belongs, a number of service objects in the target service object set, and a historical centroid of the target service object set in a previous period; calculating a first product of the historical centroid and the number of service objects, and adding the first product and the data change value to obtain a first sum value; taking a ratio of the first sum value and the number of service objects as the centroid of the target service object set in the current period.
[0011] Here, by accurately calculating the current centroid of the target service object set based on the historical centroid, the number of service objects and the data change value, efficient local updating of the centroid is realized. This method only adjusts the target cluster to which the changed service object belongs, avoids full re-clustering, greatly reduces the calculation complexity while maintaining the accuracy of the centroid, and ensures smooth and continuous adjustment of the centroid through arithmetic operation, avoids sudden changes, and keeps the service object set structure stable under small changes.
[0012] In a possible implementation form of the first aspect, the re-clustering the plurality of service objects based on the profile data of the plurality of service objects comprises: determining N initial centroids based on the profile data of the plurality of service objects; repeating the following steps until a preset termination condition is met to obtain N new service object sets and determine the centroid of each new service object set in the current period: calculating the distance between the profile data of each service object and each initial centroid, and assigning the service object to the service object set corresponding to the initial centroid with the smallest distance; calculating the arithmetic mean of the profile data of all service objects in each service object set, and taking the arithmetic mean as the new initial centroid of the service object set.
[0013] In the embodiment, when the data changes significantly, the service object set is re-clustered based on the portrait data, ensuring that the division of the service object set is accurately matched with the current state of the service object. Through the iterative steps of "assigning service objects and calculating new centroids", the centroid of the service object set is continuously optimized to the position that best represents the service objects in the cluster, ensuring the scientificity and representativeness of the newly generated service object set. Meanwhile, the preset termination condition effectively controls the calculation cost on the premise of ensuring the convergence of the quality of the service object set, ensuring that when global update is needed, a stable and reliable service object set can be efficiently generated.
[0014] In a possible implementation of the first aspect, the re-dividing the plurality of service objects into N target service object sets comprises: If the data change value is less than the second preset threshold, the plurality of service objects are re-clustered based on the portrait data of the plurality of service objects to generate N target service object sets. If the data change value is greater than or equal to the second preset threshold, the N new service object sets generated are taken as the N target service object sets.
[0015] Based on the above technical content, in the embodiment, if the centroid adjustment is only performed in the early stage due to a small data change value, but it is found that the centroid change rate is still excessive in the later stage, it indicates that local adjustment is insufficient to reflect the overall transition of the service object. At this time, re-clustering is performed based on the latest portrait data to generate a target service object set that is completely matched with the current state. If re-clustering has been performed in the early stage due to a large data change value and a new service object set has been generated, it indicates that the service object set has completed global update. At this time, the new service object set is directly taken as the target service object set without repeated calculation. This mechanism effectively avoids unnecessary secondary clustering of the updated cluster when the centroid change rate triggers re-division, maximally eliminates redundant calculation overhead, and ensures that the division of the service object set is always up-to-date and accurate.
[0016] In a possible implementation of the first aspect, the state data includes multiple types, and the state data includes one or more of transaction flow data, behavior interaction data, and resource holding data. The portrait data of the plurality of service objects in the current period is obtained according to the state data, comprising: For the state data of each service object, the following steps are performed to obtain the portrait data of the plurality of service objects in the current period: Different types of state data are aggregated respectively to obtain different types of portrait feature values. The image feature values of each type are normalized to obtain standardized image feature values; The normalized feature values of each type are integrated to obtain the image data of the service object in the current period.
[0017] In the embodiments of the present application, multi-dimensional image features of the service object are obtained by aggregating multiple types of service object state data, and are integrated into standardized image data through normalization processing, ensuring that the service object image is comprehensive and standardized. High-quality and consistent input data can be provided for clustering, improving the accuracy of service object division; at the same time, normalization eliminates data scale differences, avoids some features from dominating the clustering results, makes the service object grouping more fair and reasonable, and lays a reliable data foundation for subsequent accurate information recommendation.
[0018] In a possible implementation of the first aspect, the method further includes: If the change rates of the service object set centroids are all less than or equal to the first preset threshold, the N service object sets are taken as the service object sets in the current period.
[0019] Here, when the change rates of the service object set centroids are all less than or equal to the threshold, the existing grouping is maintained and the corresponding information recommendation strategy is executed, ensuring the stability of the grouping and the continuity of the information recommendation. It can avoid frequent updating of the service object set due to slight fluctuations, ensure that the information recommendation strategy can act on the same service object set for a long time and stably, and improve the information recommendation effect; when the service object set is updated due to the change rate of the centroid exceeding the threshold, the embodiments execute the information recommendation strategy based on the new and more accurate service object set, ensuring that the information recommendation strategy is always highly matched with the current service object state. The combination of the two can realize the reduction of computing consumption while ensuring that the information recommendation strategy is stable and continuous and can be updated in time, ultimately supporting fine and continuous information recommendation for a large number of service objects.
[0020] In a second aspect, an information recommendation device is provided, which includes: An acquisition unit is configured to acquire state data of a plurality of service objects in a current period, and obtain image data of the plurality of service objects in the current period according to the state data; A first updating unit is configured to calculate data change values of the image data of the plurality of service objects relative to historical image data of the plurality of service objects in a previous period, and update centroids of one or more service object sets in N service object sets based on the sizes of the data change values, to determine the centroids of the service object sets in the current period; wherein N is a positive integer greater than 1, and the N service object sets are determined by clustering according to the image data of the plurality of service objects in advance; a calculation unit configured to determine a change rate of the center of mass of each service object set in the current period relative to the center of mass of each service object set in a previous period, wherein the change rate represents a degree of change of the center of mass of the service object set; a second updating unit configured to, if the change rate of the center of mass of the service object set is greater than or equal to a first preset threshold, re-divide the plurality of service objects into N target service object sets, and take the N target service object sets as the service object sets in the current period; an execution unit configured to execute an information recommendation strategy corresponding to each service object set.
[0021] In a third aspect, an electronic device is provided, and the method includes a memory and at least one processor. The memory is in communication connection with the processor. The memory is configured to store computer program code including computer instructions. When the processor executes the computer instructions, the electronic device performs the method as described in the first aspect and any possible implementation manner thereof.
[0022] In a fourth aspect, a computer readable storage medium is provided, and the computer readable storage medium stores computer instructions. When the computer instructions are executed by a processor, the computer instructions are used to implement the method as described in the first aspect and any possible implementation manner thereof.
[0023] In a fifth aspect, a computer program product is provided, and when the computer program product is run on a computer / executed by a processor of a computer, the computer program product implements the method as described in the first aspect and any possible implementation manner thereof. The computer can be the electronic device as described in the third aspect and any possible implementation manner thereof.
[0024] It can be understood that the information recommendation device of the second aspect, the electronic device of the third aspect, the computer readable storage medium of the fourth aspect, and the computer program product of the fifth aspect can achieve the beneficial effects as described in the first aspect and any possible implementation manner thereof, and details are not repeated here. BRIEF DESCRIPTION OF DRAWINGS
[0025] Figure 1 is a flowchart of an information recommendation method provided by an embodiment of the present application; Figure 2 is a flowchart of another information recommendation method provided by an embodiment of the present application; Figure 3 is a flowchart of yet another information recommendation method provided by an embodiment of the present application; Figure 4 is a structural diagram of an information recommendation device provided by an embodiment of the present application; Figure 5 FIG. 1 is a structural schematic diagram of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0026] Hereinafter, the terms "first" and "second" are used only for the purpose of description, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined with "first" and "second" can explicitly or implicitly include one or more of the features. In the description of the embodiments, unless otherwise specified, the meaning of "a plurality of" is two or more.
[0027] The exemplary embodiments will be described in detail below with reference to the drawings. In the following description, the same numbers are used to represent the same elements in different drawings. The embodiments described in the following exemplary embodiments do not represent all the embodiments consistent with the present application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the present application, as detailed in the appended claims.
[0028] In the technical solutions provided by the embodiments of the present application, the collection, storage, use, processing, transmission, provision and disclosure of information such as financial data or user data comply with relevant laws and regulations and do not violate public order and good customs.
[0029] It should be noted that in the embodiments of the present application, some industry existing solutions such as software, components, models, etc. may be mentioned, which should be considered as exemplary, and the purpose is only to illustrate the feasibility of the implementation of the technical solutions of the present application, but it does not mean that the applicant has or will necessarily use the solution.
[0030] In the related art, the service objects are usually clustered once to form fixed groups, and the entire service object set is updated globally after a fixed time interval, and information recommendation is performed again based on the updated service object groups. This fixed update timing of the set update method may lead to too frequent group updates, which continuously consumes a large amount of computing resources, causes the information recommendation strategy to be unable to continuously and stably execute, and affects the information recommendation effect and the experience of the service objects.
[0031] To improve the stability and continuity of information recommendation, and enhance the recommendation effect and user experience, this application's implementation calculates the change in the profile data of service objects in the current period compared to the previous period. Based on the magnitude of this change, the centroid of the service object set is updated. Then, the rate of change of the centroid before and after the update determines whether to re-divide the service object set, thus achieving dynamic adjustment and optimization of service object grouping. This avoids frequent changes in the service object set due to minor fluctuations. Finally, the information recommendation strategy corresponding to each service object set is executed, ensuring the continuity and stability of the information recommendation service for each service object set, thereby improving the user experience and recommendation effect.
[0032] The information recommendation method provided in this application can be applied to various fields, including but not limited to the financial field and the Internet of Things field. Taking the financial field as an example, this application can be applied to information recommendation for bank customer groups, grouping hundreds of millions of bank customers according to their consumption habits, fund holdings and asset allocation characteristics, and performing corresponding information recommendations for different groups.
[0033] This application provides an information recommendation method that can be applied to electronic devices. The electronic device can be a single server, a server cluster consisting of multiple servers, a cloud computing platform with data processing capabilities, an edge computing device, a chip, or a device with computing capabilities. This application does not limit the specific form of the electronic device.
[0034] Figure 1 This is a flowchart illustrating an information recommendation method provided in an embodiment of this application. Figure 1 As shown, the method in the embodiments of this application may include: S101. Obtain the status data of multiple service objects in the current period, and obtain the profile data of multiple service objects in the current period based on the status data.
[0035] In this context, "service targets" refers to the target groups in information recommendation services whose behaviors and preferences can be quantified and segmented. For example, service targets may include internet users and platform customers.
[0036] Status data is data generated by a service object that reflects its behavioral patterns or attribute characteristics. It can cover a variety of types, such as transaction flow data, behavioral interaction data, and resource holding data, or one or more of these.
[0037] Profile data is structured data obtained by standardizing multi-dimensional state data through aggregation, calculation, and normalization, and is used for model calculation and feature analysis.
[0038] Exemplarily, the embodiment can be connected to relevant data sources such as a business database, a log system, and a device monitoring platform through an interface, and batch acquisition of state data of a plurality of service objects in a current period, for example, in the past one hour, one day, or one week, can be performed.
[0039] In one example, the service objects can be customers of a bank, and the state data can include "daily transaction flow", "APP page click behavior interaction data", and "held savings and financial resources data" of the customers.
[0040] For the state data of each service object, the following standardization processing can be performed to obtain the portrait data: different types of state data are aggregated respectively to obtain different types of portrait feature values, for example, "total transaction amount in the past month" obtained by aggregating transaction flow data, and "weekly average login times" obtained by aggregating behavior interaction data; to prevent some features from having a dominant influence on subsequent clustering due to excessively large dimension or value range, normalization processing is performed on each type of portrait feature value to scale it to a unified value interval to obtain the standardized portrait feature value; finally, each type of normalized feature value is integrated to form a portrait data vector representing the comprehensive features of the service object in the current period.
[0041] S102, calculate data change values of portrait data of a plurality of service objects relative to historical portrait data of the plurality of service objects in a previous period, and update a centroid of one or more service object sets in the N service object sets based on sizes of the data change values to determine the centroid of each service object set in the current period; wherein N is a positive integer greater than 1, and the N service object sets are determined in advance according to clustering of the portrait data of the plurality of service objects.
[0042] The service object set refers to a group of service objects with similar portrait features divided by a clustering algorithm. The centroid represents the center point of a service object set, which is determined by the arithmetic mean of the portrait data of all service objects in the cluster. The data change value is used to quantify the change amplitude of the overall state of the service object between two periods.
[0043] Exemplarily, the embodiment calculates the overall difference between the portrait data of all service objects in the current period and the previous period as the data change value. The value can be determined by calculating the Euclidean distance between the corresponding feature vectors, the cosine similarity change amount, or other difference measurement methods.
[0044] Based on the size of the data change value, the embodiment can update the centroid of the service object set using different strategies: for example, local adjustment or global reconstruction to ensure that the centroid can reasonably reflect the current distribution of the service object state.
[0045] S103, determine a change rate of each service object set centroid relative to the centroid of each service object set in the previous period; wherein the change rate represents the change degree of the service object set centroid.
[0046] Exemplarily, the embodiment calculates the change degree of each service object set centroid between two periods as the change rate of the service object set centroid, to monitor the stability and evolution trend of the core feature of each service object set.
[0047] S104, if the change rate of the service object set centroid is greater than or equal to the first preset threshold, re-divide the plurality of service objects into N target service object sets, and take the N target service object sets as the service object sets in the current period.
[0048] Exemplarily, the embodiment monitors the change rate of each service object set centroid, and triggers the re-division of the service object set when any change rate exceeds or reaches the first preset threshold. For example, the re-clustering operation can be performed based on the latest service object portrait data.
[0049] The number of target service object sets can still be N, or can be other numbers, which can be adaptively changed according to actual needs.
[0050] S105, execute an information recommendation strategy corresponding to each service object set.
[0051] Exemplarily, after obtaining the service object sets in the current period, the embodiment executes a corresponding information recommendation strategy for each service object set.
[0052] In the bank scenario, the service object set can correspond to a customer group with similar characteristics, and different product information recommendations, activity information recommendations or service strategies can be implemented for different customer groups.
[0053] In summary, the embodiment calculates the data change value of the service object portrait data in the current period relative to the data in the previous period, updates the service object set centroid based on the size of the data change value, and then determines whether to re-divide the service object set according to the change rate of the centroid before and after the update, to realize the dynamic adjustment and optimization of the service object grouping. Avoiding frequent changes of the service object set due to slight fluctuations, and finally executing an information recommendation strategy corresponding to each service object set, thereby ensuring the continuity and stability of the information recommendation service for the service object set, and improving the experience of the service object and the information recommendation effect.
[0054] Figure 2 Another flowchart of an information recommendation method provided by the embodiment of the present application is shown in FIG. 5. As shown in FIG. 5, the method in the embodiment of the present application can include: Figure 2 S101, obtain a plurality of service objects in a current period; S201, acquire state data of a plurality of service objects in a current period; the state data includes a plurality of types, and the state data includes one or more of transaction flow data, behavior interaction data, and resource holding data.
[0055] Taking a bank customer as an example of the service object, the embodiment can be connected to the data interface of the bank business system to batch acquire the transaction flow data, the behavior interaction data, and the resource holding data of each customer in the current period.
[0056] The transaction flow data can include, for example, deposit and withdrawal records, the behavior interaction data can include, for example, APP login frequency and function click data, and the resource holding data can include, for example, deposit amount and financial product holding data.
[0057] S202, obtain portrait data of the plurality of service objects in the current period according to the state data.
[0058] In one example, S202 includes the following steps: For the state data of each service object, the following steps are performed to obtain the portrait data of the plurality of service objects in the current period: Different types of state data are aggregated respectively to obtain different types of portrait feature values.
[0059] The portrait feature values of each type are normalized to obtain standardized portrait feature values.
[0060] The normalized feature values of each type are integrated to obtain the portrait data of the service object in the current period.
[0061] For example, different types of data are aggregated respectively, for example, the transaction flow data is aggregated to obtain "monthly average transaction amount", and the behavior interaction data is aggregated to obtain "weekly average login times". Subsequently, normalization processing is performed, and the Min-Max normalization method is used to scale the portrait feature values of each different type to a unified numerical interval. Finally, all the standardized feature values are integrated to form a portrait data vector of the service object in the current period.
[0062] This processing method aggregates multiple types of service object state data to obtain multi-dimensional portrait features of the service object, and integrates the normalized processing to obtain standardized portrait data, ensuring that the service object portrait is comprehensive and standard. It can provide high-quality and consistent input data for clustering, improving the accuracy of service object division; at the same time, normalization eliminates data scale differences, avoids some features from dominating the clustering results, and makes the service object grouping more fair and reasonable, laying a reliable data foundation for subsequent accurate information recommendation.
[0063] The normalization processing expression can be: (1) where x represents the feature value of the original portrait feature of a certain type, min(x) represents the minimum value of the feature in the entire data set, max(x) represents the maximum value of the feature in the entire data set, x' represents the normalized value, and the range is usually [0, 1].
[0064] S203, calculate the data change value of the portrait data of the plurality of service objects relative to the historical portrait data of the plurality of service objects in the previous period.
[0065] Exemplarily, the embodiment calculates the overall difference between the portrait data of all service objects in the current period and the previous period as the data change value. The value can be obtained by calculating the Euclidean distance or other difference measure between the corresponding feature vector sets.
[0066] S204, if the data change value is less than a second preset threshold, adjusting the centroid of the service object set based on the data change value to determine the centroid of each service object set in the current period.
[0067] In a feasible implementation, S204 includes the following steps: determining a target service object whose portrait data has changed, and determining the target service object set to which the target service object belongs, the number of service objects in the target service object set, and the historical centroid of the target service object set in the previous period.
[0068] calculating a first product of the historical centroid and the number of service objects, and adding the first product to the data change value to obtain a first sum.
[0069] the ratio of the first sum to the number of service objects as the centroid of the target service object set in the current period.
[0070] Exemplarily, when the data change value is small, for example, the data change value is less than the second preset threshold, it indicates that the state of the customer group only has a slight fluctuation, and the embodiment adopts an incremental update strategy to update the centroid of the service object set.
[0071] In a feasible implementation, the embodiment first locates to the target service object whose state has changed and the target service object set to which the target service object belongs. Then, the centroid of each service object set in the current period is calculated by using the following centroid incremental update expression: (2) wherein, is the historical centroid of the target service object set in the previous period, is the centroid of the target service object set in the current period, a number of service objects in the target service object set, is a data change value.
[0072] In another example, when there is a new service object joins the service object set The incremental update expression of the centroid of the service object set is as follows: (3) wherein, is the service object set old centroid, is the service object set new centroid, characterizes a number of service objects included in the service object set .
[0073] The embodiment only makes local adjustment for the service object set involved in the change, avoids the calculation overhead of global re-clustering, can quickly respond when the customer characteristics only change slightly, and significantly improves the update efficiency.
[0074] S205, if the data change value is greater than or equal to the second preset threshold, re-cluster the plurality of service objects based on the portrait data of the plurality of service objects, generate N new service object sets, and determine the centroid of each new service object set in the current period.
[0075] wherein N is a positive integer greater than 1, and the N service object sets are determined in advance according to the portrait data of the plurality of service objects.
[0076] In a feasible implementation, S205 includes the following steps: determine N initial centroids based on the portrait data of the plurality of service objects.
[0077] repeat the following steps until the preset termination condition is met, obtain N new service object sets, and determine the centroid of each new service object set in the current period: calculate the distance between the portrait data of each service object and each initial centroid, and assign the service object to the service object set corresponding to the initial centroid with the smallest distance.
[0078] calculate the arithmetic mean of the portrait data of all service objects in each service object set, and take the arithmetic mean as the new initial centroid of the service object set.
[0079] For example, if the data change value is greater than or equal to the second preset threshold, it indicates that the status of the service object has changed significantly. In this case, the centroid is updated using a full update method. That is, based on the profile data of multiple service objects in the current period, the multiple service objects are re-clustered (for example, the K-Means algorithm is re-executed) to generate N new service object sets, and the centroid of each new service object set in the current period is determined.
[0080] In one example, (1) In this embodiment, N cluster centers are initialized and the number of service object sets is set to N for clustering.
[0081] (4) Where N represents the number of clusters, Let x represent the set of data points in the i-th cluster, where x is the cluster to which x belongs. A certain data point, This represents the centroid (mean) of the i-th cluster. For clusters The number of data points.
[0082] (2) Assign each image feature point to the nearest cluster center to form N clusters.
[0083] (3) Calculate the average value of each cluster and use it as the new cluster center.
[0084] (4) Repeat steps (2) and (3) above until the cluster center no longer changes or the maximum number of iterations is reached.
[0085] This embodiment re-clusters and generates a service object set based on profile data when data changes significantly, ensuring that the division of the service object set accurately matches the current state of the service objects, which helps to make accurate information recommendations.
[0086] S206. Determine the rate of change of the centroid of each service object set in the current period relative to the centroid of each service object set in the previous period; wherein, the rate of change characterizes the degree of change of the centroid of the service object set.
[0087] For example, in this embodiment, the Euclidean distance between the centroids of each service object set and the two periods is calculated as the rate of change of the centroids of the service object set.
[0088] In one example, this embodiment calculates the Euclidean distance D between the centroid of the current period's service object set and the centroid of the previous period's service object set. The calculation expression is as follows: (5) in, This represents the centroid of the set of service objects in the current period. This represents the centroid of the set of service objects in the previous period.
[0089] S207, if the rate of change of the centroid of the service object set is greater than or equal to the first preset threshold, re-divide the plurality of service objects into N target service object sets, and take the N target service object sets as the service object sets of the current period.
[0090] In one example, S207 includes the following two implementation manners: The first implementation manner is that if the data change value is less than the second preset threshold, re-cluster the plurality of service objects based on the portrait data of the plurality of service objects to generate N target service object sets. The second implementation manner is that if the data change value is greater than or equal to the second preset threshold, take the N new service object sets generated as the N target service object sets.
[0091] Illustratively, the embodiment monitors the rate of change of the centroid of each service object set, and when the rate of change of the centroid of any service object set exceeds the first preset threshold, triggers re-division of the service object set. In specific implementation, there are two cases: if incremental update is adopted in the early stage (i.e., the data change value is less than the second preset threshold), complete re-clustering based on the latest portrait data is needed to generate new target service object sets; if complete update has been performed in the early stage (i.e., the data change value is greater than or equal to the second preset threshold), the new service object sets generated are directly taken as the target service object sets.
[0092] The embodiment avoids unnecessary secondary clustering of the updated service object sets by reusing the clustering results in the early stage, and at the same time, maximizes the elimination of redundant computing overhead while ensuring that the division of the service object sets is always up-to-date and accurate.
[0093] In a feasible implementation manner, if the rate of change of the centroid of each service object set is less than or equal to the first preset threshold, take the N service object sets as the service object sets of the current period.
[0094] S208, execute an information recommendation strategy corresponding to each service object set.
[0095] Illustratively, after obtaining the service object sets of the current period, the embodiment executes a corresponding information recommendation strategy for each service object set.
[0096] In the bank scenario, the service object sets can correspond to customer groups with similar characteristics, and different customer groups can be implemented with differentiated product recommendation, marketing activities or service strategies.
[0097] This embodiment executes the information recommendation strategy based on an updated and more accurate set of service objects, ensuring that the information recommendation strategy is always highly matched with the current state of the service objects, which can improve the experience of service objects and the effect of information recommendation.
[0098] Figure 3 This is a flowchart illustrating another information recommendation method provided in an embodiment of this application; as shown below. Figure 3 As shown, taking the scenario of segmenting bank customer groups as an example, the service objects correspond to the bank's customers, and the service object set corresponds to customer groups with similar consumption habits, similar fund holdings, and similar fund allocation.
[0099] In this embodiment, the bank customer's multi-dimensional status data, such as transaction history, behavioral interactions, and asset holdings, are first normalized to form a standardized customer profile. Then, initial k-means clustering is performed to divide the customer into N initial groups.
[0100] The dynamic monitoring phase then begins: by calculating the change in customer profile data for the current period relative to the previous period, it is determined whether the data has changed significantly. For example, the change is compared with a corresponding threshold. If the change is equal to or greater than a second threshold, the change is considered significant; if it is less than the second threshold, the change is considered insignificant. If the change is insignificant, an incremental centroid update operation is performed, making only local adjustments to the centroids of the affected customer groups. If the change is significant, the customer clustering is recalculated to generate a new customer segmentation plan.
[0101] After the centroid is updated, the rate of change of each customer group's centroid relative to the previous period is further calculated as a criterion for judging the stability of the customer group. When the rate of change exceeds the corresponding threshold, the customer group is re-divided; otherwise, the existing grouping is maintained, the update status of the customer group is recorded, and the group waits for the next update check and continues to execute the corresponding information recommendation strategy.
[0102] This embodiment achieves dynamic optimization management of bank customer groups through a closed-loop control mechanism of "data monitoring - centroid update - change assessment - information recommendation". It avoids the consumption of computing resources caused by frequent re-clustering and ensures that customer grouping always keeps in sync with actual behavioral characteristics, providing a continuous and reliable grouping foundation for precision marketing, risk control and personalized services.
[0103] Figure 4 This is a schematic diagram of the structure of an information recommendation device provided in an embodiment of this application. Figure 4 As shown, the information recommendation device includes an acquisition unit 401, a first update unit 402, a calculation unit 403, a second update unit 404, and an execution unit 405.
[0104] The acquisition unit 401 is configured to acquire state data of a plurality of service objects in a current period, and obtain portrait data of the plurality of service objects in the current period according to the state data.
[0105] The first updating unit 402 is configured to calculate a data change value of the portrait data of the plurality of service objects relative to historical portrait data of the plurality of service objects in a previous period, and update a centroid of one or more service object sets in the N service object sets based on a size of the data change value, to determine the centroid of each service object set in the current period; wherein N is a positive integer greater than 1, and the N service object sets are determined according to clustering of the portrait data of the plurality of service objects.
[0106] The calculation unit 403 is configured to determine a change rate of the centroid of each service object set in the current period relative to the centroid of each service object set in the previous period; wherein the change rate represents a change degree of the centroid of the service object set.
[0107] The second updating unit 404 is configured to, if there is a change rate of the centroid of the service object set greater than or equal to a first preset threshold, redivide the plurality of service objects into N target service object sets, and take the N target service object sets as the service object sets in the current period.
[0108] The execution unit 405 is configured to execute an information recommendation strategy corresponding to each service object set.
[0109] In some embodiments, the first updating unit 402 is specifically configured to: If the data change value is less than a second preset threshold, adjust the centroid of the service object set based on the data change value, to determine the centroid of each service object set in the current period.
[0110] If the data change value is greater than or equal to the second preset threshold, recluster the plurality of service objects based on the portrait data of the plurality of service objects, to generate N new service object sets, and determine the centroid of each new service object set in the current period.
[0111] In some embodiments, the first updating unit 402 is specifically configured to: Determine a target service object whose portrait data has changed, and determine a target service object set to which the target service object belongs, a number of service objects in the target service object set, and a historical centroid of the target service object set in the previous period.
[0112] Calculate a first product of the historical centroid and the number of service objects, and add the first product to the data change value to obtain a first sum.
[0113] Take a ratio of the first sum to the number of service objects as the centroid of the target service object set in the current period.
[0114] In some embodiments, the first updating unit 402 is specifically configured to: determine N initial centroids based on the portrait data of the plurality of service objects.
[0115] repeat the following steps until a preset termination condition is met, obtain N new service object sets, and determine a centroid of each new service object set in a current period: calculate a distance between the portrait data of each service object and each initial centroid, and assign the service object to a service object set corresponding to the initial centroid with the smallest distance.
[0116] calculate an arithmetic mean of the portrait data of all service objects in each service object set, and take the arithmetic mean as a new initial centroid of the service object set.
[0117] In some embodiments, the second updating unit 404 is specifically configured to: if the data change value is less than a second preset threshold, re-cluster the plurality of service objects based on the portrait data of the plurality of service objects to generate N target service object sets.
[0118] if the data change value is greater than or equal to the second preset threshold, take the N new service object sets generated as the N target service object sets.
[0119] In some embodiments, the state data includes multiple types, and the state data includes one or more of transaction flow data, behavior interaction data, and resource holding data.
[0120] The obtaining unit 401 is specifically configured to: for the state data of each service object, perform the following steps to obtain the portrait data of the plurality of service objects in the current period: aggregate different types of state data respectively to obtain portrait feature values of different types.
[0121] normalize the portrait feature values of each type to obtain standardized portrait feature values.
[0122] integrate the normalized feature values of each type to obtain the portrait data of the service object in the current period.
[0123] In some embodiments, the apparatus further includes a processing unit configured to: if the change rates of the centroids of the service object sets are all less than or equal to a first preset threshold, take the N service object sets as the service object sets in the current period.
[0124] The information recommendation apparatus provided by the embodiments of the present application can execute the method shown in the method embodiments, and the implementation principles and beneficial effects can refer to the related description in the method embodiments, which will not be repeated here.
[0125] Figure 5 A structural schematic diagram of an electronic device is provided in the embodiments of the present application. As shown in the figure, Figure 5 The electronic device includes a memory 501 and at least one processor 502.
[0126] The memory 501 is configured to store computer program code, which includes computer instructions. The computer instructions run in the electronic device to implement the method shown in the method embodiments. For example, the memory can include a random access memory (RAM), and can also include a non-volatile memory (NVM), such as at least one disk memory, and can also be a U disk, a mobile hard disk, a read-only memory, a magnetic disk or an optical disk, etc.
[0127] The processor 502 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. The processor 502 can also be other general-purpose processors. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0128] The memory 501 and the processor 502 are in communication connection. For example, the memory 501 can be connected with the processor 502 through a system bus and complete mutual communication. The system bus can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, an industry standard architecture (ISA) bus, etc. The system bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, only one thick line is shown in the figure, but it does not mean that there is only one bus or only one type of bus.
[0129] Optionally, the memory 501 can be independent or integrated with the processor 502. When the memory 501 is independently arranged, the memory 501 is connected with the processor 502 through a system bus.
[0130] The embodiment of the present application further provides a chip for running instructions, which is used for executing the technical solution of the information recommendation method in the above embodiment.
[0131] The embodiment of the present application further provides a computer readable storage medium, which stores computer instructions. When the computer instructions are executed by a processor, the technical solution of the information recommendation method in the above embodiment is implemented. Specifically, when the computer instructions are executed by the processor, the above electronic device can execute the technical solution of the information recommendation method in the above embodiment.
[0132] The embodiment of the present application further provides a computer program product, which includes a computer program stored in a computer readable storage medium. At least one processor can read the computer program from the computer readable storage medium, and when the at least one processor executes the computer program, the technical solution of the information recommendation method in the above embodiment can be implemented. The above computer readable storage medium can be realized by any type of volatile or nonvolatile storage devices or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk. The computer readable storage medium can be any available medium that can be accessed by a general or special purpose computer. An example computer-readable storage medium is coupled to the processor such that the processor can read information from the storage medium and can write information to the computer-readable storage medium. Of course, the computer-readable storage medium can be a part of the processor. The processor and the computer-readable storage medium can be located in an Application Specific Integrated Circuits (ASIC). Of course, the processor and the computer-readable storage medium can be located in a remote location and coupled to the system via a network, but this is not required. Further, the processor and the computer-readable storage medium can be in communication with one another through a network.
[0133] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other manners. For example, the division of the above-described device embodiments is merely an example, and there can be other division manners. For example, multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections between different modules can be indirect couplings or communication connections through some interfaces, devices, or modules, and can be in electrical, mechanical, or other forms.
[0134] The modules illustrated as separate components can or can not be physically separate, and the components illustrated as modules can or can not be physical units, that is, can be located in one place, or can be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to implement the embodiments of the present application.
[0135] In addition, each functional module in the various embodiments of the present application can be integrated in one processing unit, or each module can be physically present separately, or two or more modules can be integrated in one unit. The above-mentioned units can be realized in the form of hardware, or in the form of hardware plus software functional units.
[0136] The integrated modules realized in the form of software functional modules can be stored in a computer-readable storage medium. The software functional modules stored in the storage medium include a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute some steps of the various embodiments of the method of the present application.
[0137] It should be understood that the steps of the method disclosed in the embodiments of the present application can be directly embodied as hardware processing, or a combination of hardware and software modules in the processor.
[0138] Those skilled in the art can understand that all or part of the steps of the above-mentioned method embodiments can be completed by program instruction related hardware. The foregoing program can be stored in a computer readable storage medium. The program executes to perform the steps of the above-mentioned method embodiments; and the foregoing storage medium includes various storage media that can store program codes, such as ROM, RAM, magnetic disk or optical disk.
[0139] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. An information recommendation method characterized by comprising: The method comprises: acquiring state data of a plurality of service objects in a current period, and obtaining portrait data of the plurality of service objects in the current period according to the state data; determining a data change value of the portrait data of the plurality of service objects relative to historical portrait data of the plurality of service objects in a previous period, and updating a centroid of one or more service object sets in N service object sets based on a size of the data change value to determine the centroid of each service object set in the current period; wherein N is a positive integer greater than 1, and the N service object sets are determined by clustering according to the portrait data of the plurality of service objects in advance; determining a change rate of the centroid of each service object set in the current period relative to the centroid of each service object set in the previous period; wherein the change rate represents a change degree of the centroid of the service object set; if there is a change rate of the centroid of the service object set greater than or equal to a first preset threshold, then re-dividing the plurality of service objects into N target service object sets, and taking the N target service object sets as the service object sets in the current period; executing an information recommendation strategy corresponding to each service object set.
2. The information recommendation method according to claim 1, characterized by, The updating of the centroid of one or more service object sets in N service object sets based on the size of the data change value to determine the centroid of each service object set in the current period comprises: if the data change value is less than a second preset threshold, then adjusting the centroid of the service object set based on the data change value to determine the centroid of each service object set in the current period; if the data change value is greater than or equal to the second preset threshold, then re-clustering the plurality of service objects based on the portrait data of the plurality of service objects to generate N new service object sets, and determining the centroid of each new service object set in the current period.
3. The information recommendation method according to claim 2, characterized by, The adjusting of the centroid of the service object set based on the data change value to determine the centroid of each service object set in the current period comprises: determining a target service object whose portrait data has changed, and determining a target service object set to which the target service object belongs, a number of service objects in the target service object set, and a historical centroid of the target service object set in a previous period; calculating a first product of the historical centroid and the number of service objects, and adding the first product to the data change value to obtain a first sum; taking a ratio of the first sum to the number of service objects as the centroid of the target service object set in the current period.
4. The information recommendation method according to claim 2, characterized by, The re-clustering of the plurality of service objects based on the portrait data of the plurality of service objects to generate N new service object sets, and the determination of the centroid of each new service object set in the current period, comprises: determining N initial centroids based on the portrait data of the plurality of service objects; repeating the following steps until a preset termination condition is met to obtain N new service object sets and determine the centroid of each new service object set in the current period: calculate a distance between the portrait data of each service object and each initial centroid, and assign the service object to a service object set corresponding to an initial centroid with the smallest distance; calculate an arithmetic mean of the portrait data of all service objects in each service object set, and take the arithmetic mean as a new initial centroid of the service object set.
5. The information recommendation method according to claim 2, characterized by, The re-dividing the plurality of service objects into N target service object sets comprises: if the data change value is less than the second preset threshold, re-clustering the plurality of service objects based on the portrait data of the plurality of service objects to generate N target service object sets; if the data change value is greater than or equal to the second preset threshold, taking the N new service object sets generated as the N target service object sets.
6. The information recommendation method according to claim 1, characterized by, The state data includes multiple types, and the state data includes one or more of transaction flow data, behavior interaction data, and resource holding data. The portrait data of the plurality of service objects in the current period is obtained according to the state data, comprising: For the state data of each service object, the following steps are performed to obtain the portrait data of the plurality of service objects in the current period: aggregating different types of state data respectively to obtain different types of portrait feature values; normalizing the portrait feature values of each type to obtain standardized portrait feature values; integrating the normalized feature values of each type to obtain the portrait data of the service object in the current period.
7. The information recommendation method according to any one of claims 1 to 6, characterized by, The method further comprises: if the change rate of each service object set centroid is less than or equal to the first preset threshold, taking the N service object sets as the service object sets in the current period.
8. An information recommendation device characterized by comprising: The device comprises: an acquisition unit configured to acquire state data of a plurality of service objects in a current period, and obtain portrait data of the plurality of service objects in the current period according to the state data; a first updating unit configured to determine a data change value of the portrait data of the plurality of service objects relative to historical portrait data of the plurality of service objects in a previous period, and update a centroid of one or more service object sets in N service object sets based on the size of the data change value to determine the centroid of each service object set in the current period; wherein N is a positive integer greater than 1, and the N service object sets are determined by clustering according to the portrait data of the plurality of service objects in advance; a calculation unit configured to determine a change rate of the centroid of each service object set in the current period relative to the centroid of each service object set in a previous period; wherein the change rate represents the degree of change of the centroid of the service object set; a second updating unit configured to, if there is a service object set centroid change rate greater than or equal to a first preset threshold, re-divide the plurality of service objects into N target service object sets, and take the N target service object sets as the service object sets in the current period; an execution unit configured to execute an information recommendation strategy corresponding to each service object set.
9. An electronic device, comprising: comprises: The electronic device comprises a memory and at least one processor; the memory is connected in communication with the processor; the memory is configured to store computer program code, the computer program code comprising computer instructions; when the processor executes the computer instructions, the electronic device is caused to perform the information recommendation method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions, and the computer instructions are executed by a processor to implement the information recommendation method according to any one of claims 1-7.
11. A computer program product, characterised in that, When the computer program product is run on a computer / executed by a processor of a computer, the information recommendation method according to any one of claims 1-7 is implemented.