WO2023213732A1 - System and method for managing information present in technical documents - Google Patents

System and method for managing information present in technical documents Download PDF

Info

Publication number
WO2023213732A1
WO2023213732A1 PCT/EP2023/061361 EP2023061361W WO2023213732A1 WO 2023213732 A1 WO2023213732 A1 WO 2023213732A1 EP 2023061361 W EP2023061361 W EP 2023061361W WO 2023213732 A1 WO2023213732 A1 WO 2023213732A1
Authority
WO
WIPO (PCT)
Prior art keywords
sentence
text
heading
embedding
technical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2023/061361
Other languages
French (fr)
Inventor
Aman DALMIA
David Hildenhagen
Leon-Alexander Härter
Vignesh Iyer
Fakabbir AMIN
Srinidhi Kulkarni
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Energy Global GmbH and Co KG
Original Assignee
Siemens Energy Global GmbH and Co KG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Energy Global GmbH and Co KG filed Critical Siemens Energy Global GmbH and Co KG
Publication of WO2023213732A1 publication Critical patent/WO2023213732A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Definitions

  • the present invention relates to knowledge management, and more particularly relates to a system, apparatus and method for managing information present in technical documents.
  • an organization may receive requirements from various buyers with respect to its products or services.
  • the buyer may supply a document comprising detailed information about the product or service requirements along with tech- nical or non-technical details.
  • many stakeholders within the organization may be involved.
  • the stakeholders may include an engineering team, a Research team, a marketing team, a sales team, a legal team, a compliance team, etc.
  • each of the stakeholders may have to go through the entire docu- ment and find sections of text relevant for them. This is a time-consuming process and may be prone to human errors. Fur- ther, some terms and conditions or requirement features are placed in a section which might be overlooked by the respec- tive team.
  • KPIs Key Performance Indicators
  • the object of the present invention is achieved by a comput- er-implemented method for managing information present in a technical document as disclosed herein.
  • the method comprises receiving, by a processing unit, the technical document from a source.
  • the technical document com- prises text-based specifications associated with a technical installation.
  • the method further comprises parsing the tech- nical document to extract at least one heading hierarchy as- sociated with at least one sentence in the technical docu- ment.
  • parsing the technical document to ex- tract at least the heading hierarchy associated with the at least one of the sentences comprises, identifying a plurality of text lines present in the technical document based on co- ordinates of the technical document.
  • Each of the text lines comprise text present in a row of the technical document. Further, each of the text lines are classified into at least one of a heading and a sentence, based on at least one char- acteristic of the text line.
  • a heading hierarchy is generated from one or more text lines classified as headings, using a predefined rule.
  • the method further comprises mapping each of the text lines classified as a sentence, to at least one immediately preceding heading, using metadata of the immediately preceding heading.
  • the present invention parses a technical doc- ument to segregate headings from text lines. Further, the mapping of a text line to the immediately preceding heading adds context to the text line.
  • the method further comprises using the heading hierarchy to generate a heading embedding for the at least one sentence, wherein the heading embedding is a vector representation of predefined length corresponding to the heading hierarchy.
  • the method further comprises using the heading embedding and a text embedding of the at least one sentence to generate a context embedding for the at least one sentence.
  • the text embedding of the at least one sentence is generated using a first embedding model.
  • the heading embedding for the at least one sentence is gener- ated from the heading hierarchy using a second embedding mod- el.
  • using the heading embedding and the text embedding of the at least one sentence to generate the context embedding for the at least one sentence comprises, concatenating the heading embedding and the text embedding of the at least one sentence to form the context embedding for the sentence.
  • the present invention uses heading hierar- chies to generate an encoding that indicates a context asso- ciated with the at least one sentence.
  • the method further comprises applying a classifier model to the context embedding to generate output data.
  • the output da- ta is indicative of a class associated with the at least one sentence.
  • the classifier model is trained based on at least one of Artificial Neural Networks, decision trees, Naive Bayes classifiers, clustering algorithms and Support Vector Machines.
  • classification of the sentence based context embedding provides a mechanism for context-aware sentence classification.
  • the method further comprises selectively providing the at least one sentence to one or more output devices based on the class of the at least one sentence.
  • selectively providing the at least one sentence to the one or more output devices based on the class of the at least one sentence comprises identifying a colour- code corresponding to the class of the sentence from a lookup table. Further, an area covered by the sentence in the tech- nical document is highlighted based on the colour-code. The technical document comprising the highlighted area is further displayed via the one or more output devices.
  • the present invention facilitates highlight- ing of technical documents based on context-aware sentence classification, for guiding a reader to context-relevant text in the technical document.
  • selectively providing the at least one sentence to the one or more output devices based on the class of the at least one sentence com- prises, selectively storing the sentence in a database based on the class of the sentence. Further, the selectively stored sentence is transmitted to the one or more output devices for displaying to a user.
  • the present invention facilitates automati- cally identifying sentences relevant for specific stakehold- ers, and in selectively showing only the relevant sentences to the stakeholders.
  • a text analysis algorithm is further identified corresponding to the deter- mined class of the at least one sentence. Further, the iden- tified text analysis algorithm is used to analyse the sen- tence for identifying one or more technical parameters men- tioned in the sentence.
  • the one or more technical parameters identified are used to configure a machine-executable simula- tion instance of a system design of the technical installa- tion. Further, a behaviour of the technical installation is simulated, based on the system design. Further, at least one key performance indicator corresponding to the one or more technical parameters is computed based on an outcome of the simulation. Further, a notification indicative of the at least one key performance indicator is provided on the one or more output devices.
  • the present invention facilitates extraction of technical parameters from a technical document, without manual intervention. Further, the extracted technical parame- ters are automatically used to simulate the system design for determining the key performance indicators. Therefore, manual efforts in understanding the technical parameters and config- uring of the system design based on the technical parameters, are eliminated.
  • the apparatus comprises one or more processing units, and a memory unit operatively coupled to the one or more processing units.
  • the memory unit comprises an information management module stored in the form of machine-readable instructions executable by the one or more processing units.
  • the information management module is configured to perform method steps described above.
  • the system comprises a source configured to provide a technical document.
  • the technical document comprises text-based specifications associated with a technical installation.
  • the system further comprises an ap- paratus as described above, communicatively coupled to the source.
  • the apparatus is configured to manage information present in the technical document, according to any of the method steps described above.
  • the term 'sources' as used herein, refer to electronic devices configured to obtain and transmit the operational data to the apparatus.
  • the system further comprises one or more output devices communicatively coupled to the apparatus.
  • the object of the present invention is also achieved by a computer-readable medium, on which program code sections of a computer program are saved, the program code sections being loadable into and/or executable by a processor which per- forms the method as described above when the program code sections are executed.
  • the realization of the invention by a computer program prod- uct and/or a non-transitory computer-readable storage medium has the advantage that computer systems may be easily adopted by installing computer program in order to work as proposed by the present invention.
  • the computer program product may be, for example, a computer program or comprise another element apart from the computer program.
  • This other element may be hardware, for example a memory device, on which the computer program is stored, a hardware key for using the computer program and the like, and/or software, for example a documentation or a software key for using the computer program.
  • FIG 1A illustrates a block diagram of a system for managing information present in technical documents, in ac- cordance with an embodiment of the present invention
  • FIG IB illustrates a block diagram of an apparatus for manag- ing information present in technical documents, in accordance with an embodiment of the present inven- tion;
  • FIG 2 shows a method of managing information present in a technical document, in accordance with an embodiment of the present invention
  • FIG 3A shows a flowchart of a method for extracting text from a technical document in PDF, in accordance with an exemplary embodiment of the present invention
  • FIG 3B shows a flowchart of method for generating heading hierarchies, in accordance with the present inven- tion
  • FIG 3C shows a flowchart of a method 345 for demarcating sentences in the technical document, in accordance with an embodiment of the present invention
  • FIG 4 illustrates an architecture of a Bidirectional Encoder Representations from Transformers model for generat- ing text embeddings for sentences, in accordance with an exemplary embodiment of the present inven- tion;
  • FIG 5 illustrates a block diagram of an autoencoder model for generating heading embeddings corresponding to heading hierarchies, in accordance with an embodi- ment of the present invention
  • FIG 6 illustrates an embodiment of an artificial neural network
  • FIG 7 shows a workflow for classifying sentences based on text embeddings and heading embeddings, in accord- ance with an exemplary embodiment of the present in- vention.
  • FIG 1A illustrates a block diagram of a system 100 for manag- ing information present in technical documents, in accordance with an embodiment of the present invention.
  • the system 100 comprises an apparatus 105 and client device 110.
  • client devices 110 include per- sonal computers, mobile phones, personal digital assistants and workstations.
  • the apparatus 105 is a server.
  • the client device 110 is connected to the apparatus 105 via a network 115.
  • the network 115 include local area network (LAN), wide area net- work (WAN), WiFi, etc.
  • the client device 110 includes a device configured to receive one or more technical documents from a user.
  • the one or more technical documents may include text-based specifications of a technical installation.
  • text-based specifi- cations refers to both unstructured text and structured text comprising technical parameters associated with the technical installation.
  • the one or more technical documents may be stored on the client device 110 in soft copy formats.
  • the user may upload the technical document to the client device 110 through peripheral devices such as scanners, hard disks, CD-ROMs and so on.
  • the client device 110 may also be configured to convert the technical document to a Portable Document Format (PDF) that is suitable for pro- cessing at the apparatus 105.
  • PDF Portable Document Format
  • the client device 110 may also include a user device associated with the user.
  • the apparatus 105 may further process the technical document to provide context-relevant information to the user via a user interface associated with one or more output devices 117.
  • the user-interface may be configured to display the con- text-relevant information on the one or more output devices 117, using at least one of a web-based application and a cli- ent-based application installed on the one or more output de- vices 117 communicatively coupled to the apparatus 105. It must be understood by a person skilled in the art that, in some embodiments, the client device 110 and the output device 117 may be the same.
  • the apparatus 105 comprises one or more processing units 120, a memory unit 125, a storage unit 130, a communication unit 135, a network interface 140, an input unit 145, an output unit 150, a standard interface or bus 155, as shown in FIG IB.
  • the apparatus 105 may be a (personal) computer, a work- station, a virtual machine running on host hardware, a micro- controller, or an integrated circuit.
  • the apparatus 105 may be a real or a virtual group of computers (the technical term for a real group of computers is "clus- ter", the technical term for a virtual group of computers is "cloud").
  • 'processing unit' means any type of computational circuit, such as, but not limited to, a microprocessor, a microcontroller, a complex instruc- tion set computing microprocessor, a reduced instruction set computing microprocessor, a very long instruction word micro- processor, an explicitly parallel instruction computing mi- croprocessor, a graphics processor, a digital signal proces- sor, or any other type of processing circuit.
  • the one or more processing units 120 may also include embed- ded controllers, such as generic or programmable logic devic- es or arrays, application specific integrated circuits, sin- gle-chip computers, and the like.
  • the one or more processing units 120 may comprise hardware elements and soft- ware elements.
  • the one or more processing units 120 may be configured for multithreading, i.e., the processing unit 120 may host different calculation processes at the same time, executing the either in parallel or switching between active and passive calculation processes.
  • the memory unit 125 may include one or more of a volatile memory and a non-volatile memory.
  • the memory unit 125 may be coupled for communication with the processing unit 120.
  • the processing unit 120 may execute instructions and/or code stored in the memory unit 125.
  • a variety of computer-readable storage media may be stored in and accessed from the memory unit 125.
  • the memory unit 125 may include any suitable ele- ments for storing data and machine-readable instructions, such as read only memory, random access memory, erasable pro- grammable read only memory, electrically erasable programma- ble read only memory, hard drive, removable media drive for handling compact disks, digital video disks, diskettes, mag- netic tape cartridges, memory cards, and the like.
  • the memory unit 125 comprises a knowledge management module 160 that may be stored in the memory unit 125 in the form of machine- readable instructions and executable by the processing unit 120. These machine-readable instructions when executed by the processing unit 120 causes the processing unit 120 to perform functions associated with managing information present in technical documents.
  • the memory unit 125 stores an information management module 160.
  • the information management module 160 comprises a pre- processing module 165, a parsing module 170, an embedding module 175, a context module 180, a classification module 185, a simulation module 190, text analysis module 195 and a notification module 197.
  • the preprocessing module 165 is configured to receive the technical document from a source.
  • the preprocessing module 165 may be further configured to convert the technical docu- ment in PDF to a raw JSON format.
  • the parsing module 170 is configured to parse the technical document, in raw JSON for- mat, to extract at least one heading hierarchy associated with at least one sentence in the technical document.
  • the embedding module 175 is configured to use the heading hi- erarchy to generate a heading embedding for the at least one sentence.
  • the heading embedding is a vector representation of predefined length corresponding to the heading hierarchy.
  • the embedding module 175 is further configured to generate a text embedding for the at least one sentence.
  • the text embedding is a vector representation of predefined length corresponding to the at least one sentence.
  • the context module 180 is con- figured to use the heading embedding and a text embedding of the at least one sentence to generate a context embedding for the at least one sentence.
  • the classification module 185 is configured to apply a clas- sifier model to the context embedding to generate output da- ta.
  • the output data is indicative of a class associated with the at least one sentence.
  • class refers to a predefined category attributed to the sentence, based on a context.
  • the predefined categories may include, "Engineering", “Compliance”, “Finance”.
  • the no- tification module 197 is configured to provide the output da- ta indicative of the class of the at least one sentence to one or more output devices 117.
  • the one or more output devic- es 117 may further configure the user-interface to display the class of the at least one sentence.
  • the text analysis module 195 is configured to identify a text analysis algo- rithm corresponding to the determined class of the at least one sentence, and using the identified text analysis algo- rithm to parse the sentence for identifying one or more tech- nical parameters mentioned in the sentence.
  • the simulation module 190 is configured to using the one or more technical parameters identified to configure a machine- executable simulation instance of a system design of the technical installation.
  • the simulation module 190 is further configured to simulate a behaviour of the technical installa- tion, based on the system design, and to compute at least one key performance indicator corresponding to the one or more technical parameters based on an outcome of the simulation.
  • the notification module 197 is further configured to generate a notification indicative of the at least one key performance indicator. The notification is further transmitted to the one or more output devices 117 for displaying via the user inter- face.
  • the storage unit 130 comprises a non-volatile memory which stores the database 198.
  • the database 198 may store, for ex- ample, look up tables storing colour-codes corresponding to various classes of sentences, indications of text analysis algorithms corresponding to each of the classes, for IP ad- dresses of the output devices 117.
  • the input unit 145 may in- clude input means such as keypad, touch-sensitive display, camera, etc. capable of receiving inputs.
  • the output unit 150 may include output means such as monitors, Human Machine In- terfaces etc.
  • the bus 155 acts as interconnect between the processing unit 120, the memory unit 125, the storage unit 130, and the network interface 140.
  • the communication unit 135 enables the apparatus 105 to communicate with the client device 110 and the one or more output devices 117.
  • the commu- nication unit 135 may support different standard communica- tion protocols such as Transport Control Protocol/Internet Protocol (TCP/IP), Profinet, Profibus, Bluetooth and Internet Protocol Version (IPv).
  • TCP/IP Transport Control Protocol/Internet Protocol
  • Profinet Profibus
  • Bluetooth Internet Protocol Version
  • IPv Internet Protocol Version
  • the output device 117 in accordance with an embodiment of the present invention includes an operating system employing a graphical user interface.
  • the operating system permits multi- ple display windows to be presented in the graphical user in- terface simultaneously with each display window providing an interface to a different application or to a different in- stance of the same application.
  • a cursor in the graphical us- er interface may be manipulated by a user through the point- ing device. The position of the cursor may be changed and/or an event such as clicking a mouse button, generated to actu- ate a desired response.
  • One of various commercial operating systems such as a ver- sion of Microsoft WindowsTM, may be employed if suitably modi- fied.
  • the operating system is modified or created in accord- ance with the present invention as described.
  • FIGS 1A and IB may vary for different implementations.
  • peripheral devices such as an optical disk drive and the like, Local Area Network (LAN)/ Wide Area Network (WAN)/ Wireless (e.g., Wi-Fi) adapt- er, graphics adapter, disk controller, input/output (I/O) adapter, network connectivity devices also may be used in ad- dition or in place of the hardware depicted.
  • LAN Local Area Network
  • WAN Wide Area Network
  • Wireless e.g., Wi-Fi
  • graphics adapter e.g., disk controller
  • I/O input/output
  • network connectivity devices also may be used in ad- dition or in place of the hardware depicted.
  • the depicted ex- ample is provided for the purpose of explanation only and is not meant to imply architectural limitations with respect to the present invention.
  • FIG 2 shows a method 200 of managing information present in a technical document, in accordance with an embodiment of the present invention.
  • the method 200 comprises steps 205 to 230, and is explained in conjunction with FIGS 1A and IB.
  • a technical document comprising technical param- eters associated with a technical installation is received, from a source, by the processing unit 120.
  • the term ''source'' may refer to the client device 110, a local database or a remote storage location containing one or more technical documents.
  • the technical document comprises text-based speci- fications associated with a technical installation.
  • text present in the technical document is extracted using a text extraction tool.
  • the text extraction tool is also configured to detect font, colour and position of a specific text within the technical document. The process of extracting text from the technical document in PDF using the text extraction tool is explained later with reference to FIG 3A.
  • the technical document is parsed, as explained with reference to FIG 3B, to extract at least one heading hi- erarchy associated with at least one sentence in the tech- nical document. Further, the sentences in the technical docu- ment are demarcated as explained below with reference to FIG 3C. Upon demarcating the sentences, text embeddings for each of the sentences is generated using a first embedding model.
  • a first embedding model may include Bag of words, FasText and Pooled word2vec and transformer- based encoder models.
  • the first embedding model is a transformer-based encoder model such as Bidirectional Encoder Representation from Transformer (BERT), SciBERT, RoBERTa, DistilBERT and XLNet.
  • BERT Bidirectional Encoder Representation from Transformer
  • SciBERT SciBERT
  • RoBERTa RoBERTa
  • DistilBERT DistilBERT
  • XLNet XLNet
  • the heading hierarchy is used to generate a heading embedding for the at least one sentence.
  • the heading embedding is a vector representation of predefined length corresponding to the heading hierarchy.
  • the heading embed- dings are generated from the heading hierarchy, using a sec- ond embedding model.
  • Non-limiting examples of the second em- bedding model include Bag of words, FasText, Pooled word2vec and autoencoder models.
  • the second embedding model is an autoencoder model. As an example, training and use of an autoencoder model for generating head- ing embeddings is explained later with reference to FIG 5.
  • the heading embedding and the text embedding of the at least one sentence is used to generate a context em- bedding for the at least one sentence.
  • the context embedding is generated by concatenating the heading embedding and the text embedding. It may be under- stood by a person skilled in the art that it is possible to generate a unique context embedding by concatenating the heading embedding and the text embedding in any order or us- ing other operations such as addition, subtraction etc.
  • the context embedding is a vector representation of the sentence along with contextual information.
  • a classifier model is applied to the context em- bedding to generate output data.
  • the output data is indica- tive of a class associated with the sentence.
  • the classifier model may be trained to classify context embeddings using any of the classifier algorithms, including but not limited to, decision trees, Naive Bayes classifiers, clustering algo- rithms (e.g., K-Nearest Neighbours (K-NN)), Support Vector Machines (SVMs) and Artificial Neural Networks (ANNs).
  • the classifier model is trained based on an ANN as explained later with reference to FIG 6.
  • the at least one sentence is selectively provid- ed to the one or more output devices 117 based on the class of the at least one sentence.
  • each of the classes is associated with a unique colour code.
  • the colour-code corresponding to the class of a given sentence is firstly identified from a first look up table stored in the database 198. Further, an area covered by the sentence in the technical document is highlighted based on the colour-code. The highlighting of the area based on the colour-code may be performed using highlighting tools such as PDF highlighter. For example, a source code of the PDF docu- ment is modified to highlight the area covered by the sen- tence.
  • an object recognition algorithm may be used to highlight the area covered by the sentence based on predefined rules.
  • the first class may be "Fi- nance” highlighted in yellow
  • second class may be "Engineer- ing” highlighted in green
  • third class may be "Legal” high- lighted in blue
  • fourth class may be "Sales” highlighted in red.
  • the highlighted area of the tech- nical document is displayed on the one or more output devices 117.
  • highlighting the sentences based on the colour-codes enables a class of stakeholders to focus only on the sentences highlighted under a specific class.
  • the technical document comprising the highlighted area is provided to the one or more output devices, for displaying.
  • the sentence may be selectively stored in the database 198 based on the class of the sentence. For example, all sentences that are classified under "Engineer- ing" and "Finance" are stored in the database 198. Further, the selectively stored data is transmitted to the one or more output devices 117 for displaying to a user. For example, a sentence of class "Engineering" may be only displayed on a first output device associated with an engineering team, a sentence of class "Finance" may be only displayed on a second output device associated with a finance team and so on.
  • the output device for selectively displaying a sentence based on the class is identified using predefined IP address of the output device.. For example, the IP address corresponding to the class may be determined from a second look up table stored in the database 198.
  • the class associated with the sen- tence is used to identify a text analysis algorithm from a plurality of domain-specific text analysis algorithms.
  • Each of the text analysis algorithms is configured to analyse the sentence based on context-specific terms present in the sen- tence.
  • a first text analysis algorithm may be specific to the domain of engineering
  • a second text analysis algorithm may be specific to the domain of finance, and so on.
  • the identified text analysis algorithm upon being exe- cuted by the processing unit 120, analyse the sentence for identifying one or more technical parameters mentioned in the sentence. For example, if the class of the sentence is "Engi- neering", the one or more technical parameters may include tensile stress, maximum temperature etc.
  • the values corre- sponding to the technical parameters may be identified based on predefined keywords, numerals or units such as Pascal, Newton/m 2 , Celsius, Fahrenheit etc.
  • the value of tensile stress may be identified as 10 Pascals, the maximum temperature as 100 degree Celsius and so on.
  • the units may be defined in a corpus corresponding to the domain-specific text analysis algorithm.
  • the one or more technical parameters identified from the technical document are used to configure a machine-executable simulation instance of a system design of the technical installation.
  • the technical pa- rameters obtained from a sentence of class "Engineering" may be used to configure a machine-executable simulation instance of a system design of a steam turbine present in a power plant.
  • the system design may be one of 1-dimensional model, 2-dimensional model, 3-dimensional model or a combination thereof.
  • the system design may be firstly configured by based on values of the technical parameters obtained from the tech- nical document.
  • the technical parameters may in- clude dimensions and material properties of one or more com- ponents of at least the steam turbine.
  • the simulation-instance of the updated system design is generated in a simulation environment.
  • the simulation may be performed using a computational simula- tion technique such as Computational Solid Mechanics (CSM) and Computational Fluid Dynamics (CFD).
  • CSM Computational Solid Mechanics
  • CFD Computational Fluid Dynamics
  • the simulation may be performed as ID-simulation, 2D-simulation or 3D-simulation.
  • a behaviour of the technical installation i.e. the steam turbine, is simulated based on the system design.
  • the simulation may be performed to validate an industrial design process, performance analysis or for assessing safety of a technical installation designed based on the technical param- eters mentioned in the technical document.
  • one or more key performance indica- tors corresponding to the one or more technical parameters is computed based an outcome of the simulation.
  • simulation results may comprise numerical values in- dicative of one or more key performance indicators.
  • the simulation results may be provided to one or more mathematical models to compute one or more key perfor- mance indicators.
  • trends may be generated based on the one or more key performance parameters. For example, his- toric trends may be plotted based on similar key performance indicators extracted from a plurality of technical documents. For example, if there are a plurality of technical documents, each of which comprise requirements for gas turbines over the years 1991, 1992...2010, the historic trend may be generated based on a technical parameter such as capacity (in Mega- watts) corresponding to each of the years.
  • FIG 3A shows a flowchart of a method 300 for extracting text from a technical document in PDF, in accordance with an exem- plary embodiment of the present invention.
  • the technical document in PDF is converted into Extensible Markup Language (XML) format using a text extrac- tion tool such as pdfminer.six.
  • XML Extensible Markup Language
  • the XML format is generated based on character-level information of the text in the PDF.
  • the character-level information may include unicodes and metadata corresponding to each character.
  • a raw JSON file is generated based on the encod- ed text.
  • the JSON file combines datapoints at phrase-level.
  • the conversion to raw JSON format is performed to prevent loss of information during parsing of the technical document.
  • any phrase that is repetitive or is present in 80% or more of the total number of pages of the document is discarded from the XML document. This is because, such repet- itive text may constitute header or footer of the document.
  • unicodes corresponding to predetermined special characters such as "cp", "ig” etc., acronyms and units such as mm, °C, Pa etc. are replaced with corresponding strings to form phrases.
  • the strings corresponding to the unicodes may be identified from a look up table stored in the database 198.
  • the look up table may comprise each of the spe- cial characters, acronyms and units and their corresponding strings.
  • the corresponding string may be a word or group of words that facilitates identification of a context between two neighbouring words. For example, the unicode " ⁇ u0424” is replaced with "phi”, “ ⁇ ub2212” with “hyphen", "u0421” with “centigrade” etc.
  • FIG 3B shows a flowchart of method 325 for generating heading hierarchies, in accordance with the present invention.
  • firstly text lines in the technical document are identified based on coordinates of the technical document. Further, each of the text line in the technical document is classified into at least one of a head- ing and a sentence, based on at least one characteristic of the text line. The at least one characteristic may include spacing, font style, font type etc.
  • a heading hierarchy is generated for each of the headings.
  • An exemplary method for generating heading hierarchies is detailed in steps 330 to 340 below.
  • position of each of the phrases in the document is identified based on coordinates of the text in the docu- ment as determined using the PDF parser. Based on the posi- tion, phrases corresponding to each text line in the document are merged from left to right.
  • spacing between each text line is determined based on pixels or coordinates of the text lines.
  • spacing refers to a vertical distance be- tween two lines. Therefore, a text line may have two spac- ings, spacing with a preceding text line directly above and spacing with a succeeding text line directly below.
  • an average spacing is determined based on two of the most frequent spacings between text lines in the technical document. For example, if the most frequent spac- ings are 1.5 mm and 1 mm, the average spacing may be calcu- lated as 1.25mm ((lmm+1.5mm)/2). The frequency of spacings may be determined as a count of each of the spacings, e.g., 11 counts of 1.5 mm and 14 counts of 1 mm. In another exam- ple, if the frequency of spacings is more or less the same, then the greater spacing may be chosen as the average spac- ing.
  • the text lines are merged based on a maximum line spacing and position associated with each text line. Further, if the maximum line spacing between the text line and the preceding text line is lesser than the av- erage spacing, then the text line is merged with the preced- ing line above. Otherwise, if the maximum line spacing is greater than the average spacing, the text line is not merged with the preceding text line.
  • the term "merge” as used herein refers to concatenating phrases present in two or more text lines to form a paragraph. It must be understood that, here the term “paragraph” refers to a series of phrases forming a textual paragraph of in the technical document.
  • headings present in the technical document are identified.
  • the headings are identified using predefined rules.
  • An example of a predefined rule may be such that, if after step 335, a text line which is not concatenated with a preceding text line or a subsequent text line, may be classi- fied as a potential heading. Further, presence of only upper- case characters and/or presence of bold characters may also be used to identify headings.
  • subheadings may also be identified based on predefined rules. Further, a hierarchy of headings and subheadings is identified based on similar predefined rules.
  • the predefined rules may be based on fac- tors including, but not limited to, font size, font style, spacing, position or numbering of the headings and/or sub- headings.
  • the heading hierarchy is generated.
  • the heading hi- erarchy may be of the following format:
  • each heading is sepa- rated from the subsequent subheading using a '>' and the end of the hierarchy is specified by the symbol
  • FIG 3C shows a flowchart of a method 345 for demarcating sen- tences in the technical document, in accordance with an em- bodiment of the present invention.
  • paragraphs are mapped to respective headings based on position of the paragraphs. More specifically, a paragraph identified at step 335 is linked to an immediately preceding heading identified at step 340. This step may be explained with the help of an example. For the sake of brevi- ty, we may name the paragraphs A, B, C, D, E & F, and there are two headings Heading 1 and Heading 2 in the following or- der: i. Heading1 ⁇ A
  • mapping may refer to creating a soft- ware object, i.e. a data structure, to store a hierarchy of headings and paragraphs in a sequential order.
  • step 355 text lines provided along with bullet points or serial numbers are mapped to the previous partial sentence.
  • the partial sentence may be identified, for example, based on presence of a capitalized letter at the beginning, absence of a period at the end or based on presence of other punctuation marks such as a full-colon, a semi-colon or a comma.
  • the technical document may comprise the following text: i.
  • each of the text lines formed at step 355 are mapped to at least one immediately preceding heading, using metadata of the immediately preceding heading.
  • sentences in the text lines are demarcated using predefined rules.
  • the predefined rules may be implemented using "if-else" conditions used to segregate text lines where the period ('.') symbol appears, while disregard- ing the period symbol within acronyms such as 'i.e.', 'etc.' and 'e.g.', or within statements provided in brackets.
  • each of the sentences demarcated are by default linked to the im- mediately preceding heading, due to pre-existing associations between the text lines and the immediately preceding head- ings.
  • metadata associated with heading hi- erarchies corresponding to the respective heading is added to the sentence, for identifying context associated with the sentence. Further, the heading hierarchy and the sentence are used to generate the contextual embedding as explained below with reference to FIGS 4 to 7.
  • FIG 4 illustrates an architecture of a BERT model 400 for generating text embeddings for sentences, in accordance with an exemplary embodiment of the present invention.
  • a BERT-base model is used.
  • the BERT-base model consists of a Transformer 405.
  • the Transformer 405 is a deep learning model comprising 12 suc- cessive transformer layers 410A, 410B...410L each comprising 12 attention heads (not shown).
  • the deep learning model is pretrained, based on a corpus, to generate text embeddings corresponding to a given sentence. The total number of param- eters is 110 million.
  • Each of the transformer layers 410A, 410B...410L is an encoder block.
  • BERT-large model comprising 24 transformer layers may be em- ployed for generating the text embeddings.
  • each of the sentences identified using method 345 are preprocessed using a standard tokenizer algorithm.
  • tokenizer algorithms may include Byte-Pair Encoding (BPE), Unigram, SentencePiece and the like.
  • BPE Byte-Pair Encoding
  • the tokenizer algorithm processes each of the sentences to generate a series of to- kens corresponding to the sentence. It must be understood that, a sentence may be tokenized into a maximum of 512 to- kens.
  • the input representation to the BERT-base model is constructed by summing the corresponding token embedding, segment embedding, and position embedding.
  • the input representations are further provided to the Trans- former as indicated by the vertical lines numbered 1, 2... 512 in FIG 4. More specifically, input representation of a classification (CLS) token is provided as first input on in- put line 1, followed by input representations for tokens cor- responding to the words in the sentence on the input lines 2, 3... 512, in the order of the words. Further, the inputs are passed to the transformer layers. Each transformer layer ap- plies "self-attention" to generate a result.
  • CLS classification
  • Self-attention sometimes called intra-attention is an atten- tion mechanism relating different positions of a single sen- tence in order to compute a representation of the sentence.
  • Each word in the sentence undergoes attention computation.
  • the transformer layer learns dependencies between the words in the sentence.
  • the dependencies between the words is further used to capture the internal structure of the sentence.
  • the result of applying self-attention is further passed through a feedforward net- work.
  • the output of the feedforward network is provided to the text encoder block. Every token in the input of the en- coder block is firstly embedded into a 768-long embedding vector.
  • the Transformer outputs the embedding vector as the text embedding for the sentence, as indicated by the vertical arrows emanating from the Transformer 405.
  • FIG 5 illustrates a block diagram of an autoencoder model 500 for generating heading embeddings corresponding to heading hierarchies, in accordance with an embodiment of the present invention.
  • the autoencoder model comprises an input layer 505 and an encoder unit 510.
  • the input layer 505 is configured to receive n-dimensional inputs corresponding to a heading hier- archy.
  • the encoder unit 510 is implemented using an Long Short-Term Memory (LSTM) network (not shown) and a fully con- nected layer (not shown).
  • LSTM Long Short-Term Memory
  • the encoder unit 510 is trained to generate a compressed low dimensional encoding 515 of the in- put provided via the input layer 505.
  • the com- pressed encoding 515 may be m-dimensional.
  • the autoencoder model 500 further comprises a decoder unit 520, also implemented using an LSTM network (not shown) and a fully connected layer (not shown).
  • a bidirectional LSTM network may be employed for the encoder unit 510 and the decoder unit 520. More specifically, the structure of the decoder unit 520 is a mirrored form of the encoder unit 510.
  • the decoder unit 520 attempts to recon- struct the input, by decompressing the m-dimensional encoding 515 back to an n-dimensional output. Further, the output of the decoder unit 520 is provided via an output layer 525 of the autoencoder model 500.
  • the encoder unit 510 is firstly trained to compress in- puts provided via the input layer 505, using a plurality of sentences.
  • the encoder unit 510 is trained us- ing unsupervised learning.
  • the LSTM network within the encod- er unit 510 is configured to support sequential data present in the input sentences.
  • the LSTM network identifies patterns in the input sentences and extracts at least one feature in- dicative of the patterns in each of the input sentences.
  • a vector embedding corresponding to each of the fea- tures is generated through the fully-connected layer of the encoder unit 510. This vector embedding forms the Tri- dimensional encoding 515 of the sentence.
  • the m-dimensional encoding 515 is fur- ther passed onto the decoder unit 520.
  • the decoder unit 520 attempts to reconstruct the input sentence from the Tri- dimensional encoding 515.
  • the LSTM network in the encoder unit 510 maintains constant backward flow in the error signal that enables it to learn long-term dependencies.
  • An error signal corresponding to differences between the input sen- tence provided and the sentence reconstructed by the decoder unit 520, is further used to correct weights associated with the LSTM network in the encoder unit 510.
  • the process of cor- recting errors is repeated using different sets of sentences until the encoder unit 510 is trained to generate word-level embeddings to a predefined level of accuracy.
  • the input layer 505 and the encoder unit 510 is used for encoding heading embeddings corresponding to heading hierarchies. More specifically, the m-dimensional en- coding generated by the encoder unit 510 corresponding to a heading hierarchy forms the heading embedding. It may occur that headings may be absent for say, a first paragraph, in certain technical documents. In such cases, heading hierarchy is not generated for the first paragraph and the heading em- bedding may be, by default, taken as an empty vector [0,0,0,..].
  • FIG 6 illustrates an embodiment of an artificial neural net- work 600. Alternative terms for "artificial neural network” are "neural network", “artificial neural net” or "neural net”.
  • the artificial neural network 600 comprises nodes 620, 632 and edges 640, ..., 642, wherein each edge 640, ..., 642 is a di- rected connection from a first node 620, ..., 632 to a second node 620, ..., 632.
  • the first node 620, ..., 632 and the second node 620, ..., 632 are different nodes 620, ..., 632, it is also possible that the first node 620, ..., 632 and the second node 620, ..., 632 are identical.
  • the edge 640 is a directed connection from the node 620 to the node 623
  • the edge 642 is a directed connection from the node 630 to the node 632.
  • An edge 640, ..., 642 from a first node 620, ..., 632 to a second node 620, ..., 632 is also denoted as "ingoing edge” for the second node 620, ..., 632 and as "outgoing edge” for the first node 620, ..., 632.
  • the nodes 620, ..., 632 of the artificial neural network 600 may be arranged in layers 610, ..., 613, wherein the layers may comprise an intrinsic order introduced by the edges 640, ..., 642 between the nodes 620, ..., 632.
  • edges 640, ..., 642 may exist only between neigh- boring layers of nodes.
  • the number of hidden layers 611, 612 may be chosen arbitrarily.
  • the number of nodes 620, ..., 622 within the input layer 610 usually relates to the number of input values of the neural network
  • the number of nodes 631, 632 within the output layer 613 usually relates to the number of output values of the neural network.
  • a (real) number may be assigned as a value to every node 620, ..., 632 of the neural network 600.
  • x (n) i denotes the value of the i-th node 620, ..., 632 of the n-th layer 610, ..., 613.
  • the values of the nodes 620, ..., 622 of the input layer 610 are equivalent to the input values of the neural network 600
  • the values of the nodes 631, 632 of the output layer 613 are equivalent to the output value of the neural network 600.
  • each edge 640,..., 642 may comprise a weight being a real number, in particular, the weight is a real number within the interval [-1, 1] or within the interval [0, 1].
  • w ⁇ m ' n ) i; j denotes the weight of the edge between the i-th node 620, ..., 632 of the m-th layer 610, ..., 613 and the j-th node 620, ..., 632 of the n-th layer 610, ..., 613.
  • the abbreviation w (n) i,j is defined for the weight w ⁇ n ' n+ Fi,j.
  • the input values are propagated through the neu- ral network.
  • the values of the nodes 620, ..., 632 of the (n+l)-th layer 610, ..., 613 may be calculated based on the values of the nodes 620, ..., 632 of the n-th layer 610, ..., 613 by: (1)
  • the function f is a transfer function (another term is "activation function").
  • transfer functions are step functions, sigmoid function (e.g. the logistic function, the generalized logistic function, the hyperbolic tangent, the Arctangent function, the error function, the smoothstep func- tion) or rectifier (ReLU) functions.
  • the transfer function is mainly used for normalization pur- poses.
  • the values are propagated layer-wise through the neural network, wherein values of the input layer 610 are given by the input of the neural network 600, wherein values of the first hidden layer 611 may be calculated based on the values of the input layer 610 of the neural network, wherein values of the second hidden layer 612 may be calcu- lated based in the values of the first hidden layer 611, etc.
  • training data comprises training input data and train- ing output data (denoted as t ⁇ ).
  • the neural network 600 is applied to the training input data to generate calculated output data.
  • the training data and the calculated output data comprise a number of val- ues, said number being equal with the number of nodes of the output layer 613.
  • a comparison between the calculated output data and the training data is used to re- cursively adapt the weights within the neural network 600 (backpropagation algorithm).
  • FIG 7 shows a workflow 700 for classifying sen- tences based on text embeddings and heading embeddings, in accordance with an exemplary embodiment of the present inven- tion.
  • the workflow 700 comprises a BERT encoder 705 (similar to BERT encoder 400), an autoencoder model 710 (similar to autoencoder model 500) and a neural network-based classifier model 715 (similar to neural network 600).
  • the BERT model 705 generates a 768-long text embedding of an input sentence A.
  • the 768-long text embedding is fur- ther flattened to generate a 1x768-dimensional text embedding 720.
  • a corresponding heading hierarchy B is identified.
  • the heading hierarchy B is provided as input to the autoen- coder model 710 to generate a 200-long heading embedding.
  • the 200-long heading embedding is further flattened to generate a 1x200-dimensional heading embedding 725.
  • the 1x768- dimensional text embedding 720 and the lX200-dimensional heading embedding 725 are further concatenated to generate a lx968-dimensional context embedding 730 for the sentence. Further, lx968-dimensional context embedding 730 is provided as input to the classifier model 715.
  • the classifier model 715 may in- clude an input layer 740, four hidden layers 745A-D and an output layer 750.
  • the transfer function for each of the hid- den layers 745A-D is a ReLU activation function.
  • the input layer 740 comprises 968 nodes.
  • the first hidden layer 745A comprises 256 nodes that generate 256 output values based on the 968 input values received from the input layer 740 using the ReLU activation function.
  • the second hidden layer 745B comprises 128 nodes generate 128 output values based on the 256 input values from the first hidden layer 745A using the ReLU activation function.
  • the third hidden layer 745C comprises 64 nodes that generates 64 output values based on the 128 input values from the second hidden layer 745B using the ReLU activation function.
  • the fourth hidden layer 745D comprises 32 nodes that generate 2 output values based on the 64 input values from the third hidden layer 745C using the ReLU activation function.
  • the output layer 750 fur- ther uses Softmax activation function to generate a final output 755 indicative of a class of the sentence.
  • the final output 755 is a 2-long vector that indicates a probability associated with a specific class. For example, if there are two classes in total, the final output comprises probabilities of the sentence falling into each of the classes.
  • the sentences in the technical document is highlighted based on colour-code associated with the respective classes of the sentences.
  • one or more key performance indica- tors may also be computed by performing simulations based on one or more technical parameters present in the technical document.
  • a dashboard indicating the key per- formance indicators along with the highlighted text may be generated on one or more output devices.
  • the present invention facilitates extracting context-relevant information from a technical document com- prising text-based specifications associated with a technical installation. Further, the present invention also facilitates simulating a behaviour of the technical installation by per- forming simulations based on technical parameters in the text-based specification. Further, the present invention also facilitates automated computing of key-performance indicators based on the simulations, to guide a human operator in making decisions.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)

