Language Identification via Character Sequence Probability Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Identifying the language of a data string is challenging due to the ambiguity of hexadecimal byte values, which can correspond to different characters in various character sets, making it difficult to determine the language without additional information, especially when translating or displaying text.

Innovation Solution

A method that divides the data string into coded character sequences for multiple languages, calculates probabilities for each language, compares these probabilities, and uses secondary analysis to identify the most likely language based on statistical information and character set properties, eliminating languages with invalid or unused code points and those with similar probabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If hexadecimal byte values are used to represent text characters, then data can be stored and transmitted efficiently, but the identity of the character and corresponding language cannot be determined without additional information

Engineering Contradiction:
Improvedata storage efficiencyVSAvoidlanguage identification information
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing statistical probability data for character sequences in multiple languages before actual language identification is needed. This allows the system to quickly compare incoming data against pre-computed language profiles without performing complex analysis in real-time, thus recovering language identification information that was lost in the hexadecimal representation.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If character sets are created by different entities with varying code point assignments, then flexibility in character representation is improved, but ambiguity in character identity increases

Engineering Contradiction:
Improvecharacter set flexibilityVSAvoidcharacter identity determination
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent applies parameter changes by transforming the approach from direct character code matching to statistical probability analysis. Instead of trying to determine character identity through fixed code point assignments (which vary across character sets), the system changes the parameter being measured to linguistic probability - analyzing sequences of characters and their likelihood of occurring together in different languages. This statistical approach works across varying character set definitions.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If probability calculations are performed for multiple languages to identify the correct one, then language identification accuracy is improved, but computational complexity increases

Engineering Contradiction:
Improvelanguage identification accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the language identification process into distinct stages: (1) segmenting the input data into character sequences, (2) segmenting the analysis into multiple candidate languages, and (3) segmenting the probability calculation into manageable components using pre-computed statistical data. This segmentation allows the complex problem of multi-language identification to be broken down into simpler, more efficient operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by pre-computing statistical probability data for character sequences in multiple languages and storing these results for quick reference. This eliminates the need to perform complex probability calculations from scratch during language identification, significantly reducing computational complexity while maintaining high accuracy through comparison against pre-analyzed language profiles.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7865355B2Fast text character set recognition
Publication Date: 2011.01.04 SAP SE
  • US7865355B2 patent drawing
  • US7865355B2 patent drawing
  • US7865355B2 patent drawing

AI summary

Methods and apparatus, including computer program products, for identifying a language corresponding to a string of data include receiving a data string and dividing the data string into coded character sequences for each of a plurality of languages. A length of one or more coded character sequences varies among different languages for coded character sequences having a particular number of characters. The coded character sequences are analyzed to calculate, for each of the plurality of languages, a probability that the data string corresponds to language. The calculated probabilities are compared among the languages, and a language is identified as corresponding to the data string based on the comparison.