An AI-driven engineering cost management system

CN122840896APending Publication Date: 2026-09-29广州珠实地产有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611122336.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-28
Publication Date
2026-09-29

AI Technical Summary

Technical Problem

[0003]然而,现有技术方案普遍以单一文档或单一项目整体作为分析对象,各文档独立归档、独立审核,尚未有效解决跨文档、跨类型成本事项之间隐性关联风险的挖掘问题

Benefits of technology

[0014]综上所述,本申请提供的一种通过AI驱动的工程成本管理系统能够基于结构化文档解析与异构图谱构建,对跨文档、跨类型的成本事项进行系统性关联融合,用以实现工程成本隐性风险的全面表征与统一表达;借助异构注意力网络的多层消息传递与隐性关联挖掘,可以达到对单份文档独立审核时无法察觉的复合型风险链路进行主动发现与全链枚举的技术效果,从而将风险识别从单点检测提升至全网排查层面;基于路径聚类与根因贡献度计算,能够实现从风险簇到根因节点的精准追溯,用以将预警焦点从风险现象下沉至问题源头,有效提升审核的针对性与决策效率;进一步地,通过人工反馈驱动的模型增量更新与虚拟边权重动态修正,可以达到风险识别能力的持续进化,用以实现审核知识从个体经验向系统智能的结构化沉淀与可复用转移;同时,以文档节点为起点的可解释性风险传播路径生成机制,能够为每一预警结论提供完整的证据链路,用以支撑审核决策的透明化与可追溯化。由此,本发明能够使工程成本管理从被动的事后审核升级为主动的事前预防模式,用以降低隐性风险对项目动态成本的真实性造成的冲击,实现管理防线的前置化与系统化。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122840896A_ABST
    Figure CN122840896A_ABST
Patent Text Reader

Abstract

This invention relates to an AI-driven engineering cost management system, which performs the following steps: format unification and structured information extraction of a collection of engineering cost-related documents to generate a structured dataset; mapping entities in the structured dataset to heterogeneous graph nodes and establishing weighted directed edges to generate a heterogeneous graph; performing multi-layer message passing on the heterogeneous graph based on a heterogeneous attention network to update the feature representation of each node, calculating the implicit association strength based on the feature representation and superimposing virtual edges to generate an enhanced graph, enumerating risk propagation paths and calculating the risk value of each path; selecting high-risk paths and performing hierarchical clustering to form risk clusters, calculating root cause contribution to locate root cause candidate nodes, and calculating the comprehensive risk level to output graded early warning information; incrementally updating model parameters and dynamically correcting virtual edge weights based on manual review feedback, outputting incrementally updated model parameters and a dynamic evolution graph.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of engineering cost management technology, and more specifically to an AI-driven engineering cost management system. Background Technology

[0002] Full-process cost management is a core component of project investment control and benefit assurance. Its management objects encompass dozens of diverse and scattered cost-related documents, including change orders, progress payment applications, contracts, bills of quantities, construction logs, and material arrival and acceptance forms. With the continuous expansion of project scale and the increasingly compressed construction cycles, the amount of data involved in cost management has exploded, and the cross-referencing and logical connections between documents have become increasingly complex. In recent years, the application of artificial intelligence technology in the field of engineering cost estimation has gradually deepened, achieving certain progress in areas such as quantity calculation, cost prediction, cost control, and risk assessment. Some existing solutions integrate multi-dimensional data from engineering projects by constructing knowledge graphs or heterogeneous graphs, attempting to achieve a unified expression of dependencies between engineering entities; other solutions utilize machine learning models for in-depth mining and trend analysis of cost data. These technological explorations have, to some extent, improved the automation level and data processing efficiency of cost management.

[0003] However, existing technical solutions generally use a single document or a single project as the analysis object, with each document archived and reviewed independently. This approach has not effectively addressed the problem of uncovering implicit risks associated with cost items across documents and types. In real-world engineering scenarios, a change order may be fully compliant when reviewed individually, as may a progress payment application. However, when these are examined in conjunction with each other across different document batches and different personnel, complex risks such as double-counting and inflated quantities may be exposed. These risk chains often span three or more documents, involving complex relationships across multiple dimensions, including quantities, amounts, timeframes, signatories, and construction areas. Traditional manual review methods are limited by the dispersed storage of massive amounts of documents and the information silo effect, making it difficult to systematically establish a cross-document relationship perspective, let alone quantify the magnitude and urgency of associated risks. While existing graph-based or knowledge graph-based solutions can construct data relationships within a single project, their graph construction still focuses on the internal relationships of a single type of document or project, lacking a proactive mechanism for discovering implicit relationships across multiple documents and across different types and stages. Summary of the Invention

[0004] Based on this, the purpose of this invention is to provide an AI-driven engineering cost management system that can automatically construct cross-document association graphs, uncover hidden risk links, and achieve proactive early warning.

[0005] The objective of this invention is achieved through the following solution:

[0006] In a first aspect, the present invention provides an AI-driven engineering cost management system, comprising the following modules:

[0007] The engineering document structuring module is used to uniformly convert the format of the collection of engineering cost-related documents uploaded by users, and to extract domain entities and relationships from each document through a pre-trained language model. The entities, relationships between entities and document metadata in each document are organized into structured tuples and the structured tuples are summarized to generate a structured dataset.

[0008] The cost heterogeneous graph representation module is used to map each entity in the structured dataset to a heterogeneous graph node, establish weighted directed edges between nodes according to the relationships between entities in the structured dataset, encode and map the attribute information of each entity in the structured dataset to the feature vector of each node, and combine the heterogeneous graph nodes, weighted directed edges and feature vectors to generate a heterogeneous graph.

[0009] The risk path enhancement mining module is used to perform multi-layer message passing on a heterogeneous graph based on a heterogeneous attention network. It integrates the contextual association information of each node in the multi-hop neighborhood to update the feature representation of each node, and calculates the implicit association strength between nodes based on the updated node features. Implicit associations that meet the preset judgment conditions are superimposed as virtual edges on the heterogeneous graph to generate an enhanced graph. Starting from the document nodes in the enhanced graph, the module enumerates risk propagation paths and calculates the risk value of each path based on the path edge weights to generate a set of paths carrying risk values.

[0010] The risk cluster root cause early warning module is used to filter out paths whose risk values ​​exceed a preset risk screening threshold based on the path set to form a subset of paths to be clustered. The subset of paths to be clustered is then subjected to hierarchical clustering to merge paths with similar nodes into the same risk cluster. The root cause contribution of each node is calculated based on the location information of the nodes in each risk cluster and the path risk value to locate the root cause candidate nodes. At the same time, the comprehensive risk level of each risk cluster is calculated based on the statistical characteristics of the path risk values ​​in each risk cluster, and the graded early warning information is output based on the comprehensive risk level.

[0011] The model graph closed-loop update module is used to receive manual review feedback from each risk cluster, incrementally update the model parameters of the heterogeneous attention network based on the manual review feedback, and dynamically correct the weights of virtual edges in the augmentation graph. It outputs the incrementally updated model parameters of the heterogeneous attention network and the dynamically corrected augmentation graph.

[0012] Secondly, this application provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps performed by any of the above-mentioned AI-driven engineering cost management systems.

[0013] Thirdly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements any of the steps performed by the AI-driven engineering cost management described above.

[0014] In summary, the AI-driven engineering cost management system provided in this application can systematically link and integrate cost items across documents and types based on structured document parsing and heterogeneous graph construction, thereby achieving a comprehensive representation and unified expression of implicit risks in engineering costs. By leveraging the multi-layered message passing and implicit association mining of heterogeneous attention networks, it can proactively discover and enumerate complex risk chains that are undetectable during independent review of a single document, thus elevating risk identification from single-point detection to a comprehensive network-wide investigation. Based on path clustering and root cause contribution calculation, This invention enables precise tracing from risk clusters to root cause nodes, shifting the focus of early warning from risk phenomena to the source of problems, effectively improving the targeting of audits and decision-making efficiency. Furthermore, through incremental model updates driven by human feedback and dynamic correction of virtual edge weights, continuous evolution of risk identification capabilities is achieved, enabling the structured and reusable transfer of audit knowledge from individual experience to system intelligence. Simultaneously, the interpretable risk propagation path generation mechanism, starting from document nodes, provides a complete evidence chain for each early warning conclusion, supporting transparency and traceability in audit decisions. Therefore, this invention upgrades engineering cost management from passive post-audit to proactive pre-prevention, reducing the impact of hidden risks on the accuracy of project dynamic costs and achieving proactive and systematic management defenses.

[0015] To better understand and implement this invention, the following detailed description is provided in conjunction with the accompanying drawings. Attached Figure Description

[0016] Figure 1 A flowchart illustrating an AI-driven engineering cost management system provided in this application embodiment;

[0017] Figure 2 This is a schematic diagram illustrating the process of generating an enhancement graph by an enhancement graph generation unit provided in another embodiment of this application. Detailed Implementation

[0018] To facilitate understanding of the present invention, a more complete description will be given below with reference to the accompanying drawings. Preferred embodiments of the invention are shown in the drawings. However, the invention can be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided to provide a thorough and complete understanding of the disclosure of the invention.

[0019] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein in the description of the invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0020] Please see Figure 1 This illustration demonstrates an AI-driven engineering cost management system provided in an embodiment of this application. The embodiment uses the system's application to a terminal as an example; however, it is understood that the system can also be applied to a server, or to a system including both a terminal and a server, and is implemented through interaction between the terminal and the server. Figure 1 As shown, the present invention provides an AI-driven engineering cost management system 100, which includes an engineering document structuring module 110, a cost heterogeneity graph representation module 120, a risk path enhancement and mining module 130, a risk cluster root cause early warning module 140, and a model graph closed-loop update module 150.

[0021] The engineering document structuring module 110 is used to uniformly convert the format of the collection of engineering cost-related documents uploaded by users, and to extract domain entities and relationships from each document through a pre-trained language model. The entities, relationships between entities and document metadata in each document are organized into structured tuples and the structured tuples are summarized to generate a structured dataset.

