Construction element extraction method, system, device, and storage medium

By acquiring construction text data and utilizing data feature analysis and model training, construction elements are automatically extracted, solving the problem of low efficiency in construction element extraction and achieving efficient and accurate extraction of construction elements.

CN118503898BActive Publication Date: 2026-07-31GLODON CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GLODON CO LTD
Filing Date
2024-03-14
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

Existing technologies have low efficiency in extracting construction elements, relying mainly on manual methods, which is inefficient.

Method used

By acquiring construction text data from construction documents, and utilizing data feature analysis and model training, construction elements, including target project category, material and component information, are automatically extracted. Combined with keyword mapping and model training, invalid text data is deleted to improve accuracy and efficiency.

Benefits of technology

It has achieved automated extraction of construction elements, improved the extraction efficiency and accuracy of construction elements, reduced the amount of data processing, and prevented interference from invalid text data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118503898B_ABST
    Figure CN118503898B_ABST
Patent Text Reader

Abstract

This disclosure relates to the field of computer-aided design technology, and discloses a method, system, device, and storage medium for extracting construction elements. The method includes acquiring construction documents and extracting construction text data from the construction documents; extracting a first construction element from the construction text data based on its data characteristics, the first construction element including the target project category to which the construction text data belongs; acquiring candidate materials and candidate components corresponding to the target project category, and fusing the candidate materials, candidate components, and construction text data to obtain fused information; and extracting a second construction element from the construction text data from the fused information, the second construction element including material information and component information from the construction text data. This method is highly efficient.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer-aided design technology, specifically to a method, system, device, and storage medium for extracting construction elements. Background Technology

[0002] Construction elements refer to information related to a construction project extracted from construction documents. These documents include, but are not limited to, construction drawings, construction schedule documents, and cost lists. Construction elements include, but are not limited to, the building's materials and components, the project's engineering category (e.g., the sub-projects and individual works within the construction project), and the building's location.

[0003] Currently, construction elements are usually extracted manually from construction documents by personnel with a background in the construction business, which is a relatively inefficient method.

[0004] Therefore, there is an urgent need for a more efficient method for extracting construction elements. Summary of the Invention

[0005] In view of this, the present disclosure provides a construction element extraction method, a construction element extraction system, an electronic device, and a computer-readable storage medium, which can automatically extract construction elements with high efficiency.

[0006] This disclosure provides a method for extracting construction elements, the method comprising:

[0007] Obtain construction documents and extract construction text data from the construction documents;

[0008] Based on the data characteristics of the construction text data, a first construction element is extracted from the construction text data, and the first construction element includes the target project category to which the construction text data belongs;

[0009] Obtain candidate materials and candidate components corresponding to the target project category, and fuse the candidate materials, candidate components and construction text data to obtain fused information;

[0010] The second construction element is extracted from the construction text data from the fused information. The second construction element includes material information and component information from the construction text data.

[0011] In some embodiments of this application, after extracting construction text data from construction documents, data feature analysis is performed on the construction text data to determine the target project category (i.e., the first construction element). The construction text data is then fused with candidate materials and candidate components corresponding to the target project category. Based on the fused information, material information and component information (i.e., the second construction element) can be extracted from the construction text data. This achieves automatic extraction of construction elements, significantly improving the extraction efficiency.

[0012] In some embodiments, extracting the first construction element or the second construction element from the construction text data includes:

[0013] Delete invalid text data that is irrelevant to the construction elements to be extracted from the construction text data;

[0014] Based on the construction text data after deleting the invalid text data, construction elements are extracted.

[0015] On the one hand, it can reduce the amount of data processing; on the other hand, it can prevent invalid text data from interfering with the extraction of construction elements, thereby ensuring the accuracy of construction element extraction.

[0016] In some embodiments, the first construction element further includes location information in the construction text data;

[0017] When extracting the target project category, deleting invalid text data that is irrelevant to the construction elements to be extracted from the construction text data includes:

[0018] The location information is treated as invalid text data that is irrelevant to the target project category, and the location information is deleted from the construction text data.

[0019] Location information is generally used to characterize the spatial relationships of buildings, while the target project category characterizes the work content of a construction project. When extracting the target project category, the location information in the construction text data may be of no reference value. Therefore, this location information can be deleted to reduce data processing volume and improve the extraction accuracy of the target project category.

[0020] In some embodiments, extracting the first construction element from the construction text data includes:

[0021] The construction text data is input into the trained first model, and the first model outputs the first construction element based on the data features of the construction text data. Before inputting the construction text data into the first model, the first model is trained using the following method:

[0022] Obtain initial training data, which includes multiple training text data for model training;

[0023] The first training data is obtained by deleting invalid text data that is irrelevant to the construction elements to be extracted from the initial training data;

[0024] In the first training data, find the first training text data and the second training text data whose similarity exceeds the first threshold, and delete the first training text data or the second training text data to obtain the second training data;

[0025] The first model is trained based on the second training data.

[0026] The first and second training text data with a similarity exceeding the first threshold can be considered as the same or similar training text data. These two training text data have similar effects on model training. Therefore, it is only necessary to keep one of these two training text data, which can reduce the amount of subsequent data annotation.

[0027] In some embodiments, the first model includes a category extraction model for extracting project categories;

[0028] Training the category extraction model based on the second training data includes:

[0029] Search for keywords in the training text data to identify the project category, and label the training text data with project categories based on the keywords;

[0030] The category extraction model is trained based on the second training data after annotation.

[0031] Since keywords can accurately reflect the characteristics of engineering categories, labeling the engineering categories of training models based on keywords yields more accurate results and can improve the accuracy of model training.

[0032] In some embodiments, the same keyword can be used to identify multiple different engineering categories;

[0033] After labeling the training text data with engineering categories, the method further includes:

[0034] Among all keywords, for any given target keyword, count the number of each project category tagged based on the target keyword;

