Information data processing methods, apparatus, equipment and storage media

CN112231571BActive Publication Date: 2025-11-14TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011158092.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-10-26
Publication Date
2025-11-14
Estimated Expiration
2040-10-26

AI Technical Summary

Technical Problem

In federated recommendation systems, the gradient information received by the server may contain unreliable gradient information, leading to inaccurate updates of information data features and affecting the accuracy of recommendations.

Method used

After receiving gradient information sent by the terminal, the server obtains the detection results of each gradient information through botnet attack detection. It updates the information data only based on the gradient information that meets the selection conditions, thereby resisting botnet attacks by malicious users and improving the reliability of gradient information.

Benefits of technology

By identifying and filtering out normal gradient information, the reliability of information data feature updates is improved, thereby enhancing the accuracy of recommendations and reducing the impact of bot attacks on the recommendation system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112231571B_ABST
    Figure CN112231571B_ABST
Patent Text Reader

Abstract

This application discloses a method, apparatus, device, and storage medium for processing information data. The method includes: sending initial feature information of the information data to a terminal; receiving first gradient information sent by the terminal and obtaining a bot attack detection result corresponding to the first gradient information, wherein the first gradient information is used to indicate an update vector for updating the initial feature information; updating the initial feature information based on the first gradient information corresponding to the bot attack detection result that meets selection conditions, thereby obtaining first feature information of the information data; obtaining target feature information of the information data based on the first feature information; and recommending the information data based on the target feature information. In this process, updating the feature information of the information data based on the gradient information corresponding to the bot attack detection result that meets selection conditions can resist bot attacks by malicious users, and the reliability of updating the feature information is high, which is beneficial to improving the accuracy of recommending information data based on the target feature information of the information data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, device, and storage medium for processing information data. Background Technology

[0002] With the development of computer technology, recommendation systems that intelligently recommend information data to users (such as music-related information data, movie-related information data, and shopping product-related information data) are also constantly evolving. To protect users' privacy data, recommendation systems based on the federated learning framework (i.e., federated recommendation systems) are being used more and more widely.

[0003] In the process of processing information data based on a federated recommendation system, the user terminal sends gradient information of the features used to update the information data, which is determined based on local data, to the server. The server receives the gradient information sent by each user terminal, updates the features of the information data according to all the received gradient information, and then recommends suitable information data to the user based on the features of the final information data.

[0004] In the process of developing this application, the inventors discovered that the related technology has at least the following problems:

[0005] In related technologies, the server updates the features of the information data based on all the received gradient information. However, there may be unreliable gradient information among the received gradient information, resulting in poor reliability of the features of the information data updated based on all the received gradient information. This leads to low accuracy in recommending information data based on the features of the final information data. Summary of the Invention

[0006] This application provides a method, apparatus, device, and storage medium for processing information data, which can be used to improve the accuracy of information data recommendations. The technical solution is as follows:

[0007] On one hand, embodiments of this application provide a method for processing information data, the method comprising:

[0008] The initial feature information of the information data is sent to the terminal. The terminal is used to obtain first gradient information based on local data and the initial feature information, and return the first gradient information. The first gradient information is used to indicate the update vector for updating the initial feature information.

[0009] Receive the first gradient information sent by the terminal, and obtain the bot attack detection result corresponding to the first gradient information;

[0010] Based on the first gradient information corresponding to the troll attack detection results that meet the selection conditions, the initial feature information is updated to obtain the first feature information of the information data;

[0011] Based on the first feature information, target feature information of the information data is obtained, and the information data is recommended based on the target feature information.

[0012] On the other hand, an information data processing apparatus is provided, the apparatus comprising:

[0013] A sending unit is used to send initial feature information of information data to a terminal. The terminal is used to obtain first gradient information based on local data and the initial feature information, and return the first gradient information. The first gradient information is used to indicate an update vector for updating the initial feature information.

[0014] The receiving unit is used to receive the first gradient information sent by the terminal;

[0015] The first acquisition unit is used to acquire the bot attack detection result corresponding to the first gradient information;

[0016] The update unit is used to update the initial feature information based on the first gradient information corresponding to the bot attack detection result that meets the selection conditions, so as to obtain the first feature information of the information data.

[0017] The second acquisition unit is used to acquire target feature information of the information data based on the first feature information;

[0018] The recommendation unit is used to recommend information data based on the target feature information.

[0019] In one possible implementation, the bot attack detection result corresponding to the first gradient information is a first result or a second result. The first result is used to indicate that the first gradient information is normal gradient information, and the second result indicates that the first gradient information is bot attack gradient information. The bot attack detection result that satisfies the selection condition is the first result.

[0020] The updating unit is used to calculate the average gradient information of the first gradient information corresponding to the first result; update the initial feature information based on the average gradient information, and use the updated initial feature information as the first feature information of the information data.

[0021] In one possible implementation, the second acquisition unit is configured to, in response to the update process of the initial feature information not satisfying the update termination condition, send the first feature information to the terminal. The terminal is configured to, based on local data and the first feature information, acquire second gradient information and return the second gradient information, the second gradient information being used to indicate the update vector for updating the first feature information; receive the second gradient information sent by the terminal; acquire the bot attack detection result corresponding to the second gradient information; update the first feature information based on the second gradient information corresponding to the bot attack detection result that satisfies the selection condition, to obtain the second feature information of the information data; and acquire the target feature information of the information data based on the second feature information.

[0022] In one possible implementation, the second acquisition unit is configured to, in response to the update process of the initial feature information satisfying the update termination condition, use the first feature information as the target feature information of the information data.

[0023] In one possible implementation, the recommendation unit is configured to determine the similarity between the preference information data and other information data in the information data other than the preference information data based on the target feature information, and recommend the target information data in the other information data whose similarity with the preference information data meets the recommendation conditions to the terminal corresponding to the preference information data.

[0024] In one possible implementation, the first acquisition unit is configured to acquire a shill attack detection feature corresponding to the first gradient information, wherein the shill attack detection feature corresponding to the first gradient information is used to indicate the detection classification result corresponding to the first gradient information; based on the shill attack detection feature corresponding to the first gradient information, acquire the detection classification result corresponding to the first gradient information; and based on the detection classification result corresponding to the first gradient information, determine the shill attack detection result corresponding to the first gradient information.

[0025] In one possible implementation, the first acquisition unit is further configured to call the target detection classification model to perform detection and classification processing on the bot attack detection features corresponding to the first gradient information, and obtain the detection classification result corresponding to the first gradient information; wherein, the target detection classification model is obtained by semi-supervised training of the initial detection classification model using sample gradient information with standard detection classification labels and sample gradient information without standard classification labels.

[0026] On the other hand, a computer device is provided, the computer device including a processor and a memory, the memory storing at least one piece of program code, the at least one piece of program code being loaded and executed by the processor to implement any of the above-described information data processing methods.

[0027] On the other hand, a computer-readable storage medium is also provided, wherein at least one piece of program code is stored in the computer-readable storage medium, the at least one piece of program code being loaded and executed by a processor to implement any of the above-described information data processing methods.

[0028] On the other hand, a computer program product or computer program is also provided, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform any of the information data processing methods described above.

[0029] The technical solution provided in this application has at least the following beneficial effects:

[0030] In this embodiment, after receiving gradient information from the terminal, the server first obtains the bot attack detection results corresponding to each gradient information, and then updates the feature information of the information data based on the gradient information corresponding to the bot attack detection results that meet the selection conditions. The gradient information corresponding to the bot attack detection results that meet the selection conditions has high reliability. Updating the feature information of the information data based on the gradient information corresponding to the bot attack detection results that meet the selection conditions can resist bot attacks by malicious users, making the reliability of the updated feature information of the information data high, which is beneficial to improving the accuracy of recommending information data based on the finally obtained target feature information. Attached Figure Description

[0031] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0032] Figure 1 This is a schematic diagram of the implementation environment of an information data processing method provided in an embodiment of this application;

[0033] Figure 2 This is a flowchart of an information data processing method provided in an embodiment of this application;

[0034] Figure 3 This is a flowchart illustrating how to acquire target feature information of information data, as provided in an embodiment of this application.

[0035] Figure 4 This is a schematic diagram illustrating a process for acquiring target feature information of information data according to an embodiment of this application;

[0036] Figure 5 This is a schematic diagram of an information data processing device provided in an embodiment of this application;

[0037] Figure 6 This is a schematic diagram of the structure of a server provided in an embodiment of this application. Detailed Implementation

[0038] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0039] To facilitate understanding of the technical processes in the embodiments of this application, the terms involved in the embodiments of this application are explained below:

[0040] Federated Recommendation System: A recommendation system based on the federated learning framework. Federated learning is a popular distributed machine learning framework that eliminates user concerns about privacy data leakage during model training. It can achieve the same or similar results as modeling the entire dataset without exposing user's local data. Multiple terminals only need to exchange a series of gradient information with the server to jointly train a machine learning model. The information data processing method provided in this application is applied to a federated recommendation system.

[0041] This application provides a method for processing information data. Please refer to the following embodiments. Figure 1 This diagram illustrates the implementation environment of the information data processing method provided in this application embodiment. The implementation environment includes a federated recommendation system 100, which includes a terminal 110 and a server 120.

[0042] Terminal 110 is used to store relevant user privacy data locally and maintain user feature information for local users; server 120 is used to maintain feature information for global information data, including feature sub-information corresponding to each piece of information data that can be recommended to users. When the feature information of information data needs to be updated, server 120 sends the feature information of the information data to be updated to terminal 110; terminal 110 obtains gradient information for updating the feature information based on local data and the feature information of the received information data, and then sends the gradient information to server 120. After receiving the gradient information sent by each terminal 110, server 120 obtains the spoofing attack detection result corresponding to the gradient information, updates the feature information of the information data based on the gradient information that meets the selection criteria according to the corresponding spoofing attack detection result, and then recommends information data based on the finally obtained feature information.

[0043] In one possible implementation, terminal 110 can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, etc., but is not limited to these. Server 120 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Terminal 110 and server 120 can be directly or indirectly connected via wired or wireless communication, which is not limited herein.

[0044] Those skilled in the art should understand that the terminal 110 and server 120 in the above-described federal recommendation system 100 are merely examples. Other existing or future terminals or servers that are applicable to this application should also be included within the scope of protection of this application, and are hereby incorporated by reference.

[0045] Based on the above Figure 1 The implementation environment shown in this application embodiment provides a method for processing information data, taking the application of this method to server 120 in a federated recommendation system 100 as an example. Figure 2 As shown, the method provided in this application embodiment includes the following steps 201 to 204.

[0046] In step 201, the initial feature information of the information data is sent to the terminal. The terminal is used to obtain the first gradient information based on the local data and the initial feature information, and return the first gradient information. The first gradient information is used to indicate the update vector for updating the initial feature information.

[0047] Initial feature information refers to the updated feature information corresponding to the information data, and it is used to indicate the initial features of the information data. In an exemplary embodiment, the initial feature information includes at least one initial feature sub-information corresponding to each piece of information data; that is, the initial feature information is composed of the initial feature sub-information corresponding to each piece of information data. Each initial feature sub-information can represent the initial features of one piece of information data. Information data refers to the full amount of information data that can be recommended to users. This application embodiment does not limit the type of information data; for example, information data refers to music-related information data, movie-related information data, shopping product-related information data, etc.

[0048] In an exemplary embodiment, the initial feature information is in the form of a matrix, also referred to as the initial feature matrix. In this case, each initial feature sub-information refers to a column vector formed by the elements of each column in the initial feature matrix; that is, a column vector formed by the elements of each column in the initial feature matrix can represent the initial feature of a piece of information data. The features of the information data can provide a reference for information data recommendation services.