[0022] Specifically, the engineering document structuring module 110 receives a collection of engineering cost-related documents uploaded by the user. This collection includes various document types such as change orders, progress payment applications, contracts, bills of quantities, construction logs, and material arrival and acceptance forms. The engineering document structuring module 110 has a built-in multi-format parsing adapter that supports streaming reading of PDF, DOCX, XLSX, and XML documents. The engineering document structuring module 110 uses a preset layout recognition algorithm to perform boundary detection and content extraction on each document. For PDF documents, the engineering document structuring module 110 uses a coordinate-based text extraction method to identify table areas, paragraph areas, and title areas in the document, extracting the text content from each area. For DOCX documents, the engineering document structuring module 110 uses the document object model parsing interface to traverse the document structure by paragraph and table nodes, extracting the text content item by item.

[0023] For XLSX documents, the engineering document structuring module 110 traverses the cells row by row and column by column of the worksheet, extracting the values ​​and text within each cell. For XML-formatted structured documents, the engineering document structuring module 110 parses their tag tree structure and extracts the text content within each tag pair. After content extraction, the engineering document structuring module 110 converts all documents into UTF-8 encoded plain text format. The engineering document structuring module 110 then segments the converted document text at the sentence level, forming sentence sequences. The engineering document structuring module 110 inputs the sentence sequences of each document into a pre-trained language model. This pre-trained language model uses a neural network model based on the Transformer architecture, which has been fine-tuned and trained on a corpus in the field of engineering cost estimation for masked language modeling tasks. The engineering document structuring module 110 concatenates the sentence sequences of each document sequentially, inserting delimiters during the concatenation process to distinguish different sentences.

[0024] The engineering document structuring module 110 fills the concatenated text sequence to the maximum sequence length preset by the model, truncating any parts exceeding the length and padding any parts below the length with zeros. The engineering document structuring module 110 then inputs the processed text sequence into the model for forward inference computation. The model performs decoding operations on the named entity recognition head branch for each sentence. This head branch uses a conditional random field layer to sequence-label each token representation output by the model, outputting a BIO-labeled sequence. Based on the labeled sequence, the start and end positions of each entity are defined, and the entity text is extracted. Simultaneously, the model performs decoding operations on the relation classification head branch. This head branch concatenates the start and end token representations of the sentence, inputs them into a fully connected classification network, and outputs the predicate probability distribution of the relationship between each token pair. The predicate with the highest probability is taken as the relationship between the entities.

[0025] After entity and relation extraction are completed, the engineering document structuring module 110 instantiates and encapsulates the extracted entities, relationships between entities, and information extracted from document metadata according to a preset tuple structure. Document metadata includes document name, document number, upload timestamp, and document page number. The preset tuple structure uses the entity as the first element, the relation predicate as the second element, the entity as the third element, and the metadata dictionary as the fourth element. The engineering document structuring module 110 aggregates all structured tuples generated from each document into an in-memory database cache. The engineering document structuring module 110 performs deduplication on the cached structured tuples, retaining a single instance for tuples with identical entity text and relation predicates. The engineering document structuring module 110 performs consistency checks on the deduplicated structured tuples, verifying the logical consistency of entities and relations in each tuple and removing logically conflicting tuples. The system summarizes all valid structured tuples and outputs them as a structured dataset.

[0026] The cost heterogeneous graph representation module 120 is used to map each entity in the structured dataset to a heterogeneous graph node, establish weighted directed edges between nodes according to the relationships between entities in the structured dataset, encode and map the attribute information of each entity in the structured dataset to the feature vector of each node, and combine the heterogeneous graph nodes, weighted directed edges and feature vectors to generate a heterogeneous graph.

[0027] Specifically, the cost heterogeneous graph representation module 120 receives a structured dataset output by the engineering document structuring module. The system iterates through each unique entity in the structured dataset, assigning a globally unique identifier to each entity. This globally unique identifier is generated in UUID format to ensure that different entities are uniquely identifiable within the system. The cost heterogeneous graph representation module 120 uses this identifier as an index to create node objects in memory. Based on the entity type labels recorded in the structured dataset, it writes the corresponding type attributes into the type field of the node object. The entity type labels include quantity entity labels, amount entity labels, time entity labels, signatory identity entity labels, construction area location entity labels, and document entity labels. After completing the node mapping for all entities, the system generates a heterogeneous graph node set.

[0028] Furthermore, the cost heterogeneous graph representation module 120 extracts each group of structured tuples from the structured dataset, reading the source entity, target entity, and relation predicate from each tuple. The cost heterogeneous graph representation module 120 constructs a topological connection of directed edges, starting from the node corresponding to the source entity and ending at the node corresponding to the target entity. The cost heterogeneous graph representation module 120 detects duplicate relations where the source and target entities are identical in each tuple. For detected duplicate relations, the system calls an aggregation function to calculate the initial weight value of the directed edge. This aggregation function counts the co-occurrence frequency of the relation in all structured tuples. The cost heterogeneous graph representation module 120 simultaneously obtains the upload timestamps of each document corresponding to the relation and calculates the difference between each upload timestamp and the current system time. The cost heterogeneous graph representation module 120 uses the time difference as a time decay factor to attenuate and correct the co-occurrence frequency. The corrected value is used as the edge weight of the directed edge. After completing the construction of directed edges for all tuples, the cost heterogeneous graph representation module 120 generates a weighted directed edge set.

[0029] The system constructs an attribute encoder, which is composed of a multilayer perceptron network. The heterogeneous graph representation module 120 inputs the attribute information of each entity in the structured dataset into this attribute encoder. For numerical attributes, the system uses a minimum-maximum normalization method to map attribute values ​​to the range of zero to one, generating continuous features. For categorical attributes, the system uses a one-hot encoding method to map each categorical value into a binary vector, generating discrete features. The system concatenates the continuous and discrete features to form the original attribute feature vector of the entity. The multilayer perceptron network inputs this original attribute feature vector into the first fully connected layer, processes it through a nonlinear activation function, and outputs it to the second fully connected layer. The last layer of the multilayer perceptron network compresses and maps the input features to a continuous vector space of a preset dimension, outputting a continuous vector of that dimension as the initial feature vector of the entity. The system binds and stores this initial feature vector with the corresponding node object. The system combines the heterogeneous graph node set, weighted directed edge set, and feature vector set according to a graph data structure format. This graph data structure format is stored using a compressed sparse row format. After the system completes the combination, it generates a heterogeneous graph.

[0030] The risk path enhancement mining module 130 is used to perform multi-layer message passing on a heterogeneous graph based on a heterogeneous attention network. It integrates the contextual association information of each node in the multi-hop neighborhood to update the feature representation of each node, and calculates the implicit association strength between nodes based on the updated node features. Implicit associations that meet the preset judgment conditions are superimposed as virtual edges on the heterogeneous graph to generate an enhanced graph. Starting from the document node in the enhanced graph, the risk propagation path is enumerated and the risk value of each path is calculated based on the edge weight of the path to generate a set of paths carrying risk values.

[0031] Specifically, the risk path enhancement and mining module 130 loads a pre-trained heterogeneous attention network model, which contains multiple graph attention layers. The risk path enhancement and mining module 130 inputs the heterogeneous graph into the first graph attention layer of this heterogeneous attention network. In the first graph attention layer, the system identifies the node type of each target node. Based on the node type of the target node and the node types of each source node in its neighborhood, the system selects the corresponding type-aware linear transformation matrix. The risk path enhancement and mining module 130 maps the feature vectors of the source nodes and the target nodes using the corresponding type-aware linear transformation matrices, transforming the source node features and target node features to a common semantic space. The risk path enhancement and mining module 130 concatenates the mapped source node features and target node features, and inputs the concatenated vector into a single-layer feedforward neural network, which outputs attention coefficients. The risk path enhancement and mining module 130 applies a softmax function to normalize these attention coefficients, obtaining the normalized attention weights of the source node on the target node.

[0032] The risk path enhancement mining module 130 multiplies the normalized attention weights by the mapped features of the source nodes, and sums the weighted features of all source nodes in the neighborhood of the target node to obtain the updated feature representation of the target node in the first graph attention layer. The risk path enhancement mining module 130 uses the updated feature representations of each node output from the first graph attention layer as input to the second graph attention layer. In the second graph attention layer, the risk path enhancement mining module 130 repeatedly performs node feature mapping, attention weight calculation, and weighted summation operations.

[0033] The risk path enhancement mining module 130 passes the information layer by layer in the manner described above until all graph attention layers have completed their computation. As the number of layers increases, the neighborhood of each target node expands layer by layer, ultimately fusing the contextual association information of nodes within the multi-hop neighborhood. The risk path enhancement mining module 130 obtains the feature representations of each node output from the last layer as updated node feature vectors. The risk path enhancement mining module 130 performs traversal detection on all node pairs in the heterogeneous graph. The risk path enhancement mining module 130 filters out node pairs that are not directly connected by edges in the original heterogeneous graph structure. For the filtered node pairs, the risk path enhancement mining module 130 detects whether they have common multi-hop neighbor nodes. For node pairs with common multi-hop neighbors, the system extracts the two updated feature vectors corresponding to that node pair.

[0034] The risk path enhancement mining module 130 calculates the cosine similarity between two updated feature vectors and uses the result as the initial value for the implicit association strength between the node pair. The risk path enhancement mining module 130 compares the implicit association strength with a preset association threshold. Simultaneously, the risk path enhancement mining module 130 checks whether the document type to which the node pair belongs satisfies preset cross-type combination conditions. These preset cross-type combination conditions include combinations of change orders and progress payment applications, change orders and bills of quantities, and progress payment applications and material arrival acceptance forms. The system identifies node pairs with implicit association strength greater than the preset association threshold and satisfying the preset cross-type combination conditions as valid implicit associations. The risk path enhancement mining module 130 overlays these valid implicit associations as virtual edges onto the heterogeneous graph. The system sets the weight of the virtual edge to the corresponding implicit association strength value.

[0035] After completing the overlay of all valid implicit associations, the risk path enhancement mining module 130 generates an enhancement graph, using each document type node in the enhancement graph as the starting point of the path. Preferably, the risk path enhancement mining module 130 can use a depth-first search algorithm to enumerate risk propagation paths starting from each starting point. During the enumeration process, the risk path enhancement mining module 130 expands the path according to the condition that the path length does not exceed a preset length threshold. The preset length threshold is defined in the configuration file of the risk path enhancement mining module 130. During the path expansion process, the risk path enhancement mining module 130 reads the weight value of each edge it traverses as a risk transmission coefficient. The risk path enhancement mining module 130 multiplies the weight values ​​of all edges on the path to obtain the comprehensive risk value of the path. The risk path enhancement mining module 130 formats and encapsulates each enumerated path and its corresponding comprehensive risk value to generate a path set carrying the risk value.