[0035] If the proportion of the number of each project category labeled according to the target keyword exceeds the second threshold, the second training data is adjusted to reduce the probability of identifying the target project category based on the target keyword.

[0036] This is to prevent uneven distribution of the number of engineering categories labeled based on the target keywords, and to improve the robustness of the model.

[0037] In some embodiments, labeling the training text data with engineering categories based on the keywords includes:

[0038] Based on the keywords in the training text data, determine the initial level engineering category to which the training text data belongs;

[0039] Obtain the previous level project category of the initial level project category, and merge the initial level project category and the previous level project category;

[0040] The training text data is labeled using the merged project categories.

[0041] In this way, the hierarchical relationship of engineering categories can be used to improve the accuracy of model training.

[0042] In some embodiments, the first construction element further includes location information in the construction text data, and the first model includes a location extraction model for extracting the location information.

[0043] The step of inputting the construction text data into the trained first model and having the first model output the first construction element includes:

[0044] The construction text data is input into the part extraction model, and the part extraction model extracts the first entity describing the part and the second entity describing the part type from the data in the construction text.

[0045] After obtaining the first entity and the second entity, the method further includes:

[0046] The first entity and the second entity are parsed to obtain the location information.

[0047] By parsing the first and second entities, the location information can be stored in a specified format, which facilitates further processing of the construction text data.

[0048] In some embodiments, parsing the first entity and the second entity to obtain the location information includes:

[0049] Determine the first parsing method for the first entity and the second parsing method for the second entity;

[0050] The first entity is parsed according to the first parsing method to obtain the first parsing information;

[0051] The second entity is parsed according to the second parsing method to obtain the second parsing information;

[0052] The first and second parsed information are combined to obtain the location information.

[0053] The first and second parsing methods can be the same or different. This allows for better adaptability, enabling parsing of the first and second entities using their respective methods.

[0054] In some embodiments, extracting the second construction element from the construction text data from the fused information includes:

[0055] The fused information is input into the trained second model, and the second model outputs element reasoning information. The element reasoning information includes candidate materials with material identifiers and candidate components with component identifiers. The material identifiers are used to identify whether the candidate materials are located in the construction text data, and the component identifiers are used to identify whether the candidate components are located in the construction text data.

[0056] Based on the inference information of the aforementioned elements, the target materials and target components in the construction text data are determined.

[0057] Candidate materials and candidate components are the materials and components corresponding to the target project category. Searching for materials and components located in the construction text data from among the candidate materials and candidate components greatly narrows the data search range and improves the search accuracy of materials and components in the construction text data.

[0058] In some embodiments, after determining the target material and the target component, the method further includes:

[0059] Obtain the material property information of the target material and the component property information of the target component;

[0060] The target material and the material property information are combined to obtain the material information;

[0061] The target component and the component attribute information are merged to obtain the component information.

[0062] In this way, we can obtain richer information on materials and components to meet more practical needs.

[0063] This disclosure also provides a construction element extraction system, the system comprising:

[0064] The data extraction module is used to acquire construction documents and extract construction text data from the construction documents;

[0065] The first extraction module is used to extract a first construction element from the construction text data, wherein the first construction element includes the target project category to which the construction text data belongs;

[0066] The fusion module is used to acquire candidate materials and candidate components corresponding to the target project category, and to fuse the candidate materials, candidate components and the construction text data to obtain fusion information;

[0067] The second extraction module is used to extract a second construction element from the construction text data from the fused information, wherein the second construction element includes material information and component information in the construction text data.

[0068] This disclosure also provides a computer-readable storage medium for storing a computer program that, when executed by a processor, implements the method described above.

[0069] This disclosure also provides an electronic device including a processor and a memory, the memory being used to store a computer program that, when executed by the processor, implements the method described above. Attached Figure Description

[0070] The features and advantages of this disclosure will be more clearly understood by referring to the accompanying drawings, which are schematic and should not be construed as limiting the scope of this disclosure in any way.

[0071] Figure 1 A schematic diagram of construction documents provided in one embodiment of this application is shown;

[0072] Figure 2 A flowchart illustrating a construction element extraction method provided in one embodiment of this application is shown;

[0073] Figure 3 A schematic diagram of the modules of a construction element extraction system provided in one embodiment of this application is shown;

[0074] Figure 4 A schematic diagram of an electronic device provided in one embodiment of this application is shown. Detailed Implementation

[0075] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.

[0076] In the field of architectural design, construction elements can include, but are not limited to, specialized engineering works, sub-projects, itemized projects, components, materials, and parts. Among these:

[0077] Specialized engineering projects refer to projects that require specialized expertise and must be completed by contractors with the corresponding qualifications. Examples include civil engineering projects, interior decoration projects, and installation projects.

[0078] A sub-project refers to a project that cannot independently generate revenue or benefits, and lacks the conditions for independent construction, but still meets the conditions for settling project payments. Examples include earthwork, foundation engineering, concrete engineering, and waterproofing engineering. Sub-projects can be subordinate to specialized engineering projects; that is, a specialized engineering project can include one or more sub-projects. For example, civil engineering can include foundation engineering and earthwork.

[0079] A sub-item project refers to a project that has been further subdivided into a section project, and can also be called a sub-project that constitutes a section project. For example, the section project "foundation engineering" can be further subdivided into two sub-items: "foundation engineering" and "foundation pit support engineering".

[0080] A component is a unit that makes up a building. For example, a beam or column.

[0081] Materials refer to the materials used to construct a building. For example, welded steel pipes and metal pipes.

[0082] Location, used to characterize the spatial relationships of a building. For example, floor, building.

[0083] See also Figure 1 This is a schematic diagram of construction documents provided in one embodiment of this application. Figure 1 In the construction documents, project-related information is annotated with text data in the upper left corner. Similarly, building-related information is annotated with text data in the drawing area. In the field of architectural design, this text data in the construction documents can be referred to as construction text data. In actual industrial production, there is a need to extract construction text data from construction documents. For example, the construction text data extracted from the construction documents may be saved according to a specified data structure to facilitate settlement during project finalization.

