Financial product recommendation method and device, equipment and storage medium
By adopting the blockchain federated learning architecture method in the financial product recommendation system, the shortcomings of the deep learning model in terms of data transmission security and accurate recommendation are solved, and data security and accurate financial product recommendation are achieved.
Patent Information
- Application Number
- CN202411710322.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-27
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2044-11-27
AI Technical Summary
When using deep learning, existing financial product recommendation methods require a large amount of customer data for training, resulting in security and privacy issues during data transmission, and the model cannot accurately recommend products that best suit users' preferences.
Using the blockchain federated learning architecture, the distributed host collects user information locally to generate data sets, conducts initial training, and performs parameter interoperability and correction training through the blockchain layer to form a product recommendation model.
Through the decentralized blockchain federated learning architecture, the risk of malicious attacks of data transmission to the central server is avoided, data security and privacy are ensured, and the model can accurately predict financial products that are more in line with users' preferences.
Smart Images

Figure CN119648412A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of blockchain technology, and in particular to a financial product recommendation method, device, equipment and storage medium. Background Art
[0002] With the development of network technology, online banking, mobile banking and other application functions are becoming more and more abundant. Many customers choose to manage their finances at home through remote means. However, there are currently a wide variety of bank products with high selectivity. Online financial products do not have dedicated account managers to recommend them, which can easily dazzle customers and make them at a loss. With the rapid development and widespread application of deep learning technology, methods for recommendation using deep learning technology have been developed in financial recommendation systems.
[0003] However, when using deep learning to recommend financial products, a large amount of customer data is required for training, and the customer data will be transmitted to a central server. Since the banking and financial industry itself is an industry that is frequently attacked by hackers, the security and privacy of customer data will pose a great threat during the data transmission process. In addition, due to the limitations of deep learning models, the existing financial product recommendation methods cannot accurately give the most appropriate product recommendations to suit user preferences. Summary of the invention
[0004] The present invention provides a financial product recommendation method to achieve accurate financial product recommendation while ensuring data security.
[0005] According to a first aspect of the present invention, a financial product recommendation method is provided, which is applied to a blockchain federated learning architecture, wherein the architecture includes a blockchain layer and a node layer, wherein the node layer is deployed with at least two distributed hosts, and the blockchain layer is deployed with block nodes respectively connected to each of the distributed hosts, wherein the method includes:
[0006] Each of the distributed hosts generates a local data set according to the user information collected locally, performs initial training on a local initial model according to the local data set to obtain local initial parameters, and sends the local initial parameters to the correspondingly connected block node, wherein the initial model includes a multi-feature input model;
[0007] Each of the block nodes calculates and obtains the sent parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and sends the sent parameters to the corresponding connected distributed host;
[0008] Each of the distributed hosts performs correction training on the initial model after local initial training according to the uploaded parameters to obtain a local product recommendation model;
[0009] When a product recommendation request is received through the blockchain layer, a target product recommendation model is searched from the node layer according to the user identifier in the product recommendation request, and the target product recommendation model is used to predict a recommended financial product suitable for the user.
[0010] According to another aspect of the present invention, a financial product recommendation device is provided, the device comprising: a data set acquisition module, for each distributed host to generate a local data set according to user information collected locally, to perform initial training on a local initial model according to the local data set to obtain local initial parameters, and to send the local initial parameters to a corresponding connected block node, wherein the initial model comprises a multi-feature input model;
[0011] An uploading parameter acquisition module, used for each of the block nodes to calculate and acquire uploading parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and to send the uploading parameters to the corresponding connected distributed host;
[0012] A product recommendation model acquisition module, configured for each of the distributed hosts to perform correction training on the initial model after local initial training according to the uploaded parameters to obtain a local product recommendation model;
[0013] The financial product recommendation module is used to search and obtain a target product recommendation model from the node layer according to the user identifier in the product recommendation request when a product recommendation request is received through the blockchain layer, and use the target product recommendation model to predict a recommended financial product suitable for the user.
[0014] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0015] at least one processor; and
[0016] a memory communicatively connected to the at least one processor; wherein,
[0017] The memory stores a computer program that can be executed by the at least one processor. The computer program is executed by the at least one processor so that the at least one processor can perform the method described in any embodiment of the present invention.
[0018] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the method described in any embodiment of the present invention when executed.
[0019] According to another aspect of the present invention, a computer program product is provided, comprising a computer program, and when the computer program is executed by a processor, the method described in any embodiment of the present invention is implemented.
[0020] The beneficial technical effect of the present invention is that by using a decentralized blockchain federated learning architecture to train the financial product recommendation model, the scenario of malicious attacks when data is transmitted to the central server for training is avoided, and the security and privacy of the data are guaranteed. In addition, the distributed host adopts a multi-feature input model when training locally, so that the trained model can accurately predict financial products that are more in line with user preferences.
[0021] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0023] Figure 1 is a flow chart of a financial product recommendation method provided according to Embodiment 1 of the present invention;
[0024] Figure 2 This is a schematic diagram of an architecture structure for blockchain federated learning provided according to Embodiment 1 of the present invention;
[0025] Figure 3 is a flow chart of a financial product recommendation method provided according to Embodiment 2 of the present invention;
[0026] Figure 4 is a structural diagram of a financial product recommendation device provided according to Embodiment 3 of the present invention;
[0027] Figure 5 It is a schematic diagram of the structure of an electronic device provided by Embodiment 4 of the present invention. DETAILED DESCRIPTION
[0028] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0029] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily 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 invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices. In addition, the information collected in this embodiment is information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data are all in compliance with the relevant laws, regulations and standards of the relevant countries and regions, necessary confidentiality measures are taken, and public order and good customs are not violated, and corresponding operation entrances are provided for users to choose to authorize or refuse.
[0030] Embodiment 1
[0031] Figure 1 A flowchart of a financial product recommendation method is provided for the first embodiment of the present invention. This embodiment is applicable to the case of accurately recommending financial products to users. The method can be executed by a financial product recommendation device, which can be implemented in the form of hardware and / or software. Figure 1 As shown, the method includes:
[0032] In step S101, each distributed host generates a local data set according to the user information collected locally, performs initial training on the local initial model according to the local data set to obtain local initial parameters, and sends the local initial parameters to the corresponding connected block node.
[0033] Among them, Figure 2The schematic diagram of the architecture structure of the blockchain federated learning involved in this embodiment is shown. As shown in the figure, the architecture includes a blockchain layer and a node layer. The node layer includes multiple independent distributed hosts, and a local model is stored in each distributed host. The blockchain layer includes multiple block nodes, and each block node includes a computing node and a block representative, and each distributed host in the node layer is virtually connected to a block representative in a block node, and each block representative can transmit information by broadcasting at the blockchain layer. In this embodiment, the number of distributed hosts in the node layer and the number of block nodes in the blockchain layer are not limited. As long as the number of block nodes and distributed hosts is consistent, they are all within the scope of protection of this application.
[0034] Optionally, each distributed host generates a local data set based on the user information collected locally, including: each distributed host collects data from the local database to obtain user registration information and user purchase information of financial products; pre-processes the user registration information to obtain user behavior characteristic attributes, and obtains user tags based on the user purchase information of financial products; and marks the user tags of each user on the user behavior characteristic attributes to generate a data set.
[0035] Specifically, as a decentralized, immutable, shared distributed ledger and database, blockchain has the same rights in all nodes in the entire blockchain network, avoiding the drawbacks of possible data leakage in centralized systems and strengthening privacy protection and data security. As an open system, all data owners can join and update the parameters of the model on their own. In addition, the information in the blockchain has the characteristics of being tamper-proof and traceable, which to a certain extent avoids the damage to the system by malicious data owners. Therefore, in this embodiment, the decentralized method of blockchain is used, and each distributed host only needs to collect user information from the local database and generate a local data set, train the local model based on the local data set, and communicate the training parameters at the blockchain layer, and train the local model based on the communication results until the training accuracy or iteration requirements are met. Among them, the data set usually includes two parts, namely, characteristic attributes and labels. In this embodiment, after data collection from the local database is performed to obtain user registration information and information about the user's purchase of financial products, pre-processing is performed based on the user registration information to obtain user behavior characteristic attributes. The user registration information may specifically include the user's name, gender, region, occupation, age, and personal assets, etc., and user portrait processing is performed based on the above information. The user's behavioral characteristics are composed of many words and sentences. Through natural language processing, a word unit with the smallest part of speech as the unit and rich in semantics can be formed. After the customer's various behavioral characteristics are segmented and the part of speech is marked, the missing items are filled with 0, and the default items are set to the default value to ensure that each item of the user has a value. Each item is normalized, singular values and noise are removed to obtain the final user behavior characteristic attributes, and then the corresponding financial product information purchased by the user is marked as a label on the user behavior characteristic attributes to obtain the final data set. Since the local model stored in each distributed host is an untrained initial model at the start time, each distributed host will train the local initial model according to the local data set to obtain the local initial parameters.
[0036] It should be noted that the initial model in this embodiment includes a multi-feature input model, such as a multi-input neural network, and the multi-feature input model includes: a multi-feature input module, a feature extraction module and a fusion module. The multi-feature input model is used to input user behavior feature attributes, that is, user portraits to complete the collection of input information. The following feature extraction module can be a three-layer convolutional neural network (CNN), and is used to extract the features of different input information respectively. The CNN layers are Conv1, Conv2, Conv3, Conv4, Conv5, Conv6, Conv7, Conv8, and Conv9. Each convolution module is used to extract spatial features of a feature. Each CNN layer also includes a Zeropadding layer, a Dropout layer, an activation function, and a Maxpooling layer. Among them, the Zeropadding layer plays a filling role. The Dropout layer is used to prevent the model from overfitting, the activation function uses the ReLU function, and the Maxpooling layer is used to reduce the complexity of the network. Next, the extracted features are fused through the fusion layer (Concatenate), and the Long Short-Term Memory (LSTM) layer mainly extracts the time characteristics of the first extracted features after fusion to obtain the second extracted features. In this way, the feature extraction can be more comprehensive from both time and space aspects. Finally, the extracted fused features are mapped to the sparse space through the fully connected layer (Dense). The softmax function maps the fully connected output to the (0,1) interval and selects the modulation mode with the highest probability as the first recommended result of the prediction. Of course, in this embodiment, only the structure of the above-mentioned multi-feature input model is used as an example to illustrate the initial training process, and the specific structure of the multi-feature input model is not limited. As long as it can be achieved to train based on multiple features of the user, it is within the scope of protection of this application and is not limited in this embodiment.
[0037] In step S102, each block node calculates and obtains the parameters to be sent based on the initial parameters directly received and the initial parameters sent by the remaining block nodes, and sends the parameters to the corresponding connected distributed host.
[0038] Optionally, before each block node calculates and obtains the parameters to be sent based on the directly received initial parameters and the initial parameters sent by the remaining block nodes, it also includes: each block node directly receives the initial parameters sent by the corresponding connected distributed host through the block representative, and sends the directly received initial parameters to the corresponding connected computing node, and broadcasts the initial parameters at the blockchain layer; each block node receives the initial parameters sent by the block representatives of the remaining block nodes in a broadcast manner through the block representative, and sends the broadcasted initial parameters to the corresponding connected computing node through the block representative.
[0039] Optionally, each block node calculates and obtains the parameters to be sent based on the initial parameters directly received and the initial parameters sent by the remaining block nodes, and sends the parameters to the corresponding connected distributed host, including: the computing node in each block node obtains the weight of each block node; the computing node in each block node performs weighted aggregation on the initial parameters directly received and the initial parameters received by broadcast based on the weight to obtain the parameters to be sent; the computing node in each block node sends the parameters to the corresponding connected block representative, and sends them to the distributed host connected to the block node through the block representative.
[0040] Specifically, each distributed host in the present embodiment will send the initial parameters obtained through training with the local data set to the corresponding connected block node. Since each block node includes a computing node and a block representative, the initial parameters are specifically sent to the block representative in the block node, and each block representative will also receive the initial parameters sent by the block representatives in other block nodes through broadcasting. For example, when the node layer includes a local host A and a local host B, and the corresponding blockchain layer includes block node A and block node B, the block representative will not only receive the initial parameter X sent by the local host A, but also receive the initial parameter Y sent by the block representative B through broadcasting in the blockchain layer, and the block representative A will send both the initial parameter X and the initial parameter Y to the computing node A. Since different weights are pre-configured for each block representative in the computing node, for example, for computing node A, the weight of block representative A is a, the weight of block representative B is b, and the value of a is greater than the value of b, that is, it is equal to itself. The directly connected block representatives are configured with higher weights, and vice versa. The computing node A will perform weighted aggregation on the initial parameters X and Y according to the obtained weights, that is, X*a+Y*b=Z, and use parameter Z as the final uploaded parameter. The computing node A will transmit the acquired uploaded parameter Z to the block representative A, and send the uploaded parameter Z to the distributed host A through the block representative A. Of course, this implementation is only based on the example of two block nodes included in the blockchain layer, and this implementation does not limit the specific number of block nodes included in the blockchain layer.
[0041] It should be noted that the parameters sent by each block representative to the distributed host connected to the object are different. For example, although the computing node receives the initial parameter Y sent by block representative B and the initial parameter X sent by block representative A through broadcasting at the blockchain layer, for computing node B, the weight of block representative B is a, and the weight of block representative A is b. Then computing node B will perform weighted aggregation on the initial parameter X and the initial parameter Y according to the obtained weights, that is, X*b+Y*a=W. Therefore, computing node B will transmit the obtained upload parameter W to block representative B, and send the upload parameter W to distributed host B through block representative B. It can be seen that the values of the upload parameters received by different distributed hosts from directly connected block representatives are different. Of course, this implementation is only an example, and does not limit the specific values of the upload parameters obtained by each distributed host.
[0042] Optionally, the method also includes: the block representative in each block node updates its own block according to the received uploaded parameters; the block representative in each block node broadcasts the received uploaded parameters in the blockchain layer, so that the block nodes in the remaining block nodes update their own blocks.
[0043] Specifically, each block representative in this embodiment will not only send the received sent parameters to the directly connected distributed host, but also broadcast the sent parameters received from the computing node to the remaining block representatives in the blockchain layer, and receive the sent parameters sent by other block representatives in the blockchain layer through broadcasting, so as to update its own block and facilitate other block representatives to update their own blocks. For example, when the initial parameter received by block representative A from local host A is X, and the initial parameter received by block representative B from local host B is Y, when the block When block representative A receives the sent parameter Z fed back by computing node A, and block representative B receives the sent parameter W fed back by computing node B, block representative A will update its own saved initial parameter X to Z, and block representative B will update its own saved initial parameter Y to W. At the same time, block representative A will also record the newly updated sent parameter W in block representative B, and block representative B will also record the sent parameter Z updated by the block representative A center. Of course, this implementation is only an example, and does not limit the specific parameter values updated by each block representative in the blockchain layer.
[0044] Step S103: Each distributed host performs correction training on the initial model after local initial training according to the uploaded parameters to obtain a local product recommendation model.
[0045] Specifically, in this embodiment, after each distributed host in the node layer obtains the uploaded parameters sent by the block representative corresponding to the blockchain layer, it will perform correction training on the initial model after initial training based on the acquired uploaded parameters until the termination condition is met or the model reaches the preset accuracy. Therefore, each distributed host only needs to use the data in the local database, and through blockchain federated learning, it can obtain the parameters obtained through training based on the data in other distributed hosts to train the local model.
[0046] Among them, federated learning is an emerging basic artificial intelligence technology that conducts efficient machine learning between multiple participants or multiple computing nodes under the premise of ensuring information security during big data exchange, protecting terminal data and personal data privacy, and ensuring legality and compliance. Unlike distributed machine learning, federated learning requires a decentralized distribution system to ensure user privacy and security, and conducts effective machine learning under the premise of ensuring data security and exchange and training efficiency. As a decentralized, data-encrypted, and tamper-proof distributed shared database, blockchain can provide data confidentiality for data exchange in federated learning to protect user privacy, ensure data security between participants, and ensure data consistency for model training provided by multiple participants.
[0047] It should be noted that the present embodiment is based on the above-mentioned multi-input neural network and blockchain federated learning training model. Through the framework of blockchain federated learning, it weakens the attack of malicious nodes and proposes a decentralized framework. It can accurately recommend the financial products of choice to customers without uploading data to the central server. It can meet the user's requirements for data security and privacy, and solve the existing central server malicious attack scenario encountered in the deep learning-based financial product recommendation scenario.
[0048] It is worth mentioning that in this embodiment, although the initial model is the same in each distributed host, since the values of the uploaded parameters obtained by each distributed host from the blockchain layer are different, the final product recommendation model obtained by correction training with different uploaded parameters is different. This embodiment does not specifically limit the product recommendation model on each distributed host.
[0049] Step S104, when a product recommendation request is received through the blockchain layer, a target product recommendation model is searched from the node layer according to the user identifier in the product recommendation request, and the target product recommendation model is used to predict a recommended financial product suitable for the user.
[0050] Optionally, a target product recommendation model is searched from the node layer according to the user identifier in the product recommendation request, including: each block node broadcasts the user identifier in the product recommendation request in the blockchain layer, so that each block representative sends a search request to the corresponding connected distributed host in the node layer; the distributed host that hits the user identifier is used as the target distributed host, and the product recommendation model in the target distributed host is used as the target product recommendation model.
[0051] Optionally, a target product recommendation model is used to predict recommended financial products that are suitable for the user, including: retrieving behavioral characteristic attributes of the user to be recommended from a local database through a target distributed host; using the target product recommendation model to predict and obtain recommended financial products that are suitable for the user based on the behavioral characteristic attributes of the user to be recommended, wherein the number of recommended financial products is at least one.
[0052] Specifically, in this embodiment, when a product recommendation request is received through the blockchain layer, since the product recommendation request includes a user identifier, such as the user name "Zhang San", the user name will be broadcasted in the blockchain layer to find the target distributed host with the user information in the node layer, and the product recommendation model in the target distributed host will be used as the target product recommendation model for responding to this request. For example, when computing node A receives a product recommendation request, it will extract the user identifier "user name Zhang San" from it, and generate a search request to send to block representative A. Block representative A will broadcast the search request in the blockchain layer, so that block representative B will also receive the search request. Each block representative will send the search request to the distributed host that directly connects, and each distributed host will query the local database according to the user name to determine whether the user information is stored. If it is stored, it is determined to be a hit. For example, when it is determined that distributed host A stores the information of user Zhang San, distributed host A is used as the target distributed host, and the product recommendation model trained and saved in distributed host A is used as the target product recommendation model. Of course, this embodiment is only an example, and does not limit the specific determination method of the target product recommendation model.
[0053] Among them, in this implementation, after the target distributed host and the target product recommendation model are determined, the target distributed host will search from the local database according to the user name to obtain the behavioral feature attributes of the user to be recommended, among which there may be default item features. In this implementation, they can be padded with zeros and then normalized, and the normalized feature attributes can be input into the target product recommendation model. The target product recommendation model is trained to obtain the output results including the recommended financial products adapted to the user and the corresponding recommendation probabilities, and product recommendations are made based on the data results.
[0054] In the implementation of the present application, a decentralized blockchain federated learning architecture is used to train the financial product recommendation model, thereby avoiding the scenario of malicious attacks when data is transmitted to the central server for training, ensuring the security and privacy of the data. In addition, the distributed host uses a multi-feature input model when training locally, so that the trained model can accurately predict financial products that are more in line with user preferences.
[0055] Embodiment 2
[0056] Figure 3 This is a flowchart of a financial product recommendation method provided in the second embodiment of the present invention. This embodiment is based on the above embodiment. After using the target product recommendation model to predict the recommended financial products suitable for the user, it also includes: receiving the selected recommendation model, and visually displaying the recommended financial products on the front end according to the recommendation model. Figure 3 As shown, the method includes:
[0057] In step S201, each distributed host generates a local data set according to the user information collected locally, performs initial training on the local initial model according to the local data set to obtain local initial parameters, and sends the local initial parameters to the corresponding connected block node.
[0058] Optionally, each distributed host generates a local data set based on the user information collected locally, including: each distributed host collects data from the local database to obtain user registration information and user purchase information of financial products; pre-processes the user registration information to obtain user behavior characteristic attributes, and obtains user tags based on the user purchase information of financial products; and marks the user tags of each user on the user behavior characteristic attributes to generate a data set.
[0059] In step S202, each block node calculates and obtains the sent parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and sends the sent parameters to the corresponding connected distributed host.
[0060] Optionally, before each block node calculates and obtains the parameters to be sent based on the directly received initial parameters and the initial parameters sent by the remaining block nodes, it also includes: each block node directly receives the initial parameters sent by the corresponding connected distributed host through the block representative, and sends the directly received initial parameters to the corresponding connected computing node, and broadcasts the initial parameters at the blockchain layer; each block node receives the initial parameters sent by the block representatives of the remaining block nodes in a broadcast manner through the block representative, and sends the broadcasted initial parameters to the corresponding connected computing node through the block representative.
[0061] Step S203: Each distributed host performs correction training on the initial model after local initial training according to the uploaded parameters to obtain a local product recommendation model.
[0062] Step S204, when a product recommendation request is received through the blockchain layer, a target product recommendation model is searched from the node layer according to the user identifier in the product recommendation request, and the target product recommendation model is used to predict a recommended financial product suitable for the user.
[0063] Optionally, a target product recommendation model is searched from the node layer according to the user identifier in the product recommendation request, including: each block node broadcasts the user identifier in the product recommendation request in the blockchain layer, so that each block representative sends a search request to the corresponding connected distributed host in the node layer; the distributed host that hits the user identifier is used as the target distributed host, and the product recommendation model in the target distributed host is used as the target product recommendation model.
[0064] Optionally, a target product recommendation model is used to predict recommended financial products that are suitable for the user, including: retrieving behavioral characteristic attributes of the user to be recommended from a local database through a target distributed host; using the target product recommendation model to predict and obtain recommended financial products that are suitable for the user based on the behavioral characteristic attributes of the user to be recommended, wherein the number of recommended financial products is at least one.
[0065] Step S205, receiving the selected recommendation model, and visually displaying the recommended financial products on the front end according to the recommendation model.
[0066] Specifically, the recommendation model in this embodiment includes comprehensive recommendation or targeted recommendation. When the user has sufficient funds and needs to purchase multiple financial products, the comprehensive recommendation can be selected on the front-end interface. When the comprehensive recommendation selection instruction is received, all recommended financial products output by the recommended financial product model will be sorted in descending order according to the recommendation probability, and all will be displayed on the front-end; when the user has insufficient funds and only needs to purchase one financial product, the targeted recommendation can be selected on the front-end interface. When the targeted recommendation selection instruction is received, the recommended financial product with the highest recommendation probability in the recommended financial product model will be displayed on the front-end.
[0067] Among them, in this embodiment, the predicted recommended financial products can be personalized according to the different purchasing needs of users, so that the displayed financial products are more in line with the purchasing needs of users, improving the user experience. And when all the recommended financial products are not suitable for the user, that is, the user is not suitable, the incompatible option can be selected on the interface, so that the distributed host can retrain and modify the model according to the user's feedback, that is, the model can be corrected according to the user's feedback, thereby further improving the prediction accuracy of the model.
[0068] In the implementation mode of the present application, a decentralized blockchain federated learning architecture is used to train the financial product recommendation model, thereby avoiding the scenario of encountering malicious attacks when data is transmitted to the central server for training, and ensuring the security and privacy of the data. In addition, the distributed host uses a multi-feature input model when training locally, so that the trained model can accurately predict financial products that are more in line with user preferences. According to the different purchasing needs of users, the predicted recommended financial products are personalized, so that the displayed financial products are more in line with the purchasing needs of users, improving the user experience.
[0069] Embodiment 3
[0070] Figure 4 This is a schematic diagram of the structure of a financial product recommendation device provided by Embodiment 3 of the present invention. Figure 4 As shown, the device includes: a data set acquisition module 310, an upload parameter acquisition module 320, a product recommendation model acquisition module 330 and a financial product recommendation module 340.
[0071] The data set acquisition module 310 is used for each distributed host to generate a local data set according to the user information collected locally, to perform initial training on the local initial model according to the local data set to obtain local initial parameters, and to send the local initial parameters to the corresponding connected block node, wherein the initial model includes a multi-feature input model;
[0072] The uploading parameter acquisition module 320 is used for each block node to calculate and acquire the uploading parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and send the uploading parameters to the corresponding connected distributed host;
[0073] The product recommendation model acquisition module 330 is used for each distributed host to perform correction training on the initial model after local initial training according to the uploaded parameters to obtain the local product recommendation model;
[0074] The financial product recommendation module 340 is used to search and obtain a target product recommendation model from the node layer according to the user identifier in the product recommendation request when a product recommendation request is received through the blockchain layer, and use the target product recommendation model to predict recommended financial products suitable for the user.
[0075] Optionally, a data set collection module is used for each distributed host to collect data from a local database to obtain user registration information and user purchase information of financial products;
[0076] Pre-process the user registration information to obtain the user behavior attribute, and obtain the user tag based on the user's purchase of financial products;
[0077] The user labels of each user are annotated on the user behavior feature attributes to generate a data set.
[0078] Optionally, the block node includes a computing node and a block representative connected to the computing node; the device also includes an initial parameter receiving module, which is used for each block node to directly receive the initial parameters sent by the corresponding connected distributed host through the block representative, and send the directly received initial parameters to the corresponding connected computing node, and broadcast the initial parameters at the blockchain layer;
[0079] Each block node receives the initial parameters sent by the block representatives of the remaining block nodes in a broadcast manner through the block representative, and sends the initial parameters received by the broadcast to the corresponding connected computing nodes through the block representative.
[0080] Optionally, a parameter acquisition module is sent to the computing node in each block node to obtain the weight of each block node;
[0081] The computing nodes in each block node perform weighted aggregation based on the weights on the initial parameters directly received and the initial parameters received by broadcast to obtain the parameters to be sent;
[0082] The computing node in each block node sends the uploaded parameters to the corresponding connected block representative, and then sends them to the distributed host connected to the corresponding block node through the block representative.
[0083] Optionally, the device further includes a block update module, which is used for the block representative in each block node to update its own block according to the received uploaded parameters;
[0084] The block representative in each block node broadcasts the received parameters in the blockchain layer, so that the block nodes in the remaining block nodes can update their own blocks.
[0085] Optionally, the financial product recommendation module includes a target product recommendation model search submodule, which is used for each block node to broadcast the user identifier in the product recommendation request at the blockchain layer, so that each block representative sends a search request to the corresponding connected distributed host in the node layer;
[0086] The distributed host that hits the user ID is used as the target distributed host, and the product recommendation model in the target distributed host is used as the target product recommendation model.
[0087] Optionally, the financial product recommendation module includes a financial product recommendation submodule, which is used to retrieve the behavior characteristic attributes of the user to be recommended from the local database through the target distributed host;
[0088] The target product recommendation model is used to predict the recommended financial products suitable for the user according to the behavioral characteristic attributes of the user to be recommended, wherein the number of recommended financial products is at least one.
[0089] Optionally, the device further comprises a personalized display module, which is used to receive the selected recommendation model, wherein the recommendation model comprises a comprehensive recommendation or a targeted recommendation;
[0090] The recommended financial products will be visualized on the front end based on the recommendation model.
[0091] Optionally, the multi-feature input model includes: a multi-feature input module, a feature extraction module and a fusion module.
[0092] The financial product recommendation device provided in the embodiment of the present invention can execute the financial product recommendation method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0093] Embodiment 4
[0094] Figure 5 A schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0095] like Figure 5As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0096] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0097] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as an incremental synchronization method for a database table structure.
[0098] In some embodiments, the incremental synchronization method applied to the database table structure may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the incremental synchronization method of the database table structure described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the incremental synchronization method of the database table structure in any other appropriate manner (e.g., by means of firmware).
[0099] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0100] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0101] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0102] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0103] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0104] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0105] Embodiment 5
[0106] An embodiment of the present invention further provides a computer program product, including a computer program, which, when executed by a processor, implements the financial product recommendation method provided in any embodiment of the present application.
[0107] In the process of implementation, the computer program product can be written in one or more programming languages or a combination thereof to perform the computer program code of the present invention, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet).
[0108] It should be noted that in the embodiments of the present application, certain software, components, models and other existing solutions in the industry may be mentioned, and they should be regarded as exemplary. Their purpose is only to illustrate the feasibility of implementing the technical solution of the present application, but it does not mean that the applicant has or will necessarily use the solution.
[0109] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims
1. A method for recommending financial products, characterized in that: An architecture applied to blockchain federated learning, the architecture comprising a blockchain layer and a node layer, the node layer being deployed with at least two distributed hosts, the blockchain layer being deployed with block nodes respectively connected to each of the distributed hosts, the method comprising: Each of the distributed hosts generates a local data set according to the user information collected locally, performs initial training on a local initial model according to the local data set to obtain local initial parameters, and sends the local initial parameters to the correspondingly connected block node, wherein the initial model includes a multi-feature input model; Each of the block nodes calculates and obtains the sent parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and sends the sent parameters to the corresponding connected distributed host; Each of the distributed hosts performs correction training on the initial model after local initial training according to the uploaded parameters to obtain a local product recommendation model; When a product recommendation request is received through the blockchain layer, a target product recommendation model is searched from the node layer according to the user identifier in the product recommendation request, and the target product recommendation model is used to predict a recommended financial product suitable for the user.
2. The method according to claim 1, characterized in that Each of the distributed hosts generates a local data set according to the user information collected locally, including: Each of the distributed hosts collects data from a local database to obtain user registration information and information about the financial products purchased by the user; Preprocessing is performed based on the user registration information to obtain user behavior feature attributes, and user tags are obtained based on the user's purchase of financial products information; The user tag of each user is marked on the user behavior feature attribute to generate the data set.
3. The method according to claim 1, characterized in that The block nodes include computing nodes and block representatives connected to the computing nodes; Before each of the block nodes calculates and obtains the parameters to be sent based on the initial parameters directly received and the initial parameters sent by the remaining block nodes, the method further includes: Each of the block nodes directly receives the initial parameters sent by the corresponding connected distributed host through the block representative, sends the directly received initial parameters to the corresponding connected computing node, and broadcasts the initial parameters at the blockchain layer; Each of the block nodes receives the initial parameters sent by the block representatives of the remaining block nodes in a broadcast manner through the block representative, and sends the initial parameters received by broadcast to the corresponding connected computing nodes through the block representative.
4. The method according to claim 3, characterized in that Each of the block nodes calculates and obtains the sent parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and sends the sent parameters to the corresponding connected distributed host, including: The computing node in each of the block nodes obtains the weight of each block node; The computing node in each of the block nodes performs weighted aggregation on the initial parameters directly received and the initial parameters received by broadcasting based on the weights to obtain the uploaded parameters; The computing node in each of the block nodes sends the uploaded parameters to the correspondingly connected block representative, and sends them to the distributed host correspondingly connected to the block node through the block representative.
5. The method according to claim 4, characterized in that The method further comprises: The block representative in each of the block nodes updates its own block according to the received uploaded parameters; The block representative in each of the block nodes broadcasts the received uploaded parameters in the blockchain layer, so that the block nodes in the remaining block nodes update their own blocks.
6. The method according to claim 1, characterized in that The step of searching from the node layer to obtain a target product recommendation model according to the user identifier in the product recommendation request includes: Each of the block nodes broadcasts the user identifier in the product recommendation request at the blockchain layer, so that each of the block representatives sends a search request to the corresponding connected distributed host in the node layer; The distributed host that hits the user identifier is used as the target distributed host, and the product recommendation model in the target distributed host is used as the target product recommendation model.
7. The method according to claim 6, characterized in that The method of using the target product recommendation model to predict a recommended financial product suitable for the user includes: Retrieving the behavior characteristic attributes of the user to be recommended from the local database through the target distributed host; The target product recommendation model is used to predict and obtain recommended financial products that are suitable for the user based on the behavioral characteristic attributes of the user to be recommended, wherein the number of the recommended financial products is at least one.
8. The method according to claim 1, characterized in that: After the target product recommendation model is used to predict the recommended financial products suitable for the user, the method further includes: receiving a selected recommendation model, wherein the recommendation model includes a comprehensive recommendation or a targeted recommendation; The recommended financial products are visualized on the front end according to the recommendation model.
9. The method according to any one of claims 1 to 8, characterized in that: The multi-feature input model includes: a multi-feature input module, a feature extraction module and a fusion module.
10. A financial product recommendation device, characterized in that: The device comprises: A data set collection module, used for each distributed host to generate a local data set according to the user information collected locally, to perform initial training on the local initial model according to the local data set to obtain local initial parameters, and to send the local initial parameters to the corresponding connected block node, wherein the initial model includes a multi-feature input model; An uploading parameter acquisition module, used for each of the block nodes to calculate and acquire uploading parameters according to the initial parameters directly received and the initial parameters sent by the remaining block nodes, and to send the uploading parameters to the corresponding connected distributed host; A product recommendation model acquisition module, configured for each of the distributed hosts to perform correction training on the initial model after local initial training according to the uploaded parameters to obtain a local product recommendation model; The financial product recommendation module is used to search and obtain a target product recommendation model from the node layer according to the user identifier in the product recommendation request when a product recommendation request is received through the blockchain layer, and use the target product recommendation model to predict a recommended financial product suitable for the user.
11. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so as to enable the at least one processor to perform the method according to any one of claims 1 to 9.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the method according to any one of claims 1 to 9 when executed.
13. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 9 when being executed by a processor.
Citation Information
Patent Citations
Product recommendation method and device based on federated learning, computer equipment and medium
CN112287244A
Federal learning method based on block chain and related device
CN116523034A
Product recommendation method and device based on block chain and machine learning, and storage medium
CN117522521A
Methods and systems for imrpoving a product conversion rate based on federated learning and blockchain
US20230419182A1
Blockchain-based financial data information federated transfer learning system and method
WO2022193173A1