[0036] The risk cluster root cause early warning module 140 is used to select paths with risk values ​​exceeding a preset risk screening threshold based on the path set to form a subset of paths to be clustered. The subset of paths to be clustered is subjected to hierarchical clustering to merge paths with similar nodes into the same risk cluster. The root cause contribution of each node is calculated based on the location information of the nodes in each risk cluster and the path risk value to locate root cause candidate nodes. At the same time, the comprehensive risk level of each risk cluster is calculated based on the statistical characteristics of the path risk values ​​in each risk cluster, and the graded early warning information is output based on the comprehensive risk level.

[0037] Specifically, the risk cluster root cause early warning module 140 receives a set of paths carrying risk values ​​output by the risk path enhancement mining module. The risk cluster root cause early warning module 140 reads a preset risk screening threshold, traverses each path in the path set, and extracts the comprehensive risk value of each path. The risk cluster root cause early warning module 140 compares the comprehensive risk value of each path with the preset risk screening threshold, filtering out paths with comprehensive risk values ​​less than or equal to the threshold, and retaining paths with comprehensive risk values ​​greater than the threshold. The risk cluster root cause early warning module 140 aggregates the retained paths into a subset of paths to be clustered. The system performs agglomerative hierarchical clustering on this subset of paths to be clustered, calculating the similarity between every two paths in the subset. The similarity metric is the intersection-union ratio (IUR) of the node sets contained in the paths.

[0038] Furthermore, the risk cluster root cause early warning module 140 calculates the ratio of the number of elements in the intersection to the number of elements in the union of the node sets of the two paths, and uses this ratio as the similarity value between the two paths. The system constructs a similarity matrix based on the pairwise similarity calculation results, finds the two path clusters with the highest similarity values ​​in the similarity matrix, merges these two path clusters into a new path cluster, and updates all similarity values ​​related to this new path cluster in the similarity matrix. The risk cluster root cause early warning module 140 repeats the above search, merging, and updating operations until the number of remaining path clusters reaches the system's preset cluster number threshold. The system outputs the final obtained path clusters as risk clusters.

[0039] Furthermore, the risk cluster root cause early warning module 140 performs root cause contribution calculation operations for each risk cluster, extracts the node sequences contained in each path within the risk cluster, and calculates the position type of each node in each path. The position type includes the starting point position type, intermediate node position type, and ending point position type. The risk cluster root cause early warning module 140 configures position weight coefficients for the starting point position type, intermediate node position type, and ending point position type; it should be noted that each position weight coefficient is different. For each node within the risk cluster, the risk cluster root cause early warning module 140 accumulates the number of times it appears as a starting point in each path and multiplies it by the starting point position weight coefficient, accumulates the number of times it appears as an intermediate node in each path and multiplies it by the intermediate node position weight coefficient, and accumulates the number of times it appears as an ending point in each path and multiplies it by the ending point position weight coefficient. The risk cluster root cause early warning module 140 sums the above three accumulated results and multiplies the sum by the sum of the comprehensive risk values ​​of all paths containing that node to obtain the root cause contribution value of that node.

[0040] The risk cluster root cause early warning module 140 sorts the root cause contribution values ​​of each node in descending order and selects the nodes in the top preset number of positions as root cause candidate nodes. The module locates and outputs the entity information of the root cause candidate nodes, performs a comprehensive risk level calculation operation for each risk cluster, extracts the comprehensive risk value of all paths within the risk cluster, and forms a risk value sequence. The module calculates the arithmetic mean of this risk value sequence. The system calculates the standard deviation of the risk value sequence, performs a weighted sum of the arithmetic mean and the standard deviation to obtain the comprehensive risk score for the risk cluster, and maps the comprehensive risk score to a preset level mapping table containing multiple score intervals and corresponding risk levels. The module determines the score interval in which the comprehensive risk score lies and reads the risk level corresponding to that score interval as the comprehensive risk level for the risk cluster. The system queries a preset output strategy table based on the comprehensive risk level. This output strategy table contains the correspondence between risk levels and early warning output types. The system matches the corresponding warning output type based on the query results. Warning output types include system interface pop-up alerts, email push notifications, and system log records. The system then executes the tiered warning information output operation according to the matched warning output type.

[0041] The model graph closed-loop update module 150 is used to receive the manual review feedback of each risk cluster, perform incremental update processing on the model parameters of the heterogeneous attention network based on the manual review feedback, and dynamically correct the weights of the virtual edges in the augmentation graph, and output the incrementally updated model parameters of the heterogeneous attention network and the dynamically corrected augmentation graph.

[0042] Specifically, the model graph closed-loop update module 150 receives review feedback information from human reviewers regarding the output risk cluster annotations. This feedback information includes review result labels and correction description text. The review result labels are categorized as confirmation labels, false positive labels, and partially confirmed labels. The model graph closed-loop update module 150 converts the received review feedback information into structured feedback data, which includes risk cluster identifiers, review label codes, and semantic vector representations of the correction description text. The system performs incremental update processing on the model parameters of the heterogeneous attention network based on the structured feedback data. The system uses regularization constraints for incremental updates, which limit the magnitude of changes in model parameters during the update process. The system obtains the importance weights of each parameter from historical training data, determined based on the diagonal elements of the Fisher information matrix of historical training data. The model graph closed-loop update module 150 constructs an incremental update loss function, which includes a prediction loss term under the current feedback data and a parameter change constraint term. The parameter change constraint term is the sum of the products of the squares of the parameter changes and their corresponding importance weights, multiplied by the constraint strength coefficient.

[0043] The model graph closed-loop update module 150 employs a stochastic gradient descent optimizer during incremental updates, using structured feedback data as input samples. It calculates gradients and updates model parameters through backpropagation. After the incremental update, the module saves the updated model parameters and replaces the original parameters. Simultaneously, it dynamically corrects the weights of virtual edges in the enhancement graph based on the audit feedback information. The module determines the correction direction based on the audit result labels. For confirmed labels, the system increases the weight values ​​of virtual edges involved in the corresponding risk cluster; for false alarm labels, the system decreases the weight values ​​of virtual edges involved in the corresponding risk cluster; for partially confirmed labels, the system determines the set of virtual edges requiring correction based on the semantic analysis results of the correction description text and performs the corresponding upward or downward adjustment operation.

[0044] The model graph closed-loop update module 150 sets an upper limit on the magnitude of each correction operation to prevent drastic fluctuations in weight values. After the system completes the virtual edge weight correction, it triggers a risk value recalculation operation for the risk paths associated with the corrected edge. This recalculation operation is only performed on paths containing the corrected edge and does not involve a full path recalculation. After completing the incremental update of model parameters and the dynamic correction of virtual edge weights, the system stores the updated model parameters and the corrected enhanced graph in the model repository and graph database, respectively. The system appends a timestamp of the current update and statistics on the number of review feedbacks during storage to create a traceable update record.

[0045] In summary, the AI-driven engineering cost management system provided in this application can systematically link and integrate cost items across documents and types based on structured document parsing and heterogeneous graph construction, thereby achieving a comprehensive representation and unified expression of implicit risks in engineering costs. By leveraging the multi-layered message passing and implicit association mining of heterogeneous attention networks, it can proactively discover and enumerate complex risk chains that are undetectable during independent review of a single document, thus elevating risk identification from single-point detection to a comprehensive network-wide investigation. Based on path clustering and root cause contribution calculation, This invention enables precise tracing from risk clusters to root cause nodes, shifting the focus of early warning from risk phenomena to the source of problems, effectively improving the targeting of audits and decision-making efficiency. Furthermore, through incremental model updates driven by human feedback and dynamic correction of virtual edge weights, continuous evolution of risk identification capabilities is achieved, enabling the structured and reusable transfer of audit knowledge from individual experience to system intelligence. Simultaneously, the interpretable risk propagation path generation mechanism, starting from document nodes, provides a complete evidence chain for each early warning conclusion, supporting transparency and traceability in audit decisions. Therefore, this invention upgrades engineering cost management from passive post-audit to proactive pre-prevention, reducing the impact of hidden risks on the accuracy of project dynamic costs and achieving proactive and systematic management defenses.

[0046] In one embodiment, the cost heterogeneity graph representation module 120 of an AI-driven engineering cost management system provided by the present invention is used to perform the following steps:

[0047] S21: Perform deduplication and standardization on each entity in the structured dataset, map each deduplicated independent entity to a node in the heterogeneous graph, and assign a globally unique node index to each node to generate a node set.

[0048] Specifically, the system determines whether entities refer to the same object based on two dimensions: entity type label and entity text content. For cases where text content has format differences, the system performs a standardization conversion operation. This standardization operation includes converting full-width characters to half-width characters, converting uppercase letters to lowercase letters, removing leading and trailing whitespace, converting Chinese numerals to Arabic numerals, and standardizing date formatting. After completing the standardization conversion, entity instances with the same entity type label and completely identical standardized text content are identified as duplicate entities. The first instance to appear is retained as the representative entity, and the records of the remaining duplicate entity instances are merged into this representative entity. During the merging process, a list of source document identifiers for the duplicate entity instances is recorded.

[0049] The system assigns a globally unique node index to each deduplicated independent entity. The node index consists of a project identifier prefix and an auto-incrementing sequence number. The project identifier prefix is ​​determined based on the project code during system initialization, and the auto-incrementing sequence number is assigned sequentially according to the order in which entities are processed. The system organizes all independent entities assigned node indexes into a node set. Each entry in the node set contains a node index, an entity type label, entity standardized text, and a list of source document identifiers. The system also creates an inverted index from entity type to node index for the node set to support rapid node retrieval based on entity type in subsequent steps.

[0050] S22: Traverse the entity relationships within the structured tuples of each document in the structured dataset, assign initial weights to each relationship based on the preset basic confidence level corresponding to the relationship type, and dynamically adjust the initial weights based on the timestamp difference between the documents associated with the two entities involved in the relationship and the overlap of the construction area codes, generating a set of weighted directed edges.

[0051] Specifically, the system iterates through the entity relationships within the structured tuples of each document in the structured dataset, generating a corresponding directed edge for each relationship instance. Based on the relationship type label of the relationship instance, the system retrieves the corresponding basic confidence score from a pre-set basic confidence score table. This table is set during system initialization based on expert knowledge in the engineering management field, with different basic confidence score values ​​corresponding to different relationship types. The system uses the retrieved basic confidence score as the initial weight of the relationship instance. The system performs a dynamic correction operation on the initial weight, based on the timestamp difference between the documents associated with the two entities involved in the relationship and the overlap of construction area codes. The system extracts the generation timestamps of the document containing the head entity and the document containing the tail entity from the document metadata table, calculating the absolute value of their time difference as the timestamp difference. The system calculates a first correction factor for the initial weight based on the timestamp difference; the smaller the timestamp difference, the higher the first correction factor value, and vice versa. The range of the first correction factor is determined by a pre-set mapping function, which is a monotonically decreasing function.