[0084] Specifically, extracting construction elements from construction text data can include two methods: direct extraction and inference. For example, some construction drawings may use text data to label various building components and their materials. Based on this labeling information, the materials and components within the construction elements can be determined. Alternatively, based on information such as components obtained from construction drawings, the engineering category of the construction project (i.e., specialized engineering, sub-project, or sub-item project) can be indirectly inferred.

[0085] Currently, construction elements are mainly identified and extracted manually from construction documents by personnel with a background in construction business. This method of manually extracting construction elements is inefficient.

[0086] Therefore, this application provides a method for extracting construction elements, which can automatically extract construction elements from construction documents with high efficiency. Specifically, the construction element extraction method can be applied to industrial drafting software or to electronic devices running industrial drafting software. Electronic devices include, but are not limited to, tablet computers, laptops, desktop computers, etc. (See also...) Figure 2 This is a flowchart illustrating a construction element extraction method provided in one embodiment of this application. Figure 2 In this context, the method for extracting construction elements may include the following steps:

[0087] Step S21: Obtain the construction documents and extract the construction text data from the construction documents.

[0088] Specifically, the construction documents obtained in step S21 are the construction documents to be identified. Some text data extraction methods well-known to those skilled in the art can be used to extract text data from the construction documents. In this application, the text data extracted from the construction documents is referred to as construction text data. For ease of understanding, an example of construction text data is given below.

[0089]

[0090] Step S22: Based on the data characteristics of the construction text data, extract the first construction element from the construction text data. The first construction element includes the target project category to which the construction text data belongs.

[0091] In this embodiment, the data characteristics of construction text data can include keywords within the construction text data. Specifically, considering that some keywords in the construction text data can reflect the characteristics of the project category, the target project category can be extracted from the construction text data through reasoning based on the keywords in the construction text data. For example, suppose a construction text data is: XXXX Flooring YYYYY. Since this construction text data includes the keyword "flooring," it can be determined that this construction text data belongs to civil engineering (specialized engineering) > secondary structure engineering (sub-project). As another example, suppose a construction text data is: ZZZZZ Hanging Hole MMMMM. Since this construction text data includes the keyword "hanging hole," it can be determined that this construction text data belongs to water supply and drainage engineering (sub-project).

[0092] Based on the above description, a mapping dictionary can be pre-constructed to represent the correspondence between keywords and engineering categories. For example, taking the keyword "ground surface" as an example, its corresponding mapping dictionary can be represented as {"ground surface": ["civil engineering", "secondary structural engineering"]}. As another example, taking the keyword "cave opening" as an example, its corresponding mapping dictionary can be represented as {"cave opening": ["civil engineering", "water supply and drainage engineering"]}.

[0093] Thus, after obtaining the construction text data, the target project category to which the construction text data belongs can be extracted based on the keywords and mapping dictionary in the construction text data.

[0094] Furthermore, considering that in practice, the same keyword can be used to identify multiple different engineering categories, the mapping dictionary can be constructed by mapping a keyword to multiple engineering categories. For example, consider the keyword "hanging hole". When a construction text data includes "hanging hole", the construction text data may belong to "water supply and drainage engineering" and "secondary structure engineering". Therefore, the mapping dictionary corresponding to the keyword "hanging hole" can be represented as follows:

[0095] {“Hanging hole”: [“Civil Engineering”, “Water Supply and Drainage Engineering”]}

[0096] {“Hanging Hole”: [“Civil Engineering”, “Secondary Structure Engineering”]}

[0097] Correspondingly, if keywords in a construction text data point correspond to multiple project categories, the target project category to which the construction text data belongs can be determined based on other data features besides the keywords. For example, suppose a construction text data point is: ZZ water Z hanging hole MMMMM. Based on the keyword "hanging hole," it can be determined that the construction text data belongs to water supply and drainage engineering and secondary structure engineering. However, considering that the construction text data also includes the word "water," it can be determined that the construction text data belongs to water supply and drainage engineering.

[0098] In the subsequent related descriptions of this application, a method for extracting target project categories based on a model is also provided, which will not be elaborated here.

[0099] Step S23: Obtain candidate materials and candidate components corresponding to the target project category, and fuse the candidate materials, candidate components and construction text data to obtain fused information.

[0100] In some embodiments, a thesaurus can be pre-established. The thesaurus may include materials and components corresponding to various engineering categories, and attribute information of materials and components (such as the superior and subordinate materials of a material). For ease of understanding, Table 1 provides an example of a thesaurus.

[0101] Table 1 Thesaurus

[0102]

[0103]

[0104] As shown in the terminology in Table 1, under "Civil Engineering > Foundation Engineering," there is a component called "Precast Pile." The "Precast Pile" component consists of another module: "Pile Opening and Pile Head." The material of the "Precast Pile" component is "plain round steel bar," and the next level material for "plain round steel bar" is "steel reinforcement." The materials and components corresponding to the target project category obtained through the terminology can then be used as candidate materials and components for that target project category.

[0105] It should be noted that Table 1 only provides an example of a thesaurus. The specific content included in the thesaurus can be determined according to the actual situation, and this application does not impose any restrictions on it.

[0106] In this embodiment, candidate materials, candidate components, and construction text data can be spliced ​​together, and the spliced ​​content can be used as fusion information.

[0107] In other embodiments, material data related to materials and component data related to components can be filtered from construction text data, and candidate materials, candidate components, filtered material data and component data can be spliced ​​together, and the spliced ​​content can be used as fusion information.

[0108] Step S24: Extract the second construction element from the construction text data from the fused information. The second construction element includes material information and component information from the construction text data.