Abstract

A system and method for managing information present in a technical document is disclosed. The method comprises receiving, by a processing unit (120), the technical document from a source. Further, the technical document is parsed to extract at least one heading hierarchy associated with at least one sentence in the technical document. The heading hierarchy is further to generate a heading embedding for the at least one sentence. The heading embedding and a text embedding of the at least one sentence are used to generate a context embedding for the at least one sentence. Further, a classifier model is applied to the context embedding to generate output data indicative of a class associated with the at least one sentence. The at least one sentence is further selectively provided to the one or more output devices (117) based on the class of the at least one sentence.

Description

Description
SYSTEM AND METHOD FOR MANAGING INFORMATION PRESENT IN TECHNICAL DOCUMENTS
The present invention relates to knowledge management, and more particularly relates to a system, apparatus and method for managing information present in technical documents.
In any given industry, lot of documentation may be present. Often, a human operator may be required to go through a large document manually to classify sentences present in the docu- ment, into different categories for ease of understanding. Since most such documents are stored in Portable Document Format (PDF), accurate and reliable extraction of hierar- chical information is crucial.
In an example, an organization may receive requirements from various buyers with respect to its products or services. The buyer may supply a document comprising detailed information about the product or service requirements along with tech- nical or non-technical details. To create the best bid, many stakeholders within the organization may be involved. For ex- ample, the stakeholders may include an engineering team, a Research team, a marketing team, a sales team, a legal team, a compliance team, etc. To understand the requirements, each of the stakeholders may have to go through the entire docu- ment and find sections of text relevant for them. This is a time-consuming process and may be prone to human errors. Fur- ther, some terms and conditions or requirement features are placed in a section which might be overlooked by the respec- tive team.
In another example, product-based organizations receive many bids from external vendors for a particular product or ser- vice. For a given product or service, several Key Performance Indicators (KPIs) are considered before accepting a vendor's bid. However, obtaining the KPIs from lengthy bid documents is a tedious task. It would be easier for a reviewer of the document, if the relevant KPIs are highlighted, so as to per- form further analytics based on the KPIs.
In the examples described above, it is a challenge to get the context by reading a sentence alone. For example, the sen- tence "The risk is considered low" may be interpreted differ- ently by a reader having a background in Finance and another reader having a background in Engineering. In the absence of context, it is difficult for a reader identify the topic that the sentence relates to. Similarly, when Natural Language Processing (NLP) techniques are applied to sentences in tech- nical documents, the sentences may be erroneously processed in the absence of context. This leads to erroneous interpre- tation of data present in the technical document. Further- more, such erroneous interpretation may also render the data unusable for further analysis.
In light of the above, there exists a need for managing in- formation present in technical documents, based on context.
Therefore, it is an object of the present invention to pro- vide a system, apparatus and method for managing information present in technical documents.
The object of the present invention is achieved by a comput- er-implemented method for managing information present in a technical document as disclosed herein.
The method comprises receiving, by a processing unit, the technical document from a source. The technical document com- prises text-based specifications associated with a technical installation. The method further comprises parsing the tech- nical document to extract at least one heading hierarchy as- sociated with at least one sentence in the technical docu- ment. In an embodiment, parsing the technical document to ex- tract at least the heading hierarchy associated with the at least one of the sentences comprises, identifying a plurality of text lines present in the technical document based on co- ordinates of the technical document. Each of the text lines comprise text present in a row of the technical document. Further, each of the text lines are classified into at least one of a heading and a sentence, based on at least one char- acteristic of the text line. Further, a heading hierarchy is generated from one or more text lines classified as headings, using a predefined rule. In a further embodiment, the method further comprises mapping each of the text lines classified as a sentence, to at least one immediately preceding heading, using metadata of the immediately preceding heading.
Advantageously, the present invention parses a technical doc- ument to segregate headings from text lines. Further, the mapping of a text line to the immediately preceding heading adds context to the text line.
The method further comprises using the heading hierarchy to generate a heading embedding for the at least one sentence, wherein the heading embedding is a vector representation of predefined length corresponding to the heading hierarchy.
The method further comprises using the heading embedding and a text embedding of the at least one sentence to generate a context embedding for the at least one sentence. In an embod- iment, the text embedding of the at least one sentence is generated using a first embedding model. In an embodiment, the heading embedding for the at least one sentence is gener- ated from the heading hierarchy using a second embedding mod- el. In an embodiment of the present invention, using the heading embedding and the text embedding of the at least one sentence to generate the context embedding for the at least one sentence comprises, concatenating the heading embedding and the text embedding of the at least one sentence to form the context embedding for the sentence.
Advantageously, the present invention uses heading hierar- chies to generate an encoding that indicates a context asso- ciated with the at least one sentence.
The method further comprises applying a classifier model to the context embedding to generate output data. The output da- ta is indicative of a class associated with the at least one sentence. In an embodiment, the classifier model is trained based on at least one of Artificial Neural Networks, decision trees, Naive Bayes classifiers, clustering algorithms and Support Vector Machines.
Advantageously, classification of the sentence based context embedding provides a mechanism for context-aware sentence classification.
The method further comprises selectively providing the at least one sentence to one or more output devices based on the class of the at least one sentence. In an embodiment of the present invention, selectively providing the at least one sentence to the one or more output devices based on the class of the at least one sentence, comprises identifying a colour- code corresponding to the class of the sentence from a lookup table. Further, an area covered by the sentence in the tech- nical document is highlighted based on the colour-code. The technical document comprising the highlighted area is further displayed via the one or more output devices. Advantageously, the present invention facilitates highlight- ing of technical documents based on context-aware sentence classification, for guiding a reader to context-relevant text in the technical document.
In another embodiment of the present invention, selectively providing the at least one sentence to the one or more output devices based on the class of the at least one sentence, com- prises, selectively storing the sentence in a database based on the class of the sentence. Further, the selectively stored sentence is transmitted to the one or more output devices for displaying to a user.
Advantageously, the present invention facilitates automati- cally identifying sentences relevant for specific stakehold- ers, and in selectively showing only the relevant sentences to the stakeholders.
In an embodiment of the present invention, a text analysis algorithm is further identified corresponding to the deter- mined class of the at least one sentence. Further, the iden- tified text analysis algorithm is used to analyse the sen- tence for identifying one or more technical parameters men- tioned in the sentence.
In a further embodiment, the one or more technical parameters identified are used to configure a machine-executable simula- tion instance of a system design of the technical installa- tion. Further, a behaviour of the technical installation is simulated, based on the system design. Further, at least one key performance indicator corresponding to the one or more technical parameters is computed based on an outcome of the simulation. Further, a notification indicative of the at least one key performance indicator is provided on the one or more output devices. Advantageously, the present invention facilitates extraction of technical parameters from a technical document, without manual intervention. Further, the extracted technical parame- ters are automatically used to simulate the system design for determining the key performance indicators. Therefore, manual efforts in understanding the technical parameters and config- uring of the system design based on the technical parameters, are eliminated.
Disclosed herein is also an apparatus for managing infor- mation present in a technical document, in accordance with an embodiment of the present invention. The apparatus comprises one or more processing units, and a memory unit operatively coupled to the one or more processing units. The memory unit comprises an information management module stored in the form of machine-readable instructions executable by the one or more processing units. The information management module is configured to perform method steps described above.
Disclosed herein is also a system for managing information present in a technical document, in accordance with an embod- iment of the present invention. The system comprises a source configured to provide a technical document. The technical document comprises text-based specifications associated with a technical installation. The system further comprises an ap- paratus as described above, communicatively coupled to the source. The apparatus is configured to manage information present in the technical document, according to any of the method steps described above. The term 'sources' as used herein, refer to electronic devices configured to obtain and transmit the operational data to the apparatus. The system further comprises one or more output devices communicatively coupled to the apparatus. The object of the present invention is also achieved by a computer-readable medium, on which program code sections of a computer program are saved, the program code sections being loadable into and/or executable by a processor which per- forms the method as described above when the program code sections are executed.
The realization of the invention by a computer program prod- uct and/or a non-transitory computer-readable storage medium has the advantage that computer systems may be easily adopted by installing computer program in order to work as proposed by the present invention.
The computer program product may be, for example, a computer program or comprise another element apart from the computer program. This other element may be hardware, for example a memory device, on which the computer program is stored, a hardware key for using the computer program and the like, and/or software, for example a documentation or a software key for using the computer program.
The above-mentioned attributes, features, and advantages of the present invention and the manner of achieving them, will become more apparent and understandable (clear) with the fol- lowing description of embodiments of the invention in con- junction with the corresponding drawings. The illustrated em- bodiments are intended to illustrate, but not limit the in- vention.
The present invention is further described hereinafter with reference to illustrated embodiments shown in the accompany- ing drawings, in which:
FIG 1A illustrates a block diagram of a system for managing information present in technical documents, in ac- cordance with an embodiment of the present invention; FIG IB illustrates a block diagram of an apparatus for manag- ing information present in technical documents, in accordance with an embodiment of the present inven- tion;
FIG 2 shows a method of managing information present in a technical document, in accordance with an embodiment of the present invention;
FIG 3A shows a flowchart of a method for extracting text from a technical document in PDF, in accordance with an exemplary embodiment of the present invention;
FIG 3B shows a flowchart of method for generating heading hierarchies, in accordance with the present inven- tion;
FIG 3C shows a flowchart of a method 345 for demarcating sentences in the technical document, in accordance with an embodiment of the present invention;
FIG 4 illustrates an architecture of a Bidirectional Encoder Representations from Transformers model for generat- ing text embeddings for sentences, in accordance with an exemplary embodiment of the present inven- tion;
FIG 5 illustrates a block diagram of an autoencoder model for generating heading embeddings corresponding to heading hierarchies, in accordance with an embodi- ment of the present invention;
FIG 6 illustrates an embodiment of an artificial neural network; and
FIG 7 shows a workflow for classifying sentences based on text embeddings and heading embeddings, in accord- ance with an exemplary embodiment of the present in- vention.
Hereinafter, embodiments for carrying out the present inven- tion are described in detail. The various embodiments are de- scribed with reference to the drawings, wherein like refer- ence numerals are used to refer to like elements throughout. In the following description, for purpose of explanation, nu- merous specific details are set forth in order to provide a thorough understanding of one or more embodiments. It may be evident that such embodiments may be practiced without these specific details.
FIG 1A illustrates a block diagram of a system 100 for manag- ing information present in technical documents, in accordance with an embodiment of the present invention.
The system 100 comprises an apparatus 105 and client device 110. Non-limiting examples of client devices 110 include per- sonal computers, mobile phones, personal digital assistants and workstations. In the present embodiment, the apparatus 105 is a server. The client device 110 is connected to the apparatus 105 via a network 115. Non-limiting examples of the network 115 include local area network (LAN), wide area net- work (WAN), WiFi, etc.
The client device 110 includes a device configured to receive one or more technical documents from a user. The one or more technical documents may include text-based specifications of a technical installation. Here, the term "text-based specifi- cations" refers to both unstructured text and structured text comprising technical parameters associated with the technical installation.
In an example, the one or more technical documents may be stored on the client device 110 in soft copy formats. In an- other example, the user may upload the technical document to the client device 110 through peripheral devices such as scanners, hard disks, CD-ROMs and so on. The client device 110 may also be configured to convert the technical document to a Portable Document Format (PDF) that is suitable for pro- cessing at the apparatus 105. The client device 110 may also include a user device associated with the user.
The apparatus 105 may further process the technical document to provide context-relevant information to the user via a user interface associated with one or more output devices 117. The user-interface may be configured to display the con- text-relevant information on the one or more output devices 117, using at least one of a web-based application and a cli- ent-based application installed on the one or more output de- vices 117 communicatively coupled to the apparatus 105. It must be understood by a person skilled in the art that, in some embodiments, the client device 110 and the output device 117 may be the same.
The apparatus 105 comprises one or more processing units 120, a memory unit 125, a storage unit 130, a communication unit 135, a network interface 140, an input unit 145, an output unit 150, a standard interface or bus 155, as shown in FIG IB. The apparatus 105 may be a (personal) computer, a work- station, a virtual machine running on host hardware, a micro- controller, or an integrated circuit. As an alternative, the apparatus 105 may be a real or a virtual group of computers (the technical term for a real group of computers is "clus- ter", the technical term for a virtual group of computers is "cloud"). The term 'processing unit', as used herein, means any type of computational circuit, such as, but not limited to, a microprocessor, a microcontroller, a complex instruc- tion set computing microprocessor, a reduced instruction set computing microprocessor, a very long instruction word micro- processor, an explicitly parallel instruction computing mi- croprocessor, a graphics processor, a digital signal proces- sor, or any other type of processing circuit.
The one or more processing units 120 may also include embed- ded controllers, such as generic or programmable logic devic- es or arrays, application specific integrated circuits, sin- gle-chip computers, and the like. In general, the one or more processing units 120 may comprise hardware elements and soft- ware elements. The one or more processing units 120 may be configured for multithreading, i.e., the processing unit 120 may host different calculation processes at the same time, executing the either in parallel or switching between active and passive calculation processes.
The memory unit 125 may include one or more of a volatile memory and a non-volatile memory. The memory unit 125 may be coupled for communication with the processing unit 120. The processing unit 120 may execute instructions and/or code stored in the memory unit 125. A variety of computer-readable storage media may be stored in and accessed from the memory unit 125. The memory unit 125 may include any suitable ele- ments for storing data and machine-readable instructions, such as read only memory, random access memory, erasable pro- grammable read only memory, electrically erasable programma- ble read only memory, hard drive, removable media drive for handling compact disks, digital video disks, diskettes, mag- netic tape cartridges, memory cards, and the like. The memory unit 125 comprises a knowledge management module 160 that may be stored in the memory unit 125 in the form of machine- readable instructions and executable by the processing unit 120. These machine-readable instructions when executed by the processing unit 120 causes the processing unit 120 to perform functions associated with managing information present in technical documents.
The memory unit 125 stores an information management module 160. The information management module 160 comprises a pre- processing module 165, a parsing module 170, an embedding module 175, a context module 180, a classification module 185, a simulation module 190, text analysis module 195 and a notification module 197.
The preprocessing module 165 is configured to receive the technical document from a source. The preprocessing module 165 may be further configured to convert the technical docu- ment in PDF to a raw JSON format. The parsing module 170 is configured to parse the technical document, in raw JSON for- mat, to extract at least one heading hierarchy associated with at least one sentence in the technical document.
The embedding module 175 is configured to use the heading hi- erarchy to generate a heading embedding for the at least one sentence. The heading embedding is a vector representation of predefined length corresponding to the heading hierarchy. The embedding module 175 is further configured to generate a text embedding for the at least one sentence. The text embedding is a vector representation of predefined length corresponding to the at least one sentence. The context module 180 is con- figured to use the heading embedding and a text embedding of the at least one sentence to generate a context embedding for the at least one sentence.
The classification module 185 is configured to apply a clas- sifier model to the context embedding to generate output da- ta. The output data is indicative of a class associated with the at least one sentence. The term "class” as used herein refers to a predefined category attributed to the sentence, based on a context. For example, the predefined categories may include, "Engineering", "Compliance", "Finance". The no- tification module 197 is configured to provide the output da- ta indicative of the class of the at least one sentence to one or more output devices 117. The one or more output devic- es 117 may further configure the user-interface to display the class of the at least one sentence. The text analysis module 195 is configured to identify a text analysis algo- rithm corresponding to the determined class of the at least one sentence, and using the identified text analysis algo- rithm to parse the sentence for identifying one or more tech- nical parameters mentioned in the sentence.
The simulation module 190 is configured to using the one or more technical parameters identified to configure a machine- executable simulation instance of a system design of the technical installation. The simulation module 190 is further configured to simulate a behaviour of the technical installa- tion, based on the system design, and to compute at least one key performance indicator corresponding to the one or more technical parameters based on an outcome of the simulation. The notification module 197 is further configured to generate a notification indicative of the at least one key performance indicator. The notification is further transmitted to the one or more output devices 117 for displaying via the user inter- face.
The storage unit 130 comprises a non-volatile memory which stores the database 198. The database 198 may store, for ex- ample, look up tables storing colour-codes corresponding to various classes of sentences, indications of text analysis algorithms corresponding to each of the classes, for IP ad- dresses of the output devices 117. The input unit 145 may in- clude input means such as keypad, touch-sensitive display, camera, etc. capable of receiving inputs. The output unit 150 may include output means such as monitors, Human Machine In- terfaces etc. The bus 155 acts as interconnect between the processing unit 120, the memory unit 125, the storage unit 130, and the network interface 140. The communication unit 135 enables the apparatus 105 to communicate with the client device 110 and the one or more output devices 117. The commu- nication unit 135 may support different standard communica- tion protocols such as Transport Control Protocol/Internet Protocol (TCP/IP), Profinet, Profibus, Bluetooth and Internet Protocol Version (IPv). The network interface 140 enables the apparatus 105 to communicate with the client device 110 and the one or more output devices 117 over the network 115.
The output device 117 in accordance with an embodiment of the present invention includes an operating system employing a graphical user interface. The operating system permits multi- ple display windows to be presented in the graphical user in- terface simultaneously with each display window providing an interface to a different application or to a different in- stance of the same application. A cursor in the graphical us- er interface may be manipulated by a user through the point- ing device. The position of the cursor may be changed and/or an event such as clicking a mouse button, generated to actu- ate a desired response.
One of various commercial operating systems, such as a ver- sion of Microsoft Windows™, may be employed if suitably modi- fied. The operating system is modified or created in accord- ance with the present invention as described.
Those of ordinary skilled in the art will appreciate that the hardware depicted in FIGS 1A and IB may vary for different implementations. For example, other peripheral devices such as an optical disk drive and the like, Local Area Network (LAN)/ Wide Area Network (WAN)/ Wireless (e.g., Wi-Fi) adapt- er, graphics adapter, disk controller, input/output (I/O) adapter, network connectivity devices also may be used in ad- dition or in place of the hardware depicted. The depicted ex- ample is provided for the purpose of explanation only and is not meant to imply architectural limitations with respect to the present invention.
FIG 2 shows a method 200 of managing information present in a technical document, in accordance with an embodiment of the present invention. The method 200 comprises steps 205 to 230, and is explained in conjunction with FIGS 1A and IB.
At step 205, a technical document comprising technical param- eters associated with a technical installation is received, from a source, by the processing unit 120. Here, the term ''source'' may refer to the client device 110, a local database or a remote storage location containing one or more technical documents. The technical document comprises text-based speci- fications associated with a technical installation. Further, text present in the technical document is extracted using a text extraction tool. In addition, the text extraction tool is also configured to detect font, colour and position of a specific text within the technical document. The process of extracting text from the technical document in PDF using the text extraction tool is explained later with reference to FIG 3A.
At step 210, the technical document is parsed, as explained with reference to FIG 3B, to extract at least one heading hi- erarchy associated with at least one sentence in the tech- nical document. Further, the sentences in the technical docu- ment are demarcated as explained below with reference to FIG 3C. Upon demarcating the sentences, text embeddings for each of the sentences is generated using a first embedding model. Non-limiting examples of a first embedding model may include Bag of words, FasText and Pooled word2vec and transformer- based encoder models. In a preferred embodiment, the first embedding model is a transformer-based encoder model such as Bidirectional Encoder Representation from Transformer (BERT), SciBERT, RoBERTa, DistilBERT and XLNet. As an example, use of a BERT model for generating text embeddings is explained be- low with reference to FIG 4.
At step 215, the heading hierarchy is used to generate a heading embedding for the at least one sentence. The heading embedding is a vector representation of predefined length corresponding to the heading hierarchy. The heading embed- dings are generated from the heading hierarchy, using a sec- ond embedding model. Non-limiting examples of the second em- bedding model include Bag of words, FasText, Pooled word2vec and autoencoder models. In a preferred embodiment, the second embedding model is an autoencoder model. As an example, training and use of an autoencoder model for generating head- ing embeddings is explained later with reference to FIG 5.
At step 220, the heading embedding and the text embedding of the at least one sentence is used to generate a context em- bedding for the at least one sentence. In a preferred embodi- ment, the context embedding is generated by concatenating the heading embedding and the text embedding. It may be under- stood by a person skilled in the art that it is possible to generate a unique context embedding by concatenating the heading embedding and the text embedding in any order or us- ing other operations such as addition, subtraction etc. The context embedding is a vector representation of the sentence along with contextual information.
At step 225, a classifier model is applied to the context em- bedding to generate output data. The output data is indica- tive of a class associated with the sentence. The classifier model may be trained to classify context embeddings using any of the classifier algorithms, including but not limited to, decision trees, Naive Bayes classifiers, clustering algo- rithms (e.g., K-Nearest Neighbours (K-NN)), Support Vector Machines (SVMs) and Artificial Neural Networks (ANNs). In a preferred embodiment, the classifier model is trained based on an ANN as explained later with reference to FIG 6.
At step 230, the at least one sentence is selectively provid- ed to the one or more output devices 117 based on the class of the at least one sentence. In an embodiment, each of the classes is associated with a unique colour code. In an embod- iment, the colour-code corresponding to the class of a given sentence is firstly identified from a first look up table stored in the database 198. Further, an area covered by the sentence in the technical document is highlighted based on the colour-code. The highlighting of the area based on the colour-code may be performed using highlighting tools such as PDF highlighter. For example, a source code of the PDF docu- ment is modified to highlight the area covered by the sen- tence. In an embodiment, an object recognition algorithm may be used to highlight the area covered by the sentence based on predefined rules. For example, the first class may be "Fi- nance” highlighted in yellow, second class may be "Engineer- ing" highlighted in green, third class may be "Legal" high- lighted in blue and fourth class may be "Sales" highlighted in red. Upon highlighting, the highlighted area of the tech- nical document is displayed on the one or more output devices 117. Advantageously, highlighting the sentences based on the colour-codes enables a class of stakeholders to focus only on the sentences highlighted under a specific class. Further, the technical document comprising the highlighted area is provided to the one or more output devices, for displaying. In another embodiment, the sentence may be selectively stored in the database 198 based on the class of the sentence. For example, all sentences that are classified under "Engineer- ing" and "Finance" are stored in the database 198. Further, the selectively stored data is transmitted to the one or more output devices 117 for displaying to a user. For example, a sentence of class "Engineering" may be only displayed on a first output device associated with an engineering team, a sentence of class "Finance" may be only displayed on a second output device associated with a finance team and so on. In an implementation, the output device for selectively displaying a sentence based on the class is identified using predefined IP address of the output device.. For example, the IP address corresponding to the class may be determined from a second look up table stored in the database 198.
In yet another embodiment, the class associated with the sen- tence is used to identify a text analysis algorithm from a plurality of domain-specific text analysis algorithms. Each of the text analysis algorithms is configured to analyse the sentence based on context-specific terms present in the sen- tence. For example, a first text analysis algorithm may be specific to the domain of engineering, a second text analysis algorithm may be specific to the domain of finance, and so on. The identified text analysis algorithm, upon being exe- cuted by the processing unit 120, analyse the sentence for identifying one or more technical parameters mentioned in the sentence. For example, if the class of the sentence is "Engi- neering", the one or more technical parameters may include tensile stress, maximum temperature etc. The values corre- sponding to the technical parameters may be identified based on predefined keywords, numerals or units such as Pascal, Newton/m2, Celsius, Fahrenheit etc. For example, the value of tensile stress may be identified as 10 Pascals, the maximum temperature as 100 degree Celsius and so on. The units may be defined in a corpus corresponding to the domain-specific text analysis algorithm.
In a further embodiment, the one or more technical parameters identified from the technical document are used to configure a machine-executable simulation instance of a system design of the technical installation. For example, the technical pa- rameters obtained from a sentence of class "Engineering" may be used to configure a machine-executable simulation instance of a system design of a steam turbine present in a power plant. The system design may be one of 1-dimensional model, 2-dimensional model, 3-dimensional model or a combination thereof. The system design may be firstly configured by based on values of the technical parameters obtained from the tech- nical document. For example, the technical parameters may in- clude dimensions and material properties of one or more com- ponents of at least the steam turbine.
Further, the simulation-instance of the updated system design is generated in a simulation environment. In an embodiment, the simulation may be performed using a computational simula- tion technique such as Computational Solid Mechanics (CSM) and Computational Fluid Dynamics (CFD). The simulation may be performed as ID-simulation, 2D-simulation or 3D-simulation. Further, a behaviour of the technical installation, i.e. the steam turbine, is simulated based on the system design. The simulation may be performed to validate an industrial design process, performance analysis or for assessing safety of a technical installation designed based on the technical param- eters mentioned in the technical document.
In a further embodiment, one or more key performance indica- tors corresponding to the one or more technical parameters is computed based an outcome of the simulation. In an implemen- tation, simulation results may comprise numerical values in- dicative of one or more key performance indicators. In anoth- er example, the simulation results may be provided to one or more mathematical models to compute one or more key perfor- mance indicators.
In yet another embodiment, trends may be generated based on the one or more key performance parameters. For example, his- toric trends may be plotted based on similar key performance indicators extracted from a plurality of technical documents. For example, if there are a plurality of technical documents, each of which comprise requirements for gas turbines over the years 1991, 1992...2010, the historic trend may be generated based on a technical parameter such as capacity (in Mega- watts) corresponding to each of the years.
FIG 3A shows a flowchart of a method 300 for extracting text from a technical document in PDF, in accordance with an exem- plary embodiment of the present invention.
At step 305, the technical document in PDF is converted into Extensible Markup Language (XML) format using a text extrac- tion tool such as pdfminer.six. The XML format is generated based on character-level information of the text in the PDF. The character-level information may include unicodes and metadata corresponding to each character.
At step 310, a raw JSON file is generated based on the encod- ed text. The JSON file combines datapoints at phrase-level. The conversion to raw JSON format is performed to prevent loss of information during parsing of the technical document.
At step 315, any phrase that is repetitive or is present in 80% or more of the total number of pages of the document is discarded from the XML document. This is because, such repet- itive text may constitute header or footer of the document. At step 320, unicodes corresponding to predetermined special characters such as "cp", "ig" etc., acronyms and units such as mm, °C, Pa etc. are replaced with corresponding strings to form phrases. The strings corresponding to the unicodes may be identified from a look up table stored in the database 198. The look up table may comprise each of the spe- cial characters, acronyms and units and their corresponding strings. Here, the corresponding string may be a word or group of words that facilitates identification of a context between two neighbouring words. For example, the unicode "\u0424" is replaced with "phi", "\ub2212" with "hyphen", "u0421" with "centigrade" etc.
FIG 3B shows a flowchart of method 325 for generating heading hierarchies, in accordance with the present invention. In or- der to extract the heading hierarchy, firstly text lines in the technical document are identified based on coordinates of the technical document. Further, each of the text line in the technical document is classified into at least one of a head- ing and a sentence, based on at least one characteristic of the text line. The at least one characteristic may include spacing, font style, font type etc. Upon identifying the sen- tences and headings, a heading hierarchy is generated for each of the headings. An exemplary method for generating heading hierarchies is detailed in steps 330 to 340 below.
At step 330, position of each of the phrases in the document is identified based on coordinates of the text in the docu- ment as determined using the PDF parser. Based on the posi- tion, phrases corresponding to each text line in the document are merged from left to right.
At step 335, spacing between each text line is determined based on pixels or coordinates of the text lines. The term "spacing" as used herein, refers to a vertical distance be- tween two lines. Therefore, a text line may have two spac- ings, spacing with a preceding text line directly above and spacing with a succeeding text line directly below.
In an embodiment, an average spacing is determined based on two of the most frequent spacings between text lines in the technical document. For example, if the most frequent spac- ings are 1.5 mm and 1 mm, the average spacing may be calcu- lated as 1.25mm ((lmm+1.5mm)/2). The frequency of spacings may be determined as a count of each of the spacings, e.g., 11 counts of 1.5 mm and 14 counts of 1 mm. In another exam- ple, if the frequency of spacings is more or less the same, then the greater spacing may be chosen as the average spac- ing.
Upon identifying the spacing, the text lines are merged based on a maximum line spacing and position associated with each text line. Further, if the maximum line spacing between the text line and the preceding text line is lesser than the av- erage spacing, then the text line is merged with the preced- ing line above. Otherwise, if the maximum line spacing is greater than the average spacing, the text line is not merged with the preceding text line. The term "merge” as used herein refers to concatenating phrases present in two or more text lines to form a paragraph. It must be understood that, here the term "paragraph" refers to a series of phrases forming a textual paragraph of in the technical document.
At step 340, headings present in the technical document are identified. The headings are identified using predefined rules. An example of a predefined rule may be such that, if after step 335, a text line which is not concatenated with a preceding text line or a subsequent text line, may be classi- fied as a potential heading. Further, presence of only upper- case characters and/or presence of bold characters may also be used to identify headings. Similarly, subheadings may also be identified based on predefined rules. Further, a hierarchy of headings and subheadings is identified based on similar predefined rules. The predefined rules may be based on fac- tors including, but not limited to, font size, font style, spacing, position or numbering of the headings and/or sub- headings. Upon identifying the headings and subheadings, the heading hierarchy is generated. For example, the heading hi- erarchy may be of the following format:
GENERAL > ELECTRICAL > ANTICIPATED VALUES FOR LOAD ON GUARANTEE CONDITIONS> CURRENTTRANSFORMER :::
In the above example, the main heading is GENERAL. Under GEN- ERAL, ELECTRICAL is a subheading; under ELECTRICAL, ANTICI- PATED VALUES FOR LOAD ON GUARANTEE CONDITIONS is a further subheading; and under ANTICIPATED VALUES FOR LOAD ON GUARAN- TEE CONDITIONS, CURRENT TRANSFORMER is a further subheading. In the above heading hierarchy format, each heading is sepa- rated from the subsequent subheading using a '>' and the end of the hierarchy is specified by the symbol
FIG 3C shows a flowchart of a method 345 for demarcating sen- tences in the technical document, in accordance with an em- bodiment of the present invention.
At step 350, paragraphs are mapped to respective headings based on position of the paragraphs. More specifically, a paragraph identified at step 335 is linked to an immediately preceding heading identified at step 340. This step may be explained with the help of an example. For the sake of brevi- ty, we may name the paragraphs A, B, C, D, E & F, and there are two headings Heading 1 and Heading 2 in the following or- der: i. Heading1 ■ A
■ B
■ C ii. Heading2
■ D
■ E
■ F
Here, the paragraphs A, B and C are mapped to the immediately preceding heading 'Heading 1'. The paragraphs D, E and F are mapped to the heading 'Heading 2' in a similar fashion. The term "mapping" as used herein may refer to creating a soft- ware object, i.e. a data structure, to store a hierarchy of headings and paragraphs in a sequential order.
At step 355, text lines provided along with bullet points or serial numbers are mapped to the previous partial sentence. The partial sentence may be identified, for example, based on presence of a capitalized letter at the beginning, absence of a period at the end or based on presence of other punctuation marks such as a full-colon, a semi-colon or a comma. For ex- ample, the technical document may comprise the following text: i. SomeoftheusesoftheMS Wordtoolare
• ItcanconvertaworddocumenttoPDF
• Itcanbeusedtowritetechnicalreports
Upon mapping the bullet points to the previous partial sen- tence, the text may read as below: i. SomeoftheusesoftheMSWordtoolareItcanconvertaworddocumenttoPDF 1. SomeoftheusesoftheMSWordtoolareItcanbeusedtowritetechnicalreports
That is, the text in the bullet points are conjoined with the preceding partial sentence, in order to convert them to text lines as shown above. At step 360, each of the text lines formed at step 355 are mapped to at least one immediately preceding heading, using metadata of the immediately preceding heading.
At step 365, sentences in the text lines are demarcated using predefined rules. In an example, the predefined rules may be implemented using "if-else" conditions used to segregate text lines where the period ('.') symbol appears, while disregard- ing the period symbol within acronyms such as 'i.e.', 'etc.' and 'e.g.', or within statements provided in brackets.
It may be understood by a person skilled in the art that each of the sentences demarcated are by default linked to the im- mediately preceding heading, due to pre-existing associations between the text lines and the immediately preceding head- ings. As a further step, metadata associated with heading hi- erarchies corresponding to the respective heading is added to the sentence, for identifying context associated with the sentence. Further, the heading hierarchy and the sentence are used to generate the contextual embedding as explained below with reference to FIGS 4 to 7.
FIG 4 illustrates an architecture of a BERT model 400 for generating text embeddings for sentences, in accordance with an exemplary embodiment of the present invention.
In the present embodiment, a BERT-base model is used. The BERT-base model consists of a Transformer 405. Here, the Transformer 405 is a deep learning model comprising 12 suc- cessive transformer layers 410A, 410B...410L each comprising 12 attention heads (not shown). The deep learning model is pretrained, based on a corpus, to generate text embeddings corresponding to a given sentence. The total number of param- eters is 110 million. Each of the transformer layers 410A, 410B...410L is an encoder block. In an alternate embodiment, BERT-large model comprising 24 transformer layers may be em- ployed for generating the text embeddings.
In order to generate the text embeddings, firstly, each of the sentences identified using method 345 are preprocessed using a standard tokenizer algorithm. Non-limiting examples of tokenizer algorithms may include Byte-Pair Encoding (BPE), Unigram, SentencePiece and the like. The tokenizer algorithm processes each of the sentences to generate a series of to- kens corresponding to the sentence. It must be understood that, a sentence may be tokenized into a maximum of 512 to- kens. For a given token, the input representation to the BERT-base model is constructed by summing the corresponding token embedding, segment embedding, and position embedding.
The input representations are further provided to the Trans- former as indicated by the vertical lines numbered 1, 2... 512 in FIG 4. More specifically, input representation of a classification (CLS) token is provided as first input on in- put line 1, followed by input representations for tokens cor- responding to the words in the sentence on the input lines 2, 3... 512, in the order of the words. Further, the inputs are passed to the transformer layers. Each transformer layer ap- plies "self-attention" to generate a result.
Self-attention, sometimes called intra-attention is an atten- tion mechanism relating different positions of a single sen- tence in order to compute a representation of the sentence. Each word in the sentence undergoes attention computation. Based on the attention computation, the transformer layer learns dependencies between the words in the sentence. The dependencies between the words is further used to capture the internal structure of the sentence. The result of applying self-attention is further passed through a feedforward net- work. The output of the feedforward network is provided to the text encoder block. Every token in the input of the en- coder block is firstly embedded into a 768-long embedding vector. The Transformer outputs the embedding vector as the text embedding for the sentence, as indicated by the vertical arrows emanating from the Transformer 405.
FIG 5 illustrates a block diagram of an autoencoder model 500 for generating heading embeddings corresponding to heading hierarchies, in accordance with an embodiment of the present invention. The autoencoder model comprises an input layer 505 and an encoder unit 510. The input layer 505 is configured to receive n-dimensional inputs corresponding to a heading hier- archy. The encoder unit 510 is implemented using an Long Short-Term Memory (LSTM) network (not shown) and a fully con- nected layer (not shown). The encoder unit 510 is trained to generate a compressed low dimensional encoding 515 of the in- put provided via the input layer 505. For example, the com- pressed encoding 515 may be m-dimensional.
The autoencoder model 500 further comprises a decoder unit 520, also implemented using an LSTM network (not shown) and a fully connected layer (not shown). In an alternate embodi- ment, a bidirectional LSTM network may be employed for the encoder unit 510 and the decoder unit 520. More specifically, the structure of the decoder unit 520 is a mirrored form of the encoder unit 510. The decoder unit 520 attempts to recon- struct the input, by decompressing the m-dimensional encoding 515 back to an n-dimensional output. Further, the output of the decoder unit 520 is provided via an output layer 525 of the autoencoder model 500.
Here, the encoder unit 510 is firstly trained to compress in- puts provided via the input layer 505, using a plurality of sentences. In particular, the encoder unit 510 is trained us- ing unsupervised learning. The LSTM network within the encod- er unit 510 is configured to support sequential data present in the input sentences. The LSTM network identifies patterns in the input sentences and extracts at least one feature in- dicative of the patterns in each of the input sentences. Fur- ther, a vector embedding corresponding to each of the fea- tures is generated through the fully-connected layer of the encoder unit 510. This vector embedding forms the Tri- dimensional encoding 515 of the sentence.
During training phase, the m-dimensional encoding 515 is fur- ther passed onto the decoder unit 520. The decoder unit 520 attempts to reconstruct the input sentence from the Tri- dimensional encoding 515. The LSTM network in the encoder unit 510 maintains constant backward flow in the error signal that enables it to learn long-term dependencies. An error signal corresponding to differences between the input sen- tence provided and the sentence reconstructed by the decoder unit 520, is further used to correct weights associated with the LSTM network in the encoder unit 510. The process of cor- recting errors is repeated using different sets of sentences until the encoder unit 510 is trained to generate word-level embeddings to a predefined level of accuracy.
Upon training, the input layer 505 and the encoder unit 510 is used for encoding heading embeddings corresponding to heading hierarchies. More specifically, the m-dimensional en- coding generated by the encoder unit 510 corresponding to a heading hierarchy forms the heading embedding. It may occur that headings may be absent for say, a first paragraph, in certain technical documents. In such cases, heading hierarchy is not generated for the first paragraph and the heading em- bedding may be, by default, taken as an empty vector [0,0,0,..]. FIG 6 illustrates an embodiment of an artificial neural net- work 600. Alternative terms for "artificial neural network" are "neural network", "artificial neural net" or "neural net".
The artificial neural network 600 comprises nodes 620, 632 and edges 640, ..., 642, wherein each edge 640, ..., 642 is a di- rected connection from a first node 620, ..., 632 to a second node 620, ..., 632. In general, the first node 620, ..., 632 and the second node 620, ..., 632 are different nodes 620, ..., 632, it is also possible that the first node 620, ..., 632 and the second node 620, ..., 632 are identical. For example, in FIG 6 the edge 640 is a directed connection from the node 620 to the node 623, and the edge 642 is a directed connection from the node 630 to the node 632. An edge 640, ..., 642 from a first node 620, ..., 632 to a second node 620, ..., 632 is also denoted as "ingoing edge" for the second node 620, ..., 632 and as "outgoing edge" for the first node 620, ..., 632.
In this embodiment, the nodes 620, ..., 632 of the artificial neural network 600 may be arranged in layers 610, ..., 613, wherein the layers may comprise an intrinsic order introduced by the edges 640, ..., 642 between the nodes 620, ..., 632. In particular, edges 640, ..., 642 may exist only between neigh- boring layers of nodes. In the displayed embodiment, there is an input layer 610 comprising only nodes 620, ..., 622 without an incoming edge, an output layer 613 comprising only nodes 631, 632 without outgoing edges, and hidden layers 611, 612 in-between the input layer 610 and the output layer 613. In general, the number of hidden layers 611, 612 may be chosen arbitrarily. The number of nodes 620, ..., 622 within the input layer 610 usually relates to the number of input values of the neural network, and the number of nodes 631, 632 within the output layer 613 usually relates to the number of output values of the neural network.
In particular, a (real) number may be assigned as a value to every node 620, ..., 632 of the neural network 600. Here, x(n)i denotes the value of the i-th node 620, ..., 632 of the n-th layer 610, ..., 613. The values of the nodes 620, ..., 622 of the input layer 610 are equivalent to the input values of the neural network 600, the values of the nodes 631, 632 of the output layer 613 are equivalent to the output value of the neural network 600. Furthermore, each edge 640,..., 642 may comprise a weight being a real number, in particular, the weight is a real number within the interval [-1, 1] or within the interval [0, 1]. Here, w<m'n)i;j denotes the weight of the edge between the i-th node 620, ..., 632 of the m-th layer 610, ..., 613 and the j-th node 620, ..., 632 of the n-th layer 610, ..., 613. Furthermore, the abbreviation w(n)i,j is defined for the weight w<n'n+Fi,j.
In particular, to calculate the output values of the neural network 600, the input values are propagated through the neu- ral network. In particular, the values of the nodes 620, ..., 632 of the (n+l)-th layer 610, ..., 613 may be calculated based on the values of the nodes 620, ..., 632 of the n-th layer 610, ..., 613 by: (1)
Figure imgf000032_0001
Herein, the function f is a transfer function (another term is "activation function"). Known transfer functions are step functions, sigmoid function (e.g. the logistic function, the generalized logistic function, the hyperbolic tangent, the Arctangent function, the error function, the smoothstep func- tion) or rectifier (ReLU) functions. The transfer function is mainly used for normalization pur- poses. In particular, the values are propagated layer-wise through the neural network, wherein values of the input layer 610 are given by the input of the neural network 600, wherein values of the first hidden layer 611 may be calculated based on the values of the input layer 610 of the neural network, wherein values of the second hidden layer 612 may be calcu- lated based in the values of the first hidden layer 611, etc. In order to set the values w(m'n) i;j for the edges, the neural network 600 has to be trained using training data. In partic- ular, training data comprises training input data and train- ing output data (denoted as t±). For a training step, the neural network 600 is applied to the training input data to generate calculated output data. In particular, the training data and the calculated output data comprise a number of val- ues, said number being equal with the number of nodes of the output layer 613. In particular, a comparison between the calculated output data and the training data is used to re- cursively adapt the weights within the neural network 600 (backpropagation algorithm). In particular, the weights are changed according to:
Figure imgf000033_0001
wherein y is a learning rate, and the numbers 5(n)j may be re- cursively calculated as:
Figure imgf000033_0002
based on 5(n+1)j, if the (n+l)-th layer is not the output lay- er; and
Figure imgf000033_0003
if the (n+l)-th layer is the output layer 613, wherein f' is the first derivative of the activation function, and t(n+1,j is the comparison training value for the j-th node of the output layer 613. FIG 7 shows a workflow 700 for classifying sen- tences based on text embeddings and heading embeddings, in accordance with an exemplary embodiment of the present inven- tion. The workflow 700 comprises a BERT encoder 705 (similar to BERT encoder 400), an autoencoder model 710 (similar to autoencoder model 500) and a neural network-based classifier model 715 (similar to neural network 600).
Here, the BERT model 705 generates a 768-long text embedding of an input sentence A. The 768-long text embedding is fur- ther flattened to generate a 1x768-dimensional text embedding 720. Further, based on metadata associated with the sentence, a corresponding heading hierarchy B is identified. Further, the heading hierarchy B is provided as input to the autoen- coder model 710 to generate a 200-long heading embedding. The 200-long heading embedding is further flattened to generate a 1x200-dimensional heading embedding 725. The 1x768- dimensional text embedding 720 and the lX200-dimensional heading embedding 725 are further concatenated to generate a lx968-dimensional context embedding 730 for the sentence. Further, lx968-dimensional context embedding 730 is provided as input to the classifier model 715.
In the present embodiment, the classifier model 715 may in- clude an input layer 740, four hidden layers 745A-D and an output layer 750. The transfer function for each of the hid- den layers 745A-D is a ReLU activation function. Here, the input layer 740 comprises 968 nodes. The first hidden layer 745A comprises 256 nodes that generate 256 output values based on the 968 input values received from the input layer 740 using the ReLU activation function. The second hidden layer 745B comprises 128 nodes generate 128 output values based on the 256 input values from the first hidden layer 745A using the ReLU activation function. The third hidden layer 745C comprises 64 nodes that generates 64 output values based on the 128 input values from the second hidden layer 745B using the ReLU activation function. The fourth hidden layer 745D comprises 32 nodes that generate 2 output values based on the 64 input values from the third hidden layer 745C using the ReLU activation function. The output layer 750 fur- ther uses Softmax activation function to generate a final output 755 indicative of a class of the sentence. In the pre- sent example, the final output 755 is a 2-long vector that indicates a probability associated with a specific class. For example, if there are two classes in total, the final output comprises probabilities of the sentence falling into each of the classes. For example, if probability of a first class is 0.75 and the probability of a second class is 0.25, the sen- tence is classified under the first class. In an embodiment, the sentences in the technical document is highlighted based on colour-code associated with the respective classes of the sentences. In addition, one or more key performance indica- tors may also be computed by performing simulations based on one or more technical parameters present in the technical document. In an example, a dashboard indicating the key per- formance indicators along with the highlighted text, may be generated on one or more output devices.
Advantageously, the present invention facilitates extracting context-relevant information from a technical document com- prising text-based specifications associated with a technical installation. Further, the present invention also facilitates simulating a behaviour of the technical installation by per- forming simulations based on technical parameters in the text-based specification. Further, the present invention also facilitates automated computing of key-performance indicators based on the simulations, to guide a human operator in making decisions.
While the invention has been illustrated and described in de- tail with the help of a preferred embodiment, the invention is not limited to the disclosed examples. Other variations may be deducted by those skilled in the art without leaving the scope of protection of the claimed invention.

Claims

Patent Claims
1. A computer-implemented method for managing information present in a technical document, the method comprising: receiving, by a processing unit (120), the tech- nical document from a source, wherein the technical document comprises text-based specifications associated with a technical installation; parsing the technical document to extract at least one heading hierarchy associated with at least one sen- tence in the technical document; using the heading hierarchy to generate a heading embedding for the at least one sentence, wherein the heading embedding is a vector representation of prede- fined length corresponding to the heading hierarchy; using the heading embedding and a text embedding of the at least one sentence to generate a context embed- ding for the at least one sentence; applying a classifier model (715) to the context embedding to generate output data, wherein the output data is indicative of a class associated with the at least one sentence; and selectively providing the at least one sentence to one or more output devices (117) based on the class of the at least one sentence.
2. The method according to claim 1, wherein parsing the technical document to extract at least the heading hi- erarchy associated with the at least one sentence com- prises: identifying a plurality of text lines present in the technical document based on coordinates of the technical document, wherein each of the text lines com- prise text present in a row of the technical document; classifying each of the text lines into at least one of a heading and a sentence, based on at least one characteristic of the text line; and generating a heading hierarchy from one or more text lines classified as headings, using a predefined rule. The method according to claims 1 and 2, further com- prising: mapping each of the text lines classified as a sen- tence, to at least one immediately preceding heading, using metadata of the immediately preceding heading. The method according to any one of the claims 1 to 3, wherein the text embedding of the at least one sentence is generated using a first embedding model (705). The method according to any one of the claims 1 to 4, wherein the heading embedding for the at least one sen- tence is generated from the heading hierarchy using a second embedding model (710). The method according to any one of the claims 1 to 5, wherein using the heading embedding and the text embed- ding of the at least one sentence to generate the con- text embedding for the at least one sentence, compris- es: concatenating the heading embedding and the text embedding of the at least one sentence to form the con- text embedding for the sentence. The method according to any one of the claims 1 to 6, wherein the classifier model is trained based on at least one of Artificial Neural Networks, decision trees, Naive Bayes classifiers, clustering algorithms and Support Vector Machines. The method according to any one of the claims 1 to 7, wherein selectively providing the at least one sentence to the one or more output devices (117) based on the class of the at least one sentence, comprises: identifying a colour-code corresponding to the class of the sentence from a lookup table; and highlighting an area covered by the sentence in the technical document based on the colour-code; and displaying the technical document comprising the highlighted area via the one or more output devices (117). The method according to any one of the claims 1 to 8, wherein selectively providing the at least one sentence to the one or more output devices (117) based on the class of the at least one sentence, comprises: selectively storing the sentence in a database (198) based on the class of the sentence; and transmitting the selectively stored sentence to the one or more output devices (117) for displaying to a user. .The method according to any one of the claims 1 to 9, further comprising: identifying a text analysis algorithm corresponding to the determined class of the at least one sentence; using the identified text analysis algorithm to an- alyse the sentence for identifying one or more technical parameters mentioned in the sentence. ll.The method according to claims 1 and 10, further com- prising: using the one or more technical parameters identi- fied to configure a machine-executable simulation in- stance of a system design of the technical installation; simulating a behaviour of the technical installa- tion, based on the system design; computing at least one key performance indicator corresponding to the one or more technical parameters based on an outcome of the simulation; and providing a notification indicative of the at least one key performance indicator on the one or more output devices (117).
12. An apparatus (105) for managing information in a tech- nical document, the apparatus (105) comprising: one or more processing units (120); and a memory unit (125) operatively coupled to the one or more processing units (120), wherein the memory unit (125) comprises an information management module (160) stored in the form of machine-readable instructions exe- cutable by the one or more processing units (120), wherein the information management module (160) is con- figured to perform method steps according to any of the claims 1 to 11.
13. A system (100) for managing information present in a technical document, the system (100) comprising: a source (110) configured to provide a technical document, the technical document comprises text-based specifications associated with a technical installation; and an apparatus (105) according to claim 12, communi- catively coupled to the source (110), wherein the appa- ratus (105) is configured to manage information present in the technical document, according to any of the meth- od claims 1 to 11; and one or more output devices (117) communicatively coupled to the apparatus (105). A computer-program having machine-readable instruc- tions, which when executed by one or more computing de- vices, cause the one or more computing devices to per- form a method according to any of the claims 1 to 11. A machine-readable storage medium comprising a comput- er-program according to claim 14.
PCT/EP2023/061361 2022-05-04 2023-04-28 System and method for managing information present in technical documents Ceased WO2023213732A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP22171631.9A EP4273736A1 (en) 2022-05-04 2022-05-04 System and method for managing information present in technical documents
EP22171631.9 2022-05-04

Publications (1)

Publication Number Publication Date
WO2023213732A1 true WO2023213732A1 (en) 2023-11-09

Family

ID=81581268

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2023/061361 Ceased WO2023213732A1 (en) 2022-05-04 2023-04-28 System and method for managing information present in technical documents

Country Status (2)

Country Link
EP (1) EP4273736A1 (en)
WO (1) WO2023213732A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025129888A1 (en) * 2023-12-20 2025-06-26 江苏徐工国重实验室科技有限公司 Document information extraction method and device, and storage medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119336382B (en) * 2024-09-30 2025-08-15 河南昆仑技术有限公司 Construction method of interface document, training method of key parameter processing model and computing equipment
CN121255968B (en) * 2025-12-08 2026-03-06 湖南师范大学 Engineering index intelligent inspection method and system based on search generation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020118379A1 (en) * 2000-12-18 2002-08-29 Amit Chakraborty System and user interface supporting user navigation of multimedia data file content

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020118379A1 (en) * 2000-12-18 2002-08-29 Amit Chakraborty System and user interface supporting user navigation of multimedia data file content

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "How to extract and structure text from PDF files with Python and machine learning", 25 February 2022 (2022-02-25), XP055967967, Retrieved from the Internet <URL:https://www.posos.co/blog/how-to-extract-and-structure-text-from-pdf-files-with-python-and-machine-learning> [retrieved on 20221004] *
CHRISTIAN HOFER: "Development of a structure-aware PDF Parser |", 6 September 2020 (2020-09-06), XP055967955, Retrieved from the Internet <URL:https://medium.com/@_chriz_/development-of-a-structure-aware-pdf-parser-7285f3fe41a9> [retrieved on 20221004] *
JOHANNES RAUSCH ET AL: "DocParser: Hierarchical Structure Parsing of Document Renderings", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 25 January 2021 (2021-01-25), XP081864612 *
MARINOV ANGEL: "Parameter extraction from technical datasheet documentation using technique optimized through genetic algorithm", 2020 INTERNATIONAL CONFERENCE AUTOMATICS AND INFORMATICS (ICAI), 1 October 2020 (2020-10-01), pages 1 - 4, XP093082486, Retrieved from the Internet <URL:https://ieeexplore.ieee.org/stampPDF/getPDF.jsp?tp=&arnumber=9311389&ref=aHR0cHM6Ly9pZWVleHBsb3JlLmllZWUub3JnL2RvY3VtZW50LzkzMTEzODk=> DOI: 10.1109/ICAI50593.2020.9311389 *
REAL PYTHON: "SimPy: Simulating Real-World Processes With Python - Real Python", 29 January 2022 (2022-01-29), XP093082477, Retrieved from the Internet <URL:https://web.archive.org/web/20220129052036/https://realpython.com/simpy-simulating-with-python/> [retrieved on 20230915] *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025129888A1 (en) * 2023-12-20 2025-06-26 江苏徐工国重实验室科技有限公司 Document information extraction method and device, and storage medium

Also Published As

Publication number Publication date
EP4273736A1 (en) 2023-11-08

Similar Documents

Publication Publication Date Title
US20240394512A1 (en) Hallucination Detection
US12153880B2 (en) Methods and systems for intelligent editing of legal documents
CN109271521B (en) Text classification method and device
EP4273736A1 (en) System and method for managing information present in technical documents
US20220083738A1 (en) Systems and methods for colearning custom syntactic expression types for suggesting next best corresponence in a communication environment
CN112860919A (en) Data labeling method, device and equipment based on generative model and storage medium
US20240212061A1 (en) Machine Learning System for Summarizing Tax Documents With Non-Structured Portions
US8533140B2 (en) Method and system for design check knowledge construction
CN109684627A (en) A kind of file classification method and device
Chatterjee et al. Automated question-answering for interactive decision support in operations & maintenance of wind turbines
CN113807807A (en) Component parameter identification method and device, electronic equipment and readable medium
KR102271810B1 (en) Method and apparatus for providing information using trained model based on machine learning
CN113627173B (en) A manufacturer name identification method, device, electronic device and readable medium
CN113627168A (en) Method, device, medium and equipment for checking component packaging conflict
US20250045513A1 (en) Methods and systems for intelligent editing of legal documents
CN111966830A (en) Text classification method, device, equipment and medium combining RPA and AI
CN117633639A (en) A method and device for automatically identifying the difficulty level of test questions
CN110599039A (en) Product management method and device, electronic equipment and storage medium
JP2014235584A (en) Document analysis system, document analysis method, and program
KR20220116781A (en) The unstructured data analysis method using component network based analysis system
JP7649839B1 (en) Re-learning system, re-learning method, and program
KR102666182B1 (en) Apparatus and method of processing document correction command based on machine learning
CN114462659A (en) A method and device for correcting an industry category
US12524727B1 (en) Apparatus and method for displaying and modifying assessment data through a graphical user interface (GUI)
KR102649429B1 (en) Method and system for extracting information from semi-structured documents

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23722394

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 23722394

Country of ref document: EP

Kind code of ref document: A1