[0052] The system extracts the construction area codes from the documents containing the head entity and the tail entity. The construction area codes employ a hierarchical coding system, with each bit representing a different level of area division. The system calculates the length of the common prefix between the two construction area codes, using the ratio of this length to the total code length as the construction area code overlap. Based on this overlap, the system calculates a second correction factor on the initial weights; a higher overlap results in a higher value for the second correction factor. The system multiplies the initial weights by the first and second correction factors, and the product is used as the corrected weight for the relation instance. Each relation instance is converted into a directed edge, with the direction of the directed edge pointing from the head entity to the tail entity. The weight of each directed edge is set as the corrected weight. All directed edges are aggregated into a weighted directed edge set, where each entry contains a head node index, a tail node index, and an edge weight value.

[0053] S23: Extract the entity type label, numerical attribute, and name text corresponding to each entity from the structured dataset. Encode the entity type label into a type feature vector. Normalize and logarithmically transform the numerical attribute and encode it into an attribute feature vector. Encode the name text into a semantic feature vector through a pre-trained language model. Concatenate the type feature vector, attribute feature vector, and semantic feature vector to generate the feature vector of each node.

[0054] Specifically, the system extracts entity type labels, numerical attributes, and name text for each entity from the structured dataset. Entity type labels are discrete category values, which the system encodes into type feature vectors using one-hot encoding. The dimension of the one-hot encoding equals the total number of entity type categories, with the dimension corresponding to the entity type label having a fixed value, while other dimensions have values ​​of zero. The system extracts the numerical attributes of the entities, including monetary values ​​and quantity values. The system independently performs normalization on each numerical attribute dimension by subtracting the mean of that dimension across all entities from the original value and then dividing by the standard deviation. The system performs a logarithmic transformation on the normalized values ​​using a logarithmic function with the natural constant as the base. For values ​​of zero, the system sets the transformation result to zero. The system then concatenates the logarithmically transformed values ​​from each dimension into an attribute feature vector.

[0055] The system extracts the entity's name text and inputs it into the sentence vector encoding layer of a pre-trained language model. The sentence vector encoding layer encodes the character sequence in the name text and outputs a fixed-dimensional semantic vector, which serves as the semantic feature vector. The sentence vector encoding layer of the pre-trained language model uses pooling to compress the variable-length character sequence output into a fixed-length vector representation; the pooling operation uses average pooling. The system concatenates the type feature vector, attribute feature vector, and semantic feature vector in a preset order. The concatenated vector undergoes a linear transformation layer to change its dimension, ensuring the transformed vector's dimension matches the system's preset feature vector dimension. The transformation matrix of the linear transformation layer is randomly generated during system initialization and updated via backpropagation during subsequent model training. The system uses the dimension-transformed vector as the entity's node feature vector. The system performs the above operations on all entities, generating a feature vector for each node.

[0056] S24: Combine the node set, the weighted directed edge set, and the feature vectors of all nodes according to their node indices to generate a heterogeneous graph.

[0057] Specifically, the system aligns the node set, the weighted directed edge set, and the feature vectors of all nodes according to their node indices to generate a heterogeneous graph. The system establishes a mapping between the node set and feature vectors based on node indices, ensuring that each node index corresponds to a unique feature vector. The system establishes the association between edges and nodes based on the head and tail node indices in the weighted directed edge set. If a head node index exists in the weighted directed edge set but the tail node index does not appear in the node set, the system records the abnormal edge information and skips the addition operation for that edge. The system uses an adjacency matrix format to store the edge information in the heterogeneous graph. The row and column indices of the adjacency matrix are both node indices, and the matrix element values ​​store the edge weight values. For nodes without edges, the matrix elements are set to zero. The system also constructs an edge type tensor, which has the same dimensions as the adjacency matrix, and the matrix elements store the relation type identifier corresponding to the edge.

[0058] The system stores the entity type label of each node in the node set as a node type array. The length of the node type array is equal to the total number of nodes, and the array elements are arranged in node index order. The system organizes the feature vector set into a feature matrix, where the row index of the feature matrix corresponds to the node index, and the column index corresponds to the dimension index of the feature vector. The system combines the adjacency matrix, edge type tensor, node type array, and feature matrix into a heterogeneous graph data structure. The system stores the heterogeneous graph data structure in a graph database system, which uses a columnar storage format to support subsequent fast traversal of the graph data and subgraph query operations. While storing the heterogeneous graph, the system records the graph's construction timestamp and the version identifier of the structured dataset to support version tracking and incremental updates of the graph data.

[0059] In one embodiment, the risk path enhancement mining module 130 of an AI-driven engineering cost management system provided by the present invention includes an enhancement graph generation unit, which is used to perform the following steps:

[0060] S311: Input the heterogeneous graph into the heterogeneous attention network. In each message passing layer, group the neighbor nodes according to the relationship type. Calculate the first importance weight of different relationship types through a type-level attention mechanism, and calculate the second importance weight of each neighbor node within the same relationship type through a node-level attention mechanism. Multiply the first importance weight and the second importance weight, then perform weighted aggregation of the features of each neighbor node. After nonlinear transformation, generate the updated feature representation of each node in the message passing layer. Repeat the above steps until the preset number of message passing layers is reached to generate the context-enhanced feature representation of each node.

[0061] Specifically, the heterogeneous attention network comprises multiple message-passing layers, each consisting of a type-level attention mechanism and a node-level attention mechanism connected in series. In each message-passing layer, the system groups the neighboring nodes of the central node according to relation type, with neighboring nodes of the same relation type grouped together. The system first executes the type-level attention mechanism to calculate the first importance weight for different relation types. This is done by performing a dot product operation between the current feature vector of the central node and the learnable relation type query vector. The dot product result is then converted into the first importance weight through a normalized exponential function after a nonlinear mapping. Next, the system executes the node-level attention mechanism to calculate the second importance weight for each neighboring node within the same relation type group. This is done by performing a linear transformation on the current feature vector of the central node to obtain the query vector, and a linear transformation on the current feature vectors of neighboring nodes to obtain the key vector. The query vector and the key vector are then performed a dot product operation. The dot product result is then converted into the second importance weight through a normalized exponential function after a nonlinear mapping. The system multiplies the first importance weight and the second importance weight to obtain the comprehensive attention weight. The feature vectors of neighboring nodes are then weighted and summed using the comprehensive attention weight. The weighted sum is then added to the current feature vector of the central node via a residual connection. Finally, after layer normalization and nonlinear transformation, the updated feature representation of the node in the current message passing layer is generated.

[0062] The system repeatedly executes the above message passing process until the preset number of message passing layers is reached. After processing through all layers, context-enhanced feature representations for each node are generated. The parameters of the heterogeneous attention network are initialized using a truncated normal distribution. The number of network layers is determined by preset values ​​in the system configuration file, the number of attention heads in each layer is a preset value, and the hidden state dimension of each layer is consistent with the node feature vector dimension. The loss function used for model training consists of a weighted sum of link prediction loss and contrastive learning loss. The link prediction loss is calculated based on the binary cross-entropy of positive edges in the weighted directed edge set and randomly sampled negative edges. The contrastive learning loss is calculated based on the similarity difference between the node representations of entities within the same document and the node representations of entities in different documents. An adaptive moment estimation optimizer is used during training, and the learning rate uses a pre-warm-up decay scheduling strategy. During training, the system monitors the change in the loss value on the validation set, and terminates training when the loss value fails to decrease for multiple consecutive iterations.

[0063] S312: Traverse all node pairs in the heterogeneous graph, perform bilinear transformation on the context-enhanced feature representations of the two nodes in each node pair, and calculate the probability value of the implicit association between the node pairs that is not covered by the set of weighted directed edges as the implicit association strength.

[0064] Specifically, for each node pair, the system takes the context-enhanced feature representation vectors of the first and second nodes as inputs, performs a bilinear transformation on the two vectors, and then calculates their interaction response values ​​using a learnable weight matrix to map the two vectors to the same space. The system also calculates the semantic similarity between the two nodes, which is obtained by calculating the cosine similarity based on the semantic vectors encoded by the name text of the corresponding entities of the two nodes using a pre-trained language model. The sentence vector encoding layer of the pre-trained language model uses average pooling to convert variable-length character sequences into fixed-length vectors. Finally, the system calculates the time decay factor between the two nodes, which is calculated based on the timestamp difference between the documents associated with the two nodes using an exponential decay function. The larger the timestamp difference, the smaller the decay factor; as the timestamp difference approaches zero, the decay factor approaches its upper limit.

[0065] Further, the system calculates the spatial overlap between two nodes. This spatial overlap is calculated based on the intersection-union ratio (IUU) of the coded construction areas associated with the two nodes; the ratio of the intersection size to the union size is used as the spatial overlap. The system multiplies the four components—bilinear transform interaction response value, semantic similarity, time decay factor, and spatial overlap—by their respective preset weight coefficients and then sums them. The summation result is mapped to a preset interval using a nonlinear function, and the mapped value is used as the implicit association strength between the node pair. The implicit association strength represents the probability that a latent association exists between two nodes that is not covered by a set of weighted directed edges. The system performs the above calculation on all node pairs, recording the node index and corresponding implicit association strength value for each pair. The formula for calculating the implicit association strength is:

[0066]

[0067] in, The strength of the implicit association between node u and node v, with a value range of (0,1); and These are the context-enhanced feature representation vectors obtained by node u and node v after L-layer message passing, respectively; It is a learnable bilinear transformation weight matrix that maps two feature vectors to the same interaction space and then calculates their correlation response. The semantic similarity between node u and node v is calculated by cosine similarity based on the semantic vectors encoded by the BERT model from the name texts of the corresponding entities of the two nodes. The time decay factor between node u and node v is calculated based on the timestamp difference between the documents associated with the two nodes. The timestamp difference is the absolute value. This difference is used as the input of the exponential decay function. As the difference increases, the decay factor decreases monotonically. When the difference approaches zero, the decay factor approaches the upper limit value. The physical meaning of this factor is that the closer the document generation time is, the more likely two entities are to form an implicit association. The spatial overlap between node u and node v is calculated based on the intersection-union ratio of the coded sets of the construction areas associated with the two nodes. , , These are preset weight coefficients corresponding to semantic similarity, time decay factor, and spatial overlap, respectively. These coefficients are preset based on knowledge of the engineering management field during the system initialization phase.

