A business data intelligent matching method, system and storage medium
By using a business data intelligent matching model and text and numerical similarity algorithms, the system achieves automated matching of enterprise input invoices and business documents, solving the problems of low efficiency and high error rate in existing technologies and forming a complete closed loop of supply chain business links.
Patent Information
- Application Number
- CN202311525508.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-15
- Publication Date
- 2026-03-06
- Estimated Expiration
- 2043-11-15
AI Technical Summary
Existing technologies cannot automatically match business documents from related business systems when enterprises obtain input invoices offline, resulting in low efficiency, high error rate, limited applicability, and inability to form a complete closed loop of supply chain business links.
A business data intelligent matching model is adopted. By using text and numerical similarity methods, a multi-dimensional composite calculation of business documents and invoice data is established. Combining similarity and numerical weighting algorithms, the system automatically associates and verifies document details to generate matching conclusions.
It enables automated matching of enterprise input invoices and business transaction documents, forming a business closed loop, improving matching efficiency, reducing error rate, and expanding applicable scenarios.
Smart Images

Figure CN117407726B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of business data processing technology, and in particular to a training method, system and storage medium for intelligent matching of business data and intelligent matching of business data. Background Technology
[0002] Supply chain automation and intelligence involve the integrated analysis of data from logistics, information flow, and capital flow within the supply chain to minimize logistics and inventory costs while supporting core business growth. In the supply chain, invoice data serves as crucial documentation for both parties during the purchase and sale of goods, and is also a primary basis for auditing financial reviews. Currently, invoice reconciliation and other business data processing primarily rely on manual verification; machines can only provide auxiliary verification of simple information such as invoice numbers and amounts. Therefore, an efficient and comprehensive document and invoice matching algorithm can significantly reduce tedious manual work and better adapt to business scenarios with high real-time requirements, such as risk identification.
[0003] In real-world many-to-many scenarios, it's necessary to calculate approximate values for multiple metrics, such as supplier, specifications, total price including tax, and amount, before summarizing and aggregating these metrics. In some applications, the number of business documents and invoices that need to be matched can reach tens of thousands, posing a significant challenge to the overall matching difficulty and performance.
[0004] Regarding business document matching scenarios, the industry already has information-based and automated implementation methods to address the low efficiency and high error rate of manual processing. Existing general implementation methods typically include the following two types:
[0005] One method is strong correlation matching: This approach requires that the two documents to be matched be preprocessed manually or by computer to establish a relationship between them. For example, when matching invoices and bank statements, the corresponding invoice numbers and serial numbers must be explicitly entered on the bank statement. Then, the matching program is executed, and the results are output to determine whether the bank statement and invoice match in terms of business dimensions.
[0006] Another approach is single-digit matching: This method does not require pairwise matching of documents. The relationship between preprocessed documents can be matched by the total amount data item of the documents to determine whether the documents match in terms of business dimensions. However, it is limited to a simple matching logic of whether the total amount of the documents is consistent.
[0007] Both of the above implementation methods have significant problems. The strong correlation matching method requires pre-processing; the step of establishing document relationships requires manual intervention, resulting in low efficiency and a high error rate. The matching algorithm relies entirely on the correctness of this relationship establishment, making manual review of the matching results highly probable and inefficient.
[0008] The problem with a single digital matching method is that it only establishes document relationships based on the total amount of the documents. This dimension is too limited, the error rate in establishing relationships is high, and it can only meet some simple settlement business scenarios.
[0009] To address the problems of the existing technologies mentioned above, this invention aims to solve the pain point of enterprises being unable to automatically match input invoices obtained offline with business documents in related business systems. Upstream suppliers cannot issue invoices online through a collaborative platform, and offline invoices are isolated from business transaction data, failing to form a complete closed-loop supply chain business chain. This invention's intelligent matching of business data allows enterprises to automatically link input invoices and business transaction documents through a matching algorithm, achieving automated online matching and discrepancy analysis of the two documents, thus forming a closed-loop business process from business to invoice data. Summary of the Invention
[0010] To address the technical problems of existing technologies, this invention proposes a method, apparatus, system, and computer-readable storage medium for intelligent business data matching (matching business documents and invoices based on text and numerical similarity). The intelligent business data matching model incorporates various business elements of business documents into the matching calculation elements, performs composite calculations across multiple business dimensions, and combines similarity algorithms and numerical weighting algorithms to establish pairwise relationships between documents. It then intelligently verifies the detailed data of the documents to arrive at a matching conclusion, thus solving the problems of low efficiency, high error rate, and limited applicability of conventional industry practices.
[0011] Therefore, the following aspects are included:
[0012] In a first aspect, a training method for a business data intelligent matching model includes: S101, acquiring sample data, wherein the sample data includes business invoice data and invoice data, and constructing the association relationship between the business invoice data and invoice data;
[0013] S102, classify the information fields of the sample data based on the text classification model;
[0014] S103, Train and construct matching rules based on the numerical type of the information field of the sample data;
[0015] S104, perform data matching between the business invoice data and the invoice data according to the matching rules, and generate a matching result;
[0016] S105, if the error of the matching result is less than the threshold, determine to end the training of the model; otherwise, repeat S101-S105 for iterative training.
[0017] Furthermore, the business invoice data includes the company name and order number; the invoice data information fields include the product name, specifications, unit, quantity, amount, tax amount, and tax rate, and the invoice header information includes the company information of both parties to the transaction.
[0018] Furthermore, the trained text classification model categorizes the fields into four types: exact text, similar text, exact numerical values, and floating numerical values.
[0019] Further, step S103, training and constructing matching rules based on the numerical type of the information field of the sample data includes: for similar character data, using a trained BERT model to match the information fields; for floating numerical data, using a floating range for similarity matching.
[0020] Furthermore, in the fine-tuning process of the BERT model, a label injection method is used to perform iterative loops to improve the relationship graph of the information fields;
[0021] Furthermore, the newly synthesized information field vector is input into the BERT model for fine-tuning, resulting in an updated BERT model that provides a better representation of information fields (e.g., product name fields). The formula is expressed as: Where H is the latent vector, W1 T W2 represents the network weights, σ is an adjustable bias parameter that represents the degree of attention the model pays to vector E. T Let E be the weight. The model's loss function is...
[0022] Further, in step S104, the business document data and invoice data are matched according to the matching rules to generate a matching result, including:
[0023] S1041, perform one-to-one matching of business invoice data and invoice data according to the matching rules constructed during training, and identify the results that meet the matching requirements for each type of data as candidate matches;
[0024] S1042, The candidate matching list calculates the final score based on the weight of each data category, and the matching result with the highest score is selected as a complete match;
[0025] S1043, use the two-pointer search method to match one-to-many and many-to-one results, merge the data, and repeat steps S1041-S1043;
[0026] S1044, use the multi-pointer search method to match the many-to-many results of the remaining data to be matched, merge the data, and repeat steps S1041-S1044.
[0027] S1045, Based on different similarity thresholds, repeat steps S1041-S1044 to match the remaining business invoice data with the invoice data, and the matching result is considered a similar match;
[0028] S1046, the remaining data in the list to be matched is determined to be non-matching; the error of the matching result is determined based on the non-matching data.
[0029] Furthermore, the intelligent matching model for business data adopts a neural network model, including CNN, RNN, GAN, GNN, LSTM, ANN, etc.
[0030] Secondly, a business data intelligent matching method (matching business documents and invoices based on text and numerical similarity) includes:
[0031] S201, Obtain business invoice data to be matched;
[0032] S202, based on the business data intelligent matching model trained by any of the above, perform business data intelligent matching on the business invoice data to be matched to obtain the matched invoice data.
[0033] Thirdly, a training device for an intelligent matching model of business data includes:
[0034] The acquisition module is used to acquire sample data, which includes business invoice data and invoice data, and to construct the association relationship between the business invoice data and invoice data;
[0035] The classification module is used to classify the information fields of the sample data based on a text classification model;
[0036] A rule-building module is used to train and build matching rules based on the numerical type of the information fields of the sample data;
[0037] The matching module is used to match the business invoice data with the invoice data according to the matching rules and generate matching results;
[0038] The determination module is used to determine the end of model training based on the error of the matching result being less than a threshold; otherwise, iterative training is performed.
[0039] Fourthly, a business data intelligent matching device, the device comprising:
[0040] The acquisition module is used to acquire business invoice data to be matched;
[0041] The matching module is used to perform intelligent business data matching on the business invoice data to be matched based on the business data intelligent matching model trained above, so as to obtain matched invoice data.
[0042] Fifthly, a training system for an intelligent matching model of business data, the system comprising a processor and a memory, wherein the processor executes computer instructions stored in the memory to implement any of the methods described in the first aspect above.
[0043] Sixthly, a business data intelligent matching system, the system comprising a processor and a memory, the processor executing computer instructions stored in the memory to implement any of the methods described in the second aspect above.
[0044] A seventh aspect is a computer-readable storage medium that stores computer instructions for causing a computer system to perform any of the methods described in the first aspect.
[0045] Eighth aspect, a computer-readable storage medium storing computer instructions for causing a computer system to perform any of the methods described in the second aspect above.
[0046] This invention discloses a method, apparatus, system, and computer-readable storage medium for intelligent business data matching (matching business documents and invoices based on text and numerical similarity). The intelligent business data matching model incorporates various business elements of business documents into the matching calculation elements, performs composite calculations across multiple business dimensions, combines similarity algorithms and numerical weighting algorithms, establishes pairwise relationships between documents, and intelligently verifies the detailed data of the documents to arrive at a matching conclusion. This solves the problems of low efficiency, high error rate, and limited applicability of conventional industry practices. The training method for the intelligent business data matching model includes: S101, acquiring sample data, which includes business document data and invoice data, and constructing the association between the business document data and invoice data; S102, classifying the information fields of the sample data based on a text classification model; S103, training and constructing matching rules based on the numerical types of the information fields of the sample data; S104, performing data matching between the business document data and invoice data according to the matching rules to generate matching results; S105, determining the end of model training based on the error of the matching results being less than a threshold, otherwise repeating S101-S105 for iterative training. The intelligent matching method for business data includes: S201, obtaining business invoice data to be matched; S202, performing intelligent matching of the business invoice data to be matched based on the intelligent matching model for business data trained above, to obtain matched invoice data.
[0047] The technical solution of the present invention has the following beneficial effects:
[0048] (1) The intelligent matching of business data in this invention can automatically link the enterprise's input invoices and business transaction documents through the matching algorithm, realize online automated matching of the two documents and difference analysis, and form a business closed loop from business to invoice data.
[0049] (2) By incorporating each business element of the document details line into the matching calculation element, performing compound calculations of multiple business dimensions, and combining similarity algorithms and numerical weighting algorithms, pairwise relationships between documents are established, and the document details data are intelligently checked to obtain matching conclusions, thus solving the problems of low efficiency, high error rate and limited applicable scenarios in the industry's conventional practices.
[0050] The above description is merely an overview of the technical solution of the present invention. In order to better understand the technical means of the present invention and to implement it in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the present invention more apparent and understandable, preferred embodiments are described in detail below with reference to the accompanying drawings. Attached Figure Description
[0051] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0052] Figure 1 This is a flowchart of a training method for an intelligent matching model for business data according to an embodiment of the present invention;
[0053] Figure 2 This is a flowchart of a method for intelligent matching of business data according to an embodiment of the present invention;
[0054] Figure 3 This is a structural diagram of a training device for an intelligent matching model of business data according to an embodiment of the present invention;
[0055] Figure 4 This is a structural diagram of a business data intelligent matching device according to an embodiment of the present invention;
[0056] Figure 5 This is a system structure diagram of training or intelligent matching of business data for a business data intelligent matching model according to an embodiment of the present invention;
[0057] Figure 6 This is a schematic diagram of the structure of a computer system for training a business data intelligent matching model or a business data intelligent matching method according to an embodiment of the present invention. Detailed Implementation
[0058] The following specific examples illustrate the implementation of the present invention. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. The present invention can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that, in the absence of conflict, the following embodiments and features in the embodiments can be combined with each other. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.
[0059] It should be noted that various aspects of embodiments within the scope of the appended claims are described below. It will be apparent that the aspects described herein can be embodied in a wide variety of forms, and any particular structure and / or function described herein is merely illustrative. Based on this invention, those skilled in the art will understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects set forth herein can be used to implement the device and / or practice the method. Additionally, this device and / or method can be implemented using structures and / or functionalities other than one or more of the aspects set forth herein.
[0060] It should also be noted that the illustrations provided in the following embodiments are only schematic representations of the basic concept of the present invention. The drawings only show the components related to the present invention and are not drawn according to the actual number, shape and size of the components in the actual implementation. In the actual implementation, the form, quantity and proportion of each component can be arbitrarily changed, and the layout of the components may also be more complex.
[0061] Furthermore, specific details are provided in the following description to facilitate a thorough understanding of the examples. However, those skilled in the art will understand that the described aspects can be practiced without these specific details.
[0062] Currently, existing technologies either require manual intervention for matching business data, resulting in low efficiency and a high error rate; the matching results are likely to require manual review, which is also inefficient; or the dimensions are too singular, leading to a high error rate in establishing relationships, and can only meet some simple business scenarios.
[0063] Figure 1 A training method for a business data intelligent matching model provided in this embodiment of the invention includes:
[0064] S101, Obtain sample data, which includes business invoice data and invoice data, and establish the association between the business invoice data and invoice data;
[0065] In one embodiment, business document data and invoice data include: product name, specifications, unit, quantity, amount, tax amount, and tax rate. The invoice header information includes company information of both parties to the transaction. Transactions between companies can be linked based on company names and order numbers, forming a transaction chain. The two companies in the transaction have a binary relationship, and the transaction data is divided into a source data group and a target data group.
[0066] Each transaction number is unique. Based on each transaction, the two parties involved can be linked. This type of association between the two parties is a binary association, which can be represented as a triple: [buyer, transaction number, seller].
[0067] S102, classify the information fields of the sample data based on the text classification model;
[0068] In one instance, due to differences in the field data of invoices and receipts from different companies, direct matching is not possible. A text classification model is trained to categorize the fields of the invoice and receipt data into four types based on their numerical values: exact text, similar text, exact numerical values, and floating numerical values. Fields within the same category can be matched using the same rules.
[0069] The description fields on business documents from different companies may vary. For example, "product name" might be written as "goods name" in some documents and simply as "product" in others. A model needs to be trained to categorize "goods name" and "product name" together, treating them as similar text fields.
[0070] In one embodiment, the text classification model training method adopts the following approach: based on the BERT pre-trained model, using an invoice and business document corpus as samples for data training, and continuously enriching the corpus in practical applications.
[0071] S103, Train and construct matching rules based on the numerical type of the information field of the sample data;
[0072] In one embodiment, corresponding matching rules are specified for each of the above categories of fields, for example:
[0073] 1. Similar text
[0074] Similarity is calculated using edit distance or language modeling methods. If the similarity value of the text to be matched is greater than a preset threshold, the field is considered a match.
[0075] 2. Precise text
[0076] If the text to be matched is equal to the preset text length, the data is considered a match.
[0077] 3. Precise numerical values
[0078] Under the preset precision threshold, data is considered to be matched if the values to be matched are equal.
[0079] 4. Floating values
[0080] Under the preset conversion ratio and floating threshold, if the difference between the values to be matched after conversion is less than the floating threshold, the data is considered to be matched.
[0081] In one embodiment, specifically for similar character-based data such as product names, irrelevant characters are first removed, then word segmentation is performed, and the similarity is calculated for each group of words separately to improve accuracy. For the language model, pre-training is conducted using industry-related corpora, and multiple language models are trained to optimize the word vector results for specific domains.
[0082] Irrelevant characters, such as '-', '《》', ':', and '**', are removed using regular expressions. The language model is trained similarly to the text classification model described above, except that it uses different corpora for training.
[0083] In one implementation, a relationship network between product names is constructed, with products as nodes and the similarity between product names as edges. Each product has its own unique word embedding representation, which is obtained through training a BERT model.
[0084] In one embodiment, since the fields of a business invoice (e.g., product name) are concentrated in a specific domain related to the invoice business, the traditional BERT model performs poorly in terms of word embedding representation in that domain. To optimize the vector representation of the business invoice fields, the model is improved during the fine-tuning process. Specifically, a label injection approach is used to iteratively improve the relationship graph of the business invoice fields. For example, the specific steps include:
[0085] S1031, use the general pre-trained model BERT to obtain the word embeddings of product names, and use the vector cosine similarity as the value of the edges between business document fields (e.g., product names). At this point, the relationship graph can be initialized:
[0086]
[0087] in This represents the d-dimensional word embedding of the product name field u obtained from BERT, where n represents the product name.
[0088]
[0089] Where S uv The similarity between product name u and product name v is represented by w(u), where w(u) represents the word embedding of product u and w(v) represents the word embedding of product v.
[0090] S1032, use the KNN clustering method to assign an initial label to each product name node. The label type can be specified by k, and a one-hot encoding method is used to obtain the vectorized label. Let i represent the vectorized label, where i represents the i-th category and k represents the dimension of the label vector.
[0091] S1033, after embedding and concatenating the vectorized tags with the product name, a vector representation containing tag information is obtained. in, Represents the composite vector. This represents the d-dimensional word embedding of the product name field u obtained from BERT. Represents vectorized labels;
[0092] S1034. The newly synthesized product name vector is input into the BERT model for fine-tuning, and a new BERT model is trained, which has a better representation of product names.
[0093]
[0094] Where P is the conditional probability, H is the latent vector, and W1 is the latent vector. T W2 represents the network weights, σ is an adjustable bias parameter that represents the degree of attention the model pays to vector E. T The weight of E.
[0095] The model's loss function is Where L represents the loss and n is the size of the information field set.
[0096] S1035, use the new representation as the product name word embedding, and update the original product name relationship graph.
[0097] S1036, Repeat steps S1032-S1035 until the final product similarity meets the threshold requirement, then stop the loop.
[0098] The optimized business document field (e.g., product name) relationship network, achieved through the above steps, can effectively retrieve similar products, improving matching accuracy.
[0099] The model's learning of product name vector representations is corrected by adding bias parameters during model training, and the model is further optimized through a cyclic iterative training framework.
[0100] In one embodiment, specifically for conversion ratios of floating numerical values, there are two conversion methods: percentage conversion and absolute value conversion. Percentage conversion: Calculated as a percentage of the total number of current values, matching data can be matched if the difference between the matched data and the current value is within the range above and below the percentage calculation. Absolute value conversion: Matching data can be matched if the difference between the matched data and the current data is within the range above and below the absolute value.
[0101] Example as follows:
[0102] Example 1: The pre-set error range is 10%. The unit price of the product "*basic chemicals*foaming agent" on Company A's invoice is 8 yuan, and the error value is 8 * 10% = 8.8 yuan. On the invoice issued by Company B to Company A, the product is "*basic chemicals*foaming agent" with a unit price of 8.5 yuan. Within the allowable error range, the matching can be successful.
[0103] Example 2: The pre-set error range is 3. The unit price of the product "*Drawing and Measuring Instrument* Circular Stylus" on Company A's invoice is 100 yuan, with an error value between 97 and 103 yuan. On the invoice issued by Company B to Company A, the product is "*Drawing and Measuring Instrument* Circular Stylus", with a unit price of 102 yuan. This is within the allowable error range and can be matched successfully.
[0104] S104, perform data matching between the business invoice data and the invoice data according to the matching rules, and generate a matching result;
[0105] In one embodiment, it specifically includes:
[0106] S1041, perform one-to-one matching of business invoice data and invoice data according to the matching rules constructed during training, and identify the results that meet the matching requirements for each type of data as candidate matches;
[0107] In one embodiment, the numerical type does not necessarily include all four types described in S103; a match can be determined as long as each numerical type satisfies the matching requirements.
[0108] Specifically, one-to-one matching becomes significantly less efficient when dealing with data volumes exceeding ten thousand records. Distributed computing can improve matching efficiency. First, the data to be matched is split by identifying grouping fields, typically precise character data such as "seller" or "buyer." After grouping, the number of threads is configured based on server performance. Within each thread, pruning is performed, skipping data groups that do not conform to the precise character fields to accelerate matching. Due to the uneven distribution of grouped data, larger groups are further grouped, splitting the data based on the system-configured bucket size. Each bucket is allocated an additional thread for matching calculations. During the data merging process after matching, the bucket size is also used to measure the amount of data to be merged, and the corresponding number of threads are started based on the number of buckets.
[0109] S1042, The candidate matching list calculates the final score based on the weight of each data category, and the matching result with the highest score is selected as a complete match;
[0110] In one embodiment, similar textual data and floating numerical data are weighted in a multiplicative manner.
[0111] Score 相似文本型(t) =S ij *W t
[0112] Among them, S ij This indicates the similarity between string i and string j;
[0113] Similarity was assessed using several methods: 1. Cosine similarity of word vectors in the text model; 2. Jaro distance between texts; 3. Levenshtein distance, etc. The specific method chosen depends on the input parameters and is manually set.
[0114] Wt represents the weight corresponding to this text data;
[0115] Weights are input parameters of the matching system and are set manually.
[0116]
[0117] in,
[0118] Rt represents the conversion ratio of this floating numerical data;
[0119] di represents the source data value;
[0120] dj represents the target data value;
[0121] δt represents the floating threshold of this floating numerical data;
[0122] Wt represents the weight corresponding to this floating numerical data;
[0123] Weights are input parameters of the matching system and are set manually.
[0124] The final score is obtained by summing the weights of all data types.
[0125] S1043, use the two-pointer search method to match one-to-many and many-to-one results, merge the data, and repeat steps S1041-S1043;
[0126] In one embodiment, multiple data entries are merged according to the following rules:
[0127] R1. Similar Text
[0128] The similarity between any two text data points must meet the threshold requirement, and multiple data points will be merged based on the average similarity.
[0129] For example: An invoice contains product A, and a statement contains products B, C, and D. The similarity between A and B is 0.8, between A and C is 0.9, and between A and D is 0.7. The set similarity threshold is 0.75. Only B and C meet the threshold, and after merging, subsequent one-to-one matching is performed based on the similarity (0.8 + 0.9) / 2 = 0.85.
[0130] R2. Precise Text
[0131] The requirement is that any two pieces of text data must be identical, and either text will be used as the value of this field.
[0132] R3. Precise value
[0133] A. It can sum and merge multiple data entries.
[0134] Some fields, such as amounts, have the characteristic of being cumulatively matched. For example, the amount of product A in the invoice is 100, the amount of product B in the statement is 40, and the amount of product C is 60. Then, when merging, B and C are summed, and the final amount is equal to the amount of A. If other fields match, then A is considered to be matched with B, and C is considered to be matched with one-to-many pairs.
[0135] B. Cannot be accumulated
[0136] For fields that cannot be accumulated, the following conditions must be met: any two numerical data points must be equal, and either value must be taken as the final value. For example, for unit price, if the unit price of item A in the invoice is 10, the unit price of item B in the statement is 4, and the unit price of item C is 6, then A does not have a one-to-many match with B and C. B and C cannot be combined to 10. However, if the unit price of items E and F in another statement is also 10, then under other conditions, A can be considered a match with E and F, and the combined unit price will be 10.
[0137] R4. Floating Value
[0138] A. It can sum and merge multiple data entries.
[0139] B. For non-cumulative data, the difference between any two data points must meet the threshold requirement, and the final value should be stored as a list.
[0140] Assume the threshold for floating values is 0.1. The invoice shows item A at 29.9, the statement shows item B at 29.8, item C at 30, and item D at 29. The final merging considers A to match B and C, and merges B and C into a list [29.8, 30] as the merged amount field value.
[0141] Specifically, different merging rules are configured for different types of field data. The two-pointer search method is described as follows: select an additive numeric field in the parameter configuration, use a filtering algorithm to determine the pointer field, sort the field, set a head pointer and a tail pointer to perform iterative search, and merge multiple data entries into a single data entry according to the rules.
[0142] S1044, use the multi-pointer search method to match the many-to-many results of the remaining data to be matched, merge the data, and repeat steps S1041-S1044.
[0143] Specifically, the data merging method is the same as S1043. The multi-pointer search method is similar to the two-pointer search method, except that a head pointer and a tail pointer are set for the source data and the target data respectively, and iterative search is performed simultaneously.
[0144] S1045, Based on different similarity thresholds, repeat steps S1041-S1044 to match the remaining business invoice data with the invoice data, and the matching result is considered a similar match;
[0145] In one embodiment, different thresholds can be set for similar textual data and floating numerical data to distinguish between exact matches and similar matches. Generally, exact matches are selected based on the highest threshold, while similar matches can be categorized into multiple classes based on other thresholds to meet the needs of different business scenarios.
[0146] S1046, the remaining data in the list to be matched is determined to be non-matching; the error of the matching result is determined based on the non-matching data.
[0147] In one embodiment, specifically, the remaining data consists of data that does not fully satisfy the matching results for all data types.
[0148] S105, if the error of the matching result is less than the threshold, determine to end the training of the model; otherwise, repeat S101-S105 for iterative training.
[0149] Furthermore, the intelligent matching model for business data adopts a neural network model, including CNN, RNN, GAN, GNN, LSTM, ANN, etc.
[0150] Figure 2 Here is a flowchart of a method for intelligent matching of business data according to one embodiment. The method includes:
[0151] S201, Obtain business invoice data to be matched;
[0152] S202, Based on the business data intelligent matching model trained above, perform business data intelligent matching on the business invoice data to be matched to obtain matched invoice data.
[0153] Figure 3 A training apparatus for an intelligent matching model of business data provided in an embodiment of the present invention includes:
[0154] The acquisition module is used to acquire sample data, which includes business invoice data and invoice data, and to construct the association between the business invoice data and invoice data;
[0155] The classification module is used to classify the information fields of sample data based on a text classification model;
[0156] A rule-building module is used to train and build matching rules based on the numerical type of the information fields of the sample data;
[0157] The matching module is used to match the business invoice data with the invoice data according to the matching rules and generate matching results;
[0158] The determination module is used to determine the end of model training based on the error of the matching result being less than a threshold; otherwise, the functions of the acquisition module, classification module, rule construction module, and matching module are repeatedly executed for iterative training.
[0159] Figure 4 One embodiment of a business data intelligent matching device includes:
[0160] The acquisition module is used to acquire business invoice data to be matched;
[0161] The matching module is used to perform intelligent business data matching on the business invoice data to be matched based on the trained business data intelligent matching model, so as to obtain the matched invoice data.
[0162] Figure 5 A structural block diagram of an electronic device according to an embodiment of this application is shown.
[0163] The foregoing embodiments describe a training method and system for an intelligent matching model of business data. In one possible design, the aforementioned training method and system for the intelligent matching model of business data can be integrated into an electronic device. For example... Figure 5 As shown, the electronic device 500 may include a processor 501 and a memory 502.
[0164] The memory 502 is used to store programs that support the processor in executing the training method of the intelligent matching model for business data in any of the above embodiments, and the processor 501 is configured to execute the programs stored in the memory 502.
[0165] The memory 502 is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor 501 to implement the steps in the above embodiments, and the steps will not be described in detail here.
[0166] Figure 6 This is a schematic diagram of the structure of a computer system suitable for implementing the community malicious access behavior identification method according to an embodiment of this application.
[0167] like Figure 6 As shown, the computer system 600 includes a processor (CPU, GPU, FPGA, etc.) 601, which can execute some or all of the processes shown in the embodiments above, based on a program stored in a read-only memory (ROM) 602 or a program loaded from a storage section 608 into a random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of the system 600. The processor 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0168] The following components are connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 610 as needed so that computer programs read from it can be installed into storage section 608 as needed.
[0169] In particular, according to embodiments of this application, the methods described above with reference to the accompanying drawings can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program tangibly embodied on a readable medium thereof, the computer program containing program code for performing the methods in the drawings. In such an embodiment, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611.
[0170] It should be noted that the computer-readable medium described above in this invention can be a computer-readable signal medium, a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0171] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0172] The aforementioned computer-readable medium carries one or more programs, which, when executed by the electronic device, cause the electronic device to implement all or part of the steps of the multimodal interaction implementation methods of the various embodiments of the present invention described above.
[0173] Alternatively, the aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to perform all or part of the steps of the multimodal interaction implementation method of the various embodiments of the present invention described above.
[0174] Computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof. These programming languages include object-oriented programming languages—such as Java, Smalltalk, and C++—and conventional procedural programming languages—such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0175] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0176] The units described in the embodiments of the present invention can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".
[0177] The above description is merely a preferred embodiment of the present invention and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this invention is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this invention.
Claims
1. A method for training a business data intelligent matching model, comprising: S101, obtaining sample data, the sample data comprising business ticket data and invoice data, and constructing an association relationship between the business ticket data and the invoice data; S102, classifying information fields of the sample data based on a text classification model; S103, training and constructing a matching rule according to a numerical type of the information fields of the sample data; S104, performing data matching between the business ticket data and the invoice data according to the matching rule to generate a matching result; S105, determining to end the training of the model based on an error of the matching result being less than a threshold value, or otherwise repeating steps S101-S105 for iterative training; S104, performing data matching between the business ticket data and the invoice data according to the matching rule to generate a matching result, comprising: S1041, performing one-to-one matching between the business ticket data and the invoice data according to the matching rule trained and constructed, and identifying a result meeting matching requirements for each type of data as a candidate matching; S1042, calculating a final score of a candidate matching list according to a weight of each type of data, and identifying a matching result with the highest score as a complete matching; S1043, using a double-pointer search method to match one-to-many and many-to-one results, merging data, and repeating steps S1041-S1043; S1044, using a multi-pointer search method to match many-to-many results of remaining data in a matching list, merging data, and repeating steps S1041-S1044; S1045, repeating steps S1041-S1044 to match the remaining business ticket data and the invoice data according to different similarity thresholds, and identifying a matching result as a similar matching; S1046, identifying final remaining data in the matching list as not matching, and determining an error of the matching result based on the not matching data.
2. The method of claim 1, wherein the step S103 of training the constructing matching rule according to the value type of the information field of the sample data comprises: For similar character type data, a trained Bert model is used to perform information field matching; For floating numerical type, a floating range is used for similar matching. 3.The method of claim 2, wherein in a fine-tuning process of the Bert model, a label injection method is used to perform cyclic iteration to improve a relationship graph of the information field. 4.The method of claim 2, wherein a newly synthesized information field vector is input into the Bert model for fine-tuning to train an updated Bert model, and a model formula is represented as: wherein P is a conditional probability, H is a hidden vector, W1T is a network weight, σ is an adjustable bias parameter, which represents a degree of attention of the model to the vector E, and W2T is a weight of E. 5.A business data intelligent matching method, comprising: The loss function of the model is where L represents the loss, and n is the size of the information field set. S201, obtaining business ticket data to be matched; S202, performing business data intelligent matching on the business ticket data to be matched based on a business data intelligent matching model trained according to any one of claims 1-4 to obtain matched invoice data. 6.A training device for a business data intelligent matching model, comprising: An acquisition module is configured to acquire sample data, wherein the sample data comprises business ticket data and invoice data, and to construct a correlation between the business ticket data and the invoice data; A classification module is configured to classify information fields of the sample data based on a text classification model; A rule construction module is configured to train and construct a matching rule according to a numerical type of the information fields of the sample data; A matching module is configured to perform data matching between the business ticket data and the invoice data based on the matching rule, and to generate a matching result; A determination module is configured to determine whether to end the training of the model based on whether an error of the matching result is less than a threshold value, and to perform iterative training otherwise. The data matching between the business ticket data and the invoice data based on the matching rule to generate a matching result comprises: S1041. The business ticket data and the invoice data are matched one by one according to the matching rule trained and constructed, and a result that meets the matching requirement for each type of data is identified as a candidate matching; S1042. A final score of a candidate matching list is calculated according to a weight of each type of data, and a matching result with the highest score is identified as a complete matching; S1043. A double-pointer search method is used to match one-to-many and many-to-one results, and data is merged, and steps S1041-S1043 are repeated; S1044. A multi-pointer search method is used to match many-to-many results of the remaining data in the matching list, and data is merged, and steps S1041-S1044 are repeated; S1045. According to different similarity thresholds, steps S1041-S1044 are repeated to match the remaining business ticket data and invoice data, and a matching result is identified as a similar matching; S1046. Finally, the remaining data in the matching list is identified as not matching, and an error of the matching result is determined based on the not matching data.
7. A business data intelligent matching device, the device comprising: An acquisition module is configured to acquire sample data, wherein the sample data comprises business ticket data and invoice data, and to construct a correlation between the business ticket data and the invoice data; A classification module is configured to classify information fields of the sample data based on a text classification model; A rule construction module is configured to train and construct a matching rule according to a numerical type of the information fields of the sample data; A matching module is configured to perform data matching between the business ticket data and the invoice data based on the matching rule, and to generate a matching result; A determination module is configured to determine whether to end the training of the model based on whether an error of the matching result is less than a threshold value, and to perform iterative training otherwise.
7. A business data intelligent matching device, the device comprising: An acquisition module is configured to acquire sample data, wherein the sample data comprises business ticket data and invoice data, and to construct a correlation between the business ticket data and the invoice data; A classification module is configured to classify information fields of the sample data based on a text classification model; A rule construction module is configured to train and construct a matching rule according to a numerical type of the information fields of the sample data; A matching module is configured to perform data matching between the business ticket data and the invoice data based on the matching rule, and to generate a matching result; A determination module is configured to determine whether to end the training of the model based on whether an error of the matching result is less than a threshold value, and to perform iterative training otherwise.
7. A business data intelligent matching device, the device comprising: An acquisition module is configured to acquire sample data, wherein the sample data comprises business ticket data and invoice data, and to construct a correlation between the business ticket data and the invoice data; A classification module is configured to classify information fields of the sample data based on a text classification model; A rule construction module is configured to train and construct a matching rule according to a numerical type of the information fields of the sample data; A matching module is configured to perform data matching between the business ticket data and the invoice data based on the matching rule, and to generate a matching result; A determination module is configured to determine whether to end the training of the model based on whether an error of the matching result is less than a threshold value, and to perform iterative training otherwise.
9. A computer readable storage medium for storing non-transitory computer readable instructions, which, when executed by a computer, cause the computer to perform the method of any one of claims 1-5.
Citation Information
Patent Citations
Data matching method and device, computer readable medium and electronic equipment
CN111667923A
Dynamic authority control method, system and device and storage medium
CN116738391A
Invoice management method and system, storage medium and equipment
CN116777541A