Product Recommendation Method, Device, Computer Equipment and Storage Medium
By using the spherical output layer of the self-organized mapping neural network model to cluster users and products, the problem of low product recommendation accuracy in traditional methods is solved, and higher recommendation accuracy is achieved.
Patent Information
- Application Number
- CN202211423719.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-15
- Publication Date
- 2025-08-05
- Estimated Expiration
- 2042-11-15
AI Technical Summary
Due to the huge number of users and products in the traditional expert recommendation method, it is difficult to conduct in-depth analysis of every user and product, resulting in low accuracy of product recommendations.
The spherical output layer of the self-organized mapping neural network model is used for clustering. By obtaining the user information of the user to be recommended, inputting the pre-constructed clustering model for clustering, obtaining the target user category, and querying the corresponding relationship between the user category and product category, and recommending products associated with the target product category.
The accuracy of product recommendations is improved, and the clustering results are made more accurate by improving the performance of the clustering model.
Smart Images

Figure CN115757946B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of big data technology, and in particular to a product recommendation method, apparatus, computer equipment, storage medium, and computer program product. Background Art
[0002] With the development of big data technology, product recommendation technology has emerged. Among traditional technologies, the most commonly used product recommendation technology is expert recommendation, which recommends corresponding products to users based on expert evaluation of users and products.
[0003] However, due to the large number of users and products, it is difficult for experts to conduct in-depth analysis and evaluation of each user and product, which makes the accuracy of product recommendations based on expert recommendation methods low. Summary of the Invention
[0004] Based on this, it is necessary to provide a product recommendation method, device, computer equipment, computer-readable storage medium and computer program product that can improve the accuracy of product recommendations in response to the above technical problems.
[0005] In a first aspect, the present application provides a product recommendation method. The method comprises:
[0006] Get the user information of the user to be recommended;
[0007] Inputting the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer;
[0008] Querying the correspondence between user categories and product categories to obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model;
[0009] The target product associated with the target product category is recommended to the user to be recommended.
[0010] In one embodiment, before obtaining the user information of the user to be recommended, the method further includes:
[0011] Construct a self-organizing map neural network model with a spherical output layer as a pre-built clustering model;
[0012] Inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user category, and inputting the sample product information of the sample products into the pre-built clustering model for clustering to obtain the product category;
[0013] The correspondence between user categories and product categories is confirmed based on the operation data of sample users in the user category on sample products in the product category and the product feature indicators of the sample products in the product category.
[0014] In one embodiment, the self-organizing map neural network model with a spherical output layer is constructed, comprising:
[0015] Confirm each target point on the sphere;
[0016] Confirming the adjacent node relationship of each target point on the spherical surface, and confirming each target point as an output neuron to obtain the spherical output layer;
[0017] The self-organizing map neural network model is constructed according to the spherical output layer.
[0018] In one embodiment, the step of identifying each target point on the spherical surface includes:
[0019] Constructing an initial triangle on the spherical surface; the initial triangle is an equilateral triangle;
[0020] Determine an initial target point on the spherical surface based on the initial triangle; the initial target point is the intersection of a ray perpendicular to the initial triangle and the spherical surface, and the foot of the ray is the orthocenter of the initial triangle;
[0021] updating the initial triangle according to any two vertices in the initial triangle and the initial target point to obtain an updated triangle, and confirming the initial target point as the target point;
[0022] The updated triangle is used as the initial triangle, and the process proceeds to the step of confirming the initial target point on the spherical surface based on the initial triangle, until the target point confirmed on the spherical surface is the initial target point.
[0023] In one embodiment, confirming the adjacent node relationship of each target point on the spherical surface includes:
[0024] Connecting the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle; the adjacent triangles of the initial triangle are the updated triangles; and the adjacent nodes of the initial target point are the target points confirmed based on the updated triangles;
[0025] Confirming the connection between the initial target point and the adjacent nodes of the initial target point as the adjacent node relationship of the target point;
[0026] The adjacent nodes of the initial target point are used as the initial target point, and the adjacent triangles of the initial triangle are used as the initial triangle, and the process proceeds to the step of connecting the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle, until the adjacent node relationship of each target point is confirmed on the spherical surface.
[0027] In one embodiment, before inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user categories, the method further includes:
[0028] Acquire sample user information of the sample user; the sample user information is constructed based on user characteristic indicators of the sample user;
[0029] The step of inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user category includes:
[0030] Inputting the sample user information into the pre-built clustering model, and determining a winning neuron in the spherical output layer based on an initial connection weight between an input neuron corresponding to the sample user information in the pre-built clustering model and an output neuron of the spherical output layer; the initial connection weight is obtained by initializing the connection weight between the input neuron and the output neuron;
[0031] According to the neighborhood range of the winning neuron, the initial connection weight between the input neuron and the output neuron corresponding to the sample user information is updated to obtain the clustering result of the sample user;
[0032] The clustering result of the sample users is confirmed as the user category.
[0033] In one embodiment, after inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user categories, the method further includes:
[0034] When the number of operations on the sample product by any sample user among the sample users exceeds a preset number, updating the sample user information of the sample user to obtain updated sample user information;
[0035] Inputting the updated sample user information into the pre-built clustering model for clustering again to obtain an updated clustering result of the sample user;
[0036] The updated clustering result of the sample users is confirmed as the user category.
[0037] In one embodiment, after inputting the sample product information of the sample product into the pre-built clustering model for clustering to obtain the product category, the method further includes:
[0038] When a product characteristic indicator of any sample product among the sample products shows an abnormal change within a preset time period, updating the sample product information of the sample product to obtain updated sample product information;
[0039] Inputting the updated sample product information into the pre-built clustering model for re-clustering to obtain updated clustering results of the sample products;
[0040] The updated clustering results of the sample products are confirmed as the product categories.
[0041] In a second aspect, the present application further provides a product recommendation device. The device comprises:
[0042] An information acquisition module is used to obtain user information of the user to be recommended;
[0043] An information clustering module is configured to input the user information of the user to be recommended into a pre-built clustering model for clustering, thereby obtaining a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer;
[0044] a relationship query module, configured to query the correspondence between user categories and product categories, and obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model;
[0045] The product recommendation module recommends the target product associated with the target product category to the user to be recommended.
[0046] In a third aspect, the present application further provides a computer device. The computer device includes a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are performed:
[0047] Get the user information of the user to be recommended;
[0048] Inputting the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer;
[0049] Querying the correspondence between user categories and product categories to obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model;
[0050] The target product associated with the target product category is recommended to the user to be recommended.
[0051] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the following steps:
[0052] Get the user information of the user to be recommended;
[0053] Inputting the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer;
[0054] Querying the correspondence between user categories and product categories to obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model;
[0055] The target product associated with the target product category is recommended to the user to be recommended.
[0056] In a fifth aspect, the present application further provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the following steps:
[0057] Get the user information of the user to be recommended;
[0058] Inputting the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer;
[0059] Querying the correspondence between user categories and product categories to obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model;
[0060] The target product associated with the target product category is recommended to the user to be recommended.
[0061] The above-mentioned product recommendation method, apparatus, computer device, storage medium, and computer program product first obtain user information of the user to be recommended; then input the user information of the user to be recommended into a pre-built clustering model for clustering to obtain the target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer; then, the correspondence between user category and product category is queried to obtain the target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model; finally, the target product associated with the target product category is recommended to the user to be recommended. In this way, by using a clustering model with a spherical output layer, the performance of the clustering model can be improved, the clustering results can be made more accurate, and the accuracy of product recommendations can be further improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0062] Figure 1 Schematic diagram of a product recommendation method in one embodiment;
[0063] Figure 2 Schematic diagram of a flow chart of the steps of confirming the correspondence between user categories and product categories in one embodiment;
[0064] Figure 3 A schematic flow chart of steps for constructing a self-organizing map neural network model in one embodiment;
[0065] Figure 4 A schematic diagram of a process for identifying target points on a spherical surface in one embodiment;
[0066] FIG5( a ) is a schematic diagram showing the result of constructing an initial triangle on a spherical surface in one embodiment;
[0067] FIG5( b ) is a schematic diagram showing the result of confirming the initial target point on the sphere based on the initial triangle in one embodiment;
[0068] FIG6( a ) is a schematic diagram showing the result of connecting the midpoints of each side of the initial triangle and the initial target point in one embodiment;
[0069] FIG6( b ) is a schematic diagram showing the result of connecting the midpoints of the sides of the adjacent triangles of the initial triangle and the adjacent nodes of the corresponding initial target point in one embodiment;
[0070] FIG6( c ) is a schematic diagram showing the result of connecting the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle in one embodiment;
[0071] FIG6( d ) is a schematic diagram showing the result of confirming the adjacent node relationship of each target point on the spherical surface in one embodiment;
[0072] Figure 7 A flowchart of a step of inputting sample user information of sample users into a pre-built clustering model for clustering to obtain user categories in one embodiment;
[0073] Figure 8 A flowchart of a product recommendation method according to another embodiment;
[0074] Figure 9 is a structural block diagram of a product recommendation device in one embodiment;
[0075] Figure 10 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0076] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0077] Figure 1 is a flowchart of a product recommendation method according to an embodiment. Figure 1 As shown, the product recommendation method is used in a server. In this embodiment, the method includes the following steps:
[0078] Step S101: Obtain user information of the user to be recommended.
[0079] The user information of the user to be recommended refers to various user characteristic indicators of the user to be recommended.
[0080] Specifically, the server obtains user feature indicators related to the user to be recommended, and uses the user feature indicators as user information of the user to be recommended.
[0081] Step S102: Input the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended.
[0082] The output layer of the pre-built clustering model is a spherical output layer; the target user category is the clustering result of the to-be-recommended user on the spherical output layer, and the target user category can also be understood as the user category to which the to-be-recommended user belongs.
[0083] Specifically, the server takes the user information of the user to be recommended as input, completes clustering through a pre-built clustering model, and obtains the clustering result of the user to be recommended on the spherical output layer of the pre-built clustering model. Based on the clustering result, the server determines the user category to which the user to be recommended belongs, and confirms the user category as the target user category of the user to be recommended.
[0084] For example, the server uses a pre-built clustering model to cluster the users to be recommended. Based on the clustering results, the server can determine the target user category of the recommended user, that is, the category of users to which the recommended user belongs. For example, the server uses the pre-built clustering model to determine that the target user category of the recommended user is category x1.
[0085] Step S103: query the corresponding relationship between user categories and product categories to obtain the target product category corresponding to the target user category.
[0086] Among them, user categories are obtained by clustering sample users through a pre-built clustering model, and product categories are obtained by clustering sample products through a pre-built clustering model. For example, the server clusters sample users and divides them into m categories, which are recorded as X(x1,x2,x3,…,x m ), where x1,x2,x3,…,x m Represents each user category. Similarly, the server clusters the sample products and divides them into n categories, which are recorded as Y(y1,y2,y3,…,y n ), where y1,y2,y3,…,y n Represents each product category.
[0087] It should be noted that products can be financial products such as funds and stocks, or products in other fields. The correspondence between user categories and product categories refers to the preference data of a certain type of sample user for a certain type of sample product. For example, user category x1 prefers product category y3.
[0088] Specifically, the server queries the preference data of the user category for the product category, obtains the product category preferred by the target user category corresponding to the user to be recommended, and determines the corresponding product category as the target product category corresponding to the target user category.
[0089] For example, the server checks the preference data of the user category to which the recommended user belongs for the product category and determines that the user in category x1 prefers the product in category y3.
[0090] Step S104: recommending the target product associated with the target product category to the user to be recommended.
[0091] The target products associated with the target product category refer to a number of products whose product category is the target product category.
[0092] Specifically, the server recommends several products belonging to the target product category to the user to be recommended.
[0093] For example, the server recommends several products belonging to the product category y3 to the user to be recommended in descending order of preference data.
[0094] In the above product recommendation method, the server first obtains the user information of the user to be recommended. It then inputs the user information into a pre-built clustering model for clustering, obtaining the target user category for the user to be recommended. The server then queries the correspondence between user categories and product categories to obtain the target product category corresponding to the target user category. The user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model. Finally, the target product associated with the target product category is recommended to the user to be recommended. In this way, using a clustering model with a spherical output layer can improve the performance of the clustering model, making the clustering results more accurate and further enhancing the accuracy of product recommendations.
[0095] In an exemplary embodiment, Figure 2 As shown, before the above step S101, in which the user information of the user to be recommended is obtained, the following steps are specifically included:
[0096] Step S201 : constructing a self-organizing map neural network model with a spherical output layer as a pre-constructed clustering model.
[0097] In step S202 , the sample user information of the sample users is input into a pre-built clustering model for clustering to obtain user categories, and the sample product information of the sample products is input into a pre-built clustering model for clustering to obtain product categories.
[0098] Step S203 : confirming the correspondence between the user category and the product category based on the operation data of the sample users in the user category on the sample products in the product category and the product feature indicators of the sample products in the product category.
[0099] The operation data of the sample users in the user category on the sample products in the product category refers to the purchase data, attention data, and browsing data of each sample user on each sample product, which can reflect the preferences of the sample users.
[0100] It should be noted that the sample user information includes various user characteristic indicators that can reflect the sample users, such as age, gender, income, risk preference, occupation, education level, etc. The sample product information of the sample products includes various product characteristic indicators that can reflect the sample products, such as the number of purchasers, number of holders, growth rate over the past seven days, historical rate of return, number of followers, valuation, net value, theme sector, etc.
[0101] Specifically, the server first constructs a self-organizing map neural network model with a spherical output layer as the output layer, and uses the self-organizing map neural network model as a pre-constructed clustering model; then the sample user information of the sample users and the sample product information of the sample products are respectively input into the pre-constructed clustering model for clustering to obtain corresponding clustering results, and the corresponding clustering results are confirmed as user analogies and product categories; finally, the server confirms the correspondence between user categories and product categories based on the operation data of the sample users in the user category on the sample products in the product category, as well as the product feature indicators of the sample products in the product category, that is, confirms which category of users prefers which category of products.
[0102] For example, assuming that there are A sample users and B sample products, the server first constructs a self-organizing map neural network model with a spherical output layer, and uses the self-organizing map neural network model as a pre-built clustering model; for the sample users, the server inputs the sample user information of A sample users into the pre-built clustering model for clustering. The clustering result divides A sample users into m categories, and obtains user categories X (x1, x2, x3, ..., x m ); For sample products, the server inputs the sample product information of B sample products into the pre-built clustering model for clustering. The clustering result divides B sample products into n categories, and obtains product category Y (y1, y2, y3, ..., y n); finally, the server obtains the following information by querying the operation data of each sample user in each user category on each sample product in each product category, as well as the product feature indicators of each sample product in each product category: the number of users in category x1 who choose category y1, y2, and y3 products is the largest, and among category y1, y2, and y3 products, category y3 products have the highest growth rate in the past seven days, so a corresponding relationship is established between category x1 users and category y3 products.
[0103] In this embodiment, the server constructs a self-organizing map neural network model with a spherical output layer as a pre-built clustering model, which can improve the performance of the clustering model and enhance the accuracy of the clustering results; at the same time, the server clusters sample users and sample products through the pre-built clustering model, and can effectively classify users and products; in addition, the server can confirm the product category that needs to be recommended to the recommended user through the correspondence between user categories and product categories.
[0104] In an exemplary embodiment, Figure 3 As shown, in the above step S201, constructing a self-organizing map neural network model with a spherical output layer as the output layer further specifically includes the following steps:
[0105] Step S301: confirm each target point on the spherical surface.
[0106] Step S302: confirm the adjacent node relationship of each target point on the spherical surface, and confirm each target point as an output neuron to obtain a spherical output layer.
[0107] Step S303: construct a self-organizing map neural network model based on the spherical output layer.
[0108] Specifically, the server first confirms each target point on the sphere, then confirms the adjacent node relationship of each target point on the sphere, and confirms each target point as an output neuron to obtain a spherical output layer with uniform output nodes. Finally, based on the spherical output layer with uniform output nodes, a self-organizing map neural network model is constructed.
[0109] For example, the server first obtains each target point on the sphere, then obtains the adjacent node relationship of each target point on the sphere, and identifies each target point as an output neuron to obtain a spherical output layer with uniform output nodes. Finally, based on the spherical output layer with uniform output nodes, a self-organizing map neural network model is constructed.
[0110] It should be noted that when the output nodes of a traditional self-organizing map neural network model are located in the middle, boundary, or corner positions, the number of nodes in the neighborhood will decrease from many to few, resulting in asymmetry of the output nodes. This asymmetry can affect the learning ability of the neural network and make the clustering results inaccurate. Therefore, in this embodiment, the server obtains a uniform spherical output layer of output nodes by confirming the relationship between the target points and the adjacent nodes of the target points. Based on the uniform spherical output layer of output nodes, a self-organizing map neural network model is constructed. This can effectively solve the problem of unbalanced output layer nodes in the traditional self-organizing map neural network model, making the output layer nodes have good symmetry, thereby improving the performance of the self-organizing map neural network and thus improving the accuracy of clustering.
[0111] In an exemplary embodiment, Figure 4 As shown, the above step S301, confirming each target point on the spherical surface, specifically includes the following steps:
[0112] Step S401: construct an initial triangle on the spherical surface.
[0113] Step S402: confirm the initial target point on the sphere based on the initial triangle.
[0114] Step S403: Update the initial triangle according to any two vertices in the initial triangle and the initial target point to obtain an updated triangle, and confirm the initial target point as the target point.
[0115] Step S404: Use the updated triangle as the initial triangle, and jump to the step of confirming the initial target point on the sphere based on the initial triangle, until the target point confirmed on the sphere is the initial target point.
[0116] The initial triangle is an equilateral triangle; the initial target point is the intersection of a ray perpendicular to the initial triangle and the sphere, and the foot of the ray is the orthocenter of the initial triangle.
[0117] Specifically, the server constructs an initial triangle on the sphere, with the three vertices of the initial triangle all on the sphere and the three sides being of equal length; then, a ray perpendicular to the initial triangle is constructed through the orthocenter of the initial triangle, and the intersection of the ray and the sphere is confirmed as the initial target point; then, an updated triangle is constructed based on any two vertices in the initial triangle and the initial target point, the initial target point is confirmed as the target point, and the updated triangle is used as the initial triangle, and the process returns to step S402 until the target point confirmed on the sphere is the initial target point, that is, the termination condition of the loop for constructing each target point is that the target point determined for the last time is also the target point determined for the first time.
[0118] For example, as shown in Figure 5(a), the server randomly selects a point A on the sphere to construct an initial triangle ΔABC, with points B and C also on the sphere, where AB = BC = AC. Then, as shown in Figure 5(b), the server constructs AD ⊥ BC through point A, BF ⊥ AC through point B, and CE ⊥ AB through point C, with AD, BF, and CE intersecting at point O, which is the orthocenter of ΔABC. The server then constructs a ray PP′ through point O that intersects ABC, with the ray intersecting the sphere at point P, which is the initial target point. The server then confirms point P as the target point obtained from the first confirmation and uses ΔABC, ΔBCP, and ΔACP to create a new initial triangle. The server repeats the above steps for ΔBCP, ΔABC, and ΔACP, obtaining target points Q1, Q2, and Q3. The server repeats these steps, continuously confirming target points on the sphere until the final confirmed target point is point P.
[0119] In this embodiment, the server can confirm that each target point is evenly located on the spherical surface by continuously updating the initial triangle; in addition, the target point determined for the last time is also the loop termination condition for the target point determined for the first time, which can ensure that the final spherical output layer is closed-loop, avoiding the situation where the output layer cannot be evenly distributed.
[0120] In an exemplary embodiment, in the above step S302, the adjacent node relationship of each target point is confirmed on the spherical surface, specifically including the following contents:
[0121] According to the initial triangle and the adjacent triangles of the initial triangle, the initial target point and the adjacent nodes of the initial target point are connected; the connection line between the initial target point and the adjacent nodes of the initial target point is confirmed as the adjacent node relationship of the target point; the adjacent nodes of the initial target point are used as the initial target point, and the adjacent triangles of the initial triangle are used as the initial triangle, and jump to the step of connecting the initial target point and the adjacent nodes of the initial target point according to the initial triangle and the adjacent triangles of the initial triangle, until the adjacent node relationship of each target point is confirmed on the sphere.
[0122] Among them, the adjacent triangles of the initial triangle are the updated triangles; the adjacent nodes of the initial target point are the target points confirmed based on the updated triangles.
[0123] Specifically, the server first connects the midpoints of each side of the initial triangle and the initial target point, and then connects the midpoints of each side of the adjacent triangles of the initial triangle and the corresponding adjacent nodes of the initial target point. Since the initial triangle and the adjacent triangles of the initial triangle have a common side, the initial target point and the adjacent nodes of the initial target point can be connected by a broken line through the midpoint of the common side, and then the connection between the initial target point and the adjacent nodes of the initial target point is confirmed as the adjacent node relationship of the initial target point; then the server uses the adjacent nodes of the initial target point as the initial target point, and the adjacent triangles of the initial triangle as the initial triangle, and returns to the step "connecting the initial target point and the adjacent nodes of the initial target point according to the initial triangle and the adjacent triangles of the initial triangle" until the adjacent node relationship of each target point is confirmed on the sphere.
[0124] For example, as shown in Figure 6(a), ΔABC is the initial triangle, and point P is the initial target point. The server first connects the midpoints of each side of ΔABC through point P, obtaining three medians. As shown in Figure 6(b), ΔBCP is an adjacent triangle of the initial triangle ΔABC, and point Q1 is an adjacent node of the initial target point P. The server connects the midpoints of each side of ΔBCP through point Q1, similarly obtaining three medians. One of these medians passes through the midpoint of BC, namely, PQ1, which is connected by a polyline through the midpoint of edge BC. As shown in Figure 6(c), the server uses the same method to connect the other two adjacent nodes of point P, points Q2 and Q3. Polylines PQ1, PQ2, and PQ3 represent the adjacent node relationships of the initial target point P. Similarly, the server uses ΔBCP, ΔABC, and ΔACP as the initial triangles, and points Q1, Q2, and Q3 as the corresponding initial target points, respectively. The above steps are repeated until the adjacent node relationships of all target points on the sphere S are obtained, resulting in the spherical output layer shown in Figure 6(d).
[0125] In this embodiment, the server can obtain the neighborhood range centered on each target node by confirming the adjacent node relationship of each target point, thereby obtaining a uniform spherical output layer, making the output layer have good symmetry, constructing a self-organizing map neural network model, and then improving the performance of the self-organizing map neural network, thereby improving the accuracy of clustering.
[0126] In an exemplary embodiment, in the above step S202 , before inputting the sample user information of the sample users into a pre-built clustering model for clustering to obtain user categories, the following contents are specifically included: obtaining the sample user information of the sample users.
[0127] like Figure 7 As shown, the above step S202, inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain user categories, specifically includes the following steps:
[0128] In step S701, the sample user information is input into a pre-built clustering model, and the winning neuron is determined in the spherical output layer according to the initial connection weights between the input neurons corresponding to the sample user information in the pre-built clustering model and the output neurons of the spherical output layer.
[0129] Step S702: Update the initial connection weights between the input neurons and the output neurons corresponding to the sample user information according to the neighborhood range of the winning neuron, and obtain the clustering results of the sample users.
[0130] Step S703: confirm the clustering results of the sample users as user categories.
[0131] The sample user information is constructed based on the user feature indicators of the sample users. The initial connection weights are obtained by initializing the connection weights between the input neurons and the output neurons; the input neurons represent the sample user information of each sample user, and the output neurons represent the feature indicators uniformly selected for all sample users.
[0132] Specifically, the server first obtains various user characteristic indicators of sample users, such as age, gender, income, risk preference, occupation, and education level, to construct sample user information. This sample user information is then used as input and fed into a pre-built clustering model via input neurons for clustering. The specific clustering process is as follows: the server first initializes the connection weights of the input and output neurons in the self-organizing map neural network. It then calculates the shortest distance between the connection weights of the input and output neurons corresponding to each sample user and the sample user information to determine the winning neuron. Based on the number of learning times and the neighborhood range of the winning neuron, the connection weights between the input and output neurons are modified until a preset clustering accuracy threshold is met. This completes the clustering of all sample users, resulting in a clustering result for the sample users, which is then confirmed as a user category.
[0133] For example, the sample user information of the first sample user corresponding to the user characteristic indicator items {age, gender, income, risk preference, occupation, education} is {27, female, 20, R3, finance, master's degree}. The data dictionary of gender is constructed as [{male, 1}, {female, 2}], and the data dictionary of risk preference is constructed as: [{R1, 1}, {R2, 2}, {R3, 3}...]. Similarly, the sample user information of the first sample user can be converted to {27, 2, female, 20, 3, 2, 4}. The server first generates the connection weights {w ij} is assigned a random value in the interval [0, 1], where i represents the i-th input neuron, which is used to represent the sample user information of the i-th sample user, and j represents the j-th output neuron, which is used to represent the j-th user feature index item, that is, w14 The connection weight between the input neuron representing the sample user information of the first sample user and the output neuron representing the risk preference of the fourth user characteristic indicator item is represented. The server then inputs the user information of each sample user into the pre-built clustering model through each input neuron, determines the winning neuron corresponding to each sample user, and continuously adjusts the connection weight until the number of learning times meets the preset clustering accuracy threshold, completing the clustering. The specific process is as follows:
[0134] The sample user information of the sample user is recorded as P i =(P1 i ,P2 i ,...,P j i ), where P j i Represents the jth user characteristic index data of the i-th sample user, such as P4 1 is 3. The connection weights of the input neurons and output neurons corresponding to the sample users are expressed as weight vector W i =(w i1 ,w i2 ,…w ij ), where w ij represents the connection weight between the input neuron corresponding to the i-th sample user and the output neuron representing the j-th user feature index item, such as w 14 Represents the connection weight between the input neuron corresponding to the first sample user and the output neuron representing the risk preference of the fourth user characteristic indicator. The server obtains the distance between the weight vector and the sample user information through the following formula:
[0135]
[0136] Then the output neuron with the shortest distance is determined as the winning neuron. Assuming that the winning neuron is g, the connection weight is corrected by the following formula:
[0137]
[0138]
[0139]
[0140] Among them, t is the number of learning times, η(t) is the learning rate, N g (t) is the neighborhood range of the winning neuron g in the t-th learning. It should be noted that the neighborhood radius a(t) and learning rate η(t) in each learning process are obtained by the following formula:
[0141] a(t)=a(0)×(1-t / T)
[0142] η(t)=η(0)×(1-t / T)
[0143] Where T is the preset total number of learning times, a(0) and η(0) are the initial neighborhood radius and the initial learning rate, that is, as the number of learning times t increases, the neighborhood area shrinks proportionally, and nodes outside the neighborhood inhibit each other, so that inputs with similar features are clustered together.
[0144] In this embodiment, by correcting the connection weights of input neurons and output neurons, updating the learning rate, and updating the neighborhood range of the winning neuron, it is possible to repeatedly learn the input sample users, capture the user feature indicators of each sample user, self-organize them, and finally represent the results in the output layer, thereby realizing clustering of sample users.
[0145] In an exemplary embodiment, the above-mentioned step S202, the process of inputting the sample product information of the sample product into a pre-built clustering model for clustering to obtain the product category, is the same as the process of inputting the sample user information of the sample user into a pre-built clustering model for clustering to obtain the user category, and this application will not provide further explanation here.
[0146] In an exemplary embodiment, in the above step S202, the sample user information of the sample user is input into a pre-built clustering model for clustering. After the user category is obtained, the following contents are specifically included: when the number of operations performed by any sample user on the sample product is greater than a preset number, the sample user information of the sample user is updated to obtain updated sample user information; the updated sample user information is input into the pre-built clustering model for clustering again to obtain an updated clustering result of the sample user; and the updated clustering result of the sample user is confirmed as the user category.
[0147] Among them, the number of operations is greater than the preset number, which means that when the number of purchases, attentions or views of any sample user on any sample product is greater than the preset number, the preset number can be set and adjusted according to actual needs.
[0148] Specifically, when the number of purchases, attentions, or views of a sample product by any sample user is greater than a preset number, the server will update the sample user information of the sample user based on the operation record, obtain the updated sample user information, and use the updated sample user information as input to perform clustering again through the pre-built clustering model, and confirm the updated clustering result of the sample user as the user category.
[0149] For example, the server sets the preset number of purchases to 10 times. When any sample user purchases a sample product 11 times, the server will update the sample user information, trigger re-clustering, and cluster the updated sample user information again through the pre-built clustering model to obtain the updated user clustering result, that is, the updated user category.
[0150] In this embodiment, by introducing the subjective factors of the customers, the server can better adaptively adjust the classification of users according to the changes in user operations, so that the user classification results can adapt to sudden changes, further improving the accuracy of product recommendations.
[0151] In an exemplary embodiment, in the above step S202, the sample product information of the sample product is input into a pre-built clustering model for clustering to obtain the product category, and the following contents are specifically included: when the product characteristic indicators of any sample product in the sample products show abnormal changes within a preset time period, the sample product information of the sample product is updated to obtain updated sample product information; the updated sample product information is input into the pre-built clustering model for clustering again to obtain an updated clustering result of the sample product; and the updated clustering result of the sample product is confirmed as the product category.
[0152] Among them, abnormal changes refer to changes that exceed the preset change range. The preset time period and preset change range can be set and adjusted according to actual needs.
[0153] Specifically, if the product characteristic indicators of any sample product show abnormal changes within a preset time period, the server will update the sample product information of the sample product, and use the updated sample product information as input to perform clustering again through the pre-built clustering model, and confirm the updated clustering results of the sample product as the product category.
[0154] For example, the preset time period of the server is six months. When the growth rate of any sample product in the past seven days changes beyond the preset range within six months, the server will update the sample product information, trigger re-clustering, and cluster the updated sample product information again through the pre-built clustering model to obtain the updated product clustering results, that is, the updated product category.
[0155] In this embodiment, the server can better adaptively adjust the classification of products according to market changes by introducing objective factors of the products, so that the product classification results can adapt to sudden changes, further improving the accuracy of product recommendations.
[0156] It should be noted that when the user category or product category is updated, the server will also adaptively update the correspondence between the user category and the product category.
[0157] In an exemplary embodiment, Figure 8 As shown, another product recommendation method is provided, which is described by taking the application of this method to a server as an example, and includes the following steps:
[0158] Step S801 : constructing a self-organizing map neural network model with a spherical output layer as a pre-constructed clustering model.
[0159] Step S802: Input the sample user information of the sample users into a pre-built clustering model for clustering to obtain user categories.
[0160] Step S803: Input the sample product information of the sample product into a pre-built clustering model for clustering to obtain product categories.
[0161] Step S804 : confirming the correspondence between user categories and product categories based on the operation data of sample users in the user category on sample products in the product category and the product feature indicators of the sample products in the product category.
[0162] Step S805: Obtain user information of the user to be recommended.
[0163] Step S806: Input the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended.
[0164] Step S807: query the correspondence between user categories and product categories to obtain the target product category corresponding to the target user category.
[0165] Step S808: recommending the target product associated with the target product category to the user to be recommended.
[0166] In particular, after step S803 and step S804, the following specific contents are also included: when the number of operations performed by any sample user on the sample product is greater than the preset number, the sample user information of the sample user is updated to obtain updated sample user information; the updated sample user information is input into a pre-built clustering model for re-clustering to obtain an updated clustering result of the sample user; the updated clustering result of the sample user is confirmed as a user category; when the product characteristic indicators of any sample product show abnormal changes within a preset time period, the sample product information of the sample product is updated to obtain updated sample product information; the updated sample product information is input into a pre-built clustering model for re-clustering to obtain an updated clustering result of the sample product; the updated clustering result of the sample product is confirmed as a product category.
[0167] In this embodiment, the server can improve the performance of the clustering model by constructing a clustering model with a spherical output layer, making the clustering results more accurate and further improving the accuracy of product recommendations. At the same time, the server can effectively classify users and products by clustering sample users and sample products through the pre-built clustering model; in addition, the server can confirm the product category that needs to be recommended to the recommended user through the correspondence between user categories and product categories. It should also be noted that by introducing user subjective factors and product objective factors, the server can better adaptively adjust the classification of users and products according to user operations or product changes, so that the user classification results and product classification results can adapt to sudden changes, further improving the accuracy of product recommendations.
[0168] In order to more clearly illustrate the product recommendation method provided by the embodiment of the present application, the product recommendation method is specifically described below with a specific embodiment. In one embodiment, the present application also provides a product recommendation method based on the improved SOM algorithm, which specifically includes the following steps:
[0169] Step 1: Construct a self-organizing map neural network model with a spherical output layer as a pre-built clustering model.
[0170] The server constructs a self-organizing map neural network model with a spherical output layer through the following steps:
[0171] (1) Draw an equilateral triangle ΔABC on the sphere, where points A, B, and C are all points on the sphere;
[0172] (2) For ΔABC, draw AD⊥BC through point A, BF⊥AC through point B, and CE⊥AB through point C, with AD, BF, and CE intersecting at point O. Then draw a ray PP′⊥ABC through point O, which intersects the sphere at point P. Repeat the above steps, traversing ΔABC, ΔBCP, and ΔACP, to generate new points and new triangles on the sphere.
[0173] (3) Repeat step (2) until the number of points on the sphere generated in the new round reaches or exceeds a certain threshold. Point P is the point generated by the initial ΔABC, and is also the point generated in the last round. Connect the midpoints of each side of ΔABC through point P to obtain three medians. Similarly, for the adjacent triangle ΔBCP, three medians are obtained through point Q1, one of which passes through the midpoint of BC, that is, PQ1 is connected by the broken line of the midpoint. The other two medians of point P can also be connected to the corresponding points Q2 and Q2 by the same method. After removing irrelevant points and lines, the corresponding points P, Q1, Q1 and Q3 are neighbor nodes to each other; repeat the above steps to obtain the corresponding neighbor nodes of points Q1, Q1 and Q3...;
[0174] (4) By mapping the points and lines generated above onto a spherical surface, a self-organizing map neural network model with a spherical output layer can be obtained as a pre-built clustering model.
[0175] Step 2: Complete clustering of sample users.
[0176] The server completes the clustering of sample users through the following steps:
[0177] (1) The connection weights {w ij}Assign a random value in the interval [0, 1];
[0178] (2) Inputting the sample user information of the sample users into the pre-built clustering model;
[0179] (3) Calculate the shortest distance between the sample user information and the connection weight of the sample user, and identify the output neuron corresponding to the shortest distance as the winning neuron;
[0180] (4) Modify the connection weight according to the neighborhood range of the winning neuron;
[0181] (5) Update the learning rate and the neighborhood range of the winning neuron, and modify the connection weight again according to the neighborhood range of the winning neuron until the number of learning times of the sample user reaches the threshold requirement, complete the clustering of the sample users, and obtain the user category.
[0182] Step 3: Complete clustering of sample products. Replace the input of the clustering process of sample users with sample products, cluster the sample products, and obtain product categories.
[0183] Step 4: Obtain the correspondence between user categories and product categories.
[0184] Step 5: Recommend corresponding products to the recommended users.
[0185] The server recommends the corresponding product to the recommended user through the following steps
[0186] (1) Obtaining user information of the user to be recommended, inputting the user information of the user to be recommended into a pre-built clustering model, and determining the user category of the user to be recommended as the target user category;
[0187] (2) According to the target user category and the correspondence between the user category and the product category, determine the product category corresponding to the target user category as the target product category;
[0188] (3) Recommend products under the target product category as target products to the users to be recommended.
[0189] Specifically, to make user and product categories more precise, the server incorporates subjective factors. Since each user's purchasing preferences change after multiple purchases, the weights of each variable must be readjusted and clustering performed for that user. Objective factors are also incorporated into product categories. For example, during emergencies like economic crises, product categories may undergo significant changes within a short period of time, necessitating a re-triggering of product clustering.
[0190] In this embodiment, the server obtains the user information of the user to be recommended; then inputs the user information of the user to be recommended into a pre-built clustering model for clustering to obtain the target user category of the user to be recommended; then queries the correspondence between user categories and product categories to obtain the target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model; finally, the target product associated with the target product category is recommended to the user to be recommended. In this way, by constructing a clustering model with a spherical output layer, the server can make the clustering results more accurate and further improve the accuracy of product recommendations. At the same time, the server can effectively classify users and products by clustering sample users and sample products using the pre-built clustering model; in addition, the server can confirm the product category that needs to be recommended to the user to be recommended based on the correspondence between user categories and product categories. It should also be noted that by introducing user subjective factors and product objective factors, the server can better adaptively adjust the classification of users and products according to user operations or product changes, so that the user classification results and product classification results can adapt to sudden changes, further improving the accuracy of product recommendations.
[0191] It should be understood that, although the steps in the flowcharts of the above embodiments are shown in sequence as indicated by the arrows, these steps are not necessarily performed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the flowcharts of the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times. The execution order of these steps or stages is not necessarily to be performed in sequence, but can be performed in turn or alternately with other steps or at least a portion of steps or stages in other steps.
[0192] Based on the same inventive concept, the present application also provides a product recommendation device for implementing the aforementioned product recommendation method. The solution provided by this device is similar to the solution described in the aforementioned method. Therefore, the specific limitations of one or more product recommendation device embodiments provided below can be found in the above-mentioned limitations of the product recommendation method and will not be repeated here.
[0193] In an exemplary embodiment, Figure 9 As shown, a product recommendation device is provided, comprising: an information acquisition module 901, an information clustering module 902, a relationship query module 903 and a product recommendation module 904, wherein:
[0194] The information acquisition module 901 is used to acquire user information of the user to be recommended.
[0195] The information clustering module 902 is used to input the user information of the user to be recommended into a pre-built clustering model for clustering to obtain the target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer.
[0196] The relationship query module 903 is used to query the correspondence between user categories and product categories to obtain the target product category corresponding to the target user category; the user category is obtained by clustering sample users through a pre-built clustering model, and the product category is obtained by clustering sample products through a pre-built clustering model.
[0197] The product recommendation module 904 recommends target products associated with the target product category to the user to be recommended.
[0198] In an exemplary embodiment, the product recommendation device also includes a model construction module, which is used to construct a self-organizing map neural network model with a spherical output layer as a pre-built clustering model; the information clustering module 902 is also used to input sample user information of sample users into the pre-built clustering model for clustering to obtain user categories, and input sample product information of sample products into the pre-built clustering model for clustering to obtain product categories; the relationship query module 903 is also used to confirm the correspondence between user categories and product categories based on the operation data of sample users in the user category on sample products in the product category, and the product feature indicators of the sample products in the product category.
[0199] In an exemplary embodiment, the model construction module is also used to confirm each target point on the sphere; confirm the adjacent node relationship of each target point on the sphere, and confirm each target point as an output neuron to obtain a spherical output layer; and construct a self-organizing map neural network model based on the spherical output layer.
[0200] In an exemplary embodiment, the model construction module is also used to construct an initial triangle on a sphere; the initial triangle is an equilateral triangle; based on the initial triangle, an initial target point on the sphere is confirmed; the initial target point is the intersection between a ray perpendicular to the initial triangle and the sphere, and the foot of the ray is the orthocenter of the initial triangle; based on any two vertices in the initial triangle and the initial target point, the initial triangle is updated to obtain an updated triangle, and the initial target point is confirmed as the target point; the updated triangle is used as the initial triangle, and the process jumps to the step of confirming the initial target point on the sphere based on the initial triangle, until the target point confirmed on the sphere is the initial target point.
[0201] In an exemplary embodiment, the model building module is also used to connect the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle; the adjacent triangles of the initial triangle are the updated triangles; the adjacent nodes of the initial target point are the target points confirmed based on the updated triangles; the connecting line between the initial target point and the adjacent nodes of the initial target point is confirmed as the adjacent node relationship of the target point; the adjacent nodes of the initial target point are used as the initial target point, and the adjacent triangles of the initial triangle are used as the initial triangle, and jump to the step of connecting the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle, until the adjacent node relationship of each target point is confirmed on the sphere.
[0202] In an exemplary embodiment, the information clustering module 902 is also used to obtain sample user information of sample users; the sample user information is constructed based on user feature indicators of the sample users; the sample user information of the sample users is input into a pre-constructed clustering model for clustering to obtain user categories, including: inputting the sample user information into the pre-constructed clustering model, and determining a winning neuron in the spherical output layer based on the initial connection weights between the input neurons corresponding to the sample user information in the pre-constructed clustering model and the output neurons of the spherical output layer; the initial connection weights are obtained by initializing the connection weights between the input neurons and the output neurons; based on the neighborhood range of the winning neuron, the initial connection weights between the input neurons and the output neurons corresponding to the sample user information are updated to obtain the clustering results of the sample users; and the clustering results of the sample users are confirmed as user categories.
[0203] In an exemplary embodiment, the information clustering module 902 is also used to cluster sample products. The specific process is the same as the process of clustering sample users, and is not further explained in this application.
[0204] In an exemplary embodiment, the information clustering module 902 is also used to update the sample user information of the sample user when the number of operations performed by any sample user on the sample product is greater than a preset number, to obtain updated sample user information; input the updated sample user information into a pre-built clustering model for re-clustering to obtain an updated clustering result of the sample user; and confirm the updated clustering result of the sample user as a user category.
[0205] In an exemplary embodiment, the information clustering module 902 is also used to update the sample product information of the sample product when the product characteristic indicators of any sample product in the sample products show abnormal changes within a preset time period, so as to obtain updated sample product information; input the updated sample product information into a pre-built clustering model for re-clustering to obtain updated clustering results of the sample product; and confirm the updated clustering results of the sample product as product categories.
[0206] Each module in the above-mentioned product recommendation device can be implemented in whole or in part through software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in the computer device in the form of software, so that the processor can call and execute the corresponding operations of each module.
[0207] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 10 As shown. The computer device includes a processor, a memory and a network interface connected via a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store user data and product data. The network interface of the computer device is used to communicate with an external terminal via a network connection. When the computer program is executed by the processor, a product recommendation method is implemented.
[0208] Those skilled in the art will understand that Figure 10 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0209] In an exemplary embodiment, a computer device is further provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above method embodiments when executing the computer program.
[0210] In an exemplary embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0211] In an exemplary embodiment, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0212] It should be noted that the product information (including but not limited to product equipment information, product personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the product or fully authorized by all parties.
[0213] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, database or other media used in the embodiments provided in this application may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchains. The processor involved in the various embodiments provided herein may be, but are not limited to, a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic unit, a data processing logic unit based on quantum computing, and the like.
[0214] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0215] The above embodiments merely illustrate several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person skilled in the art may make various modifications and improvements without departing from the spirit of the present invention, all of which fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A product recommendation method, characterized in that: The method comprises: Get the user information of the user to be recommended; Inputting the user information of the user to be recommended into a pre-built clustering model for clustering to obtain a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer; Querying the correspondence between user categories and product categories to obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model; recommending the target product associated with the target product category to the user to be recommended; Before obtaining the user information of the user to be recommended, it also includes: Constructing a self-organizing map neural network model with a spherical output layer as a pre-constructed clustering model; inputting sample user information of the sample users into the pre-constructed clustering model for clustering to obtain the user categories, and inputting sample product information of the sample products into the pre-constructed clustering model for clustering to obtain the product categories; confirming the correspondence between the user categories and the product categories based on the operation data of the sample users in the user category on the sample products in the product category and the product feature indicators of the sample products in the product category; The self-organizing map neural network model of constructing a spherical output layer includes: Identifying each target point on the spherical surface; identifying adjacent node relationships of each target point on the spherical surface, and identifying each target point as an output neuron to obtain the spherical output layer; constructing the self-organizing map neural network model based on the spherical output layer; The step of confirming each target point on the spherical surface includes: Construct an initial triangle on a sphere; the initial triangle is an equilateral triangle; based on the initial triangle, confirm the initial target point on the sphere; the initial target point is the intersection of a ray perpendicular to the initial triangle and the sphere, and the foot of the ray is the orthocenter of the initial triangle; based on any two vertices in the initial triangle and the initial target point, update the initial triangle to obtain an updated triangle, and confirm the initial target point as the target point; use the updated triangle as the initial triangle, and jump to the step of confirming the initial target point on the sphere based on the initial triangle, until the target point confirmed on the sphere is the initial target point.
2. The method according to claim 1, characterized in that Confirming the adjacent node relationship of each target point on the spherical surface includes: Connecting the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle; the adjacent triangles of the initial triangle are the updated triangles; and the adjacent nodes of the initial target point are the target points confirmed based on the updated triangles; Confirming the connection between the initial target point and the adjacent nodes of the initial target point as the adjacent node relationship of the target point; The adjacent nodes of the initial target point are used as the initial target point, and the adjacent triangles of the initial triangle are used as the initial triangle, and the process proceeds to the step of connecting the initial target point and the adjacent nodes of the initial target point based on the initial triangle and the adjacent triangles of the initial triangle, until the adjacent node relationship of each target point is confirmed on the spherical surface.
3. The method according to claim 1, characterized in that Before inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user categories, the method further includes: Acquire sample user information of the sample user; the sample user information is constructed based on user characteristic indicators of the sample user; The step of inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user category includes: Inputting the sample user information into the pre-built clustering model, and determining a winning neuron in the spherical output layer based on an initial connection weight between an input neuron corresponding to the sample user information in the pre-built clustering model and an output neuron of the spherical output layer; the initial connection weight is obtained by initializing the connection weight between the input neuron and the output neuron; According to the neighborhood range of the winning neuron, the initial connection weight between the input neuron and the output neuron corresponding to the sample user information is updated to obtain the clustering result of the sample user; The clustering result of the sample users is confirmed as the user category.
4. The method according to claim 1, wherein After inputting the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user categories, the method further includes: When the number of operations on the sample product by any sample user among the sample users exceeds a preset number, updating the sample user information of the sample user to obtain updated sample user information; Inputting the updated sample user information into the pre-built clustering model for clustering again to obtain an updated clustering result of the sample user; The updated clustering result of the sample users is confirmed as the user category.
5. The method according to claim 1, wherein After inputting the sample product information of the sample product into the pre-built clustering model for clustering to obtain the product category, the method further includes: When a product characteristic indicator of any sample product among the sample products shows an abnormal change within a preset time period, updating the sample product information of the sample product to obtain updated sample product information; Inputting the updated sample product information into the pre-built clustering model for re-clustering to obtain updated clustering results of the sample products; The updated clustering results of the sample products are confirmed as the product categories.
6. A product recommendation device, characterized in that: The device comprises: An information acquisition module is used to obtain user information of the user to be recommended; An information clustering module is configured to input the user information of the user to be recommended into a pre-built clustering model for clustering, thereby obtaining a target user category of the user to be recommended; the output layer of the pre-built clustering model is a spherical output layer, and the target user category is the clustering result of the user to be recommended on the spherical output layer; a relationship query module, configured to query the correspondence between user categories and product categories, and obtain a target product category corresponding to the target user category; the user category is obtained by clustering sample users using the pre-built clustering model, and the product category is obtained by clustering sample products using the pre-built clustering model; A product recommendation module recommends target products associated with the target product category to the user to be recommended; A model building module for building a self-organizing map neural network model with a spherical output layer as a pre-built clustering model; The information clustering module is further configured to input the sample user information of the sample users into the pre-built clustering model for clustering to obtain the user category, and input the sample product information of the sample products into the pre-built clustering model for clustering to obtain the product category; The relationship query module is further configured to determine the correspondence between user categories and product categories based on operation data of sample users in the user category on sample products in the product category and product feature indicators of the sample products in the product category; The model construction module is further configured to identify each target point on the spherical surface; identify the adjacent node relationship of each target point on the spherical surface, and identify each target point as an output neuron to obtain the spherical output layer; and construct the self-organizing map neural network model based on the spherical output layer; The model construction module is also used to construct an initial triangle on a sphere; the initial triangle is an equilateral triangle; based on the initial triangle, an initial target point on the sphere is confirmed; the initial target point is the intersection between a ray perpendicular to the initial triangle and the sphere, and the foot of the ray is the orthocenter of the initial triangle; based on any two vertices in the initial triangle and the initial target point, the initial triangle is updated to obtain an updated triangle, and the initial target point is confirmed as the target point; the updated triangle is used as the initial triangle, and the process jumps to the step of confirming the initial target point on the sphere based on the initial triangle, until the target point confirmed on the sphere is the initial target point.
7. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 5 are implemented.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
9. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
User dynamic classification-based e-commerce platform commodity recommendation method and system
CN111709812A
Method and apparatus for enhancing user based content data
US20120198347A1