[0068] S313: Determine that there is a latent association between node pairs whose latent association strength exceeds the preset latent association determination threshold and which do not have a corresponding directed edge in the weighted directed edge set. Record each pair of nodes with latent association and its latent association strength as a virtual edge, and superimpose all virtual edges into the weighted directed edge set to generate an enhanced graph.

[0069] Specifically, the system compares the calculated implicit association strength of each node pair with a preset implicit association determination threshold. When the implicit association strength of a node pair exceeds the preset threshold, the system further checks whether there is a corresponding directed edge for that node pair in the weighted directed edge set. This check is performed by searching the weighted directed edge set for records where both the head node index and the tail node index match. For node pairs where the implicit association strength exceeds the threshold and there is no corresponding directed edge in the weighted directed edge set, the system determines that the node pair has an implicit association. The system generates a virtual edge record for each pair of nodes with an implicit association. The virtual edge record contains the head node index, the tail node index, and the implicit association strength value. The order of the head node index and the tail node index is determined by the size of the node indices of the two nodes, with the smaller index serving as the head node. The system then aggregates all virtual edge records into a virtual edge set. The system adds each virtual edge in the virtual edge set to the weighted directed edge set. The addition method is to add a new record to the weighted directed edge set. The format of the new record is the same as the format of the existing records in the weighted directed edge set. The head node index and tail node index are taken from the virtual edge record, and the edge weight value is set to the implicit association strength value.

[0070] After completing the overlay operation of all virtual edges, the system recombines the updated weighted directed edge set with the original node set and node feature vectors to generate an enhanced graph. The data structure of the enhanced graph is consistent with that of the heterogeneous graph, including an adjacency matrix, an edge type tensor, a node type array, and a feature matrix. The adjacency matrix and edge type tensor are expanded with entries corresponding to virtual edges. The system stores the enhanced graph in a graph database system, simultaneously recording the timestamp of its generation and statistics on the number of virtual edges.

[0071] In one embodiment, the risk path enhancement mining module 130 of the AI-driven engineering cost management system provided by the present invention further includes a risk value calculation unit, which is used to perform the following steps:

[0072] S321: Using each document node in the enhanced graph corresponding to the set of documents related to engineering costs as the starting point of the path, the depth-first traversal algorithm is used to enumerate all non-repeating node sequences in the enhanced graph with a length not exceeding the preset maximum path length, and a candidate path set is generated.

[0073] Specifically, the system selects all nodes with the type label "document" from the node type array as the starting node set. The system independently executes a depth-first traversal algorithm for each starting node. During the traversal, the system maintains the node sequence of the current path and the set of visited nodes. When attempting to visit a node that has already appeared in the current path's node sequence, the system skips that node to avoid duplicate nodes in the path. During path expansion, the system checks the current path length, which is measured by the number of directed edges contained in the path. When the path length reaches the preset maximum path length, the system stops further expansion of the current path and records the current path as a complete candidate path.

[0074] During the traversal, the system performs a neighbor node retrieval operation for each visited node. The neighbor node retrieval is determined based on the adjacency matrix of the augmented graph. For the outgoing neighbor nodes of the current node, the system visits them sequentially in descending order of their outgoing edge weights, prioritizing the expansion of neighbor nodes with larger weights. During the traversal, the system records the starting document node index, the sequence of intermediate node indices, and the ending node index. After completing a depth-first traversal of all starting nodes, the system aggregates all unique node sequences into a candidate path set. Each candidate path in the candidate path set is recorded as a node index sequence, with the sequence length equal to the number of nodes contained in the path. Preferably, the path expansion decision function is expressed as:

[0075]

[0076] in, Indicates the path that is currently being expanded. Representing a path Upper The directed edge of the step, Start counting from the initial edge. For the edge The weight value, This is the path length penalty coefficient. For the first The position decay term of the step, which decreases with the number of steps. It increases and then monotonically decreases. Representing a path The total number of nodes included. This is a log-normalized term representing the number of path nodes. This term increases with the number of path nodes, but the rate of increase decreases. The system calculates the current path's... at each step of path expansion. Value, when When the path falls below a preset expansion threshold, the system terminates further expansion of the current path. The physical meaning of this decision function is that the weighted cumulative contribution of the path, after length decay and node number normalization, represents the value of the path's continued expansion. When the marginal contribution of newly added edges during the path expansion process falls below the threshold required to maintain the expansion, the path is truncated.

[0077] S322: For each candidate path in the candidate path set, read the weight value of the directed edge corresponding to each step on the candidate path in sequence along the path direction. The weight value is taken from the weighted directed edge set for the original edge and the implicit association strength for the virtual edge.

[0078] Specifically, the system sequentially traverses adjacent node pairs along the candidate path's node index sequence. For each pair of adjacent nodes, the system retrieves the corresponding edge weight value from the adjacency matrix of the augmented graph. During the retrieval process, the system distinguishes edge types, using the head and tail node indices of the current node pair as keys to search the adjacency matrix. The value stored in the adjacency matrix is ​​the weight value of that directed edge. For edges already included in the original set of weighted directed edges in the augmented graph, the system directly reads their weight values ​​from the adjacency matrix; these weight values ​​originate from the dynamically corrected weighted directed edge weights. For edges added in the augmented graph through the virtual edge overlay step, the system also reads their weight values ​​from the adjacency matrix; these weight values ​​originate from the calculated implicit association strength.

[0079] The system does not differentiate between original and virtual edges during processing, uniformly retrieving weight values ​​using the same method. After sequentially reading the weight values ​​for each step along the path, the system organizes these weight values ​​into a weight sequence. The length of the weight sequence is equal to the number of directed edges in the path, i.e., the length of the path node sequence minus one. The system generates a corresponding weight sequence for each candidate path and stores it in association with the node index sequence of the candidate path. For adjacent node pairs where no corresponding edge weight value is found in the adjacency matrix, the system records the weight value for that step as zero and continues processing subsequent steps, while also recording abnormal edge information for subsequent data quality analysis.

[0080] S323: Based on the weight values ​​of the directed edges at each step on the candidate path and the preset path position decay factor, calculate the weighted contribution value of each step and accumulate it over the entire path to generate the risk value of the candidate path.

[0081] Specifically, the system calculates the weighted contribution value of each step based on the weights of the directed edges at each step on the candidate path and a preset path position decay factor, and then accumulates the values ​​across the entire path to generate a path risk value. The weight of each step is multiplied by the corresponding position decay factor to obtain the weighted contribution value for that step, and then the weighted contribution values ​​of all steps are summed. The position decay factor decreases as the number of steps increases; a smaller number of steps results in a larger position decay factor, and vice versa. The decrease in the position decay factor uses an exponential decay function, calculated with the path position decay factor as the base and the current step number as the exponent.

[0082] Furthermore, the system introduces a path length normalization factor when calculating path risk values ​​to eliminate inconsistencies in cumulative dimensions caused by differences in the number of steps between paths of different lengths. The path length normalization factor is calculated based on the number of nodes in the path; a larger number of nodes results in a larger normalization factor, while a smaller number results in a smaller normalization factor, ensuring comparability in the dimensions of risk values ​​for paths of different lengths. The physical meaning of path risk value calculation is that the contribution of directed edges at different positions on the path to the overall path risk decreases with increasing distance from the starting point. The overall path risk value is equal to the cumulative sum of contributions after each step's attenuation, normalized by the path length. Preferably, the formula for calculating the candidate path risk value is:

[0083]

[0084] in, Indicate candidate path The risk value, Representing a path The number of directed edges contained therein. Representing a path Upper The weight of the directed edge. Start counting from the initial edge. This is the path position attenuation factor. Represents the attenuation factor The exponent, whose term monotonically decreases as the number of steps increases, has a weight value. The product of the term and the power of the decay factor is the first term. The weighted contribution value of each step This represents the sum of the weighted contributions of all steps along the path. This is a square root normalization term for the path length. This term increases with path length but at a decreasing rate. Physically, it corrects the cumulative contribution value of the path, eliminating the dimensional bias caused by differences in path length, allowing risk values ​​of paths of different lengths to be compared on the same scale. The system performs the above risk value calculation operation on each candidate path in the candidate path set, and stores the calculated risk value in association with the corresponding candidate path node index sequence and weight sequence.

[0085] S324: Associate and store all candidate paths in the candidate path set with their corresponding risk values ​​to generate a path set carrying risk values.

[0086] Specifically, during the storage process, the system generates a unique path identifier for each candidate path. This unique identifier is composed of the starting document node index, the path enumeration sequence number, and the generation timestamp. The system combines the unique path identifier, the path node index sequence, the path step weight sequence, and the path risk value into a path record entry. The system stores all path record entries in a path set data table, which is sorted in descending order of path risk value, with paths having higher risk values ​​appearing at the beginning of the table. While storing the path set, the system also records the path enumeration parameter configuration information, including the preset maximum path length, path position decay factor, and extended judgment threshold. The system stores the path set data table in a database system and creates an inverted index from the path node index to the path set data table to support fast retrieval of paths containing a given node. After completing the path set storage, the system outputs statistical information for the path set, including the total number of candidate paths, the path length distribution range, and the risk value distribution range.

[0087] In one embodiment, the risk cluster root cause early warning module 140 of an AI-driven engineering cost management system provided by the present invention includes a risk cluster clustering unit, which is used to perform the following steps:

[0088] S411: Traverse each path in the path set, read the risk value of the path and compare the risk value with the preset risk alarm threshold, filter out the paths whose risk value exceeds the preset risk alarm threshold, and form a subset of paths to be clustered.

[0089] Specifically, the system reads path records one by one from the path set data table in storage order. Each path record contains a unique path identifier, a path node index sequence, a weight sequence for each step of the path, and a path risk value. The system compares the read path risk value with a preset risk alarm threshold. The preset risk alarm threshold is determined during the system initialization phase based on the statistical distribution of risk events in historical engineering cost management projects. This threshold represents the system's sensitivity boundary to path risks. For paths with a risk value greater than the preset risk alarm threshold, the system adds the path record to the subset of paths to be clustered; for paths with a risk value less than or equal to the preset risk alarm threshold, the system marks the path as a low-risk path and stores it in the low-risk path set.

