Data matching method and device, computer equipment and computer readable storage medium

Through preset relationship tables and similarity matching, the problem of matching data and text data is solved, and effective matching of data and text data is achieved.

CN119537968APending Publication Date: 2025-02-28KINGDEE SOFTWARE(CHINA) CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411908226.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-20
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

It is difficult for the prior art to effectively match data and text data, mainly due to the difference in formats of the two, the traditional text similarity matching method cannot be directly applied.

Method used

By configuring the association of the prompt with business objects and field identifiers through the preset relationship table, the candidate data identification is obtained and the description field is extracted from these data. Then, the target data data is determined based on the similarity between the description field and the text data.

Benefits of technology

It realizes effective matching between data and text data, and converts it into matching between text and text, thus solving the matching difficulties caused by format differences.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119537968A_ABST
    Figure CN119537968A_ABST
Patent Text Reader

Abstract

The invention relates to a data matching method and device, computer equipment, a computer readable storage medium and a computer program product. The method comprises the steps of obtaining to-be-matched text data; determining a business object matched with the text data based on a matching result of the text data and prompt words in a preset relation table, and obtaining a candidate data identifier based on a field identifier of the business object; extracting a description field of the candidate data from the candidate data corresponding to the candidate data identifier; and based on the similarity between the description field of each candidate data and the text data, determining target data matched with the text data from the candidate data. According to the method and the device, matching between the data data and the text data is converted into matching between texts, so that effective matching between the data data and the text data is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing, and in particular to a data matching method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Art

[0002] In the field of data processing, data matching is a crucial task that involves identifying and associating similar or related records from a large amount of data. General data matching is mainly based on the similarity between texts, and the degree of matching is evaluated by comparing the text content. Some data follows a specific structural framework to store data and is called through coding references, such as assigning a unique long integer value to each data item, which saves storage space and facilitates retrieval and calling.

[0003] The data is circulated in a coded format, while the data to be matched is often presented in a text format. The difference between the two formats makes it difficult to match the data and text data through traditional text similarity matching methods. How to achieve effective matching based on this difference has become an urgent problem to be solved in the field of data processing. Summary of the invention

[0004] Based on this, it is necessary to provide a data matching method, device, computer equipment, computer-readable storage medium and computer program product that can achieve matching of document data and text data in response to the above technical problems.

[0005] In a first aspect, the present application provides a data matching method, comprising:

[0006] Get the text data to be matched;

[0007] Based on the matching result between the text data and the prompt words in the preset relationship table, determining the business object matching the text data, and obtaining the candidate data identifier based on the field identifier of the business object, wherein the preset relationship table is used to characterize the association relationship between the prompt words and the business objects;

[0008] Extracting a description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier;

[0009] Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

[0010] In a second aspect, the present application provides a data matching device, comprising:

[0011] A text acquisition module, used to acquire text data to be matched;

[0012] A data candidate module, for determining a business object matching the text data based on a matching result between the text data and a prompt in a preset relationship table, and obtaining a candidate data identifier based on a field identifier of the business object, wherein the preset relationship table is used to characterize an association relationship between the prompt and the business object;

[0013] A description extraction module, configured to extract a description field of the candidate data from the candidate data corresponding to the candidate data identifier;

[0014] The data determination module is used to determine target material data matching the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data.

[0015] In a third aspect, the present application provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following is achieved:

[0016] Get the text data to be matched;

[0017] Based on the matching result between the text data and the prompt words in the preset relationship table, determining the business object matching the text data, and obtaining the candidate data identifier based on the field identifier of the business object, wherein the preset relationship table is used to characterize the association relationship between the prompt words and the business objects;

[0018] Extracting a description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier;

[0019] Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

[0020] In a fourth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements:

[0021] Get the text data to be matched;

[0022] Based on the matching result between the text data and the prompt words in the preset relationship table, determining the business object matching the text data, and obtaining the candidate data identifier based on the field identifier of the business object, wherein the preset relationship table is used to characterize the association relationship between the prompt words and the business objects;

[0023] Extracting a description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier;

[0024] Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

[0025] In a fifth aspect, the present application provides a computer program product, including a computer program, which, when executed by a processor, implements:

[0026] Get the text data to be matched;

[0027] Based on the matching result between the text data and the prompt words in the preset relationship table, determining the business object matching the text data, and obtaining the candidate data identifier based on the field identifier of the business object, wherein the preset relationship table is used to characterize the association relationship between the prompt words and the business objects;

[0028] Extracting a description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier;

[0029] Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

[0030] The above data matching method, device, computer equipment, computer readable storage medium and computer program product obtain text data to be matched; based on the matching result between the text data and the prompt in the preset relationship table, determine the business object matching the text data, and obtain the candidate data identifier based on the field identifier of the business object, the preset relationship table is used to characterize the association between the prompt and the business object; extract the description field of the candidate data from the candidate data corresponding to the candidate data identifier; based on the similarity between the description field of each candidate data and the text data, determine the target data matching the text data from the candidate data. The present application configures the association between various prompts and business objects and field identifiers through the preset relationship table, and selects the candidate data identifier from a large number of data identifiers based on the determined field identifier. By determining the similarity between the description field of each candidate data and the text data, the description field and the text data can be matched. Since the description field is the text describing the data data, the matching of the data data and the text data is converted into the matching between texts, thereby achieving the effective matching of the data data and the text data. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0032] FIG1 is an application environment diagram of a data matching method in one embodiment;

[0033] FIG2 is a schematic diagram of a flow chart of a data matching method in one embodiment;

[0034] FIG3 is a schematic diagram of the execution logic of removing stop words in one embodiment;

[0035] FIG4 is a schematic diagram of constructing a maximum heap in one embodiment;

[0036] Figure 5 A schematic diagram of the architecture of a data matching system in one embodiment;

[0037] Figure 6 A schematic diagram of a flow chart of a data matching system in one embodiment;

[0038] Figure 7 is another schematic diagram of a flow chart of a data matching system in one embodiment;

[0039] Figure 8 is another flow chart of a data matching system in one embodiment;

[0040] FIG9 is a structural block diagram of a data matching device in one embodiment;

[0041] FIG10 is a structural block diagram of a data matching device in another embodiment;

[0042] FIG11 is a diagram showing the internal structure of a computer device in one embodiment;

[0043] FIG. 12 is a diagram showing the internal structure of a computer device in another embodiment. DETAILED DESCRIPTION

