White list generation method and related device
By semantic recognition and knowledge graph processing of target policies, combined with the credibility verification of enterprise data and inverted index technology, an efficient and accurate enterprise whitelist is generated, which solves the problem of low generation efficiency and accuracy in existing technologies and realizes the precise allocation of preferential policies.
Patent Information
- Application Number
- CN202511267232.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-05
- Publication Date
- 2025-12-16
AI Technical Summary
In existing technologies, the generation efficiency and accuracy of enterprise whitelists are low, leading to waste of preferential policy resources and mismatch.
By semantically recognizing the target policies, constructing a knowledge graph, obtaining implicit declaration data, merging declaration data and matching it with enterprise data, generating a whitelist using inverted indexes and query statements, and optimizing the generation process by combining trust verification and weight scoring.
This improved the accuracy and efficiency of whitelist generation, ensuring the effective allocation of preferential policies.
Smart Images

Figure CN121145875A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of big data, and in particular to a white list generation method and related device. BACKGROUND
[0002] Policy issuers will issue various preferential policies for different enterprises to help enterprises develop better. At present, which enterprises meet which preferential policies are mostly manually matched by relevant staff according to the information declared by the enterprises, and then the corresponding enterprise white list is generated and pushed to the relevant enterprises.
[0003] However, when manually matching, due to the subjectivity and fatigue of the staff, misjudgment or omission may occur, resulting in low efficiency and accuracy of the generation of the enterprise white list, and the enterprises meeting the requirements are not processed in time, causing waste of preferential policy resources and misallocation. SUMMARY
[0004] The embodiments of the present application provide a white list generation method and related device to improve the efficiency and accuracy of the generation of the white list.
[0005] In a first aspect, the embodiments of the present application provide a white list generation method, comprising:
[0006] performing semantic recognition on a target policy to determine first declaration data included in the target policy;
[0007] obtaining a knowledge graph corresponding to the target policy, and processing the first declaration data based on the knowledge graph to obtain second declaration data implied by the target policy;
[0008] merging the first declaration data and the second declaration data to obtain declaration conditions corresponding to the target policy;
[0009] obtaining first enterprise data declared by an enterprise;
[0010] obtaining second enterprise data from an external data cooperation party system based on the first enterprise data; the second enterprise data is plaintext data that can be visible or invisible;
[0011] performing trust verification on the first enterprise data according to the second enterprise data to determine target enterprise data;
[0012] constructing an inverted index of the target enterprise data, and constructing a query statement of the target enterprise data according to the declaration conditions;
[0013] generating an enterprise white list meeting the declaration conditions according to the query statement and the inverted index.
[0014] In some embodiments, the method further comprises:
[0015] The method further comprises:
[0016] Obtaining a file related to the target policy;
[0017] Performing natural language processing on the file, extracting entities in the policy document, and identifying relationships between the entities and attributes of the entities;
[0018] Constructing the knowledge graph based on the entities, the relationships between the entities, and the attributes of the entities;
[0019] Mapping the first declaration data to the knowledge graph, and determining target data related to the first declaration data from the knowledge graph;
[0020] Performing reasoning on the target data to determine the second declaration data.
[0021] In some embodiments, the method further comprises:
[0022] If the second enterprise data matches the first enterprise data, the first enterprise data is taken as the target enterprise data.
[0023] If the second enterprise data does not match the first enterprise data, a trusted statement corresponding to the first enterprise data is obtained; the trusted statement includes a verifiable proof and a zero-knowledge proof; and the target enterprise data is determined according to the trusted proof.
[0024] In some embodiments, the method further comprises:
[0025] According to the trusted proof and the second enterprise data, a floating interval corresponding to the first enterprise data is determined.
[0026] If the first enterprise data belongs to the floating interval, the first enterprise data is taken as the target enterprise data.
[0027] If the first enterprise data does not belong to the floating interval, the first enterprise data is marked according to the second enterprise data to obtain the target enterprise data.
[0028] In some embodiments, the method further comprises:
[0029] Data cleaning and word segmentation are performed on the target enterprise data to obtain a word sequence including a plurality of word units;
[0030] An inverted list of each word unit is constructed according to the word sequence;
[0031] Repeated word units and their inverted lists are merged to obtain the inverted index.
[0032] In some embodiments, the generating, according to the query statement and the inverted index, of the enterprise white list that meets the declaration condition comprises:
[0033] The query statement is parsed to construct a query postfix expression;
[0034] Key words in the postfix expression are traversed to determine a plurality of enterprise list lists from the inverted index;
[0035] The plurality of enterprise list lists are merged according to the operators in the postfix expression to obtain the enterprise white list.
[0036] In some embodiments, the method further comprises:
[0037] The weights of different sub-data in the enterprise data corresponding to each enterprise in the enterprise white list are obtained;
[0038] A weight score of the corresponding enterprise is obtained according to the weights of the different sub-data;
[0039] The enterprises in the enterprise white list are sorted according to the weight score to obtain a sorted enterprise white list.
[0040] In some embodiments, the method further comprises:
[0041] The mapping path of the enterprise data corresponding to each enterprise to the declaration condition is visually displayed.
[0042] In a second aspect, the embodiments of the present application provide a white list generation device, comprising:
[0043] A first obtaining module is configured to perform semantic recognition on a target policy to determine first declaration data included in the target policy, obtain a knowledge graph corresponding to the target policy, and process the first declaration data based on the knowledge graph to obtain second declaration data implied by the target policy. The first declaration data and the second declaration data are merged to obtain a declaration condition corresponding to the target policy.
[0044] a second obtaining module, configured to obtain first enterprise data declared by an enterprise, and obtain second enterprise data from an external data partner system based on the first enterprise data, the second enterprise data being available but invisible plaintext data, and perform trust verification on the first enterprise data according to the second enterprise data to determine target enterprise data;
[0045] a processing module, configured to construct an inverted index of the target enterprise data, and construct a query statement of the target enterprise data according to the declaration condition;
[0046] a generating module, configured to generate an enterprise white list meeting the declaration condition according to the query statement and the inverted index.
[0047] In a third aspect, the present application provides an electronic device, comprising a memory and a processor.
[0048] The memory is configured to store computer instructions, and the processor is configured to execute the computer instructions stored in the memory to implement the method in any one of the first aspect.
[0049] In a fourth aspect, the present application provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the method in any one of the first aspect.
[0050] In a fifth aspect, the present application provides a computer program product, comprising a computer program, which is executed by a processor to implement the method in any one of the first aspect.
[0051] The embodiments of the present application provide a white list generation method and related device. The first declaration data included in a target policy is determined by performing semantic recognition on the target policy. The knowledge graph corresponding to the target policy is obtained, and the first declaration data is processed based on the knowledge graph to obtain the second declaration data implied by the target policy. The first declaration data and the second declaration data are merged to obtain the declaration condition corresponding to the target policy. The first enterprise data declared by an enterprise is obtained. The second enterprise data is obtained from an external data partner system based on the first enterprise data. The second enterprise data is available but invisible plaintext data. The trust verification is performed on the first enterprise data according to the second enterprise data to determine the target enterprise data. The inverted index of the target enterprise data is constructed, and the query statement of the target enterprise data is constructed according to the declaration condition. The enterprise white list meeting the declaration condition is generated according to the query statement and the inverted index. The accuracy of the obtained declaration condition and enterprise data can be improved by performing semantic recognition on the target policy and performing verification on the enterprise data, so that the accuracy of the generated white list is improved. The generation efficiency of the white list can be effectively improved by constructing the inverted index and the query statement. Attached Figure Description
[0052] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0053] Figure 1 This is a schematic diagram of a scenario provided for an embodiment of this application;
[0054] Figure 2 A flowchart illustrating the whitelist generation method provided in this application embodiment. Figure 1 ;
[0055] Figure 3 A flowchart illustrating the whitelist generation method provided in this application embodiment. Figure 2 ;
[0056] Figure 4 This is a schematic diagram of the structure of the whitelist generation device provided in the embodiments of this application;
[0057] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0058] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0059] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0060] In the embodiments of this application, the terms "first" and "second" are used to distinguish identical or similar items with essentially the same function and effect, without limiting their order. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and that the terms "first" and "second" do not necessarily imply that they are different.
[0061] It should be noted that, in the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0062] The collection, storage, use, processing, transmission, provision, and disclosure of financial data or user data involved in the technical solution of this application all comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0063] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0064] As mentioned earlier, existing methods for generating whitelists of companies that meet preferential policies suffer from low efficiency and accuracy.
[0065] In view of this, embodiments of this application provide a whitelist generation method and related apparatus. By constructing a multi-dimensional enterprise data index and combining it with dynamic rule matching, intelligent matching of policy conditions and automatic generation of whitelists are achieved, effectively improving the generation efficiency and accuracy of enterprise whitelists.
[0066] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be implemented independently or in combination with each other. The same or similar concepts or processes may not be described again in some embodiments.
[0067] Figure 1 This is a schematic diagram of a scenario provided for an embodiment of this application, such as... Figure 1 As shown, it includes: client 101 and data platform 102.
[0068] The data platform 102 can be any platform capable of data processing, and the types of data platforms are not limited in this embodiment.
[0069] like Figure 1As shown, the data platform 102 can include a server, a first data interface and a second data interface, the first data interface and the second data interface are respectively used to obtain different data. For example, the first data interface is used to obtain enterprise data, and the second data interface is used to obtain preferential policies, or the first data interface is used to obtain preferential policies, and the second data interface is used to obtain enterprise data. The application does not limit the type of data obtained by the first data interface and the second data interface.
[0070] When the server receives the generation instruction for generating the white list input by the client, the server can generate an enterprise white list matched with the preferential policy according to the obtained enterprise data and preferential policy, and output the enterprise white list to the client, so that the client displays the generated enterprise white list to the user.
[0071] The application scenario of the application embodiment is briefly described above, and the white list generation method provided by the application embodiment will be described below with the server in the data platform shown in Figure 1
[0072] Figure 2 The flowchart of the white list generation method provided by the application embodiment is shown in Figure 2
[0073] S201, performing semantic recognition on a target policy to determine first declaration data included in the target policy.
[0074] In some embodiments, the first declaration data can include a first keyword and a first declaration parameter.
[0075] For example, after obtaining the target policy, a large model or artificial intelligence can be used to perform semantic recognition on the target policy to determine the first keyword and the first declaration parameter.
[0076] For example, the target policy is a tax preferential policy for small and micro enterprises registered in A land for more than 3 years, with R&D investment ratio greater than 5%, and employee number more than 100. After performing semantic recognition on the target policy, the first keyword can include A land, registration time, R&D investment ratio, employee number, and small and micro enterprises, and the first declaration parameter can include more than 3 years, greater than 5%, and more than 100.
[0077] S202, obtaining a knowledge graph corresponding to the target policy, and processing the first declaration data based on the knowledge graph to obtain second declaration data implied by the target policy.
[0078] In some embodiments, the knowledge graph can be constructed based on files related to the target policy, for example, the files related to the target policy can include policy files, regulation files, application guidelines, etc.
[0079] After obtaining the knowledge graph, the first declaration data can be mapped to the knowledge graph, and data related to the first declaration data can be extracted from the knowledge graph. For example, policy rules, conditions and constraints related to the first declaration data.
[0080] After extracting the data related to the first declaration data, reasoning can be performed based on the extracted related data to obtain the second declaration data. For example, predefined reasoning rules are used for reasoning, or a graph algorithm (such as a shortest path or community detection algorithm) is used for reasoning to obtain the second declaration data. The second declaration data includes a second keyword and a second declaration parameter.
[0081] For example, after reasoning the first declaration data, it is obtained that the enterprise complying with the target policy should comply with the conditions that the taxable income does not exceed 3 million yuan and the total assets do not exceed 50 million yuan. The above conditions are split into the second keyword (taxable income, total assets) and the second declaration parameter (not more than 3 million yuan, not more than 50 million yuan) to obtain the second declaration data.
[0082] S203, merging the first declaration data and the second declaration data to obtain the declaration condition corresponding to the target policy.
[0083] In some embodiments, the first declaration data and the second declaration data can be merged to remove duplicate data to obtain the declaration condition.
[0084] In some embodiments, in order to facilitate subsequent generation of a white list, the declaration condition can be structured to obtain a structured declaration condition. For example, the declaration condition can be structured by using regular expressions, parameterization, rule engines, etc.
[0085] S204, obtaining first enterprise data of enterprise declaration.
[0086] In some embodiments, the first enterprise data can include enterprise self-declared enterprise type, establishment time, registered capital, enterprise size, involved industry, credit rating, revenue capacity, enterprise qualification, etc.
[0087] Each enterprise corresponds to first enterprise data, which is independently stored as a data record or a document. For example, data record 1: enterprise A (enterprise data), data record 2: enterprise B (enterprise data), and data record 3: enterprise C (enterprise data). It should be understood that the name of each data record can be the name of the enterprise, and the content of the data record is the corresponding enterprise data.
[0088] S205, obtaining second enterprise data from an external data partner system based on the first enterprise data; the second enterprise data is available in plaintext data that cannot be seen.
[0089] In some embodiments, the external data partner system can include a business system, a tax system, a bank system, etc.
[0090] In some embodiments, to ensure data security, the external data partner generally does not provide related plaintext data, so the second enterprise data can be obtained from the external data partner system in a privacy computing manner, so as to obtain the required data under the premise of ensuring data security.
[0091] For example, the second enterprise data can be obtained from the external data partner system in a privacy intersection, privacy query, joint calculation, etc.
[0092] S206, performing trusted verification on the first enterprise data according to the second enterprise data to determine target enterprise data.
[0093] In some embodiments, after obtaining the second enterprise data, the first enterprise data can be verified by the second enterprise data to improve the accuracy of the obtained first enterprise data. By verifying the first enterprise data independently reported by the enterprise through the second enterprise data in the external data partner system, the probability of reducing the accuracy of the white list generated subsequently due to the distortion of the data independently reported by the enterprise can be effectively reduced.
[0094] For example, the taxable income in the first enterprise data is converted into corresponding interval coding, and the taxable income in the second enterprise data obtained from the external data partner system is also converted into corresponding interval coding. Homomorphic encryption processing is performed on the first enterprise data (coding) and the second enterprise data (coding), and encrypted domain comparison is performed to determine whether the first enterprise data and the second enterprise data match. If they match, the first enterprise data is taken as the target enterprise data, and if they do not match, the first enterprise data is modified based on the second enterprise data to obtain the target enterprise data.
[0095] S207, constructing an inverted index of the target enterprise data, and constructing a query statement of the target enterprise data according to the reporting condition.
[0096] In some embodiments, when the target enterprise data of each enterprise is obtained, an inverted index of the target enterprise data of each enterprise can be constructed. Through the inverted index, the enterprises that meet the conditions can be quickly retrieved when the whitelist is subsequently generated.
[0097] For example, the target enterprise data of each enterprise can be subjected to word segmentation processing, and keywords therein can be extracted, and a mapping between the keywords and data records can be constructed based on the keywords to obtain the inverted index.
[0098] For example, the constructed inverted index can be as follows:
[0099]
[0100] In some embodiments, after the declaration conditions are obtained, the declaration conditions can be converted into query fragments, and multiple query fragments can be assembled according to the relationships (and, or, not, etc.) between the declaration conditions to obtain a corresponding query statement.
[0101] For example, the declaration conditions include: 1, the enterprise type is a small and medium-sized enterprise; 2, the registered location is A; and 3, the establishment time is more than 3 years.
[0102] The query fragment corresponding to condition 1 is enterprise type = small and medium-sized enterprise; the query fragment corresponding to condition 2 is registered location = A; and the query fragment corresponding to condition 3 is establishment time > 3 years.
[0103] The above query conditions are assembled to obtain the query statement: enterprise type = small and medium-sized enterprise AND registered location = A AND establishment time > 3 years.
[0104] S208, generating an enterprise whitelist that meets the declaration conditions according to the query statement and the inverted index.
[0105] In some embodiments, when the query statement is obtained, the enterprise list corresponding to each value in the query statement can be queried according to the inverted index, and the intersection of each enterprise list is obtained to obtain the final enterprise whitelist.
[0106] For example, the enterprise list A corresponding to the small and medium-sized enterprise, the enterprise list B corresponding to the registered location in A, and the enterprise list C corresponding to the establishment time greater than 3 years are queried according to the inverted index, and the intersection of the enterprise list A, the enterprise list B, and the enterprise list C is obtained to obtain the final enterprise whitelist.
[0107] The white list generation method provided in the embodiments of the present application comprises the following steps: performing semantic recognition on a target policy to determine first declaration data included in the target policy; obtaining a knowledge graph corresponding to the target policy, and processing the first declaration data based on the knowledge graph to obtain second declaration data implied by the target policy; merging the first declaration data and the second declaration data to obtain declaration conditions corresponding to the target policy; obtaining first enterprise data declared by an enterprise; obtaining second enterprise data from an external data cooperation party system based on the first enterprise data; the second enterprise data is visible plaintext data; performing trust verification on the first enterprise data according to the second enterprise data to determine target enterprise data; constructing an inverted index of the target enterprise data, and constructing a query statement of the target enterprise data according to the declaration conditions; and generating an enterprise white list meeting the declaration conditions according to the query statement and the inverted index. By performing semantic recognition on the target policy and verifying the enterprise data, the accuracy of the obtained declaration conditions and enterprise data can be improved, thereby improving the accuracy of the generated white list. By constructing the inverted index and the query statement to generate the white list, the generation efficiency of the white list can be effectively improved.
[0108] The embodiments of the present application will be described below in conjunction with Figure 3 The generation method of the white list provided in the embodiments of the present application will be further described.
[0109] Figure 3 The flowchart of the generation method of the white list provided in the embodiments of the present application Figure 2 As shown in Figure 3 , comprising:
[0110] S301, obtaining first declaration data corresponding to a target policy.
[0111] The specific implementation mode shown in S301 in the embodiments of the present application is similar to the specific implementation mode shown in S201 in the embodiments shown in Figure 2 , which will not be described here.
[0112] S302, obtaining a knowledge graph corresponding to the target policy.
[0113] In some embodiments, the knowledge graph can be constructed based on a file related to the target policy, for example, the file related to the target policy can comprise a policy file, a regulation file, an application guide and the like.
[0114] For example, documents related to the target policy are obtained; natural language processing (NLP) is performed on the documents to extract entities from the policy documents, and the relationships between the entities and the attributes of the entities are identified; the knowledge graph is constructed based on the entities, the relationships between the entities, and the attributes of the entities.
[0115] For example, NLP tools (such as Stanford NER or BERT-based models) are used to identify key entities in policy documents, including entities such as enterprises, projects, amounts, times, conditions, and supporting documents; relation extraction models (such as pipeline models, joint models, etc.) are used to identify relationships between entities; and machine learning or deep learning methods are used to extract the attributes of each entity. The extracted entities and relationships are then converted into a graph structure, where nodes represent entities, edges represent relationships, and entity attributes are used as node attributes. This structure is stored in a graph database to obtain the knowledge graph.
[0116] In some embodiments, after obtaining the documents related to the target policy, the documents can be cleaned, segmented, and denoised to facilitate natural language processing and improve the accuracy of entity recognition.
[0117] S303. Process the first declaration data based on the knowledge graph to obtain the second declaration data implied by the target policy.
[0118] In some embodiments, the first declaration data can be mapped to the knowledge graph, and reasoning can be performed based on the mapping result to obtain the second declaration data.
[0119] For example, the first application data is mapped to the knowledge graph, and target data related to the first application data is determined from the knowledge graph. For example, policies, rules, conditions, and constraints related to the first application data. If the first application data has "company_type": "SME", it is mapped to the "SME" entity in the knowledge graph. The target data is determined based on the data corresponding to the "SME" entity in the knowledge graph.
[0120] In some embodiments, after obtaining the target data, inference can be performed on the target data to determine the second declared data. For example, inference can be performed on the target data based on logical rules or machine learning models.
[0121] For example, target data can be input into an inference rule engine (such as SWRL or Drools rule engine) built on the target policy to obtain second declaration data output by the inference rule engine.
[0122] Exemplarily, the target data can be analyzed using a graph algorithm to determine the implied relationship between entities in the target data, the implied relationship between the entities can be embedded using a graph neural network (GNN) for learning, and predicted second declaration data can be output.
[0123] S304, merging the first declaration data and the second declaration data to obtain the declaration condition corresponding to the target policy.
[0124] After obtaining the first declaration data (including first keywords and first declaration parameters) and the second declaration data (including second keywords and second declaration parameters), the above data can be de-duplicated and merged to obtain the corresponding declaration condition.
[0125] For example, the obtained declaration condition is: in A, small and micro enterprises, registered for more than 3 years, R&D investment ratio greater than 5%, employee number more than 100, tax income less than 3 million, total assets less than 50 million.
[0126] In some embodiments, after obtaining the declaration condition, each condition in the declaration condition can be decomposed into attributes, operators and values, and converted into structured data for subsequent use.
[0127] For example, the converted structured data is as follows:
[0128]
[0129] S305, obtaining first enterprise data declared by an enterprise and second enterprise data from the external data partner system.
[0130] In some embodiments, to ensure data security, the external data partner generally does not provide related plaintext data, therefore, the second enterprise data can be obtained from the external data partner system in a privacy computing manner, and the required data can be obtained under the premise of ensuring data security.
[0131] For example, the second enterprise data can be obtained from the external data partner system in a privacy intersection, privacy query, joint calculation and the like.
[0132] S306, obtaining the target enterprise data according to the first enterprise data and the second enterprise data.
[0133] In some embodiments, after obtaining the second enterprise data, the first enterprise data can be verified using the second enterprise data to improve the accuracy of the obtained first enterprise data.
[0134] For example, the taxable income (200 million yuan) in the first enterprise data is converted into corresponding interval coding, the taxable income (e.g., 260 million yuan) in the second enterprise data obtained from the external data cooperation party system is also converted into corresponding interval coding, homomorphic encryption processing is performed on the first enterprise data (coding) and the second enterprise data (coding), and encrypted domain comparison is performed to determine whether the first enterprise data and the second enterprise data match. That is, when data verification is performed, the first enterprise data and the second enterprise data are data based on homomorphic encryption processing.
[0135] If the encrypted domain comparison result indicates that the second enterprise data matches the first enterprise data, the first enterprise data is taken as the target enterprise data.
[0136] If the encrypted domain comparison result indicates that the second enterprise data does not match the first enterprise data, it is necessary to determine whether the first enterprise data is reliable, and the target enterprise data is determined according to the determination result.
[0137] For example, the trusted statement of the enterprise is generated according to the first enterprise data, the corresponding floating interval of the first enterprise data is determined according to the trusted proof and the second enterprise data, if the first enterprise data belongs to the floating interval, the first enterprise data is taken as the target enterprise data, and if the first enterprise data does not belong to the floating interval, the first enterprise data is marked according to the second enterprise data to obtain the target enterprise data. The trusted statement includes verifiable proof and zero-knowledge proof.
[0138] For example, the verifiable statement is generated according to the first enterprise data and the corresponding proof material (e.g., data list, third-party audit report, provided when the enterprise reports data) of the first enterprise data, and the zero-knowledge proof is generated according to the verifiable statement. The zero-knowledge proof is used to prove the validity of the verifiable statement.
[0139] After obtaining the verifiable statement and the zero-knowledge proof, the data floating coefficient corresponding to the first enterprise data can be determined based on the verifiable statement and the zero-knowledge proof, and the second enterprise data is calculated according to the floating coefficient to determine the corresponding floating interval of the first enterprise data. For example, the verifiable statement and the zero-knowledge proof can be analyzed and processed based on a pre-trained model to output the corresponding floating coefficient (e.g., ±20%). The second enterprise data is calculated according to the floating coefficient to obtain the reasonable data interval of the first enterprise data.
[0140] If the first enterprise data is in the above interval, it can be determined that the first enterprise data is true, and the first enterprise data is taken as the target enterprise data. If the first enterprise data is not in the above interval, it can be determined that the first enterprise data is false, and the first enterprise data needs to be further processed.
[0141] For example, when it is determined that the first enterprise data is false, the second enterprise data can be decrypted by a third-party agency, and a correction mark can be generated according to the corresponding declaration condition. After the correction mark returned by the third-party agency is obtained, the first enterprise data is marked with the correction mark, and the target enterprise data is obtained.
[0142] For example, the R&D expenses in the first enterprise data is 12 million, the R&D expenses in the second enterprise data (such as tax records) is 8 million, the declaration condition is that the R&D expenses is greater than or equal to 10 million, and the third-party agency decrypts the second enterprise data and outputs a mark of “less than 10 million” after desensitizing the second enterprise data.
[0143] Through the above processing method, data forced correction can be realized under the premise of privacy protection, so as to ensure the reliability of subsequent whitelist decision.
[0144] S307, constructing an inverted index of the target enterprise data, and constructing an enterprise data query statement according to the declaration condition.
[0145] In some embodiments, after the target enterprise data is obtained, data cleaning and word segmentation processing can be performed on the target enterprise data to obtain a word sequence including a plurality of words. According to the word sequence, an inverted list of each word is constructed. The repeated words and their inverted lists are merged to obtain the inverted index.
[0146] For example, the target enterprise data is subjected to morphological analysis processing, and continuous text data is decomposed into discrete words (TOKEN) according to predefined rules (such as spaces, punctuation marks, etc.). Each word is normalized and meaningless words (modifier words, definite articles, etc.) are removed to obtain a word sequence of a plurality of words.
[0147] After the word sequence is obtained, each word in the word sequence can be traversed to create an inverted list corresponding to each word, and repeated words and their inverted lists are merged. The inverted list includes the company name where each word is located. After the inverted list is obtained, a dictionary storing unique words can be generated according to the word sequence, the dictionary is associated with the inverted list, and the inverted index is obtained.
[0148] In some embodiments, the reporting conditions can be connected (e.g., using the connectors AND, OR, etc.) according to the target policy, and the reporting conditions can be assembled into a query statement.
[0149] For example, the reporting conditions obtained in step 301 are as follows:
[0150] (Registration place = 'A place') AND (Enterprise type = 'Small and micro enterprises') AND (Establishment time ≤ Current date-3 years) AND (R&D input ratio > 5%) AND (Employee number > 100) AND (Taxable income ≤ 300) AND (Total assets ≤ 5000).
[0151] S308, according to the query statement and the inverted index, generating a white list of enterprises meeting the reporting conditions.
[0152] In some embodiments, when the query statement is obtained, the query statement can be parsed to construct a query postfix expression; keywords in the postfix expression are traversed to determine a plurality of enterprise name lists from the inverted index; and the plurality of enterprise name lists are merged according to the operators in the postfix expression to obtain the enterprise white list.
[0153] For example, the query statement is "(Internet OR Education) AND NOT B place", which is split into independent Token, and the Token sequence is output as "['(', 'Internet', 'OR', 'Education', ')', 'AND', 'NOT', 'B place']".
[0154] The Token sequence is processed by infix-to-postfix to obtain a postfix expression. For example, ['Internet', 'Education', 'OR', 'B place', 'NOT', 'AND']. Each keyword in the postfix expression is traversed to obtain the corresponding company name list from the inverted index, and the plurality of company name lists obtained are merged to obtain the enterprise white list. For example, the company list A corresponding to "Internet OR Education" is obtained from the inverted index, the company list B corresponding to "NOT B place" is obtained from the inverted index, and A AND B is calculated to obtain the final enterprise white list set.
[0155] In some embodiments, different companies have different characteristics, and when generating the white list, the weight scores of different companies can be calculated to sort the companies in the white list.
[0156] For example, weights of different sub-data in enterprise data corresponding to each enterprise in the enterprise whitelist are obtained; a weight score of the corresponding enterprise is obtained according to the weights of the different sub-data; and the enterprises in the enterprise whitelist are sorted according to the weight score, to obtain a sorted enterprise whitelist.
[0157] For example, the more the number of R&D personnel in the enterprise data, the higher the weight of the R&D personnel sub-data, and the more the number of patents, the higher the weight of the patent number sub-data. The weights of different sub-data can be determined based on a preset rule, for example, the weight is 0.5 when the number of R&D personnel is greater than 100, and the weight is 0.6 when the number of R&D personnel is greater than 200. After summing and averaging the weights of each sub-data, the weight score of the corresponding enterprise is obtained. In the output whitelist, the enterprises are sorted in descending order according to the weight score of each enterprise.
[0158] S309, visualizing a mapping path of enterprise data corresponding to each enterprise and the declaration condition.
[0159] In some embodiments, the mapping path can refer to the matching of enterprise data corresponding to each enterprise and the declaration condition.
[0160] For example, for an enterprise in the whitelist, the R&D expense ratio is 8.2%, which meets the requirement of greater than or equal to 5% in the target policy. For an enterprise not selected, it is shown that condition 3.2 (the ratio of technical personnel is greater than or equal to 30%) is not met, and the current ratio is 22%. The visualized mapping path can make the decision-making process of the whitelist generation transparent and improve the credibility of the whitelist.
[0161] In summary, the whitelist generation method provided by the embodiments of the present application can improve the accuracy of the obtained declaration conditions and enterprise data by performing semantic recognition on the target policy and verifying the enterprise data by third-party data, thereby improving the accuracy of the generated whitelist. The generation of the whitelist by constructing an inverted index and a query statement can effectively improve the generation efficiency of the whitelist.
[0162] On the basis of the above-mentioned embodiments, the embodiments of the present application further provide a whitelist generation device.
[0163] Figure 4 The structure diagram of the whitelist generation device 40 provided by the embodiments of the present application is shown in Figure 4 As shown in the figure, it comprises:
[0164] The first obtaining module 401 is configured to perform semantic recognition on a target policy, determine first declaration data included in the target policy, obtain a knowledge graph corresponding to the target policy, and process the first declaration data based on the knowledge graph to obtain second declaration data implied by the target policy; and perform merging on the first declaration data and the second declaration data to obtain declaration conditions corresponding to the target policy.
[0165] The second obtaining module 402 is configured to obtain first enterprise data declared by an enterprise, obtain second enterprise data from an external data cooperation party system based on the first enterprise data, and perform trust verification on the first enterprise data according to the second enterprise data to determine target enterprise data.
[0166] The processing module 403 is configured to construct an inverted index of the target enterprise data, and construct a query statement of the target enterprise data according to the declaration conditions.
[0167] The generating module 404 is configured to generate an enterprise white list meeting the declaration conditions according to the query statement and the inverted index.
[0168] In some embodiments, the first obtaining module 401 is configured to obtain a file related to the target policy, perform natural language processing on the file, extract entities in the policy document, and identify relationships between the entities and attributes of the entities; construct the knowledge graph based on the entities, the relationships between the entities, and the attributes of the entities; map the first declaration data to the knowledge graph, and determine target data related to the first declaration data from the knowledge graph; and perform reasoning on the target data to determine the second declaration data.
[0169] In some embodiments, the second obtaining module 402 is configured to, if the second enterprise data matches the first enterprise data, take the first enterprise data as the enterprise data; if the second enterprise data does not match the first enterprise data, obtain a trust statement corresponding to the first enterprise data; the trust statement includes a verifiable proof and a zero-knowledge proof; and determine the target enterprise data according to the trust proof.
[0170] In some embodiments, the second obtaining module 402 is configured to determine a floating interval corresponding to the first enterprise data according to the trust proof and the second enterprise data; if the first enterprise data belongs to the floating interval, take the first enterprise data as the target enterprise data; and if the first enterprise data does not belong to the floating interval, mark the first enterprise data according to the second enterprise data to obtain the target enterprise data.
[0171] In some embodiments, the processing module 403 is configured to perform data cleaning and word segmentation on the target enterprise data to obtain a word sequence comprising a plurality of word units; construct an inverted list of each word unit according to the word sequence; and merge repeated word units and their inverted lists to obtain the inverted index.
[0172] In some embodiments, the generating module 404 is configured to parse the query statement to construct a query postfix expression; traverse keywords in the postfix expression to determine a plurality of enterprise list lists from the inverted index; and merge the plurality of enterprise list lists according to operators in the postfix expression to obtain the enterprise whitelist.
[0173] In some embodiments, the processing module 403 is configured to obtain weights of different sub-data in enterprise data corresponding to each enterprise in the enterprise whitelist; obtain a weight score of the corresponding enterprise according to the weights of the different sub-data; and sort the enterprises in the enterprise whitelist according to the weight scores to obtain a sorted enterprise whitelist.
[0174] In some embodiments, the generating module 404 is configured to visually display a mapping path of the enterprise data corresponding to each enterprise and the declaration condition.
[0175] The whitelist generation apparatus provided by the embodiments of the present application can be used to execute the technical solutions of the whitelist generation method in the above embodiments, and has similar implementation principles and technical effects, which will not be described herein.
[0176] It should be noted that the division of each module of the above apparatus is only a logical functional division, and all or part of the modules can be integrated into one physical entity, or can be physically separated. These modules can all be implemented in the form of software called by a processing element; or all be implemented in the form of hardware; or part of the modules are implemented in the form of software called by a processing element, and part of the modules are implemented in the form of hardware. For example, the generating module 404 can be a separate processing element, or can be integrated into a chip of the above apparatus, in addition, the generating module 404 can also be stored in the form of program code in the memory of the above apparatus, and the functions of the generating module 404 are called and executed by a processing element of the above apparatus. The implementation of other modules is similar. In addition, all or part of the modules can be integrated together, or can be independently implemented. The processing element herein can be an integrated circuit having a signal processing capability. In the implementation process, each step of the above method or each module can be completed by the integrated logic circuit of hardware or the instruction of software in the processing element.
[0177] The embodiments of the present application also provide an electronic device.
[0178] Figure 5 A structural schematic diagram of the electronic device 50 provided in the embodiments of the present application is shown in FIG. 5. As shown in the figure, the electronic device can include a processor 501 and a memory 502. The electronic device can be the data platform in any of the above embodiments. Figure 5
[0179] The processor 501 executes computer-executed instructions stored in the memory, so that the processor 501 executes the solutions in the above embodiments. The processor 501 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; or can be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, discrete hardware component.
[0180] The memory 502 is connected with the processor 501 through a system bus and completes mutual communication. The memory 502 is used for storing computer program instructions.
[0181] Optionally, the electronic device 50 can further include a communication interface, so that the communication interface 502 can communicate with external or internal devices, for example, a client (for example, a mobile phone, a tablet computer). In a specific implementation, if the communication interface, the memory 502 and the processor 501 are independently implemented, the communication interface, the memory 502 and the processor 501 can be connected with each other through a bus and complete mutual communication.
[0182] The system bus can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The system bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, only one thick line is shown in the figure, but it does not mean that there is only one bus or only one type of bus. The transceiver is used to realize communication between the database access device and other computers (for example, a client, a read-write library and a read-only library). The memory can include a random access memory (RAM), and can also include a non-volatile memory.
[0183] Optionally, in a specific implementation, if the communication interface, the memory 502 and the processor 501 are integrated on a chip, the communication interface, the memory 502 and the processor 501 can complete communication through an internal interface.
[0184] The embodiment of the present application further provides a chip for running instructions, which is used for executing the technical solution of the whitelist generation method in the above embodiment.
[0185] The embodiment of the present application further provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the technical solution of the whitelist generation method in the above embodiment, and the implementation principle and technical effects are similar, and details are not repeated here.
[0186] In a possible implementation manner, the computer readable medium can include a random access memory (RAM), a read-only memory (ROM), a compact disc read-only memory (CD-ROM) or other optical disk memories, a magnetic disk memory or other magnetic storage devices, or any other medium targeted at carrying and storing the required program codes in the form of instructions or data structures, and can be accessed by the computer. Moreover, any connection is appropriately referred to as a computer readable medium. For example, if software is transmitted from a website, a server or other remote source using a coaxial cable, an optical fiber cable, a twisted pair, a digital subscriber line (DSL) or wireless technology (such as infrared, radio and microwave), the coaxial cable, the optical fiber cable, the twisted pair, the DSL or the wireless technology (such as infrared, radio and microwave) is included in the definition of the medium. As used herein, a magnetic disk and an optical disk include a compact disk, a laser disk, an optical disk, a digital versatile disk (DVD), a floppy disk and a Blu-ray disk, in which the magnetic disk usually magnetically reproduces data, and the optical disk optically reproduces data by using a laser. The combination of the above should also be included in the scope of the computer readable medium.
[0187] The embodiment of the present application further provides a computer program product, including a computer program, which is executed by a processor to implement the technical solution of the method embodiment, and the implementation principle and technical effects are similar, and details are not repeated here.
[0188] In the specific implementation of the server, it should be understood that the server can be a central processing unit (CPU), and can also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as hardware processor execution, or executed by a combination of hardware and software modules in the processor.
[0189] Those skilled in the art can understand that all or part of the steps of any of the method embodiments described above can be completed by hardware related to program instructions. The foregoing program can be stored in a computer readable storage medium, and when the program is executed, all or part of the steps of the method embodiments described above are executed.
[0190] If the technical solutions of the present application are realized in the form of software and sold or used as products, they can be stored in a computer readable storage medium. Based on this understanding, all or part of the technical solutions of the present application can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a computer program or a number of instructions. The computer software product makes a computer device (which can be a personal computer, a server, a network device or a similar electronic device) execute all or part of the steps of the method described in the embodiments of the present application.
[0191] It should be noted that, for the foregoing method embodiments, in order to simply describe, they are all expressed as a combination of a series of actions, but those skilled in the art should know that the present application is not limited by the order of the described actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should know that the embodiments described in the specification all belong to optional embodiments, and the actions and modules involved are not necessarily required by the present application.
[0192] It should be further noted that although the steps in the flowchart are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0193] It should be understood that the above-described device embodiments are merely illustrative, and the device of this application can also be implemented in other ways. For example, the division of units / modules in the above embodiments is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units, modules, or components may be combined, or integrated into another system, or some features may be ignored or not executed.
[0194] Furthermore, unless otherwise specified, the functional units / modules in the various embodiments of this application can be integrated into one unit / module, or each unit / module can exist physically separately, or two or more units / modules can be integrated together. The integrated units / modules described above can be implemented in hardware or as software program modules.
[0195] When integrated units / modules are implemented in hardware, the hardware can be digital circuits, analog circuits, etc. The physical implementation of the hardware structure includes, but is not limited to, transistors, memristors, etc. Unless otherwise specified, the processor can be any suitable hardware processor, such as a CPU, GPU, FPGA, DSP, and ASIC, etc. Unless otherwise specified, the storage unit can be any suitable magnetic or magneto-optical storage medium, such as Resistive Random Access Memory (RRAM), Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Enhanced Dynamic Random Access Memory (EDRAM), High-Bandwidth Memory (HBM), Hybrid Memory Cube (HMC), etc.
[0196] The integrated unit / module, if implemented in the form of a software program module and sold or used as an independent product, can be stored in a computer readable memory. Based on such understanding, the technical solutions of the present application essentially or the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a memory and includes a number of instructions for causing a computer device (which can be a personal computer, a server or a network device, etc.) to execute all or part of the steps of the embodiments of the present application. The aforementioned memory includes: a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store program codes.
[0197] In the above embodiments, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments. The technical features of the above embodiments can be combined arbitrarily, and in order to make the description concise, not all possible combinations of the technical features in the above embodiments are described, however, as long as the combination of the technical features does not exist contradictory, it should be considered as the scope of the present application.
[0198] Finally, it should be pointed out that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that: it can still modify the technical solutions recorded in the above embodiments, or make equivalent replacement for part or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for generating a whitelist, characterized in that, include: Perform semantic recognition on the target policy to determine the first declaration data included in the target policy; Obtain the knowledge graph corresponding to the target policy, and process the first application data based on the knowledge graph to obtain the second application data implied by the target policy; The first application data and the second application data are merged to obtain the application conditions corresponding to the target policy; Obtain the first enterprise data submitted by the enterprise; Data of the second enterprise is obtained from the external data partner system based on the data of the first enterprise. The second enterprise data is available but not visible plaintext data; The first enterprise data is verified for credibility based on the second enterprise data to determine the target enterprise data; Construct an inverted index of the target company data, and construct a query statement for the target company data based on the application conditions; Based on the query statement and the inverted index, a whitelist of enterprises that meet the application requirements is generated.
2. The method according to claim 1, characterized in that, The step of obtaining the knowledge graph corresponding to the target policy and processing the first application data based on the knowledge graph to obtain the second application data implicit in the target policy includes: Obtain documents related to the stated target policy; Natural language processing is performed on the document to extract entities from the policy document and to identify the relationships between the entities and the attributes of each entity. The knowledge graph is constructed based on the entities, the relationships between the entities, and the attributes of the entities; The first application data is mapped to the knowledge graph, and target data related to the first application data is determined from the knowledge graph; Reasoning is performed on the target data to determine the second declared data.
3. The method according to claim 1, characterized in that, The step of verifying the credibility of the first enterprise data based on the second enterprise data to determine the target enterprise data includes: If the second enterprise data matches the first enterprise data, then the first enterprise data is used as the enterprise data. If the second enterprise data does not match the first enterprise data, then obtain the trusted statement corresponding to the first enterprise data; the trusted statement includes verifiable proofs and zero-knowledge proofs; The target enterprise data is determined based on the credible proof.
4. The method according to claim 3, characterized in that, The step of determining the enterprise data based on the trusted proof includes: Based on the credible proof and the second enterprise data, determine the corresponding fluctuation range of the first enterprise data; If the data of the first enterprise belongs to the floating range, then the data of the first enterprise is used as the target enterprise data; If the first enterprise data does not belong to the floating range, then the first enterprise data is marked according to the second enterprise data to obtain the target enterprise data.
5. The method according to any one of claims 1-3, characterized in that, Constructing the inverted index of the target enterprise data includes: The target enterprise data is cleaned and segmented to obtain a word sequence containing multiple word elements; Based on the given word sequence, construct an inverted list for each word; The inverted index is obtained by merging the duplicate terms and their inverted lists.
6. The method according to any one of claims 1-3, characterized in that, The step of generating a whitelist of enterprises that meet the application criteria based on the query statement and the inverted index includes: The query statement is parsed to construct a query postfix expression; Iterate through the keywords in the postfix expression to determine a list of multiple company names from the inverted index; The multiple enterprise lists are merged according to the operators in the postfix expression to obtain the enterprise whitelist.
7. The method according to claim 6, characterized in that, The method further includes: Obtain the weights of different sub-data in the enterprise data corresponding to each enterprise in the enterprise whitelist; Based on the weights of the different sub-data, the corresponding enterprise's weight score is obtained; The companies in the enterprise whitelist are sorted according to the weighted scores to obtain the sorted enterprise whitelist.
8. The method according to any one of claims 1-4, characterized in that, The method further includes: The visualization displays the mapping path between each company's data and the application requirements.
9. A whitelist generation device, characterized in that, include: The first acquisition module is used to perform semantic recognition on the target policy and determine the first declaration data included in the target policy; Obtain the knowledge graph corresponding to the target policy, and process the first application data based on the knowledge graph to obtain the second application data implied by the target policy; The first application data and the second application data are merged to obtain the application conditions corresponding to the target policy; The second acquisition module is used to acquire the first enterprise data declared by the enterprise. Data of the second enterprise is obtained from the external data partner system based on the data of the first enterprise. The second enterprise data is available but not visible plaintext data; The first enterprise data is verified for credibility based on the second enterprise data to determine the target enterprise data; The processing module is used to construct an inverted index of the target enterprise data, and to construct a query statement for the target enterprise data based on the application conditions; The generation module is used to generate a whitelist of enterprises that meet the application conditions based on the query statement and the inverted index.
10. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing the computer program to implement the method of any one of claims 1-8.
11. A computer-readable storage medium, characterized in that, It stores a computer program, which is executed by a processor to implement the method of any one of claims 1-8.
12. A computer program product, characterized in that, Includes a computer program that, when executed by a controller, implements the method of any one of claims 1-8.