[0090] Furthermore, during the traversal process, the system continuously counts the number of filtered paths. When a boundary condition occurs where the path risk value exactly equals the preset risk alarm threshold, the system executes a judgment based on the boundary handling strategy set in the system configuration file. The boundary handling strategy includes two options: classifying the boundary value into a high-risk category or a low-risk category. After completing the traversal of all path records, the system stores the filtered subset of paths to be clustered into a separate data table. This data table has the same field structure as the original path set data table, containing four fields: unique path identifier, path node index sequence, path step weight sequence, and path risk value. During the filtering process, the system counts the document starting points of the filtered paths. When the proportion of paths starting from a certain document node that are filtered into the subset of paths to be clustered exceeds a preset proportion threshold, the system records a warning flag for that document node.

[0091] S412: For any two paths in the clustered path subset, extract the node sets traversed by the two paths respectively, and calculate the ratio of the intersection size to the union size of the two node sets as the similarity between the two paths.

[0092] Specifically, the system extracts the path node index sequences of the first path and the second path from the subset of paths to be clustered. The system converts each path's node index sequence into a node set data structure, implemented using a hash table to support fast element existence lookup operations. The system calculates the intersection of the two node sets by iterating through each node index in the first node set and checking if that index exists in the second node set; if it does, the index is added to the intersection result set. The system also calculates the union of the two node sets by merging all node indices from the first node set with the node indices from the second node set that are not in the first set.

[0093] The system obtains the number of elements in the intersection and union sets, and uses the ratio of the intersection to the union set as the similarity between the two paths. The physical meaning of path similarity is the degree of overlap of the nodes traversed by the two paths; a larger value indicates more shared nodes and higher structural overlap in the augmented graph. The system performs this similarity calculation on all path pairs, storing the results as a similarity matrix. The row and column indices of the similarity matrix represent the path's sequence number within the subset of paths to be clustered, and the matrix elements are the similarity values ​​between the corresponding two paths. For the similarity of identical paths, the system directly sets an upper limit without performing calculations.

[0094] S413: Take each path in the subset of paths to be clustered as an initial cluster, and use a bottom-up agglomerative hierarchical clustering algorithm for iterative clustering. In each iteration, calculate the similarity between all current clusters and take the maximum similarity between the paths in two clusters as the similarity between the two clusters. Merge the two clusters with the highest similarity and repeat the iteration steps until the similarity between any two clusters is lower than the preset clustering threshold. Take all the clusters obtained after stopping the iteration as risk clusters.

[0095] Specifically, the system performs agglomerative hierarchical clustering operations using each path in the subset of paths to be clustered as an initial cluster. In the initial state, the system constructs a cluster set, where each cluster contains a single path. The cluster identifier is determined by a unique path identifier, and the cluster's member list initially contains only the path itself. In each iteration, the system traverses all cluster pairs in the current cluster set. For any two clusters, the system calculates the inter-cluster similarity between them. The inter-cluster similarity is calculated by taking the maximum similarity between all paths within the first cluster and all paths within the second cluster. The physical meaning of the maximum value connection criterion for inter-cluster similarity is that the merging of two clusters depends on the most similar path pair among the members of each cluster. As long as there exists a highly similar path pair connecting the two clusters, the two clusters have a basis for merging. The system searches for the maximum value among all inter-cluster similarities and identifies the two clusters corresponding to this maximum value as the most similar cluster pair in the current round.

[0096] The system compares the maximum inter-cluster similarity with a preset clustering threshold. When the maximum inter-cluster similarity is higher than the preset threshold, the system merges the two clusters, generating a new cluster. The member list of the new cluster is the union of the member lists of the two clusters, and the new cluster identifier is composed of the merge timestamp and the sequence number generated by the system. After merging, the system removes the original two clusters from the cluster set and adds the new cluster to the cluster set. The system then proceeds to the next iteration, recalculating the inter-cluster similarity between the new cluster and the remaining clusters. When the maximum inter-cluster similarity is lower than or equal to the preset clustering threshold, the system terminates the iterative clustering process and outputs all clusters in the current cluster set as risk clusters. Preferably, the mathematical representation of the inter-cluster similarity calculation and iterative merging conditions is as follows:

[0097]

[0098]

[0099] in, and This represents two clusters, each of which is a set of paths; Cluster One of the paths, Cluster One of the paths; Representing a path The set of nodes traversed Representing a path The set of nodes traversed; This represents the number of elements in the intersection of two node sets. This represents the number of elements in the union of two sets of nodes. It is a numerically stable term, and its order of magnitude is much smaller than the minimum number of path nodes. It is used to prevent division by zero when the number of elements in the union is zero. For clusters with cluster The inter-cluster similarity between two clusters has the same dimensions as the similarity between two paths, representing the degree of node overlap of the most similar path pairs between two clusters. To preset the clustering threshold, this threshold is determined during the system initialization phase based on the required aggregation granularity of the target risk clusters; The iteration termination condition means that when the similarity between any two clusters in the current cluster set fails to reach the clustering threshold, continuing to merge clusters will cause the intra-cluster path heterogeneity to exceed an acceptable range, thus terminating the clustering process. The system treats all clusters obtained after stopping iterations as risk clusters. Each risk cluster contains a set of high-risk paths sharing similar node structures. The system stores risk clusters in the database and associates them with the original path record identifiers of each path within the cluster.

[0100] In one embodiment, the risk cluster root cause early warning module 140 of the AI-driven engineering cost management system provided by the present invention further includes a hierarchical early warning unit, which is used to perform the following steps:

[0101] S421: For each risk cluster, obtain all paths contained in the risk cluster and the node sequence traversed by each path, read the risk value of each path from the path set, and read the position number of each node in its path from the node sequence.

[0102] Specifically, the system reads all path records corresponding to a risk cluster from the risk cluster storage data table. Each path record contains a unique path identifier, a path node index sequence, and a path risk value. The system traverses each path record within the risk cluster, sequentially reading the node index and its position number from the path node index sequence, with the position number count incrementing from the path's starting node. During the reading process, the system records the position number of each node in the current path. For nodes that appear repeatedly in the path, the system only records the position number of the first occurrence of that node to maintain the property of a path without repeating node sequences. The system associates and stores the extracted path information with the node information, constructing a path-node mapping table for the risk cluster. The rows of the mapping table correspond to path records, the columns correspond to the node sequence positions in the path, and each entry stores the node index and its corresponding position number.

[0103] S422: For each node in a risk cluster, traverse every path containing the node in the risk cluster, and use the reciprocal of the node's position index in the path and the risk value of the corresponding path as the node's contribution value on the path. Sum the contribution values ​​on all paths as the root cause contribution of the node, and locate the preset number of nodes with the largest root cause contribution as root cause candidate nodes of the risk cluster.

[0104] Specifically, the system traverses every path in the risk cluster that contains the node. For each path, the system obtains the risk value of the path and the position index of the node within the path. The reciprocal of the position index is multiplied by the path risk value to obtain the node's contribution value on that path. The contribution values ​​calculated for all paths are accumulated, and the accumulated result is the node's root cause contribution. The earlier the node's position in the path, the larger the reciprocal of its position index, and the higher the node's contribution weight to the path risk. A higher path risk value results in a greater contribution from the path to the node's contribution. The physical meaning of the node's root cause contribution is the total comprehensive risk contribution of the node across all relevant paths in the risk cluster. This value comprehensively reflects the frequency of the node's appearance in risky paths, the importance of the node's position in the path, and the degree of danger of the path itself. The more high-risk paths a node is included in within the risk cluster, and the closer its position is to the starting point in these paths, the higher its root cause contribution. Preferably, the mathematical expression for calculating the node's root cause contribution is:

[0105]

[0106] in, This represents the risk cluster currently being calculated. This represents a node within a risk cluster. This represents a path within a risk cluster. Representing a path The set of nodes traversed Representing a path The risk value, Represents a node In the path The position number in the node sequence is counted starting from the starting node of the path. The position number of the starting node is the base unit. The larger the position number, the smaller its reciprocal. This indicates that the farther the node is from the starting point of the risk path, the lower its contribution weight to the path risk. The product of the position reciprocal and the path risk value constitutes the node's contribution value on the path. A function to indicate the deduplication of nodes within a path, when a node... In the path The function takes the value of zero when the node appears multiple times. In the path The function takes a value of one when a node appears only once in the root cause contribution calculation. This indicator function ensures that each node in the same path contributes to the root cause contribution only once, avoiding bias caused by duplicate counting. The system performs the above root cause contribution calculation on all nodes within the risk cluster and stores the results as a node root cause contribution mapping table. The key of the mapping table is the node index, and the value is the corresponding root cause contribution. The system sorts the nodes in descending order according to the root cause contribution and selects a preset number of nodes at the top of the sorted list as root cause candidate nodes for that risk cluster.

[0107] S423: For each risk cluster, calculate the average path risk value based on the risk values ​​of all paths within the risk cluster, calculate the path proportion based on the number of paths within the risk cluster and the total number of paths in the subset of paths to be clustered, and take the maximum value of the root cause contribution of each node within the risk cluster as the maximum root cause contribution. Perform weighted summation and normalization on the average path risk value, path proportion, and maximum root cause contribution to generate the comprehensive risk level of the risk cluster.

[0108] Specifically, the system obtains the risk values ​​of all paths from the risk cluster, calculates the arithmetic mean of these risk values ​​as the average path risk value, which represents the overall risk level of the paths within the risk cluster. The system obtains the number of paths contained within the risk cluster, divides this number by the total number of paths in the subset of paths to be clustered to obtain the path percentage, which represents the proportion of the risk cluster in the set of high-risk paths. The system searches for the root cause contribution of each node within the risk cluster from the calculated node root cause contribution mapping table, and takes the maximum value as the maximum root cause contribution, which represents the contribution degree of the most significant risk-contributing node within the risk cluster. The system multiplies the average path risk value, path percentage, and maximum root cause contribution by their respective preset weight coefficients and then sums them. These weight coefficients are preset during the system initialization phase based on knowledge from the engineering management domain; all weight coefficients are positive numbers, and the sum is a normalized baseline value.

[0109] The system inputs the weighted summation result into a normalization function for dimensional unification, ensuring the output value falls within a preset numerical range. The input to the normalization function is the weighted summation result, and the output serves as the comprehensive risk level for that risk cluster. Preferably, the formula for calculating the comprehensive risk level is:

[0110]

[0111] in, Indicates risk cluster The comprehensive risk level has a range of values ​​that are consistent with the dimensions of the warning level division intervals; Indicates risk cluster The average path risk value is calculated by summing the risk values ​​of all paths within the cluster and dividing by the number of paths. This value represents the central tendency of path risk within the cluster. Indicates risk cluster The path proportion is calculated by dividing the number of paths within a cluster by the total number of paths in the subset of paths to be clustered. This value represents the size weight of the risk cluster in the overall high-risk path population. Indicates risk cluster The maximum root cause contribution is calculated by taking the maximum value from the node root cause contribution mapping table obtained in step S422. This value represents the contribution intensity of the most significant single root cause node in the cluster. , and These are the preset weighting coefficients corresponding to the average path risk value, path proportion, and maximum root cause contribution, respectively. Each coefficient is positive and the sum is the normalized benchmark value. Their physical meaning is the relative importance of the three dimensions in the comprehensive risk level determination. Dimensions with larger weighting coefficients have a higher contribution to the comprehensive risk level. The normalization function takes the weighted sum of three components as input and maps the result to a preset numerical range as output. The parameters of the normalization function are determined based on the distribution of the comprehensive risk values ​​of historical risk clusters, so that the dimensions of the output value are suitable for subsequent threshold comparison operations.

[0112] S424: Compare the overall risk level with the preset first risk threshold and second risk threshold. When the overall risk level exceeds the first risk threshold, output the highest level warning information. When the overall risk level is between the first risk threshold and the second risk threshold, output the medium level warning information. When the overall risk level is lower than the second risk threshold, output the low level attention information.

[0113] Specifically, the first and second risk thresholds are set during system initialization based on engineering management risk control requirements. The value of the first risk threshold is greater than the value of the second risk threshold. Together, these two thresholds divide the range of the comprehensive risk level into three non-overlapping sub-ranges. The system performs a threshold comparison operation: when the comprehensive risk level exceeds the first risk threshold, the system determines that the risk cluster belongs to the highest risk level, triggering the output of the highest-level warning information, which includes the risk cluster identifier, a list of root cause candidate nodes, and a highest-risk-level label; when the comprehensive risk level is between the first and second risk thresholds, the system determines that the risk cluster belongs to the medium risk level, triggering the output of the medium-level warning information, which includes the risk cluster identifier and a medium-risk-level label; when the comprehensive risk level is lower than the second risk threshold, the system determines that the risk cluster belongs to the low risk level, outputting low-level attention information, which includes the risk cluster identifier and a low-risk-level label. The warning level determination function is expressed as follows:

[0114]

[0115] in, For risk clusters The warning level output, The first risk threshold, The second risk threshold, along with the other two thresholds, divides the overall risk level into three warning levels: high, medium, and low. The system associates the generated warning information with the corresponding risk cluster data and stores it in a warning record table. This table includes a risk cluster identifier, overall risk level value, warning level label, root cause candidate node list, and generation timestamp field. The system then outputs the warning record table to the user interface for reviewers to view and process.

[0116] In one embodiment, the model graph closed-loop update module 150 of the AI-driven engineering cost management system provided by the present invention is used to perform the following steps:

[0117] S51: Receive manual review feedback for each output risk cluster, encode the manual review feedback according to three categories: confirmed risk, partial confirmation, and false alarm, and generate manual review feedback labels corresponding to each risk cluster.

[0118] Specifically, the system provides an interactive review interface where reviewers annotate the review results for each risk cluster. The review results are categorized into three types: confirmed risk, partially confirmed risk, and false alarm. A confirmed risk indicates that the reviewer believes the paths and associated virtual edges within the risk cluster reflect the true engineering cost risk; a partially confirmed risk indicates that the reviewer believes some paths or relationships within the risk cluster reflect the true risk, while the rest are not; a false alarm indicates that the reviewer believes all paths and virtual edges within the risk cluster are model misjudgments. After receiving the annotation results submitted by the reviewers, the system encodes the confirmed risk category as a first numerical label, the partially confirmed risk category as a second numerical label, and the false alarm category as a third numerical label. The first, second, and third numerical labels are distinct discrete values. The system generates a corresponding coded label for each risk cluster, and the coded label is associated with the risk cluster identifier and stored in the review feedback data table. During the coding process, the system simultaneously records the correction description text submitted by the reviewers. This correction description text is stored in unstructured form and used in subsequent steps to identify virtual edges that need adjustment. The system links the audit feedback data table with the risk cluster data table through the risk cluster identifier, so that each risk cluster expands the original data with the manual audit feedback label field, forming a labeled risk cluster dataset.

[0119] S52: For each risk cluster, read the context-enhanced feature representations of all nodes traversed by all paths within the risk cluster from the enhanced graph and calculate the mean vector as the node feature mean. Read the risk values ​​of all paths within the risk cluster from the path set and calculate the mean and variance. Concatenate the node feature mean, risk value mean, and risk value variance to generate the feature vector of the risk cluster.

[0120] Specifically, the system reads the context-enhanced feature representation vectors of all nodes traversed by all paths within the risk cluster from the node feature matrix of the augmented graph. Each node's context-enhanced feature representation is a fixed-dimensional vector generated after multiple layers of message passing. The system calculates the mean of all read node feature vectors, independently calculating the arithmetic mean of all nodes along each feature dimension to obtain the node feature mean vector. The system reads the risk values ​​of all paths within the risk cluster from the path set; these risk values ​​are the calculated path risk values. The system calculates the arithmetic mean of these path risk values ​​as the risk value mean, and calculates the average of the squares of the differences between these path risk values ​​and their mean as the risk value variance. The system concatenates the node feature mean vector, the risk value mean scalar, and the risk value variance scalar in a preset order; the concatenated vector is used as the feature vector of the risk cluster. The physical structure of this feature vector is as follows: the node feature mean part represents the semantic context distribution center of the risk cluster in the augmented graph structure; the risk value mean part represents the overall intensity level of path risk within the cluster; and the risk value variance part represents the dispersion of path risk values ​​within the cluster. The dimensions of the node feature mean vector are consistent with those of the node feature vector, and the dimensions of the risk value mean and risk value variance are consistent with those of the path risk value. These three are concatenated to form a unified multi-dimensional cluster-level feature representation. The system performs the above operations on all risk clusters to generate a feature vector corresponding to each risk cluster.

[0121] S53: The feature vectors of each risk cluster and the corresponding manual review feedback labels are combined to form a training sample set. The online gradient descent method is used to incrementally update all learnable parameters of the heterogeneous attention network with the training sample set to generate incrementally updated model parameters.

[0122] Specifically, the system reads the coded label of each risk cluster from the review feedback data table, uses this coded label as the supervision label of the corresponding feature vector, and forms a labeled sample. The input of the labeled sample is the feature vector of the risk cluster, and the output is the manual review feedback label. The system collects labeled samples of all risk clusters to construct a training sample set, the number of samples in the training sample set being equal to the total number of risk clusters. The system uses online gradient descent to incrementally update all learnable parameters of the heterogeneous attention network with the training sample set. Learnable parameters include the relation type query vector and linear transformation matrix in the type-level attention mechanism, the query linear transformation matrix and key linear transformation matrix in the node-level attention mechanism, the bilinear transformation weight matrix, the linear projection layer transformation matrix after feature concatenation, and the weighting coefficients in each loss function. The system extracts samples from the training sample set in mini-batches, each mini-batch containing a preset number of risk cluster samples.

[0123] The system inputs small batches of samples into a heterogeneous attention network. The network performs forward propagation to calculate the predicted label for each sample. The difference between the predicted label and the supervised label is used to calculate the loss value through a loss function. The system employs an adaptive moment estimation optimizer with a preset learning rate. Backpropagation is used to calculate the gradient of the loss value with respect to each learnable parameter, and the gradient is used to update the values ​​of each learnable parameter. In each iteration, the system completes a full traversal of all training samples, then randomly shuffles the sample order before entering the next iteration. During iteration, the system monitors changes in the loss value. When the change in the loss value over multiple consecutive iterations falls below a preset threshold, the incremental update process terminates, and the current values ​​of the learnable parameters are output as the incrementally updated model parameters.

[0124] S54: Based on the feedback tags from manual review, identify virtual edges that are confirmed as real risks from the augmented graph and perform weight solidification processing. At the same time, identify virtual edges that are confirmed as false alarms and perform weight decay processing. Update all virtual edges after weight solidification and weight decay and the updated weights to the augmented graph, and output the dynamically corrected augmented graph.

[0125] Specifically, the system reads the audit label for each risk cluster from the audit feedback data table. For risk clusters labeled as confirmed risks, the system identifies all virtual edges traversed by all paths within that risk cluster from the enhanced graph. These virtual edges are the edges superimposed on the weighted directed edge set in step S313. The system performs weight solidification processing on these virtual edges by multiplying their weight values ​​by a solidification coefficient greater than a baseline value. This solidification coefficient is a preset constant value, allowing the virtual edges corresponding to confirmed risks to receive a higher contribution weight in subsequent calculations. After weight solidification, the system sets the solidification flag of the virtual edge to a true value, indicating that the edge has been manually confirmed. For risk clusters labeled as false alarms, the system identifies all virtual edges traversed by all paths within that risk cluster from the enhanced graph and performs weight attenuation processing on these virtual edges. This attenuation processing involves multiplying the weight values ​​of the virtual edges by an attenuation coefficient less than a baseline value. This attenuation coefficient is a preset constant value, reducing the contribution weight of the virtual edges corresponding to false alarm risks in subsequent calculations.

[0126] The system records the number of decay operations for a virtual edge after weight decay. When the same virtual edge undergoes decay processing multiple times and its weight value falls below a preset lower threshold, the system removes the virtual edge from the augmented graph. For risk clusters marked with partial confirmation labels, the system performs semantic analysis based on the correction description text submitted by the reviewers, extracting the node or relationship identifiers pointed to by the confirmation and negation parts from the correction description text. Weight fixation is performed on virtual edges involved in the confirmation part, and weight decay is performed on virtual edges involved in the negation part. The system updates all virtual edges after weight fixation and weight decay, along with their updated weights, into the adjacency matrix of the augmented graph. The update method involves finding the row and column positions corresponding to the virtual edge in the adjacency matrix and replacing its weight value with the corrected weight value. The system outputs the dynamically corrected augmented graph, while simultaneously recording the timestamp of each correction operation and the source of the review label used for the correction, forming a version change log for the augmented graph.