[0044] In order to make the purpose, technical scheme and advantages of the present application more clear, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used in the description of the present application. If there is a description of the first and the second, it is only for the purpose of distinguishing the technical features, and cannot be understood as indicating or implying the relative importance or implicitly indicating the number of the indicated technical features or implicitly indicating the order of the indicated technical features.

[0045] In the description of this application, unless otherwise clearly defined, terms such as setting, installing, connecting, etc. should be understood in a broad sense, and technicians in the relevant technical field can reasonably determine the specific meanings of the above terms in this application based on the specific content of the technical solution.

[0046] At present, data matching is mainly based on the similarity between texts. The similarity between texts is calculated through a certain mathematical model, and sorted according to the similarity to find the text that is most similar to the target text. The similarity matching methods between texts include vocabulary-based similarity matching methods and semantic-based similarity matching methods.

[0047] Similarity matching methods based on vocabulary include cosine similarity matching and Jaccard similarity matching. Among them, cosine similarity matching measures the similarity between two text vectors by calculating the cosine value of the angle between them. The advantages of cosine similarity matching are simple calculation and high efficiency, but since it only considers word frequency information and does not consider semantics and context information, it is only suitable for scenarios such as short text and keyword matching. Jaccard similarity matching is based on set theory methods and evaluates similarity by calculating the ratio of the intersection and union of the word sets in two texts. The advantages of Jaccard similarity matching are simple calculation and easy to understand, but it also does not consider semantics and context, and has limited processing capabilities for synonyms and polysemous words, so it is only suitable for simple text classification and clustering tasks.

[0048] Semantic-based similarity matching methods include latent semantic analysis matching, pre-trained model matching, etc. Among them, latent semantic analysis matching maps text to latent semantic space and extracts semantic information through singular value decomposition. The advantage of latent semantic analysis matching is that it uses context to improve matching accuracy, but it requires a large amount of corpus and computing resources, and has high preprocessing requirements. Therefore, it is only suitable for text similarity matching and semantic analysis of large corpora. Pre-trained model matching uses deep learning and natural language processing to extract text semantics. The advantage of pre-trained model matching is that it can accurately process complex text relationships and semantic information, but the disadvantage is that it requires a large amount of data and computing resources, and training is time-consuming. This technology is suitable for tasks with high precision requirements, such as information retrieval and question-answering systems.

[0049] On some business platforms, data represents the data of a business object with a code. These data have actual business meanings in the system and may have a hierarchical relationship with other data. The main attributes include code, name, description, etc. The code usually uses a text field as the unique identifier of the data, while the name can use a text or multilingual text field to identify the name of the data.

[0050] Document data follows a specific structural framework, and its content is stored in the database in the form of codes (such as long integer values). This difference makes similarity matching between document data and text data particularly complex and challenging. Since text and long integer values ​​are inherently incompatible, the above-mentioned vocabulary- or semantic-based matching methods are inadequate when applied to matching document data and text data and cannot be directly applied.

[0051] The present application provides a data matching method, which converts the matching of document data and text data into the matching between texts, thereby achieving effective matching of document data and text data.

[0052] Please refer to FIG. 1, which is an application environment diagram of a data matching method in an embodiment. The data matching method provided in the embodiment of the present application can be applied in the application environment shown in FIG. 1. Among them, the terminal 102 communicates with the server 104 through the network. The data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other servers.

[0053] The terminal 102 may be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, an IoT device, and a portable wearable device. The IoT device may be a smart speaker, a smart TV, a smart air conditioner, and a smart vehicle-mounted device, etc. The portable wearable device may be a smart watch, a smart bracelet, a head-mounted device, etc.

[0054] The server 104 may be an independent physical server or a service node in a blockchain system, wherein each service node in the blockchain system forms a peer-to-peer (P2P) network, and the P2P protocol is an application layer protocol running on the Transmission Control Protocol (TCP) protocol. In addition, the server 104 may also be a server cluster composed of multiple physical servers, and may be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.

[0055] The terminal 102 and the server 104 may be connected via Bluetooth, USB (Universal Serial Bus) or a network or other communication connection methods, which are not limited in this application.

[0056] Both the terminal and the server can be used independently to execute the data matching method provided in the embodiments of the present application.

[0057] For example, the server obtains the text data to be matched, determines the business object matching the text data based on the matching result between the text data and the prompt in the preset relationship table, and obtains the candidate material data identifier based on the field identifier of the business object, and the preset relationship table is used to characterize the association between the prompt and the business object. The server extracts the description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier, and determines the target material data matching the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data.

[0058] In addition, the terminal and the server can also be used together to execute the data matching method provided in the embodiments of the present application.

[0059] For example, the terminal obtains the text data to be matched, and sends the text data to be matched to the server.

[0060] The server determines the business object that matches the text data based on the matching result between the text data and the prompt in the preset relationship table, and obtains the candidate material data identifier based on the field identifier of the business object. The preset relationship table is used to characterize the association between the prompt and the business object. The server extracts the description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier, and sends the candidate material data and its description field to the terminal. The terminal determines the target material data that matches the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data.

[0061] Please refer to 2, which is a flow chart of a data matching method in an embodiment. In one embodiment, as shown in FIG2, a data matching method is provided, which is described by taking the method executed by the server in FIG1 as an example, and includes the following steps:

[0062] Step S202, obtaining text data to be matched.

[0063] The text data to be matched is the original text content used to compare or match with the document data to find similar or related information. The text data to be matched can come from the query text entered by the user, the descriptive text in the database, or the text information imported from the external system.

[0064] In one embodiment, the text data to be matched may be text data returned by GPT (Generative Pre-trained Transformer). When using GPT to obtain the text data to be matched, we can input corresponding prompts or instructions to the GPT model according to the specific requirements of the matching task. After receiving these inputs, the GPT model uses its powerful text generation capabilities to output highly flexible and diverse text data related to the input prompts or instructions.

[0065] After obtaining the text data to be matched, the text data to be matched can be preprocessed, including removing irrelevant characters in the text, unifying the text format, and performing text cleaning, etc., to improve the quality of the text data and facilitate subsequent matching operations.

[0066] Step S204, based on the matching result between the text data and the prompt words in the preset relationship table, determine the business object matching the text data, and obtain the candidate material data identifier based on the field identifier of the business object.

[0067] Data refers to a collection of information about business objects that are uniquely identified with specific codes and stored in the database on the business platform, have actual business meanings, and may be associated with other data. In some cases, data is stored in a structured manner in the database, represented by rows of metadata in the database, and each row of metadata has a corresponding identifier, name, description, etc.

