Patent Publication Number: US-2022237373-A1

Title: Automated categorization and summarization of documents using machine learning

Description:
TECHNICAL FIELD 
     The present disclosure relates generally to systems and methods for leveraging machine learning and artificial intelligence to categorize and summarize various categories of documents. 
     BACKGROUND 
     Enterprises process and store many documents during the ordinary course of business. The volume of documents may be large and may include many different categories, and sub-categories, of related and unrelated documents. When searching for a stored document, it is time consuming and expensive to run a search that evaluates the entirety of each stored document or to require manual review of the stored documents. If significant time and financial resources cannot be dedicated to document searches, documents are unlikely to be located, which can have severe impacts. For example, a bank may have hundreds of thousands of pages of loan documents of all types, such as home loans, business loans, and the like. If a particular loan is challenged, the bank needs to be able to find and produce the particular loan. Even though a particular associate at the bank may know of the loan details, the bank will be required to dedicate significant time and resources to locate documentation of the loan in order to prove the details. If the bank is unable to locate the documentation of the loan amongst its many documents, it might suffer a loss equivalent to the outstanding balance of the loan on top of the resources dedicated trying to find the loan. As another example, a commercial supplier may store documentation in an electronic database of thousands of different types of widgets they can offer for potential sales. A salesperson may access the electronic database to ensure that a commercial supplier has a particular widget prior to a sale. If documentation for the particular widget cannot be located within the electronic database due to the significant time and personnel resources required to search large databases, the salesperson will not know they have an item available for sale and will miss sales opportunities. Additionally, without dedicating significant time and financial resources to maintain the electronic databases, the commercial supplier will lose track of the widgets they have physically stored. Thus, the widget will take up valuable, physical storage space until an employee happens to notice it during a physical warehouse audit, at which point, the widget might be obsolete. 
     To address the significant resource requirements associated with document searches, summaries of documents may be created and subsequent searches or manual review may only consider information in the summaries. Document summaries are primarily manual data entries that require an individual to review a document and produce a brief summary. Due to the significant amount of information in each document, manual summarization is a time consuming and inefficient process. Manually created summaries are often inconsistent and may omit key information due to individual biases of the individuals summarizing the documents. Automated document summarization techniques have begun to surface; however, these techniques still have many drawbacks. Some conventional methods of automated document summarization involve extracting specific words, phrases, or sentences from a document and combining the extractions to generate a summary. Under these methods, problems may arise because the approach does not consider the specific extractions with respect to either the surrounding words, phrases, or sentences or in the context of the document as a whole. Thus, semantic relationships of words, phrases, or sentences across sentences and the document as a whole are missed, which can result in fragmentation, lack of readability, and missing information within the generated summaries. Additionally, these methods face difficulty in summarizing different categories of documents, as the words, phrases, or sentences that are highly informative in one category may not be as informative in other categories. Some other conventional methods of automated document summarization attempt to understand a document as a whole to improve the quality of a summary. In order to learn information about a particular category of documents, a large volume of reference documents need to be analyzed to determine commonalities. Under these methods, problems arise due to the significant storage requirements associated with the large volume of reference documents, in addition to processing resources needed to compare and analyze the reference documents, and then to compare input documents to the reference documents. Thus, conventional document summarization methods do not provide an efficient, scalable approach for accurately evaluating semantic relationships of words, phrases, and sentences across entire documents of multiple different categories. 
     SUMMARY 
     Aspects of the present disclosure provide systems, methods, apparatus, and computer-readable storage media that support type-specific automated document summarization (also referred to as encapsulation). The techniques of the present disclosure may leverage artificial intelligence and machine learning to generate semantically correct document summaries (e.g., encapsulations) for multiple categories of documents using minimal, or no, user input. In some aspects, a system of the present disclosure may categorize a document into one of multiple predefined categories using trained artificial intelligence and machine learning. After the categorization, the system may generate category-specific annotations (e.g., annotation data) based on the document using trained artificial intelligence and machine learning. For example, if the document is categorized as a lease, the system may look for terms relevant to a lease, such as lease duration, lease price, lease parties, and the like. Once the document is annotated, the system may create a category-specific summary of the document based on the annotation data. The summary may be generated using artificial intelligence and machine learning that is trained based on a few category-specific summary templates, instead of requiring a large volume of reference documents for training or comparing. 
     In some aspects, a document processing device may receive a document and produce a summary for the document based on document categorization and category specific annotations. In some implementations, the document may be categorized into one of multiple predefined document categories using a first set of machine learning (ML) models. The first set of ML models may be trained to determine underlying similarities and differences between different categories of documents based on word features, word layout features, pixel features of non-word elements, or a combination thereof, from labeled documents of the different categories. After categorizing the document, the document processing device may annotate the document (e.g., generate annotation data) based on the category of the document. The document may be annotated via a second set of ML models trained to generate annotation data for documents having the document category. The annotation process for a particular document category may be based on qualitative and quantitative features associated with documents of the particular document category. In some implementations, the annotation process may involve identifying one or more entities such as words, numbers, and the like that correspond to highly relevant information for the particular document category. After generating the annotation data, the document processing device may generate a summary based on the annotation data using a third set of ML models. The third set of ML models may be trained to summarize a document of the document category based on category-specific annotation data. In some implementations, the third set of ML models may be trained based on category-specific summary templates and category-specific annotation data. 
     The present disclosure describes systems, methods, apparatus, and computer-readable media that provide benefits compared to conventional document summarization systems. For example, the systems described herein enable documents across multiple document categories to be summarized with little to no user input. Additionally, the systems described herein generate document summaries that are more semantically correct than document summaries generated by conventional systems by using ML models that are trained to provide category-specific annotations based on analysis of the document as a whole. Also, the systems described herein enable faster summarization of documents using fewer processing resources than conventional summarization systems due to the category-specific document summarization. Further, the systems described herein use ML models that can be trained with significantly fewer training documents as compared to the large volume of reference documents some conventional systems analyze to improve semantic understanding of documents. These improvements to document summarization enable generation of document summaries that enable fast and accurate document indexing and searching for a variety of different document categories. 
     In a particular aspect, a method for category-specific document summarization includes receiving, by one or more processors, input data representing a document. The method also includes providing, by the one or more processors, first feature data extracted from the input data to a first set of machine learning (ML) models to select a document category corresponding to the document from a plurality of predefined document categories. The first set of ML models are configured to categorize documents into the plurality of predefined document categories based on input feature data. The method includes providing, by the one or more processors, second feature data extracted from the input data to a second set of ML models to generate annotation data corresponding to the document. The second set of ML models are configured to generate annotation data corresponding to documents having the selected document category based on input feature data. The method also includes providing, by the one or more processors, the annotation data to a third set of ML models to generate a summary of the document. The third set of ML models are configured to generate summaries of documents having the selected document category based on input annotation data. The method further includes generating, by the one or more processors, an output that includes the summary. 
     In another particular aspect, a device for category-specific document summarization includes a memory and one or more processors communicatively coupled to the memory. The one or more processors are configured to receive input data representing a document. The one or more processors are also configured to provide first feature data extracted from the input data to a first set of ML models to select a document category corresponding to the document from a plurality of predefined document categories. The first set of ML models are configured to categorize documents into the plurality of predefined document categories based on input feature data. The one or more processors are configured to provide second feature data extracted from the input data to a second set of ML models to generate annotation data corresponding to the document. The second set of ML models are configured to generate annotation data corresponding to documents having the selected document category based on input feature data. The one or more processors are also configured to provide the annotation data to a third set of ML models to generate a summary of the document. The third set of ML models are configured to generate summaries of documents having the selected document category based on input annotation data. The one or more processors are further configured to generate an output that includes the summary. 
     In another particular aspect, a non-transitory computer-readable storage medium stores instructions that, when executed by one or more processors, cause the one or more processors to perform operations for category-specific document summarization. The operations include receiving input data representing a document. The operations also include providing first feature data extracted from the input data to a first set of ML models to select a document category corresponding to the document from a plurality of predefined document categories. The first set of ML models are configured to categorize documents into the plurality of predefined document categories based on input feature data. The operations include providing second feature data extracted from the input data to a second set of ML models to generate annotation data corresponding to the document. The second set of ML models are configured to generate annotation data corresponding to documents having the selected document category based on input feature data. The operations also include providing the annotation data to a third set of ML models to generate a summary of the document. The third set of ML models are configured to generate summaries of documents having the selected document category based on input annotation data. The operations further include generating an output that includes the summary. 
     The foregoing has outlined rather broadly the features and technical advantages of the present disclosure in order that the detailed description that follows may be better understood. Additional features and advantages will be described hereinafter which form the subject of the claims of the disclosure. It should be appreciated by those skilled in the art that the conception and specific aspects disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. It should also be realized by those skilled in the art that such equivalent constructions do not depart from the scope of the disclosure as set forth in the appended claims. The novel features which are disclosed herein, both as to organization and method of operation, together with further objects and advantages will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended as a definition of the limits of the present disclosure. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       For a more complete understanding of the present disclosure, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which: 
         FIG. 1  is a block diagram of an example of a system that supports category-specific document summarization according to one or more aspects; 
         FIG. 2  is a block diagram of an example of a system that supports automated document processing and summarization according to one or more aspects; 
         FIG. 3  is a block diagram of an example of the document converter of  FIG. 2 ; 
         FIG. 4  is a block diagram of examples of features extracted from documents according to one or more aspects; 
         FIG. 5  is a block diagram of an example of the document categorizer of  FIG. 2 ; 
         FIG. 6  is a block diagram of an example of the document annotator of  FIG. 3 ; 
         FIG. 7  is a block diagram of an example of a model implemented by the document summarizer of  FIG. 3 ; and 
         FIG. 8  is a flow diagram illustrating an example of a method for category-specific document summarization according to one or more aspects. 
     
    
    
     It should be understood that the drawings are not necessarily to scale and that the disclosed aspects are sometimes illustrated diagrammatically and in partial views. In certain instances, details which are not necessary for an understanding of the disclosed methods and apparatuses or which render other details difficult to perceive may have been omitted. It should be understood, of course, that this disclosure is not limited to the particular aspects illustrated herein. 
     DETAILED DESCRIPTION 
     Aspects of the present disclosure provide systems, methods, apparatus, and computer-readable storage media that leverage artificial intelligence and machine learning to generate semantically correct document summaries (also referred to as encapsulations) for multiple categories of documents using minimal, or no, user input. To illustrate, a system of the present disclosure may use trained artificial intelligence and machine learning to categorize, annotate, and summarize a document. The system may categorize an input document based on similarities between features of the input document and features of documents from multiple predefined document categories by utilizing a first set of one or more machine learning (ML) models. After the input document is categorized, the system may annotate the input document by identifying and tagging specific words or phrases as entity values of one or more category-specific entities (e.g., words or phrases that are highly informative and relevant to summarizing documents of the respective document category). To annotate the input document, the system may utilize a particular set of one or more second ML models that is selected from multiple sets of category-specific second ML models based on the particular set of second ML models corresponding to the determined document category. Each of the multiple sets of category-specific second ML models may be configured to output annotation data for a respective category of documents based on input feature data. To generate a summary of the input document, the system may generate a summarized document based on annotation data that indicates the tagged entity values from the input document. To generate the summarized document, the system may utilize a particular set of one or more third ML models that is selected from multiple sets of category-specific third ML models based on the particular set of third ML models corresponding to the determined document category. Each of the multiple sets of category-specific third ML models may be configured to output summaries for a respective category of documents based on input annotation data. The various ML models may be trained using training data that is based on labeled and annotated documents of each of the predefined document categories and one or more summary templates corresponding to each of the predefined document templates. 
     Referring to  FIG. 1 , an example of a system that supports category-specific document summarization according to one or more aspects is shown as a system  100 . The system  100  may be configured to categorize and summarize (e.g., encapsulate) unlabeled documents using artificial intelligence and machine learning. As shown in  FIG. 1 , the system  100  includes a document processing device  102 , a user device  140 , one or more databases  142  (referred to herein as “the databases  142 ”), and one or more networks  160 . In some implementations, one or more of the user device  140  or the databases  142  may be optional, or the system  100  may include additional components, such as a server, additional document storage, additional user devices, or the like, as a non-limiting example. 
     The document processing device  102  (e.g., a computing device or server) may include or correspond to a desktop computing device, a laptop computing device, a personal computing device, a tablet computing device, a mobile device (e.g., a smart phone, a tablet, a personal digital assistant (PDA), a wearable device, and the like), a server, a virtual reality (VR) device, an augmented reality (AR) device, an extended reality (XR) device, a vehicle (or a component thereof), an entertainment system, other computing devices, or a combination thereof, as non-limiting examples. The document processing device  102  includes one or more processors  104 , a memory  106 , one or more communication interfaces  124 , a training engine  126 , a categorizer  128 , a first set of one or more machine learning (ML) models  130  (referred to herein as “the first ML models  130 ”), an annotator  132 , a second set of one or more ML models  134  (referred to herein as “the second ML models  134 ”), a summarizer  136 , and a third set of one or more ML models  138  (referred to herein as “the third ML models  138 ”). In some other implementations, one or more of the components  126 - 138  may be optional, one or more additional components may be included in the document processing device  102 , or both. It is noted that functionalities described with reference to the document processing device  102  are provided for purposes of illustration, rather than by way of limitation and that the exemplary functionalities described herein may be provided via other types of computing resource deployments. For example, in some implementations, computing resources and functionality described in connection with the document processing device  102  may be provided in a distributed system using multiple servers or other computing devices, or in a cloud-based system using computing resources and functionality provided by a cloud-based environment that is accessible over a network, such as the one of the one or more networks  160 . To illustrate, one or more operations described herein with reference to the document processing device  102  may be performed by one or more servers or a cloud-based system that communicates with one or more client or user devices, a workbench platform (e.g., executed by a server or distributed among multiple devices), or the like. 
     The one or more processors  104  may include one or more microcontrollers, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), central processing units (CPUs) having one or more processing cores, or other circuitry and logic configured to facilitate the operations of the document processing device  102  in accordance with aspects of the present disclosure. The memory  106  may include random access memory (RAM) devices, read only memory (ROM) devices, erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), one or more hard disk drives (HDDs), one or more solid state drives (SSDs), flash memory devices, network accessible storage (NAS) devices, or other memory devices configured to store data in a persistent or non-persistent state. Software configured to facilitate operations and functionality of the document processing device  102  may be stored in the memory  106  as instructions  108  that, when executed by the one or more processors  104 , cause the one or more processors  104  to perform the operations described herein with respect to the document processing device  102 , as described in more detail below. Additionally, the memory  106  may be configured to store data and information, such as training data  110 , first feature data  112 , one or more probability scores  114 , second feature data  116 , annotation data  118 , a document category  120 , and a document summary  122 . Illustrative aspects of the training data  110 , the first feature data  112 , the probability scores  114 , the second feature data  116 , the annotation data  118 , the document category  120 , and the document summary  122  are described in more detail below. 
     The one or more communication interfaces  124  may be configured to communicatively couple the document processing device  102  to the one or more networks  160  via wired or wireless communication links established according to one or more communication protocols or standards (e.g., an Ethernet protocol, a transmission control protocol/internet protocol (TCP/IP), an Institute of Electrical and Electronics Engineers (IEEE) 802.11 protocol, an IEEE 802.16 protocol, a 3rd Generation (3G) communication standard, a 4th Generation (4G)/long term evolution (LTE) communication standard, a 5th Generation (5G) communication standard, and the like). In some implementations, the document processing device  102  includes one or more input/output (I/O) devices that include one or more display devices, a keyboard, a stylus, one or more touchscreens, a mouse, a trackpad, a microphone, a camera, one or more speakers, haptic feedback devices, or other types of devices that enable a user to receive information from or provide information to the document processing device  102 . In some implementations, the document processing device  102  is coupled to a display device, such as a monitor, a display (e.g., a liquid crystal display (LCD) or the like), a touch screen, a projector, a virtual reality (VR) display, an augmented reality (AR) display, an extended reality (XR) display, or the like. In some other implementations, the display device is included in or integrated in the document processing device  102 . 
     The training engine  126  is configured to generate the training data  110  for training one or more ML models used by the document processing device  102 , such as one or more of the first ML models  130 , the second ML models  134 , or the third ML models  138 , as further described below. For example, the training engine  126  may generate the training data  110  based on labeled (e.g., categorized) documents from the databases  142  (or from the user device  140 ), one or more category-specific summaries or summary templates, other document or feature data, or a combination thereof. In some implementations, different ML models may be trained using different types of training data, and in some such implementations, the training data  110  may include multiple different portions of training data (e.g., first training data corresponding to the first ML models  130 , second training data corresponding to the second ML models  134 , third training data corresponding to the third ML models  138 , etc.). 
     The categorizer  128  is configured to categorize input documents into corresponding categories of a group predefined document categories based on similarities between the input documents and documents of the predefined document categories. For example, the categorizer  128  may be configured to analyze the input documents to identify and extract particular features (also referred to as key performance indicators (KPIs)) that are used to assign the input documents to predefined document categories that include documents having the most similar features. In some implementations, the predefined document categories include or correspond to document types, which may include broad types or categories such as manuals, educational documents, legal documents, sales documents, lab results, journal articles, notes, and the like, or more specific types or categories, such as leases, contracts, receipts, lecture notes, worksheets, orders, experimental results, meeting transcriptions, e-mails, action tickets, news articles, research publications, or the like. The features may include word features and word layout features, non-word object layout features (referred to herein as “pixel features” that correspond to layout of non-word objects, such as images, graphics, tables, lines, bullets, designs, colors, headings, sub-headings, and the like), or a combination thereof. 
     To illustrate, the categorizer  128  may be configured to perform vectorization and natural language processing (NLP) on an input document, such as tokenization, lemmatization, sentencization, part-of-speech tagging, bag of words vectorization, term frequency-inverse document frequency (TF-IDF) vectorization, stop-character parsing, named entity recognition, semantic relation extraction, and the like, to generate word features, such as word identification (e.g., for generating a word corpus), word frequencies, word ratios, and the like, to generate or extract word features from the input document. The categorizer  128  may be configured to generate word layout features based on the input document, such as pixel locations of words in the input document, distances between words, and the like. The categorizer  128  may also be configured to generate pixel layout features based on the input document, such as pixel locations of other elements in the document, distances between elements, element types, and the like. The categorizer  128  may compare the word features, the word layout features, the pixel layout features, other features, or a combination thereof, associated with the input document to the corresponding features associated with documents of each of the predefined document categories and to assign the input document to the predefined document category associated with documents having the most similar features. In some implementations, the comparison may be performed using similarity scores (e.g., distance values in feature space between two sets of features), and the input document may be assigned to the predefined document category associated with the greatest similarity score. 
     In some implementations, the categorizer  128  may include or access (e.g., at the memory  106 , a storage device of the document processing device  102 , or a device that is coupled to or accessible to the document processing device  102  via the networks  160 ) the first ML models  130  that are configured to categorize input documents. For example, the first ML models  130  may include a single ML model or multiple ML models that are configured to categorize documents into the predefined document categories based on input feature data. In some implementations, the first ML models  130  may be implemented as one or more neural networks (NNs). In some other implementations, the first ML models  130  may be implemented as other types of ML models or constructs, such as support vector machines (SVMs), decision trees, random forests, regression models, Bayesian networks (BNs), dynamic Bayesian networks (DBNs), naive Bayes (NB) models, Gaussian processes, hidden Markov models (HMMs), regression models, and the like. In some implementations, the first ML models  130  may be configured to output probability scores indicating the estimated probability that an input document corresponds to each of the predefined document categories, and the input document may be assigned to the predefined document category associated with the greatest probability score. 
     The annotator  132  is configured to perform category-specific annotation (e.g., to generate annotation data) based on input documents. To illustrate, each document category may have a specific group of entities (e.g., particular names, places, amounts, dates, words, phrases, and the like) that are highly relevant to summarizing documents of the respective document category, and the annotator  132  may be configured to analyze feature data for an unlabeled input document and generate annotation data that includes the names (e.g., identifiers) of the entities and the corresponding entity values within the input document. As an illustrative example, a first document category may include leases, and the respective group of entities corresponding to leases may include a first party, a second party, a duration of the lease, a starting date of the lease, and a payment value from the second party to the first party to pay for the object of the lease. In such an example, the annotator  132  may receive features from an input document, and, based on an output of the categorizer  128  indicating that the input document is a lease, the annotator  132  may generate annotation data that indicates a name associated with the first party, a name associated with the second party, a length of time associated with the duration, a date associated with the starting date, and a dollar amount associated with the payment value. As another illustrative example, a second document category may include meeting notes, and the respective group of entities corresponding to meeting notes may include a date of the meeting, a location of the meeting, a number of attendees at a meeting, one or more speakers at the meeting, one or more subjects discussed at the meeting, and results of any votes taken at the meeting. 
     The feature data processed by the annotator  132  to generate annotation data may include qualitative word features, quantitative word features, pixel features (as described above), or a combination thereof. The qualitative word features may include length of words, percentage of capital letters in words, fuzzy representations of words, other qualitative word features, or a combination thereof, as non-limiting examples. The quantitative word features may include word counts, word locations (e.g., pixel locations of an optimal bounded four-sided polygon and a centroid of each word), other quantitative word features, or a combination thereof, as non-limiting examples. Based on the input feature data, the annotator  132  may be configured to tag each word or phrase indicated by the input features either to be classified as an entity or not to be classified. The words or phrases classified as entities may be compared to the category-specific group of entities to determine which label to apply to each of the tagged words or phrases, as further described below. 
     In some implementations, the annotator  132  may include or access (e.g., at the memory  106 , a storage device of the document processing device  102 , or a device that is coupled to or accessible to the document processing device  102  via the networks  160 ) the second ML models  134  that are configured to generate corresponding annotation data based on input documents associated with a particular document category. For example, the second ML models  134  may include a single ML model or multiple ML models that are configured to generate annotation data based on input feature data from documents associated with a particular document category. Although one set of the second ML models  134  is shown in  FIG. 1 , such illustration is for convenience, and the annotator  132  includes (or has access to) a respective set of one or more second ML models for each of the document categories. For example, if the categorizer  128  is configured to categorize input documents into one of four document categories, there are four sets of second ML models, each corresponding to one of the four document categories. In some implementations, the second ML models  134  may be implemented as one or more NNs. For example, the second ML models  134  may be implemented as one or more deep recurrent neural networks (RNNs). In some other implementations, the second ML models  134  may be implemented as other types of ML models or constructs, such as SVMs, decision trees, random forests, regression models, BNs, DBNs, NB models, Gaussian processes, HMMs, regression models, and the like. In some implementations, the second ML models  134  may be configured to output probability scores indicating the estimated probability that an annotation (e.g., an extracted word, phrase, or sentence) corresponds to each of a category-specific group of entities (or is not to be labeled), and the annotation data may indicate that the annotation is the value of the entity associated with the greatest probability score. 
     The summarizer  136  is configured to generate category-specific summaries for input documents based on input annotation data. The summaries may include important information from the related documents in a concise, easy-to-read presentation instead of requiring a user to read the entire documents. The summaries may be designed and tailored to information common to the respective document category, which includes static summary text and entity values indicated by the annotation data. To illustrate, the summarizer  136  may be configured to generate different summaries for different categories of documents using respective annotation data. As an illustrative example, if a first document is a lease, the summarizer  136  may generate a first summary that explains who (e.g., a first party and a second party in the annotation data) agreed to the lease, when (e.g., a starting date in the annotation data) the lease was agreed upon, the duration (e.g., a duration in the annotation data) of the lease, and the value (e.g., a payment amount in the annotation data) of the lease. Instead of only providing the entity values, or labeled entity values, from the annotation data, the summary may include grammatically correct sentences to convey the information, as well as information common to all leases (e.g., static category-specific information). As another illustrative example, if a second document is notes from a meeting, the summarizer  136  may generate a second summary that explains when the meeting occurred (e.g., a date in the annotation data), how many members were present (e.g., a number of attendees in the annotation data), a speaker and the topic they spoke on (e.g., a first speaker and a first subject in the annotation data), and whether a proposal passed (e.g., a voting result in the annotation data), as well as information common to all meetings. 
     In some implementations, the summarizer  136  may include or access (e.g., at the memory  106 , a storage device of the document processing device  102 , or a device that is coupled to or accessible to the document processing device  102  via the networks  160 ) the third ML models  138  that are configured to generate summaries of input documents associated with a particular document category. For example, the third ML models  138  may include a single ML model or multiple ML models that are configured to generate summaries based on annotation data from documents associated with a particular document category. Although one set of the third ML models  138  is shown in  FIG. 1 , such illustration is for convenience, and the summarizer  136  includes (or has access to) a respective set of one or more third ML models for each of the document categories. For example, if the categorizer  128  is configured to categorize input documents into one of four document categories, there are four sets of third ML models, each configured to generate summaries for one of the four document categories. In some implementations, the third ML models  138  may be implemented as one or more NNs. For example, the third ML models  138  may be implemented as one or more RNNs, such as RNNs configured as a long short-term memory (LSTM). In some other implementations, the third ML models  138  may be implemented as other types of ML models or constructs, such as SVMs, decision trees, random forests, regression models, BNs, DBNs, NB models, Gaussian processes, HMMs, regression models, and the like. In some implementations, the third ML models  138  may be configured to output different summaries for the same document category based on the quantity or values of the input annotation data. 
     The user device  140  is configured to provide document creation, management, processing, analysis, and presentation for multiple categories of documents. For example, the user device  140  may be configured to support a cross-domain workbench to enable user interaction with multiple categories of documents. Alternatively, the user device  140  may correspond to multiple user devices that each support a domain-specific workbench enable user interaction with a corresponding category of documents. As an illustrative example, a domain-specific workbench may include a legal document workbench that supports user generation, editing, analyzation, and organizing of legal documents such as leases, contracts, depositions, motions, exhibits, and the like. As another illustrative example, a cross-domain workbench may include an organization-specific workbench that includes supports user access to financial documents (e.g., purchase orders, receipts, electronic fund transfers, budgets, etc.), human resource documents (e.g., policies, training manuals, personal reviews, request forms, etc.), marketing documents (e.g., press releases, advertisements, marketing plans, news articles, interviews, etc.), and technician documents (e.g., time cards, activity logs, inventory requests, etc.). The user device  140  may include or correspond to, a mobile device (e.g., a smart phone, a tablet, a personal digital assistant (PDA), a wearable device, and the like), a desktop computing device, a laptop computing device, a personal computing device, a tablet computing device, a server, a VR device, an AR device, an XR device, a vehicle (or a component thereof), an entertainment system, other computing or electronic devices, or a combination thereof, as non-limiting examples. 
     The databases  142  (e.g., one or more document warehouses) are configured to store data corresponding to documents used by an organization, an enterprise, or other group that owns or operates the user device  140  and the document processing device  102 . The data may include text data, image data, combinations of text and image data (e.g., electronic document data, such as a portable document format (PDF) file), audio data, multimedia data, or any other type of data used to store documents. The databases  142  may be configured to store multiple categories of documents, from broad categories to specific sub-categories, across one or more domains. The documents may include labeled documents (e.g., documents for which a respective document category, annotations, other information, or a combination thereof is indicated, such as in metadata), unlabeled documents (e.g., documents that are not tagged or do not include metadata), or a combination thereof. Documents generated by the user device  140  and the document processing device  102  may be provided to the databases  142  for storage, and documents retrieved from the databases  142  may be provided to the document processing device  102  or the databases  142 . Although illustrated in  FIG. 1  as a single database, in some other implementations, the databases  142  include multiple communicatively coupled databases. 
     During operation of the system  100 , the user device  140  may transmit the input data  150  to the document processing device  102  for categorization and summarization. For example, a user of the user device  140  may create or select an input document to be summarized, such as via a workbench application executed by the user device  140 , and the input data  150  may correspond to the input document. To illustrate, the input data  150  may include text data corresponding to the input document, image data corresponding to the input document (e.g., if the input document is a scanned document), electronic document data, such as a PDF file, corresponding to the input document (e.g., if the input document is created or scanned using an electronic document management application), or a combination thereof. Alternatively, the input data  150  may be transmitted to the document processing device  102  from the databases  142 . For example, a user of the user device  140  may select an input document stored at the databases  142  to be summarized, and the user device  140  and the databases  142  may communicate to cause the input data  150  corresponding to the input document to be provided from the databases  142  to the document processing device  102 . The input document may be an unlabeled document. For example, the input data  150  may not include metadata or any other indication of a category (e.g., a file type) associated with the input document. 
     The categorizer  128  may generate the first feature data  112  based on the input data  150 . To illustrate, the categorizer  128  may convert the input data  150  to text data if the input data  150  is not already text data, such as by performing optical character recognition (OCR) or any other type of text conversion operations on the input data. If the input data  150  is text data (or after converting the input data  150  to text data), the categorizer  128  may perform NLP on the input data to generate or extract the first feature data  112 . For example, the NLP may identify words, phrases, sentences, punctuation, and the like from the input data  150 , and information associated with the identifications, such as counts, ratios, classifications, and the like may be included in the first feature data  112 . In some implementations, the first feature data  112  includes word features associated with the input document, word layout features associated with the input document, and pixel features associated with one or more non-word elements of the input document. The word features may include word counts (e.g., counts of each distinct word or phrase (e.g., string) within the input document), word ratios (e.g., ratios of the counts of the words or phrases to a total corpus of words or phrases in the input document), classifications (e.g., significant or insignificant words), word lengths, capital letter counts, and the like. The word layout features may include pixel locations of words within a pixel array associated with the input document, distances between words, word dimensions, sentence indices, and the like. The pixel features may include pixel locations of non-word elements within the pixel array associated with the input document, distances between non-word elements, classifications of non-word elements, dimensions of non-word elements, and the like. The non-word elements may include images, graphics, tables, lines, bullets, designs, logos, colors, headings, sub-headings, and the like. In some implementations, the pixel features may be stored as at the memory  106  as a three-dimensional (3D) matrix data structure, as further described herein with reference to  FIG. 4 . Although described as being text, image, or electronic document data, in some other implementations, the input data  150  may be audio data, such as a recording of a person speaking (e.g., reading aloud) the input document, and the categorizer  128  may perform one or more automatic speech recognition (ASR) operations on the input data  150  to generate text data for performing the NLP and generating the first feature data  112 . 
     The categorizer  128  may assign the input document (e.g., corresponding to the input data  150 ) to one of multiple predefined document categories based on the first feature data  112 . In some implementations, the categorizer  128  may perform the categorization using the first ML models  130 . To illustrate, the categorizer  128  may provide first feature data  112  as input data to first ML models  130  to assign the input document to the document category  120  (e.g., one of the multiple predefined document categories). The first ML models  130  may be trained to categorize documents into the multiple predefined document categories based on input feature data based on the documents. For example, based at least in part on the first feature data  112  including a word ratio for the word “leaser” that satisfies a threshold (among other relevant features), the first ML models  130  may assign the input document to a “lease” category. As another example, based at least in part on the first feature data  112  including a pixel location of a vertex of a table being located at a first particular pixel location and a centroid of a logo being located at a second particular pixel position (among other relevant features), the first ML models  130  may assign the input document to a “sales brochure” category. These illustrative examples are simplified for ease of understanding, and the first ML models  130  may be configured to categorize documents based on any types of underlying similarities between documents, including similarities that are highly complex, through supervised learning, as further described herein. 
     In some implementations, the first ML models  130  may be configured to output probability scores that indicate likelihoods that the input document (e.g., the first feature data  112 ) corresponds to each of the multiple predefined document categories. To illustrate, the first ML models  130  may output at least some of the probability scores  114 , and the probability scores  114  may include, for each category of the multiple predefined document categories, a probability score indicating a likelihood that the input document corresponds to the respective category, as further described herein with reference to  FIG. 5 . As an illustrative example, if the multiple predefined document categories include legal documents, accounting documents, human resources documents, and marketing documents, the probability scores  114  may include a first probability score indicating a likelihood that the input document is a legal document, a second probability score indicating a likelihood that the input document is an accounting document, a third probability score indicating a likelihood that the input document is a human resources document, and a fourth probability score indicating a likelihood that the input document is a marketing document. The categorizer  128  may assign the input document to the document category associated with the highest probability score (or a highest probability score that satisfies a threshold, if additional categorizations are possible). In the previous example, if the first probability score is 0.7, the second probability score is 0.2, the third probability score is 0.55, and the fourth probability score is 0.4, the document category  120  assigned to the input document is legal documents. 
     After categorization of the input document (e.g., determination of the document category  120  by the categorizer  128 ), the annotator  132  may generate the second feature data  116  based on the document category  120  and the input data  150 . For example, annotator  132  may generate or extract features from the input data  150  for use in annotating the input document (e.g., generating annotation data associated with the input document). The second feature data  116  may include category-agnostic features (e.g., one or more features included in the first feature data  112 ) and category-specific features based on the document category  120  (e.g., one or more features that may not be included in the first feature data  112 ). The second feature data  116  may include qualitative word features of the input document, quantitative word features of the input document, pixel features non-word elements of the input document, or a combination thereof. The qualitative word features may include length of words, percentage of capital letters in words, classification of words, fuzzy representations of words, other qualitative word features, or a combination thereof. The quantitative word features may include word counts, word locations (e.g., pixel locations of an optimal bounded four-sided polygon and a centroid for each word), word distances, word ratios, other quantitative word features, or a combination thereof. The pixel features may include similar features as described above with reference to the first feature data  112 . In some implementations, the qualitative word features, the quantitative word features, and the pixel features may be filtered to discard features that apply to one or more words or non-word elements that are not included in a category-specific list of words or non-word elements that is associated with the document category  120 . Additionally or alternatively, the second feature data  116  may include a category-specific entity list that is associated with the document category  120 . The category-specific entity list may include labels (e.g., names or identifiers) of entities that are to be included in documents of the document category  120 . As an illustrative example, if the document category  120  is leases, the category-specific entity list may include entities (or keywords) having labels of Party_A, Party_B, Lease Date, Duration, and Lease Value. 
     The annotator  132  may generate the annotation data  118  (e.g., annotate the input document) based on the second feature data  116 . In some implementations, the annotator  132  may perform the annotation using the second ML models  134 . To illustrate, the annotator  132  may provide the second feature data  116  to the second ML models  134  to generate the annotation data  118 . For example, based on the second ML models  134  corresponding to the document category  120 , the annotator  132  may select the second ML models  134  (from multiple category-specific ML models, as further described herein) and provide the second feature data  116  as input to the second ML models  134 . The second ML models  134  may generate annotation data based on feature data associated with documents having the document category  120 . The annotation data  118  may include extractions (e.g., words, phrases, etc.) that are assigned as entity values to the category-specific entities. As an illustrative example, if the document category  120  is leases, the annotation data  118  may include the values for the entities Party_A, Party_B, Lease Date, Duration, and Lease Value that are included in the input document, such as “Evergreen Rentals, LLC”, “Bob Tenant,” “Feb. 28, 2021,” “six months,” and “$150,000.” 
     In some implementations, the second ML models  134  may be configured to output probability scores that indicate likelihoods that various extractions (e.g., particular words or phrases in the input document) correspond to each of category-specific entities. To illustrate, the second ML models  134  may output at least some of the probability scores  114 , and the probability scores  114  may include, for each extraction from the input document, probability scores indicating likelihoods that the extraction corresponds to each of the category-specific entities and, optionally, that the extraction does not correspond to any entity, as further described herein with reference to  FIG. 6 . As an illustrative example, if the document category  120  includes leases and the category-specific entities include Party_A, Party_B, Lease Date, Duration, and Lease Value, the probability scores  114  may include a first probability score indicating a likelihood that extraction is the name of Party_A in the input document, a second probability score indicating a likelihood that the extraction is the name of Party_B in the input document, a third probability score indicating a likelihood that the extraction is the date of the lease in the input document, a fourth probability score indicating a likelihood that the extraction is the duration of the lease in the input document, a fifth probability score indicating that the extraction is the value of the lease in the input document, and a sixth probability score indicating a likelihood that the extraction is not one of the entities Party_A, Party_B, Lease Date, Duration, or Lease Value. The annotator  132  may generate the annotation data  118  such that, for each of the category-specific entities, the entity value is the extraction associated with the highest probability score (or a highest probability score that satisfies a threshold, if additional annotation possible). In the previous example, if the extraction is “Bob Tenant”, the first probability score is 0.65, the second probability score is 0.83, the third probability score is 0.2, the fourth probability score is 0.2, the fifth probability score is 0.2, and the sixth probability score is 0.45, the annotation data  118  indicates that the value of Party_B in the assigned document is “Bob Tenant.” Although described as including a probability score for a likelihood that an extraction is not one of the category-specific entities, in some other implementations, the annotator  132  may perform a multi-step operation to generate the annotation data  118 . To illustrate, the annotator  132  may provide the second feature data  116  to a first subset of the second ML models  134  that is configured to output, for each extraction, a probability score indicating a likelihood that the extraction is an entity value (or alternatively a probability score indicating a likelihood that the extraction is not an entity value). The annotator  132  may provide extractions that are associated with probability scores that satisfy a threshold to a second subset of the second ML models  134  for determination of probability scores that indicate the likelihoods that the selected extractions correspond to each of category-specific entities (or alternatively the annotator  132  may discard extractions that are associated with probability scores that satisfy a threshold if the probability scores indicate the likelihood that the respective extractions are not entity values, and the remaining extractions may be provided to the second subset of the second ML models  134 ). Eliminating extractions that are unlikely to be entities before determining the probability that the extractions are the category-specific entities may be faster or may utilize fewer processing resources or memory footprints for the subsets of the second ML models  134  as compared to determining multiple probability scores for each extraction independent of the likelihood the extraction is an entity. 
     After the annotator  132  generates the annotation data  118 , the annotator  132  may provide the annotation data  118  to the summarizer  136  to summarize the input document. For example, the summarizer  136  may generate the document summary  122  that corresponds to the input document. The document summary  122  may be a category-specific summary that corresponds to the document category  120  and that includes specific information from the input document (e.g., the entity values indicated by the annotation data  118 ). For example, if the document category  120  is a lease, the document summary  122  may be a summary of a lease (e.g., the input document) with specific information, such as party names, dates, etc., from the input document. 
     The summarizer  136  may generate the document summary  122  based on the annotation data  118  and the document category  120 . In some implementations, the summarizer  136  may summarize the input document using the third ML models  138 . To illustrate, the summarizer  136  may provide the annotation data  118  to the third ML models  138  to generate the document summary  122 . For example, based on the third ML models  138  corresponding to the document category  120 , the summarizer  136  may select the third ML models  138  (from multiple category-specific ML models, as further described herein) and provide the annotation data  118  as input to the third ML models  138 . The third ML models  138  may generate summaries based on annotation data associated with documents having the document category  120 . 
     The document summary  122  may include text, not-text elements (e.g., images, logos, tables, designs, graphics, colors, headings, sub-headings, etc.), or a combination thereof. For example, the document summary  122  may include a category-specific heading, a category-specific graphic, and text that summarizes the input document. In some implementations, the document summary  122  may include entity values and category-specific static text and non-text. For example, if the document category  120  is a lease, the document summary  122  may include a heading that includes a title “Lease Summary” underlined and in a particular font, in addition to a few sentences (e.g., one, two, or three sentences, as non-limiting examples) that includes static text summarizing information common to all leases and the entity values from the input document (e.g., included in the annotation data  118 ). In some implementations, summaries for the same document category differ only in the entity values included in the document summaries. In some other implementations, summaries of different documents having the same document category may differ in ordering of the entity values and the static text or in the static text that is included in the summaries, which may be based on the entity values (e.g., a summary of a lease with a company name for Party A may be slightly different than a summary of a lease with an individual&#39;s name for Party A, as a non-limiting example). Additional details of document summaries are further described herein with reference to  FIG. 7 . 
     After generation of the document summary  122 , the document processing device  102  may generate an output  152  that includes the document summary  122 . In some implementations, the output  152  may be provided to the user device  140  to enable display of a graphical user interface (GUI) at the user device  140  (or the output  152  may be used to cause display of a GUI at the document processing device  102 ). The GUI may visually display one or more document summaries, including the document summary  122 . For example, the GUI may display the text (and any non-text elements) included in the document summary  122 . Additionally or alternatively, the output  152  may be provided to the databases  142  for storage, or the document summary  122  may be stored at the document processing device  102  (e.g., at the memory  106  or a data storage device integrated in or coupled to the document processing device  102 ). The document summary  122  may be stored at the databases  142  for use in providing summaries to users, such as via the user device  140 , for providing more efficient indexing and searching of documents stored in the databases  142 , for generating multi-document reports, or for any other purpose for which document summaries may be beneficial. 
     The document processing device  102  may similarly categorize and summarize other documents. For example, the document processing device  102  may receive second input data (e.g., from the user device  140  or the databases  142 ) that represents a second document having a different document category than the document category  120 . The categorizer  128  may generate additional feature data based on the second input data and provide the additional feature data to the first ML models  130  to categorize the second input document as having a second document category that is different from the document category  120 . Based on the second document category, the second input document may be processed differently than the input document. For example, the annotator  132  and the summarizer  136  may access different ML models to annotate and summarize the second input document based on the second input document belonging to the second document category (and not the document category  120 ). In some implementations, the annotator  132  and the summarizer  136  may include or be configured as multiple distinct category-specific summarization pipelines, as further described herein with reference to  FIG. 3 . 
     To illustrate the processing of different categories of documents, the annotator  132  may generate fourth feature data based on the second input data and provide the fourth input data to a fourth set of ML models to generate second annotation data. For example, the annotator  132  may select the fourth ML models (from multiple category-specific ML models including the second ML models  134 ) based on the fourth ML models corresponding to the second document category. The fourth set of ML models may be configured to generate annotation data, similar to the second ML models  134 , but for documents of the second document category. The summarizer  136  may provide the second annotation data to a fifth set of ML models to generate a second document summary that corresponds to the second input document. For example, the summarizer  136  may select the fifth ML models (from multiple category-specific ML models including the third ML models  138 ) based on the fifth ML models corresponding to the second document category. The fifth set of ML models may be configured to generate summaries for documents of the second document category. As an illustrative example, if the second category is meeting notes, the second annotation data may include entity values extracted from the second input document for the entity labels Meeting Date, Meeting Location, Attendee Count, First Speaker, First Subject, Second Speaker, Second Subject, and Vote Results, and the second document summary may include information common to all meetings and the entity values included in the second annotation data. In this manner, different ML models trained for category-specific annotation and summarization may be used to annotate and categorize documents in different categories. 
     The first ML models  130 , the second ML models  134 , and the third ML models  138  (and any other ML models used by the document processing device  102 ) may be trained by the document processing device  102  or may be received from other devices that train the ML models (e.g., configuration parameters corresponding to trained ML models may be received and used to configure the ML models at the document processing device  102 ). In some implementations, the training engine  126  may train one or more of the first ML models  130 , the second ML models  134 , and the third ML models  138  based on the training data  110 . The training data  110  may represent labeled and annotated documents, such as documents of the multiple predefined document categories that are labeled by category and that are annotated to indicate the entity values within the documents. The training engine  126  may generate the training data  110  based on labeled document data  154  from the databases  142 , which may include text data, image data, electronic document data, other data types, or a combination thereof, that represents annotated documents of each of the multiple predefined document categories. 
     In some implementations, the training data  110  may include a first portion (e.g., first training data) that is used by the training engine  126  to train the first ML models  130 . The first training data may be generated based on multiple labeled documents that correspond to the predefined document categories. To illustrate, the labeled documents may include an identifier or metadata that indicates to which category of the predefined document categories that each labeled document is assigned. The labeling process may be performed by one or more document experts, by an automated labeling application, as part of the initial generation by a document creation application, or a combination thereof. As a non-limiting example, if the predetermined document categories include legal documents, HR documents, financial documents, and marketing documents, the first training data may be based on multiple labeled legal documents, multiple labeled HR documents, multiple labeled financial documents, and multiple labeled marketing documents. The first training data may be generated by extracting features from each of the labeled documents, as described above with reference to the categorizer  128 . Training the first ML models  130  based on the first feature data may configure the first ML models  130  to categorize documents based on underlying similarities between features of documents assigned to the same category and underlying differences between features of documents assigned to different categories. 
     Additionally or alternatively, the training data  110  may include a second portion (e.g., second training data) that is used by the training engine  126  to train the second ML models  134 . The second training data may be generated based on multiple labeled and annotated documents that correspond to the predefined document categories and are annotated using category-specific annotations. To illustrate, the labeled and annotated documents may include an identifier or metadata that indicates to which category of the predefined document categories that each labeled annotated document is assigned. Additionally, the labeled and annotated documents may include metadata that includes tags that indicate particular words or phrases in the documents are values of category-specific entities. The labeling and annotation process may be performed by one or more document experts, by an automated labeling application, as part of the initial generation by a document creation application, or a combination thereof. As a non-limiting example, if the predetermined document categories include leases, depositions, and complaints, the second training data may be based on multiple labeled and annotated leases, multiple labeled and annotated depositions, and multiple labeled and annotated complaints. In this example, the labeled and annotated leases may include annotation data (e.g., metadata) that tags particular words or phrases in the leases as being the name of Party A, the name of Party B, the duration of the lease, etc., and the labeled and annotated depositions may include annotation data that tags particular words or phrases as the name of Deposed Party, the name of Deposer, the date of the deposition, the topic of the deposition, the number of objections raised during the deposition, etc. The second training data may be generated by extracting features from each of the labeled and annotated documents, as described above with reference to the annotator  132 . The second ML models  134  may be trained based on a subset of the second training data that corresponds to documents having a same category as the second ML models  134 , and other ML models utilized by the annotator  132  may be similarly trained based on other category-specific subsets of the second training data. Training the second ML models  134  based on at least some of the second feature data may configure the second ML models  134  to identify words or phrases in documents of a particular category to tag as entity values in annotation data based on underlying relationships between features of input documents and the annotations. 
     Additionally or alternatively, the training data  110  may include a third portion (e.g., third training data) that is used by the training engine  126  to train the third ML models  138 . The third training data may be generated based on one or more document summary templates (or reference document summaries) for the different predetermined document categories. To illustrate, one or more summary templates for each of the predefined document categories may be generated by one or more document experts, by an automated document management application, or a combination thereof. As a non-limiting example, if the predetermined document categories include leases, depositions, and complaints, the third training data may be based on one or more lease summary templates, one or more deposition summary templates, and one or more complaint summary templates. The third ML models  138  may be trained based on a subset of the third training data that corresponds to summary templates having a same category as the third ML models  138 , and other ML models utilized by the summarizer  136  may be similarly trained based on other category-specific subsets of the third training data. Training the third ML models  138  based on at least some of the third feature data may configure the third ML models  138  to generate summaries of documents of a particular category based on annotation data from the annotator  132 . 
     As described above, the system  100  supports summarization of unlabeled documents across multiple predefined document categories to be summarized with little to no user input. For example, the categorizer  128 , the annotator  132 , and the summarizer  136  may utilize specially trained ML models to automatically categorize, annotate, and summarize the input document represented by the input data  150 . Additionally, the system  100  may generate document summaries, such as the document summary  122 , that are more semantically precise and more readable (e.g., grammatically correct and similar to human-generated text) than document summaries generated by conventional systems. To illustrate, the second ML models  134  may be trained to provide category-specific annotation data, such as the annotation data  118 , for documents of a particular category based on analysis of the documents as a whole, which may improve semantic precision of summaries generated based on the annotation data. Also, the system  100  may enable faster summarization of documents using fewer processing resources than conventional summarization systems due to the category-specific document summarization performed by the third ML models  138 , which may be trained using a few (e.g., one to five) category-specific summary templates. The third ML models  138  (and category-specific ML models for other categories) may be trained using significantly fewer training documents as compared to the large volume of reference documents some conventional systems analyze to improve semantic understanding of documents. The document summaries, such as the document summary  122 , generated by the system  100  may be used to support fast and accurate document indexing and searching for a variety of different document categories. 
     Referring to  FIG. 2 , an example of a system that supports automated document processing and summarization (e.g., encapsulation) according to one or more aspects is shown as a system  200 . The system  200  may be configured to receive documents and generate summarized documents corresponding to the received documents. In some implementations, the system  200  (or one or more components thereof) may include or corresponds to the system  100  (or one or more components thereof) of  FIG. 1 . As shown in  FIG. 2 , the system  200  includes a workbench processor  202 , a document warehouse  206 , a document converter  210 , and a consumption layer  230 . 
     The workbench processor  202  includes a device (or a processor thereof), such as a user device, a mobile device, a server, or the like, that is configured to execute or support a workbench application. As used herein, a “workbench” may refer to any specialized data use space for which documents may be managed and processed. To illustrate, a workbench may correspond to one or more categories of documents, one or more enterprises for which documents are managed, or other types of data use spaces. As non-limiting examples, the workbench processor  202  may support a legal document workbench, an inventory workbench, a financial workbench, a cross-domain workbench, an enterprise-specific workbench, or the like. The workbench processor  202  may generate documents  204  that correspond to the workbench supported by the workbench processor  202 . For example, a legal document workbench may support user generation, editing, analyzation, and organization of legal documents such as leases, contracts, depositions, motions, exhibits, and the like. As another example, a manufacturing company workbench may support user generation, editing, analyzation, and organization of documents such as employee schedules, output reports, sales agreements, budgets, accounting documents, human resource documents, timecards, shipping contracts, and the like, associated with the manufacturing company. The documents  204  may include text data, image data, electronic document data (e.g., PDF or other document files), audio data, or a combination thereof, as non-limiting examples. 
     The document warehouse  206  may be configured to receive and store the documents  204  from the workbench processor  202 , or other devices associated with an enterprise that maintains the document warehouse  206 . The document warehouse  206  may also provide access to stored documents to other devices or systems, such as the document converter  210  and the consumption layer  230 . As an example, the document warehouse  206  may provide detailed documents  208  to the document converter  210  and the consumption layer  230 . The detailed documents  208  may be the documents  204  or documents generated based on the documents  204 . For example, if the documents  204  include non-text data, the document warehouse  206  (or another component of the system  200 ) may perform an optical character recognition process on the documents  204  to generate the detailed documents  208 . 
     The document converter  210  may be configured to receive the detailed documents  208  from the document warehouse  206  and to categorize and summarize the detailed documents  208 . For example, the document converter  210  may be configured to generate summarized documents  220  based on the detailed documents  208 . The document converter  210  may include a training engine  212 , a categorizer  214 , an annotator  216 , and a summarizer  218 . The training engine  212  may include or correspond to the training engine  126  of  FIG. 1 . The training engine  212  may be configured to generate training data for training one or more ML models included in or accessible to the categorizer  214 , the annotator  216 , the summarizer  218 , or a combination thereof. The training data generated by the training engine  212  may include one or more labeled or annotated documents. The labels may indicate the category corresponding to the respective document. For example, based on the workbench processor  202  being a legal document workbench, the training engine  212  may be configured to generate training data based on one or more documents labeled as leases, contracts, depositions, motions, exhibits, and the like. The labeled documents produced by the training engine  212  may include annotations that indicate significant information corresponding to the labeled category of the document, also referred to as “entities.” Each category of document may be associated with a category-specific group of entities which should be included in all documents of the category. For example, a labeled lease document may include annotations that indicate which words, phrases, etc., in the document correspond to lease-specific entities such as a lessor, a lessee, a term, a price, a pay frequency, and the like. The training data generated by the training engine  212  may also be based on category-specific document summary templates to enable training of ML models to generate category-specific summaries based on input annotation data. Although described as being included in the document converter  210 , in some other implementations, the training engine  212  is omitted, and trained ML models (e.g., model configuration parameters) are received from another device that trains the ML models. 
     The categorizer  214  may be configured to categorize the detailed documents  208  into respective categories of a group of predefined document categories. In some implementations, the categorizer  214  may include or correspond to the categorizer  128  of  FIG. 1 . The predefined document categories may correspond to the particular workbench supported by the workbench processor  202 . For example, if the workbench processor  202  supports a legal document workbench, the predefined document categories may include leases, contracts, depositions, motions, exhibits, and the like. As another example, if the workbench processor  202  supports a financial document workbench, the predefined document categories may include purchase agreements, fund transfer receipts, account balances, budgets, invoices, payment receipts, tax documents, and the like. In some implementations, the categorizer  214  may include or access first ML models configured to categorize input documents into the predefined document categories. The categorizer  214 , utilizing the first ML models, may assign a category label to each of the detailed documents  208 . The assignment of the label may be based on information contained within the documents. As discussed in more detail below with reference to  FIGS. 4 and 5 , the categorizer  214  may be configured to identify and extract particular features from the detailed documents  208 . Based on the extracted features (e.g., by providing the features as input to the first ML models), the categorizer  214  may each of the detailed documents  208  to a respective document category. In some implementations, the categorizer  214  may determine a probability that an input document (e.g., one of the detailed documents  208 ) belongs to each of the predefined categories based on underlying similarities between the input document and documents of each category. In such implementations, the categorizer  214  may label a document with the category associated the highest probability of the determined probabilities. 
     The annotator  216  may be configured to generate category-specific annotation data associated with the detailed documents  208  (e.g., to annotate the detailed documents  208 ). In some implementations, the annotator  216  may include or correspond to the annotator  132  of  FIG. 1 . Category-specific annotation data includes entity values for one or more category-specific entities. In some implementations, the annotator  216  may include or access second ML models configured to generate category-specific annotation data. As discussed in more detail below with regard to  FIGS. 4 and 6 , the annotator  216 , utilizing the second ML models, may be configured to generate annotation data based on input documents in a category-specific manner. In some implementations, the annotator  216  may access different ML models for different categories of input documents (as determined by the categorizer  214 ), and each set of ML models may be configured to generate annotation data for documents having a single respective category. For example, if a document is labeled as a lease by the categorizer  214 , the annotation data may include the name of a first party, the name a second party, a time period that is a duration of the lease, a day of a starting date of the lease, and the amount of a payment value from the second party to the first party to pay for the object of the lease. The annotator  216  may evaluate the input document for qualitative word features, quantitative word features, pixel features, or a combination thereof, for use in determining the annotation data. For example, the annotator  216  may generate or extract feature data based on the input documents, as further described below with reference to  FIG. 6 , and the feature data may be provided as input to the second ML models to generate the annotation data. In some implementations, the annotator  216  may determine probabilities that a word or phrase (e.g., an extraction) from the input document is a value of each entity from a category-specific list of entities (or is not an entity). In some such implementations, the word or phrase may be determined to be the entity value of the entity associated with the highest probability. As an illustrative example of annotating, for a document labeled as a lease, the annotator  216  may tag the words “BuyTown Inc.” in the input document as being the value of an entity named “first party” and may tag the specific phrase “Ten Years” as being the value of an entity named “lease term.” To further illustrate, “BuyTown Inc.” may be tagged as the entity value of the entity named “first party” based on the probability associated with “first party” being greater than probabilities associated with the other category-specific entities and with no entity for the words “BuyTown Inc.” 
     The summarizer  218  may be configured to generate category-specific summaries of the detailed documents  208  (e.g., to summarize the detailed documents  208 ). In some implementations, the summarizer  218  may include or correspond to the summarizer  136  of  FIG. 1 . In some implementations, the summarizer  218  may include or access third ML models to train the detailed documents  208  based on associated entity data generated by the annotator  216  and the categories determined by the categorizer  214 . The summarizer  218 , by utilizing the third ML models, may be configured to generate summarized documents  220  corresponding to the detailed documents  208  in a category-specific manner. In some implementations, the summarizer  218  may be configured to access different ML models for different categories of input documents, and each set of ML models may be configured to generate summaries for documents of a single respective category. For example, third ML models may be configured to output summaries for a particular category of documents, and these summaries may be designed and tailored to information common to the respective document category. Other ML models may be similarly configured for other categories of documents. As a non-limiting example, one set of ML models may be configured to output summaries of leases, and another set of ML models may be configured to output summaries of depositions. 
     To generate the summarized documents  220 , the summarizer  218  may generate category specific summaries that included document-specific information indicated by the annotation data associated with the detailed documents  208 . To illustrate, if a document is categorized as a lease, the summarizer  218  may generate summary of a lease that explains static information common to all leases, such as an indication that a lease involves a payment between two parties for a temporary leasing of a particular object from one party to the other party, as well as document-specific information such as who (e.g., a first party and a second party indicated by the annotation data) agreed to the lease, when (e.g., a starting date indicated by the annotation data) the lease was agreed upon, the duration (e.g., a duration indicated by the annotation data) of the lease, and the value (e.g., a payment amount indicated by the annotation data) of the lease. Instead of merely listing the entity values from the annotation data, the summarized documents  220  may include grammatically correct and semantically meaningful sentences based on the tagged entity values and the category-specific text associated with the document category. For example, if the input document is a lease, the category-specific text may include “Rights transferred according to this lease are to extend, subject to additional agreements, for a term of @duration,” where “@duration” is an name of the category-specific entity “Duration.” In this example, the tagged entity value for the entity “Duration” may include “ten years” such that the summarized document presents the information as “Rights transferred according to this leas are to extend, subject to additional agreements, for a term of ten years.” Summaries for other document categories may include different category-specific static text and entity values for different category-specific entities. 
     The consumption layer  230  may be configured to receive and consume documents to enable various functionality. For example, the consumption layer  230  may receive the detailed documents  208  from the documents warehouse  206  and the summarized documents  220  from the document converter  210 . The various functionality supported by the consumption layer  230  may include generating reports, indexing stored documents based on summaries, configuring searching processes, other operations, or a combination thereof. For example, the consumption layer  230  may generate the detailed reports  232  based on the summarized documents  220 . The detailed reports  232  may include one or more multi-document reports that include at least some of the summarized documents  220  (or portions thereof). Thus, the detailed reports  232  may be easier and faster to review by a user than the detailed documents  208 , or some combination thereof. As another example, the consumption layer  230  may store (or have access to) the summarized documents  220  and use the summarized documents  220  to index the detailed documents  208 . For example, a query for documents may be run against the summarized documents  220  instead of the detailed documents  208 , which may be faster and use fewer processing resources than running the query against the detailed documents  208 . Because the summarized documents  220  include highly relevant information, any query that fails for the summarized documents  220  would likely fail for the detailed documents  208 . 
     As described with reference to  FIG. 2 , the system  200  supports workbench functionality for multiple categories of documents more efficiently and using few resources than conventional systems. For example, by using the summarized documents  220  at the consumption layer  230 , reporting, indexing, and searching of documents may be faster and use fewer processing resources than conventional systems that do not use summarized documents. Additionally, the summarized documents  220  generated by the document converter  210  may be more informative and semantically meaningful due to the category-specific annotation and summarization than summarized documents generated by other automated summarization systems. 
     Referring to  FIG. 3 , an example of the document converter  210  of  FIG. 2  is shown. The document converter  210  may be configured to receive documents and generate summarized documents that correspond to the category of the received documents. As shown in  FIG. 3 , the document converter  210  includes the categorizer  214 , the annotator  216 , and the summarizer  218 . 
     During operation of the document converter  210 , the categorizer  214  may receive a first new document  302  and a second new document  304 . The first new document  302  and the second new document  304  may include unlabeled documents that correspond to different predefined document categories. For example, the first new document  302  may be a lease and the second new document  304  may be a deposition. As discussed in detail above with reference to  FIG. 2 , the categorizer  214  may utilize a first set of one or more ML models (“first ML models”) to assign a category label corresponding to the first new document  302  and a category label corresponding to the second new document  304 . To further illustrate, the categorizer  214  may generate first feature data based on the first new document  302 , and responsive to receiving the first feature data as input, the first ML models, and thus the categorizer  214 , may output a first category label corresponding to the first new document  302 . Additional details of the feature data are described below with reference to  FIGS. 4 and 5 . The categorizer  214  may similarly output a second category label corresponding to the second new document  304  based on feature data generated based on (e.g., extracted from) the second new document  304 . For example, the categorizer  214  may label the first new document  302  as a lease and may label the second new document  304  as a deposition. In some implementations, the first ML models may output probability scores indicating the likelihood that the first new document  302  and the second new document  304  correspond to each of the predefined document categories, and the categorizer may output the category associated with the highest probability score, as further described below with reference to  FIG. 5 . 
     Categorizing input documents enables category-specific processing and summarizing within the document converter  210 . In some implementations, input documents such as the first new document  302  and the second new document  304  may be provided to category-specific pipelines by the categorizer  214  based on the determined categories. For example, if the first new document  302  is assigned to a first category (e.g., leases), the categorizer  214  may provide the first new document  302  to a first pipeline associated with the first category, and if the second new document  304  is assigned to a third category (e.g., depositions), the categorizer  214  may provide the second new document  304  to a third pipeline associated with the third category. In such implementations, if there are N predefined document categories, the categorizer  214  may provide input documents to one of N category-specific pipelines. Each category-specific pipeline may include or correspond to respective components of the annotator  216  and the summarizer  218 . As shown in  FIG. 3 , the first new document  302  may be provided to the first category-specific pipeline (indicated by horizontal shading), and the second new document  304  may be provided to the third category-specific pipeline (indicated by diagonal shading). Although four category-specific pipelines are shown in  FIG. 3 , in other implementations, fewer than four or more than four category-specific pipelines may be included in the document converter  210  (e.g., N may be any integer greater than one). 
     The annotator  216  may include one or more category-specific annotators such as a first annotator  306  and a third annotator  308 . Each category-specific annotator of the annotator  216  may utilize a set of one or more category-specific ML models (“second ML models”) to generate category-specific annotation data for received input documents. For example, the first annotator  306  may utilize different second ML models than third annotator  308 . The category-specific second ML models may be trained separately using distinct training data to generate category-specific annotation data based on feature data associated with input documents. For example, a set of second ML models utilized by the first annotator  306  may be trained using training data that is generated based on documents corresponding to the first category and a set of second ML models utilized by the third annotator  308  may be trained using training data that is based on documents corresponding to the third category. The category-specific annotation data generated by each of the first annotator  306  and the third annotator  308  may include word and phrases (e.g., entity values) tagged by the annotators that are highly relevant and informative for summarizing documents of the respective categories (e.g., correspond to category-specific entities). For example, the annotator  216  may receive the labeled first new document  302  and the labeled second new document  304  from the categorizer  214 . Based on the first new document  302  being labeled a lease, a lease-specific annotator (e.g., the first annotator  306 ) may receive the first new document  302  and generate annotation data indicating entity values for lease-specific entities, such as “party 1,” “party 2,” “lease date,” “lease duration,” etc. To further illustrate, the first annotator  306  may tag “Bob” in the first new document  302  as corresponding to an entity named “party 1” and may tag “Jane” as corresponding to an entity named “party 2.” As another example, based on the second new document  304  being labeled as a deposition, a deposition-specific annotator (e.g., the third annotator  308 ) may receive the second new document  304  and generate annotation data indicating entity values for deposition-specific entities, such as “questioned party,” “deposition date,” “deposing party,” “objections,” etc. To further illustrate, the third annotator  308  may tag “Mike” in the second new document  304  as corresponding to an entity named “questioned party” and may tag “January 1” as corresponding to an entity named “deposition date.” The labeled new documents may be provided to the category-specific annotators (e.g., the category-specific pipelines) by the categorizer  214  or by the annotator  216  based on the respective category labels. 
     The summarizer  218  may receive first annotation data corresponding to the first new document  302  and second annotation data corresponding to the second new document  304 . As discussed above in more detail with reference to  FIG. 2 , the summarizer  218  may generate a category-specific summarized document based on the annotation data. In some implementations, the summarizer  218  may include one or more category-specific summarizers such as a first summarizer  310  and a third summarizer  312 . Each category-specific summarizer of the summarizer  218  may utilize a set of one or more category-specific ML models (“the third ML models) to generate category-specific summaries for the input documents based on the corresponding annotation data. For example, the first summarizer  310  may utilize different third ML models than the third summarizer  312 . The category-specific third ML models may be trained separately using distinct training data to generate category-specific summaries based on input annotation data. For example, a set of third ML models utilized by the first summarizer  310  may be trained based on training data generated based on one or more document summary templates (or document summaries) that correspond to a first category and a set of third ML models utilized by the third summarizer  312  may be trained based on training data generated based on one or more document summary templates (or document summaries) that correspond to a third category. The summarized documents generated by each of the first summarizer  310  and the third summarizer  312  may include grammatically correct sentences including information relevant for the respective category. For example, the first summarizer  310  may be specific to a lease and may receive the first annotation data corresponding to the first new document  302  based on the first new document  302  being labeled a lease. The first summarizer  310  may generate a first summarized document  314  that includes the words or phrases from the first new document  302  that are tagged as lease-specific entity values in the first annotation data. For example, the first summarized document  314  may include the text “Bob is the lessor and Jane is the lessee. Bob and Jane have agreed to the leasing of the real estate located at 867 Rio Drive. The term of this lease is for one year.” As another example, the third summarizer  312  may be specific to a deposition and may receive the second annotation data corresponding to the second new document  304  based on the second new document  304  being labeled a deposition. The third summarizer  312  may generate a second summarized document  316  that includes the words or phrases from the second new document  304  that are tagged as deposition-specific entity values in the second annotation data. For example, the second summarized document  316  may include the text “A deposition for case # 123  was taken on January 1. The questioned party was Mike and the deposing party was Steve. Mike was deposed regarding safety conditions in a company warehouse. No objections were raised.” 
     As described with reference to  FIG. 3 , the document converter  210  supports categorization, category-specific annotation, and category-specific summarization of input documents. For example, the categorizer  214  may categorize input documents and provide the input documents to category-specific pipelines (e.g., category-specific components of the annotator  216  and the summarizer  218 ). The various ML models utilized by the different category-specific annotators and the category-specific summarizers may provide improved annotation and summarization as compared to training ML models to perform category-agnostic annotation and summarization. Additionally, the category-specific ML models may be less complex and may be trained using less training data than category-agnostic ML models. 
     Referring to  FIG. 4 , examples  400  of features extracted from documents according to one or more aspects are shown. The examples  400  may include documents  410 , which are used to generate document type annotations  420 , document-specific features  440 , and document-specific annotations  450 . In some implementations, the documents  410  may include or correspond to the labeled document data  154  of  FIG. 1 , and the document type annotations  420 , the document-specific features  440 , and the document-specific annotations  450  may include or correspond to the training data  110  of  FIG. 1 . Additionally or alternatively, the documents  410  may be used by the training engine  212  of  FIG. 2  to train ML models of the categorizer  214 , the annotator  216 , the summarizer  218 , or a combination thereof. 
     The documents  410  may include multiple labeled and annotated documents that each correspond to one of multiple predefined categories. For example, the documents  410  may include m documents and the predefined categories may include n categories, where m and n may each be any integer greater than one. As described above, the predefined categories may include broad categories that each include multiple specific types of documents, such as a legal documents category, a marketing documents category, a financial documents category, and the like, or the predefined categories may include narrower, specific types of documents, such as leases, depositions, complaints, motions, contracts, wills, and the like. The various categories may be defined by a workbench application, as described with reference to  FIG. 1 . In some implementations, the documents  410  include multiple documents associated with each of the predefined categories, such as a first group of documents associated with a first category, a second group of documents associated with a second category, a third group of documents associated with a third category, and an nth group of document associated with an nth category. 
     Each of the documents  410  may be labeled based on a respective category of the document. For example, metadata (or some other type of indicator) associated with one of the documents  410  that corresponds to the first category may include a first label (“Label 1”). Similarly, metadata associated with one of the documents  410  that corresponds to the second category may include a second label (“Label 2”). The documents  410  may be labeled by one or more document experts that read the documents  410  and provide user input to label the documents  410 , by an automated document labeling application that analyzes documents to assign labels, by a document creation application that includes a label when generating an electronic document, by other document labeling techniques, or a combination thereof. In some implementations, the documents  410  are also annotated. Annotated documents include associated annotation data (e.g., metadata) that tags words or phrases (or any elements) in the documents as being entity values for entities. As described above, entities may include any words or phrases that are highly relevant and informative for summarizing documents. The entities may be category-specific. To illustrate, entities that are tagged for documents of the first category may be different than entities that are tagged for documents of the second category. As an illustrative example, if the first category is leases and the second category is depositions, entities tagged in documents of the first category may include “lessor,” “lessee,” “lease date,” “lease duration,” “lease price,” and the like, and entities tagged in documents of the second category may include “deposition date,” “deposed party,” “deposing party,” “deposition subject,” “objections,” and the like. 
     The document type annotations  420  may include the labels associated with each of the documents. For example, the document type annotations  420  may include a first label  430 , a second label  432 , and an mth label  434 . Although six document labels are illustrated in  FIG. 4 , in other implementations, m may be any integer greater than one. Each of the document type annotations  420  may indicate a category of the multiple predefined categories to which a respective document of the documents  410  is assigned. For example, the first label  430  may indicate that a first document (“Doc 1”) is assigned to the first category (“Label 1”), the second label  432  may indicate that a second document (“Doc 2”) is assigned to the first category, a third document label may indicate that a third document (“Doc 3”) is assigned to the second category (“Label 2”), and the mth label  434  may indicate that an mth document (“Doc m”) is assigned to a third category (“Label 3”). 
     The document-specific features  440  may include the various features that are generated based on the documents  410 . In some implementations, at least some of the features are generated by tokenizing the documents  410  into matrix representations using a bag of words approach for each of the documents  410 . The matrix representations may indicate the compactness of the entities in the documents. Additionally or alternatively, the matrix representations (e.g., matrix-based structures) may support a high-level numeric representation of the frequency of the words in a corpus of the documents  410 . These frequencies may be useful when generated for unlabeled input documents to assign confidence values (e.g., probability scores) to entity determinations, as further described with reference to  FIG. 6 . 
     The document-specific features  440  may include word features, word layout features, pixel layout features, or a combination thereof, as non-limiting examples. The word features may include word counts (e.g., counts of each distinct word or phrase (e.g., string) within each document), word ratios (e.g., ratios of the counts of the words or phrases to a total corpus of words or phrases in the documents  410 ), classifications (e.g., significant or insignificant words), word lengths, capital letter counts, and the like. In some implementations, word counts (e.g., frequency) of each word in a training document may be determined and tagged to the corresponding word, and a log transformation may be applied to each word count to make the mathematical function smoother. The results may be indicative of the importance of the words in the document. Additionally, a ratio of presence may be calculated for each word using the total document count (e.g., a ratio of the number of the documents  410  that include a particular word or phrase to the total number of documents included in the documents  410  (or the total number of documents assigned to the same category as the document from which the features are being generated)). These two measures (e.g., the log value and the ratio of presence for each word) may be summarized for each word in the document to vectorize the document. Thus, in some implementations, the word features may include log values of word counts and ratios of presence for each word (or phrase) in a document. 
     The word layout features may include pixel locations of words within pixel arrays associated with the documents  410 , distances between words, word dimensions, sentence indices, and the like. For example, a pixel array representing each of the documents  410  (or each page of each of the documents  410 ) may be generated, and pixel locations of words (e.g., of vertices of bounding polygons of the words, centroids of the words, etc.) may be determined as location coordinates with reference to the respective pixel array associated with the document (or the page(s) of the document) that includes the words. Distances between words may be determined based on the pixel locations of the words, based on a difference between indices of sentences that include the words, using other techniques, or a combination thereof. In some implementations, the word features and the word layout features may include qualitative features, such as lengths of words, percentages of capital letters, fuzzy representations of the words, and the like, and quantitative features. In some such implementations, the quantitative features may be determined by representing an individual corpus of a document as a grid-plane on which the words are placed, which may capture the positional significance of each word. For example, the quantitative features may include locations within the grid-plane of bounded polygons, such as optimal four-sided polygons, that bound the words, as well as locations within the grid-plane of centroids of the words. By including these quantitative features, ML models that are trained based on the training data may capture improved word contextualization (as compared to being trained using the qualitative features without the quantitative features), which can improve recognition of the annotators described herein with reference to  FIGS. 1-3 and 6 . 
     The pixel layout features may include pixel locations of non-word elements within the pixel arrays associated with the documents  410 , distances between non-word elements, classifications of non-word elements, dimensions of non-word elements, and the like. For example, pixel locations of vertices, centroids, or other points of interest of non-word objects may be determined with reference to pixel arrays of the documents (or page(s) of the documents) that include the non-word elements. Dimensions, distances, and other layout features may be similarly determined using the pixel arrays and the pixel locations. The non-word elements may include visual objects that do not include text or text, due to formatting such as font, bold, italics, underlining, font size, text effects, or the like, is intended to serve as both textual information and a visual or design object. For example, the non-word objects may include images, graphics, tables, lines, bullets, designs, logos, colors, headings, sub-headings, and the like. In some implementations, the non-word objects may be analyzed to generate a three-dimensional (3D) matrix structure for each of the documents  410 . Each cell in one of the 3D matrix structures may store information about a corresponding non-word object in a 3D tuple structure. The 3D matrix structure (and 3D tuple structures stored therein) may capture positional variability for unique non-word objects across different documents (e.g., of the same category or across different categories). 
     The document-specific features  440  may be grouped into category-specific groups of features. For example, the document-specific features  440  may be grouped into a first group of features  441 , a second group of features  448 , and an nth group of features  449 . Each group of features may include the feature data generated based on (e.g., extracted from) one or more documents of the documents  410  that are labeled with the same category. For example, the first group of features  441  may include features from documents of the first category (e.g., Label 1), the second group of features  448  may include features from documents of the second category (e.g., Label 2), and the nth group of features  449  may include features from documents of the nth category (e.g., Label n). Each group of features may include word features, word layout features, pixel layout features, or a combination thereof. As an illustrative example, the first group of features  441  may include a first set of word features  442  (e.g., word features from documents of the first category), a first set of word layout features  444  (e.g., word layout features from documents of the first category), and a first set of pixel layout features  446  (e.g., pixel layout features from documents of the first category). Each set of features included in a category-specific group may include feature values across multiple documents for a common set of features. For example, the first set of word features  442  may include first word log values from the first document (e.g., Doc 1), first word presence ratios from the first document, second word log values from the second document (e.g., Doc 2), and second word presence ratios from the second document if the word features associated with the first category are word log values and word presence ratios and if the first document and the second document are assigned to the first category (e.g., Label 1), as shown in  FIG. 4 . In some implementations, the word features, the word layout features, the pixel layout features, or a combination thereof, associated with different categories may be different from one another. For example, the first set of word features  442  included in the first group of features  441  may include different word features than second word features (“Word Features 2”) included in the second group of features  448 , such as the first set of word features  442  including word log values and the second word features including word presence ratios. Alternatively, the word features, the word layout features, the pixel layout features, or a combination thereof, associated with different categories may be the same for two or more different categories. For example, the first set of pixel layout features  446  included in the first group of features  441  may include the same pixel layout features as nth pixel layout features (“Pixel Layout Features n”) included in the nth group of features  449 , such as the first set of pixel layout features  446  and the nth pixel layout features each including pixel locations of a centroid of a header. 
     The document-specific annotations  450  may include the entity names and respective entity values that are tagged in the documents  410  (e.g., that are included in the associated entity data). The document-specific annotations  450  may be category-specific, such that documents from different categories are annotated to tag different entities. In some implementations, training based on annotation data may enable configuration of a multi-label classification model (e.g., one or more ML models trained to perform multi-label classification). Each word or phrase in each of the documents  410  is tagged (e.g., by document experts, by automated or semi-automated systems, or a combination thereof) with an entity name (e.g., a label) to which the word or phrase is an entity value or with a non-entity label (e.g., no label). Although described as each word or phrase being tagged, in some implementations, at least some words or phrases may be not be tagged, and these words or phrases are treated as though they are tagged with a non-entity label (e.g., no label may default to non-entity). Thus, the one or more ML models may be trained as a multi-factor linguistic model that tags words or phrases to be classified as one or more entities (e.g., true labels) or not (e.g., no label). 
     The document-specific annotations  450  may be grouped into category-specific groups of annotations (e.g., entity names and values). For example, the document-specific annotations  450  may be grouped into a first group of annotations  451 , a second group of annotations  464 , and an nth group of annotations  466 . Each group of annotations may include the annotation data associated with one or more documents of the documents  410  that are labeled with the same category. For example, the first group of annotations  451  may include annotation data associated with documents of the first category (e.g., Label 1), the second group of annotations  464  may include annotation data associated with documents of the second category (e.g., Label 2), and the nth group of annotations  466  may include annotation data associated with documents of the nth category (e.g., Label n). Each group of annotations may include entity names associated with a respective category and entity values corresponding to the entity names in one or more of the documents  410  assigned to the respective category. 
     As an illustrative example, the first group of annotations  451  may include a first entity name  452  and first entity values  456  (e.g., words or phrases tagged with the first entity name  452  from documents of the first category), a second entity name  454  and second entity values  458  (e.g., words or phrases tagged with the second entity name  454  from documents of the first category), and a jth entity name  460  and jth entity values  462  (e.g., words or phrases tagged with the jth entity name  460  from documents of the first category). To further illustrate, if the first category is leases and the first document (Doc 1) and the second document (Doc 2) are assigned to the first category, the first entity name  452  may include “lessor,” the first entity values  456  may include “Rob Smith” from the first document and “Sunshine Rentals, LLC” from the second document, the second entity name  454  may include “lessee,” the second entity values  458  may include “Jason Turner” from the first document and “Cassie Folk” from the second document, the jth entity name  460  may include “lease duration,” and the jth entity values  462  may include “two weeks” from the first document and “one year” from the second document. 
     In some implementations, the number of entities annotated for different categories may be different from one another, the entity names annotated for different categories may be different from one another, or both. For example, the first group of annotations  451  may include j annotation names, the second group of annotations  464  may include k annotation names, and the nth group of annotations  466  may include l annotation names, where j, k, and l may each be different positive integers. Alternatively, two or more of j, k, and l may be the same positive integer. As another example, the first entity name  452  included in the first group of annotations  451  may be different than an entity name included in the second group of annotations  464  (e.g., the first entity name  452  may be “lessor” and the first entity name included in the second group of annotations  464  may be “deposed party”). In some other implementations, the number of annotation names, the annotation names, or both, may be the same for two different categories. For example, if the first category is June purchase receipts and the second category is July purchase receipts, the first group of annotations  451  and the second group of annotations  464  may include the same entity names (e.g., “purchaser,” “payment amount,” “date,” “seller,” etc.), although non-annotated information in documents of the first category may be different from non-annotated information of documents of the second category. 
     Referring to  FIG. 5 , an example  500  of the categorizer  214  is shown. As shown in  FIG. 5 , during a training process, the categorizer  214  may receive training data  510  for use in training one or more ML models that are included in or accessible to the categorizer  214 . In some implementations, the ML models may include or correspond to the first ML models  130  of  FIG. 1 . The training data  510  may be generated based on multiple labeled documents of multiple predefined document categories, as further described above with reference to  FIG. 4 . The training data  510  may include various types of features extracted from the labeled documents, such as word features, word layout features, and pixel layout features, as a non-limiting example. The feature data may be labeled based on the corresponding category in the training data  510 , such that the training data  510  may be used during a supervised learning process to train the categorizer  214 . For example, the training data  510  may include a first group of word features  520  (e.g., word features of documents having a first label (“Label 1”) associated with a first category), a first group of word layout features  530  (e.g., word layout features of documents having the first label, and a first group of pixel layout features  540  (e.g., pixel layout features of documents having the first label). The training data  510  may include similar groups of word features, word layout features, and pixel layout features, for each other category of n predefined document categories (which are not shown in  FIG. 5  for ease of illustration). 
     The first group of word features  520  may be extracted from each document having the first category label (e.g., label 1). The word features included in the first group of word features  520  may include word identifications, word counts, word ratios, and the like. To illustrate, the first group of word features  520  may include a first set of word features  522  that are extracted from a first document (“Doc 1”) of the first category (e.g., having the first category label), a second set of word features  524  may be extracted from a second document (“Doc 2”) of the first category, a third set of word features may be extracted from a third document (“Doc 3”) of the first category, and an mth set of word features may be extracted from an mth document (“Doc m”) of the first category. Although sets of word features from four documents are shown in the example illustrated in  FIG. 5 , in other examples, there may be fewer than four or more than four sets of word features from respective documents (e.g., m may be any integer greater than one). Each set of word features of the first group of word features  520  includes document-specific feature values for one or more features. As a simplified example, if the word features include a count of a particular word (e.g., lease, lessor, or lessee if the first category is a lease), a particular word ratio (e.g., a ratio of a count of the word “property” to the total number of words in the document if the first category is a lease), and a count of words having a particular length (e.g., words that are longer than eight letters), the first set of word features  522  may include the count of the particular word in the first document, the particular word ratio from the first document, and the count of words having the particular length in the first document, and the second set of word features  524  may include the count of the particular word in the second document, the particular word ratio from the second document, and the count of words having the particular length in the second document. In this example, the first set of word features  522  may indicate that the particular word occurs fifteen times in the first document, that the particular word ratio is 5/65 in the first document, and that the count of words having the particular length in the first document is eight, and the second set of word features  524  may indicate that the particular word occurs eleven times in the second document, that the particular word ratio is 7/68 in the second document, and that the count of words having the particular length in the second document is six. Word features for other categories of documents may be similarly extracted, although the word features extracted for different categories may be different. For example, the particular features extracted for documents of the first category may not be the same as the particular features extracted for documents of the second category. Alternatively, some or all of the particular features extracted for documents of different categories may be the same across the different categories. 
     The first group of word layout features  530  may be extracted from each document having the first category label (e.g., label 1). The word layout features included in the first group of word layout features  530  may include pixel locations of words in the input document, distances between words, and the like. To illustrate, the first group of word layout features  530  may include a first set of word layout features  532  that are extracted from a first document (“Doc 1”) of the first category (e.g., having the first category label), a second set of word layout features  534  may be extracted from a second document (“Doc 2”) of the first category, a third set of word layout features may be extracted from a third document (“Doc 3”) of the first category, and an mth set of word layout features may be extracted from an mth document (“Doc m”) of the first category. Although sets of word layout features from four documents are shown in the example illustrated in  FIG. 5 , in other examples, there may be fewer than four or more than four sets of word features from respective documents (e.g., m may be any integer greater than one). Each set of word layout features of the first group of word layout features  530  includes document-specific layout feature values for one or more layout features. As a simplified example, if the word layout features include pixel locations of particular words (e.g., location of the words lease, lessor, and lessee if the first category is a lease) and distances between particular words (e.g., distance around the words lease, lessor, and lessee if the first category is a lease), the first set of word layout features  532  may include the pixel locations of particular words in the first document and the distances between particular words of the first document, and the second set of word layout features  534  may include the pixel locations of particular words in the second document and the distances between particular words of the second document. In this example, the first set of word layout features  532  may indicate that a particular word is centered on the page of the first document and there are no words within 24 points of space above, below, to the left, or to the right of the particular word in the first document, and the second set of word layout features  534  may indicate that the particular word is positioned at the bottom left of the page, a colon is positioned immediately to the right of the particular word and no other words are within 24 points of space above, below, or to the left of the particular word in the second document. Word layout features for other categories of documents may be similarly extracted, although the word layout features extracted for different categories may be different. For example, the particular word layout features extracted for documents of the first category may not be the same as the particular word layout features extracted for documents of the second category. Alternatively, some or all of the particular word layout features extracted for documents of different categories may be the same across the different categories. 
     The first group of pixel layout features  540  may be extracted from each document having the first category label (e.g., label 1). The pixel layout features included in the first group of pixel layout features  540  may include pixel locations of other elements (e.g., non-word elements) in the document, distances between elements, element types, and the like. To illustrate, the first group of pixel layout features  540  may include a first set of pixel layout features  542  that are extracted from a first document (“Doc 1”) of the first category (e.g., having the first category label), a second set of pixel layout features  544  may be extracted from a second document (“Doc 2”) of the first category, a third set of pixel layout features may be extracted from a third document (“Doc 3”) of the first category, and an mth set of pixel layout features may be extracted from an mth document (“Doc m”) of the first category. Although sets of pixel layout features from four documents are shown in the example illustrated in  FIG. 5 , in other examples, there may be fewer than four or more than four sets of pixel layout features from respective documents (e.g., m may be any integer greater than one). Each set of pixel layout features of the first group of pixel layout features  540  includes document-specific pixel layout feature values for one or more pixel layout features. As a simplified example, if the pixel layout features include pixel locations of particular elements in the document (e.g., location of a table if the first category is a trademark document) and distances between particular elements in the document (e.g., is a line the closest element to each side of the table if the first category is a trademark document), the first set of pixel layout features  542  may include the pixel locations of the particular elements in the first document and the distances between the particular elements of the first document, and the second set of pixel layout features  542  may include the pixel locations of the particular elements in the second document and the distances between the particular elements of the second document. In this example, the first set of pixel layout features  542  may indicate that the table is centered with respect to the horizontal and vertical direction of a page in the first document and a line is the closest element to each side of the table in the first document. Pixel layout features for other categories of documents may be similarly extracted, although the pixel layout features extracted for different categories may be different. For example, the pixel layout features extracted for documents of the first category may not be the same as the pixel layout features extracted for documents of the second category. Alternatively, some or all of the pixel layout features extracted for documents of different categories may be the same across the different categories. 
     The categorizer  214  may be configured to receive the extracted features included in the training data  510  (e.g., the first group of word features  520 , the first group of word layout features  530 , the first group of pixel layout features  540 , and features from documents of other categories). Through supervised learning based on the training data  510 , the categorizer  214  may be configured to learn underlying relationships between various word features, word layout features, and pixel layout features of documents having the same category and documents having different categories. In this manner, the categorizer  214  may be configured to assign unlabeled documents to categories based on similarities and differences between feature data of the unlabeled documents and feature data of documents across the predefined document categories. 
     After the categorizer  214  is trained, the categorizer  214  may receive and categorize unlabeled documents. For example, the categorizer  214  may receive a new document  550  that is an unlabeled document corresponding to one of the predefined document categories. The categorizer  214  may evaluate word features, word layout features, pixel layout features, or a combination thereof, extracted from the new document  550  in order to determine which of the predefined document categories to which the new document  550  is to be assigned. This determination may be based on the underlying relationships between features and categories that the categorizer  214  learned during training. In some implementations, the categorizer  214  may output an indicator of the assigned category. For example, if the predefined document categories include eight categories, the indicator may be a three-digit number where a first value (e.g., 000) indicates the first category, a second value (e.g., 001) indicates a second category, and an eighth value (e.g., 111) indicates an eighth category. In some implementations, the categorizer  214  may output probability values based on the various categories, and the probability values may be used to select a final output indicating the assigned category (e.g., by the categorizer  214 , or during post-processing). To illustrate, the categorizer  214  may be configured to output probability scores  560  that indicate likelihoods that the new document  550  (e.g., the received unlabeled document) corresponds to each of the multiple predefined document categories. For example, the probability scores  560  may include a first probability score  562  that indicates a probability that the new document  550  corresponds to the first category (e.g., has the first category label), a second probability score  564  that indicates a probability that the new document  550  corresponds to the second category, a third probability score that indicates a probability that the new document  550  corresponds to the third category, and an nth probability score that indicates a probability that the new document  550  corresponds to the nth category. The categorizer  128  may assign the new document  550  to the category associated with the highest probability score. For example, if the first probability score  562  is 0.2 and corresponds to marketing documents, the second probability score  564  is 0.9 and corresponds to legal documents, and the remaining scores of the probability scores  560  are less than 0.9, the categorizer  214  may assign a label corresponding to legal documents (e.g., Label 2) to the new document  550 . Other unlabeled documents maybe be categorized in a similar manner into respective ones of the n predefined document categories. 
     In some implementations, the output of the categorizer  214  may be provided as feedback information to further train the categorizer  214  (e.g., the ML models included in or accessed by the categorizer  214 ). For example, the label associated with the new document  550  may undergo a review process, either by a document expert or an automated or semi-automated system, and if the label is approved, the labeled new document  550  may be provided as feedback information for further training the categorizer  214 . If the label is not approved, the new document  550  and a corrected label may be provided as feedback information to further train the categorizer  214 . 
     Referring to  FIG. 6 , an example  600  of the first annotator  306  is shown. As shown in  FIG. 6 , during a training process, the first annotator  306  may receive training data  610  for use in training one or more ML models that are included in or accessible to the first annotator  306 . In some implementations, the ML models may include or correspond to the second ML models  134  of  FIG. 1 . As described with reference to  FIG. 3 , the first annotator  306  is configured to generate annotation data for input documents of the first category (“Label 1”). Accordingly, the training data  610  may be generated based on multiple annotated documents the first category, as further described above with reference to  FIG. 4 . The training data  610  may include various types of features extracted from the annotated documents, such as qualitative features, quantitative features, and pixel layout features, as a non-limiting example. The feature data may combined with annotation data to generate the training data  610 , such that the training data  610  may be used during a supervised learning process to train the first annotator  306 . For example, the training data  610  may include a first group of qualitative features  620  (e.g., qualitative features of documents having a first label (“Label 1”) associated with a first category), a first group of quantitative features  630  (e.g., quantitative features of documents having the first label), and a first group of pixel layout features  640  (e.g., pixel layout features of documents having the first label). The training data  610  may include annotation data associated with each of the documents, such as a list of category-specific entities and entity values for the entities in each of the documents. 
     The first group of qualitative features  620  may be extracted from each document having the first category label (e.g., label 1). The qualitative features included in the first group of qualitative features  620  may include length of words, percentage of capital letters in words, percentage of numbers in words, fuzzy representations of words, other qualitative word features, and the like. To illustrate, the first group of qualitative features  620  may include a first set of qualitative features  622  that are extracted from a first document (“Doc 1”) of the first category, a second set of qualitative features  624  may be extracted from a second document (“Doc 2”) of the first category, a third set of qualitative features may be extracted from a third document (“Doc 3”) of the first category, and an mth set of qualitative features may be extracted from an mth document (“Doc m”) of the first category. Although sets of qualitative features from four documents are shown in the example illustrated in  FIG. 6 , in other examples, there may be fewer than four or more than four sets of qualitative features from respective documents (e.g., m may be any integer greater than one). Each set of qualitative features of the first group of qualitative features  620  includes document-specific qualitative feature values for one or more qualitative features. As a simplified example, if the qualitative features include length of words that satisfy a threshold (e.g., at least 17 consecutive characters if the first category is a purchase order) and a percentage of capital letters in words (e.g., ratio of capital letters to lowercase letters and numbers if the first category is a purchase order), the first set of qualitative features  622  may include lengths of each word with at least 17 characters in the first document and the percentage of capital letters in each word in the first document, and the second set of qualitative features  624  may include lengths of each word with at least 17 characters in the second document and the percentage of capital letters in each word in the second document. 
     The first group of quantitative features  630  may be extracted from each document having the first category label (e.g., label 1). The quantitative features included in the first group of quantitative features  630  may include word counts, word locations (e.g., pixel locations of an optimal bounded four-sided polygon and a centroid of each word), other quantitative word features, and the like. To illustrate, the first group of quantitative features  630  may include a first set of quantitative features  632  that are extracted from the first document, a second set of quantitative features  634  may be extracted from the second document, a third set of quantitative features may be extracted from the third document, and an mth set of quantitative features may be extracted from the mth document. Although sets of quantitative features from four documents are shown in the example illustrated in  FIG. 6 , in other examples, there may be fewer than four or more than four sets of quantitative features from respective documents (e.g., m may be any integer greater than one). Each set of quantitative features of the first group of quantitative features  630  includes document-specific quantitative feature values for one or more quantitative features. As a simplified example, if the quantitative features include word counts of particular words (e.g., math, English, or history if the first category is an educational document) and word locations of the particular words (e.g., pixel locations of the words math, English, or history if the first category is an educational document), the first set of quantitative features  632  may include word counts of the particular words and word locations of the particular words in the first document, and the second set of quantitative features  634  may include word counts of the particular words and word locations of the particular words in the second document. In this example, the first set of quantitative features  632  may indicate that a particular word (e.g., math) appears ten times in the first document and the particular word is located at the top right of the first document, and the second set of quantitative features  634  may indicate that the particular word appears seven times in the second document and the particular word is located at the bottom right of the second document. 
     The first group of pixel layout features  640  may be extracted from each document having the first category label (e.g., label 1). The pixel layout features included in the first group of pixel layout features  640  may include pixel locations of other (e.g., non-word) elements in the document, distances between non-word elements, element types, and the like. To illustrate, the first group of pixel layout features  640  may include a first set of pixel layout features  642  that are extracted from the first document, a second set of pixel layout features  644  may be extracted from the second document, a third set of pixel layout features may be extracted from the third document, and an mth set of pixel layout features may be extracted from the mth document. Although sets of pixel layout features from four documents are shown in the example illustrated in  FIG. 6 , in other examples, there may be fewer than four or more than four sets of pixel layout features from respective documents (e.g., m may be any integer greater than one). Each set of pixel layout features of the first group of pixel layout features  640  includes document-specific pixel layout feature values for one or more pixel layout features. As a simplified example, if the pixel layout features include pixel locations of particular elements in the document (e.g., location of a court seal if the first category is a legal document) and distances between particular elements in the document (e.g., markings corresponding to a particular stamp are located within a half inch of the perimeter of the court seal in any direction if the first category is a legal document), the first set of pixel layout features  642  may include the pixel locations of the particular elements in the first document and the distances between the particular elements in the first document, and the second set of pixel layout features  644  may include the pixel locations of the particular elements in the second document and the distances between the particular elements in the second document. In this example, the first set of pixel layout features  642  may indicate that the court seal is located at the bottom right in the first document and the markings corresponding to the particular stamp are located within a quarter inch of the perimeter of the court seal in the first document, and the second set of pixel layout features  644  may indicate that the court seal is located at the bottom center in the second document and the markings corresponding to the particular stamp are located within an eighth of an inch of the perimeter of the court seal in the second document. 
     The first annotator  306  may be configured to receive the extracted features included in the training data  610  (e.g., the first group of qualitative features  620 , the first group of quantitative features  630 , the first group of pixel layout features  640 , and annotation data associated with the documents). Through supervised learning based on the training data  610 , the first annotator  306  may be configured to learn underlying relationships between various qualitative features, quantitative features, pixel layout features, and annotations of documents having the same category. In this manner, the first annotator  306  may be configured to tag words of input documents that correspond to predefined entities (e.g., words or phrases that are highly informative and relevant to summarizing documents of the respective document category) based on similarities and differences between feature data and annotation data of the different documents of the first category. Other category-specific annotators (e.g., other ML models) may be similarly trained using category-specific training data. 
     After the first annotator  306  is trained, the first annotator  306  may receive and annotate labeled (e.g., categorized) documents of the first document category (Label 1). For example, the first annotator  306  may receive a new document  650  of the first category that is labeled by the categorizer  214  of  FIGS. 2, 3, and 5  (e.g., the new document  650  may include a generated label, or the new document  650  may be provided to the first annotator  306  based on an output of the categorizer  214 ). The first annotator  306  may evaluate qualitative features, quantitative features, pixel layout features, or a combination thereof, extracted from the new document  650  in order to determine which words or phrases to tag as entity values in the new document  650  in order to generate annotation data that indicates the values of the category-specific entities associated with the first category. This determination may be based on the underlying relationships between features and annotation data that the first annotator  306  learned during training. In some implementations, the first annotator  306  may output annotation data that indicates the names and values of each of the category-specific entities. For example, if the first category is leases, the annotation data may indicate the entity name “lessor” and a corresponding word or phrase from the new document  650 , the entity name “lessee” and a corresponding word or phrase from the document  650 , the entity name “start date” and a corresponding word or phrase from the new document  650 , and the entity name “lease term” and a corresponding word or phrase from the new document  650 . In some implementations, the annotator  306  may output probability values indicating a likelihood that each extraction (e.g., word or phrase) from the new document  650  corresponds to the category-specific entities or is not an entity, and the probability values may be used to generate the annotation data. As described above with reference to  FIG. 4 , the probability values may be based on quantitative features from the new document  650 . To illustrate, the first annotator  306  may be configured to output probability scores  660  that indicate likelihoods that a particular word or phrase of the new document  650  corresponds to each of the category-specific entities or is not an entity. For example, the probability scores  660  may include a first probability score  662  that indicates a probability that the particular word or phrase corresponds to a first entity associated with the first category, a second probability score  664  that indicates a probability that the particular word or phrase corresponds to a second entity associated with the first category, a jth probability score that indicates a probability that the particular word or phrase corresponds to a jth entity associated with the first category (where j is the number of category-specific entities associated with the first category and may be any positive integer), and a non-entity probability score  666  that indicates a probability that the particular word or phrase is not an entity associated with the first category. The first annotator  306  may tag the word or phrase of the new document  650  as an entity value of the particular entity associated with the highest probability score of the probability scores  660  (or as not being an entity value if the non-entity probability score  666  is the highest probability score). For example, if the first probability score  662  is 0.2 and corresponds to lessor, the second probability score  664  is 0.9 and corresponds to lease term, and the remaining scores of the probability scores  660  are less than 0.9 (including the non-entity probability score  666 ), the first annotator  306  may tag the particular word or phrase as corresponding to a lease term (e.g., generate annotation data that indicates that the entity lease term has the value of the word or phrase). Other extractions (e.g., word(s) or phrase(s)) from the new document  650  may be tagged in a similar manner as respective entity values of the j category-specific entities. In some other implementations, the first annotator  306  may be configured to perform a two-stage probability score generation process. The first stage may include outputting, for each extracted word or phrase from the new document  650 , a probability score indicating the probability that the word or phrase is any entity. The second stage may include outputting, for each word or phrase associated with probability scores that satisfy a threshold, probability scores indicating the probability that the word or phrase is each of the category specific entities associated with the first category. 
     In some implementations, the output of the first annotator  306  may be provided as feedback information to further train the first annotator  306  (e.g., the ML models included in or accessed by the first annotator  306 ). For example, the annotation data (e.g., the tagged words or phrases) associated with the new document  650  may undergo a review process, either by a document expert or an automated or semi-automated system, and if the annotation data is approved, the annotation data and the features generated based on the new document  650  may be provided as feedback information for further training the first annotator  306 . If the annotation data is not approved, the features generated based on the new document  650  and corrected annotation data may be provided as feedback information to further train the first annotator  306 . 
     Referring to  FIG. 7 , an example of a model  700  implemented by the first summarizer  310  is shown. As described above with reference to  FIGS. 1-3 , the first summarizer  310  may include or access one or more ML models, such as one or more NNs, that are trained to summarize documents of a particular category (Label 1). The model  700  is a representation of the model implemented by the one or more NNs (or other types of ML models). In some implementations, the one or more NNs include one or more recurrent neural networks (RNNs) that are configured as a long short-term memory (LSTM) network to predict different words or phrases at various points of a category-specific document template based on annotation data. In some such implementations, the underlying rationale behind predicting the correct ordering of words for the summarization is obtaining probabilities of the sequences of words and entities. For example, for a summary that includes information about a model and precision, the probability of the of a first sequence of words and entities, P(“Model 100876 has a precision of 76%), may be greater than the probability of a second sequence of words and entities, P(“The precision 100876 has a Model of 76%”). The difference in probability between these two sequences reflects the difference in semantic coherence and readability between the two sequences. Using RNNs (e.g., a LSTM) instead of other ML models, such as hidden Markov models (HMMs) may capture hidden states of the sequence of words and entities at different time steps of the “concerned” (e.g., related) text, which may enable prediction of words that depend on text in a previous sentence instead of only a few previous words (e.g., n-grams). Special cases inside the graphs of the model may be compensated for by use of a rule-based algorithm. For example, if one or more nodes are missing from the model of the sequence due to lack of data in a training set, those entities may be effectively excluded from the main summarization, enabling leaner and more compact models. Metadata, such as a footnote, may be added to the output summary to emphasize the missing information for future reference. 
     As shown in  FIG. 7 , the model  700  includes states, inputs, and outputs for forming a sequence of words and entities to be output as a summary of an input document. For example, the model  700  may include an initial state  702  (“H0”), a first state  706  (“H1”), a second state  712  (“H2”), a third state  718  (“H3”), a first input  708  (“X1”), a second input  714  (“X2”), a third input  720  (“X3”), a first output  704  (“y1”), a second output  710  (“y2”), and a third output  716  (“y3”). The inputs  708 ,  714 , and  720  may include input word vectors at different time steps in the input document. The outputs  704 ,  710 , and  716  may include probability distributions of different words in the training set. Each output may be used to determine the actual words occurring after the corresponding input in the sequence. For example, the first output  704  may be used to determine the word Y1 occurring after the first input  708 , the second output  710  may be used to determine the word Y2 occurring after the second input  714 , and the third output  716  may be used to determine the word Y3 occurring after the third input  720 . The states  702 ,  706 ,  712 , and  718  may be hidden states at different time stamps in the input document. 
       FIG. 7  also shows an illustrative model  730  that is generated using the model  700  for a particular document, in this example a document about model accuracy. In the example shown in  FIG. 7 , the model  730  generates the sequence of words and entities “Model @ModelID has a precision of @precision.” In this sequence, the words “Model,” “has,” “a,” “precision,” and “of” are static category-specific text, and the words “@ModelID” and “@precision” are entity names. The sequence may be used to generate a summary of the input document by including a ModelID entity value  732  for the entity name “ModelID” and a precision entity value  734  for the entity name “precision.” The ModelID entity value  732  and the precision entity value  734  may be indicated by annotation data generated based on the input document, such as by the first annotator  306  of  FIGS. 3 and 6 . 
       FIG. 7  also depicts an illustrative summary  750 . The summary  750  may be generated by a category-specific summarizer associated with a lease category of documents. In the example shown in  FIG. 7 , the summary  750  includes the text “A lease between @party_A and @party_B has been executed on @date. The lease runs for a term of @duration for a price of @price.” In this example, the words or phrases “@party_A,” “@party_B,” “@date,” “@duration,” and “@price” represent entity values for the category-specific entities party_A, party_B, date, duration, and price, which may be indicated by annotation data associated with a lease being summarized. In some implementations, the summarizer may be trained based on one or more document summary templates. For example, the summarizer may be trained based on a lease summary template that includes the text of the summary  750  and the category-specific entity names. Additionally or alternatively, the summarizer may be trained based on one or more reference lease summaries. 
     In some implementations, the summarizer may be trained to generate the same static text and ordering of words and entities for all summaries for the particular category. For example, the summarizer may generate all summaries by inputting entity values into the summary  750 . Alternatively, summaries for the same document category may be different based on input annotation data. For example, the summarizer may be trained using different lease summaries for leases that run less than a year and for leases that run more than a year. In such example, the text, the ordering, or both, included in the summary  750  may be different based on the entity value @duration. 
     Referring to  FIG. 8 , a flow diagram of an example of a method for category-specific document summarization according to one or more aspects is shown as a method  800 . In some implementations, the operations of the method  800  may be stored as instructions that, when executed by one or more processors (e.g., the one or more processors of a document processing device or a server), cause the one or more processors to perform the operations of the method  800 . In some implementations, the method  800  may be performed by a document processing device, such as the document processing device  102  of  FIG. 1  (e.g., a document processing device configured for type-specific document summarization), the system  200  of  FIG. 2 , the document converter  210  of  FIG. 3 , the categorizer  214  of  FIG. 5 , the first annotator  306  of  FIG. 6 , or a combination thereof. 
     The method  800  includes receiving input data representing a document, at  802 . For example, the input data may include or correspond to the input data  150  of  FIG. 1 . The method  800  includes providing first feature data extracted from the input data to a first set of ML models to select a document category corresponding to the document from a plurality of predefined document categories, at  804 . For example, the first feature data may include or correspond to the first feature data  112  of  FIG. 1 , the first set of ML models may include or correspond to the first ML models  130  of  FIG. 1 , and the document category may include or correspond to the document category  120  of  FIG. 1 . The first set of ML models are configured to categorize documents into the plurality of predefined document categories based on input feature data. For example, the categorizer  128  of  FIG. 1  may be configured to access the first ML models  130  to categorize documents into multiple different document categories. 
     The method  800  includes providing second feature data extracted from the input data to a second set of ML models to generate annotation data corresponding to the document, at  806 . For example, the second feature data may include or correspond to the second feature data  116  of  FIG. 1 , the second set of ML models may include or correspond to the second ML models  134  of  FIG. 1 , and annotation data may include or correspond to the annotation data  118  of  FIG. 1 . The second set of ML models are configured to generate annotation data corresponding to documents having the selected document category based on input feature data. For example, the annotator  132  of  FIG. 1  may be configured to access the second ML models  134  generate category-specific annotation data based on input documents. 
     The method  800  includes providing the annotation data to a third set of ML models to generate a summary of the document, at  808 . For example, the third set of ML models may include or correspond to the third ML models  138  of  FIG. 1  and the summary of the document may include or correspond to the document summary  122  of  FIG. 1 . The third set of ML models are configured to generate summaries of documents having the selected document category based on input annotation data. For example, the summarizer  136  may be configured to access the third ML models  138  generate category-specific summaries of input documents. The method  800  further includes generating an output that includes the summary, at  810 . For example, the output may include or correspond to the output  152  of  FIG. 1 . 
     In some implementations, the first feature data may include word features associated with the document, word layout features associated with the document, and pixel features associated with one or more non-word elements of the document. For example, the word features may include or correspond to word features of the new document  550  of  FIG. 5 , the word layout features may include or correspond to word layout features of the new document  550  of  FIG. 5 , and the pixel features may include or correspond to the pixel layout features of the new document  550  of  FIG. 5 . In some such implementations, the one or more non-word elements may include an image, a graphic, a table, a heading, a sub-heading, or a combination thereof, and the pixel features may be stored in a 3D matrix data structure, as further described with reference to  FIG. 4 . 
     In some implementations, the first set of ML models may be configured to output a plurality of probability scores, each probability score indicating a likelihood that the document corresponds to a respective predefined document category of the plurality of predefined document categories. For example, the plurality of probability scores may include or correspond to the probability scores  114  of  FIG. 1 . Additionally or alternatively, generating the output may include initiating display of a GUI that includes the summary. The summary may include text, images or objects, or a combination thereof, as further described with reference to  FIG. 7 . 
     In some implementations, the second feature data may include qualitative word features associated with the document and quantitative word features associated with the document. For example, the qualitative word features may include or correspond to qualitative features of the new document  650  of  FIG. 6  and the quantitative word features may include or correspond to quantitative features of the new document  650  of  FIG. 6 . 
     In some implementations, the annotation data corresponding to the document may include a document label associated with the document and one or more sets of entity information associated with the selected document category. Each set of entity information includes an entity label and an entity value. For example, the document label may include or correspond to the document type annotations  420  of  FIG. 4 , the entity label may include or correspond to the first entity name  452  of  FIG. 4  or the second entity name  454  of  FIG. 4 , and the entity value may include of correspond to the first entity value  456  of  FIG. 4  or the second entity value  458  of  FIG. 4 . In some such implementations, the second set of ML models may be configured to output a plurality of probability scores associated with one or more extractions from the document, each probability score indicating a likelihood that the extraction corresponds to a respective set of the one or more sets of entity information. For example, the plurality of probability scores may include or correspond to the probability scores  114  of  FIG. 1  or the probability scores  560  of  FIG. 5 . Additionally or alternatively, the summary may include the entity values of the one or more sets of entity information and category-specific text associated with the selected document category. For example, the summary may include or correspond to the summary  750  of  FIG. 7 , which includes entity values (e.g., “@party_A,” “@party_B,” “@date,” etc.) and category-specific text (e.g., “The lease between . . . and . . . has been executed on . . . ”). In some such implementations, the entity values and the category-specific text are ordered in the summary based at least in part on the entity labels and the entity values, as further described with reference to  FIG. 7 . 
     In some implementations, the method  800  includes providing fourth feature data extracted from second input data representing a second document to the first set of ML models to select a second document category corresponding to the second document. For example, the second document may include or correspond to the second new document  304  of  FIG. 3 . In such implementations, the method  800  also includes providing fifth feature data extracted from the second input data to a fourth set of ML models to generate second annotation data corresponding to the second document. The fourth set of ML models may be configured to generate annotation data corresponding to documents having the second document category based on input feature data. For example, the fourth set of ML models may include or correspond to ML models accessed by the third annotator  308  of  FIG. 3 . In such implementations, the method  800  also includes providing the second annotation data to a fifth set of ML models to generate a second summary of the second document. The fifth set of ML models may be configured to generate summaries of documents having the second document category based on input annotation data. For example, the fifth set of ML models may include or correspond to ML models accessed by the third summarizer  312  of  FIG. 3 . In such implementations, the method  800  further includes generating a second output that includes the second summary. For example, the second summary may include or correspond to the second summarized document  316  of  FIG. 3 . 
     In some implementations, the method  800  also includes training the first set of ML models based on first training data prior to generating the first feature data. The first training data may include a document label, word features, word layout features, and pixel features associated with multiple documents for each of the plurality of predefined document categories. For example, the training data  110  of  FIG. 1  may include a first portion that includes the document type annotations  420  of  FIG. 4 , the word features  520  of  FIG. 5  (and word features for documents of other categories), the word layout features  530  of  FIG. 5  (and word layout features for documents of other categories), and the pixel layout features  540  of  FIG. 5  (and pixel layout features for documents of other categories). Additionally or alternatively, the method  800  may also include training the second set of ML models based on second training data prior to generating the second feature data. The second training data may include qualitative word features, quantitative word features, and one or more sets of entity information associated with multiple documents of the selected document category. For example, the training data  110  of  FIG. 1  may include a second portion that includes the qualitative features  620  of  FIG. 6 , the quantitative features  630  of  FIG. 6 , the pixel layout features  640  of  FIG. 6 , and category-specific entity information. Additionally or alternatively, the method  800  may also include training the third set of ML models based on third training data prior to generating the annotation data corresponding to the document. The third training data may include multiple summaries and associated annotation information for the selected document category. For example, the training data  110  of  FIG. 1  may include a third portion that includes category-specific summary templates and category-specific annotation data. 
     In some implementations, the method  800  further includes receiving second input data representing a second document and providing fourth feature data extracted from the second input data to the first set of ML models to select a second document category corresponding to the second document. For example, feature data extracted from the second new document  304  may be provided to the categorizer  214  of  FIG. 3  to assign a document category to the second new document  304 . Additionally or alternatively, the summary may include a first set of entity values and category-specific text associated with the selected document category, a second summary of a second document of the selected document category may include a second set of entity values and the category-specific text associated with the selected document category, and an ordering of the first set of entity values and the category-specific text may be different than an ordering of the second set of entity values and the category-specific text. The second set of entity values may include at least one entity value that is different than the first set of entity values, or a combination thereof. For example, different documents of the same category may result in slightly different summaries, as further described with reference to  FIG. 7 . 
     In some implementations, the input data may include text data, image data, unlabeled document data, or a combination thereof. For example, the input data  150  may include text data of one or more documents, image data of one or more documents, unlabeled document data (e.g., a pdf file with no metadata), or a combination thereof. Additionally or alternatively, the input data may be received from a workbench processor or a document warehouse, and the output may be transmitted to the document warehouse. For example, the workbench processor may include or correspond to the workbench processor  202  of  FIG. 2 , and the document warehouse may include or correspond to the document warehouse  206  of  FIG. 2 . 
     As described above, the method  800  supports summarization of unlabeled documents across multiple predefined document categories with little to no user input. For example, the method  800  may be automated at an electronic device that utilizes specially trained ML models to automatically categorize, annotate, and summarize an input document. Additionally, the method  800  may result in document summaries that are more semantically precise and more readable (e.g., grammatically correct and similar to human-generated text) than document summaries generated by conventional techniques, due to the use of trained ML models that annotate documents based on features extracted from an entirety of the document, instead of within predefined distances of particular words or phrases. At least some of the ML models used to perform the method  800  may be trained using significantly fewer training documents as compared to the large volume of reference documents some conventional systems analyze to improve semantic understanding of documents, which may reduce a memory footprint of a device that perform the method  800  or trains ML models for use in performance of the method  800 . 
     It is noted that other types of devices and functionality may be provided according to aspects of the present disclosure and discussion of specific devices and functionality herein have been provided for purposes of illustration, rather than by way of limitation. It is noted that the operations of the method  800  of  FIG. 8  may be performed in any order, or that operations of one method may be performed during performance of another method. It is also noted that the method  800  of  FIG. 8  may also include other functionality or operations consistent with the description of the operations of the system  100  of  FIG. 1 , the system  200  of  FIG. 2 , the document converter  210  of  FIG. 3 , the examples  400  of  FIG. 4 , the categorizer  214  of  FIG. 5 , the first annotator  306  of  FIG. 6 , the model  700  of  FIG. 7 , or a combination thereof. 
     Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof. 
     Components, the functional blocks, and the modules described herein with respect to  FIGS. 1-8 ) include processors, electronics devices, hardware devices, electronics components, logical circuits, memories, software codes, firmware codes, among other examples, or any combination thereof. In addition, features discussed herein may be implemented via specialized processor circuitry, via executable instructions, or combinations thereof. 
     Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure. Skilled artisans will also readily recognize that the order or combination of components, methods, or interactions that are described herein are merely examples and that the components, methods, or interactions of the various aspects of the present disclosure may be combined or performed in ways other than those illustrated and described herein. 
     The various illustrative logics, logical blocks, modules, circuits, and algorithm processes described in connection with the implementations disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. The interchangeability of hardware and software has been described generally, in terms of functionality, and illustrated in the various illustrative components, blocks, modules, circuits and processes described above. Whether such functionality is implemented in hardware or software depends upon the particular application and design constraints imposed on the overall system. 
     The hardware and data processing apparatus used to implement the various illustrative logics, logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose single- or multi-chip processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, or any conventional processor, controller, microcontroller, or state machine. In some implementations, a processor may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some implementations, particular processes and methods may be performed by circuitry that is specific to a given function. 
     In one or more aspects, the functions described may be implemented in hardware, digital electronic circuitry, computer software, firmware, including the structures disclosed in this specification and their structural equivalents thereof, or any combination thereof. Implementations of the subject matter described in this specification also may be implemented as one or more computer programs, that is one or more modules of computer program instructions, encoded on a computer storage media for execution by, or to control the operation of, data processing apparatus. 
     If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. The processes of a method or algorithm disclosed herein may be implemented in a processor-executable software module which may reside on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that may be enabled to transfer a computer program from one place to another. A storage media may be any available media that may be accessed by a computer. By way of example, and not limitation, such computer-readable media can include random-access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer. Also, any connection may be properly termed a computer-readable medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, hard disk, solid state disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and instructions on a machine readable medium and computer-readable medium, which may be incorporated into a computer program product. 
     Various modifications to the implementations described in this disclosure may be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to some other implementations without departing from the spirit or scope of this disclosure. Thus, the claims are not intended to be limited to the implementations shown herein, but are to be accorded the widest scope consistent with this disclosure, the principles and the novel features disclosed herein. 
     Additionally, a person having ordinary skill in the art will readily appreciate, the terms “upper” and “lower” are sometimes used for ease of describing the figures, and indicate relative positions corresponding to the orientation of the figure on a properly oriented page, and may not reflect the proper orientation of any device as implemented. 
     Certain features that are described in this specification in the context of separate implementations also may be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation also may be implemented in multiple implementations separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination. 
     Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Further, the drawings may schematically depict one more example processes in the form of a flow diagram. However, other operations that are not depicted may be incorporated in the example processes that are schematically illustrated. For example, one or more additional operations may be performed before, after, simultaneously, or between any of the illustrated operations. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the implementations described above should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products. Additionally, some other implementations are within the scope of the following claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve desirable results. 
     As used herein, including in the claims, various terminology is for the purpose of describing particular implementations only and is not intended to be limiting of implementations. For example, as used herein, an ordinal term (e.g., “first,” “second,” “third,” etc.) used to modify an element, such as a structure, a component, an operation, etc., does not by itself indicate any priority or order of the element with respect to another element, but rather merely distinguishes the element from another element having a same name (but for use of the ordinal term). The term “coupled” is defined as connected, although not necessarily directly, and not necessarily mechanically; two items that are “coupled” may be unitary with each other. the term “or,” when used in a list of two or more items, means that any one of the listed items may be employed by itself, or any combination of two or more of the listed items may be employed. For example, if a composition is described as containing components A, B, or C, the composition may contain A alone; B alone; C alone; A and B in combination; A and C in combination; B and C in combination; or A, B, and C in combination. Also, as used herein, including in the claims, “or” as used in a list of items prefaced by “at least one of” indicates a disjunctive list such that, for example, a list of “at least one of A, B, or C” means A or B or C or AB or AC or BC or ABC (that is A and B and C) or any of these in any combination thereof. The term “substantially” is defined as largely but not necessarily wholly what is specified—and includes what is specified; e.g., substantially 90 degrees includes 90 degrees and substantially parallel includes parallel—as understood by a person of ordinary skill in the art. In any disclosed aspect, the term “substantially” may be substituted with “within [a percentage] of” what is specified, where the percentage includes 0.1, 1, 5, and 10 percent; and the term “approximately” may be substituted with “within 10 percent of” what is specified. The phrase “and/or” means and or. 
     Although the aspects of the present disclosure and their advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit of the disclosure as defined by the appended claims. Moreover, the scope of the present application is not intended to be limited to the particular implementations of the process, machine, manufacture, composition of matter, means, methods and processes described in the specification. As one of ordinary skill in the art will readily appreciate from the present disclosure, processes, machines, manufacture, compositions of matter, means, methods, or operations, presently existing or later to be developed that perform substantially the same function or achieve substantially the same result as the corresponding aspects described herein may be utilized according to the present disclosure. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or operations.