BRPI0415606B1 - dispositivo de comunicação sem fio e método para efetuar uma avaliação de cadeia integral de palavras compostas - Google Patents
dispositivo de comunicação sem fio e método para efetuar uma avaliação de cadeia integral de palavras compostas Download PDFInfo
- Publication number
- BRPI0415606B1 BRPI0415606B1 BRPI0415606A BRPI0415606A BRPI0415606B1 BR PI0415606 B1 BRPI0415606 B1 BR PI0415606B1 BR PI0415606 A BRPI0415606 A BR PI0415606A BR PI0415606 A BRPI0415606 A BR PI0415606A BR PI0415606 B1 BRPI0415606 B1 BR PI0415606B1
- Authority
- BR
- Brazil
- Prior art keywords
- words
- word
- combinations
- key
- processor
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04B1/40—Circuits
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
- G06F3/0233—Character input methods
- G06F3/0237—Character input methods using prediction or retrieval techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/274—Converting codes to words; Guess-ahead of partial word inputs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/02—Constructional features of telephone sets
- H04M1/23—Construction or mounting of dials or of equivalent devices; Means for facilitating the use thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/70—Details of telephonic subscriber devices methods for entering alphabetical characters, e.g. multi-tap or dictionary disambiguation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Telephone Function (AREA)
- Input From Keyboards Or The Like (AREA)
- User Interface Of Digital Computer (AREA)
- Preparation Of Compounds By Using Micro-Organisms (AREA)
Abstract
"dispositivo de comunicação sem fio e método para efetuar uma avaliação de cadeia integral de palavras compostas". é apresentado um método e dispositivo para gerar palavras compostas significativas. uma interface do usuário (120, 212) é configurada para receber entrada de dados correspondente a um ou mais palavras compostas. um processador (206) é configurado para identificar combinações de palavras de palavras mais curtas que poderão ser combinadas para formar uma parte ou a totalidade de uma ou mais palavras compostas. uma tela (118, 208) é configurada para mostrar as combinações de palavras em uma prioridade com base em um ou mais critérios, como distinguir combinações de palavras tendo diferentes quantidades de palavras mais curtas.
Description
(54) Título: DISPOSITIVO DE COMUNICAÇÃO SEM FIO E MÉTODO PARA EFETUAR UMA AVALIAÇÃO DE CADEIA INTEGRAL DE PALAVRAS COMPOSTAS (51) Int.CI.: H04B 1/38 (30) Prioridade Unionista: 24/10/2003 US 10/692,621 (73) Titular(es): GOOGLE TECHNOLOGY HOLDINGS LLC (72) Inventor(es): EUGENE A. MIRKIN; JENS NAGEL
1/25 • * » ·· · « ·· * • « » « »♦ ♦ » ♦ •» * * • ♦· · ·» »♦ *♦ • · * * * • ·« ·*· · * ··· * « ♦ * · * * * * * * · · „ • » »· «# »*
DISPOSITIVO DE COMUNICAÇÃO SEM FIO E MÉTODO PARA EFETUAR UMA AVALIAÇÃO DE CADEIA INTEGRAL DE PALAVRAS COMPOSTAS
CAMPO DA INVENÇÃO
A presente invenção relaciona»se ao campo dos sistemas 5 de entrada de texto que fornecem processos convenientes e precisos para a entrada de caracteres e de palavras. Mais particularmente, a presente invenção relaciona-se a um sistema de entrada de texto tendo capacidades de formação inteligente de palavras compostas que maximizam a precisão da entrada de texto preditiva.
HISTÓRICO DA INVENÇÃO
Os desenvolvedores de dispositivos eletrônicos portáteis precisam implementar interfaces de usuário contendo um número limitado de teclas. Esses desenvolvedores lutaram com o projeto de interfaces de usuário para a entrada de dados de texto, como caracteres romanos, caracteres fonéticos, caracteres ideográficos, e traços de caracteres ideográficos. Dispositivos eletrônicos portáteis, como o radiotelefone, tipicamente têm apenas doze teclas mais ou menos para entrar com os números n0” a ”9” e os símbolos e É bastante desafiador projetar um dispositivo eletrônico portátil que permite ao usuário entrar com os numerosos caracteres de um idioma particular utilizando o número limitado de teclas em um teclado padrão.
Os atuais sistemas de entrada de texto preditivos defrontam muitos dos desafios da entrada de texto por um teclado padrão. Para a entrada de texto predítiva, o usuário pressiona uma tecla uma vez para cada símbolo, e o sistema prediz o caractere que está sendo entrado pelo
usuário. A entrada de texto preditiva é preferida porque ela requer, em média, menos pressionamentos de teclas para a entrada de cada símbolo. Entretanto, os atuais sistemas de entrada de texto preditivos nem sempre predizem com precisão o texto pretendido pelo usuário. Assim, um sistema de entrada de texto aprimorado com melhor previsibilidade de caractere e de palavra, particularmente palavras compostas, é desejável,
DESCRIÇÃO SUCINTA DOS DESENHOS
A Figura 1 é uma visão em perspectiva de um dispositivo eletrônico portátil exemplar de acordo com a presente invenção.
A Figura 2 é um diagrama de blocos de componentes internos exemplares do dispositivo eletrônico portátil da
Figura 1.
A Figura 3 é um diagrama exemplar que ilustra a operação de um procedimento de combinações de previsão que poderá ser executado pelos componentes internos da Figura .
A Figura 4 é um diagrama de pseudocódígo de um procedimento de combinações de previsão que poderá ser executado pelos componentes internos da Figura 2.
A Figura 5 é um diagrama de pseudocódígo de um procedimento de deslocamento que poderá ser chamado pelo procedimento de combinações de previsão da Figura 4,
A Figura 6 é um diagrama de pseudocódígo de um procedimento de combinações de comparação que poderão ser executados pelos componentes internos da Figura 2.
A Figura 7 é uma lista de palavras que representam uma comparação das combinações de palavras exemplar com base na
Figura 4.
A Figura 3 é uma tabela de palavras que representa outra comparação de combinações de palavras exemplar com base na Figura 4,
DESCRIÇÃO DETALHADA DAS VERSÕES PREFERIDAS
A presente invenção é uma interface de usuário de um dispositivo eletrônico portátil que fornece a entrada de dados de caracteres fonéticos e ideográficos bem como os traços de caracteres ideográficos e, assim aplica-se a qualquer idioma tendo letras, caracteres e/ou palavras. As versões preferidas, como é mostrado nos desenhos e aqui descritas, são dirigidas a um radiotelefone para comunicação sem fio de voz e/ou sinais de dados e fornece a entrada de dados de caracteres romanos, fonéticos e ideográficos. No entanto, deve-se compreender que a presente invenção poderá ser utilizada para qualquer tipo de dispositivo eletrônico, tal como, mas sem a eles se limitar, dispositivos de radiochamada, computadores, dispositivos de mão, assistentes digitais pessoais, e assemelhados.
Com referência à Figura 1, é mostrado um dispositivo eletrônico portátil dobrável 100 dotado de uma seção superior 110 e uma seção inferior 112 movimentadamente unido em uma seção de junção 114. A seção superior 110 inclui uma abertura de peça de ouvido 116 e uma tela 118, a seção inferior 112 inclui uma interface do usuário 120, uma abertura de microfone 122, e um indicador visual 124. O dispositivo 100 também inclui outros componentes de um radiotelefone (mostrado na Figura 2) conforme descrito abaixo, como uma antena, fonte de energia, conectores
···· ** • · »
* 9
9
199 99 ♦
* ♦♦ » ·
4/25 «· «9 9 9 j • ♦ · ♦ h · * « · » · * * * · externos, controles adicionais, e assemelhados.
A interface de usuário 120 da presente invenção inclui teclas de função 126 e teclado 128. Para o dispositivo 100 mostrado na Figura 1, as teclas de função 12 6 estão localizadas na parte superior da seção inferior 112 e incluem teclas de seleção de menu 130, 132, 134, teclas direcionais 136 (isto é, para cima, para baixo, para a esquerda e para a direita), uma tecla de recuperação de mensagem 13 8, uma tecla de memória 140, uma tecla de resposta à chamada 142, uma tecla de limpeza de função 144, e uma tecla de terminação de chamada 14 6. As teclas de função 126 da presente invenção não são limitadas àqueles fornecidas para o dispositivo 100 e poderão incluir outros botões de controle programados ou programãveis pelo usuário como as teclas de controle de volume, teclas de gravação da voz, controle de montagem do dispositivo, e assemelhados.
teclado 128 do dispositivo 100 está localizado em uma parte inferior da seção inferior e inclui dez teclas numéricas, a saber as teclas 1 a 9n e 0” bem como uma tecla e uma tecla ’*#” para um total de 12 teclas. Como é mostrado na Figura 1, o teclado compreende uma matriz de quatro linhas em que cada linha inclui três teclas, similar a um teclado telefônico típico. Embora não seja mostrado na Figura 1, o teclado 128 também poderá ser utilizado para entrar com outros tipos de símbolos, como os caracteres romanos, caracteres fonéticos, caracteres ideográfícos, e traços de caracteres. Por exemplo, um conjunto típico de teclas no teclado poderá associar os caracteres A, B, C e 2 com a tecla 2; D, E, F e 3 com a tecla 3; G, Η, I e 4 com a tecla 4; J, K, L e 5 com a tecla 5; Μ, N, O e 6 com a tecla
• ·· » **
5/25 ί*’
♦ ♦ β; Pf Q/ Rf S e 7 com a tecla 7; T, U, V e 8 com a tecla 8;
e W, X, Y, Z e 9 com a tecla 9. Assim, cada tecla poderá ser utilizada para entrar com um número ou caractere, dependendo do modo de entrada do dispositivo. Por exemplo, o modo de entrada do dispositivo poderá ser determinado
| pela seleção de | uma | ou mais teclas de | função, | como | as |
| teclas de seleção | de | menu 130, 132, 134. | |||
| A tela 118 | do | dispositivo fornece | vários | tipos | de |
| informação para | o | usuário. Certos | indicadores | são |
fornecidos para a operação geral do dispositivo, como o indicador de potência de sinal 156 e o indicador de energia 160 do dispositivo 100. Outros indicadores são fornecidos para a operação das teclas de seleção do menu 130, 132, 134 das teclas de função. Por exemplo, como ê mostrado pelo dispositivo 100 na Figura 1, há três teclas de seleção de menu 130, 132, 134 fornecidas no topo da parte superior da seção inferior 112. Outrossim, uma área de botão da tela 118 é reservada para um a três indicadores de seleção de menu 162, 164, 166 que correspondem a um ou mais das teclas de seleção do menu 130, 132, 134.
Com referência à Figura 2, são mostrados os componentes internos 200 do dispositivo eletrônico portátil 100. A versão preferida inclui uma antena 202; um transceptor 204; um processador 206; dispositivos de saída 2 08, 210; e dispositivos de entrada 212, 214. Quando da recepção de sinais sem fio, os componentes internos 200 detectam os sinais através da antena 202 para produzir voz detectada e/ou sinais de dados. O transceptor 204, acoplado à antena 202, converte os sinais detectados em sinais de banda base elétricos e demodula os sinais de banda base «·* · ·»
6/25 • · • ♦ ·
Λ · · · * • · * * elétricos para recuperar informação de entrada, como a voz e/ou os dados, transmitidos pelos sinais sem fio, Após receber a informação de entrada do transceptor 204, o processador 206 formata a informação de entrada para saída para os dispositivos de saída 208, 210, Da mesma forma, para a transmissão de sinais sem fio, o processador 206 formata a informação de saída e a transmite para o transceptor 204 para modulação de uma portadora e conversão em sinais modulados. O transceptor 204 transmite os sinais modulados para a antena 202 para transmissão para um transceptor remoto {não mostrado).
Os dispositivos de entrada e de saída poderão incluir uma variedade de dispositivos visuais, de áudio e/ou de movimento. Os dispositivos de saída poderão incluir, sem a eles se limitar, saídas visuais 208 (como telas de cristal líquido e indicadores de diodo emissor de luz), saídas de áudio 210 (como alto falantes, alarmes e campainhas), e saídas de movimento (como mecanismos de vibração). Os dispositivos de entrada poderão incluir, sem a eles se limitar, entradas mecânicas 212 (como teclados, almofadas de teclas, botões de seleção, almofadas de toque, sensores capacitivos, sensores de movimento, e comutadores), e entradas de áudio 214 (como microfones) . Por exemplo, as seções superior e/ou inferior 112, 114 do dispositivo 100 poderão incluir um comutador que reage ao movimento das seções em relação uma a outra e atua uma ou mais funções do dispositivo como resultado.
Os componentes internos 200 do dispositivo eletrônico portátil 100 ainda incluem uma parte de memória 216 para armazenar e recuperar dados. O processador 206 poderá
*«·* ♦ *
7/25
··· • « ♦ ** · » ♦ * « » * ♦ ♦ • · · ·»» »·· · • · · * • ♦ * · · ·· ·* «» efetuar varias operações para armazenar, manipular e recuperar informação na parte da memória 216. Por exemplo, o processador 206 poderá pesquisar a memória 226 por dados armazenados anteriormente ao entrar com elementos de busca ou símbolos dos dispositivos do usuário 212, 214. Durante a busca, o processador 206 compara os dados armazenados com os elementos de busca ou símbolos entrados. Se um ou mais casamentos são encontrados, os dados casados são fornecidos para os dispositivos de saída 208, 210 ou ainda processado pelo processador 206. Para as versões preferidas, à parte da memória 216 armazena uma base de dados ou dicionário 218 de palavras ou símbolos que são consideradas como sendo palavras completas ou caracteres por eles próprios. Além disso, pelo menos algumas das palavras ou símbolos da base de dados 218 poderão ser combinadas para formar combinações de palavras que são consideradas como sendo palavras completas ou caracteres. Assim, uma palavra ou caractere poderá ser formada quer por encontrá-la na base de dados 218 ou combinar duas ou mais palavras ou símbolos, isto é,
0 duas ou mais palavras mais curtas formam uma palavra mais longa. 0 processador 206 poderá consultar a base de dados 218 quando prever as palavras ou caracteres desejados pelo usuário com base na entrada recebida na interface do usuário 120.
Os componentes internos 200 do dispositivo eletrônico portátil 100 poderão ainda incluir uma interface de componente 220 e uma fonte de energia 222. Acessórios e componentes adicionais poderão ser acoplados à interface de componente 220 para fornecer funcionalidade e capacidades adicionais ao dispositivo 100. A fonte de energia 222
* * * * * »· · . «···* • » ·· ** fornece energia para os componentes internos 200 de modo que eles poderão funcionar corretamente, como uma bateria.
Com referência à Figura 3, é fornecido um diagrama exemplar 300 que ilustra a operação de um procedimento de combinação de previsão 400 de acordo com a presente invenção. 0 diagrama de arvore exemplar 300 inclui uma pluralidade de nós (por exemplo, nós 3 02 a 340} conectados por vértices. Os nós pretos, por exemplo, os nós 308, 314,
322, 328, 336, 340 do diagrama de árvore exemplar 300 marca o término de palavras completas. Cada vértice tem uma probabilidade ou pontuação a ele associado. O nõ 302 à esquerda do diagrama 300 marca o primeiro nõ da árvore e, ao seguir os vértices para progredir pela árvore, as combinações previstas são identificáveis.
0 diagrama de árvore exemplar ilustra como o procedimento de combinação de previsão 400 poderá produzir uma pluralidade de combinações previstas de um certo conjunto de entradas na interface do usuário 120. Por exemplo, como é representado pela Figura 3, o procedimento de combinação de previsão 400 poderá gerar as seguintes combinações previstas de um único conjunto de entradas: ask seguido dos nós 3 02, 3 04, 3 06 e 308; aside seguido dos nós 302, 304, 306, 310, 312 e 314; park seguido dos nós 302, 316, 318, 320 e 322; parking” seguido dos nós
302, 316, 318, 320, 322, 324, 326 e 328; bali seguido dos nós 302, 330, 332, 334 e 336; e ballet seguido dos nós
302, 330, 332, 334, 336, 338 e 340. O diagrama de árvore exemplar mostrado na Figura 3 representa um exemplo em que o usuário seleciona a tecla 7 seguido da tecla 112 como a parte inicial de uma entrada. Como foi descrito acima, a »·* ** · « · * · • * » * * « * « »*·* • * « * *·» ♦· *
9/25;·· *♦« »»*« »# ·· » » * * ♦ * ♦ ·«» « ♦ *** ♦ · · * * * » · « · » ♦ · «* ·♦ ·« ·* tecla n7’1 poderá corresponder aos caracteres ”pR, «q, r, s ou 7” e a tecla 2 poderá corresponder aos caracteres a, Hb”, Hc”, ou ”2lf. 0 procedimento de combinação de previsão 400, por exemplo, poderá identificar as seis combinações representados pela Figura 3, isto é, ”askI!, aside”, park’1, parking, Tíball e ballet, com base na entrada recebida. Deve-se observar que, para este exemplo, apenas duas dessas combinações, a saber park e parking, efetivamente incluem um caractere que corresponde à tecla 'q”; as combinações restantes começam com caracteres correspondentes a tecla 2. Como é representado pelo laço 342, o procedimento de combinação de previsão 400 poderá tentar identificar combinações começadas com a primeira
| tecla, por | exemplo, a tecla 7, | e também tentar | ||
| identificar | combinações | começadas | com uma tecla | |
| subsequente, | por exemplo, | a tecla | ”211 . Assim, | o |
| procedimento | de combinação | de previsão | 400 ê capaz | de |
| considerar e | identificar | combinações | de palavras | que |
compõem uma parte de uma entrada bem como a entrada em sua totalidade.
Com referência à Figura 4, é fornecido um diagrama de pseudocõdigo de um procedimento de combinação de previsão 400. Em particular, o determinismo poderá ser maximizado para um modelo computacional, como o modelo de automata finito mostrado na Figura. 0 modelo computacional é uma função que utiliza variáveis e funções, incluindo, sem a eles se limitar, um conjunto de estados, um alfabeto de uma base de dados, uma variável currentState, um conjunto de estados terminais, e uma função de transição. O conjunto de estados poderá incluir todas as previsões potenciais na
10/25:-;
··* «
•»· ·· * * ♦ *« * » *» * • ► »··♦» « t « * ««« ♦» » « ·*·» ·» *» ** »· · * * · * » «·«, »♦» · * *·* » · « * » ** * • · #» » · · * * ·*· ·· #* ** >* forma de vias e suas junções, como o ponto inicial. O alfabeto da base de dados inclui todos os caracteres disponíveis para um idioma particular ou tipo de idioma. A variável currentstate inclui todos os novos estados e todos os estados reiniciados do conjunto de estados. 0 conjunto de estados terminais é um subconjunto do conjunto de estados e inclui pontos terminais das vias. A função de transição define como o procedimento de previsão 400 comuta entre dois estados consecutivos e é preferivelmente uma função do conjunto de estados e do alfabeto da base de dados.
O procedimento de previsão 400 incluí uma função de transição desambígua que fornece andamento à frente bem como reinicio condicional em cada ponto. Ao fazê-lo, o procedimento de previsão 400 permite a criação de palavras compostas, isto é, novas palavras com base em palavras existentes em uma base de dados. Uma vez identif içadas novas palavras, elas são consideradas juntamente com as palavras existentes para análise futura.
Como é mostrado na Figura 4, o procedimento de previsão 400 inicia sua busca de combinações de palavra na linha 402, em que a informação do dicionário e uma dada entrada são utilizados pelo procedimento. Como foi descrito acima, a informação do dicionário poderá ser armazenada na base de dados 218 e a entrada poderá ser recebida como uma sequência de teclas virtuais da interface do usuário 120. 0 procedimento de previsão 4 00 poderá ser executado por um circuito eletrônico que inclui um processador, memória e interface do usuário, como o processador 206, os dispositivos de entrada 212 e a parte da memória 216 » · * ·»·♦ « · »Λ«# ·♦ ·« <·· « · » ♦ · »«* ««· · *··· * · · · · « ' < « » ♦ · · · * «« ·♦ 4· »» mostrados na Figura 2, 0 procedimento de previsão 400 começa ao inicializar certas variáveis nas linhas 404 a 414. Por exemplo, o processador 206 fixa as variáveis currentState a uma raiz do dicionário na linha 404, fixa TimesReset e Score em zero nas linhas 40 6 e 40 8, fixa a Character String para um valor vazio na linha 410, indica que o nó atual é o nó inicial na linha 412, e fixa a variável i em seu valor inicial (em preparo de um laço subsequente), que poderão ser armazenados na parte da memória 216.
O procedimento de previsão 400 então desloca seqüencialmente através de estados de entrada, conforme representado por uma função de primeiro laço com base no comprimento da entrada na linha 416 e as etapas abrangidas pelo primeiro laço, isto é, as linhas 416 a 426. Por exemplo, como é representado na Figura 4, o primeiro laço ê executado para cada caractere ou símbolo da entrada recebida. A seguir, a Allowed Transitions é fixada a um mapeamento resolvido da entrada atual na linha 418. Por exemplo, para as teclas de entrada de dados tendo caracteres romanos, a tecla 2 poderá ser mapeada para as letras A, B e C bem como o número 2. 0 mapeamento irá variar de um idioma para outro e de um dispositivo para outro com base no número de caracteres ou símbolos a serem mapeados e o número de possibilidades de entrada disponíveis na interface do usuário. As hipóteses são fixadas em zero para inicializar os nós de destino na linha 420. Todas as variáveis acima poderão ser armazenadas na parte da memória 216 pelo processador 206.
estado ê basicamente uma posição dentro de uma
12/25
* * * * · » » * * * • · »♦ « * • · « « * * « · ·♦ ** « palavra. Assim, a raiz do dicionário é uma posição em cada palavra tal que todos os caracteres da palavra vêm a *
seguir. Ao explorarmos transições em cada iteração do laço 416 (TIinput11) f deslocamos este sinalizador de posição para frente. Seguir uma transição de caractere de um estado para * outro significa avançar de uma posição para outra se o caractere seguinte casa com aquele da ação de transição.
Dentro do primeiro laço representado pela linha 416, há um segundo laço representado pela linha 422. Para este 10 segundo laço, o procedimento de previsão 400 desloca seqüencialmente através de todos os estados armazenados na variável startNodes com base no comprimento desses estados, conforme representado pela linha 422 e as etapas abrangidas pelo segundo laço, isto é, as linhas 424 a 434. Por exemplo, como é representado na Figura 4, o segundo laço é
| executado | para | cada estado | armazenado na | variável |
| startNodes. | Dai | em diante, o | procedimento de | previsão |
| executa com | base | em certos parâmetros. |
Com referência à Figura 5, é fornecido um diagrama de pseudocódigo de uma função de transição exemplar 500, como o procedimento de desligamento, que poderá ser chamado pela linha 424 (e, como descrito abaixo, a linha 434) do procedimento de combinação de previsão da Figura 4. Como representado pela linha 502, a função de transição 500 requer dois parâmetros, a saber, uma variável currentState, isto é, startNode, que está disponível e um caractere na entrada mapeado a uma tecla correspondente, isto é, allowedTransitions, para fixar New States. Assim, cada vez que a função de transição 500 é executada, uma pluralidade de novos caracteres ou símbolos tornam possível acréscimos
* » * ♦ • ·*»·♦ ♦ · * ao final das variáveis currentState. A função de transição 500 também inicializa uma variável para acompanhar novos nós na linha 504. Dai em diante, a função de transição 500 executa um laço para processar novos nós. Em particular, a função de transição 500 executa o laço para cada caractere de alloweTransítions na linha 50 8. Isto não é apenas uma localização temporária mas um nó temporário (que é acrescentado a novos nós na etapa 516) . A função de transição 500 então identifica um novo nó com base no vértice alcançado de um startNode ao seguir uma borda direcionada do caractere atual ou entrada na linha 508. A seguir, a função de transição 500 armazena o valor tímesReset e o valor de pontuação do startNode nas localizações temporárias nas linhas 510 e 512 para manter esses valores antigos. A função de transição 500 então concatena a cadeia antiga com a borda na linha 514. Dai em diante, o nó é acrescentado aos resultados na linha 516. Finalmente, os nós recém processados são retornados ao procedimento de previsão 400 na linha 518.
Retornando à Figura 4, o procedimento de previsão 4 00 determina se os subestados atualmente considerados incluem uma palavra completa na linha 426. Esta verificação é efetuada para determinar se faz sentido refixar o estado inicial atual. Por exemplo, o processador 206 poderá comparar os subestados da variável starfcNodes para a base de dados 218 da parte da memória 216 para determinar se quaisquer casamentos ocorrem. Se ocorrerem, o procedimento de previsão 400 também inclui hipóteses não determinísticas. Assim, o procedimento de previsão 400 prepara para reiniciar a hipótese ao fixar um nó atual para
* «
14/25
··· ♦♦· ·# »* * uma raiz do dicionário na linha 428, fixando uma variável de cadeia temporária na linha 429, e incrementa uma variável TimesReset para acompanhar o número de vezes que uma palavra completa é identificada para uma via particular analisada para a entrada na linha 430. O procedimento de φ previsão 400 então classifica a parte completa antes de reiniciar ao acrescentar um grau associado ao nõ a uma pontuação para a combinação atual na linha 432. Vários métodos de ponderar os sufoestados poderão ser aplicadas, como a probabilidade de ocorrência com base na freqüência de utilização. Além de ponderar o subestado particular que está sendo considerado, o procedimento de previsão 3 00 também calcularia uma pontuação combinada para este subestado com qualquer outro subestado anteriormente identificado, se houver, para a entrada atualmente considerada. A seguir, o procedimento de previsão 400 utiliza a função de transição para determinar os estados reiniciados tendo em vista a palavra completa recém descoberta na linha 434. A seguir, o procedimento de previsão 400 armazena todas as hipóteses geradas na linha 436 de modo que elas poderão ser utilizadas para as etapas subsequentes. Dai em diante, o laço da linha 422 continua até todas as possibilidades terem sido consideradas. Caso contrário, se uma palavra completa não é identificada na linha 426, então o procedimento de previsão 400 desloca para o tamanho seguinte de subestados ao retornar à linha 422 e determinar se esses subestados de tamanho incrementalmente maiores incluem uma palavra completa na linha 426 de novo.
Finalmente, as novas variáveis currentState são
Η
15/25:*** * ·,· , ··♦· * * ♦: :***-* • «· » * *«* «»· · · * , , ·** *♦ ·* *· ** compiladas em uma lista de variáveis currentState para processamento em um estágio posterior, conforme descrito abaixo. O procedimento de previsão 400 continua a identificar e processar palavras completas, através do laço 426, até todas as possíveis combinações de palavra para cada via possível, através do laço 416, da entrada foram revistas e uma lista completa de variáveis currentState é criada. O procedimento de previsão 400 então pondera todos os resultados após processar todas as teclas virtuais nas linhas 438 e 440. Fínalmente, o procedimento de previsão 400 retorna todas as cadeias acumuladas e termina na linha 442. Deve-se observar que, para outra versão, o procedimento de previsão 400 poderá limitar ou de outra forma ajustar o número de hipóteses tornados disponíveis para estágios subsequentes para impedir uma explosão exponencial da quantidade de hipóteses. Essa limitação ou ajustamento poderá ter por base as capacidades de processamento do dispositivo que utiliza este procedimento de previsão 400.
A operação geral do procedimento de previsão 400 poderá ser explicada conforme segue. Um casamento particular ou combinação conhecida é encontrado ao percorrer uma via de dicionário por toda uma sequência de caracteres inteira. 0 casamento falha para um casamento particular se uma transição não está disponível para o casamento. Outros casamentos poderão ser bem sucedidos, pois cada tecla poderá ser mapeada a vários caracteres, por exemplo, a tecla 2 ê mapeada para os caracteres A, B, C, e 2. Por exemplo, para a combinação de teclas 2-2-7 entrada pelo usuário, ca é uma das combinações após processar as » * • a
16/25
♦ * • · « • »»»* a
« • · · *
•·*« ** * • »* primeiras duas entradas de teclas. A maquina então explora a terceira entrada de tecla, isto é, 7, ao analisar todas as transições mapeadas para este caractere, como p, g, r”, físfI e ,f7H . No processo, a maquina poderá identificar uma ou mais palavras. Para o exemplo acima, a máquina poderá identificar as palavras car , ”cap e ,fcar.
Deve ser compreendido que os últimos caracteres não necessariamente indicam o último caractere de uma palavra. Por outro lado, a máquina é capaz de eliminar certas combinações com base na probabilidade de formar uma combinação conhecida. Por exemplo, a probabilidade de encontrar um casamento para qualquer palavra começando com »caqn é baixa, de modo que a máquina poderá descartar esta possibilidade.
Com referência à Figura 6, é fornecido um diagrama de pseudocõdigo de um procedimento de combinação de comparação 600. Em particular, este procedimento de comparação 600 analisa duas ou mais variáveis currentState da lista de variáveis currentState, criada pelo procedimento de previsão 400 mostrado na Figura 4, e prioriza as variáveis currentState com base em um ou mais critérios. Por exemplo, o procedimento de comparação 600 representado pela Figura 6 prioriza duas ou mais variáveis currentState com base no número de palavras combinadas para formar cada combinação de palavra, se cada combinação de palavra está completa, e pontuações associadas a cada combinação de palavras. 0 procedimento de comparação 600 inclui, sem a eles se limitar, os critérios representados pela Figura 6. Outrossim, se múltiplos critérios são utilizados, os próprios critérios poderão ser priorizados de modo que
17/25*** « * * « «♦** • * * * * * « Τ ·♦ ·♦
• ♦ · * · * • · · » • * »·»· * * * • ** * alguns critérios pesam mais pesadamente na decisão final do que outros critérios.
Na Figura 6, o procedimento de comparação 600 começa ao identificar duas variáveis currentState, isto é, estado ”a” e estado b, da lista de variáveis currentState. O procedimento de comparação 600 determina se os dois estados têm o mesmo número de TimeReset na linha 602. Em outras palavras, a combinação de palavras do estado a é comparada com a combinação de palavras do estado ”b” para determinar se elas incluem o mesmo numero de palavras menores.
Se os dois estados têm um número diferente de TimesReset, então o procedimento de comparação 600 determina qual estado tem o número menor de TimesReset na linha 604, assim o número menor de palavras menores e ê mais provável que seja a combinação de palavras desejada pelo usuário. Por exemplo, se o número de palavras menores do estado a1’ é menor que o número de palavras menores do estado b, então o procedimento de comparação 600 determina que o estado na” deve ter uma prioridade mais alta que o estado b na linha 604, Assim, a hipótese ''estado 'a1 e melhor que estado 'bi(t retorna um resultado TRUE, e o procedimento de comparação 600 termina. Por outro lado, para este exemplo, se o número de palavras menores do estado “a não é inferior ao número de palavras menores do estado na linha 604, então o procedimento de comparação 600 determina que o estado nb” deve ter uma prioridade mais alta que o estado a. Em outras palavras, a hipótese estado 'a' é melhor que estado 'bIIf retorna um resultado FALSE, e o procedimento de comparação 600 termina.
·« ·* • »· • ♦ · * · «· * * »
18/25 •» ·«· ·* · • * * * * * « *» * « β «»·»· ♦ · * * *«» «* » *»»» «· » · ««« »»» »· * »* ** ··
Na linha 602t se os dois estados têm o mesmo número de TimesReset, então outros critérios precisam ser utilizados para determinar qual estado deve ter prioridade mais alta. Em tal caso, o procedimento de comparação 600 desloca para a linha 606 para determinar se o final da entrada foi alcançado, pois palavras completas são preferidas. Se for, o procedimento de comparação 600 determina se os dois estados produzem resultados similares quando analisados por inteireza nas linhas 608 a 612, Em particular, o procedimento de comparação 600 determina se o estado a11 esta completo na linha 608; o resultado é TRUE se o estado rfan esta completo, FALSE se o estado ”an não esta completo. 0 procedimento de comparação 600 então determina se o estado b” esta completo na linha 610; o resultado é TRUE se o estado b está completo, FALSE se o estado nb” não esta completo. Outrossim, na linha 610, o procedimento de comparação determina se os estados a” e b geraram o mesmo resultado para a inteireza. Se o estado a é uma combinação de palavras em sua inteireza e o estado nb1T não é uma combinação de palavras em sua inteireza, ou vice versa, então o resultado para determinar a inteireza do estado Ha” é o resultado final na linha 612; TRUE se o estado a” esta completo mas o estado Hbtf não esta completo, FALSE se o estado a” não esta completo mas o estado na” esta completo. O procedimento de comparação 600 determina qual estado é uma combinação de palavras em sua inteireza e, assim, tem maior probabilidade de ser a combinação de palavra desejada pelo usuário. Dai em diante, o procedimento de comparação 600 termina,
Se, por outro lado, tanto o estado a” como o estado
19/25*.
,rb” são combinações de palavras em sua inteireza ou nem o estado rtaff nem o estado b é uma combinação de palavras em sua inteireza, então outros critérios precisam ser utilizados para determinar qual estado deve ter prioridade mais alta. Assim, o procedimento de comparação 500 passa para a linha 614 para determinar qual estado está associado a uma pontuação mais alta. Para esta etapa, qualquer tipo de método para pontuar ou ponderar subestados poderá ser aplicado, como a probabilidade de ocorrência com base em frequência histórica. Se o estado a” tem uma pontuação mais alta do que o estado (Eb1f, então o procedimento de comparação 600 determina que o estado Ha,! deve ter uma prioridade mais alta que o estado b11. Se a pontuação para o estado ”a’f é diferente de uma pontuação para o estado ”b na linha 614, então o procedimento de comparação 600 determina se a pontuação para a é mais alta que a pontuação para b. Se a hipótese ”estado 'a' é melhor que estado 'br,f é verdadeira, então o procedimento de comparação 600 retorna um resultado TRUE. Por outro lado, para este exemplo, se o estado a” não tem uma pontuação mais alta que o estado nb’f, então a hipótese ”estado Taf ê melhor que estado ’b,H retorna um resultado FALSE. Dai em diante, o procedimento de comparação 400 termina. Para a versão preferida, o procedimento de comparação 400, como é mostrado na Figura 6 e descrito acima, é executado pelo processador 206 e utiliza a parte de memória 216.
Deve-se observar que os últimos critérios a serem considerados pelo procedimento de comparação 600 poderão não determinar com clareza o melhor estado, isto é, o estado com prioridade mais alta. Por exemplo, para o
5%
20/2« β *
*» * • · · • * « »* * * * «· ·«· »»# ♦ « »* exemplo mostrado na Figura 6, a pontuação do estado I!art poderá ser igual à pontuação do estado »bH e, assim, o estado a e o estado 11 a11 são iguais com base em todos os critérios considerados pelo procedimento de comparação 400. Em tal caso, uma decisão predefinida poderá ser predeterminada para efetuar a priorização. Por exemplo, como é mostrado na Figura 6, se a pontuação do estado a é igual à pontuação do estado b na linha 614, então por definição o estado a é considerado como tendo prioridade mais alta do que o estado Kb e a hipótese estado ’a’ e melhor que estado rb,M retorna um resultado TRUE na linha
616.
Com referência às Figuras 7 e 8, são fornecidas uma lista de palavras e uma tabela de palavras que representam uma comparação de combinações de palavras exemplar, A lista de palavras da Figura 7 e a tabela de palavras da Figura 8 são aqui apresentadas como exemplos para mais descrever as capacidades dos componentes e dos procedimentos mostrados nas Figuras 1 a 6 e descritos acima. Assim, os elementos específicos mostrados nas Figuras 7 e 8 e descritos doravante não devem ser utilizados para limitar o escopo da presente invenção.
A Figura 7 exemplifica uma avaliação de cadeia inteira que poderá ser efetuada ao utilizar a presente invenção. A avaliação de cadeia inteira analisa uma seqüência de tecla virtual inteira ou cadeia após cada seleção de tecla da interface do usuário 120. A avaliação de cadeia inteira segmenta a cadeia em subcadeias possíveis que casam entradas na base de dados 218 e os pondera de acordo com sua probabilidade. Com base em um ou mais critérios, as
combinações de cadeia são priorizadas. Por exemplo, a combinação de cadeia tendo os segmentos completos menores e/ou a probabilidade combinada mais alta poderão ser selecionados como a melhor escolha ou seleção.
Para o exemplo mostrado na Figura 7, ê suposto que as seleções de tecla foram entradas na interface do usuário 120 em uma ordem particular, a saber 2-2-5-5-7-3-7-5, conforme representado pela parte superior 702-716 da Figura. Cada uma de uma primeira tecla 702, uma segunda tecla 704 e uma sexta tecla 712 representa os caracteres A, B, C e 2; cada uma de uma terceira tecla, uma quarta tecla e uma oitava tecla representa os caracteres J, K. L e 5; e cada uma de uma quinta tecla e uma sétima tecla representa os caracteres P, Q, R, S e 7. Quatro combinações de palavras possíveis também são mostradas na Figura 7, a saber callsask 718, 720; ballpark 722, 724; allpar 728, 730; e ballsark 734, 736. A primeira combinação de palavra possível inclui as palavras menores calls 718 e ”ask 720, a segunda combinação de palavra possível inclui as palavras menores bali” e Kpark” 724, a terceira combinação de palavra possível inclui as palavras menores ali 728 e par 730, e a quarta combinação de palavra possível inclui as palavras menores balis 734 e ask” 736, A presente invenção poderá priorizar essas combinações de palavras possíveis ao selecionar a segmentação mais provável conforme indicado pela área resultante 738,
Se o procedimento de combinação de comparação 60 0 da
Figura 6 é utilizado para analisar essas combinações de palavras possíveis, as variáveis currentState que incluem combinações de palavra seriam comparadas duas de cada vez,
22fá$ * * * · * * * «♦··· • ··# *♦ * * •·» ♦·· * * • * * • «« ·* ·· ·* • · · • · **· ♦ ♦ · · • »· · ·· * * começando no topo da lista. Enquanto a variável currentstate anterior tiver uma prioridade mais alta que uma variável currentstate posterior, a ordem da lista não muda e o procedimento de comparação 600 continua a deslocar lista abaixo. Se uma variável currentstate posterior tem uma prioridade mais alta que uma variável currentstate anterior, então a ordem dos dois estados é invertida e a variável currentstate com a prioridade mais alta continua a deslocar lista acima até ela ser comparada com outra variável currentstate tendo uma prioridade ainda mais alta. Então, a operação retorna para o ponto em que as variáveis currentstate analisadas encontram variáveis currentstate não analisadas e continua a comparar estados dois de cada vez. Esta operação continua até a lista inteira ter sido analisada e ordenada.
Por exemplo, o procedimento de comparação 600 poderá comparar a primeira combinação de palavra possível 718, 720 com a segunda combinação de palavra possível 722, 724 e determinar que os TimesReset são iguais e a inteireza de cada variável currentstate é igual. No entanto, a segunda combinação de palavra possível 722, 724 poderá receber uma prioridade mais alta que a primeira combinação de palavra possível 718, 720 com base na probabilidade de ocorrência e, assim, a ordem dessas combinações poderá ser invertida. A seguir, o procedimento de comparação 600 poderá comparar a primeira combinação de palavra possível 718, 720 com a terceira combinação de palavra possível 728, 730 e determinar que os TimesReset são iguais. No entanto, o procedimento de comparação 600 poderá considerar a variável currentstate da primeira combinação de palavra possível
• ·
23/.2¾ ·
* * • *»» « · ♦ • » · ·· . 718, 720 como sendo uma combinação de palavra em sua inteireza, mas ele poderá considerar a variável currentstate da terceira combinação de palavra possível 728, 730 como sendo de outra forma pois a variável currentstate inclui pelo menos um caractere adicional, isto > · é, o caractere a 726 e o caractere o” 732. Assim, a ordem da primeira combinação de palavra possível 718, 720 e a terceira combinação de palavra possível 728, 730 não mudaria. Dai em diante, a terceira combinação de palavra possível 728, 730 seria comparada com a combinação de palavra possível.
A Figura 8 exemplifica a determinação da ordem de ordenação com base na estrutura ortográfica dos resultados. A tabela de palavras da Figura 8 inclui colunas para combinações de palavras possíveis 802, constituintes ou palavras menores segmentadas 804, pontuação 806 para a combinação de palavra correspondente, classificação 808 da combinação de palavra correspondente, razão 810 para a colocação de prioridade para a combinação de palavra correspondente, e um dicionário amostra 812 para armazenar palavras menores. As combinações de palavras possíveis 802 *
poderão ser entrada recebida na entrada do usuário 120. Os constituintes e a pontuação poderão ser determinados por um procedimento de previsão, como o procedimento de previsão
400 mostrado na Figura 4. Para uma versão, a pontuação para cada combinação de palavras é determinada ao determinar uma pontuação para cada palavra mais curta da combinação de palavras e combinar as pontuações de todas as palavras mais curtas da combinação de palavras. A pontuação para cada palavra mais curta poderá ser determinada pela
24/.2^ · * « ·· ·
probabilidade ou algum outro método de avaliação. A classificação ou prioridade poderá ser determinada por um procedimento de comparação, como o procedimento de comparação mostrado na Figura 6. O dicionário de amostra poderá ser um equivalente possível da base de dados 218 rf armazenada na parte da memória 216.
Os procedimentos aqui descritos são preferivelmente *
projetados para dicionários estáticos, isto é, bases de dados em que a informação e suas propriedades como a frequência permanecem inalteradas e os ajustes de preferência para o aprendizado dinâmico também podem ser considerados. Em qualquer ocasião, uma seleção poderá ser feita entre dois ou mais resultados e os procedimentos poderão subdividir decisões em vários estágios. Primeiro, os procedimentos consideram quão bem a palavra gerada ou seqüência de palavras poderão se adequar a um idioma particular. Se um dos resultados comparados é melhor que outro, então o resultado melhor é considerado como sendo o mais preferível. Segundo, se todas as entradas comparadas provarem ser iguais no contexto do testo de adequação, eles são ordenados de acordo com a freqüêncía calculada.
* * Os resultados são decompostos em constituintes e sua * inteireza. Por exemplo, com referência a Figura 8, suponha que o usuário deseja digitar a palavra composta Hballgame!’ na interface do usuário 120. Após selecionar os oito botões {2-2-5-5-4-2-6-3), há 3S, isto é, 6561 combinações possíveis. Exemplos típicos incluem, sem a eles se limitar, nballgamen 814, aallgame 816, ^ballhcof’1 818, e °callhand’f 820. A primeira palavra fíballgame’f 814, é dada uma alta prioridade ou classificação 808, pois ela consiste
de duas consecutivas palavras, completas e amplamente utilizadas. A segunda e a terceira palavras, f,aallgame’f 816 e nballhcofE’ 818 têm menos probabilidade de serem preferidas pelo usuário pois eles têm maior TimesReset do que a primeira palavra baligame” 814, isto é, a segunda palavra inclui três segmentos e a terceira palavra inclui quatro segmentos. Outrossim, nem a segunda nem a terceira palavra é completa, isto é, uma combinação de palavras válidas. Similar à primeira palavra ÍIballgameH 814, a quarta palavra callhand” 820 também é dada uma prioridade mais alta ou classificação 808 do que a segunda e a terceira palavras 816, 818, No entanto, a quarta palavra !Tcall handn 820 tem uma prioridade ou classificação 808 mais baixa do que a primeira palavra «baligame” pois ela recebeu uma pontuação inferior à primeira palavra com base na probabilidade de ocorrência.
Embora as versões preferidas da invenção foram ilustradas e descritas, deve ser compreendido que a invenção não é assim tão limitada. Numerosas modificações, mudanças, variações, substituições e equivalentes ocorrerão àqueles habilitados na tecnologia sem desviar do espírito e escopo da presente invenção conforme definido pelas reivindicações apensas.
1/3
Claims (7)
- REIVINDICAÇÕES1. Dispositivo de comunicação sem fio para efetuar uma avaliação de cadeia integral de palavras compostas, caracterizado pelo fato de compreender:5 uma interface do usuário configurada para receber entrada de dados correspondente as palavras compostas e compreendendo teclas, em que cada tecla pode ser usada para inserir um número de caracteres das palavras compostas, e em que combinações de palavras mais curtas pode aparecer10 porque cada tecla da interface do usuário é associado com mais do que um caractere;um processador, acoplado à interface do usuário, configurado para identificar combinações de palavras de palavras mais curtas que poderão ser combinadas para formar15 a palavra composta; e uma base de dados, acoplado ao processador, configurada para armazenar uma pluralidade de palavras mais curtas; e uma tela, acoplada ao processador, configurada para 20 mostrar as combinações de palavras em uma prioridade com base em pelo menos um critério, o pelo menos um critério incluindo determinar que combinações de palavras tendo uma quantidade total menor de palavras mais curtas tem uma prioridade mais alta do que combinações de palavra tendo25 uma quantidade total maior de palavras mais curtas.
- 2. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de ainda compreender um transceptor, acoplado ao processador, configurado para transmitir uma mensagem que inclui uma palavra composta30 identificada pelo processador.Petição 870170086386, de 09/11/2017, pág. 7/92/3
- 3. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de, em qualquer tempo dado, a tela mostrar um dentre a combinação de palavras tendo a prioridade mais alta e uma pluralidade de combinações de5 palavras em ordem de prioridade.
- 4. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o processador pontua cada combinação de palavras com base na probabilidade de ocorrência.10 5. Dispositivo, de acordo com a reivindicação 4, caracterizado pelo fato de a pontuação para uma combinação de palavras particular corresponder a uma pontuação combinada de todas as palavras mais curtas da combinação de palavras particular.15 6. Dispositivo, de acordo com a reivindicação 4, caracterizado pelo fato de o pelo menos um critério incluir distinguir combinações de palavras tendo uma pontuação particular de combinações de palavras tendo uma pontuação diferente.20 7. Método para efetuar a avaliação de cadeia integral de palavras compostas em um dispositivo de comunicação sem fio, caracterizado pelo fato de compreender:armazenamento de uma pluralidade de palavras mais curtas em uma base de dados acoplado a um processador;25 recebimento da entrada de dados correspondente a uma palavra composta a partir de uma interface de usuário compreendendo teclas, em que cada tecla pode ser usada para a entrada de um número de caracteres da palavra composta, e em que as combinações de palavras de palavras mais curtas30 que poderão aparecer porque cada tecla da interface dePetição 870170086386, de 09/11/2017, pág. 8/93/3 usuário é associada com mais do que um caractere;identificação das combinações de palavras de palavras
mais curtas que poderão ser combinadas para formar a palavra composta; e 5 mostrar as combinações de palavras em um tela acoplada ao processador; e priorizar combinações de palavras com base em pelo menos um critério, o pelo menos um critério incluindo determinar que combinações de palavras tendo uma quantidade10 total menor de palavras mais curtas tem uma prioridade maior que combinações de palavras tendo uma quantidade total maior de palavras mais curtas.Petição 870170086386, de 09/11/2017, pág. 9/9JfIG.l 2/7-. ι·.··.;* ♦ « • ♦ «« *220 222 FIG c\j OCM3/7 * *304-^ 306 s300302310 '312 '314318 '320 '322 '324 '326 r328 'ÜJV SM !-><>η43-<5-ί332 '334 '336 '338 '340FIC 3 ·· ·· • · • ··· »··· ··4/^• · • · · • ···· ··· ♦♦· • · · · · · • ·· ·· ·· , ·· ·· ··402—-PredietCombinations (dictionary, input)404—· 1. node[stert] <- root[dictionary]406—-2. timesReset[start] φ 0408—-3. seorefstart] ¢-0410—4. string[stort]412—'5. stortNodes fstart}414 — 6, i<-1416—7. whíle i < lengthfinput]418 — a. allowedTronsitions <- ResolveMapping(input[i])420 — b. hypotheses*422—c. foreach x in stortNodes424 — 1. hypotheses <-hypotheses Move(x, allowedTronsitions) 426—ü. iflsComplete(x)428—1. node[temp] <- root[dictíonary]429 — 2. string[temp] <-string[x]430—3, timesResetítemp]timesReset[x]+1 432—$. seore[tempj«- score[x] + Grade(node[x])434—6. hypotheses <-hypotheseswMove(temp, allowedTronsitions)436—d. stortNodes«- hypotheses 438—-8. foreach y in stortNodes440—Q. score[y]«-score[y] + Grade(node[y])442— 9. return stortNodes400 ^JL·, μμΕ· φ,502— Move(startNode,oltowed Tronsitions)504—1. newNodes*-#506--2. foreach e in allowedTronsitions508—a. node[temp]*- Õ(startNode.e)510 —· b. timesResetf temp] f timesResetístortNode] 512—c. scoreftempj <- score[startNodeT 514-—-d. stringftemp] <- string[stortNodej+e 516—e. newNodes*- newNodes jtemp]518— 3. return newNodes500JPTTG. 5 • · ···· - 5/?· ·· • · • ··· ··· · · · ··· · · · · · • ·· ·· ··602 ^if (o.numTimesReset 1= b.numTimesResêt) return (oumTimesReset < b.numTtmesReset);606 — if (endOflnput) f608 — first=complete(o);610 — if (first b= compfete(b))612^~ return first;í.614 —ít (score[a] != scorefb]) í616— return (scorel > seore2);-τ,1 O
- 6/7 « · » ·« • · » » <0O LU $>LU 25 G do £LU Cl ar »<o coV»IXStIXCM »—. íx o*r*« fx oo oIX co orxMOXCMOΪΧ coCMΪΧ coIx dt« oC3tw ·*·» ·· ·I « * • « ♦ · • » * * ·« «* tr>OO qe.<2tCU o**OCJ>co *cCM <y z*\Ê8OrCL.ir>My r\ _iLO <y oS§CMCMOCO <Λ4P-,IXCM £NΓΧ «X.ooCM rx coΓΧCM hOIXCO *o rxCOIX »ΌIX £>ΤΛΤ
- 7/7 a* a * • «·* a a 1 • ♦ a» *a a·· ♦ * »«Si.ooS,802 804 806 808
DICIONÁRIO DE AMOSTRA di H .Sá <-> T5 g Ί= _ jg- 04 g *g ‘t£> O C3 O RAZÃO PARA COLOCAÇÃO j ω Q S o R Q o < < < o x 5 §§í Q<I = ÍU □ J Q/ Q X q _ 5 J o uj ω Lj O g IX. * < < LU S 4JU O 1 £□ EQ ® < üj s ο ω o< α. Σ s P « H H < => LLI t£ (X O 5 co 2 OUJ o ...n- ........ . S 1 , M LL! LLI -4 . Q £Ώ <ç UJ —I '5.Ϊ O g g g go tüg ujJ í 1<Q:' O O Q o < LL. ÜJ < •8 in,9 ο Σ < ü tu Q UJ 5» K Q 5^0 o *r*~ ro •4* CM El O Q ’< < OQ < _J i= < Sco θο Cl o; Cl •s-ε *g o aǰ“ 4- **·*£? ataüT *o* M-A jx.CZ' ® 4□ca . sZZ>^4” °S d_ .z—.H ÍKE O *3* *«a: CONSTITUINTES o e o CT» 5 a» E üsni O o o JS “5 u© Ί5» o *<3 o PALAVRA Q2> O . cy* “S □o çy> T5 o o o *t5 □ca -o c= ü □s T5 «->
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/692,621 US6973332B2 (en) | 2003-10-24 | 2003-10-24 | Apparatus and method for forming compound words |
| PCT/US2004/030892 WO2005043770A1 (en) | 2003-10-24 | 2004-09-22 | Apparatus and method for forming compound words |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| BRPI0415606A BRPI0415606A (pt) | 2006-12-05 |
| BRPI0415606B1 true BRPI0415606B1 (pt) | 2018-05-08 |
Family
ID=34549905
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0415606A BRPI0415606B1 (pt) | 2003-10-24 | 2004-09-22 | dispositivo de comunicação sem fio e método para efetuar uma avaliação de cadeia integral de palavras compostas |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US6973332B2 (pt) |
| EP (1) | EP1676375B1 (pt) |
| KR (1) | KR101073752B1 (pt) |
| CN (1) | CN100499383C (pt) |
| AT (1) | ATE513260T1 (pt) |
| BR (1) | BRPI0415606B1 (pt) |
| RU (1) | RU2334269C2 (pt) |
| WO (1) | WO2005043770A1 (pt) |
Families Citing this family (42)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7712053B2 (en) | 1998-12-04 | 2010-05-04 | Tegic Communications, Inc. | Explicit character filtering of ambiguous text entry |
| US8938688B2 (en) | 1998-12-04 | 2015-01-20 | Nuance Communications, Inc. | Contextual prediction of user words and user actions |
| US7720682B2 (en) | 1998-12-04 | 2010-05-18 | Tegic Communications, Inc. | Method and apparatus utilizing voice input to resolve ambiguous manually entered text input |
| US7881936B2 (en) | 1998-12-04 | 2011-02-01 | Tegic Communications, Inc. | Multimodal disambiguation of speech recognition |
| US7679534B2 (en) * | 1998-12-04 | 2010-03-16 | Tegic Communications, Inc. | Contextual prediction of user words and user actions |
| US7821503B2 (en) | 2003-04-09 | 2010-10-26 | Tegic Communications, Inc. | Touch screen and graphical user interface |
| US7750891B2 (en) | 2003-04-09 | 2010-07-06 | Tegic Communications, Inc. | Selective input system based on tracking of motion parameters of an input device |
| US7030863B2 (en) | 2000-05-26 | 2006-04-18 | America Online, Incorporated | Virtual keyboard system with automatic correction |
| US7610194B2 (en) | 2002-07-18 | 2009-10-27 | Tegic Communications, Inc. | Dynamic database reordering system |
| US7286115B2 (en) | 2000-05-26 | 2007-10-23 | Tegic Communications, Inc. | Directional input system with automatic correction |
| WO2000074240A1 (en) | 1999-05-27 | 2000-12-07 | America Online | Keyboard system with automatic correction |
| JP2004536506A (ja) * | 2001-06-21 | 2004-12-02 | フライエ エアフィンドゥンクスキュンストラー ゲーエムベーハー | 情報伝達の方法及び装置 |
| US8583440B2 (en) | 2002-06-20 | 2013-11-12 | Tegic Communications, Inc. | Apparatus and method for providing visual indication of character ambiguity during text entry |
| US7636083B2 (en) * | 2004-02-20 | 2009-12-22 | Tegic Communications, Inc. | Method and apparatus for text input in various languages |
| US8095364B2 (en) | 2004-06-02 | 2012-01-10 | Tegic Communications, Inc. | Multimodal disambiguation of speech recognition |
| US20050275619A1 (en) * | 2004-06-09 | 2005-12-15 | Chwan-Jaw Kao | Apparatus for cursor control and method thereof |
| US7502632B2 (en) * | 2004-06-25 | 2009-03-10 | Nokia Corporation | Text messaging device |
| US7952496B2 (en) * | 2004-08-31 | 2011-05-31 | Research In Motion Limited | Handheld electronic device and associated method employing a multiple-axis input device and reinitiating a text disambiguation session upon returning to a delimited word |
| CN101283350A (zh) * | 2005-07-15 | 2008-10-08 | 思索软件有限公司 | 用于为自由文本消息提供结构化数据的方法和装置 |
| EP1755020A1 (en) | 2005-07-28 | 2007-02-21 | 2012244 Ontario Inc. | Handheld electronic device with disambiguation of compound word text input |
| US7583205B2 (en) | 2005-07-28 | 2009-09-01 | Research In Motion Limited | Handheld electronic device with disambiguation of compound word text input |
| AU2006308779B2 (en) * | 2005-10-31 | 2012-03-08 | Think Software Pty Ltd. | Interacting with a computer-based management system |
| US8504606B2 (en) | 2005-11-09 | 2013-08-06 | Tegic Communications | Learner for resource constrained devices |
| US7587378B2 (en) * | 2005-12-09 | 2009-09-08 | Tegic Communications, Inc. | Embedded rule engine for rendering text and other applications |
| EP1808746B1 (en) * | 2006-01-13 | 2012-08-01 | Research In Motion Limited | Handheld electronics device and method for disambiguation of compound text input and that employs n-gram data to limit generation of low-probability compound language solutions |
| EP1808750A1 (en) * | 2006-01-13 | 2007-07-18 | 2012244 Ontario Inc. | Handheld electronic device and method for disambiguation of compound text input and for prioritizing compound language solutions according to completeness of text components |
| US7880646B2 (en) | 2006-01-13 | 2011-02-01 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input and employing different groupings of data sources to disambiguate different parts of input |
| EP1860524B1 (en) * | 2006-01-13 | 2009-12-16 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input |
| US7545290B2 (en) | 2006-01-13 | 2009-06-09 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input and for prioritizing compound language solutions according to completeness of text components |
| EP2284652A3 (en) * | 2006-01-13 | 2011-02-23 | 2012244 Ontario Inc. | Handheld electronic device and method for disambiguation of compound text input |
| US7538692B2 (en) * | 2006-01-13 | 2009-05-26 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input and for prioritizing compound language solutions according to quantity of text components |
| US7698128B2 (en) * | 2006-01-13 | 2010-04-13 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input and that employs N-gram data to limit generation of low-probability compound language solutions |
| US7580925B2 (en) | 2006-04-19 | 2009-08-25 | Tegic Communications, Inc. | Efficient storage and search of word lists and other text |
| KR100724141B1 (ko) * | 2006-12-29 | 2007-05-31 | 주식회사 네오패드 | 한글 표출 장치 및 그 방법 |
| US8201087B2 (en) | 2007-02-01 | 2012-06-12 | Tegic Communications, Inc. | Spell-check for a keyboard system with automatic correction |
| US8225203B2 (en) | 2007-02-01 | 2012-07-17 | Nuance Communications, Inc. | Spell-check for a keyboard system with automatic correction |
| US8103499B2 (en) * | 2007-03-22 | 2012-01-24 | Tegic Communications, Inc. | Disambiguation of telephone style key presses to yield Chinese text using segmentation and selective shifting |
| US8299943B2 (en) | 2007-05-22 | 2012-10-30 | Tegic Communications, Inc. | Multiple predictions in a reduced keyboard disambiguating system |
| US20090042619A1 (en) | 2007-08-10 | 2009-02-12 | Pierce Paul M | Electronic Device with Morphing User Interface |
| US7953692B2 (en) * | 2007-12-07 | 2011-05-31 | Microsoft Corporation | Predicting candidates using information sources |
| US8972269B2 (en) * | 2008-12-01 | 2015-03-03 | Adobe Systems Incorporated | Methods and systems for interfaces allowing limited edits to transcripts |
| CN102375817A (zh) * | 2010-08-06 | 2012-03-14 | 腾讯科技(深圳)有限公司 | 一种获取自造词的方法及装置 |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4701851A (en) * | 1984-10-24 | 1987-10-20 | International Business Machines Corporation | Compound word spelling verification |
| GB2283598A (en) * | 1993-11-03 | 1995-05-10 | Ibm | Data entry workstation |
| US5809415A (en) * | 1995-12-11 | 1998-09-15 | Unwired Planet, Inc. | Method and architecture for an interactive two-way data communication network |
| US5815093A (en) * | 1996-07-26 | 1998-09-29 | Lextron Systems, Inc. | Computerized vehicle log |
| US5953541A (en) * | 1997-01-24 | 1999-09-14 | Tegic Communications, Inc. | Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use |
| US6424983B1 (en) * | 1998-05-26 | 2002-07-23 | Global Information Research And Technologies, Llc | Spelling and grammar checking system |
| GB2347240A (en) * | 1999-02-22 | 2000-08-30 | Nokia Mobile Phones Ltd | Communication terminal having a predictive editor application |
| GB2347247A (en) * | 1999-02-22 | 2000-08-30 | Nokia Mobile Phones Ltd | Communication terminal with predictive editor |
| EP1213643A1 (en) * | 2000-12-05 | 2002-06-12 | Inventec Appliances Corp. | Intelligent dictionary input method |
| US20030036411A1 (en) * | 2001-08-03 | 2003-02-20 | Christian Kraft | Method of entering characters into a text string and a text-editing terminal using the method |
| US7149550B2 (en) * | 2001-11-27 | 2006-12-12 | Nokia Corporation | Communication terminal having a text editor application with a word completion feature |
| DE10235548B4 (de) * | 2002-03-25 | 2012-06-28 | Agere Systems Guardian Corp. | Verfahren und Vorrichtung für die Prädiktion einer Textnachrichteneingabe |
| US7159191B2 (en) * | 2003-03-03 | 2007-01-02 | Flextronics Sales & Marketing A-P Ltd. | Input of data |
-
2003
- 2003-10-24 US US10/692,621 patent/US6973332B2/en not_active Expired - Lifetime
-
2004
- 2004-09-22 AT AT04788872T patent/ATE513260T1/de not_active IP Right Cessation
- 2004-09-22 CN CNB2004800312629A patent/CN100499383C/zh not_active Expired - Lifetime
- 2004-09-22 BR BRPI0415606A patent/BRPI0415606B1/pt active IP Right Grant
- 2004-09-22 WO PCT/US2004/030892 patent/WO2005043770A1/en not_active Ceased
- 2004-09-22 EP EP04788872A patent/EP1676375B1/en not_active Expired - Lifetime
- 2004-09-22 RU RU2006117766/09A patent/RU2334269C2/ru active
-
2006
- 2006-04-21 KR KR1020067007704A patent/KR101073752B1/ko not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| CN100499383C (zh) | 2009-06-10 |
| KR101073752B1 (ko) | 2011-10-13 |
| ATE513260T1 (de) | 2011-07-15 |
| US20050096085A1 (en) | 2005-05-05 |
| RU2006117766A (ru) | 2007-11-27 |
| CN1871781A (zh) | 2006-11-29 |
| US6973332B2 (en) | 2005-12-06 |
| EP1676375A1 (en) | 2006-07-05 |
| WO2005043770A1 (en) | 2005-05-12 |
| EP1676375B1 (en) | 2011-06-15 |
| EP1676375A4 (en) | 2007-02-28 |
| RU2334269C2 (ru) | 2008-09-20 |
| KR20060090710A (ko) | 2006-08-14 |
| BRPI0415606A (pt) | 2006-12-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0415606B1 (pt) | dispositivo de comunicação sem fio e método para efetuar uma avaliação de cadeia integral de palavras compostas | |
| US20190385004A1 (en) | Image recognition method, terminal, and storage medium | |
| CN110704661B (zh) | 一种图像分类方法和装置 | |
| US20040163032A1 (en) | Ambiguity resolution for predictive text entry | |
| US20120296865A1 (en) | Terminal device and word stock update method thereof | |
| US20140111418A1 (en) | Method for recognizing user context using multimodal sensors | |
| US20060136408A1 (en) | Searching for and providing objects using byte-by-byte comparison | |
| US20150293975A1 (en) | Method and device for searching for contact object, and storage medium | |
| CN112528621B (zh) | 文本处理、文本处理模型训练方法、装置和存储介质 | |
| CN106804055A (zh) | 一种无线保真Wi‑Fi连接方法及移动终端 | |
| CN112528145A (zh) | 信息推荐方法、装置、设备及可读存储介质 | |
| CN111460117A (zh) | 对话机器人意图语料生成方法、装置、介质及电子设备 | |
| CN110069624A (zh) | 文本处理方法及装置 | |
| WO2023029397A1 (zh) | 训练数据获取方法、异常行为识别网络训练方法及装置、计算机设备、存储介质、计算机程序、计算机程序产品 | |
| CN106156299B (zh) | 文本信息的主题内容识别方法及装置 | |
| CN119829574A (zh) | 一种数据处理方法、系统和相关装置 | |
| CN111009247B (zh) | 语音识别修正方法、装置和存储介质 | |
| CN111475732B (zh) | 一种信息处理方法和装置 | |
| CN106126661B (zh) | 歌手封面的显示方法及装置 | |
| CN120335625B (zh) | 一种文本输入信息处理方法、装置及存储介质 | |
| CN115243062B (zh) | 场景展示方法、装置、屏显设备、电子设备和存储介质 | |
| KR101542061B1 (ko) | 관심 지점 정보 통합 처리를 위한 방법, 이를 위한 장치 및 시스템 | |
| CN121257630A (zh) | 网络模型的训练方法、提问文本的处理方法、装置及设备 | |
| CN118409795A (zh) | 指令生成方法及其装置 | |
| CN109426359A (zh) | 一种输入方法、装置以及机器可读介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B25D | Requested change of name of applicant approved |
Owner name: MOTOROLA SOLUTIONS, INC. (US) |
|
| B25A | Requested transfer of rights approved |
Owner name: MOTOROLA MOBILITY, INC. (US) |
|
| B25E | Requested change of name of applicant rejected |
Owner name: MOTOROLA MOBILITY, INC. (US) Free format text: INDEFERIDO O PEDIDO DE ALTERACAO DE NOME CONTIDO NA PETICAO 20130042002 DE 16/05/2013, DEVIDO A AUSENCIA DE GUIA DE RECOLHIMENTO RELATIVA AO SERVICO. |
|
| B25G | Requested change of headquarter approved |
Owner name: MOTOROLA MOBILITY, INC. (US) |
|
| B25D | Requested change of name of applicant approved |
Owner name: MOTOROLA MOBILITY LLC (US) |
|
| B25A | Requested transfer of rights approved |
Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC (US) |
|
| B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
| B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
