[0068] Please refer to Table 1, which lists the data related to ability and quality.

[0069] Table 1

[0070]

[0071] In the data shown in Table 1, each row of metadata includes a data identifier, a name of the data, a dimension to which the data belongs, and a description of the data. The data identifier is used to uniquely identify the data in the row, and the description is used to provide a textual description of the content referred to by the data in the row.

[0072] The data is stored in a database and is called up through data identifiers. When it is necessary to match the corresponding data to the text data to be matched, it is difficult to determine the degree of association between each data and the text data based on the data identifiers. The embodiment of the present application provides a preset relationship table for realizing the preliminary association between text data and data data.

[0073] Please refer to Table 2, which is an example of a preset relationship table. The preset relationship table is a relationship table of pre-configured prompts and business object codes, field identifiers, etc., which is used to represent the association between prompts and business objects.

[0074] Table 2

[0075]

[0076] The business object is a software component or abstract entity used to identify and process business data, the prompt is text information associated with the business object, and the JSON KEY in Table 2 is the business object code. For example, the business object corresponding to the prompt "Automatically generate recruitment JD" can be a recruitment brochure.

[0077] The field identifier is used to identify the field corresponding to the business object. For example, the business object "Recruitment Brochure" can contain fields such as age and gender. The field type is used to indicate the type of the field corresponding to the field identifier, which can include data type and non-data type.

[0078] After obtaining the text data to be matched, the text data is matched with the prompt words in the preset relationship table to determine the target prompt words that the text data matches. Then, the corresponding business object is matched in the preset relationship table based on the target prompt words, and the candidate data identifier is obtained based on the field identifier of the business object.

[0079] The field indicated by the field identifier of the business object needs to be filled with corresponding data. The field type corresponding to the field identifier is used to characterize the type of data filled in the field. When the field type corresponding to the field identifier is material data, it means that data of the material data type should be filled in the field corresponding to the field identifier. Furthermore, after the business object corresponding to the text data is determined, the material data identifier corresponding to the field identifier of the business object can be used as a candidate material data identifier, thereby filtering out material data related to the text data from a large amount of material data.

[0080] Step S206: extracting description fields of the candidate material data from the candidate material data corresponding to the candidate material data identifier.

[0081] Since each material data identifier uniquely refers to an item of material data, after determining the candidate material data identifiers, the material data corresponding to each candidate material data identifier can be obtained as the candidate material data, and the description field of each candidate material data can be extracted.

[0082] Step S208: determining target data that matches the text data from the candidate data based on the similarity between the description field of each candidate data and the text data.

[0083] The description field is descriptive information in text format for describing the content of the data, as described in Table 1. Since the description field and the text data to be matched are both in text format, the similarity between the description field and the text data of each candidate data can be determined by using a traditional text similarity matching method.

[0084] When determining the similarity between the description field and the text data of each candidate data, the aforementioned semantic-based matching method can be used to determine the similarity between the description field and the text data. Alternatively, the description field and the text data are processed into word segmentation results, and the aforementioned vocabulary-based matching method is used to determine the similarity between the word segmentation results of the description field and the word segmentation results of the text data. This application does not limit this.

[0085] Since the description field is descriptive information used to describe the content of the material data, the similarity between the description field of each candidate material data and the text data can represent the degree of association between each candidate material data and the text data. The candidate material data corresponding to the description field with a higher similarity has a deeper degree of association with the text data to be matched, and the candidate material data corresponding to the description field with a lower similarity has a shallower degree of association with the text data to be matched. Furthermore, the candidate material data corresponding to one or more description fields with the highest similarity can be determined as the target material data to be matched with the text data based on needs.

[0086] In one embodiment, the name field of the candidate data may be extracted from the candidate data corresponding to the candidate data identifier. The similarity with the text data is determined based on the description field and the name field of each candidate data. For example, the name field and the description field of the candidate data are combined to obtain a combined field, and based on the similarity between the combined field of each candidate data and the text data, the target data matching the text data is determined from the candidate data. The method for determining the similarity between each combined field and the text data can refer to the description of determining the similarity between the description field and the text data, and will not be repeated here.

[0087] In the above data matching method, the text data to be matched is obtained; based on the matching result between the text data and the prompt words in the preset relationship table, the business object matching the text data is determined, and the candidate data identifier is obtained based on the field identifier of the business object, and the preset relationship table is used to characterize the association between the prompt words and the business object; from the candidate data corresponding to the candidate data identifier, the description field of the candidate data is extracted; based on the similarity between the description field of each candidate data and the text data, the target data matching the text data is determined from the candidate data. The present application configures the association between various prompt words and business objects and field identifiers through the preset relationship table, and selects the candidate data identifiers from a large number of data identifiers based on the determined field identifiers. By determining the similarity between the description field of each candidate data and the text data, the matching of the description field and the text data can be achieved. Since the description field is the text describing the data data, the matching of the data data and the text data is converted into the matching between texts, thereby achieving the effective matching of the data data and the text data.

[0088] In one embodiment, the preset relationship table includes an association relationship between a prompt and a business object code, a field identifier of the business object, and a field type of the field identifier. Based on the matching result between the text data and the prompt in the preset relationship table, a business object matching the text data is determined, and based on the field identifier of the business object, a candidate material data identifier is obtained, which includes:

[0089] Determine a target prompt that matches the text data; determine a business object code corresponding to the target prompt based on a preset relationship table; determine a target field identifier whose field type is data data from the field identifier corresponding to the business object code; obtain the data data identifier contained in the field attribute of the target field as a candidate data data identifier.

[0090] After obtaining the text data to be matched, the text data is matched with the prompt words in the preset relationship table to determine the target prompt words that the text data matches. When matching the text data with the prompt words in the preset relationship table, the text data and each prompt word can be matched based on semantic similarity, or after the text data is segmented, the segmentation result of the text data is matched with each prompt word based on the vocabulary similarity matching method to determine the target prompt words that the text data matches.

[0091] The preset relationship table provided in the embodiment of the present application includes the business object code of each business object, the field identifier of the business object, and the association relationship of the field type of the field identifier. The preset relationship table can realize dynamic maintenance. When a new prompt or a new business object is introduced into the business system, a complete prompt and business object code, field identifier of the business object, and the association relationship of the field type of the field identifier are configured for the newly introduced prompt or business object, and added to the preset relationship table to dynamically expand the scope of use of the prompt word and the data data.