[0049] In one possible implementation, the initial feature information of the information data is the feature information initialized by the server, or the feature information obtained after the last update on the server. This application embodiment does not limit this.

[0050] In a federated recommender system, the server maintains feature information containing feature sub-information of the full information data. This feature information characterizes the features of the information data. Each terminal locally stores its own portion of user behavior data and maintains its own portion of user feature information to ensure the security of user privacy data. User feature information characterizes user features. In an exemplary embodiment, the user feature information is in the form of a matrix, also known as a user latent matrix. Each column element in the user latent matrix forms a column vector corresponding to one user. For example, in the case where each column element in the user latent matrix forms a column vector corresponding to one user, the number of rows in the user latent matrix is ​​the same as the number of rows in the feature matrix corresponding to the initial feature information of the information data.

[0051] The process of updating the initial feature information of information data requires the use of the terminal's local data and the user feature information maintained by the terminal. Therefore, when it is necessary to update the initial feature information of information data, the server sends the initial feature information of the information data to the terminal. It should be noted that the terminal here refers to at least one terminal in the federated recommendation system. In this embodiment, each terminal corresponds to one user as an example. That is to say, in this embodiment, the local data stored by each terminal and the user feature information maintained are all obtained based on the network behavior of a user.

[0052] It should be noted that the information data is the same for all terminals. The method of determining the information data in this application embodiment is not limited. For example, the method of determining the information data is: to take all historical information data viewed by users corresponding to all terminals in the federated recommendation system as the information data in this application embodiment.

[0053] After the server sends the initial feature information to the terminal, the terminal receives the initial feature information. Upon receiving the initial feature information, the terminal, based on the local data and the initial feature information, obtains first gradient information for updating the initial feature information and sends the first gradient information to the server. The first gradient information indicates the update vector for updating the initial feature information.

[0054] Local data of a terminal refers to data related to the user corresponding to that terminal. Local data includes, but is not limited to, user behavior data and user characteristic information. User behavior data includes, but is not limited to, user feedback information, user purchase information, user browsing information, user shopping cart information, user click information, and user search information. In one possible implementation, the process by which the terminal obtains first gradient information for updating the initial characteristic information based on its local data and initial characteristic information is as follows: the terminal updates the user characteristic information maintained by the terminal based on its local user behavior data and initial characteristic information; and calculates the first gradient information for updating the initial characteristic information based on the updated user characteristic information and user behavior data.

[0055] In one possible implementation, the process of updating the user feature information maintained by the terminal based on its user behavior data and initial feature information is as follows: the terminal calculates the user's predicted score for each piece of information data based on the user feature information and initial feature information; determines the user's true score for each piece of information data based on the user behavior data; calculates a loss function based on the predicted score and the true score; and updates the user feature information based on the loss function. It should be noted that the updated user feature information may be obtained by updating the previous user feature information once or multiple times. This application embodiment does not limit this, and the number of updates can be set based on experience or flexibly adjusted according to the application scenario. It should also be noted that different terminals update their maintained user feature information the same number of times during the acquisition of the first gradient information to ensure the comparability of the first gradient information acquired by different terminals.

[0056] After receiving the updated user feature information, the terminal calculates the first gradient information for updating the initial feature information based on the updated user feature information and user behavior data. The first gradient information calculated here refers to the gradient by which the initial feature information should be updated, considering the relevant data of the user corresponding to the terminal. After obtaining the first gradient information, the terminal sends it to the server.

[0057] In a federated recommendation system involving at least one terminal, each terminal obtains a first gradient information for updating the initial feature information based on its own local data. Since the terminal's local data refers to data related to the user corresponding to the terminal, the first gradient information obtained by different terminals may differ. After obtaining the first gradient information for updating the initial feature information, each terminal sends the obtained first gradient information to the server.

[0058] In step 202, the receiving terminal sends the first gradient information and obtains the bot attack detection result corresponding to the first gradient information.

[0059] After the terminal returns the first gradient information used to update the initial feature information to the server, the server receives the first gradient information sent by the terminal. It should be noted that since each terminal acquires one set of first gradient information, the number of first gradient information received by the server here is the same as the number of terminals.

[0060] Each terminal corresponds to one user. The federated recommendation system is an open machine learning framework where any terminal can participate in updating the feature information of the information data. Among the terminals participating in this process, there may be terminals belonging to shills. The user behavior data from these shill terminals is fake, which can negatively impact the recommendation performance of the federated recommendation system. The first gradient information sent by shill terminals deviates from that sent by legitimate user terminals, significantly affecting the recommendation results. Therefore, the server needs to analyze the received first gradient information to determine whether the terminal generating the first gradient information is a shill terminal. It then updates the initial feature information of the information data only based on the first gradient information sent by legitimate user terminals to ensure the effectiveness of the initial feature information update.

[0061] In one possible implementation, the server analyzes the received first gradient information by obtaining the bot attack detection result corresponding to the first gradient information, and then determining whether the terminal that generated the first gradient information is a bot attack user's terminal based on the bot attack detection result. For example, the first gradient information generated by a certain terminal is referred to as the first gradient information corresponding to the user corresponding to that terminal; that is, each piece of first gradient information corresponds to one user. If the terminal that generated a certain piece of first gradient information is a bot attack user's terminal, then the user corresponding to that first gradient information is considered to be a bot attack user.

[0062] In one possible implementation, the bot attack detection result has two possibilities: a first result and a second result. The first result indicates that the first gradient information is normal gradient information, and the second result indicates that the first gradient information is bot attack gradient information. If the bot attack detection result corresponding to a certain first gradient information is the first result, it means that the first gradient information is normal gradient information, and the terminal that generated the first gradient information is considered to be the terminal of a normal user, that is, the user corresponding to the first gradient information is considered to be a normal user. If the bot attack detection result corresponding to a certain first gradient information is the second result, it means that the first gradient information is bot attack gradient information, and the terminal that generated the first gradient information is considered to be the terminal of a bot attack user, that is, the user corresponding to the first gradient information is considered to be a bot attack user.

[0063] This application does not limit the method for obtaining the spoofing attack detection result corresponding to the first gradient information. For example, if the spoofing attack detection results corresponding to the pre-acquired gradient information are already stored, the method for obtaining the spoofing attack detection result corresponding to the first gradient information is as follows: query the storage for the spoofing attack detection result corresponding to the reference gradient information that matches the first gradient information, and use the spoofing attack detection result corresponding to the reference gradient information that matches the first gradient information as the spoofing attack detection result corresponding to the first gradient information. In the exemplary embodiment, the criterion for determining whether two gradient information pieces match is: whether the two gradient information pieces are used to update the same feature information and whether the two gradient information pieces are completely identical. If the two gradient information pieces are used to update the same feature information and are completely identical, then the two gradient information pieces match; if the two gradient information pieces are not used to update the same feature information, or the two gradient information pieces are not completely identical, then the two gradient information pieces do not match.

[0064] In step 203, based on the first gradient information corresponding to the troll attack detection result that meets the selection conditions, the initial feature information is updated to obtain the first feature information of the information data.

[0065] The first gradient information corresponding to the bot attack detection results that meet the selection criteria refers to the normal gradient information corresponding to normal users. Updating the initial feature information using the first gradient information corresponding to the bot attack detection results that meet the selection criteria has high reliability. The bot attack gradient information corresponding to bot attack users does not participate in the feature information update, thus ensuring the accuracy of the feature information.

[0066] For example, the attack detection result corresponding to the first gradient information is either the first result or the second result. The first result is used to indicate that the first gradient information is normal gradient information, and the second result is used to indicate that the first gradient information is a troll attack gradient information. The troll attack detection result that meets the selection condition is the first result. That is, the initial feature information is updated based on the first gradient information corresponding to the first result.

[0067] In one possible implementation, the method for updating the initial feature information based on the first gradient information corresponding to the first result to obtain the first feature information of the information data is as follows: calculate the average gradient information of the first gradient information corresponding to the first result, update the initial feature information based on the average gradient information, and use the updated initial feature information as the first feature information of the information data. For example, the process of updating the initial feature information based on the first gradient information corresponding to the first result and using the updated initial feature information as the first feature information of the information data is implemented based on Equation 1.

[0068]

[0069] Where Q′ represents the first feature information; Q represents the initial feature information; α represents the learning rate; U′ represents the set of users corresponding to the first gradient information of the first result; |U′| represents the number of users corresponding to the first gradient information of the first result. This represents any first gradient information corresponding to the first result.

[0070] In step 204, target feature information of the information data is obtained based on the first feature information, and the information data is recommended based on the target feature information.

[0071] Target feature information refers to the final updated feature information corresponding to the news data. The process of obtaining target feature information is iterative; each iteration updates the previously obtained feature information. The process of obtaining the first feature information of the news data based on the initial feature information can be considered the first iteration. After obtaining the first feature information, the target feature information of the news data is obtained again based on the first feature information. Target feature information indicates the final updated features of the news data and provides data support for news data recommendation services.

[0072] In one possible implementation, during the process of acquiring the target feature information of the information data based on the first feature information, it is first determined whether the update process of the initial feature information meets the update termination condition. If the update process of the initial feature information meets the update termination condition, the first feature information is directly used as the target feature information of the information data, completing the entire feature information update process. If the update process of the initial feature information does not meet the update termination condition, the next iteration process continues until the update process of the feature information meets the update termination condition, and the feature information obtained when the update process of the feature information meets the update termination condition is used as the target feature information.

[0073] In one possible implementation, the update process of the initial feature information satisfies the following termination conditions: the obtained first feature information converges; or, the number of iterations reached a target threshold when the first feature information is obtained. The target threshold is set empirically or flexibly adjusted according to the application scenario, and this application embodiment does not limit it.

[0074] In one possible implementation, when the update process of the initial feature information does not meet the update termination condition, the process of continuing to execute the next iteration is as follows: The first feature information is sent to the terminal, which uses local data and the first feature information to obtain second gradient information for updating the first feature information, and returns the second gradient information, which indicates the update vector for updating the first feature information; the second gradient information is received from the terminal; the bot attack detection result corresponding to the second gradient information is obtained; and the first feature information is updated based on the second gradient information corresponding to the bot attack detection result that meets the selection condition, thus obtaining the second feature information of the information data. The implementation of this process is described in steps 201 to 203, and will not be repeated here.

[0075] After obtaining the second feature information of the information data, the server uses this second feature information to acquire the target feature information. During the acquisition of the target feature information, it first determines whether the feature information update process meets the update termination condition. If the feature information update process meets the update termination condition, the second feature information is used as the target feature information of the information data. If the feature information update process does not meet the update termination condition, the next iteration process continues until the feature information update process meets the update termination condition. The feature information obtained when the update process meets the update termination condition is then used as the target feature information of the information data.

[0076] For example, the flowchart for obtaining target feature information of information data is as follows: Figure 3As shown. When the update process of the initial feature information meets the update termination condition, the first feature information is directly used as the target feature information of the information data to obtain the target feature information of the information data. When the update process of the initial feature information does not meet the update termination condition, the iterative process is continuously executed based on the feature information obtained in the previous iteration process until the update process of the feature information meets the update termination condition to obtain the target feature information of the information data.

[0077] It should be noted that, for any iteration in the iterative process, assuming the feature information obtained before the execution of this iteration is feature information A, and the feature information obtained after the execution of this iteration is feature information B, then the feature information update process satisfies the update termination condition if the update process of feature information A satisfies the update termination condition. The update process of feature information A satisfies the update termination condition if: feature information B converges; or, the number of iterations reached the target threshold when feature information B is obtained.