[0127] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0128] In one embodiment, this application also provides a computer device including a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps described above performed by the AI-driven engineering cost management system.

[0129] In one embodiment, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps described above performed by the AI-driven engineering cost management system.

[0130] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of those different embodiments or examples.

[0131] For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. The device embodiments described above are merely illustrative. The components described as separate parts may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this disclosure according to actual needs. Those skilled in the art can understand and implement this without creative effort.

[0132] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various variations or substitutions within the technical scope disclosed in this application, and these should all be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. An AI-driven engineering cost management system, characterized in that, The system includes the following modules: The engineering document structuring module is used to uniformly convert the format of the collection of engineering cost-related documents uploaded by users, and to extract domain entities and relationships from each document through a pre-trained language model. The entities, relationships between entities and document metadata in each document are organized into structured tuples and the structured tuples are summarized to generate a structured dataset. The cost heterogeneous graph representation module is used to map each entity in the structured dataset to a heterogeneous graph node, establish weighted directed edges between nodes according to the relationships between entities in the structured dataset, encode and map the attribute information of each entity in the structured dataset to the feature vector of each node, and combine the heterogeneous graph node, the weighted directed edges and the feature vector to generate a heterogeneous graph. The risk path enhancement mining module is used to perform multi-layer message passing on the heterogeneous graph based on the heterogeneous attention network, fuse the contextual association information of each node in the multi-hop neighborhood to update the feature representation of each node, calculate the implicit association strength between nodes based on the updated node features, and superimpose the implicit associations that meet the preset judgment conditions as virtual edges onto the heterogeneous graph to generate an enhanced graph. Starting from the document node in the enhanced graph, enumerate the risk propagation path and calculate the risk value of each path according to the edge weight of the path to generate a set of paths carrying risk values. The risk cluster root cause early warning module is used to filter out paths with risk values ​​exceeding a preset risk screening threshold based on the path set to form a subset of paths to be clustered, perform hierarchical clustering on the subset of paths to be clustered to merge paths with similar nodes into the same risk cluster, calculate the root cause contribution of each node based on the location information of the nodes in each risk cluster and the path risk value to locate root cause candidate nodes, calculate the comprehensive risk level of each risk cluster based on the statistical characteristics of the path risk values ​​in each risk cluster, and output graded early warning information based on the comprehensive risk level. The model graph closed-loop update module is used to receive manual review feedback from each risk cluster, perform incremental update processing on the model parameters of the heterogeneous attention network based on the manual review feedback, and dynamically correct the weights of the virtual edges in the augmented graph, and output the incrementally updated model parameters of the heterogeneous attention network and the dynamically corrected augmented graph.

2. The system according to claim 1, characterized in that, The cost heterogeneity graph characterization module is used to perform the following steps: S21: Perform deduplication and standardization on each entity in the structured dataset, map each deduplicated independent entity to a node in the heterogeneous graph, and assign a globally unique node index to each node to generate a node set. S22: Traverse the entity relationships within the structured tuples of each document in the structured dataset, assign initial weights to each relationship based on the preset basic confidence level corresponding to the relationship type, and dynamically correct the initial weights based on the timestamp difference between the documents associated with the two entities involved in the relationship and the overlap of the construction area codes, thereby generating a weighted directed edge set. S23: Extract the entity type label, numerical attribute, and name text corresponding to each entity from the structured dataset. Encode the entity type label into a type feature vector. Normalize and logarithmically transform the numerical attribute and encode it into an attribute feature vector. Encode the name text into a semantic feature vector through a pre-trained language model. Concatenate the type feature vector, the attribute feature vector, and the semantic feature vector to generate the feature vector of each node. S24: Combine the node set, the weighted directed edge set, and the feature vectors of all nodes according to their node indices to generate the heterogeneous graph.

3. The system according to claim 1, characterized in that, The risk path enhancement mining module includes an enhancement graph generation unit, which performs the following steps: S311: Input the heterogeneous graph into the heterogeneous attention network. In each message passing layer, group the neighbor nodes according to the relationship type. Calculate the first importance weight of different relationship types through a type-level attention mechanism, and calculate the second importance weight of each neighbor node within the same relationship type through a node-level attention mechanism. Multiply the first importance weight and the second importance weight to perform weighted aggregation of the features of each neighbor node, and generate the updated feature representation of each node in the message passing layer after nonlinear transformation. Repeat the above steps until the preset number of message passing layers is reached to generate the context-enhanced feature representation of each node. S312: Traverse all node pairs in the heterogeneous graph, perform bilinear transformation on the context-enhanced feature representations of the two nodes in each node pair, and calculate the probability value of an implicit association between the node pairs that is not covered by the set of weighted directed edges as the implicit association strength; wherein, the formula for calculating the implicit association strength is: in, The strength of the implicit association between node u and node v, with a value range of (0,1); and These are the context-enhanced feature representation vectors obtained by node u and node v after L-layer message passing, respectively; It is a learnable bilinear transformation weight matrix; The semantic similarity between node u and node v is calculated by cosine similarity based on the semantic vectors encoded by the BERT model from the name texts of the corresponding entities of the two nodes. The time decay factor between node u and node v is calculated using an exponential decay function based on the difference in timestamps of the documents associated with the two nodes. The spatial overlap between node u and node v is calculated based on the intersection-union ratio of the coded sets of the construction areas associated with the two nodes. , , These are the preset weight coefficients corresponding to semantic similarity, time decay factor, and spatial overlap, respectively. S313: Determine that there is a latent association between nodes whose latent association strength exceeds a preset latent association determination threshold and whose weighted directed edge set does not contain a corresponding directed edge. Record each pair of nodes with the latent association and the latent association strength as a virtual edge, and superimpose all the virtual edges into the weighted directed edge set to generate the enhanced graph.

4. The system according to claim 3, characterized in that, The risk path enhancement mining module also includes a risk value calculation unit, which is used to perform the following steps: S321: Taking each document node in the enhanced graph corresponding to the set of engineering cost-related documents as the starting point of the path, the depth-first traversal algorithm is used to enumerate all non-repeating node sequences in the enhanced graph with a length not exceeding the preset maximum path length, and a candidate path set is generated. S322: For each candidate path in the candidate path set, read the weight value of the directed edge corresponding to each step on the candidate path in sequence along the path direction. The weight value is taken from the weight in the set of weighted directed edges for the original edge and from the implicit association strength for the virtual edge. S323: Based on the weight values ​​of the directed edges at each step on the candidate path and the preset path position attenuation factor, calculate the weighted contribution value of each step and accumulate it over the entire path to generate the risk value of the candidate path. S324: Associate and store all candidate paths in the candidate path set and their corresponding risk values ​​to generate the path set carrying the risk values.

5. The system according to claim 1, characterized in that, The risk cluster root cause early warning module includes a risk cluster clustering unit, which is used to perform the following steps: S411: Traverse each path in the path set, read the risk value of the path and compare the risk value with a preset risk alarm threshold, filter out the paths whose risk value exceeds the preset risk alarm threshold, and form a subset of paths to be clustered; S412: For any two paths in the subset of paths to be clustered, extract the set of nodes traversed by the two paths respectively, and calculate the ratio of the intersection size to the union size of the two node sets as the similarity between the two paths. S413: Using each path in the subset of paths to be clustered as an initial cluster, iterative clustering is performed using a bottom-up agglomerative hierarchical clustering algorithm. In each iteration, the similarity between all current clusters is calculated, and the maximum similarity between paths in two clusters is taken as the similarity between the two clusters. The two clusters with the highest similarity are merged. The iteration steps are repeated until the similarity between any two clusters is lower than the preset clustering threshold. All clusters obtained after stopping the iteration are taken as the risk clusters.

6. The system according to claim 5, characterized in that, The risk cluster root cause early warning module further includes a hierarchical early warning unit, which is used to perform the following steps: S421: For each risk cluster, obtain all paths contained in the risk cluster and the node sequence traversed by each path, read the risk value of each path from the path set, and read the position number of each node in the path from the node sequence. S422: For each node in a risk cluster, traverse each path in the risk cluster that contains the node, and use the product of the reciprocal of the node's position index in the path and the risk value of the corresponding path as the contribution value of the node on the path. Sum the contribution values ​​on all paths as the root cause contribution of the node, and locate the preset number of nodes with the largest root cause contribution as the root cause candidate nodes of the risk cluster. S423: For each risk cluster, calculate the average path risk value based on the risk values ​​of all paths within the risk cluster, calculate the path proportion based on the number of paths within the risk cluster and the total number of paths in the subset of paths to be clustered, take the maximum value of the root cause contribution of each node within the risk cluster as the maximum root cause contribution, and perform a weighted summation and normalization on the average path risk value, the path proportion, and the maximum root cause contribution to generate the comprehensive risk level of the risk cluster; S424: Compare the overall risk level with a preset first risk threshold and a second risk threshold. When the overall risk level exceeds the first risk threshold, output the highest level warning information. When the overall risk level is between the first risk threshold and the second risk threshold, output the medium level warning information. When the overall risk level is lower than the second risk threshold, output the low level attention information.

7. The system according to any one of claims 1-6, characterized in that, The model graph closed-loop update module is used to perform the following steps: S51: Receive manual review feedback for each output risk cluster, encode the manual review feedback according to three categories: confirmed risk, partial confirmation and false alarm, and generate manual review feedback labels corresponding to each risk cluster. S52: For each risk cluster, read the context-enhanced feature representations of all nodes traversed by all paths within the risk cluster from the enhanced graph and calculate the mean vector as the node feature mean. Read the risk values ​​of all paths within the risk cluster from the path set and calculate the mean and variance. Concatenate the node feature mean, the risk value mean, and the risk value variance to generate the feature vector of the risk cluster. S53: The feature vectors of each risk cluster and the corresponding manual review feedback labels are combined to form a training sample set. The online gradient descent method is used to incrementally update all learnable parameters of the heterogeneous attention network with the training sample set to generate incrementally updated model parameters. S54: Based on the manual review feedback tags, identify virtual edges that are confirmed as real risks from the enhanced graph and perform weight solidification processing. At the same time, identify virtual edges that are confirmed as false alarms and perform weight decay processing. Update all virtual edges after weight solidification and weight decay and the updated weights to the enhanced graph, and output the dynamically corrected enhanced graph.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it performs the steps performed by the system according to any one of claims 1 to 7.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it performs the steps performed by the system according to any one of claims 1 to 7.