[0092] Based on the dynamically maintained preset relationship table, the corresponding business object and business object code can be matched in the preset relationship table based on the target prompt, and the target field identifier with the field type of data data is obtained based on the business object code, and then the data data identifier corresponding to the target field identifier is determined as the candidate data data identifier.

[0093] The material data identifier corresponding to the target field identifier can be determined by the field attribute of the target field corresponding to the target field identifier. The field attribute of each field includes the material data or non-material data that needs to be filled in the field, wherein the material data is referred to by the material data identifier. Therefore, if the material data identifier is obtained from the field attribute of the target field corresponding to the target field identifier, it can be used as a candidate material data identifier, thereby filtering out material data related to text data from a large amount of material data.

[0094] In one embodiment, determining the target field identifier whose field type is data data from the field identifier corresponding to the business object code includes:

[0095] Obtain the main entity model corresponding to the business object code, and obtain the field identifier contained in the main entity model; or obtain the field identifier corresponding to the business object code based on a preset relationship table; determine the target field identifier whose field type is data data from the field identifier.

[0096] Each business object code is associated with a master entity model of the business object. The master entity model is a data structure or framework designed for a specific business object to represent its key attributes. For example, when the business object is a recruitment brochure, the master entity model can be a recruitment brochure template. The same business object can correspond to multiple business object codes. Please refer to Table 2. Taking Table 2 as an example, the business object "tsirm_positionir_view" is associated with 4 business object codes, namely "jobage", "jobdegree", "jobduty" and "jobrequire", and each business object is associated with a master entity model.

[0097] Each primary entity model of a business object is used to store a series of data related to the business object, where each location is represented by a field. The primary entity model contains multiple field identifiers, which are used to refer to the multiple fields contained in the primary entity model. Different primary entity models can contain different field identifiers.

[0098] After the main entity model is obtained, the field identifier can be obtained from the main entity model, or the field identifier corresponding to the business object code can be directly obtained based on the association relationship configured in the aforementioned preset relationship table.

[0099] It should be noted that the main entity model contains many field identifiers. Although the field identifiers contained in the main entity model can also be configured in the preset relationship table, it takes time and manpower to maintain the preset relationship table, and it is inevitable that some omissions will occur. In addition, different main entity models may contain the same field identifiers, so obtaining field identifiers through the main entity model will be more accurate than obtaining field identifiers directly from the preset relationship table.

[0100] In the above embodiment, by configuring the preset relationship table, the association relationship between the prompt and the business object code, the field identifier of the business object, and the field type of the field identifier can be cached to improve data query performance and quickly determine candidate data. By dynamically maintaining the preset relationship table, the use scope of the prompt and data data can be quickly expanded.

[0101] In one embodiment, before obtaining the text data to be matched, the method further includes:

[0102] The description fields of each data item are segmented to obtain the segmentation results of the data item.

[0103] To achieve the matching between the description field and the text data, the description field and the text data may be matched based on semantic similarity, or matched based on vocabulary similarity based on the segmentation results of the description field and the text data.

[0104] Word segmentation is used to segment description fields or text data into words or phrases for subsequent processing. Optionally, word segmentation can be implemented using word segmenters such as Jieba and HanLP. In one embodiment, a word segmentation implementation class can be set, and various word segmentation interfaces can be set in the word segmentation implementation class to flexibly select various open source word segmenters to improve scalability. The output of various open source word segmenters is set to a unified format to achieve seamless access. For example, the output format is set to List<String, String> . <string>After word segmentation processing, a row of data is processed to obtain the word segmentation result of the string set.

[0105] Taking the data marked as 1022_S in Table 1 as an example, the description field of the data is "Managers properly handle various relationships with superiors, peers, subordinates, etc. in daily work to reduce friction." After word segmentation, the segmentation result is [Managers / nnt, in / p, daily / b, work / vn, properly handle / nz, various / rz, relationships / n, etc. / udeng, , / w, which / rz, reduces / v, friction / vn,. / w].

[0106] Optionally, the description field and the name field of the data data can be segmented together, and the segmentation result of the data data can be obtained as [Managers properly handle various relationships between superiors, peers, subordinates, etc. in daily work, so as to reduce friction. Communication and coordination skills].

[0107] It should be noted that the word segmentation processing of the description field can be performed in advance. That is, before obtaining the text data to be matched, the description field of each data item is subjected to word segmentation processing to obtain the word segmentation result of the data item. The word segmentation result of each data item is cached in correspondence with the data item identifier. After obtaining the text data to be matched and determining the candidate data item identifier, the word segmentation result corresponding to the candidate data item identifier is directly obtained from the cache, thereby improving the data matching efficiency. On the other hand, before each word segmentation processing is performed on the description text of an item of data item, the data item identifier of the data item is added to the cache for matching. If the corresponding word segmentation result is matched, the data item is skipped to avoid repeated word segmentation operations.

[0108] In one embodiment, based on the similarity between the description field of each candidate data and the text data, determining the target data matching the text data from the candidate data includes:

[0109] Based on the word segmentation results of the description fields of each candidate data and the word segmentation results of the text data, the similarity between the description fields of each candidate data and the text data is determined; based on the similarity between the description fields of each candidate data and the text data, the target data matching the text data is determined from the candidate data.

[0110] In some cases, the text data is obtained through GPT, and instructions can be given to GPT so that GPT directly returns the word segmentation results of the text data. Combined with the word segmentation results of the description field of the candidate data obtained in advance, fast matching of each candidate data with the text data is achieved.

[0111] In the above embodiment, since the description field is a detailed description of the data, the word segmentation of the description field can retain the original semantics of the data to the maximum extent, thereby achieving higher accuracy in subsequent matching. In addition, the word segmentation results of the description field will be cached to avoid repeated word segmentation operations, significantly improving processing performance. Through the above processing, the matching problem between data and text can be converted into a direct match between texts, thereby simplifying the processing flow and improving matching efficiency.

[0112] In one embodiment, after performing word segmentation processing on the description field of each data item to obtain the word segmentation result of the data item, the following steps are further included:

[0113] Based on a preset stop word list, stop words in the word segmentation results are filtered out to obtain filtered word segmentation results; the filtered word segmentation results are vectorized to obtain vectorized first word segmentation results; and the first word segmentation results of each data source are cached.