[0078] For example, the process of acquiring target feature information of information data is as follows: Figure 4 As shown. The process of acquiring the target feature information of information data is an iterative process. Taking the first iteration as an example, the first iteration includes the following 6 steps: 1. The server initializes the feature information of the information data to obtain the initial feature information Q; 2. The server synchronizes the initial feature information Q to each terminal; 3. Each terminal updates its local user feature information P based on its local data and the initial feature information Q. u And obtain the first gradient information used to update the initial feature information Q. 4. Each terminal will transmit its acquired first-gradient information. 5. The server receives the first-gradient information sent by each terminal. Obtain information of each first gradient 6. The server, based on the bot attack detection results that meet the selection criteria, will provide the corresponding bot attack detection results. Update the initial feature information Q of the information data. After completing steps 1-6 above, return to step 1 and continue the next iteration until the target feature information of the information data is obtained.

[0079] In each iteration, the server can only obtain one gradient information from one terminal. The target feature information of the information data is the feature information obtained after updating the initial feature information for T rounds (T being an integer not less than 1). The gradient aggregation information obtained by the server from any terminal... Calculated based on Formula 2.

[0080]

[0081] in, This represents the gradient aggregation information corresponding to user u obtained from user u's terminal during the T-round update process; This represents the gradient information corresponding to user u obtained from user u's terminal during the t-th update round. A user's contribution to the federated recommender system is determined by the aggregated gradient information calculated by Equation 2. For spoofing users, the aggregated gradient information corresponding to spoofing users deviates from that of normal users, thus significantly affecting the prediction results of the recommender model.

[0082] After obtaining the target feature information of the information data, the information data is recommended based on the target feature information processing. Recommending information data based on target feature information means recommending information data that the user may be interested in based on the target feature information. The implementation method of recommending information data based on target feature information processing is related to the application scenario, and this application embodiment does not limit it. The following provides an example illustrating the implementation method of recommending information data based on target feature information processing.

[0083] Implementation Method 1: Based on target feature information, the server determines the similarity between the preference information data and other information data in the information data, excluding the preference information data. The target information data whose similarity to the preference information data meets the recommendation criteria is then recommended to the terminal corresponding to the preference information data.

[0084] This implementation occurs in application scenarios where the server can determine which information data a user corresponding to a particular terminal or a number of terminals is interested in. In this scenario, the server can determine the similarity between the preferred information data and other information data (excluding the preferred information data) based on target feature information. Then, it recommends the target information data whose similarity to the preferred information data meets the recommendation criteria to the terminal corresponding to the preferred information data. It should be noted that preferred information data refers to information data that a user is interested in, and the number of preferred information data is one or more; this application does not limit this. The terminal corresponding to the preferred information data refers to the terminal used by the user who is interested in that preferred information data.

[0085] When there are multiple preference information data, for any preference information data among the multiple preference information data, the similarity between any preference information data and other information data in the information data is determined, and the target information data in the other information data whose similarity with any preference information data meets the recommendation conditions is recommended to the terminal corresponding to any preference information data.

[0086] For example, the number of information data is at least one, and the target feature information corresponding to the information data is used to indicate the target features corresponding to each piece of information data. Based on the target features corresponding to any two pieces of information data, the similarity between the two pieces of information data can be determined.

[0087] In an exemplary embodiment, the target information data whose similarity to the preferred information data among other information data meets the recommendation criteria refers to the top m (m is an integer not less than 1) information data items among other information data items with the highest similarity to the preferred information data. The value of m is set based on experience or flexibly adjusted according to the application scenario, and this embodiment does not limit it. For example, if the value of m is 3, then the top 3 information data items with the highest similarity to the preferred information data will be recommended to the terminal corresponding to the preferred information data.

[0088] Method 2: The server sends the target feature information to any terminal; the terminal uses the target feature information and local user feature information to determine the score of each piece of information data, and presents the information data that meets the score conditions to the user.

[0089] Target feature information indicates the characteristics of each piece of information data, while local user feature information indicates the characteristics of the user corresponding to the terminal. The terminal can determine the score for each piece of information data based on the target feature information and the local user feature information. For example, if the target feature information includes feature vectors for each piece of information data, and the user feature information is in the form of user feature vectors, then the method for determining the score for each piece of information data based on the target feature information and the local user feature information is as follows: the product of the feature vector of a particular piece of information data included in the target feature information and the user feature vector is used as the score for that piece of information data.

[0090] In an exemplary embodiment, presenting information data that meets the rating criteria to the user means presenting the top n (n is an integer not less than 1) information data items with the highest ratings to the user. In another exemplary embodiment, before presenting the information data that meets the rating criteria to the user, the top n information data items with the highest ratings can be filtered to present information data items that have not been presented within the most recent reference time range from the top n information data items. The reference time range is set based on experience or can be flexibly adjusted according to the application scenario; this embodiment does not limit this, for example, the reference time range is 24 hours.

[0091] For example, based on a Netflix (online movie rental provider) dataset, the recommendation performance metrics obtained by processing information data using the methods provided by related technologies under the presence of spoofing attacks (processing method 1), by processing information data using the methods provided in this application embodiment under the presence of spoofing attacks (processing method 2), and by processing information data without spoofing attacks (processing method 3) were tested to measure the performance impact of the information data processing methods provided in this application embodiment on the recommendation performance. For example, the recommendation performance metric refers to the root mean squared error (RMSE) metric. RMSE is calculated based on Formula 3.

[0092]

[0093] Among them, D test Represents the test dataset; r ui This represents the actual rating data of user u for information data i; This represents the rating data predicted by the recommender system for user u on information data i. The smaller the RMSE, the smaller the gap between the actual rating data and the predicted rating data, and the better the recommendation effect of the recommender system.

[0094] Table 1 shows the RMSE test results for the three processing methods under different fill ratios.

[0095] Table 1

[0096]

[0097] As can be seen from the data in Table 1, the RMSE value obtained by processing the information data using the method provided by the relevant technology (processing method 1) under the presence of a shill attack is significantly higher than the RMSE value obtained by processing the information data using the method without a shill attack (processing method 3). This means that shill attack users can manipulate the recommendation results of the federated recommendation system by injecting false ratings into the attacked items. Compared to the RMSE value (around 1.3) obtained by processing the information data using the method provided by the relevant technology (processing method 1) under the presence of a shill attack, the RMSE value obtained by processing the information data using the method provided in this application embodiment (processing method 2) under the presence of a shill attack is reduced to around 0.9. The difference between the RMSE value obtained by processing the information data using the method provided in this application embodiment (processing method 2) under the presence of a shill attack and the RMSE value obtained by processing the information data using the method without a shill attack (processing method 3) is only 0.05.

[0098] As can be seen from the experimental results shown in Table 1 above, the embodiments of this application can effectively identify shill attack users in the federated recommendation system, thereby achieving a recommendation effect similar to that of an unattacked recommendation system, that is, avoiding malicious shill attacks on the recommendation system with almost no loss of recommendation effect.

[0099] The federated recommendation system proposed in this application, capable of resisting spoofing attacks, can be applied as a complete product in a real-world production environment. In terms of product usage, this federated recommendation system can meet the needs of various collaborative recommendation system modeling scenarios requiring protection of terminal privacy. For example, when users shop online or browse videos, their private data stored on their respective terminal devices is used for federated learning computation, i.e., multi-party data is used to train a global recommendation algorithm. Because federated learning distributes the learning process of the recommendation algorithm across various terminals, it significantly reduces the server's computational load while protecting user privacy.

[0100] In this embodiment, after receiving gradient information from the terminal, the server first obtains the bot attack detection results corresponding to each gradient information, and then updates the feature information of the information data based on the gradient information corresponding to the bot attack detection results that meet the selection conditions. The gradient information corresponding to the bot attack detection results that meet the selection conditions has high reliability. Updating the feature information of the information data based on the gradient information corresponding to the bot attack detection results that meet the selection conditions can resist bot attacks by malicious users, making the reliability of the updated feature information of the information data high, which is beneficial to improving the accuracy of recommending information data based on the finally obtained target feature information.

[0101] In an exemplary embodiment, Figure 2 The process of obtaining the bot attack detection result corresponding to the first gradient information in step 202 of the embodiment shown is implemented based on the following steps 2021 to 2023.

[0102] Step 2021: Obtain the bot attack detection features corresponding to the first gradient information, wherein the bot attack detection features corresponding to the first gradient information are used to indicate the detection classification result corresponding to the first gradient information.

[0103] The bot attack detection features corresponding to the first gradient information are used to indicate the detection classification result corresponding to the first gradient information. The detection classification result corresponding to the first gradient information is the direct basis for determining the bot attack detection result corresponding to the first gradient information.

[0104] In one possible implementation, the bot attack detection feature corresponding to the first gradient information includes at least one sub-detection feature. It should be noted that the type and number of sub-detection features included in the bot attack detection feature corresponding to the first gradient information are set empirically or flexibly adjusted according to the application scenario; this embodiment does not limit this. The type and number of sub-detection features included in the bot attack detection features corresponding to different first gradient information are all the same to ensure comparability between different first gradient information.

[0105] In one possible implementation, the number of information data is at least one, and the first gradient information includes gradient sub-information corresponding to each of the at least one information data. That is, the first gradient information is composed of the gradient sub-information corresponding to each piece of information data. In an exemplary embodiment, when the initial feature information is in the form of a matrix, the initial feature information is called the initial feature matrix, and the feature sub-information corresponding to each piece of information data is a column vector composed of a column of elements in the initial feature matrix. In this case, the first gradient information is in the form of a gradient matrix, and the dimension of the gradient matrix is ​​the same as the dimension of the initial feature matrix. Based on this, each gradient sub-information is a column vector composed of a column of elements in the gradient matrix.

[0106] For example, suppose any first gradient information is the first gradient information sent by user u's terminal, that is, any first gradient information is the first gradient information corresponding to user u. Let this any first gradient information be denoted as... Use symbols express The information data includes gradient sub-information corresponding to information data i, and M (M is an integer not less than 1) represents the total number of information data. This can be represented using Formula 4.

[0107]

[0108] In one possible implementation, the number of information data is at least one, and the number of first gradient information sent by the terminal and received by the server is at least one. After receiving at least one first gradient information sent by the terminal, the average gradient information and the number of effective gradients corresponding to each of the at least one information data are determined based on the at least one first gradient information. It should be noted that the average gradient information and the number of effective gradients corresponding to each information data are determined based on all the first gradient information.

[0109] In an exemplary embodiment, for any information data in at least one piece of information data, the average gradient information and the number of effective gradients corresponding to the information data are determined based on at least one first gradient information by: determining each effective gradient sub-information corresponding to the information data in at least one first gradient information; taking the average information of each effective gradient sub-information as the average gradient information corresponding to the information data, and taking the number of each effective gradient sub-information as the number of effective gradients corresponding to the information data.

[0110] Each piece of information data corresponds to a gradient sub-information in each first gradient information. Among the gradient sub-informations corresponding to any piece of information data, there may be both valid and invalid gradient sub-informations. Valid gradient sub-information refers to gradient sub-information that can contribute to updating the initial feature information of the information data, while invalid gradient sub-information refers to gradient sub-information that cannot contribute to updating the initial feature information of the information data.

[0111] In one possible implementation, among the gradient sub-information corresponding to any given information data, the gradient sub-information that satisfies the validity condition is considered valid gradient sub-information. In an exemplary embodiment, satisfying the validity condition means that the l1 norm of the gradient sub-information is greater than 0. For example, the notation is... Represents the first gradient information of user u The gradient sub-information corresponding to the information data i included in it, if This indicates the gradient sub-information. This represents the effective gradient sub-information corresponding to information data i. When At that time, it is considered that user u has an evaluation of information data i and its contribution to updating the initial feature information is greater than 0.