[0109] It is understandable that the candidate materials and components in the fused information represent the full range of materials and components corresponding to the target project category. Construction document data may include some or all of the candidate materials and components from the fused information. Specifically, based on the data characteristics of the construction text data, the target materials and components belonging to the construction text data can be identified from the candidate materials and components in the fused information. For example, the candidate materials corresponding to the target project category include welded steel pipes and seamless pipes. If the text data contains the word "welding," then it can be determined that the construction text data includes welded steel pipes but does not include seamless pipes.

[0110] In the subsequent related descriptions of this application, a method for extracting materials and components from construction text data based on a model is also provided, which will not be elaborated here.

[0111] In this embodiment, considering that in addition to obtaining the target materials and target components included in the construction text data, it is often necessary to obtain the attribute information of the target materials and target components, such as the superior and subordinate materials of the target material, a pre-established thesaurus can be used. After determining the target materials and target components, the material attribute information of the target materials and the component attribute information of the target components can be obtained. The target material and material attribute information can then be merged to obtain material information, and the target component and component attribute information can be merged to obtain component information. This allows for richer material and component information to meet more practical needs.

[0112] In summary, in the technical solutions of some embodiments of this application, after extracting construction text data from construction documents, data feature analysis is performed on the construction text data to determine the target project category (i.e., the first construction element) to which the construction text data belongs. The construction text data is then fused with candidate materials and candidate components corresponding to the target project category, and based on the fused information, material information and component information (i.e., the second construction element) can be extracted from the construction text data. This achieves automatic extraction of construction elements, greatly improving the extraction efficiency.

[0113] Furthermore, in some embodiments, the construction text data extracted from construction documents may include a significant amount of invalid text data unrelated to the construction elements to be extracted. For example, the construction text data may include dates, design engineer's work ID, etc. Understandably, this data does not contribute to the extraction of construction elements; on the contrary, it may increase the amount of data to be processed and interfere with the extraction of construction elements, leading to a decrease in the accuracy of the extraction. Therefore, extracting the aforementioned first or second construction element from the construction text data may include:

[0114] Remove invalid text data from the construction text data that is irrelevant to the construction elements to be extracted;

[0115] Construction elements are extracted from the construction text data after deleting invalid text data.

[0116] Specifically, invalid text data can be deleted using techniques such as regular expressions. This reduces the amount of data processing and prevents invalid text data from interfering with the extraction of construction elements, thus ensuring the accuracy of the extracted elements.

[0117] Furthermore, in some embodiments, the first construction element also includes location information from the construction text data;

[0118] When extracting target project categories, removing invalid text data that is irrelevant to the construction elements to be extracted from the construction text data can include:

[0119] The location information is treated as invalid text data that is irrelevant to the target project category, and is therefore deleted from the construction text data.

[0120] Specifically, as explained above regarding the concept of "location," location information generally characterizes the spatial relationships of a building (such as floors and buildings), while the target project category characterizes the work content of a construction project. Clearly, when extracting the target project category, the location information in the construction text data may be completely worthless. Therefore, this location information can be deleted to reduce data processing volume and improve the accuracy of target project category extraction.

[0121] The following example further illustrates how to extract the first construction element from construction text data.

[0122] In some embodiments, extracting a first construction element from construction text data may include:

[0123] The construction text data is input into the trained first model, and the first model outputs the first construction element based on the data characteristics of the construction text data.

[0124] In this embodiment, the first construction element includes the target project category to which the construction text data belongs, and the location information in the construction text data. The target project category and location information can be extracted based on different first models. Specifically, the first model may include a category extraction model for extracting the project category and a location extraction model for extracting the location information. Wherein:

[0125] For the category extraction model, after inputting the construction text data into the trained category extraction model, the target project category to which the construction text data belongs can be directly obtained, which will not be elaborated here.

[0126] For the part extraction model, construction text data can be input into the part extraction model, and the part extraction model can extract the first entity describing the part and the second entity describing the part type from the construction text data.

[0127] Specifically, in construction text data, a location can have a location type, and the location and location type usually exist as a whole in the construction text data. For example, taking "3rd floor - roof layer" as an example, "3rd floor" is the first entity describing the location in the construction text data, and "roof layer" is the second entity describing the location type in the construction text data. The location extraction model can extract the first entity and the second entity separately.

[0128] After obtaining the first and second entities, they can be parsed to obtain location information. Parsing the first and second entities involves converting the extracted data into a specified format. For example, taking "3rd floor - roof layer" as an example, the corresponding parsing method could be "`integer-1``suffix-1`-`type-1`", where the integer corresponds to "3", the suffix to "layer", and the type to "roof layer". Parsing "3rd floor - roof layer" using this method results in "`3-1``layer-1`-`roof layer-1`". By parsing the first and second entities, location information can be stored in a specified format, facilitating further processing of the construction text data.

[0129] In this embodiment, five parsing methods can be included to address the different data formats of the first entity and the second entity. Among them:

[0130] The first analysis method: for odd numbers, such as 3 or 5 layers;

[0131] The second analysis method is for cases involving intervals, such as layers 3-5.

[0132] The third analysis method: for the above situations, such as more than 3 layers;

[0133] The fourth analysis method is for situations such as floors 5 or below.

[0134] The fifth analysis method: for the middle situation, such as between building #3 and building #4.