[0114] Stop words refer to words that have no important semantics in language processing. With the help of stop word libraries such as ChineseStopWords, stopwords-json, jieba, and HanLP, a preset stop word list can be established. Table 3 provides an example of a stop word list.

[0115] Table 3

[0116]

[0117] The embodiment of the present application provides a convenient interface for maintaining a stop word list to dynamically update the stop word list. Stop words in the word segmentation result can be filtered out based on the preset stop word list, and the execution logic is shown in FIG3 .

[0118] Business personnel maintain the stop word removal information table to form an entity stop word removal table, store it in the cache, and update the cached stop word removal table after each maintenance. Get the word segmentation result List of the data data <string>After that, read the relevant configuration information, obtain the cached stop word list, and filter out the list through the removeAll function of list <string>The stop words in the filter are used to obtain the filtered word segmentation result List <string>。

[0119] Optionally, cache the filtered word segmentation results corresponding to the data identifiers. Before removing stop words for each word segmentation result of a piece of data, mark the corresponding data identifier to the cache for matching. If the corresponding filtered word segmentation result is matched, skip the word segmentation result of this piece of data to avoid repeated filtering operations.

[0120] Taking the data with the identifier 1022_S in Table 1 as an example, the word segmentation result of the data is [管理者 / nnt, 在 / p, 日常 / b, 工作 / vn, 中 / f, 妥善处理 / nz, 好 / a, 上级 / n, 、 / w, 同级 / b, 、 / w, 下级 / n, 等 / udeng, 各种 / rz, 关系 / n, , / w, 使 / v, 其 / rz, 减少 / v, 摩擦 / vn,。 / w,沟通与协调能力], and the word segmentation result after removing stop words is [管理者, 在, 日常, 工作, 中, 妥善处理,上级,同级, 下级, 关系, 减少, 摩擦, 沟通与协调能力].

[0121] The stop word removal function provided by the above embodiments supports online maintenance without downtime, ensuring that business continuity is not affected. In addition, an efficient data import function is built in, greatly simplifying the integration process of a large amount of data and making the operation more rapid and convenient. This function effectively helps to remove redundant words in the text (such as "的", "和", "在", etc.), significantly reducing data noise and improving the accuracy and efficiency of subsequent processing and analysis.

[0122] After filtering the stop words from the word segmentation results, vectorize the filtered word segmentation results to obtain the vectorized first word segmentation results. Vectorization is used to convert text data into vector form, that is, map each filtered word segmentation result to a vector space to capture the theme and content of each filtered word segmentation result, enabling the computer to understand and process the meaning of each filtered word segmentation result.

[0123] The vectorization of the word segmentation results can be achieved through word embedding techniques such as Word2Vec and BERT, mapping each filtered word segmentation result to a high-dimensional real number vector, and this high-dimensional real number vector is the first word segmentation result. The vectorized first word segmentation results can be saved to the database through structured data, query the data during the matching process, and then perform similarity calculation.

[0124] It can be understood that the stop word removal processing and vectorization processing of each word segmentation result can also be pre-performed during idle time.

[0125] In one embodiment, the word segmentation result of the text data is a vectorized second word segmentation result after filtering out stop words. For example, by issuing an instruction to GPT, GPT directly returns the word segmentation result after the stop word removal and vectorization processing as the second word segmentation result. It can be understood that after obtaining the text data to be processed, the text data can be processed by removing stop words and vectorization according to the above processing method to obtain the vectorized second word segmentation result.

[0126] In one embodiment, based on the word segmentation results of the description fields of each candidate data and the word segmentation results of the text data, determining the similarity between the description fields of each candidate data and the text data includes:

[0127] The first word segmentation result of each candidate material data is obtained from the cache; for each candidate material data, the similarity between the first word segmentation result of the candidate material data and the second word segmentation result of the text data is used as the similarity between the description field of the candidate material data and the text data.

[0128] The first word segmentation result of each candidate data is directly obtained from the cache to speed up the data matching process and improve the data matching efficiency. For the first word segmentation result of the candidate data and the second word segmentation result of the text data, the similarity between the first word segmentation result and the second word segmentation result is calculated, and the obtained similarity is used as the similarity between the candidate data and the text data.

[0129] Optionally, the Euclidean distance between the first word segmentation result and the second word segmentation result can be calculated, and the similarity between the first word segmentation result and the second word segmentation result can be determined based on the calculated Euclidean distance. The smaller the Euclidean distance, the greater the similarity determined thereby; the larger the Euclidean distance, the smaller the similarity determined thereby.

[0130] Optionally, the cosine similarity between the first word segmentation result and the second word segmentation result can be calculated, that is, the cosine value of the angle between the vectorized first word segmentation result and the second word segmentation result is used as the similarity between the first word segmentation result and the second word segmentation result. The more similar the first word segmentation result and the second word segmentation result are, the smaller the angle between the two is, and the greater the cosine similarity is.

[0131] In the above embodiment, an innovative active pulling and idle hot standby strategy is adopted to pre-segment, remove stop words and vectorize the data to be matched, thereby significantly shortening the actual matching calculation time and greatly improving the matching performance.

[0132] In one embodiment, based on the similarity between the description field of each candidate data and the text data, determining the target data matching the text data from the candidate data includes:

[0133] Each similarity is used as a node in a maximum heap, and a maximum heap based on similarity is constructed, wherein each time a similarity is determined, if the newly determined similarity is greater than the top node of the maximum heap, the newly determined similarity is added to the maximum heap, and the node order in the maximum heap is updated; when the similarities between the description fields of all candidate data and the text data are traversed, the top N similarities with the largest values ​​are determined based on the latest node order in the maximum heap, where N is a positive integer; the candidate data corresponding to the top N similarities are determined as the target data matching the text data.

[0134] In the embodiment of the present application, when determining the target data based on the similarity between the description field of each candidate data and the text data, a maximum heap is established to determine the top N data with the highest similarity from each candidate data.

[0135] A max heap is a special binary tree structure in which the value of each parent node is greater than or equal to the value of any of its child nodes, so that it can be used to implement a priority queue. In a max heap, the largest element is always at the root node, and the remaining elements are arranged in order from parent to child.

[0136] In one embodiment, the similarity between the description field of the candidate data and the text data and the corresponding candidate data identifier are stored in the Map in the form of a key-value pair.<Long, Double> In the example, constructing a maximum heap based on similarity is to construct a Map-based<Long, Double> The maximum heap of Double values ​​can be implemented by combining PriorityQueue with Map.Entry. Although PriorityQueue in the Java standard library can be easily used to implement the maximum heap or minimum heap, it does not support the direct use of Map as an element. This is because PriorityQueue requires a comparator that can compare sizes, and Map itself is a key-value pair and cannot be directly compared in size.