[0112] It should be noted that the effective gradient sub-information corresponding to different information data is different in each first gradient information. Based on the above method, the effective gradient sub-information corresponding to each piece of information data in each first gradient information can be determined, thereby determining the average gradient information and the number of effective gradients corresponding to each piece of information data. In an exemplary embodiment, after determining the average gradient information and the number of effective gradients corresponding to each piece of information data, the server records the average gradient information and the number of effective gradients corresponding to each piece of information data using the correspondence between information data, average gradient information, and number of effective gradients.

[0113] For example, for information data i, the effective gradient sub-information corresponding to information data i in each first gradient information refers to the gradient sub-information corresponding to information data i in the first gradient information of all users who have evaluated information data i. The number of effective gradients corresponding to information data i is used to indicate the number of all users who have evaluated information data i.

[0114] In one possible implementation, the number of first gradient information is at least one, and obtaining the bot attack detection feature corresponding to the first gradient information means obtaining the bot attack detection feature corresponding to at least one first gradient information. This application embodiment will illustrate the process of obtaining the bot attack detection feature corresponding to any gradient information as an example. Exemplarily, the bot attack detection feature corresponding to any first gradient information includes at least one of the following: average gradient deviation feature corresponding to any first gradient information, weighted average gradient deviation feature corresponding to any first gradient information, weighted gradient deviation feature corresponding to any first gradient information, similarity feature corresponding to any first gradient information, and information data difference feature corresponding to any first gradient information. The methods for obtaining the average gradient deviation feature, weighted average gradient deviation feature, weighted gradient deviation feature, similarity feature, and information data difference feature corresponding to any first gradient information will be described below.

[0115] In one possible implementation, the average gradient deviation feature corresponding to any first gradient information is obtained as follows: in at least one piece of information data, at least one piece of valid information data corresponding to any first gradient information is determined; based on the gradient sub-information corresponding to at least one piece of valid information data in any first gradient information, the average gradient information corresponding to at least one piece of valid information data, the number of valid gradients corresponding to at least one piece of valid information data, and the total number of at least one piece of valid information data, the average gradient deviation feature corresponding to any first gradient information is determined.

[0116] In an exemplary embodiment, at least one valid piece of information data corresponding to any first gradient information refers to each piece of information data that has been evaluated by the user corresponding to that first gradient information. In one possible implementation, the process of determining at least one valid piece of information data corresponding to any first gradient information from among at least one piece of information data is as follows: The information data corresponding to each gradient sub-information in any first gradient information that satisfies the validity condition is taken as at least one valid piece of information data corresponding to that first gradient information. Since each gradient sub-information that satisfies the validity condition corresponds to one piece of information data, the number of valid pieces of information data corresponding to any first gradient information is the same as the number of gradient sub-informations in that first gradient information that satisfy the validity condition.

[0117] It should be noted that the effective information data corresponding to the first gradient information is determined by the first gradient information itself. Different first gradient information may correspond to the same effective information data, or they may correspond to different effective information data. When two different first gradient information pieces correspond to different effective information data, the number of effective information data pieces corresponding to these two first gradient information pieces may be the same or different.

[0118] After determining at least one valid information data corresponding to any first gradient information, the average gradient deviation feature corresponding to any first gradient information is determined based on the gradient sub-information corresponding to the at least one valid information data in the at least one valid information data, the average gradient information corresponding to the at least one valid information data, the number of valid gradients corresponding to the at least one valid information data, and the total number of at least one valid information data.

[0119] The average gradient information corresponding to at least one valid piece of information data and the number of valid gradients corresponding to at least one valid piece of information data are both determined based on at least one first gradient information. In an exemplary embodiment, the average gradient information corresponding to at least one valid piece of information data and the number of valid gradients corresponding to at least one valid piece of information data can be obtained from the correspondence between information data, average gradient information, and number of valid gradients determined based on at least one first gradient information. The total number of at least one valid piece of information data is used to indicate the number of user-rated information data corresponding to any one of the first gradient information pieces of information.

[0120] For example, the process of determining the average gradient deviation feature corresponding to any first gradient information based on the gradient sub-information corresponding to at least one valid information data in any first gradient information, the average gradient information corresponding to at least one valid information data, the number of valid gradients corresponding to at least one valid information data, and the total number of at least one valid information data is implemented based on Formula 5.

[0121]

[0122] Among them, GDMA u This represents the average gradient bias characteristic corresponding to the first gradient information of user u; m u Indicates the total number of at least one valid piece of information data; n i This represents the number of valid gradients corresponding to the i-th valid information data; This represents the average gradient information corresponding to the i-th valid data item; This represents the gradient sub-information corresponding to the i-th valid information data in the first gradient information of user u.

[0123] This can be used to measure the deviation of the gradient sub-information corresponding to the i-th valid information data in the first gradient information corresponding to user u from the average gradient information corresponding to the i-th valid information data. In an exemplary embodiment, if user u is a botnet user and the target attack information data of user u is the i-th valid information data, then the gradient information determined based on the first gradient information corresponding to user u... The value should be determined based on the first gradient information corresponding to normal users. The value is large. Therefore, the average gradient deviation feature can reflect, to some extent, whether the user corresponding to the first gradient information is a shill attack user. In this embodiment, the gradient information corresponding to a shill attack user is called shill attack gradient information. Thus, the average gradient deviation feature corresponding to the first gradient information can reflect, to some extent, whether the first gradient information is shill attack gradient information.

[0124] In one possible implementation, the weighted average gradient deviation feature corresponding to any first gradient information is obtained as follows: based on the gradient sub-information corresponding to at least one valid information data in any first gradient information, the average gradient information corresponding to at least one valid information data, the number of valid gradients corresponding to at least one valid information data, and the total number of at least one valid information data, the weighted average gradient deviation feature corresponding to any first gradient information is determined. This process can be implemented based on Equation 6.

[0125]

[0126] Among them, WGDMA u This represents the weighted average gradient bias feature corresponding to the first gradient information of user u. The meanings of other parameters are the same as in Formula 5. The weighted average gradient bias feature is a variant of the average bias feature. For any valid information data, the fewer the number of valid gradients corresponding to that valid information data, the fewer the number of users evaluating that valid information data, and thus the higher the weight of that valid information data.

[0127] In one possible implementation, the weighted gradient bias feature corresponding to any first gradient information is obtained as follows: based on the gradient sub-information corresponding to at least one valid information data in any first gradient information, the average gradient information corresponding to at least one valid information data, and the number of valid gradients corresponding to at least one valid information data, the weighted gradient bias feature corresponding to any first gradient information is determined. For example, the process of determining the weighted gradient bias feature corresponding to any first gradient information is implemented based on Equation 7.

[0128]

[0129] Among them, WGDAu This represents the weighted gradient bias feature corresponding to the first gradient information for user u; the meanings of other parameters are the same as in Formula 5. WGDA u The feature is GDMA u Another variant of the feature, WGDA u The feature is GDMA u The characteristic molecular part.

[0130] In one possible implementation, the similarity feature corresponding to any first gradient information is obtained by: taking each first gradient information that satisfies the similarity condition with any first gradient information as at least one similar gradient information corresponding to any first gradient information; and determining the similarity feature corresponding to any first gradient information based on the similarity between at least one similar gradient information and any first gradient information.

[0131] In one possible implementation, each first gradient information satisfying the similarity condition refers to the top z (where z is an integer not less than 1) first gradient information that is most similar to any given first gradient information. This application does not limit the method for calculating the similarity between two first gradient information pieces. For example, the two first gradient information pieces can be converted into vector form, and then the cosine similarity between the two vectors can be calculated.

[0132] For example, for the first gradient information corresponding to user u Will The l1 norm of the i-th column vector is expressed as: First gradient information The corresponding vector is represented as h u Then h u The expression is The process of determining the similarity feature corresponding to any first gradient information based on the similarity between at least one similar gradient information and any first gradient information is implemented based on Equation 8.

[0133]

[0134] Among them, DegSim u This represents the similarity feature corresponding to the first gradient information of user u, where z represents the total number of similar gradient information. The Neigh(u,z) function is used to indicate the z users most similar to user u, and cos(h u ,h v ) represents the vector h corresponding to the first gradient information of user u. u The vector h corresponding to the first gradient information of user v vThe cosine similarity between users is given by the fact that user v is one of the z most similar users to user u. The distance between any two similar users is similar in the gradient space. The first gradient information corresponding to user v is the same as the similarity gradient information corresponding to the first gradient information corresponding to user u.

[0135] It should be noted that Formula 8 is an exemplary description of determining the similarity feature corresponding to any first gradient information based on the similarity between at least one similar gradient information and any first gradient information, and the embodiments of this application are not limited thereto. Exemplarily, the method of determining the similarity feature corresponding to any first gradient information based on the similarity between at least one similar gradient information and any first gradient information can also be: using the sum of the similarities between at least one similar gradient information and any first gradient information as the similarity feature corresponding to that first gradient information.

[0136] In one possible implementation, the information data difference feature corresponding to any first gradient information is obtained as follows: in at least one piece of information data, at least one valid piece of information data corresponding to any first gradient information is determined; in at least one valid piece of information data, at least one piece of first-type information data and at least one piece of second-type information data are determined; based on the gradient sub-information corresponding to at least one piece of first-type information data in any first gradient information, the total number of at least one piece of first-type information data, and the gradient sub-information corresponding to at least one piece of second-type information data in any first gradient information and the total number of at least one piece of second-type information data, the information data difference feature corresponding to any first gradient information is determined.

[0137] The first type of information data and the second type of information data refer to two different types of information data. For example, the first type of information data refers to information data that a user's troll attack behavior may attack, and the second type of information data refers to information data that the user may fill in. It should be noted that since at least one valid piece of information data here refers to any first-gradient information, the at least one first-type information data and at least one second-type information data determined in at least one valid piece of information data both refer to the information corresponding to that first-gradient information.

[0138] In one possible implementation, the process of identifying at least one first-type information data and at least one second-type information data from at least one valid information data includes the following steps A to C.

[0139] Step A: Identify at least one public target information data from at least one piece of information data.

[0140] Public target information data refers to information data in a federated recommendation system that is vulnerable to botnet attacks. In one possible implementation, identifying at least one piece of public target information data from at least one piece of information data includes, but is not limited to, the following methods a to c.

[0141] Method a: Determine the gradient dispersion corresponding to at least one piece of information data, and take each piece of information data whose gradient dispersion satisfies the reference condition as at least one common target information data.

[0142] In this approach a, at least one common target information data refers to each piece of information data whose gradient dispersion satisfies the reference condition. The gradient dispersion corresponding to any piece of information data is used to indicate the dispersion between the various effective gradient sub-informations corresponding to that piece of information data. This application does not limit the representation of the gradient dispersion corresponding to any piece of information data in any embodiment; for example, the gradient dispersion can be represented as variance or standard deviation.

[0143] The gradient dispersion degree meeting the reference condition is set based on experience or can be flexibly adjusted according to the application scenario; this application embodiment does not limit this. For example, the gradient dispersion degree meeting the reference condition means that the gradient dispersion degree is not less than the dispersion degree threshold, or the gradient dispersion degree meeting the reference condition means that the gradient dispersion degree is among the top k (k is an integer not less than 1) largest gradient dispersion degree among all gradient dispersion degrees.

[0144] In one possible implementation, the process of determining the gradient dispersion of any piece of information data in at least one piece of information data is as follows: based on each effective gradient sub-information corresponding to any piece of information data, the gradient dispersion of that piece of information data is determined. For example, assuming the gradient dispersion is represented as variance, the gradient dispersion of any piece of information data is calculated based on Equation 9.

[0145]

[0146] Among them, Var i This represents the gradient dispersion of information data i; n i This represents the number of effective gradients corresponding to information data i, that is, the total number of effective gradient sub-informations corresponding to information data i. This represents the gradient sub-information corresponding to information data i in the first gradient information corresponding to user u; U represents the average gradient information corresponding to information data i, which is the average information of each effective gradient sub-information corresponding to information data i; iThis represents the set of users corresponding to the first gradient information where each valid gradient sub-information of information data i is located, which is also a set of users who rated information data i.