[0135] Each analytical method can be composed of four atomic parts: number (e.g., 123, ABC, East, South, West, North, etc.), suffix (e.g., #, zone, segment, layer, etc.), type (e.g., comprehensive building, roof layer, etc.), and subtype (e.g., main building, annex building, etc.). Taking "3# Comprehensive Building Main Building" as an example, the analytically obtained atomic parts are "3:#:Comprehensive Building: Main Building".

[0136] Based on satisfying the above four atomic sites, different analytical methods can have different analytical logic.

[0137] Furthermore, in some embodiments, the above-described parsing of the first entity and the second entity to obtain location information may include:

[0138] Determine the first parsing method for the first entity and the second parsing method for the second entity;

[0139] The first entity is parsed according to the first parsing method to obtain the first parsing information;

[0140] The second entity is parsed according to the second parsing method to obtain the second parsing information;

[0141] The first and second analytical information are combined to obtain the location information.

[0142] The first and second parsing methods can be the same or different. This allows for better adaptability, enabling parsing of the first and second entities using their respective methods.

[0143] In some embodiments, the step S24 of extracting the second construction element from the construction text data from the fused information may include:

[0144] The fused information is input into the trained second model, and the second model outputs element reasoning information. The element reasoning information includes candidate materials with material identifiers and candidate components with component identifiers. The material identifier is used to identify whether the candidate material is located in the construction text data, and the component identifier is used to identify whether the candidate component is located in the construction text data.

[0145] Based on element reasoning information, the target materials and target components in the construction text data are determined.

[0146] Based on the description of step S24, it can be understood that candidate materials and candidate components are the materials and components corresponding to the target project category. Searching for materials and components located in the construction text data among the candidate materials and candidate components greatly narrows the data search range and improves the search accuracy of materials and components in the construction text data.

[0147] In this embodiment, when the material identifier and component identifier are at a first value (e.g., 1), it indicates that the candidate material and candidate component are located in the construction text data; when the material identifier and component identifier are at a second value (e.g., 0), it indicates that the candidate material and candidate component are not located in the construction text data.

[0148] The element reasoning information output by the second model can be seen in Table 2.

[0149] Table 2 Element Reasoning Information

[0150] Candidate Material 1 1 Candidate Material 2 1 Candidate Component 1 1 Candidate Component 2 0

[0151] As can be seen from Table 2, the construction text data includes candidate materials 1 and 2, as well as candidate component 1.

[0152] The training process of the first model (i.e., the category extraction model and the part extraction model) is explained below.

[0153] In some embodiments, before inputting construction text data into the first model, the first model can be trained based on the following method:

[0154] 1) Obtain initial training data, which includes multiple training text data for model training.

[0155] Specifically, the training text data refers to the construction text data extracted from construction texts of multiple different construction projects. In this application, the construction text data used for model training is referred to as the training text data.

[0156] 2) Remove invalid text data that is not related to the construction elements to be extracted from the initial training data to obtain the first training data.

[0157] For instructions on deleting invalid text data, please refer to the relevant descriptions above, which will not be repeated here.

[0158] 3) In the first training data, find the first training text data and the second training text data whose similarity exceeds the first threshold, and delete the first training text data or the second training text data to obtain the second training data.

[0159] Specifically, the first and second training text data with a similarity exceeding the first threshold can be considered as the same or similar training text data. These two training text data have similar effects on model training. Therefore, it is only necessary to keep one of these two training text data, which can reduce the amount of subsequent data annotation.

[0160] In this embodiment, the similarity between the first training text data and the second training text data can be determined based on the Hamming distance between the training text data. Specifically, if the Hamming distance between the first training text data and the second training text data is equal to 1, it can be determined that the similarity between the two training text data exceeds a first threshold, and one of the training text data can be deleted.

[0161] 4) Train the first model based on the second training data.

[0162] Once the first model is trained, the first construction elements can be extracted based on it. Extracting the first construction elements based on the model can reduce the workload.

[0163] Specifically, the training processes for category extraction models and part extraction models can differ. The training processes for these two models will be described separately below.

[0164] The training process for the category extraction model is as follows:

[0165] In some embodiments, training the category extraction model based on the second training data may include:

[0166] Find keywords in the training text data to identify the engineering category, and label the training text data with engineering categories based on the keywords;

[0167] The category extraction model is trained based on the second set of labeled training data.

[0168] For example, suppose the training text data is: XXXX Ground YYYYY. Since this training text data includes the keyword "ground", we can determine the target project category to which the training text data belongs based on "ground", and then use the target project category to label the training text data.

[0169] Since keywords can accurately reflect the characteristics of engineering categories, labeling the engineering categories of training models based on keywords yields more accurate results and can improve the accuracy of model training.

[0170] Furthermore, when the same keyword can be used to identify multiple different engineering categories, the number of engineering categories labeled based on that keyword may be uneven, leading to lower robustness of the model. For example, taking the keyword "hanging hole" as an example, the engineering categories it can be used to identify include: water supply and drainage engineering, main structure engineering, ventilation and air conditioning engineering, secondary structure engineering, coating engineering, foundation engineering, and waterproofing engineering. Assume that after labeling the second training data, the number of engineering categories labeled based on the keyword "hanging hole" is as follows:

[0171] Water supply and drainage works: 80 (i.e., based on the "drainage openings", 80 "water supply and drainage works" are marked).

[0172] Main structure: 5 (i.e., based on the "hanging holes", 5 "main structure" projects are marked)

[0173] Ventilation and Air Conditioning Engineering: 3 (i.e., based on the "hanging openings", 3 "ventilation and air conditioning engineering" projects are marked)

[0174] Secondary structural works: 3 (i.e., based on the "hanging holes", 3 "secondary structural works" are marked).

[0175] Painting work: 3 (i.e., based on the "hanging holes", 3 "painting works" are marked)

[0176] Foundation and substructure engineering: 3 (i.e., based on the "hanging hole", 3 "foundation and substructure engineering" projects are marked).

[0177] Waterproofing work: 3 (i.e., based on the "hanging holes", 3 "waterproofing works" are marked)

[0178] The comparison of the number of project categories above shows that "water supply and drainage projects" account for 80% of the project categories labeled with the keyword "cave". This distribution is uneven. Training a model based on such data can easily lead to a decrease in the model's robustness.

[0179] Therefore, in some embodiments, after labeling the training text data with engineering categories, the method of this application may further include:

[0180] Among all keywords, for any given target keyword, count the number of each engineering category tagged based on the target keyword;

[0181] If the proportion of the number of each project category labeled based on the target keywords exceeds the second threshold, the second training data is adjusted to reduce the probability of identifying the target project category based on the target keywords.

[0182] This is to prevent uneven distribution of the number of engineering categories labeled based on the target keywords, and to improve the robustness of the model.

[0183] Furthermore, considering the hierarchical relationship between specialized engineering projects, sub-projects, and individual items, this hierarchical relationship can help improve the accuracy of model training. Therefore, in some embodiments, the above-mentioned labeling of training text data with engineering categories based on keywords may include:

[0184] Based on the keywords in the training text data, determine the initial level of the project category to which the training text data belongs;

[0185] Get the parent project category of the initial level project category, and merge the initial level project category and the parent project category;

[0186] The training text data is labeled using the merged project categories.

[0187] Specifically, the primary engineering category can be the lowest-level engineering category to which the training text data belongs (such as a sub-item project or a sub-section project). When labeling the training text data, the training text data and the next higher-level engineering category can be merged, and the merged engineering category can be used to label the training text data. For example, the training text data can be labeled as: Civil Engineering # Foundation and Substructure Engineering. In this way, the hierarchical relationship of engineering categories can be used to improve the accuracy of model training.

[0188] In some embodiments, the category extraction model can be a multi-class, multi-label classification model, such as the ARobustlyOptimized BERT model. The multi-class, multi-label classification model can be obtained through fine-tuning based on the Wenxin 3.0 pre-trained model. The corresponding key hyperparameters can be set as follows:

[0189] max_seq_length = 64, maximum text length

[0190] model_name = ernie-3.0-medium-zh pre-trained model

[0191] batch_size = 64 training batches

[0192] learning_rate = 5e-5 learning rate

[0193] Epochs = 20 iterations

[0194] early_stop_nums = 5 Number of early stops

[0195] This concludes the explanation of training data annotation for the category extraction model.

[0196] In some embodiments, the second training data can be divided into two subsets: a training set and a test set. The training text data in the training set can be used for model training, and the training text data in the test set can be used for model testing. To ensure good coverage of the test set by the training set and guarantee the accuracy of model training, the number of first keywords used when annotating the training text data in the training set and the number of second keywords used when annotating the training text data in the test set can be counted. If the difference between the number of first keywords and the number of second keywords is greater than a threshold, it can be determined that the training text data in the training set does not completely cover the training text data in the test set. In this case, the training text data in the training set can be expanded to improve the model training accuracy.

[0197] Once the second training data has been labeled and the training set data in the second training data can cover the test set data, the training data can be input into the category extraction model for model training.

[0198] In some embodiments, considering that the training text data formats extracted from different types of construction documents may not be entirely the same—for example, the training text data format extracted from inspection records may not be entirely the same as the training text data format extracted from cost lists—the training text data extracted from different types of construction documents can be distinguished, and the model can be trained according to different data formats.

[0199] This concludes the training instructions for the category extraction model.

[0200] The training process of the part extraction model is as follows:

[0201] First, the training text data in the second training data can be labeled to obtain a labeled dataset. Specifically, the first entity describing the location and the second entity describing the type of location in the construction text data can be labeled separately.

[0202] In some embodiments, a construction site framework table can be pre-built. The construction site framework table can at least include information such as the site and the site category to which the site belongs. Thus, when annotating training text data, the site category of each site can be queried from the construction site framework table, thereby annotating the training text data. The site categories include, but are not limited to, sections, groups, individual buildings, supporting buildings, floors, functional areas, horizontal flow sections, vertical flow sections, elevations, and axes.

[0203] After annotation is complete, the part extraction model can be trained by following these steps:

[0204] 1) Randomly divide the labeled dataset into K groups, use K-1 groups as training data and the other group as test data, and a total of K pairs of training and test data can be divided.

[0205] 2) Using single-sentence-part description entity data from K training sets, train K RoBERTa-CRF models to extract part description entities from single sentences and classify them as "part category_description", which is called the part description recognition model.

[0206] 3) Test the description recognition model for K parts and generate test results. For cases with incorrect predictions, generate a difficult example set for description cross-validation. The difficult example set for description cross-validation includes fields such as single-sentence text, labeled description entities, and predicted description entities.

[0207] 4) Using K part description entity-part type entity data from the training set, train K conditional-RoBERTa-CRF models to extract part types from part description entities of different part categories and classify them as "part category_type", which is called part type recognition model.

[0208] 5) Test the K part type recognition models and generate the test results. For the cases that predicted incorrectly, generate a difficult case set for type cross-validation. The difficult case set for type cross-validation includes fields such as part description entity, labeled type entity, and predicted type entity.

[0209] 6) If the test results of the description recognition model and the test results of the type recognition model both meet the threshold requirements, proceed directly to S500; otherwise, proceed to S400.

[0210] 7) Manually verify and cross-check difficult cases, and update the part labeling data.

[0211] This concludes the training instructions for the part extraction model.

[0212] The training process of the second model will be explained below.

[0213] In some embodiments, the second model and the first model can use the same training data. That is, the second model can be trained based on the second training data. The training process of the second model may include:

[0214] 1) Based on a thesaurus, each training text data in the second training dataset can be labeled. Labeling content can include materials, components, material hierarchy, and the filenames of construction projects from which the training text data is extracted. The following is an example of labeling content for training text data:

[0215] {"Task Name":"Reinforcement Binding for Exposed Piles","Supervisor Task":"Foundation and Substructure","Specialty":["Civil Engineering"],"Sub-item":["Foundation and Substructure Engineering"],"System":["Other"],"Materials":["Ordinary Concrete"],"Process":["Pouring"],"Component":["Foundation Pad"]}

[0216] Based on this example, it is necessary to label the text training data with information such as task name, parent task, major, and sub-items.