[0137] To this end, this application does not directly add the Map as an element to the PriorityQueue, but instead adds the Map entries (i.e. key-value pairs) to the Map.Entry<Long, Double> , and add these entries to the PriorityQueue. At the same time, a custom comparator is provided for the PriorityQueue, which compares the size of the entries based on the Double value (i.e. similarity or weight) in Map.Entry.

[0138] In this way, PriorityQueue can sort Map.Entry according to the size of the Double value, thereby indirectly realizing the Map<Long, Double> This method is simple and efficient because it makes full use of the features of PriorityQueue and Map.Entry while avoiding the complexity of operating directly on Map.

[0139] The logical implementation diagram of the maximum heap provided by the embodiment of the present application is shown in Figure 4. When constructing a maximum heap based on similarity, first construct and initialize the maximum heap structure, and rewrite the comparator. Then, based on the initialized maximum heap, each time a similarity is determined, the newly determined similarity is compared with the top node of the maximum heap (the minimum node in the maximum heap). If the newly determined similarity is greater than the top node of the maximum heap, the newly determined similarity is added to the maximum heap to gradually read the similarity calculation results. By traversing each similarity and updating the node order in the maximum heap after each similarity is added to the maximum heap, the dynamic sorting of the nodes in the heap is achieved.

[0140] When the similarities between the description fields of all candidate data and the text data are added to the maximum heap, the top N similarities with the largest values ​​are determined based on the latest node order in the maximum heap, and the candidate data corresponding to the top N similarities are determined as the target data that matches the text data. N is a positive integer and can be flexibly set according to the matching requirements.

[0141] In the above embodiment, a maximum heap is used to determine the TopN similarities from each similarity, so that only a heap structure of size N needs to be maintained. Each time a new similarity is obtained, it only needs to be compared with the smallest similarity in the heap without sorting all similarities, thereby effectively improving data matching efficiency.

[0142] This application also provides a data matching system, see Figure 5 and Figure 6 , Figure 5 This is a system architecture diagram of the data matching system provided in the embodiment of the present application. Figure 6 The data matching system is shown in FIG.

[0143] The overall architecture of the data matching system includes four parts, namely the business logic call layer, the core processing layer, the cache layer and the storage layer. Among them, the storage layer is arranged on the business platform, compatible with a variety of databases, and is the core data storage container. The storage layer stores preset relationship tables. At the same time, in order to meet the diverse needs of users, a customizable extension implementation class is provided to support users to customize the parameters of word segmentation, stop word removal, vectorization, and similarity calculation to adapt to different data characteristics and needs. In addition, the storage layer also stores a stop word list.

[0144] The core processing layer uses five core contents to complete the data matching function, including word segmentation, stop word removal, vector representation, similarity calculation and maximum heap.

[0145] The execution logic of the data matching system is as follows: Figure 6 As shown, the following steps S1 to S9 are included.

[0146] S1. Input the text data returned by GPT and output the N data IDs with the highest similarity.

[0147] S2. Convert text data into JSON object.

[0148] S3. Get the KV key-value pairs of the JSON object, perform word segmentation through the word segmentation library HanLP, and obtain the word segmentation results.

[0149] S4. Perform stop word removal and vectorization processing on the word segmentation result of the text data to obtain a second word segmentation result.

[0150] Among them, word segmentation and vectorization processing can be completed by integrating existing open source components. The embodiment of the present application provides an access interface and specifies the format of input and output parameters to ensure that various open source components can be smoothly accessed.

[0151] S5. Determine candidate material data corresponding to the text data.

[0152] For the specific implementation of S5, please refer to Figure 7 , business personnel form the preset relationship table of the entity by maintaining the configured association relationship table, and extend the implementation class configuration, store the preset relationship table and the extended implementation class together in the database, update the preset relationship table in the cache, and update the cached preset relationship table after each maintenance.

[0153] When determining the candidate material data corresponding to the text data, based on the target prompt matched by the text data, read the cached preset relationship table to obtain the business object code corresponding to the text data. Based on the business object code, obtain the main entity model, based on the field identifier in the main entity model, obtain the field attribute of the corresponding field, and determine the material data corresponding to the material data identifier in the field attribute as the candidate material data. Extract the description field and name field of the candidate material data based on the candidate material data identifier.

[0154] Set the output format of the tokenizer to List <string>, read the word segmentation implementation class in idle time, traverse all the data, pre-process the description field and name field of each data into word segmentation results, and obtain the word segmentation result List of each row of data <string>.

[0155] Encapsulate each data ID and the corresponding word segmentation result into a Map <Long,List <string>>, in order to achieve the corresponding storage of word segmentation results and data ID. Before each word segmentation process, the data ID is placed in the cached Map for matching. If the corresponding word segmentation result List is matched <string>Then the word segmentation will not be performed again to avoid repeated word segmentation operations.

[0156] S6. Obtain the first word segmentation result corresponding to the candidate document data.

[0157] S7. Calculate the cosine similarity between the first word segmentation result and the second word segmentation result.

[0158] S8. Build a maximum heap data structure.

[0159] S9. Output the N data IDs with the highest similarity.

[0160] For the specific implementation of steps S6~S9, please refer to Figure 8 Business personnel maintain relevant information of data in their spare time.

[0161] These include:

[0162] (1) Perform pre-segmentation processing on each data item. Process the description field (and name field) of each data item into the segmentation result, and maintain the relationship between the data item ID and the segmentation result.

[0163] (2) Perform stop word removal on the word segmentation results of each data source. Process each word segmentation result into a filtered word segmentation result, and maintain the relationship between the data source ID and the filtered word segmentation result.

[0164] (3) Perform pre-vectorization processing on each filtered word segmentation result. Each filtered word segmentation result is processed into a vectorized first word segmentation result.

[0165] Based on the maintained data, the pre-vectorization processing of the data is finally realized to obtain the first word segmentation result of the data, and the data data ID and the first word segmentation result are stored in the database in correspondence, and updated in the cache.

[0166] In step S6, based on the correspondence between the maintained document data and the first word segmentation result, the first word segmentation result corresponding to the candidate document data is directly obtained from the cache, and the vector representation of the text returned by GPT (the second word segmentation result) is used together to enter the similarity calculation of steps S7 to S9.