[0147] It should be noted that, compared to normal users, troll attackers tend to give more extreme scores (extremely high or extremely low) to specific target information data. Therefore, when the gradient dispersion of information data i meets the reference condition, information data i is considered to be more vulnerable to attack. In this approach a, all information data whose gradient dispersion meets the reference condition are directly used as at least one common target information data.

[0148] Method b: Determine at least one set of candidate information data corresponding to each of the first gradient information, and take each piece of information data that meets the hit condition from at least one piece of information data as at least one common target information data. The hit condition is that the number of hits in the candidate information data set corresponding to at least one first gradient information is not less than the number threshold.

[0149] The candidate information data set corresponding to any first gradient information is used to indicate the set of information data corresponding to the gradient sub-information that satisfies the candidate conditions within that first gradient information. Gradient sub-information that satisfies the candidate conditions refers to gradient sub-information whose l1 norm value is the largest of the top g (g is an integer not less than 1) l1 norm values. The number of gradient sub-information that satisfies the candidate conditions is g. That is, the candidate information data set corresponding to any first gradient information includes g pieces of information data. The value of g is set empirically or flexibly adjusted according to application requirements; this embodiment does not limit this, for example, g is 5.

[0150] It should be noted that the number of information data included in the candidate information data sets corresponding to different first gradient information is the same, that is, each candidate information data set corresponding to the first gradient information includes g information data.

[0151] At least one set of information data that meets the hit condition is considered as at least one common target information data. Meeting the hit condition means that the number of hits in the candidate information data set corresponding to at least one first-gradient information is not less than a hit threshold. The hit threshold is set according to the total number of first-gradient information or flexibly adjusted according to the application scenario, and this application embodiment does not limit it in this way.

[0152] Generally speaking, the gradient contribution of vulnerable information data is higher than that of other information data. The higher the number of hits of a certain information data in the candidate information data set corresponding to at least one gradient, the higher the gradient contribution of the information data, and the more likely the information data is to be vulnerable to attack. This information data is then regarded as a common target information data.

[0153] In an exemplary embodiment, the number of hits of any information data in the candidate information data set corresponding to at least one first gradient information is calculated based on Formula 10.

[0154]

[0155] Where, δ i The number of times information data i is hit in the candidate information data set corresponding to at least one first gradient information; N represents the total number of users corresponding to at least one first gradient information, i.e., the total number of first gradient information; TopG(u,g) represents the candidate information data set corresponding to the first gradient information of user u; I(·) represents an indicator function, which takes the value 1 when information data i is in TopG(u,g) and takes the value 0 when information data i is not in TopG(u,g).

[0156] In this method b, each piece of information data that meets the hit condition is directly used as at least one common target information data.

[0157] Method c: Determine the gradient dispersion corresponding to at least one piece of information data, and take each piece of information data whose gradient dispersion satisfies the reference condition as at least one first target information data; determine the candidate information data set corresponding to at least one first gradient information, and take each piece of information data that satisfies the hit condition as at least one second target information data, wherein satisfying the hit condition includes having a hit count in the candidate information data set corresponding to at least one first gradient information not less than a count threshold; take the union information data between at least one first target information data and at least one second target information data as at least one common target information data.

[0158] In this method c, the union of information data between at least one first target information data and at least one second target information data is taken as at least one common target information data. Here, at least one first target information data refers to each piece of information data whose corresponding gradient dispersion satisfies the reference condition, and at least one second target information data refers to each piece of information data that satisfies the hit condition. The process for determining at least one first target information data is the same as the process for determining at least one common target information data in method a, and the process for determining at least one second target information data is the same as the process for determining at least one common target information data in method b; these will not be repeated here.

[0159] The method for determining at least one common target information data from at least one piece of information data can be any of the three methods a to c above, and the embodiments of this application do not limit this method. It should be noted that the at least one common target information data is information data predicted to be vulnerable to spoofing attacks, and the at least one common target information data is the same for each first gradient information.

[0160] Step B: Take the intersection data between at least one valid data and at least one common target data as at least one first type of data.

[0161] At least one valid information data refers to information data that has been evaluated by the user corresponding to any first-gradient information. At least one common target information data refers to information data that is vulnerable to attack. The information data that intersects between at least one valid information data and at least one common target information data is the information data that the user may attack corresponding to any first-gradient information. This type of information data is taken as the first type of information data. Thus, at least one first type of information data corresponding to any first-gradient information is obtained.

[0162] Step C: Take all other information data except for at least one first-type information data from at least one valid information data as at least one second-type information data.

[0163] After identifying at least one piece of first-type information data, the remaining pieces of information data from the at least one valid piece of information data are taken as at least one piece of second-type information data corresponding to any first-gradient information. Second-type information data refers to the information data that the user may fill in corresponding to any first-gradient information.

[0164] For example, at least one piece of public target information data is denoted as M. T The first gradient information corresponding to user u, with at least one valid piece of information data, is denoted as M. u Then, the first gradient information corresponding to user u corresponds to at least one piece of first-type information data, which is M. u,T =M u ∩M T The first gradient information corresponding to user u corresponds to at least one piece of second-type information data, M. u,F =M u -M u,T .

[0165] After identifying at least one piece of first-type information data and at least one piece of second-type information data, the information data difference feature corresponding to any first-gradient information is determined based on the gradient sub-information corresponding to each of the at least one piece of first-type information data in any first-gradient information, the total number of at least one piece of first-type information data, and the gradient sub-information and the number of at least one piece of second-type information data corresponding to each of the at least one piece of second-type information data in any first-gradient information. For example, the information data difference feature corresponding to any first-gradient information is calculated based on Formula 11.

[0166]

[0167] Among them, FMTD u The first gradient information corresponding to user u represents the information data difference feature; i represents at least one piece of first-type information data M. u,T One piece of information data; i′ represents at least one piece of second-type information data M. u,F A piece of information data; |M u,T | Indicates at least one piece of information data of type 1 M u,T Total quantity; |M u,F | Indicates at least one piece of second-type information data M u,F The total quantity; This indicates at least one piece of first-type information data M. u,T The gradient sub-information corresponding to a piece of information data i in the first gradient information of user u; This indicates at least one piece of second-type information data M. u,T The gradient sub-information corresponding to a piece of information data i′ in the first gradient information of user u.

[0168] Information data dissimilarity features measure the difference in gradients between potential attack information data and potential padding information data. For botnet users, to maximize the gradient contribution of attack information data, the attack information data score needs to be set to extremely high or low, while the padding information data score needs to be set to a similar value to that of normal users. Information data dissimilarity features utilize the l2 norm to measure the difference between the average gradient of potential attack information data and the average gradient of potential padding information data. When FMTD... u When the value is large, user u has a high probability of being a shill attack user, that is, the first gradient information corresponding to user u has a high probability of being shill attack gradient information.

[0169] In an exemplary embodiment, the types of sub-detection features that should be included in the bot attack detection features are preset, and then the bot attack detection features corresponding to any first gradient information are obtained according to the preset types. For example, the types of sub-detection features that should be included in the bot attack detection features include at least one of average gradient bias features, weighted average gradient bias features, weighted gradient bias features, similarity features, and information data difference features. It should be noted that bot attack detection features including the same type of sub-detection features are obtained for different first gradient information.

[0170] Step 2022: Based on the attack detection features corresponding to the first gradient information, obtain the detection and classification results corresponding to the first gradient information.

[0171] In one possible implementation, the detection and classification result corresponding to the first gradient information includes the probability values ​​corresponding to each reference category. The reference categories are set empirically or flexibly adjusted according to the application scenario; this embodiment does not limit this. Assuming the number of reference categories is c, the set of reference categories is represented as C = {C1, C2, ..., C...}. c}, where C1, C2 and C c These all represent different reference categories.

[0172] In an exemplary embodiment, the reference category includes a normal category and at least one spoofing attack category. The spoofing attack category is determined according to the spoofing attack type, and the number of spoofing attack categories may be one or more, which is not limited in this embodiment. Exemplarily, in the field of spoofing attacks, spoofing attack models that score filled information data based on different prior knowledge include, but are not limited to, UF (Uniform Filler Model, a model based on blind attacks), RF (Random Filler Model, a model based on random attacks), and AF (Average Filler Model, a model based on average attacks). In this case, the spoofing attack categories include, but are not limited to, blind attack categories, random attack categories, and average attack categories.

[0173] In an exemplary embodiment, both the normal category and at least one bot attack category can be represented using identifiers. For example, the normal category is represented by the identifier N, the average attack category by the identifier AF, the random attack category by the identifier RF, and the blind attack category by the identifier UF. In this case, the set of reference categories is represented as C = {N, AF, RF, UF}.

[0174] In one possible implementation, the method for obtaining the detection classification result corresponding to the first gradient information based on the botnet detection features is as follows: The target detection classification model is invoked to perform detection and classification processing on the botnet detection features corresponding to the first gradient information, thereby obtaining the detection classification result corresponding to the first gradient information. Specifically, the target detection classification model is obtained through semi-supervised training using gradient information from samples with standard classification labels and gradient information from samples without standard classification labels.

[0175] The object detection classification model is used to predict the detection classification result corresponding to the first gradient information based on the bot attack detection features corresponding to the first gradient information. After obtaining the bot attack detection features corresponding to the first gradient information, the object detection classification model is called to perform detection and classification processing on the bot attack detection features corresponding to the first gradient information to obtain the detection classification result corresponding to the first gradient information.

[0176] The object detection classification model is obtained through semi-supervised training using gradient information sets of samples with standard classification labels and those without. In other words, before obtaining the detection classification result corresponding to the first gradient information in step 2022, the initial detection classification model needs to be semi-supervised trained using gradient information sets of samples with and without standard classification labels to obtain the object detection classification model.

[0177] In one possible implementation, the process of training the object detection classification model can be an offline process, which does not affect the online acquisition of the bot attack detection results corresponding to the first gradient information. In this case, when the bot attack detection results corresponding to the first gradient information are needed, the object detection classification model is directly extracted. In another possible implementation, the object detection classification model can also be acquired through training when the bot attack detection results corresponding to the first gradient information are needed.

[0178] Exemplarily, the process of training the object detection classification model can be executed on a server or any terminal. This application embodiment does not limit this, and the example given is that the process of training the object detection classification model is executed by a server. It should be noted that the process of training the object detection classification model can be executed before or after step 2021, and this application embodiment does not limit this.

[0179] For example, the process of semi-supervised training of the initial detection classification model using sample gradient information sets with standard detection classification labels and sample gradient information sets without standard classification labels to obtain the target detection classification model includes the following steps a to d.

[0180] Step a: Obtain the gradient information of the first sample, the standard detection classification label corresponding to the gradient information of the first sample, and the gradient information of the second sample.

[0181] The first sample gradient information consists of training samples with standard detection classification labels, and the second sample gradient information consists of training samples without standard detection classification labels. There is at least one first sample gradient information and at least one second sample gradient information. The standard detection classification label indicates the standard category corresponding to the first sample gradient information. In an exemplary embodiment, each first sample gradient information includes first sample gradient information with a standard detection classification label of "normal" and first sample gradient information with a standard detection classification label of "a certain attack category," thereby enhancing the generalization ability of the detection classification model.

[0182] In an exemplary embodiment, the first sample gradient information refers to gradient information fabricated based on prior knowledge. Each first sample gradient information corresponds to a virtual user. Since the first sample gradient information includes first sample gradient information with a corresponding standard detection classification label of "normal" and first sample gradient information with a corresponding standard detection classification label of "shill attack," the user corresponding to the first sample gradient information with the corresponding standard detection classification label of "normal" is a normal user, and the user corresponding to the first sample gradient information with the corresponding standard detection classification label of "shill attack" is a shill attack user. Therefore, the virtual users corresponding to the first sample gradient information include both normal users and shill attack users.