[0217] 2) Extract text pairs from the labeled training text data. An example of a text pair is shown below:

[0218] {"sentence":"Reinforced concrete foundation pouring","text_pair":"pipe material","label":0}

[0219] {"sentence":"Reinforced concrete foundation pouring","text_pair":"Foundation foundation","label":1}

[0220] Wherein, sentence represents the training text data;

[0221] text_pair represents a component or material;

[0222] The label indicates whether the components or materials in the text pair have an inference relationship with the training text data in the sentence. If the label value is 0, it means that there is no inference relationship between the components or materials in the text pair and the training text data in the sentence, that is, the training text data does not include the components or materials in the text pair; if the label value is 1, it means that there is an inference relationship between the components or materials in the text pair and the training text data in the sentence, that is, the training text data includes the components or materials in the text pair.

[0223] 3) Input the text pairs into the second model to train the second model.

[0224] This concludes the explanation of the construction element extraction method in this application.

[0225] Corresponding to the construction element extraction method, this application also provides a construction element extraction system. (See also...) Figure 3 A schematic diagram of a construction element extraction system provided in one embodiment of this application. Figure 3 In China, the construction element extraction system includes:

[0226] The data extraction module is used to acquire construction documents and extract construction text data from the construction documents;

[0227] The first extraction module is used to extract a first construction element from the construction text data, wherein the first construction element includes the target project category to which the construction text data belongs;

[0228] The fusion module is used to acquire candidate materials and candidate components corresponding to the target project category, and to fuse the candidate materials, candidate components and the construction text data to obtain fusion information;

[0229] The second extraction module is used to extract a second construction element from the construction text data from the fused information, wherein the second construction element includes material information and component information in the construction text data.

[0230] In some embodiments, the first extraction module and the second extraction module are specifically used for:

[0231] Delete invalid text data that is irrelevant to the construction elements to be extracted from the construction text data;

[0232] Based on the construction text data after deleting the invalid text data, construction elements are extracted.

[0233] In some embodiments, the first construction element further includes location information in the construction text data;

[0234] When extracting the target project category, the first extraction module is specifically used for

[0235] The location information is treated as invalid text data that is irrelevant to the target project category, and the location information is deleted from the construction text data.

[0236] In some embodiments, the data extraction module is specifically used for:

[0237] The construction text data is input into the trained first model, and the first model outputs the first construction element based on the data features of the construction text data. Before inputting the construction text data into the first model, the first model is trained using the following method:

[0238] Obtain initial training data, which includes multiple training text data for model training;

[0239] The first training data is obtained by deleting invalid text data that is irrelevant to the construction elements to be extracted from the initial training data;

[0240] In the first training data, find the first training text data and the second training text data whose similarity exceeds the first threshold, and delete the first training text data or the second training text data to obtain the second training data;

[0241] The first model is trained based on the second training data.

[0242] In some embodiments, the first model includes a category extraction model for extracting project categories; the data extraction module is specifically used for:

[0243] Search for keywords in the training text data to identify the project category, and label the training text data with project categories based on the keywords;

[0244] The category extraction model is trained based on the second training data after annotation.

[0245] In some embodiments, the same keyword can be used to identify multiple different engineering categories;

[0246] After labeling the training text data with project categories, the data extraction module is further used for:

[0247] Among all keywords, for any given target keyword, count the number of each project category tagged based on the target keyword;

[0248] If the proportion of the number of each project category labeled according to the target keyword exceeds the second threshold, the second training data is adjusted to reduce the probability of identifying the target project category based on the target keyword.

[0249] In some embodiments, the data extraction module is specifically used for:

[0250] Based on the keywords in the training text data, determine the initial level engineering category to which the training text data belongs;

[0251] Obtain the previous level project category of the initial level project category, and merge the initial level project category and the previous level project category;

[0252] The training text data is labeled using the merged project categories.

[0253] In some embodiments, the first construction element further includes location information in the construction text data, and the first model includes a location extraction model for extracting the location information.

[0254] The data extraction module is specifically used for:

[0255] The construction text data is input into the part extraction model, and the part extraction model extracts the first entity describing the part and the second entity describing the part type from the data in the construction text.

[0256] After obtaining the first entity and the second entity, the method further includes:

[0257] The first entity and the second entity are parsed to obtain the location information.

[0258] In some embodiments, the data extraction module is specifically used for:

[0259] Determine the first parsing method for the first entity and the second parsing method for the second entity;

[0260] The first entity is parsed according to the first parsing method to obtain the first parsing information;

[0261] The second entity is parsed according to the second parsing method to obtain the second parsing information;

[0262] The first and second parsed information are combined to obtain the location information.

[0263] In some embodiments, the second extraction module is specifically used for:

[0264] The fused information is input into the trained second model, and the second model outputs element reasoning information. The element reasoning information includes candidate materials with material identifiers and candidate components with component identifiers. The material identifiers are used to identify whether the candidate materials are located in the construction text data, and the component identifiers are used to identify whether the candidate components are located in the construction text data.

[0265] Based on the inference information of the aforementioned elements, the target materials and target components in the construction text data are determined.

[0266] In some embodiments, after determining the target material and the target component, the second extraction module is further configured to:

[0267] Obtain the material property information of the target material and the component property information of the target component;

[0268] The target material and the material property information are combined to obtain the material information;

[0269] The target component and the component attribute information are merged to obtain the component information.

[0270] Please see Figure 4This is a schematic diagram of an electronic device provided in one embodiment of this application. The electronic device includes a processor and a memory. The memory stores a computer program, which, when executed by the processor, implements the method described above.

[0271] The processor can be a central processing unit (CPU). It can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or combinations thereof.

[0272] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as the program instructions / modules corresponding to the methods in the embodiments of this invention. The processor executes various functional applications and data processing by running the non-transitory software programs, instructions, and modules stored in the memory, thereby implementing the methods described in the above embodiments.

