Blackboard Linguistic Processing Platform for Multilingual NLP

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional natural language processing systems are cumbersome to maintain, extend, and update, often restricted to handling a single language due to legacy character encodings, and lack flexibility in supporting multiple knowledge sources and linguistic tools, making them inefficient for multilingual processing and updates.

Innovation Solution

A blackboard architecture-based linguistic processing system with an Input Processor, Linguistic Core, and Output Processor, utilizing a shared knowledge repository and autonomous Agents that register and coordinate tasks dynamically, allowing for flexible and extensible processing of multiple languages without recompiling libraries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If hard-coded combinations of processing modules are used, then processing speed is high, but system maintenance and extension become cumbersome

Engineering Contradiction:
Improveprocessing speedVSAvoidsystem maintenance and extension
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system is divided into independent processing modules (tokenizers, taggers, parsers, etc.) that can be individually developed, maintained, and updated. Each module operates as a separate component with well-defined interfaces, allowing the system to maintain high processing speed through optimized modules while enabling easy maintenance and extension of individual components without affecting the entire system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The architecture employs universal data structures and interfaces that allow different processing modules to work together seamlessly. The use of standardized formats for representing linguistic data enables any module to process output from any other module, providing both high processing efficiency and flexibility for system extension and maintenance.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Ease of operation

If very loosely coupled systems operating via files and databases are used, then system extension and configuration become easier, but processing speed decreases due to slow storage media access

Engineering Contradiction:
Improvesystem extension and configurationVSAvoidprocessing speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system introduces in-memory data structures as an intermediary between the flexible configuration layer and the processing modules. These in-memory representations allow modules to access and modify linguistic data rapidly without the overhead of file I/O or database access, thereby maintaining ease of system extension while achieving high processing speed through memory-based data exchange.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If XML systems store data as character strings in memory, then data can be universally represented, but each processing module must parse the string before processing

Engineering Contradiction:
Improveuniversal data representationVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system performs preliminary parsing and conversion of XML data into optimized in-memory data structures before processing begins. This preliminary action ensures that universal data representation is achieved through XML input, while subsequent processing modules work with pre-parsed, efficiently structured in-memory representations, eliminating the need for repeated parsing operations and thereby maintaining both versatility and processing efficiency.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If legacy character encodings are used, then systems can handle specific languages, but they are restricted to one or a small number of languages

Engineering Contradiction:
Improvelanguage-specific processing accuracyVSAvoidmultilingual capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system employs Unicode as a universal character encoding parameter that can represent characters from any language. By changing the encoding parameter from legacy single-byte or multi-byte encodings to Unicode, the system maintains reliable language-specific processing through proper Unicode handling while simultaneously gaining the ability to process text in any language, thereby achieving both reliability and multilingual versatility.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7562009B1Linguistic processing platform, architecture and methods
Publication Date: 2009.07.14 BASIS TECHNOLOGY CORP
  • US7562009B1 patent drawing
  • US7562009B1 patent drawing
  • US7562009B1 patent drawing

AI summary

A system and method for natural language processing comprises a blackboard data structure for providing a shared knowledge repository over which a collection of natural language agents can execute processes on the processable data form, each agent being capable of providing a processing resource usable for serving requests to execute a natural language process on the processable data form, and determining, based on their respective capabilities and examination of the blackboard, what requests for processing they can best serve; and a dispatcher for coordinating the work of registered agents, maintaining a high-level description of tasks to be completed to provide a solution to a given natural language engineering problem, and determining the registered agents that best provide a solution to the given natural language engineering problem.