[0183] In an exemplary embodiment, the second sample gradient information without a standard detection classification label refers to the actual gradient information. Each second sample gradient information corresponds to a real user, and the real users corresponding to the second sample gradient information may include normal users and botnet users. Since the standard detection classification label of the second sample gradient information is unknown, the standard category corresponding to each second sample gradient information cannot be determined.

[0184] For example, the gradient information of the first sample and the gradient information of the second sample are both gradient information used to update the feature information of the same sample, so as to ensure the reliability of the training process of the detection classification model.

[0185] Step b: Obtain the bot attack detection features corresponding to the gradient information of the first sample and the bot attack detection features corresponding to the gradient information of the second sample.

[0186] The implementation process of step b is the same as that described in step 2021, which describes the process of obtaining the bot attack detection feature corresponding to any first gradient information, and will not be repeated here. It should be noted that the type and number of sub-detection features included in the bot attack detection feature corresponding to the first sample gradient information are the same as the number and type of sub-detection features included in the bot attack detection feature corresponding to the second sample gradient information, in order to improve the training effect of the detection classification model.

[0187] For example, the number of sub-detection features included in the spoofing attack detection feature corresponding to the first sample gradient information and the number of sub-detection features included in the spoofing attack detection feature corresponding to the second sample gradient information are both 5. These 5 sub-detection features are the average gradient bias feature, the weighted average gradient bias feature, the weighted gradient bias feature, the similarity feature, and the information data difference feature. It should be further noted that the type and number of sub-detection features included in the spoofing attack detection feature corresponding to any sample gradient information (any first sample gradient information or any second sample gradient information) are the same as the type and number of sub-detection features included in the spoofing attack detection feature corresponding to each first gradient information obtained in the process of obtaining the spoofing attack detection result corresponding to the first gradient information, so as to ensure the detection and classification effect of the detection classification model.

[0188] Step c: Based on the attack detection features corresponding to the gradient information of the first sample and the standard detection classification label corresponding to the gradient information of the first sample, train the initial detection classification model to obtain the first detection classification model.

[0189] The process of training the initial detection classification model to obtain the first detection classification model is the supervised training process. The initial detection classification model is called to perform detection and classification processing on the botnet detection features corresponding to the gradient information of the first sample, and the predicted detection classification result corresponding to the gradient information of the first sample is obtained. Then, the supervised loss function is calculated based on the predicted detection classification result corresponding to the gradient information of the first sample and the standard detection classification label corresponding to the gradient information of the first sample. The parameters of the initial detection classification model are updated in reverse using the supervised loss function. The above process is iteratively executed until the supervised training termination condition is met, and the first detection classification model is obtained.

[0190] For example, the conditions for terminating supervised training include, but are not limited to, any one of the following conditions 1 to 3.

[0191] Case 1: The number of iterations reaches the training threshold.

[0192] The training count threshold can be set based on experience or adjusted flexibly according to the application scenario; this application does not limit this.

[0193] Case 2: The supervised loss function is less than the loss threshold.

[0194] The loss threshold can be set based on experience or adjusted flexibly according to the application scenario. This application does not limit this.

[0195] Case 3: The supervised loss function converges.

[0196] Supervised loss function convergence means that, as the number of training iterations increases, the fluctuation range of the supervised loss function remains within a reference range in the training results for a reference number of iterations. For example, suppose the reference range is -10. -3 ~10 -3 Assume the reference number is 10. If the supervised loss function fluctuates within -10 in all 10 training iterations... -3 ~10 -3 If the loss function is within the range of 1, then it is considered that the supervised loss function converges.

[0197] When any one of the above three conditions is met, the supervised training termination condition is considered satisfied, and the first detection and classification model is obtained. Since the first detection and classification model is trained using the botnet detection features corresponding to the gradient information of the first sample with standard detection and classification labels, the first detection and classification model has initially acquired the ability to detect and classify botnet detection features corresponding to the gradient information of the second sample without standard detection and classification labels.

[0198] It should be noted that the embodiments of this application do not limit the structure of the detection classification model. For example, the detection classification model is a Naive Bayes classifier.

[0199] Step d: Based on the first detection classification model, the bot attack detection features corresponding to the second sample gradient information, the bot attack detection features corresponding to the first sample gradient information, and the standard detection classification label corresponding to the first sample gradient information, obtain the target detection classification model.

[0200] In one possible implementation, step d is performed by steps d-1 to d-3.

[0201] Step d-1: Call the first detection and classification model to perform detection and classification processing on the attack detection features corresponding to the gradient information of the second sample, and obtain the first prediction detection and classification result corresponding to the gradient information of the second sample.

[0202] The first detection and classification model has initially acquired the ability to detect and classify bot attack detection features corresponding to the gradient information of samples without standard detection and classification labels. By calling the first detection and classification model to detect and classify the bot attack detection features corresponding to the gradient information of second samples without standard detection and classification labels, the first predicted detection and classification result corresponding to the gradient information of the second samples can be obtained.

[0203] Step d-2: Based on the bot attack detection features corresponding to the second sample gradient information, the first predicted detection classification result corresponding to the second sample gradient information, the bot attack detection features corresponding to the first sample gradient information, and the standard detection classification label corresponding to the first sample gradient information, update the parameters of the first detection classification model to obtain the first detection classification model with updated parameters.

[0204] In one possible implementation, the process of updating the parameters of the first detection classification model based on the bot attack detection features corresponding to the second sample gradient information, the first predicted detection classification result corresponding to the second sample gradient information, the bot attack detection features corresponding to the first sample gradient information, and the standard detection classification label corresponding to the first sample gradient information is as follows: Based on the first predicted detection classification result corresponding to the second sample gradient information, determine the first predicted detection classification label corresponding to the second sample gradient information; based on the bot attack detection features corresponding to the second sample gradient information, the first predicted detection classification label corresponding to the second sample gradient information, the bot attack detection features corresponding to the first sample gradient information, and the standard detection classification label corresponding to the first sample gradient information, update the parameters of the first detection classification model.

[0205] In one possible implementation, the first predicted detection classification result corresponding to any second sample gradient information includes the probability values ​​corresponding to each reference category. The method for determining the first predicted detection classification label corresponding to any second sample gradient information based on the first predicted detection classification result corresponding to any second sample gradient information is as follows: the reference category corresponding to the maximum probability value in the first predicted detection classification result corresponding to any second sample gradient information is taken as the first predicted detection classification label corresponding to any second sample gradient information.

[0206] In an exemplary embodiment, during the process of updating the parameters of the first detection and classification model, the objective function is the log-likelihood function of the training sample set D under parameter θ, as shown in Formula 12.

[0207]

[0208] Among them, Λ u The expression is shown in Formula 13:

[0209]

[0210] In formula 12 above, l λ (D|θ) represents the log-likelihood function of the training sample set D under parameter θ; D represents the overall training sample set (including the set of gradient information of the first sample and the set of gradient information of the second sample); θ represents the parameters of the detection classification model; x u D represents the bot attack detection feature corresponding to the gradient information of any sample;U x represents the set of training samples in training sample set D that have no standard detection classification label, i.e., the set of gradient information for the second sample; u ∈D U Indicates the detection feature x of the troll attack. u The corresponding sample gradient information is D U One sample gradient information; D Cj The standard testing classification label is C. j The first sample gradient information set, j, takes values ​​from 1 to c, where c refers to the number of categories in the standard detection classification label. The training sample set D can be represented as the union of all sets. In the exemplary embodiment, c takes a value of 4, where C1 refers to the normal category N, C2 refers to the average attack category AF, C3 refers to the random attack category RF, and C4 refers to the blind attack category UF. In this case, D = D U ∪D N ∪D AF ∪D RF ∪D UF .

[0211] λ represents the weight, used to balance the influence of the gradient information of the first sample with a standard detection classification label and the gradient information of the second sample without a standard detection classification label on the objective function. For example, λ can be any value from 0 to 1 to reduce the influence of the gradient information of the second sample without a standard detection classification label on the objective function. The value of λ can be set empirically or flexibly adjusted according to the actual situation, and this application embodiment does not limit it in this way.

[0212] p(x u |θ) represents the attack detection feature x corresponding to the gradient information of any sample. u The conditional probability p(x) under parameter θ u |θ) is calculated based on formula 14.

[0213]

[0214] Among them, P(C j ) represents category C j The prior probability distribution can be used to calculate P(C) based on the detection classification labels corresponding to the gradient information of each sample (the standard detection classification label corresponding to the gradient information of the first sample and the predicted detection classification label corresponding to the gradient information of the second sample). j P(C) j It satisfies the conditions indicated by Formula 15.

[0215]

[0216] p(x) in Formula 14 u |C j ;θj ) represents the bot attack detection feature x corresponding to the gradient information of any sample. u In parameter θ j Below and Category C j The conditional probability under the given condition, p(x) u |C j ;θ j It is calculated based on Formula 16.

[0217]

[0218] Where Y represents the number of sub-detection features included in the attack detection feature corresponding to any sample gradient information; p(x uy |C j ;θ j ) represents the bot attack detection feature x corresponding to the gradient information of any sample. u The y-th sub-detection feature x in uy In parameter θ j and Category C j The conditional probability under θ; j This refers to the category C in the parameters of the detection classification model. j The corresponding parameter, θ j The relationship with θ is: θ j Represented as μ jy Indicating in category C j The expected value of the normal distribution corresponding to the y-th sub-detection feature, σ jy Indicating in category C j The standard deviation of the normal distribution corresponding to the y-th sub-detection feature. In Formula 16 above, it is assumed that the conditional probabilities of each sub-detection feature in the attack detection features are independent and all follow a normal distribution.

[0219] In one possible implementation, the process of updating the parameters of the first detection classification model is as follows: based on the botnet detection features corresponding to the gradient information of the second sample, the first predicted detection classification result corresponding to the second classification sample, the botnet detection features corresponding to the gradient information of the first sample, and the standard detection classification label corresponding to the gradient information of the first sample, the log-likelihood function l with respect to the parameter θ is calculated according to formulas 12 to 16 above. λ (D|θ), obtain l λ When (D|θ) reaches its maximum value, the parameter θ is used to make l λ When (D|θ) reaches its maximum value, parameter θ replaces the original parameter of the first detection and classification model, thus updating the parameters of the first detection and classification model. For example, obtaining the parameter θ that makes l... λ The process of taking the maximum value of (D|θ) is based on Equation 17.

[0220]

[0221] After updating the parameters of the first detection and classification model based on step d-2 to obtain the first detection and classification model with updated parameters, it is determined whether the model acquisition termination condition is met. If the model acquisition termination condition is not met, step d-3 is executed; if the model acquisition termination condition is met, the first detection and classification model with updated parameters obtained in step d-2 is used as the target detection and classification model.

[0222] In one possible implementation, satisfying the model acquisition termination condition means that the parameters of the first detection and classification model converge. Parameter convergence of the first detection and classification model means that, with increasing iterations, the fluctuation range of the parameters of the first detection and classification model remains within a specified range after a specified number of updates. For example, suppose the specified range is -10. -3 ~10 -3 Assume the specified number of iterations is 5. If the parameters of the first detection and classification model fluctuate within a range of -10 in all 5 iterations... -3 ~10 -3 If the parameters of the first detection and classification model converge, it is considered that the model acquisition termination condition is met. In another possible implementation, the model acquisition termination condition is met when the number of times the parameters of the first detection and classification model are updated reaches a specified threshold. The specified number of times, the specified range, and the specified threshold are all set based on experience or flexibly adjusted according to the application scenario, and this application embodiment does not limit them.