[0167] Considering that document data usually contains a certain amount of data, text similarity matching is not limited to 1:1 comparison between single texts, but needs to realize N:1 similarity calculation between multiple texts and a single text. This application uses a thread pool to improve the performance efficiency of text matching. Based on the pre-cached first word segmentation result, multiple threads in the thread pool can be used to calculate the similarity between the second word segmentation result and multiple first word segmentation results, such as Figure 8 shown.

[0168] The calculated similarity is constructed as a maximum heap, and the data ID corresponding to the TopN similarities is output through the maximum heap, and the corresponding similarities can also be output together to obtain Map<row ID, similarity>. The N data IDs with the highest similarity indicate the target data corresponding to the text data.

[0169] In the above embodiment, through the design of data segmentation processing, the data description field information is segmented in detail to retain the original semantics to the maximum extent. Each data is segmented, stop word removed and vectorized in advance, thereby significantly shortening the actual matching calculation time and greatly improving the matching efficiency. Vectorized data cache, thread pool, maximum heap and other methods further improve the performance efficiency of text matching.

[0170] It should be understood that, although the steps in the flowcharts involved in the above embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0171] Based on the same inventive concept, the embodiment of the present application also provides a data matching device for implementing the data matching method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more data matching device embodiments provided below can refer to the limitations on the data matching method above, and will not be repeated here.

[0172] In one embodiment, as shown in FIG. 9 , a data matching device is provided, the device comprising: a text acquisition module 701, a data candidate module 702, a description extraction module 703 and a data determination module 704, wherein:

[0173] The text acquisition module 701 is used to acquire text data to be matched;

[0174] The data candidate module 702 is used to determine the business object matching the text data based on the matching result between the text data and the prompt words in the preset relationship table, and obtain the candidate data identifier based on the field identifier of the business object, and the preset relationship table is used to represent the association relationship between the prompt words and the business objects;

[0175] Description extraction module 703, used to extract description fields of candidate data from candidate data corresponding to the candidate data identifier;

[0176] The data determination module 704 is used to determine target data matching the text data from the candidate data based on the similarity between the description field of each candidate data and the text data.

[0177] In one embodiment, the preset relationship table includes an association relationship between a prompt and a business object code, a field identifier of the business object, and a field type of the field identifier. When determining a business object matching the text data based on a matching result between the text data and the prompt in the preset relationship table, and obtaining a candidate material data identifier based on the field identifier of the business object, the data candidate module 702 is further used to:

[0178] Determine a target prompt that matches the text data;

[0179] Based on the preset relationship table, determine the business object code corresponding to the target prompt;

[0180] From the field identifier corresponding to the business object code, determine the target field identifier whose field type is data data;

[0181] Get the material data identifier contained in the field attributes of the target field as the candidate material data identifier.

[0182] In one embodiment, when determining that the target field identifier whose field type is data data is determined from the field identifier corresponding to the business object code, the data candidate module 702 is further configured to:

[0183] Obtain the main entity model corresponding to the business object code, and obtain the field identifier contained in the main entity model; or obtain the field identifier corresponding to the business object code based on a preset relationship table;

[0184] Determine from the field identifiers the target field identifier whose field type is material data.

[0185] Please refer to FIG. 10 . In one embodiment, the data matching device further includes a data segmentation module 705. Before obtaining the text data to be matched, the segmentation module 705 is used to:

[0186] Perform word segmentation processing on the description field of each data item to obtain the word segmentation result of the data item;

[0187] When determining target material data matching the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data, the data determination module 704 is further used to:

[0188] Determine the similarity between the description field of each candidate data and the text data based on the word segmentation result of the description field of each candidate data and the word segmentation result of the text data;

[0189] Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

[0190] Please continue to refer to FIG. 10 . In one embodiment, the data matching device further includes a stop word removal module 706 , a vectorization module 707 , and a word segmentation cache module 708 :

[0191] The stop word removal module 706 is used to filter out stop words in the word segmentation result based on a preset stop word removal table to obtain a filtered word segmentation result;

[0192] A vectorization module 707 is used to perform vectorization processing on the filtered word segmentation result to obtain a vectorized first word segmentation result;

[0193] The word segmentation cache module 708 is used to cache the first word segmentation result of each document data.

[0194] The word segmentation result of the text data is a vectorized second word segmentation result after filtering out stop words. When determining the similarity between the description field of each candidate data and the text data based on the word segmentation result of the description field of each candidate data and the word segmentation result of the text data, the data determination module 704 is further used to:

[0195] Obtain the first word segmentation result of each candidate data from the cache;

[0196] For each candidate material data, the similarity between the first word segmentation result of the candidate material data and the second word segmentation result of the text data is used as the similarity between the description field of the candidate material data and the text data.

[0197] In one embodiment, when determining the target material data matching the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data, the data determination module 704 is further configured to:

[0198] Taking each similarity as a node in a maximum heap, a maximum heap based on similarity is constructed, wherein each time a similarity is determined, if the newly determined similarity is greater than the top node of the maximum heap, the newly determined similarity is added to the maximum heap, and the order of the nodes in the maximum heap is updated;

[0199] When the similarities between the description fields of all candidate data and the text data are traversed, the top N similarities with the largest values ​​are determined based on the latest node order in the maximum heap, where N is a positive integer;

[0200] The candidate material data corresponding to the first N similarities are determined as the target material data that matches the text data.

[0201] In the above data matching device, the text acquisition module 701 acquires the text data to be matched; the data candidate module 702 determines the business object matching the text data based on the matching result between the text data and the prompt words in the preset relationship table, and obtains the candidate material data identifier based on the field identifier of the business object, and the preset relationship table is used to characterize the association relationship between the prompt words and the business object; the description extraction module 703 extracts the description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier; the data determination module 704 determines the target material data matching the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data. The present application configures the association between various prompt words and business objects and field identifiers through the preset relationship table, and selects the candidate material data identifiers from a large number of material data identifiers based on the determined field identifiers. By determining the similarity between the description field of each candidate material data and the text data, the matching of the description field and the text data can be achieved. Since the description field is the text describing the material data, the matching of the material data and the text data is converted into the matching between texts, thereby achieving the effective matching of the material data and the text data.

[0202] Each module in the above data matching device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each module.

[0203] Terms such as "component", "module", and "system" are intended to refer to a computer-related entity, which can be hardware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable code, a thread of execution, a program, and / or a computer. As an illustration, both an operating program running on a server and a server can be a component. One or more components can reside in a process and / or a thread of execution, and a component can be located in one computer and / or distributed between two or more computers.

