Digital archive information extractor
The software system automates the extraction of entities of interest from diverse documents using a document reading model and machine learning, addressing resource and error issues in existing methods, achieving efficient and accurate data extraction.
Patent Information
- Authority / Receiving Office
- AE · AE
- Patent Type
- Applications
- Current Assignee / Owner
- LEONARDO SPA
- Filing Date
- 2024-12-11
AI Technical Summary
Existing methods for extracting data from documents based on a predefined domain taxonomy rely heavily on human operators, consuming significant resources and prone to errors due to repetitive tasks.
A software system utilizing a document reading model and an extraction machine learning model to automatically identify and extract entities of interest from diverse document formats, including OCR and natural language processing techniques, with a capability for real-time processing and error correction.
Significantly reduces resource consumption and error rates by automating the extraction process, enabling efficient and accurate identification of entities of interest across various document types, including real-time obsolescence detection and supportability analysis.
Smart Images

Figure ABST_ABST
Abstract
Description
Digital Archive InformationExtractor cross-Reference to related applicationsThis Patent Application claims priority from European Patent Application No. 23217910.1 filed on December 19, 2023, and from Italian patent application No. 102024000004024 filed on February 26, 2024, the entire disclosure of which is incorporated herein by reference. Technical Sector of the InventionThe present invention relates in general to a computer system for reading and analysing data present in a document, in particular it relates to a system for extracting data from different documents. In particular, the present invention relates to a software for identifying and extracting entities of interest with respect to a domain taxonomy, by way of example obsolescence, from different documents. State of the artAs is known, the identification and extraction of specific data with respect to a predefined domain taxonomy, by way of example the obsolescence, from one or more documents are normally carried out by a group of human operators. It is further known that, a human operator must read the entire document to identify sections relevant to a predefined taxonomy. Furthermore, the human operator, after identifying such relevant sections, has the task of extracting and organizing in a structured document, for example in an electronic spreadsheet, one or more pieces of information of interest contained in such sections. In addition, it is known that US 2023 / 153641 A1 discloses an application instance that includes one or more machine learning models receives, from a subscriber computing system, a document comprising unstructured data. Based on the unstructured data, said application instance generates an optimized model input that includes a plurality of parsed document sections. For each parsed document section, the application instance generates an output set by performing, by a machine learning model, at least one key information extraction operation. The machine learning model transmits the output in structured form to a target application operated or hosted at least in part by a subscriber entity associated with the subscriber computing system.Furthermore, US 2018 / 144042 A1 discloses techniques for automatically generating data extraction templates for structured documents (e.g., B2C emails, invoices, bills, invitations, etc.), and for assigning classifications to those data extraction templates to streamline data extraction from subsequent structured documents. According to this document, in various implementations, a data extraction template generated from a cluster of structured documents that share fixed content may be identified. Features of the cluster of structured documents may be applied as input to extraction machine learning model(s) trained to provide location(s) of transient field(s) in structured documents, to determine location(s) of transient field(s) in the cluster of structured documents. An association between the data extraction template and the determined transient field location(s) may be stored. Based on the association, data point(s) may be extracted from a given structured document of a user that shares fixed content with the cluster of structured documents. The extracted data point(s) may be surfaced to the user.In addition, it is known that US 2020 / 097768 A1 discloses a method for managing documents in an electronic deal room associated with a document-intensive activity, the method comprising: receiving, by a processing system of a deal room platform, a request to upload a document to the electronic deal room from a user device associated with a user participating in the deal; receiving, by the processing system, the document from a document source; determining, by the processing system, a classification of the document based on one or more features of the document and a machine-learned document classification model that is trained to classify documents involved in document-intensive activities; identifying, by the processing system, one or more folders of an organizational structure having a plurality of folders corresponding to the electronic deal room based on the classification; and associating, by the processing system, the document with the one or more folders. Object and Summary of the InventionThe Applicant was able to observe that the known solutions are amenable to improvement. In particular, according to these known solutions, the various operations to extract the information are carried out by human operators, investing non-negligible time and resources in order to solve the aforementioned problem; moreover, in view of the repetitive nature of the tasks, it is evident that it is common for a human operator to make distracting errors.Aim of the present invention is therefore to make available a software for extracting information from a digital archive that makes it possible to improve, at least in part, the solutions of the prior art. In particular, the present solution offers the possibility of saving a considerable number of resources (in particular, human resources), and of significantly reducing the errors made, compared to the solutions of the prior art.According to the present invention a software for extracting information from a digital archive as claimed in the appended claims is made available. Brief Description of the DrawingsFigure 1 shows a flowchart representative of a process implementable via a software for extracting information from a digital archive according to the present invention.Figure 2 schematically shows a flowchart representative of a method, for determining the content of a document to be processed, implementable via the information extraction software according to an embodiment of the present invention.Figure 3 schematically shows a block diagram representative of an extraction machine learning model implementable via the information extraction software according to an embodiment of the present invention. Detailed description of preferred embodiments of the inventionThe present invention will now be described in detail with reference to the accompanying figures to allow a skilled person to make and use it. Various modifications of the embodiment described will be immediately clear to the skilled person and the general principles disclosed can be applied to other embodiments and applications without departing from the protection scope of the present invention, as defined in the enclosed drawings. Therefore, the present invention shall not be limited to the shown and described embodiments, but it must be granted the widest protection scope in accordance with the features disclosed and claimed.Unless otherwise defined, all the herein used technical and scientific terms have the same meaning commonly used by the ordinary skilled in the art of the present invention. In case of conflict, the present invention, including definitions provided, will be binding. Furthermore, the examples are provided for merely illustrative purposes and must not be regarded as limiting.In particular, the block diagrams included in the enclosed figures and hereinafter described must not be considered as a representation of the structural features, i.e. construction limitations, but must be construed as a representation of functional features, namely inner properties of the devices and defined by the obtained effects i.e. functional limitations which can be implemented in different ways, so as to protect the functionality thereof (chance of functioning).In order to ease the understanding of the herein described embodiments, reference will be made to some specific embodiments and a specific language will be used to describe them. The terminology used in the present document aims at describing only particular implementations, and is not intended to limit the scope of the present invention.Figure 1 shows a flowchart representative of a process implementable by means of a software for extracting information 1 from a digital archive 20, by way of example a predefined e-mail box 20. In particular, Figure 1 shows a flowchart representative of an extraction of entities of interest 6, with respect to a predefined domain taxonomy, from at least one input document 2. In detail, the information extraction software 1 is storable in and executable by electronic processing resources (not shown here) and is designed to cause, when executed, these electronic processing resources to become configured to identify, extract (or scrape or extrapolate) (block 5) and store (block 7), in electronic storage resources, a number of entities of interest 6 from one or more input documents 2. A computer system, comprising electronic processing resources storing and designed to execute the present information extraction software 1, is configured to process multiple types of documents so as to extract or scrape data from the latter and to transpose said data into a predefined format so that they are viewable and readable by a human operator or user. Furthermore, said computer system is designed to store said identified entities of interest 6 in an information unit 8 and / or to transmit an alert 9 for the human operator based on the entities of interest 6.With regard to the extraction (or extrapolation) of entities of interest 6 from input documents, it is emphasized that what matters are the operations that must be implemented to achieve these functionalities and not the hardware and software architectures with which these operations are implemented, to the point that these could be implemented through a concentrated architecture, i.e. by a single electronic device (by way of example, by a single computer), or through a cooperative distributed architecture, i.e. distributed among several electronic devices in communication and cooperating with each other according to a proprietary logical architecture that the manufacturer of the software for extracting information 1 from a digital archive 20 will decide to adopt.The electronic processing resources are designed to implement a document reading model 3 designed to determine (block 32) and optionally store the content 4 of a document, or file, to be processed. In detail, the document reading model 3 is designed to determine the textual content 4 of a document of any type and format. Figure 2 schematically shows a flowchart representative of a method, for determining the content 4 of a document to be processed, implementable via the information extraction software 1 according to an embodiment of the present invention.According to said embodiment, the document reading model 3 is designed to determine, or classify, the format (block 31) associated to the document to be processed and to determine (block 32) and to output, and / or store, the content 4 of the document to be processed according to the determined format. In particular, the document reading model 3 comprises a classifier module 31 designed to determine the format of a document, and comprises a content reading module 32 configured to determine the content 4 of the document based on the format determined by the classifier module 31.Optionally, the classifier module 31 comprises an artificial neural network trained to classify or group the type of document to be processed between different classes, or groups (clusters), of predefined documents.In particular, the classifier module 31 is further designed to assign the reading task to the content reading module 32 determined or selected, among different content reading modules 32, based on the format of the document. In particular, the document reading model 3 is designed to determine the content reading module 32, to which to assign the reading task, based on a predefined mapping, optionally a table, between formats and content reading modules 32. In particular, the predefined mapping between formats and content reading modules 32 is designed to associate a content reading module 32 to a document format.In greater detail, the document reading model 3, in particular the classifier module 31, is further designed to determine, based on the format of the document, whether an optical character recognition (OCR) technique is applicable to said document. By way of non-limiting example, the document reading model 3 is designed to determine whether an OCR technique is applicable based on the predefined mapping between formats and content reading modules 32.In particular, the document reading model 3 is further designed to apply an OCR technique to the document to be processed in order to determine and optionally store the content 4, preferably in textual form, of said document if it is determined that the document to be processed is in a format that can be processed by means of the OCR technique; by way of example, if the document is an image, a pdf (Portable Document Format) file, or a file provided by a Microsoft ® tool (for example Word, Excel or PowerPoint).According to one aspect of the present invention, the document reading model 3 is designed to determine and to output a structured representation of the content 4 of the document to be processed based on a parsing technique (block 33), or analysis, to be applied to the textual content 4 of said document. The document reading model 3 is designed to perform a parsing (block 33), in detail a syntactic analysis of the textual content 4 of the document to be processed in order to determine the grammatical structure of the text of said document so as to determine the structured representation of the content 4 to be provided in output. Optionally, said structured representation of the content 4 comprises a plurality of keywords; each of said keywords associated to a text, for example a sentence, of the analysed document.The electronic processing resources are further designed to implement an extraction machine learning model 5 trained to identify a number of entities of interest 6, with respect to a predefined domain taxonomy, in one or more input documents; in particular, in a set of input documents. According to one aspect of the present invention, the processing electronic resources are designed to train the extraction machine learning model 5. According to a further aspect of the present invention, the processing electronic resources are configured to receive the trained extraction machine learning model 5.In greater detail, the extraction machine learning model 5 is trained to provide in output the identified entities of interest 6 and a number of indices, conveniently values, of confidence associated to them; wherein, these confidence indices relative to the identified entities of interest 6 are indicative of the confidence of the extraction machine learning model 5 in providing in output the correct entities of interest 6, i.e. the entities of interest 6 to be extracted. In particular, the extraction machine learning model 5 is designed to compute, and provide in output, a confidence index for the entities of interest 6 based on a predefined metric at the design stage for the evaluation of the extraction machine learning model 5.The extraction machine learning model 5 is trained on a heterogeneous set of documents 50, in terms of format of the documents, which is processed based on the document reading model 3. In particular, the electronic processing resources are further configured to process the heterogeneous set of documents 50 by means of the document reading model 3 in order to determine, i.e. obtain, a set of textual contents 4 of the documents or structured representations of the latter 4; or digitize and optionally store these contents 4 in a predefined format to standardize the outputs provided regardless of the format of the documents processed by means of the document reading model 3.In detail, the heterogeneous set of documents 50 comprises a plurality of documents for each format, of document, which one wants to be able to analyse; conveniently, wherein said documents are data collected in one or more digital archives or databases. In greater detail, the heterogeneous set of documents 50comprises at least part of, and conveniently all of, the following documents: pdf files, textual documents of different format (for example, ®Microsoft Word documents), spreadsheets, e-mails (for example, ®Microsoft Outlook files) or messages of different types, digital archives comprising a number of documents of different formats, and / or images. By way of non-limiting example, the heterogeneous set of documents 50 comprises a plurality of documents for each of the following formats: docx, pdf, msg, pptx, xlsx.In particular, the extraction machine learning model 5 is trained to identify a number of entities of interest 6, in one or more input documents, by classifying or associating a plurality of entities, preferably sequences of words, of said documents into / to one or more predefined classes of entities of interest. In particular, the extraction machine learning model 5 is configured to determine whether an entity of an input document is, or is not, an entity of interest 6 regardless of the form or format of said entity; by way of non-limiting example, the extraction machine learning model 5 is configured to identify a specific date of interest (i.e., an entity of interest 6) even if it occurs in a different format.According to one aspect of the present invention, the predefined domain taxonomy is data obsolescence; by way of example and according to said aspect of the present invention, the classes of entities of interest comprise entities relative to a manufacturer, a supplier, a purchase made, a notification date and a spare part.In greater detail, the extraction machine learning model 5 is trained to identify the entities, of a document, belonging to the one or more predefined classes of entities of interest; that is, to identify the entities of interest 6.In particular, the extraction machine learning model 5, in order to identify a number of entities of interest 6, is trained based on the heterogeneous set of documents 50and based on different labels, each associated to a document of the heterogeneous set of documents 50 andcomprising a number of predefined entities of interest 6. Conveniently, the heterogeneous set of documents 50comprises a set of samples, comprising different documents, and a set of different labels, each associated to a document of the set of samples. In detail, the extraction machine learning model 5, in order to identify a number of entities of interest 6, is trained based on a number of comparisons made between predictions made, by the extraction machine learning model 5, on the documents of the heterogeneous set of documents 50 and the labels associated to said documents. In greater detail, the extraction machine learning model 5 is trained based on a supervised learning technique based on these comparisons made.Furthermore, according to one aspect of the present invention, the extraction machine learning model 5 is configured so as to allow its reconfiguration through a retraining or updating process, using new data, for example on a set of documents with a new format, without the need to repeat a training on the data on which it has already been trained; in this way, a training of the extraction machine learning model 5 can be carried out every time new formats and / or use cases are available, in order to increase the level of confidence of the correctness of the results provided.According to one aspect of the present invention, conveniently when the predefined domain taxonomy is data obsolescence, the electronic processing resources are further configured to identify a number of previous versions of one or more input documents stored in a digital archive 20.Furthermore, the processing electronic resources, and in particular the extraction machine learning model 5, are configured to compare the content 4, determined by means of the document reading model 3, of one or more input documents with the content 4 of a number of previous versions of said documents. Furthermore, according to said aspect of the present invention, the processing electronic resources, and in particular the extraction machine learning model 5, are further configured to identify, and provide in output, the entities of interest 6 in the input documents based on the trained extraction machine learning model 5 and on a comparison made between a plurality of different versions of the input documents. In detail, the extraction machine learning model 5 is trained to perform one or more comparisons between the content 4, determined by means of the document reading model 3, of one or more input documents, and the content 4 of a number of previous versions of such input documents.In greater detail, the electronic processing resources are further configured to identify new versions of one or more input documents and to notify or highlight the presence of such new versions to the human operator; in greater detail, such electronic processing resources are configured to transmit a notification message to a device associated, for example in a database, to the human operator.Furthermore, the electronic processing resources are configured to identify, and preferably notify the human operator or highlight the presence of, any copies or duplicates of the input documents in the digital archive 20.Figure 3 schematically shows a block diagram representative of an extraction machine learning model implementable via the information extraction software 1 according to a preferred embodiment of the present invention.According to said preferred embodiment of the present invention, the extraction machine learning model 5 comprises a plurality of sub-models 51 designed to identify different potential entities of interest 60 based on one or more natural language processing (NLP) and / or predefined entity recognition techniques; conveniently, based on at least one natural language processing technique and based on at least one entity recognition technique. In particular, the extraction machine learning model 5 comprises one or more, conveniently a plurality of, artificial neural networks 51 and preferably also one or more hybrid-deterministic algorithms 51 based on one or more natural language processing and / or predefined entity recognition techniques. In detail, the extraction machine learning model 5 comprises one or more deep convolutional neural networks 51 (DCNN), at least one model 51 based on the Transformer technology, and one or more machine learning or hybrid-deterministic algorithms 51.In particular, the extraction machine learning model 5 is trained by means of a collective learning technique, i.e. an ensemble learning technique, (for example, Bagging or Boosting) in order to improve the overall performance of the model 5 on the activity of extracting the entities of interest 6 from, or by, an input document.Conveniently, the heterogeneous set of documents 50 is divided into a plurality of training subsets to be employed to train the individual sub-models 51.Furthermore, each sub-model 51 is trained on at least one training subset in order to identify different potential entities of interest 60, with respect to a predefined domain taxonomy, in an input document. In greater detail, the electronic processing resources are configured to subdivide the heterogeneous set of documents 50 into different training subsets based on a predefined selection criterion (by way of example, by randomly selecting a number of samples and associated labels for each training subset) and to train each sub-model 51 on at least one of said training subsets.Furthermore, the extraction machine learning model 5 is configured to identify and provide in output the entities of interest 6, preferably definitive, based (block 52) on the potential entities of interest 60 identified by the sub-models 51. In detail, the extraction machine learning model 5 comprises an aggregator module 52 configured to select the entities of interest 6 from among the potential entities of interest 60 identified by the sub-models 51 based on a voting algorithm (voting or ranking) configured to assign a score, conveniently on a statistical basis, to the potential entities of interest 60 identified.In greater detail, each sub-model 51 is configured to output a number of potential entities of interest 60 and of confidence indices associated to them; wherein, these confidence indices relative to the identified potential entities of interest 60 are indicative of the confidence of the sub-model 51 that the potential entities of interest 60 belong to the predefined classes of entities of interest. Conveniently, each sub-model 51 is configured to provide in output a number of confidence indices, each associated to a potential entity of interest 60.In particular, the extraction machine learning model 5, or the aggregator module 52, is configured to select the entities of interest 6 from among the potential entities of interest 60 based on the confidence indices associated to them.Furthermore, these electronic processing resources are further designed to identify a number of entities of interest 6, with respect to the predefined domain taxonomy, by performing an inference on an input or selected document 2 (by way of example, an e-mail, an electronic spreadsheet, a textual document, a pdf file, a zip file, a web page or an image) by means of the trained extraction machine learning model 5 and conveniently also by means of the document reading model 3. According to one aspect of the present invention, the electronic processing resources are configured to process the input document 2 by means of the document reading model 3 to determine the content 4 of the input document 2 and optionally a structured representation of said content 4; and said electronic processing resources are then configured to identify the entities of interest 6 in the structured representation of the content 4 of the document 2. Optionally, the electronic processing resources are further configured to cause the displaying, on electronic display resources (for example, a screen of an electronic device of the human operator), of a graphic representation, by way of example a bar, indicative of the progress of the operation carried out on the input document 2 and optionally of the time required to conclude this operation. In detail, it is wished that the electronic processing resources are configured to conclude an operation in a few minutes; by way of non-limiting example, a maximum of two minutes for an input document 2 so that it is not necessary to use an OCR scan and a maximum of five minutes for an input document 2 so that it is necessary to use this scan.In particular, the electronic processing resources are configured to receive the input document 2 following a selection made by the human operator, by means of an electronic device (for example a smartphone, a tablet or a computer), or following a selection made autonomously by the electronic processing resources.According to one embodiment of the present invention, the digital archive 20 comprises, optionally consists of, a predefined e-mail box 20 and the processing electronic resources are further configured to periodically monitor said predefined e-mail box 20, or a predefined e-mail profile (account). In addition, the electronic processing resources are designed to read (block 23) autonomously the content 4 of an incoming e-mail 2, or rather of the input document 2, in said predefined e-mail box 20 or in the predefined e-mail profile; in particular, by means of the document reading model 3. In detail, the electronic processing resources are configured to select an incoming e-mail 2 from among the incoming e-mails in the predefined e-mail box 20 randomly or based on one or more selection rules. In greater detail, the electronic processing resources are configured to identify and highlight e-mails to be processed (with respect to processed e-mails), and / or optionally e-mails to be read or in the inbox. By way of non-limiting example, the electronic processing resources are configured to identify the e-mails to be processed and the processed e-mails based on a database designed to keep track, or store, the processed e-mails and the entities of interest 6 identified in the latter. The electronic processing resources are then configured to identify the entities of interest 6, with respect to the predefined domain taxonomy, present in the content 4 of the incoming e-mail 2 by means of the trained extraction machine learning model 5.The electronic processing resources are further configured to determine, in particular by means of a predefined navigation model 30, a number of documents reachable 22 from, or linked to, the input document 2 based on one or different document links 21 designed to connect different information units, preferably in order to provide said reachable documents 22 and the input document 2 to the extraction machine learning model 5. In particular, the electronic processing resources are configured to navigate in a network of documents starting from the input document 2 via document links 21 in order to recursively identify (block 30) a number of documents reachable 22 from the input document 2. Conveniently, the electronic processing resources are configured to recursively identify (block 30) a number of documents reachable 22 from the input document 2 by virtually connecting a plurality of databases or documents of different format. In detail, a document link 21 is any link between two or more documents, even if they are of different format and stored in different digital archives; a document link 21 is one from among a hyperlink, an attachment link, or a link of a different type.In greater detail, the electronic processing resources are designed to implement a document navigation model 30 designed to determine a number of reachable documents 22, even if they are of different formats and / or available from different external sources, based on the input document 2 or on the textual content 4 of the latter 2; and these electronic processing resources are further designed to determine the reachable documents 22 starting from the input document 2 by means of the implemented document navigation model 30. Optionally, the electronic processing resources are further designed to classify, into different classes of document groups, the input document 2 also based on the documents reachable 22 by the input document 2.In particular, the electronic processing resources are configured to recursively identify (block 30) a number of documents reachable 22 from the input document 2 via hyperlinks (links) 21, by way of example URL links (Uniform Resource Locator), included in said input document 2 and / or in a document reachable 22 from (or by) the latter or as attachments 21 to the input document 2 and / or to a document reachable 22 from the latter 2. By way of non-limiting example, starting from an incoming starting e-mail 2, a number of attachments 21 (for example, a pdf 22 and a different e-mail 22) and a text of the e-mail 2 (for example, comprising a hyperlink 21 to access a web page 22) are determined; subsequently, starting from the different e-mail 22, the text of the latter and a number of attachments 21 (for example, a spreadsheet 22) are determined, and starting from the web page 22 a hyperlink 21 (for example, to a different pdf file 22) is determined.Furthermore, the electronic processing resources are further configured to identify, by performing an inference by means of the trained extraction machine learning model 5, the entities of interest 6 in the input document 2 and in the number of reachable documents 22 identified; conveniently, also in a significant number of different documents. Furthermore, the electronic processing resources are configured to determine information indicative of the position and / or perimeter, in the input document 2, of an entity of interest 6 identified in said input document 2 by means of the trained extraction machine learning model 5. In detail, the information indicative of the position and / or perimeter is a set of coordinates of the input document 2. In greater detail, the electronic processing resources, by means of the extraction machine learning model 5, are configured to identify in the input document 2 the position and / or perimeter, or a set of coordinates, of one or more entities of interest 6. According to one aspect of the present invention, the extraction machine learning model 5 is designed to determine and provide in output the position and / or perimeter of one or more entities of interest 6 in one or more input documents. According to a further aspect of the present invention, the processing electronic resources are configured to search, in one or more input documents, for the entities of interest 6 identified by the extraction machine learning model 5; and to determine, and conveniently store, the position and / or perimeter of such entities of interest 6. That is, the electronic processing resources are configured to identify one or more matches of an entity of interest 6 in an input document.Furthermore, the electronic processing resources are configured to store (block 7) the identified entities of interest 6; in particular, they are configured to store the latter in a structured manner. In particular, the electronic processing resources are configured to store (block 7) the entities of interest 6 identified based on the predefined determined classes of entity of interest to be associated to them 6. Furthermore, the electronic processing resources are configured to output (block 7) an information unit 8, conveniently a file, storing at least part of the entities of interest 6 and / or provide in output, an alert 9 for the human operator indicative of the fact that a predefined alert condition is satisfied. Conveniently, the electronic processing resources are configured to implement an organiser model 7 designed to store or provide in output the information unit 8 and / or the alert 9 for the human operator.In particular, the electronic processing resources are configured to provide in output an information unit 8, for example an electronic spreadsheet, storing the entities of interest 6 identified in a structured way based on the classes of predefined entities of interest determined to be associated to them 6. In particular, the electronic processing resources, in particular by means of the organiser model 7, are configured to store in a structured manner the entities of interest 6 identified in an information unit 8 and to output said information unit 8. Conveniently, the electronic processing resources are further configured to perform such operations (block 7), relative to the storage and transmission of an information unit 8, on a periodic basis (by way of example only, after each day) and / or if it is determined that a predefined alert condition (for example, if a notification is received, from an electronic device of a human operator, indicative of a request from the information unit 8) is satisfied. Optionally, the information unit 8 also comprises the input document 2 or an identifier of the latter 2; wherein, the identifier of the input document 2 is any unique alphanumeric sequence to represent the input document 2.According to one aspect of the present invention, the electronic processing resources are further configured to associate, or store a link of, an entity of interest 6 identified with the information indicative of the position and / or perimeter, in the input document 2, of said entity of interest 6. Optionally, the electronic processing resources are further configured to store said link in the information unit 8.Conveniently, the electronic processing resources are further configured to cause the displaying, in the input document 2 and by means of electronic display resources, of the entity of interest 6 in a highlighted manner based on the information indicative of the position, and / or perimeter, of said entity of interest 6. In particular, the electronic processing resources are designed to display, in a highlighted manner, one or more sections or perimeters of the input document 2 based on the information indicative of the position, and / or perimeter, of said entity of interest 6. In greater detail, the electronic processing resources are designed to highlight one or more sections or perimeters of the input document 2, at the identified position, and / or perimeter, of said entity of interest 6.By way of example, the highlighting of an entity of interest 6 is an underlining, a colouring, or a change in character or shape, of a piece of text in the identified position, or perimeter. Furthermore, in particular, the electronic processing resources are configured to cause the displaying, by means of the electronic display resources, of a page or section of the input document 2 based on the position of the entity of interest 6 so as to highlight the latter; and so that the display for the user is graphically provided at said position.By way of non-limiting example, the information unit 8 provided in output is a report relative to obsolescence, conveniently an electronic spreadsheet, storing in a structured manner the entities of interest 6 due to the obsolescence of the data or products represented in the input document 2.Furthermore, according to one aspect of the present invention, the processing electronic resources are configured to determine that said predefined alert condition is, or is not, satisfied based on one or more identified entities of interest 6 and / or based on a number of confidence indices of the trained extraction machine learning model 5 relative to the identified entities of interest 6. In particular, the electronic processing resources are configured to determine whether one or more identified entities of interest 6 are indicative of, or associated to, characteristics to be reported to the human operator based on a predefined criterion; and to transmit an alert 9, for the human operator, at least comprising said entities of interest 6. According to the aspect of the present invention whereby the domain taxonomy is obsolescence, at least one identified entity of interest 6 is indicative of the presence of obsolescence in at least part of the analysed documents and it is desired to alert the human operator of this situation. Furthermore, according to this aspect, the electronic processing resources are configured to determine whether a described product has become obsolete based on the identified entities of interest 6, conveniently at least comprising a date indicative of the purchase or production of said described product, and to transmit to the human operator an alert 9 indicative of the fact that the described product has become obsolete.According to a different aspect of the present invention, wherein the predefined domain taxonomy concerns the supportability of the described products with respect to a business project, the electronic processing resources are configured to determine an index of the need for one or more components (preferably to be ordered or purchased) with respect to the business project based on the identified entities of interest 6, and to transmit to the human operator an alert 9 indicative of the need for such components with respect to the business project. Furthermore, the electronic processing resources, according to this aspect of the present invention, are configured to determine a number of different products to be purchased, and for each of these products to determine the number, or quantity, of products to be ordered.Conveniently, the electronic processing resources are further configured to determine an occurrence of an error in the identification of the entities of interest 6 in the input document 2, and to provide in output an alert 9 indicative of said error in order to initiate a manual error correction process by the human operator and / or an automatic error correction process; in particular, at least in order to initiate the manual error correction process.In detail, the information extraction software 1 is programmed with a parametric methodology to ensure that, when executed, the electronic processing resources become configured to intervene, and / or to allow a human operator to intervene, on the extraction machine learning model 5 to improve the performances, of the latter.According to one aspect of the present invention, the electronic processing resources are configured to determine an occurrence of an error in the identification of the entities of interest 6 in the input document 2 based on a comparison made between a number of confidence indices, of the trained extraction machine learning model 5, relative to the identified entities of interest 6 and a predefined confidence threshold. In particular, the electronic processing resources are configured to determine the occurrence of an error if one or more, conveniently a predefined number of, confidence indices are lower than the predefined confidence threshold.According to a further aspect of the present invention, the processing electronic resources are configured to determine the occurrence of an error in the identification of the entities of interest 6 in the input document 2 when it is determined that the result, provided by the extraction machine learning model 5, belongs to a predefined error category; by way of example, the input document 2 has not been processed by the extraction machine learning model 5 or the document reading model 3 has not been able to read the content 4 of the input document 2.In addition, the electronic processing resources are configured to store (block 7) the input document 2 (for example the incoming e-mail 2), on which an error occurred in the inference phase or in the reading phase, and / or the error associated to it in a predefined digital archive (for example a mailbox for errors) for the processes in error and being solved. In addition, the electronic processing resources are configured to store (block 7) the input document 2, on which an error occurred in the inference phase or in the reading phase and which one wants to analyse manually, and / or the error associated to it in a predefined digital archive for the activities that require the intervention of the human operator. The electronic processing resources are further configured to highlight to the human operator the presence of new documents, or documents not viewed, in this digital archive. In addition, the electronic processing resources are configured to store (block 7) the input document 2, on which an error occurred in the inference phase or in the reading phase that has been resolved in a predefined digital archive (by way of example a mailbox for error resolutions) for the concluded processes.In particular, the electronic processing resources are configured to receive a number of proposed entities of interest, transmitted by the human operator and / or by an automatic correction module (not shown here) and conveniently following the occurrence of an error, in order to modify, or adapt, the extraction machine learning model 5 so as to reduce the probability of the occurrence of said error. In particular, the electronic processing resources are designed to update the extraction machine learning model 5 by training it on a set of documents, on which an error has occurred, and a set of associated labels; wherein, each label comprises the proposed and received entities of interest.In particular, the electronic processing resources are configured to initiate an automatic error correction process based on the automatic correction module; in particular, also based on a predefined self-learning factor. In particular, the electronic processing resources, or the automatic correction module, are configured to make a new inference on the input document 2 based on a predefined database; conveniently, but preferably, based on a subset of the heterogeneous set of documents 50. In detail, the electronic processing resources are further configured to provide in output a result indicative of the success of the new inference, or to initiate a process of updating the extraction machine learning model 5, if it is determined that an error has not occurred during, or at the end of, the new inference on the input document 2. In greater detail, the automatic correction module is designed to carry out the new inference on the predefined data set in order to determine the entities of interest to be proposed, and is configured to output said proposed entities of interest. In particular, the automatic correction module is designed to provide in output said proposed entities of interest or to provide in output an alert 9 in order to initiate a manual error correction process by the human operator based on the result of the new inference performed on the input document 2.In particular, the automatic correction module is designed to provide in output such proposed entities of interest if the computed and associated confidence indices are greater than the predefined threshold; and to provide in output an alert 9 in order to initiate a manual error correction process by the human operator, if the calculated and associated confidence indices are lower than the predefined threshold. Furthermore, according to one embodiment of the present invention, the electronic processing resources are configured to receive a number of proposed entities of interest manually identified by the human operator or user. In detail, the electronic processing resources are configured to cause the displaying, on the electronic display resources (for example, on a screen of an electronic device), of a graphic representation (for example a form) configured to allow the human operator to enter manually a number of proposed and identified entities of interest (for example in the form of a text input bar). Furthermore, the electronic device is then designed to transmit a datum comprising such proposed entities of interest, entered by the human operator, to the electronic processing resources.In greater detail, the electronic processing resources are further configured to cause the displaying, on said electronic display resources, of a graphical search representation (not shown here) designed to allow the human operator to enter, in this graphical search representation, one or more keywords to be searched in the input document 2, and / or in the documents reachable 22 from the latter, in order to facilitate the human operator in the manual identification of the entities of interest to be proposed. The electronic processing resources are further configured to receive in input one or more keywords to be searched in the input document 2, and / or in the documents reachable 22 from the latter, and to identify one or more keywords present in the input document 2, and / or in the documents reachable 22from the latter, based on a database comprising a plurality of alphanumeric reference sequences, and based on a predefined search criterion. Furthermore, according to one aspect of the present invention, the electronic processing resources are configured to identify, in the input document 2, the position, and / or the perimeter, of a piece of information to be copied based on the received keywords and based on a predefined search criterion. The electronic processing resources are further designed to display and / or copy the information to be copied identified based on the position of said information. In particular, the electronic processing resources are designed to ensure that a displayed cursor and / or a graphic representation of the information to be copied is arranged graphically based on the, in detail at the, position of said information so as to highlight said information to be copied.By way of non-limiting example, the human operator enters a keyword in the graphical search representation and displays, on the electronic display resources, a shift in an analysed text that highlights or makes more perceptible a phrase comprising the information to be copied identified based on the keyword entered; moreover, the electronic processing resources copy or take this phrase upon request of the human operator or autonomously.According to this embodiment of the present invention, the electronic processing resources are further configured to modify, or adapt, the extraction machine learning model 5 based on these entities of interest 6 proposed by the human operator, and / or by the automatic correction module, so as to reduce the probability of the occurrence of said error. In detail, the electronic processing resources are configured to associate the proposed entities of interest with the input document 2 that the human operator or the automatic correction module has analysed and to make a request to adapt the extraction machine learning model 5 based on these proposed entities of interest and associated to the input document 2. In greater detail, the extraction machine learning model 5 is trained, by way of example based on a request made by the human operator, on the proposed entities of interest to be updated, and modified, incrementally so as to reduce the probability of the occurrence of such an error at least for the input document 2.Based on what has been previously described, the advantages which the present invention allows to obtain are clear.The present invention allows to process several documents of any format, simultaneously, and to extract entities of interest 6 automatically by analysing the textual content 4 of said documents.Furthermore, the Applicant has observed that the present invention allows to process a large amount of data in real time. Furthermore, the Applicant has observed that the present invention allows to extract and organize (for example in tabular form) information of interest, present in different documents, into a single file.By way of example, the present invention further makes it possible to notify, in real time, states of obsolescence and supportability of a product portfolio for the analysis and management of a business project; in particular, for the entire life period, until obsolescence, of each product in said portfolio. Furthermore, the Applicant has observed that the present invention allows to identify and process hundreds of different data that are not easily available and distributed in different documents; this work, for the human operator, would require several weeks, or months, of manual work. Furthermore, the Applicant has observed that the present invention allows to drastically reduce the errors, due to repetitive manual work, that the human operator could have committed.
Claims
1. Information extraction software (1) for extracting information from a digital archive (20); the information extraction software (1) being storable in and executable by electronic processing resources and designed to cause, when executed, such electronic processing resources to become configured to:- implement a document reading model (3) designed to determine (block 32) and optionally store the content (4) of a document, or file, to be processed;- implement an extraction machine learning model (5) trained to identify a plurality of entities of interest (6), with respect to a predefined domain taxonomy, in one or more input documents; wherein, the extraction machine learning model (5) is trained on a heterogeneous set of documents (50), in terms of format of the documents, which is processed according to the document reading model (3); and- identify a plurality of entities of interest (6), with respect to the predefined domain taxonomy, by performing an inference on an input document (2) by means of the trained extraction machine learning model (5) and conveniently also by means of the document reading model (3); and store (block 7) the identified entities of interest (6); wherein, the information extraction software (1) is further designed to cause, when executed, the electronic processing resources to become configured to:- identify a plurality of previous versions of the input document (2) stored in a digital archive (20);- compare the content (4), determined by means of the document reading model (3), of the input document (2) with the content (4) of a plurality of previous versions of the input document (2); and- identify and output the entities of interest (6) in the input document (2) based on the trained extraction machine learning model (5) and based on a comparison made between a plurality of different versions of the input document (2). 2. Information extraction software (1) according to claim 1 and further designed to cause, when executed, the electronic processing resources to become configured to:- determine (block 30) a number of documents reachable (22) from, or linked to, the input document (2) based on one or different document links (21) designed to connect different information units; and- identify, by performing an inference by means of the trained extraction machine learning model (5), the entities of interest (6) in the input document (2) and in the reachable documents (22) identified; and store (block 7) said identified entities of interest (6).
3. Information extraction software (1) according to claim 2, and further designed to cause, when executed, the electronic processing resources to become configured to recursively identify (block 30) a number of documents reachable (22) from the input document (2) via hyperlinks (21) included in said input document (2) and / or in a document reachable (22) from the latter or as attachments (21) to the input document (2) and / or to a document reachable (22) from the latter.
4. Information extraction software (1) according to any preceding claim, wherein the extraction machine learning model (5) is trained to identify the entities of interest (6), in one or more input documents, by classifying or associating a plurality of entities of said documents into / to one or more predefined classes of entities of interest; furthermore, the information extraction software (1) is designed to cause, when executed, the processing electronic resources to become configured to store (block 7) in a structured manner the entities of interest (6), identified and to be stored, based on the predefined classes of entities of interest determined to be associated to them. 5. Information extraction software (1) according to any preceding claim, and designed to cause, when executed, the electronic processing resources to further become configured to:- determine information indicative of the position and / or perimeter, in the input document (2), of an entity of interest (6) identified in said input document (2) by means of the trained extraction machine learning model (5);- associate the entity of interest (6) identified with the information indicative of the position and / or perimeter, in the input document (2), of said entity of interest (6); and conveniently,- cause the displaying, in the input document (2) and by means of electronic display resources, of the entity of interest (6) in a highlighted manner based on the information indicative of the position and / or perimeter of said entity of interest (6). 6. Information extraction software (1) according to any preceding claim, wherein the document reading model (3) is designed to determine, or classify, the format (block 31) associated to the document to be processed and to determine (block 32) and output the content (4) of the document to be processed based on the determined format. 7. Information extraction software (1) according to any preceding claim, wherein the document reading model (3) is designed to:- determine (block 32) the textual content (4) of the document to be processed; and- determine and output a structured representation of the content (4) of said document based on a parsing technique (block 33), or analysis, to be applied to the textual content (4) of said document. 8. Information extraction software (1) according to any preceding claim, and further designed to cause, when executed, the electronic processing resources to become configured to:- periodically monitor a predefined e-mail box (20) and read (block 23) autonomously the content (4) of an incoming e-mail, or rather of the input document (2), in said predefined e-mail box (20);- identify the entities of interest (6), with respect to the predefined domain taxonomy, present in the content (4) of the incoming e-mail (7) by means of the trained extraction machine learning model (5); and- output an information unit (8) storing at least part of the entities of interest (6) and / or provide in output an alert (9) to a human operator indicative of the fact that a predefined alert condition is satisfied; wherein, it is determined that said predefined alert condition is satisfied based on one or more identified entities of interest (6) and / or based on a number of confidence indices of the trained extraction machine learning model (5) relative to the identified entities of interest (6). 9. Information extraction software (1) according to claim 8, and designed to cause, when executed, the electronic processing resources to further become configured to:- determine an occurrence of an error in the identification of the entities of interest (6) in the input document (2), and to output an alert (9) indicative of said error in order to initiate a process of manual correction of the error by the human operator and / or of automatic correction of the error; and- modify, or adapt, the extraction machine learning model (5) based on a plurality of proposed entities of interest (6), transmitted by the human operator and / or by an automatic correction module, so as to reduce the probability of the occurrence of said error. 10. Information extraction software (1) according to any preceding claim, wherein the extraction machine learning model (5) comprises a plurality of sub-models (51) designed to identify different potential entities of interest (60) based on one or more natural language processing and / or predefined entity recognition techniques; furthermore, the extraction machine learning model (5) is configured to identify and to output the entities of interest (6), preferably definitive, based (block 52) on the potential entities of interest (60) identified by the sub-models (51).