[0223] Step d-3: In response to the failure to meet the model acquisition termination condition, the parameters of the first detection classification model after updating the parameters are updated again based on the bot attack detection features corresponding to the second sample information, the bot attack detection features corresponding to the first sample information, and the standard detection classification labels corresponding to the first sample information, until the model acquisition termination condition is met. The first detection classification model obtained when the model acquisition termination condition is met is taken as the target detection classification model.

[0224] When the termination condition for model acquisition is not met, it indicates that the parameters of the first detection and classification model need to be updated. The update process involves updating the parameters of the first detection and classification model again based on the bot attack detection features corresponding to the second sample information, the bot attack detection features corresponding to the first sample information, and the standard detection and classification labels corresponding to the first sample information. The implementation method of this process is described in steps d-1 and d-2, and will not be repeated here.

[0225] If the model acquisition termination condition is not met, iteratively update the parameters of the first detection and classification model until the model acquisition termination condition is met. The first detection and classification model obtained when the model acquisition termination condition is met is then used as the object detection and classification model. Thus, the object detection and classification model is obtained.

[0226] In the exemplary embodiment, the process of iteratively updating the parameters of the first detection and classification model based on steps d-1 to d-3 refers to solving Equation 17 using the EM (Expectation-Maximization) algorithm. Solving Equation 17 using the EM algorithm is an iterative process. Each time the parameter θ is updated, a new predicted detection classification label corresponding to the gradient information of the second sample is obtained using the detection and classification model corresponding to the updated parameters. Then, the parameter θ is updated again based on the attack detection features corresponding to the gradient information of the second sample, the new predicted detection classification label corresponding to the gradient information of the second sample, the attack detection features corresponding to the gradient information of the first sample, and the standard detection classification label corresponding to the gradient information of the first sample. This process continues until the parameter θ converges, and the converged parameter θ is used as the final iterative parameter. Will have parameters The detection and classification model is used as the target detection and classification model.

[0227] Because the process of acquiring the object detection classification model utilizes both the gradient information of the first sample with standard detection classification labels and the gradient information of the second sample without standard detection classification labels, the entire process of acquiring the object detection classification model is a semi-supervised training process. In other words, the object detection classification model is obtained by semi-supervised training of the initial classification model using the gradient information of samples with standard detection classification labels and samples without standard classification labels.

[0228] By calling the object detection classification model to perform detection and classification processing on the botnet detection features corresponding to any first gradient information, the detection and classification result corresponding to any first gradient information can be obtained. Assume the parameters of the object detection classification model are... Suppose that the feature for detecting bot attacks corresponding to any first gradient information is X. u Then calling the object detection and classification model can obtain X. u Belongs to category C j probability value Assuming the reference categories include normal category N, average attack category AF, random attack category RF, and blind attack category UF, then the attack detection feature corresponding to any first gradient information is X. u In this case, the detection classification result corresponding to any first gradient information includes four probability values, namely... and

[0229] Step 2023: Based on the detection and classification results corresponding to the first gradient information, determine the botnet attack detection results corresponding to the first gradient information.

[0230] The detection classification result corresponding to the first gradient information is used to provide data reference for determining the botnet attack detection result corresponding to the first gradient information. This application does not limit the form of the detection classification result corresponding to the first gradient information; under different forms of detection classification results, the method for determining the botnet attack detection result corresponding to the first gradient information will also be different.

[0231] In an exemplary embodiment, the detection classification result corresponding to the first gradient information is presented as a binary classification result. That is, the detection result corresponding to the first gradient information includes a probability value that the first gradient information is normal gradient information and a probability value that the first gradient information is shilling attack gradient information. In this case, the method for determining the shilling attack detection result corresponding to the first gradient information based on the detection classification result is as follows: in response to the detection classification result indicating that the probability value of the first gradient information being normal gradient information is not less than the probability value of the first gradient information being shilling attack gradient information, a first result is used as the shilling attack detection result corresponding to the first gradient information; in response to the detection classification result indicating that the probability value of the first gradient information being normal gradient information is less than the probability value of the first gradient information being shilling attack gradient information, a second result is used as the shilling attack detection result corresponding to the first gradient information. The first result indicates that the first gradient information is normal gradient information, and the second result indicates that the first gradient information is shilling attack gradient information.

[0232] In another exemplary embodiment, if the detection classification result corresponding to the first gradient information is represented by probability values ​​corresponding to each reference category, and the reference categories include a normal category and at least one shill attack category, then the detection classification result corresponding to the first gradient information includes a probability value corresponding to a normal category and a probability value corresponding to at least one shill attack category. In this case, the method for determining the shill attack detection result corresponding to the first gradient information based on the detection classification result is as follows: in response to the sum of the probability values ​​corresponding to at least one shill attack category not being greater than the probability value corresponding to the normal category, a first result is used as the shill attack detection result corresponding to the first gradient information, and the first result is used to indicate that the first gradient information is normal gradient information; in response to the sum of the probability values ​​corresponding to at least one shill attack category being greater than the probability value corresponding to the normal category, a second result is used as the shill attack detection result corresponding to the first gradient information, and the second result is used to indicate that the first gradient information is shill attack gradient information.

[0233] If the sum of the probability values ​​corresponding to each bot attack category is not greater than the probability value corresponding to the normal category, then the first result used to indicate that the first gradient information is normal gradient information is taken as the bot attack detection result corresponding to the first gradient information. In this case, it is indicated that the user corresponding to the first gradient information is a normal user. If the sum of the probability values ​​corresponding to each bot attack category is greater than the probability value corresponding to the normal category, then the second result used to indicate that the first gradient information is bot attack gradient information is taken as the bot attack detection result corresponding to the first gradient information. In this case, it is indicated that the user corresponding to the first gradient information is a bot attack user.

[0234] For example, assuming there are N normal categories and three attack categories: average attack category (AF), random attack category (RF), and blind attack category (UF), the parameters of the object detection classification model are: The attack detection feature corresponding to the first gradient information is X. u Then the sum of the probability values ​​corresponding to each type of troll attack. Calculated based on Formula 18.

[0235]

[0236] use This represents the probability value corresponding to the normal category. Then the first gradient information is considered to be the gradient information of a bot attack, and the user corresponding to the first gradient information is the bot attack user; if The first gradient information is considered normal gradient information, and the user corresponding to the first gradient information is considered a normal user.

[0237] For example, when the shill attack detection result corresponding to the first gradient information is a first result, it indicates that the user corresponding to the first gradient information is a normal user, and updating the initial feature information using the first gradient information will basically not harm the security of the federated recommendation system. When the shill attack detection result corresponding to the first gradient information is a second result, it indicates that the user corresponding to the first gradient information is a shill attack user, and updating the initial feature information using either of the first gradient information is very likely to harm the security of the federated recommendation system.

[0238] For example, the number of first gradient information is at least one. Steps 2021 to 2023 above only describe the process of obtaining the bot attack detection result corresponding to the first gradient information from the perspective of one first gradient information. According to the method described in steps 2021 to 2023 above, at least one bot attack detection result corresponding to each first gradient information can be obtained. In one possible implementation, after obtaining the bot attack detection results corresponding to each first gradient information, the bot attack detection results corresponding to each first gradient information are stored so that the bot attack detection results corresponding to the first gradient information can be directly queried later. In an exemplary embodiment, when storing the bot attack detection results corresponding to each gradient information, the first gradient information, initial feature information, and bot attack detection results are stored correspondingly.

[0239] This application's embodiments creatively design shill attack detection features, including one or more sub-detection features, to detect shill attacks on gradient information transmitted during communication in federated recommendation systems. A Naive Bayes classifier is trained in a semi-supervised manner using the shill attack detection features corresponding to sample gradient information, effectively identifying shill attack behavior in federated recommendation systems. During the update and iteration of the recommendation algorithm, the embedded Naive Bayes classifier filters out gradient information corresponding to shill attack users, thereby achieving recommendation results similar to the original, unattacked recommendation system.

[0240] In an exemplary embodiment, the information data processing method provided in this application relates to the field of artificial intelligence. Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results. In other words, artificial intelligence is a comprehensive technology within computer science that attempts to understand the essence of intelligence and produce a new type of intelligent machine capable of reacting in a manner similar to human intelligence. Artificial intelligence also studies the design principles and implementation methods of various intelligent machines, enabling them to possess perception, reasoning, and decision-making functions.

[0241] Artificial intelligence (AI) is a comprehensive discipline encompassing a wide range of fields, including both hardware and software technologies. Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interactive systems, and mechatronics. AI software technologies primarily include computer vision, speech processing, natural language processing, and machine learning / deep learning.

[0242] Machine learning is a multidisciplinary field involving probability theory, statistics, approximation theory, convex analysis, and algorithm complexity theory, among others. It specifically studies how computers can simulate or implement human learning behavior to acquire new knowledge or skills and reorganize existing knowledge structures to continuously improve their performance. Machine learning is the core of artificial intelligence and the fundamental way to endow computers with intelligence; its applications span all areas of artificial intelligence. Machine learning and deep learning typically include techniques such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and instruction-based learning.

[0243] With the research and advancement of artificial intelligence (AI) technology, AI is being studied and applied in various fields, such as smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, autonomous driving, drones, robots, smart healthcare, and smart customer service. It is believed that with the development of technology, AI will be applied in more fields and play an increasingly important role.

[0244] In an exemplary embodiment, the federated recommendation system can be deployed in the cloud, meaning it can be implemented based on cloud technology. Cloud technology refers to a managed technology that unifies hardware, software, network, and other resources within a wide area network (WAN) or local area network (LAN) to achieve data computation, storage, processing, and sharing.

[0245] Cloud technology is a collective term for network technology, information technology, integration technology, management platform technology, and application technology applied to the cloud computing business model. It can form resource pools, providing flexible and convenient on-demand access. Cloud computing technology will become a crucial support. Backend services of technical network systems require substantial computing and storage resources, such as video websites, image websites, and many portal websites. With the rapid development and application of the internet industry, every item may have its own identification mark in the future, requiring transmission to backend systems for logical processing. Data at different levels will be processed separately, and various industry data will all require robust system support, which can only be achieved through cloud computing.

[0246] For example, obtaining the bot attack detection results corresponding to gradient information, and then updating the feature information based on the gradient information corresponding to the bot attack detection results that meet the selection conditions, can improve the security of the federated recommendation system. For federated recommendation systems deployed in the cloud, improving their security involves the field of cloud security within cloud technology. Cloud security refers to the collective term for security software, hardware, users, organizations, and security cloud platforms based on cloud computing business models. Cloud security integrates emerging technologies and concepts such as parallel processing, grid computing, and unknown virus behavior judgment. Through a large network of clients, it monitors abnormal software behavior on the network, obtains the latest information on Trojans and malware on the internet, sends it to the server for automatic analysis and processing, and then distributes solutions for viruses and Trojans to each client.

[0247] The main research directions in cloud security include: 1. Cloud computing security, which focuses on how to ensure the security of the cloud itself and various applications on the cloud, including cloud computer system security, secure storage and isolation of user data, user access authentication, information transmission security, network attack protection, and compliance auditing; 2. Cloudification of security infrastructure, which focuses on how to use cloud computing to build and integrate security infrastructure resources and optimize security protection mechanisms, including building a large-scale security event and information collection and processing platform through cloud computing technology to achieve the collection and correlation analysis of massive amounts of information and improve the ability to control and manage network-wide security events; 3. Cloud security services, which focuses on various security services provided to users based on cloud computing platforms, such as antivirus services. For federated recommendation systems deployed in the cloud, the federated recommendation system can be regarded as a cloud computer system, and the research direction of improving the security of the federated recommendation system falls within the above-mentioned research directions of cloud computing security.

