Service recommendation method and device, electronic equipment and medium
By acquiring and analyzing the historical behavior data of users, combining cluster analysis and prediction models, the real-time and accuracy of service recommendations in the existing technology are solved, and personalized and real-time service recommendations are achieved.
Patent Information
- Application Number
- CN202411668348.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-20
- Publication Date
- 2025-03-25
AI Technical Summary
The prior art has insufficient real-time perception and recommendation accuracy of user needs, and cannot effectively provide personalized and real-time service recommendations.
By obtaining behavior data of multiple historical periods of the target period, clustering and analyzing relevant information of the current optional package service, predicting user behavior data, and recommending packages or value-added services to be recommended based on the prediction data and current service information.
It realizes prediction based on user behavior habits, improves the accuracy and personalization of recommendations, and can provide users with appropriate service recommendations in real time.
Smart Images

Figure CN119691262A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a service recommendation method, device, electronic equipment and medium. Background Art
[0002] With the development of communication networks, facing fierce market competition, various operators have launched a variety of packages. In order to meet user needs and improve user stickiness, operators will recommend required packages or popular packages to users. In related technologies, operators often make static recommendations based directly on personal historical consumption data. However, static recommendations cannot perceive user needs in real time, and have poor real-time and accuracy. Summary of the invention
[0003] In order to solve the above technical problems or at least partially solve the above technical problems, embodiments of the present invention provide a service recommendation method, device, electronic device and medium.
[0004] In a first aspect, an embodiment of the present invention provides a service recommendation method, including:
[0005] According to the target time period corresponding to the current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period are obtained, each of the first data sets including the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each of the historical time periods; wherein one time period includes a plurality of time periods;
[0006] Clustering the first behavior data according to relevant information of the current multiple optional package services to obtain multiple second data sets;
[0007] Determine a target second data set corresponding to the behavior data of the target user in the target time period, and determine predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set;
[0008] The services to be recommended are determined according to the predicted behavior data and relevant information of the services currently used by the target user, and the services to be recommended include package services to be recommended and / or value-added services to be recommended.
[0009] Optionally, acquiring, according to the target time period corresponding to the current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period includes:
[0010] According to the current time, obtain the historical behavior data of the target user within the time window corresponding to the current time;
[0011] According to a preset time dimension, the historical behavior data within the time window is sorted into a plurality of optional data sets, each of which includes the second behavior data of the target user within each time period within the time window and the first behavior data within each time period within the time period;
[0012] Determine a target time period corresponding to the current time, and select, from the multiple optional data sets, first behavior data corresponding to multiple historical time periods corresponding to the target time period and second behavior data corresponding to historical time periods corresponding to each historical time period;
[0013] For each historical period, a first data set corresponding to the historical period is generated according to the first behavior data corresponding to the historical period and the second behavior data corresponding to the historical time period corresponding to the historical period.
[0014] Optionally, clustering the first behavior data according to the relevant information of the current multiple optional package services includes:
[0015] Determine clustering conditions based on relevant information of multiple currently available package services;
[0016] The first behavior data is clustered according to the clustering condition.
[0017] Optionally, determining clustering conditions based on relevant information of the current multiple optional package services includes: when the relevant information of the current multiple optional package services is continuous data, discretizing the relevant information according to the target time period to obtain a discrete vector corresponding to the relevant information; and determining the clustering conditions based on the discrete vector.
[0018] Optionally, when the relevant information of the current plurality of optional package services is continuous data, discretizing the relevant information according to the target time period to obtain a discrete vector corresponding to the relevant information includes:
[0019] Determine the proportion of the target time period within a time period;
[0020] For each currently available package, the product of the relevant information of the available package and the ratio is used as a discrete value corresponding to the relevant information;
[0021] The discrete values corresponding to the relevant information of the current plurality of optional package services are arranged in ascending order to obtain a discrete vector corresponding to the relevant information.
[0022] Optionally, determining the clustering condition according to the relevant information of the current plurality of optional package services includes:
[0023] In the case that the relevant information of the current plurality of optional package services is discrete data, the relevant information is directly used as a clustering condition.
[0024] Optionally, determining the predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set includes:
[0025] Determine the weight corresponding to each target second behavior data according to the historical time period corresponding to the target second behavior data;
[0026] Calculate the weighted average value based on the second behavior data of each target and its corresponding weight;
[0027] The weighted average value is used as the predicted behavior data of the target user.
[0028] In a second aspect, an embodiment of the present invention provides a service recommendation device, including:
[0029] an acquisition module, configured to acquire, according to a target time period corresponding to a current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period, each of the first data sets including first behavior data of a target user in each historical time period and second behavior data of the target user in a historical time period corresponding to each of the historical time periods; wherein a time period includes a plurality of time periods;
[0030] A clustering module, configured to cluster the first behavior data according to relevant information of multiple currently available package services to obtain multiple second data sets;
[0031] A prediction module, used to determine a target second data set corresponding to the behavior data of the target user in the target time period, and determine predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set;
[0032] The matching module is used to determine the services to be recommended based on the predicted behavior data and the relevant information of the services currently used by the target user, wherein the services to be recommended include package services to be recommended and / or value-added services to be recommended.
[0033] Optionally, the acquisition module is also used to: acquire historical behavior data of the target user within the time window corresponding to the current time according to the current time; organize the historical behavior data within the time window into multiple optional data sets according to a preset time dimension, each of the optional data sets including the second behavior data of the target user within each time period within the time window and the first behavior data within each time period within the time period; determine the target time period corresponding to the current time, and filter out the first behavior data corresponding to multiple historical time periods corresponding to the target time period and the second behavior data corresponding to the historical time period corresponding to each historical time period from the multiple optional data sets; for each historical time period, generate the first data set corresponding to the historical time period according to the first behavior data corresponding to the historical time period and the second behavior data corresponding to the historical time period corresponding to the historical time period.
[0034] Optionally, the clustering module is further used to: determine a clustering condition based on relevant information of multiple current optional package services; and cluster the first behavior data based on the clustering condition.
[0035] Optionally, the clustering module is also used to: when the relevant information of the current multiple optional package services is continuous data, discretize the relevant information according to the target time period to obtain a discrete vector corresponding to the relevant information; and determine the clustering condition according to the discrete vector.
[0036] Optionally, the clustering module is also used to: determine the proportion of the target time period within a time period; for each current optional package, take the product of the relevant information of the optional package and the proportion as the discrete value corresponding to the relevant information; arrange the discrete values corresponding to the relevant information of the current multiple optional package services in ascending order to obtain a discrete vector corresponding to the relevant information.
[0037] Optionally, the clustering module is further used to: when the relevant information of the current multiple optional package services is discrete data, directly use the relevant information as a clustering condition.
[0038] Optionally, the prediction module is also used to: determine the weight corresponding to each target second behavior data based on the historical time period corresponding to the target second behavior data; calculate the weighted average based on each target second behavior data and its corresponding weight; and use the weighted average as the predicted behavior data of the target user.
[0039] In a third aspect, an embodiment of the present invention further provides an electronic device, comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; the memory is used to store computer programs; and the processor is used to implement the service recommendation method provided by any embodiment of the present invention when executing the program stored in the memory.
[0040] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the service recommendation method provided by any embodiment of the present invention.
[0041] The technical solution provided by the embodiment of the present invention brings at least the following beneficial effects:
[0042] The service recommendation method provided by the embodiment of the present invention obtains multiple first data sets corresponding to multiple historical time periods corresponding to the target time period according to the target time period corresponding to the current time, each first data set includes the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each historical time period; wherein a time period includes multiple time periods; the first behavior data are clustered according to the relevant information of the current multiple optional package services to obtain multiple second data sets; a target second data set corresponding to the behavior data of the target user in the target time period is determined, and the predicted behavior data of the target user is determined according to the target second behavior data corresponding to the target second data set; and a service to be recommended is determined according to the predicted behavior data and the relevant information of the service currently used by the target user, and the service to be recommended includes the package service to be recommended and / or the value-added service to be recommended. The method can screen out behavior data of multiple historical time periods that are similar to the behavior data of the target time period based on the user's behavior data in the target time period, and predict the user's behavior data in the current time period based on the behavior data in the historical time periods corresponding to the similar multiple historical time periods. This method uses preset time periods and preset time periods as time dimensions to analyze the rules of the user's own historical data, uses the rules to make predictions that are in line with the user's behavior habits, improves the accuracy of the predicted data, and then compares the currently used package services with the predicted data to provide target users with real-time, personalized recommendation services. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art are briefly introduced below.
[0044] Figure 1 A schematic diagram showing a flow chart of a service recommendation method according to an embodiment of the present invention;
[0045] Figure 2A schematic diagram showing a decision tree constructed by a service recommendation method according to an embodiment of the present invention;
[0046] Figure 3 A schematic diagram showing a flow chart of a service recommendation method according to another embodiment of the present invention;
[0047] Figure 4 A schematic diagram showing the structure of a service recommendation device according to an embodiment of the present invention is shown;
[0048] Figure 5 A schematic structural diagram of an electronic device according to an embodiment of the present invention is shown. DETAILED DESCRIPTION
[0049] The following is a description of exemplary embodiments of the present invention in conjunction with the accompanying drawings, including various details of the embodiments of the present invention to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present invention. Similarly, for clarity and conciseness, the description of well-known functions and structures is omitted in the following description.
[0050] The terms "first", "second", etc. in the specification and claims of the present invention are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present application can be implemented in an order other than those illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.
[0051] Figure 1 A flow chart of a service recommendation method provided by an embodiment of the present invention is shown. The services recommended by the embodiment of the present invention include, for example, package services and value-added services provided by telecommunications operators. Package service refers to a service mode in which telecommunications operators package and sell communication services (such as voice calls, text messages, data traffic, etc.) in a certain combination and price in order to meet the needs of different users. The package generally includes a certain call duration, data traffic, and text messages. Value-added service refers to a service that goes beyond the scope of conventional services and is provided to users based on their needs, such as a traffic package. Superimposing the traffic package on the original package can solve the problem of insufficient user traffic.
[0052] like Figure 1 As shown, the method includes:
[0053] Step S101: According to the target time period corresponding to the current time, multiple first data sets corresponding to multiple historical time periods corresponding to the target time period are obtained, each first data set including the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each historical time period.
[0054] Among them, a time period includes multiple time periods. As an optional example, the various services provided by telecom operators generally charge service fees on a monthly basis, so a time period can be set as one month. Divide a time period into multiple time periods, organize the user's behavior data (such as call duration, SMS usage, and traffic usage) in a time period, and determine the user's behavior data corresponding to each time period. Optionally, a time period is divided into multiple time periods based on the week as the time dimension, for example, the first time period is from the 1st to the 7th of the month, the second time period is from the 1st to the 14th of the month, and the third time period is from the 1st to the 21st of the month. If the current time is October 7, 2024, the target time period corresponding to the current time is the first time period, and the multiple historical time periods corresponding to the target time period are the first time period of each month before October 2024, such as the first time period of September 2024 (from the 1st to the 7th of September 2024) and the first time period of August 2024 (from the 1st to the 7th of August 2024). If the current time is October 14, 2024, the target period corresponding to the current time is the second period, and the multiple historical periods corresponding to the target period are the second period of each month before October 2024, such as the second period of September 2024 (September 1 to 14, 2024) and the second period of August 2024 (August 1 to 14, 2024). If the current time is October 20, 2024, the target period corresponding to the current time is the second period, and the multiple historical periods corresponding to the target period are the second period of each month before October 2024.
[0055] The target user's behavior data includes, for example, but is not limited to, the target user's consumption data, such as call duration, SMS usage information, traffic usage information, and billing information. The first data set includes the target user's call duration, SMS usage information, and traffic usage information in each historical period, as well as the target user's call duration, SMS usage information, traffic usage information, and billing information in the historical time period corresponding to each historical period.
[0056] For ease of understanding, the first behavior data and the second behavior data in the first data set are explained by taking the current time as October 14, 2024 as an example. The target time corresponding to the current time is the second period, and the historical period is the second period of each month before October 2024, for example, the second period of each month between September 2022 and September 2024, and the historical time period corresponding to each historical period is each month from September 2022 to September 2024. As shown in Table 1, the first behavior data includes call duration, SMS usage (number of SMS messages used), and traffic usage from the 1st to the 14th of each month from September 2022 to September 2024. As shown in Table 2, the second behavior data includes call duration, SMS usage, traffic usage, and billing (billing amount) for each month from September 2022 to September 2024.
[0057] Table 1:
[0058] time Talk time Number of SMS messages Data usage 20220901-20220914 <![CDATA[x1]]> <![CDATA[y1]]> <![CDATA[z1]]> 20220801-20220814 <![CDATA[x2]]> <![CDATA[y2]]> <![CDATA[z2]]> … … … … 2024090120240914 <![CDATA[x 24 ]]> <![CDATA[y 24 ]]> <![CDATA[z 24 ]]>
[0059] Table 2:
[0060] time Talk time Number of SMS messages Data usage Amount of payment 202209 <![CDATA[X1]]> <![CDATA[Y1]]> <![CDATA[Z1]]> <![CDATA[W1]]> 202208 <![CDATA[X2]]> <![CDATA[Y2]]> <![CDATA[Z2]]> <![CDATA[W2]]> … … … … … 202409 <![CDATA[X 24 ]]> <![CDATA[Y 24 ]]> <![CDATA[Z 24 ]]> <![CDATA[W 24 ]]>
[0061] Step S102: clustering the first behavior data according to the relevant information of the current multiple optional package services to obtain multiple second data sets.
[0062] The relevant information of the currently available package services includes, for example, but is not limited to, package identification information (such as the name or label of the package), package type, call duration, SMS and traffic included in the package, and package fee. Among them, the package type includes, for example, a converged package type and a non-converged package type. The converged package type is a package mode that bundles multiple services together, for example, a converged package includes a combination of mobile number, broadband or fixed-line telephone services. As an optional example, the relevant information of multiple currently available packages is shown in Table 3 below.
[0063] Table 3:
[0064] ID Package Type Talk time Number of SMS flow cost 1 Fusion Package <![CDATA[a1]]> <![CDATA[b1]]> <![CDATA[c1]]> <![CDATA[d1]]> 2 Fusion Package <![CDATA[a2]]> <![CDATA[b2]]> <![CDATA[c2]]> <![CDATA[d2 <!-- 5 -->]]> 3 Non-integrated packages <![CDATA[a3]]> <![CDATA[b3]]> <![CDATA[c3]]> <![CDATA[d3]]> 4 Non-integrated packages <![CDATA[a4]]> <![CDATA[b4]]> <![CDATA[c4]]> <![CDATA[d4]]>
[0065] In this step, the relevant information of the current multiple optional package services is used to set clustering conditions, and the first behavior data is clustered using the clustering conditions, and similar first behavior data are aggregated into a data set. However, the relevant information of the optional package services shown in Table 3 above includes continuous data (such as call duration, text messages and traffic included in the package) and discrete data (such as package type). For relevant information of discrete attributes such as package type, the relevant information can be directly used as a clustering condition, that is, the packages of the same type are clustered into a data set. For continuous data, it is necessary to discretize it into discrete data, and determine the clustering conditions based on the discrete data. Optionally, the relevant information of continuous attributes can be mapped to discrete data according to a preset mapping function.
[0066] Since package services are generally charged in units of time periods such as months, and the first line of data is data corresponding to a time period of a time period. Therefore, in an optional embodiment, the relevant information of the continuous attribute can be discretized according to the proportion of the target time period in a time period, for example, the product of the relevant information of the continuous attribute and the proportion is used as the discrete value corresponding to the relevant information. Taking the example shown in Table 1 as an example, the target time period corresponding to the current time is the second time period of a time period, that is, from the 1st to the 14th of the month, accounting for 1 / 2 of the month. The product of the relevant information of the continuous attribute and 1 / 2 is used as the discrete value corresponding to the relevant information. Taking Table 3 as an example, the discrete values corresponding to the call duration of each optional package are: a1 / 2, a2 / 2, a3 / 2, a4 / 2. The discrete values corresponding to the number of short messages of each optional package are: b1 / 2, b2 / 2, b3 / 2, b4 / 2. The discrete values corresponding to the flow of each optional package are: c1 / 2, c2 / 2, c3 / 2, c4 / 2. When determining the discrete values of the related information of the continuous attribute, arrange them in order from small to large to obtain a discrete vector, and use the discrete vector to cluster the first behavior data. Taking the call duration as an example, and a1 / 2<a2 / 2<a3 / 2<a4 / 2, the historical call duration in the first behavior data is clustered into 5 categories, namely: the historical call duration less than a1 / 2 is one category, the historical call duration greater than or equal to a1 / 2 and less than a2 / 2 is one category, the historical call duration greater than or equal to a2 / 2 and less than a3 / 2 is one category, the historical call duration greater than or equal to a3 / 2 and less than a4 / 2 is one category, and the historical call duration greater than or equal to a4 / 2 is one category.
[0067] In an optional embodiment, when the relevant information of the current multiple optional packages includes the package type, the call duration, text messages and traffic included in the package, the first behavior data is first clustered according to the package type, and then the clustered first behavior data is clustered according to the call duration, text messages and traffic. As an optional example, the first behavior data can be clustered according to a decision tree algorithm. Figure 2 As shown, the first-layer nodes of the decision tree cluster the first behavior data according to the package type, the second-layer nodes cluster the first behavior data after clustering according to the call duration, the third-layer nodes cluster the first behavior data after clustering according to the number of text messages, and the fourth-layer nodes cluster the first behavior data after clustering according to the traffic (in Figure 2 The third and fourth layers of the decision tree shown are shown with only one node), and finally a plurality of second data sets are obtained. Each second data set includes one or more first behavior data.
[0068] Step S103: determining a target second data set corresponding to the behavior data of the target user in the target time period, and determining predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set.
[0069] In this step, the behavior data of the target user in the target time period is classified according to the clustering method of the first behavior data, and the target second data set corresponding to the behavior data in the target time period is determined. The behavior data in the target time period belongs to the same category as the first behavior data in the target second data set, and there is similarity between the two. Then, the behavior data of the target user in the current time period is predicted using the target second behavior data corresponding to the historical time period corresponding to the similar first behavior data. As an optional example, the average value of the target second behavior data can be used as the predicted behavior data of the target user.
[0070] Step S104: Determine the services to be recommended based on the predicted behavior data and the relevant information of the services currently used by the target user, the services to be recommended include the package services to be recommended and / or the value-added services to be recommended, and push the services to be recommended to the target user.
[0071] In this step, the relevant information of the service currently used by the target user is compared with the predicted behavior data, for example, the call duration, number of text messages and traffic in the currently used service and the predicted behavior data are compared respectively, so as to determine the service to be recommended. The service to be recommended can be a currently optional package service, or a currently optional value-added service, or can include both a package service and a value-added service. As an optional example, if the call duration and text messages in the predicted behavior data are respectively less than the call duration and text messages of the currently used service, and the traffic in the predicted behavior data is greater than the traffic of the currently used service, and the currently optional value-added service includes a traffic package service, then the currently optional traffic package can be recommended to the target user. For another example, if the call duration, text messages and traffic in the predicted behavior data are all greater than the call duration, text messages and traffic of the currently used service, the call duration, text messages and traffic of the currently optional package service A are respectively greater than the call duration, text messages and traffic of the currently used service, and the call duration, text messages and traffic of the currently optional package service A are similar to the predicted call duration, text messages and traffic, then package service A can be recommended to the target user.
[0072] The service recommendation method provided by the embodiment of the present invention obtains multiple first data sets corresponding to multiple historical time periods corresponding to the target time period according to the target time period corresponding to the current time, each first data set includes the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each historical time period; wherein a time period includes multiple time periods; the first behavior data are clustered according to the relevant information of the current multiple optional package services to obtain multiple second data sets; a target second data set corresponding to the behavior data of the target user in the target time period is determined, and the predicted behavior data of the target user is determined according to the target second behavior data corresponding to the target second data set; and a service to be recommended is determined according to the predicted behavior data and the relevant information of the service currently used by the target user, and the service to be recommended includes the package service to be recommended and / or the value-added service to be recommended. The method can screen out behavior data of multiple historical time periods that are similar to the behavior data of the target time period based on the user's behavior data in the target time period, and predict the user's behavior data in the current time period based on the behavior data in the historical time periods corresponding to the similar multiple historical time periods. This method uses preset time periods and preset time periods as time dimensions to analyze the rules of the user's own historical data, uses the rules to make predictions that are in line with the user's behavior habits, improves the accuracy of the predicted data, and then compares the currently used package services with the predicted data to provide target users with real-time, personalized recommendation services.
[0073] In an optional embodiment, step S101 obtains multiple first data sets corresponding to multiple historical time periods corresponding to the target time period according to the target time period corresponding to the current time, including:
[0074] Step 1): According to the current time, obtain the historical behavior data of the target user in the time window corresponding to the current time. Among them, the time window includes multiple time periods, for example, the time window is 2 years and the time period is month. In this step, the start and end time of obtaining the historical behavior data are determined by the current time and its corresponding time window. As an optional example, if the current time is October 14, 2024, and the time window corresponding to the current time is October 2022-October 2024, then the behavior data of each day between October 1, 2022-October 14, 2024 is obtained, such as daily call duration, number of text messages and traffic usage data.
[0075] In an optional embodiment, after obtaining the historical behavior data in the time window corresponding to the current time, the historical behavior data needs to be preprocessed, such as missing value filling. Optionally, the missing data can be filled with the mean value of the historical data of the user.
[0076] Step 2): According to the preset time dimension, the historical behavior data within the time window is sorted into multiple optional data sets, each of the optional data sets includes the second behavior data of the target user in each time period within the time window and the first behavior data in each time period within the time period. Optionally, in this step, the time period is used as a dimension to sort the historical behavior data within the time window. For the historical behavior data in each time period, it is sorted according to the preset time period. A time period is divided into multiple time periods using weeks as the time dimension, for example, the first time period is from the 1st to the 7th of the month, the second time period is from the 1st to the 14th of the month, and the third time period is from the 1st to the 21st of the month. As an optional example, the information contained in each sorted optional data set is shown in Table 4 below.
[0077] Table 4:
[0078]
[0079]
[0080] Step 3): Determine the target time period corresponding to the current time, and select the first behavior data corresponding to the multiple historical time periods corresponding to the target time period and the second behavior data corresponding to the historical time period corresponding to each historical time period from the multiple optional data sets. If the current time is October 14, 2024, the target time period corresponding to the current time is the second time period, and the multiple historical time periods corresponding to the target time period are the second time periods of each month before October 2024, such as the second time period of September 2024 (September 1 to 14, 2024) and the second time period of August 2024 (August 1 to 14, 2024).
[0081] As an optional example, first behavior data corresponding to multiple historical time periods corresponding to the target time period and second behavior data corresponding to the historical time period corresponding to each historical time period are screened out from multiple optional data sets as shown in Table 5 below.
[0082] Table 5:
[0083]
[0084] Step 4): For each historical time period, a first data set corresponding to the historical time period is generated based on the first behavior data corresponding to the historical time period and the second behavior data corresponding to the historical time period corresponding to the historical time period.
[0085] In an optional embodiment, in order to increase the data processing speed and improve the recommendation efficiency, a parallel computing framework such as Apache Spark can be used to process the user's historical behavior data to obtain the above-mentioned first data set. For example, the user's multi-source data (such as call duration, traffic usage data, and number of text messages) is obtained from the data center, and the data is deployed to the Hadoop distributed file system HDFS. Spark reads the data file from HDFS, generates multiple data blocks, and then reads each data block in parallel to obtain a resilient distributed data set RDDa containing multiple logical data blocks. The data blocks in the data set RDDa are preprocessed in parallel, missing values are filled, and a data set RDDb is generated. The data blocks in the data set RDDb are sorted in parallel according to the preset time dimension to obtain the data set shown in Table 4 above.
[0086] Figure 3 FIG. 2 is a flow chart showing a service recommendation method provided by another embodiment of the present invention. Figure 3 As shown, the method includes:
[0087] Step S301: According to the target time period corresponding to the current time, obtain multiple first data sets corresponding to multiple historical time periods corresponding to the target time period, each first data set includes the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each historical time period; wherein one time period includes multiple time periods.
[0088] Step S302: Determine clustering conditions based on the relevant information of the current plurality of optional package services.
[0089] Step S303: clustering the first behavior data according to the clustering condition.
[0090] Step S304: determine a target second data set corresponding to the target user's behavior data in a target time period, and determine a weight corresponding to each target second behavior data according to a historical time period corresponding to the target second behavior data.
[0091] Step S305: Calculate a weighted average value based on each target second behavior data and its corresponding weight, and use the weighted average value as the predicted behavior data of the target user.
[0092] Step S306: Determine the service to be recommended based on the predicted behavior data and relevant information of the service currently used by the target user.
[0093] Among them, steps S301-303 can refer to Figure 1 To avoid repetition, the present invention will not be described in detail in the embodiments shown.
[0094] For step S304, this embodiment takes into account that historical behavior data closer to the current time can better reflect the real situation of the user. Therefore, when predicting the behavior data of the target user in the current time period based on the target second behavior data, different weights are assigned to the target second behavior data according to the time corresponding to the target second behavior data. The closer to the current time, the greater the weight. As an optional example, the target second behavior data can be sorted in chronological order, and the natural numbers that increase successively in the order of the target second behavior data are used as their corresponding weights. For example, the target second behavior data obtained in step S304 are sorted in chronological order as shown in Table 6 below, and the weights (weights) corresponding to these target second behavior data are: 1, 2, 3, 4.
[0095] Table 6:
[0096]
[0097] For step S305, a weighted average is calculated based on each target second behavior data and its corresponding weight, and the weighted average is used as the predicted behavior data of the target user. Taking the call duration as an example, the predicted outgoing amount is 208, the call duration is 2123, the data flow is 97, and the number of text messages is 296 (int means rounding).
[0098]
[0099]
[0100]
[0101]
[0102] Based on the prediction results, compared with the current value-added services and packages, users are reminded of their consumption status in a timely manner through SMS, APP notifications, etc., and reasonable suggestions for related value-added services and package changes are pushed.
[0103] By comparing the current packages and value-added services, and comparing the billing amount, total number of calls, total data traffic, and total number of text messages with the existing optional packages, it can be seen that the predicted value for traffic data is 97, while the data traffic of optional package A is 80, and the value-added service has a 20G traffic package. Therefore, users can be recommended to purchase traffic packages above 20GB.
[0104] The embodiment of the present invention uses consumption data and algorithm models of set time dimensions for analysis to predict the user's recent package and telephone fee consumption. By analyzing the user's personal multi-source data such as calls, text messages, and traffic, the user's communication behavior and consumption can be predicted based on the latest data. According to the package usage, the user is provided with personalized real-time value-added services and package recommendations and suggestions, helping the user to reasonably manage telephone fee consumption, save costs, and improve user satisfaction and loyalty.
[0105] Figure 4 FIG. 1 is a schematic diagram showing the structure of a service recommendation device provided by an embodiment of the present invention. Figure 4 As shown, the service recommendation device 400 includes:
[0106] The acquisition module 401 is used to acquire, according to the target time period corresponding to the current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period, each of the first data sets including the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each of the historical time periods; wherein one time period includes a plurality of time periods;
[0107] A clustering module 402 is used to cluster the first behavior data according to the relevant information of the current multiple optional package services to obtain multiple second data sets;
[0108] Prediction module 403, used to determine a target second data set corresponding to the behavior data of the target user in the target time period, and determine predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set;
[0109] The matching module 404 is used to determine the services to be recommended based on the predicted behavior data and the relevant information of the services currently used by the target user, wherein the services to be recommended include package services to be recommended and / or value-added services to be recommended.
[0110] Optionally, the acquisition module is also used to: acquire historical behavior data of the target user within the time window corresponding to the current time according to the current time; organize the historical behavior data within the time window into multiple optional data sets according to a preset time dimension, each of the optional data sets including the second behavior data of the target user within each time period within the time window and the first behavior data within each time period within the time period; determine the target time period corresponding to the current time, and filter out the first behavior data corresponding to multiple historical time periods corresponding to the target time period and the second behavior data corresponding to the historical time period corresponding to each historical time period from the multiple optional data sets; for each historical time period, generate the first data set corresponding to the historical time period according to the first behavior data corresponding to the historical time period and the second behavior data corresponding to the historical time period corresponding to the historical time period.
[0111] Optionally, the clustering module is further used to: determine a clustering condition based on relevant information of multiple current optional package services; and cluster the first behavior data based on the clustering condition.
[0112] Optionally, the clustering module is also used to: when the relevant information of the current multiple optional package services is continuous data, discretize the relevant information according to the target time period to obtain a discrete vector corresponding to the relevant information; and determine the clustering condition according to the discrete vector.
[0113] Optionally, the clustering module is also used to: determine the proportion of the target time period within a time period; for each current optional package, take the product of the relevant information of the optional package and the proportion as the discrete value corresponding to the relevant information; arrange the discrete values corresponding to the relevant information of the current multiple optional package services in ascending order to obtain a discrete vector corresponding to the relevant information.
[0114] Optionally, the clustering module is further used to: when the relevant information of the current multiple optional package services is discrete data, directly use the relevant information as a clustering condition.
[0115] Optionally, the prediction module is also used to: determine the weight corresponding to each target second behavior data based on the historical time period corresponding to the target second behavior data; calculate the weighted average based on each target second behavior data and its corresponding weight; and use the weighted average as the predicted behavior data of the target user.
[0116] The above device can execute the method provided by the embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method. For technical details not described in detail in this embodiment, please refer to the method for configuring mobile service resources provided by the embodiment of the present invention.
[0117] Figure 5 FIG. 1 is a schematic diagram showing the structure of an electronic device according to an embodiment of the present invention. Figure 5 As shown, the electronic device includes:
[0118] Processor 501, communication interface 502, memory 503 and communication bus 504, wherein the processor 501, communication interface 502, memory 503 communicate with each other via the communication bus 504.
[0119] Memory 503, used for storing computer programs;
[0120] The processor 501 is used to execute the program stored in the memory 503, and implements the following steps:
[0121] According to the target time period corresponding to the current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period are obtained, each of the first data sets including the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each of the historical time periods; wherein one time period includes a plurality of time periods;
[0122] Clustering the first behavior data according to relevant information of the current multiple optional package services to obtain multiple second data sets;
[0123] Determine a target second data set corresponding to the behavior data of the target user in the target time period, and determine predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set;
[0124] The services to be recommended are determined according to the predicted behavior data and relevant information of the services currently used by the target user, and the services to be recommended include package services to be recommended and / or value-added services to be recommended.
[0125] The communication bus mentioned in the above terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0126] The communication interface is used for communication between the above terminal and other devices.
[0127] The memory may include a random access memory (RAM) or a non-volatile memory, such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0128] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0129] In another embodiment of the present invention, a computer-readable storage medium is provided. The computer-readable storage medium stores instructions. When the instructions are executed on a computer, the computer executes the service recommendation method described in any one of the above embodiments.
[0130] In another embodiment of the present invention, a computer program product including instructions is provided. When the computer program product is executed on a computer, the computer executes the service recommendation method described in any one of the above embodiments.
[0131] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented by software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk (SSD)), etc.
[0132] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0133] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0134] The above description is only a preferred embodiment of the present invention and is not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention are included in the protection scope of the present invention.
Claims
1. A service recommendation method, characterized in that: include: According to the target time period corresponding to the current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period are obtained, each of the first data sets including the first behavior data of the target user in each historical time period and the second behavior data of the target user in the historical time period corresponding to each of the historical time periods; wherein one time period includes a plurality of time periods; Clustering the first behavior data according to relevant information of the current multiple optional package services to obtain multiple second data sets; Determine a target second data set corresponding to the behavior data of the target user in the target time period, and determine predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set; The services to be recommended are determined according to the predicted behavior data and relevant information of the services currently used by the target user, and the services to be recommended include package services to be recommended and / or value-added services to be recommended.
2. The method according to claim 1, characterized in that The step of acquiring, according to the target time period corresponding to the current time period, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period comprises: According to the current time, obtain the historical behavior data of the target user within the time window corresponding to the current time; According to a preset time dimension, the historical behavior data within the time window is sorted into a plurality of optional data sets, each of which includes the second behavior data of the target user within each time period within the time window and the first behavior data within each time period within the time period; Determine a target time period corresponding to the current time, and select, from the multiple optional data sets, first behavior data corresponding to multiple historical time periods corresponding to the target time period and second behavior data corresponding to historical time periods corresponding to each historical time period; For each historical period, a first data set corresponding to the historical period is generated according to the first behavior data corresponding to the historical period and the second behavior data corresponding to the historical time period corresponding to the historical period.
3. The method according to claim 1, characterized in that The clustering of the first behavior data according to the relevant information of the current plurality of optional package services includes: Determine clustering conditions based on relevant information of multiple currently available package services; The first behavior data is clustered according to the clustering condition.
4. The method according to claim 3, characterized in that Determining the clustering condition according to the relevant information of the current multiple optional package services includes: In a case where the relevant information of the current plurality of optional package services is continuous data, discretizing the relevant information according to the target time period to obtain a discrete vector corresponding to the relevant information; A clustering condition is determined according to the discrete vector.
5. The method according to claim 4, characterized in that In the case that the relevant information of the current plurality of optional package services is continuous data, discretizing the relevant information according to the target time period to obtain a discrete vector corresponding to the relevant information includes: Determine the proportion of the target time period within a time period; For each currently available package, the product of the relevant information of the available package and the ratio is used as a discrete value corresponding to the relevant information; The discrete values corresponding to the relevant information of the current plurality of optional package services are arranged in ascending order to obtain a discrete vector corresponding to the relevant information.
6. The method according to any one of claims 3 to 5, characterized in that: Determining the clustering condition according to the relevant information of the current multiple optional package services includes: In the case that the relevant information of the current plurality of optional package services is discrete data, the relevant information is directly used as a clustering condition.
7. The method according to claim 1, characterized in that The determining the predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set includes: Determine the weight corresponding to each target second behavior data according to the historical time period corresponding to the target second behavior data; Calculate the weighted average value based on the second behavior data of each target and its corresponding weight; The weighted average value is used as the predicted behavior data of the target user.
8. A service recommendation device, characterized in that: include: an acquisition module, configured to acquire, according to a target time period corresponding to a current time, a plurality of first data sets corresponding to a plurality of historical time periods corresponding to the target time period, each of the first data sets including first behavior data of a target user in each historical time period and second behavior data of the target user in a historical time period corresponding to each of the historical time periods; wherein a time period includes a plurality of time periods; A clustering module, configured to cluster the first behavior data according to relevant information of multiple currently available package services to obtain multiple second data sets; A prediction module, used to determine a target second data set corresponding to the behavior data of the target user in the target time period, and determine predicted behavior data of the target user according to the target second behavior data corresponding to the target second data set; The matching module is used to determine the services to be recommended based on the predicted behavior data and the relevant information of the services currently used by the target user, wherein the services to be recommended include package services to be recommended and / or value-added services to be recommended.
9. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; A processor, configured to implement the method according to any one of claims 1 to 7 when executing a program stored in a memory.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.