[0204] In an exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be shown in FIG11. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile computer-readable storage medium and an internal memory. The non-volatile computer-readable storage medium stores an operating system, computer-readable instructions and a database. The internal memory provides an environment for the operation of the operating system and computer-readable instructions in the non-volatile computer-readable storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer-readable instructions are executed by the processor, a data matching method is implemented.

[0205] In an exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be shown in FIG12. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit, and an input device. The processor, the memory, and the input / output interface are connected via a system bus, and the communication interface, the display unit, and the input device are connected to the system bus via the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile computer-readable storage medium and an internal memory. The non-volatile computer-readable storage medium stores an operating system and computer-readable instructions. The internal memory provides an environment for the operation of the operating system and the computer-readable instructions in the non-volatile computer-readable storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner may be implemented through WIFI, a mobile cellular network, near field communication (NFC) or other technologies. When the computer-readable instructions are executed by the processor, an audio enhancement method is implemented. The display unit of the computer device is used to form a visually visible picture, which may be a display screen, a projection device, or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse.

[0206] Those skilled in the art will understand that the structures shown in FIGS. 11 and 12 are merely block diagrams of partial structures related to the scheme of the present application, and do not constitute a limitation on the computer device to which the scheme of the present application is applied. The specific computer device may include more or fewer components than those shown in the figures, or combine certain components, or have a different arrangement of components.

[0207] In one embodiment, a computer device is further provided, including a memory and a processor, wherein the memory stores computer-readable instructions, and the processor implements the steps in the above-mentioned method embodiments when executing the computer-readable instructions.

[0208] In one embodiment, a computer-readable storage medium is provided, which stores computer-readable instructions. When the computer-readable instructions are executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0209] In one embodiment, a computer program product is provided, the computer program product comprising computer-readable instructions, the computer-readable instructions being stored in a computer-readable storage medium. A processor of a computer device reads the computer-readable instructions from the computer-readable storage medium, and the processor executes the computer-readable instructions, so that the computer device performs the steps in the above-mentioned method embodiments.

[0210] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through computer-readable instructions, and the computer-readable instructions can be stored in a non-volatile computer-readable storage medium. When the computer-readable instructions are executed, they can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.

[0211] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0212] The above embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.< / string> < / string> < / string> < / string> < / string> < / string> < / string> < / string>

Claims

1. A data matching method, characterized in that: include: Get the text data to be matched; Based on the matching result between the text data and the prompt words in the preset relationship table, determining the business object matching the text data, and obtaining the candidate data identifier based on the field identifier of the business object, wherein the preset relationship table is used to characterize the association relationship between the prompt words and the business objects; Extracting a description field of the candidate material data from the candidate material data corresponding to the candidate material data identifier; Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

2. The method according to claim 1, characterized in that The preset relationship table includes an association relationship between a prompt word and a business object code, a field identifier of the business object, and a field type of the field identifier. The determining of a business object matching the text data based on a matching result between the text data and the prompt word in the preset relationship table, and obtaining a candidate material data identifier based on the field identifier of the business object includes: Determining a target prompt that matches the text data; Based on the preset relationship table, determining the business object code corresponding to the target prompt; Determine, from the field identifier corresponding to the business object code, a target field identifier whose field type is data data; The material data identifier contained in the field attribute of the target field is obtained as a candidate material data identifier.

3. The method according to claim 2, characterized in that Determining the target field identifier whose field type is data data from the field identifier corresponding to the business object code includes: Acquire the main entity model corresponding to the business object code, and acquire the field identifier contained in the main entity model; or acquire the field identifier corresponding to the business object code based on the preset relationship table; A target field identifier whose field type is data data is determined from the field identifiers.

4. The method according to claim 1, characterized in that: Before obtaining the text data to be matched, the method further includes: Perform word segmentation processing on the description field of each data item to obtain the word segmentation result of the data item; The step of determining target data matching the text data from the candidate data based on the similarity between the description field of each candidate data and the text data comprises: Determine the similarity between the description field of each candidate data and the text data based on the word segmentation result of the description field of each candidate data and the word segmentation result of the text data; Based on the similarity between the description field of each candidate material data and the text data, target material data matching the text data is determined from the candidate material data.

5. The method according to claim 4, characterized in that After the word segmentation processing is performed on the description field of each data item to obtain the word segmentation result of the data item, the method further includes: Filtering out stop words in the word segmentation result based on a preset stop word list to obtain a filtered word segmentation result; Performing vectorization processing on the filtered word segmentation result to obtain a vectorized first word segmentation result; Cache the first word segmentation result of each data item; The word segmentation result of the text data is a vectorized second word segmentation result after filtering out stop words, and the determining the similarity between the description field of each candidate data and the text data based on the word segmentation result of the description field of each candidate data and the word segmentation result of the text data includes: Obtain the first word segmentation result of each candidate data from the cache; For each candidate material data, the similarity between the first word segmentation result of the candidate material data and the second word segmentation result of the text data is used as the similarity between the description field of the candidate material data and the text data.

6. The method according to claim 4, characterized in that The step of determining target data matching the text data from the candidate data based on the similarity between the description field of each candidate data and the text data comprises: Taking each similarity as a node in a maximum heap, constructing a maximum heap based on similarity, wherein each time a similarity is determined, if the newly determined similarity is greater than the top node of the maximum heap, the newly determined similarity is added to the maximum heap, and the order of the nodes in the maximum heap is updated; When the similarities between the description fields of all candidate data and the text data are traversed, the top N similarities with the largest values ​​are determined based on the latest node order in the maximum heap, where N is a positive integer; The candidate document data corresponding to the first N similarities are determined as target document data matching the text data.

7. A data matching device, characterized in that: include: A text acquisition module, used to acquire text data to be matched; A data candidate module, for determining a business object matching the text data based on a matching result between the text data and a prompt in a preset relationship table, and obtaining a candidate data identifier based on a field identifier of the business object, wherein the preset relationship table is used to characterize an association relationship between the prompt and the business object; A description extraction module, configured to extract a description field of the candidate data from the candidate data corresponding to the candidate data identifier; The data determination module is used to determine target material data matching the text data from the candidate material data based on the similarity between the description field of each candidate material data and the text data.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Cited By

  • Text feature-based supply and demand matching method and device for supply service resources

    CN120354151A