[0248] See Figure 5 This application provides an information data processing apparatus, which includes:

[0249] The sending unit 501 is used to send the initial feature information of the information data to the terminal. The terminal is used to obtain the first gradient information based on the local data and the initial feature information, and return the first gradient information. The first gradient information is used to indicate the update vector for updating the initial feature information.

[0250] The receiving unit 502 is used to receive the first gradient information sent by the terminal;

[0251] The first acquisition unit 503 is used to acquire the bot attack detection result corresponding to the first gradient information;

[0252] The update unit 504 is used to update the initial feature information based on the first gradient information corresponding to the troll attack detection result that meets the selection conditions, so as to obtain the first feature information of the information data.

[0253] The second acquisition unit 505 is used to acquire target feature information of information data based on the first feature information;

[0254] Recommendation unit 506 is used to recommend information data based on target feature information.

[0255] In one possible implementation, the bot attack detection result corresponding to the first gradient information is either a first result or a second result. The first result indicates that the first gradient information is normal gradient information, and the second result indicates that the first gradient information is bot attack gradient information. The bot attack detection result that meets the selection conditions is the first result.

[0256] The update unit 504 is used to calculate the average gradient information of the first gradient information corresponding to the first result; update the initial feature information based on the average gradient information, and use the updated initial feature information as the first feature information of the information data.

[0257] In one possible implementation, the second acquisition unit 505 is configured to send the first feature information to the terminal in response to the update process of the initial feature information not meeting the update termination condition. The terminal is configured to acquire second gradient information based on local data and the first feature information, and return the second gradient information, which is used to indicate the update vector for updating the first feature information; receive the second gradient information sent by the terminal; acquire the bot attack detection result corresponding to the second gradient information; update the first feature information based on the second gradient information corresponding to the bot attack detection result that meets the selection condition, thereby obtaining the second feature information of the information data; and acquire the target feature information of the information data based on the second feature information.

[0258] In one possible implementation, the second acquisition unit 505 is used to take the first feature information as the target feature information of the information data in response to the update process of the initial feature information satisfying the update termination condition.

[0259] In one possible implementation, the recommendation unit 506 is used to determine the similarity between the preference information data and other information data in the information data other than the preference information data based on the target feature information, and recommend the target information data in the other information data whose similarity with the preference information data meets the recommendation conditions to the terminal corresponding to the preference information data.

[0260] In one possible implementation, the first acquisition unit 503 is used to acquire the bot attack detection feature corresponding to the first gradient information, wherein the bot attack detection feature corresponding to the first gradient information is used to indicate the detection classification result corresponding to the first gradient information; based on the bot attack detection feature corresponding to the first gradient information, the detection classification result corresponding to the first gradient information is acquired; based on the detection classification result corresponding to the first gradient information, the bot attack detection result corresponding to the first gradient information is determined.

[0261] In one possible implementation, the first acquisition unit 503 is further used to call the target detection classification model to perform detection and classification processing on the attack detection features corresponding to the first gradient information, and obtain the detection classification result corresponding to the first gradient information; wherein, the target detection classification model is obtained by semi-supervised training of the initial detection classification model using the gradient information of samples with standard detection classification labels and the gradient information of samples without standard classification labels.

[0262] In this embodiment, after receiving gradient information from the terminal, the server first obtains the bot attack detection results corresponding to each gradient information, and then updates the feature information of the information data based on the gradient information corresponding to the bot attack detection results that meet the selection conditions. The gradient information corresponding to the bot attack detection results that meet the selection conditions has high reliability. Updating the feature information of the information data based on the gradient information corresponding to the bot attack detection results that meet the selection conditions can resist bot attacks by malicious users, making the reliability of the updated feature information of the information data high, which is beneficial to improving the accuracy of recommending information data based on the finally obtained target feature information.

[0263] It should be noted that the apparatus provided in the above embodiments is only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.

[0264] Figure 6This is a schematic diagram of a server structure provided in an embodiment of this application. The server can vary significantly due to differences in configuration or performance. It may include one or more Central Processing Units (CPUs) 601 and one or more memories 602. Each memory 602 stores at least one line of program code, which is loaded and executed by the one or more processors 601 to implement the information data processing methods provided in the various method embodiments described above. Of course, the server may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server may also include other components for implementing device functions, which will not be elaborated upon here.

[0265] In an exemplary embodiment, a computer device is also provided, comprising a processor and a memory, the memory storing at least one line of program code. This at least one line of program code is loaded and executed by one or more processors to implement any of the aforementioned information data processing methods.

[0266] In an exemplary embodiment, a computer-readable storage medium is also provided, which stores at least one piece of program code, which is loaded and executed by a processor of a computer device to implement any of the above-described information data processing methods.

[0267] In one possible implementation, the aforementioned computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.

[0268] In an exemplary embodiment, a computer program product or computer program is also provided, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform any of the aforementioned information data processing methods.

[0269] It should be noted that the terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the above exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0270] It should be understood that "multiple" as used in this article refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.

[0271] The above description is merely an exemplary embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for processing information data, characterized in that, The method includes: The initial feature information of the information data is sent to the terminal. The terminal is used to obtain first gradient information based on local data and the initial feature information, and return the first gradient information. The first gradient information is used to indicate the update vector for updating the initial feature information. Receive the first gradient information sent by the terminal; Obtain the bot attack detection feature corresponding to the first gradient information. The bot attack detection feature corresponding to the first gradient information is used to indicate the detection classification result corresponding to the first gradient information. The bot attack detection feature corresponding to the first gradient information includes at least one of the following: average gradient deviation feature, weighted average gradient deviation feature, weighted gradient deviation feature, similarity feature, or information data difference feature corresponding to the first gradient information. The target detection classification model is invoked to perform detection and classification processing on the bot attack detection features corresponding to the first gradient information, thereby obtaining the detection classification result corresponding to the first gradient information; the target detection classification model is obtained by semi-supervised training of the initial detection classification model using the gradient information of samples with standard detection classification labels and the gradient information of samples without standard classification labels. Based on the detection and classification results corresponding to the first gradient information, determine the bot attack detection results corresponding to the first gradient information. Based on the first gradient information corresponding to the troll attack detection results that meet the selection conditions, the initial feature information is updated to obtain the first feature information of the information data; Based on the first feature information, target feature information of the information data is obtained, and the information data is recommended based on the target feature information.

2. The method according to claim 1, characterized in that, The bot attack detection result corresponding to the first gradient information is a first result or a second result. The first result is used to indicate that the first gradient information is normal gradient information, and the second result indicates that the first gradient information is bot attack gradient information. The bait attack detection result that meets the selection criteria is the first result; The first feature information of the information data is obtained by updating the initial feature information based on the first gradient information corresponding to the bot attack detection results that meet the selection conditions, including: Calculate the average gradient information of the first gradient information corresponding to the first result; The initial feature information is updated based on the average gradient information, and the updated initial feature information is used as the first feature information of the information data.

3. The method according to claim 1, characterized in that, The step of obtaining target feature information of the information data based on the first feature information includes: In response to the update process of the initial feature information not meeting the update termination condition, the first feature information is sent to the terminal. The terminal is used to obtain second gradient information based on local data and the first feature information, and return the second gradient information. The second gradient information is used to indicate the update vector for updating the first feature information. Receive the second gradient information sent by the terminal; obtain the bot attack detection result corresponding to the second gradient information; Based on the second gradient information corresponding to the bot attack detection result that meets the selection conditions, the first feature information is updated to obtain the second feature information of the information data; based on the second feature information, the target feature information of the information data is obtained.

4. The method according to claim 1, characterized in that, The step of obtaining target feature information of the information data based on the first feature information includes: In response to the update process of the initial feature information satisfying the update termination condition, the first feature information is used as the target feature information of the information data.

5. The method according to any one of claims 1-4, characterized in that, The recommendation of information data based on the target feature information includes: Based on the target feature information, the similarity between the preference information data and other information data in the information data is determined, and the target information data in the other information data whose similarity with the preference information data meets the recommendation conditions is recommended to the terminal corresponding to the preference information data.

6. An information data processing device, characterized in that, The device includes: The sending unit is used to send the initial feature information of the information data to the terminal. The terminal is used to obtain the first gradient information based on the local data and the initial feature information, and return the first gradient information. The first gradient information is used to indicate the update vector for updating the initial feature information. The receiving unit is used to receive the first gradient information sent by the terminal; The first acquisition unit is used to acquire the bot attack detection features corresponding to the first gradient information. The bot attack detection features corresponding to the first gradient information are used to indicate the detection classification result corresponding to the first gradient information. The bot attack detection features corresponding to the first gradient information include at least one of the following: average gradient deviation feature, weighted average gradient deviation feature, weighted gradient deviation feature, similarity feature, or information data difference feature. The target detection classification model is invoked to perform detection and classification processing on the bot attack detection features corresponding to the first gradient information to obtain the detection classification result corresponding to the first gradient information. The target detection classification model is obtained by semi-supervised training of the initial detection classification model using sample gradient information with standard detection classification labels and sample gradient information without standard classification labels. Based on the detection classification result corresponding to the first gradient information, the bot attack detection result corresponding to the first gradient information is determined. The update unit is used to update the initial feature information based on the first gradient information corresponding to the bot attack detection result that meets the selection conditions, so as to obtain the first feature information of the information data. The second acquisition unit is used to acquire target feature information of the information data based on the first feature information; The recommendation unit is used to recommend information data based on the target feature information.

7. The apparatus according to claim 6, characterized in that, The bot attack detection result corresponding to the first gradient information is a first result or a second result. The first result is used to indicate that the first gradient information is normal gradient information, and the second result indicates that the first gradient information is bot attack gradient information. The bait attack detection result that meets the selection criteria is the first result; The updating unit is used to calculate the average gradient information of the first gradient information corresponding to the first result; The initial feature information is updated based on the average gradient information, and the updated initial feature information is used as the first feature information of the information data.

8. The apparatus according to claim 6, characterized in that, The second acquisition unit is configured to send the first feature information to the terminal in response to the update process of the initial feature information not meeting the update termination condition. The terminal is configured to acquire second gradient information based on local data and the first feature information, and return the second gradient information. The second gradient information is used to indicate the update vector for updating the first feature information. Receive the second gradient information sent by the terminal; Obtain the bot attack detection result corresponding to the second gradient information; Based on the second gradient information corresponding to the bot attack detection result that meets the selection conditions, the first feature information is updated to obtain the second feature information of the information data. Based on the second feature information, the target feature information of the information data is obtained.

9. The apparatus according to claim 6, characterized in that, The second acquisition unit is configured to, in response to the update process of the initial feature information satisfying the update termination condition, use the first feature information as the target feature information of the information data.

10. The apparatus according to any one of claims 6-9, characterized in that, The recommendation unit is used to determine the similarity between the preference information data and other information data in the information data other than the preference information data based on the target feature information, and recommend the target information data in the other information data whose similarity with the preference information data meets the recommendation conditions to the terminal corresponding to the preference information data.

11. A computer device, characterized in that, The computer device includes a processor and a memory, the memory storing at least one piece of program code, which is loaded and executed by the processor to implement the information data processing method as described in any one of claims 1 to 5.

12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one piece of program code, which is loaded and executed by a processor to implement the information data processing method as described in any one of claims 1 to 5.

13. A computer program product, characterized in that, The computer program product includes computer instructions stored in a computer-readable storage medium, a processor of a computer device reading the computer instructions from the computer-readable storage medium, and the processor executing the computer instructions to cause the computer device to perform the information data processing method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Trust-based offensive attack user detection method and trust-based offensive attack user detection system

    CN110417765A

  • Attack testing method, device and equipment of living body detection algorithm and storage medium

    CN111756705A