[0273] The memory may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created by the processor, etc. Furthermore, the memory may include high-speed random access memory and non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory may optionally include memory remotely located relative to the processor, which can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0274] One embodiment of this application also provides a computer-readable storage medium for storing a computer program that, when executed by a processor, implements the above-described method.

[0275] Although embodiments of the present disclosure have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the present disclosure, and such modifications and variations all fall within the scope defined by the appended claims.

Claims

1. A construction element extraction method characterized by, The method includes: Obtain construction documents and extract construction text data from the construction documents; Based on the data characteristics of the construction text data, a first construction element is extracted from the construction text data, and the first construction element includes the target project category to which the construction text data belongs; Obtain candidate materials and candidate components corresponding to the target project category, and fuse the candidate materials, candidate components and construction text data to obtain fused information; The second construction element is extracted from the construction text data from the fused information. The second construction element includes material information and component information from the construction text data. The step of extracting the first construction element from the construction text data includes: inputting the construction text data into a trained first model, and having the first model output the first construction element based on the data features of the construction text data; The first model includes a category extraction model for extracting project categories; training the category extraction model based on training text data includes: finding keywords in the training text data for identifying project categories, and labeling the training text data with project categories based on the keywords; and training the category extraction model based on the labeled training data. The step of labeling the training text data with project categories based on the keywords includes: determining the initial level project category to which the training text data belongs based on the keywords in the training text data; obtaining the previous level project category of the initial level project category and merging the initial level project category and the previous level project category; and labeling the training text data using the merged project category.

2. The method as described in claim 1, characterized in that, Extracting the first construction element or the second construction element from the construction text data includes: Delete invalid text data that is irrelevant to the construction elements to be extracted from the construction text data; Based on the construction text data after deleting the invalid text data, construction elements are extracted.

3. The method as described in claim 2, characterized in that, The first construction element also includes location information in the construction text data; When extracting the target project category, deleting invalid text data that is irrelevant to the construction elements to be extracted from the construction text data includes: The location information is treated as invalid text data that is irrelevant to the target project category, and the location information is deleted from the construction text data.

4. The method as described in claim 1, characterized in that, Before inputting the construction text data into the first model, the first model is trained using the following method: Obtain initial training data, which includes multiple training text data for model training; The first training data is obtained by deleting invalid text data that is irrelevant to the construction elements to be extracted from the initial training data; In the first training data, find the first training text data and the second training text data whose similarity exceeds the first threshold, and delete the first training text data or the second training text data to obtain the second training data; The first model is trained based on the second training data.

5. The method as described in claim 4, characterized in that, The same keyword can be used to identify multiple different project categories; After labeling the training text data with project categories, the method further includes: Among all keywords, for any given target keyword, count the number of each project category tagged based on the target keyword; If the proportion of the number of each project category labeled according to the target keyword exceeds the second threshold, the second training data is adjusted to reduce the probability of identifying the target project category based on the target keyword.

6. The method as described in claim 1, characterized in that, The first construction element also includes location information in the construction text data, and the first model includes a location extraction model for extracting the location information; The step of inputting the construction text data into the trained first model and having the first model output the first construction element includes: The construction text data is input into the part extraction model, and the part extraction model extracts the first entity describing the part and the second entity describing the part type from the data in the construction text. After obtaining the first entity and the second entity, the method further includes: The first entity and the second entity are parsed to obtain the location information.

7. The method as described in claim 6, characterized in that, The step of parsing the first entity and the second entity to obtain the location information includes: Determine the first parsing method for the first entity and the second parsing method for the second entity; The first entity is parsed according to the first parsing method to obtain the first parsing information; The second entity is parsed according to the second parsing method to obtain the second parsing information; The first and second parsed information are combined to obtain the location information.

8. The method as described in claim 1, characterized in that, The step of extracting the second construction element from the construction text data from the fused information includes: The fused information is input into the trained second model, and the second model outputs element reasoning information. The element reasoning information includes candidate materials with material identifiers and candidate components with component identifiers. The material identifiers are used to identify whether the candidate materials are located in the construction text data, and the component identifiers are used to identify whether the candidate components are located in the construction text data. Based on the inference information of the aforementioned elements, the target materials and target components in the construction text data are determined.

9. The method as described in claim 8, characterized in that, After determining the target material and the target component, the method further includes: Obtain the material property information of the target material and the component property information of the target component; The target material and the material property information are combined to obtain the material information; The target component and the component attribute information are merged to obtain the component information.

10. A construction element extraction system, characterized in that, The system includes: The data extraction module is used to acquire construction documents and extract construction text data from the construction documents; The first extraction module is used to extract a first construction element from the construction text data based on the data characteristics of the construction text data, wherein the first construction element includes the target project category to which the construction text data belongs; The fusion module is used to acquire candidate materials and candidate components corresponding to the target project category, and to fuse the candidate materials, candidate components and the construction text data to obtain fusion information; The second extraction module is used to extract a second construction element from the construction text data from the fused information, wherein the second construction element includes material information and component information in the construction text data; The first extraction module is further configured to: input the construction text data into a trained first model, and have the first model output the first construction element based on the data features of the construction text data; The first model includes a category extraction model for extracting project categories; the first extraction module is further configured to: find keywords in training text data for identifying the project categories, and label the training text data with project categories based on the keywords; and train the category extraction model based on the labeled training data. The first extraction module is further configured to: determine the initial level project category to which the training text data belongs based on the keywords in the training text data; obtain the previous level project category of the initial level project category, and merge the initial level project category and the previous level project category; and use the merged project category to label the training text data.

11. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store a computer program that, when executed by a processor, implements the method as described in any one of claims 1 to 9.

12. An electronic device, characterized in that, The electronic device includes a processor and a memory, the memory being used to store a computer program that, when executed by the processor, implements the method as described in any one of claims 1 to 9.