BR102019007123A2 - assistentes digitais e métodos associados para um veículo de transporte - Google Patents

assistentes digitais e métodos associados para um veículo de transporte Download PDF

Info

Publication number
BR102019007123A2
BR102019007123A2 BR102019007123-0A BR102019007123A BR102019007123A2 BR 102019007123 A2 BR102019007123 A2 BR 102019007123A2 BR 102019007123 A BR102019007123 A BR 102019007123A BR 102019007123 A2 BR102019007123 A2 BR 102019007123A2
Authority
BR
Brazil
Prior art keywords
context
action
digital assistant
neural network
response
Prior art date
Application number
BR102019007123-0A
Other languages
English (en)
Inventor
Perng Chin
Khabrani Gurmukh
Hilal Rawad
Original Assignee
Panasonic Avionics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/954,271 external-priority patent/US10573299B2/en
Application filed by Panasonic Avionics Corp filed Critical Panasonic Avionics Corp
Publication of BR102019007123A2 publication Critical patent/BR102019007123A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Acoustics & Sound (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

a presente invenção se refere aos métodos e sistemas para um veículo de transporte. um método inclui receber uma entrada de usuário para uma sessão de comunicação válida por um processador executável, assistente digital em um dispositivo em um veículo de transporte; identificar pelo assistente digital, as palavras de entrada do usuário com uma conotação gramatical; gerar um contexto de ação, um contexto de filtro e um contexto de resposta por uma rede neural, com base na entrada de usuário identificada; armazenar pelo assistente digital, um par de valores-chave para um parâmetro do contexto do filtro em uma memória de curto prazo, com base em uma saída da rede neural; atualizar pelo assistente digital, o par de valores-chave na memória de curto prazo após receber uma resposta a uma solicitação de acompanhamento e outra saída da rede neural treinada; e fornecer uma resposta à resposta do assistente digital.

Description

ASSISTENTES DIGITAIS E MÉTODOS ASSOCIADOS PARA UM VEÍCULO DE
TRANSPORTE
PEDIDOS RELACIONADOS [0001] Referência cruzada relacionada a este pedido: Este pedido de patente é uma continuação em parte (CIP) do pedido de patente pendente, número de série 15/241.376, depositado em 19 de agosto de 2016, intitulado ASSISTENTE DIGITAL E MÉTODOS ASSOCIADOS PARA UM VEÍCULO DE TRANSPORTE, cuja divulgação é aqui incorporada por referência na sua totalidade.
[0002] Campo Técnico: A presente divulgação se refere a veículos de transporte em geral e, mais particularmente, ao uso de um assistente digital de linguagem natural em veículos de transporte.
[0003] Antecedentes: Veículos de transporte, por exemplo, aviões, trens, ônibus, veículos de recreação, barcos e outros veículos semelhantes usam vários dispositivos de computação para fornecer várias funções, incluindo entretenimento, controle do sistema, armazenamento de conteúdo e outras funções. Esses dispositivos de computação incluem hardware (por exemplo, servidores, comutadores, placas de interface de rede, adaptadores de armazenamento, dispositivos de armazenamento e outros) e software (por exemplo, aplicativos de servidor, sistemas operacionais, firmware, aplicativos de
Petição 870190033755, de 08/04/2019, pág. 15/97
2/62 gerenciamento, interface de programação de aplicativos (APis) e outros).
[0004] Veículos de transporte atuais têm equipamento funcional individualizado dedicado a um assento particular de passageiro que pode ser utilizado por um passageiro, como assentos ajustáveis, controles ambientais ajustáveis, iluminação ajustável, sistemas de telefonia, sistemas de entretenimento de vídeo e/ou áudio, sistemas de comunicação da tripulação, e similar. Por exemplo, muitos aviões comerciais têm sistemas de entretenimento de áudio e vídeo individualizados, muitas vezes referidos como sistemas de entretenimento a bordo” ou IFE.
[0005] Como um exemplo de uma função de assento de passageiro, os sistemas de entretenimento para veículos de transporte de passageiro, como companhias aéreas comerciais, frequentemente têm monitores de vídeo instalados em cada assento de passageiro. Por exemplo, monitores de vídeo podem ser fornecidos em cada assento do passageiro, como montado em cada um dos assentos dos assentos de passageiro e/ou nas paredes da cabine e/ou desdobrável de um descanso de braço em assentos localizados em um anteparo, ou seja, no primeira linha de uma seção. Muitos desses sistemas permitem que cada passageiro escolha entre vários canais de vídeo e/ou canais de áudio, ou até mesmo selecione e reproduza vídeos individualmente a partir de uma biblioteca de vídeos. Essas exibições de vídeo também podem fornecer acesso a jogos, aplicativos de comunicação (por exemplo, serviço telefônico, mensagens, e
Petição 870190033755, de 08/04/2019, pág. 16/97
3/62 etc.), navegação na Internet e outros aplicativos de computador. Às vezes, esses monitores são chamados de monitores inteligentes devido à capacidade de fornecer aplicativos de computador e processar e armazenar dados internamente.
[0006] Para operar as funções do assento, como um sistema de áudio/vídeo individualizado, os controles são fornecidos no assento do passageiro ou perto do mesmo, permitindo que o passageiro controle as funções do assento. Os controles podem ser botões físicos ou interfaces na tela exibidas, por exemplo, na exibição de vídeo do sistema de entretenimento. Por exemplo, alguns sistemas de entretenimento de aviões comerciais têm interfaces na tela para controlar uma luz de leitura, ativar um sinal de chamada de um membro da equipe, bem como controlar o entretenimento de áudio/vídeo.
[0007] Tornou-se bastante comum para os viajantes transportarem dispositivos eletrônicos pessoais (PEDs) com capacidade de comunicação sem fio, tais como telefones celulares, smartphones, computadores tablet, laptops e outros dispositivos eletrônicos portáteis. Isso inclui passageiros e tripulantes viajando em todos os tipos de transporte, incluindo os veículos de transportadoras comuns, tais como aviões, trens de passageiros, ônibus, navios de cruzeiro, veículos turísticos (por exemplo, navios, barcos, ônibus, carros, e etc.). Muitos desses dispositivos eletrônicos pessoais têm a capacidade de executar programas de aplicativos
Petição 870190033755, de 08/04/2019, pág. 17/97
4/62 (apps) para executar várias funções, incluindo o controle de outros dispositivos e sistemas.
[0008] Os sistemas convencionais de IFE não têm a capacidade de fornecer aos passageiros uma maneira eficiente de descobrir o conteúdo. Por exemplo, pesquisar um filme atualmente exige que o usuário navegue até a página de filmes e encontre o filme que deseja assistir. Além disso, os sistemas IFE geralmente não são capazes de fazer com que a tripulação localize e execute com eficiência as funções de controle do sistema IFE. Esforços contínuos estão sendo feitos para desenvolver uma tecnologia que possa melhorar a experiência do passageiro e fornecer ao cliente o serviço de transporte.
BREVE DESCRIÇÃO DOS DESENHOS [0009] Os vários recursos da presente revelação serão agora descritos em referência aos desenhos dos vários aspectos revelados no presente documento. Nos desenhos, os mesmos componentes podem ter as mesmas referências numéricas. Os aspectos ilustrados são destinados a ilustrar, porém, sem limitação, a presente revelação. Os desenhos incluem as seguintes figuras:
[0010] A Figura 1A mostra um exemplo de um ambiente operacional para implementar os vários aspectos da presente divulgação em uma aeronave;
[0011] A Figura lB mostra um exemplo do ambiente de operação em um tipo de veículo de transporte diferente de uma aeronave, de acordo com um aspecto da presente divulgação;
Petição 870190033755, de 08/04/2019, pág. 18/97
5/62 [0012] A Figura 2 mostra um exemplo de um sistema de distribuição de conteúdo, usado de acordo com um aspecto da presente divulgação;
[0013] A Figura 3A mostra um exemplo de um sistema para usar um assistente digital em um veículo de transporte, de acordo com um aspecto da presente divulgação;
[0014] A Figura 3B mostra um diagrama de blocos do assistente digital, de acordo com um aspecto da presente divulgação;
[0015] As Figuras 4A-4B mostram diagramas de fluxo de processo para usar o assistente digital, de acordo com um aspecto da presente divulgação;
[0016] A Figura 5 mostra um diagrama de blocos de um sistema de computação, usado de acordo com um aspecto da presente divulgação;
[0017] A Figura 6A mostra um exemplo de outro sistema que utiliza uma rede neural treinada, de acordo com um aspecto da presente divulgação;
[0018] A Figura 6B mostra um exemplo da rede neural, de acordo com um aspecto da presente divulgação;
[0019] A Figura 6C mostra um exemplo de um fluxo de processo para treinar a rede neural, de acordo com um aspecto da presente descrição;
[0020] As Figuras 6D-6E mostram capturas de tela de uma ferramenta de treinamento da rede neural, de acordo com um aspecto da presente divulgação; e
Petição 870190033755, de 08/04/2019, pág. 19/97
6/62 [0021] As Figuras 7A-7B mostram um exemplo de um fluxo de processo para usar a rede neural, de acordo com um aspecto da presente descrição.
DESCRIÇÃO DETALHADA [0022] Como nota preliminar, os termos componente, módulo, sistema e similares, como usados aqui, se referem a uma entidade relacionada a computador, processador de uso geral de software, hardware, firmware ou uma combinação destes. Por exemplo, um componente pode ser, mas não está limitado a ser, a um processo executado em um processador de hardware, um processador de hardware, um objeto, um executável, uma linha de execução, um programa e/ou um computador.
[0023] A título de ilustração, tanto uma aplicação em execução em um servidor como o servidor podem ser um componente. Um ou mais componentes podem residir em um processo e/ou linha de execução, e um componente pode ser localizado em um computador e/ou distribuído entre dois ou mais computadores. Além disso, estes componentes podem ser executados a partir de vários meios legíveis por computador, tendo várias estruturas de dados armazenadas no mesmo. Os componentes podem se comunicar através de processos locais e/ou remotos, como de acordo com um sinal contendo um ou mais pacotes de dados (por exemplo, dados de um componente interagindo com outro componente em um sistema local, sistema distribuído e/ou através de uma rede como a Internet com outros sistemas através do sinal).
Petição 870190033755, de 08/04/2019, pág. 20/97
7/62 [0024] Os componentes executáveis do computador são armazenados em mídia não transitória, legível por computador/máquina incluindo, mas não limitado a um ASIC (circuito integrado de aplicação específica), CD, DVD (disco de vídeo digital), ROM somente memória), disco rígido, EEPROM (memória somente de leitura programável apagável eletricamente), dispositivo de memória de estado sólido ou qualquer outro dispositivo de armazenamento, de acordo com o objeto reivindicado.
[0025] Em um aspecto, métodos e sistemas são fornecidos onde uma inteligência artificial BOT (referida como assistente digital) pode interagir com um usuário em um veículo de transporte, por exemplo, uma aeronave. O assistente digital fornece informações sobre o conteúdo que pode estar disponível na aeronave e/ou processa uma solicitação de ação ou uma solicitação de equipe ou fornece ajuda com uma solicitação. O assistente digital recebe uma entrada do usuário que pode estar em formato de texto ou voz. Se a entrada for de voz, um módulo de voz para texto converterá a entrada de voz em uma entrada de texto.
[0026] A entrada de texto é então fornecida a um analisador de linguagem natural. O analisador marca as palavras na frase de entrada com conotações gramaticais que são enviadas para um intérprete de linguagem natural treinado, que traduz palavras e gramática para uma entrada legível por máquina. A entrada legível por máquina pode estar na forma de uma estrutura JSON
Petição 870190033755, de 08/04/2019, pág. 21/97
8/62 (Java Script Object Notation) ou qualquer outro formato. A entrada legível por máquina é então fornecida a um processador de linguagem de máquina que associa a entrada às solicitações do usuário.
[0027] Os exemplos a seguir de alguns comandos para usar o assistente digital da presente divulgação são: Mostrar um filme de Harry Potter. Há algum filme nesse voo interpretado por Brad Pitt? Reproduza uma lista de reprodução de rock. Toque uma música de Ed Sheeran. Mostrar fotografias de Ed Sheeran. Eu quero um copo de água. Quanto tempo ainda falta para chegar ao nosso destino? Qual é a altitude atual? Qual é a velocidade atual? Como está o clima no destino? Como está o tempo em Seattle? Listar todos os itens de compra de perfume? Você tem algum relógio eletrônico em duty free? Ligue a luz de leitura. Defina o controle parental para PG. Lembre-me de preencher minha I-94 quando chegarmos. Qual é a capital da França?
[0028] Em outro aspecto, métodos e sistemas para um veículo de transporte são fornecidos. Por exemplo, um método inclui receber uma entrada de usuário por um processador executável, assistente digital em ou em um dispositivo em um veículo de transporte; determinar pelo assistente digital uma relação entre palavras da entrada do usuário; usar um conjunto de dados treinado pelo assistente digital para determinar uma ação pretendida com base na entrada do usuário; e fornecer uma resposta do assistente digital para a entrada do usuário, onde
Petição 870190033755, de 08/04/2019, pág. 22/97
9/62 a resposta inclui a execução da ação pretendida usando outro dispositivo no veículo de transporte.
[0029] Em ainda outro aspecto, é fornecido um método, onde o método inclui o armazenamento de um conjunto de dados treinado para treinar um processador executável, um assistente digital executado por um dispositivo de assento de uma aeronave, onde o conjunto de dados treinados associa uma ação pretendida a uma ou mais palavras em uma solicitação do usuário recebida pelo dispositivo de assento na aeronave; converter a solicitação do usuário em texto pelo assistente digital, quando a solicitação do usuário for um comando de voz; determinar pelo assistente digital uma relação entre as palavras na solicitação do usuário; usar o conjunto de dados treinado pelo assistente digital para verificar a ação pretendida; e fornecer uma resposta do assistente digital executando a ação pretendida, em que a ação pretendida envolve o uso de um sistema de entretenimento a bordo da aeronave.
[0030] Em ainda outro aspecto, métodos e sistemas para um veículo de transporte são fornecidos. Por exemplo, um método inclui receber uma entrada de usuário para uma sessão de comunicação válida por um processador executável, assistente digital em um dispositivo em um veículo de transporte; identificar pelo assistente digital, as palavras de entrada do usuário com uma conotação gramatical; gerar um contexto de ação, um contexto do filtro e um contexto de resposta por uma rede neural, com base na entrada de usuário identificada;
Petição 870190033755, de 08/04/2019, pág. 23/97
10/62 armazenar pelo assistente digital, um par de valores-chave para um parâmetro do contexto do filtro em uma memória de curto prazo, com base em uma saída de rede neural; atualizar pelo assistente digital, o par de valores-chave na memória de curto prazo após receber uma resposta a uma solicitação de acompanhamento e outra saída da rede neural treinada; e fornecer uma resposta à resposta do assistente digital.
[0031] Em outro aspecto, um método é fornecido. O método inclui o treinamento de uma rede neural para uma categoria de ação em uma aeronave associada a uma solicitação de usuário pretendida, definindo pelo menos um parâmetro de filtro e um contexto de resposta com base no parâmetro de filtro; gerando pela rede neural um contexto de ação baseado na categoria de ação, um contexto do filtro e um contexto de resposta para uma entrada de usuário identificada; usar uma memória de curto prazo configurada como uma memória menos utilizada recentemente para armazenar um par de valores-chave associado ao parâmetro do contexto do filtro; gerar uma saída pela rede neural em resposta a uma solicitação de acompanhamento do usuário; atualizar o par de valores-chave na memória de curto prazo com base na saída da rede neural; e fornecer uma resposta a solicitação de acompanhamento do usuário.
[0032] Sistema de Informação do Veículo: A Figura 1A mostra um exemplo de um sistema de informação de veículo genérico 100A (também referido como sistema 100A) que pode ser configurado para instalação a bordo de uma aeronave 132 para usar um
Petição 870190033755, de 08/04/2019, pág. 24/97
11/62 assistente digital, de acordo com um aspecto da presente divulgação. Quando instalado em uma aeronave, o sistema 100A pode incluir um sistema IFE para passageiros de aeronaves, tais como as séries 2000, 3000, eFX, eX2, eXW e/ou qualquer outro sistema de entretenimento em voo desenvolvido e fornecido pela Panasonic Avionics Corporation (sem derrogação de qualquer direito das marcas registradas pela Panasonic Avionics Corporation) de Lake Forest, Califórnia, cessionária deste pedido.
[0033] O sistema 100A compreende pelo menos uma fonte de conteúdo 113 e um ou mais sistemas de interface de usuário (ou passageiro) (também pode ser referido como um dispositivo de assento/encosto) 114 que se comunicam com um sistema de distribuição de conteúdo em tempo real 104. As fontes de conteúdo 113 podem incluir uma ou mais fontes de conteúdo internas, tais como um sistema de servidor de mídia 112, que são instaladas a bordo da aeronave 132, uma ou mais fontes de conteúdo remoto (ou terrestre) 116 que podem ser externas à aeronave 132, ou sistema de conteúdo distribuído. O sistema de servidor de mídia 112 pode ser fornecido como um controlador de sistema de informação para fornecer funções de controle geral do sistema 100A e/ou para armazenar conteúdo de visualização 124, incluindo conteúdo de visualização préprogramado e/ou conteúdo baixado 120 para a aeronave, conforme desejado. O conteúdo de visualização 124 pode incluir conteúdo de programação de televisão, conteúdo de música, conteúdo de
Petição 870190033755, de 08/04/2019, pág. 25/97
12/62 podcast, conteúdo de álbum de fotografia, conteúdo de audiobook e/ou conteúdo de filme sem limitação. O conteúdo de exibição como mostrado e descrito aqui não é exaustivo e é fornecido aqui para fins apenas de ilustração e não para fins de limitação.
[0034] O sistema de servidor 112 pode incluir e/ou comunicar com um ou mais sistemas de armazenamento de meios periféricos convencionais (não mostrado), incluindo dispositivos de mídia ótica, como um sistema de disco de vídeo digital (DVD) ou um sistema de disco compacto (CD), e/ou sistemas de mídia magnética, tal como um sistema de videocassete (VCR), um sistema de unidade de estado sólido (SSD) ou um sistema de unidade de disco rígido (HDD), de qualquer tipo adequado, para armazenar o conteúdo pré-programado e/ou o conteúdo baixado 120.
[0035] O conteúdo de visualização 124 pode compreender qualquer tipo convencional de conteúdo de visualização de áudio e/ou vídeo, tal como conteúdo de visualização armazenado (ou temporizado) e/ou conteúdo de visualização ao vivo (ou em tempo real). Conforme desejado, o conteúdo de visualização 124 pode incluir informação geográfica. Alternativamente, e/ou adicionalmente, para conteúdo de entretenimento, tal como programação de televisão por satélite ao vivo e/ou programação de rádio por satélite ao vivo, o conteúdo de visualização pode incluir comunicações bidirecionais, tais como acesso em tempo real à Internet 118 e/ou telecomunicações.
Petição 870190033755, de 08/04/2019, pág. 26/97
13/62 [0036] Sendo configurado para distribuir e/ou apresentar o conteúdo de visualização 124 fornecido por uma ou mais fontes de conteúdo selecionadas 113, o sistema 100A pode se comunicar com as fontes de conteúdo 113 em tempo real e de qualquer maneira convencional, incluindo via com fio e/ou sem fio comunicações. O sistema 100A e a fonte de conteúdo terrestre 116, por exemplo, podem se comunicar direta e/ou indiretamente através de um sistema de comunicação intermediário, tal como um sistema de comunicação via satélite [0037] O sistema 100A pode receber o conteúdo 120 de uma fonte de conteúdo terrestre selecionada 116 e/ou transmitir conteúdo (upload) 128, incluindo navegação e outras instruções de controle, para a fonte de conteúdo terrestre 116. Conforme desejado, a fonte de conteúdo terrestre 116 pode ser configurada para se comunicar com outras fontes de conteúdo terrestre (não mostradas). A fonte de conteúdo terrestre 116 é mostrada como proporcionando acesso à Internet 118. Embora mostrado e descrito como compreendendo o sistema de comunicações por satélite 122 para fins de ilustração, o sistema de comunicações pode compreender qualquer tipo convencional de sistema de comunicações sem fios, tal como um sistema de comunicações celulares (não mostrado) e/ou sistema de comunicação do Sistema de Informação do Solo da Aeronave (AGIS) (não mostrado).
Petição 870190033755, de 08/04/2019, pág. 27/97
14/62 [0038] Para facilitar a comunicação com as fontes de conteúdo terrestre 116, o sistema 100A também pode incluir um sistema de antena 110 e um sistema transceptor 108 para receber o conteúdo de visualização das fontes de conteúdo remoto (ou terrestre) 116. O sistema de antena 110 é preferencialmente disposto externamente, tal como em uma superfície externa de uma fuselagem 136 da aeronave 132. O sistema de antena 110 pode receber o conteúdo de visualização 124 da fonte de conteúdo terrestre 116 e fornecer o conteúdo de visualização recebido 124, processado pelo sistema de transceptor 108, para um sistema de computador 106 do sistema 100A. O sistema de computador 106 pode fornecer o conteúdo de visualização recebido 124 ao sistema de servidor de mídia (ou de conteúdo) 112 e/ou diretamente a uma ou mais das interfaces de usuário 114 incluindo um PED, quando desejado. Embora mostrado e descrito como sendo sistemas separados para fins de ilustração, o sistema de computador 106 e o sistema de servidor de mídia 112 podem ser pelo menos parcialmente integrados.
[0039] O sistema de interface de usuário 114 pode ser terminais de computação em comunicação com um ponto de acesso 130. O sistema de interface de usuário 114 fornece um dispositivo de exibição para visualizar o conteúdo. O sistema de interface com o usuário 114 inclui uma interface de hardware para conectar a um ponto de acesso 130 que fornece uma conexão com fio e/ou sem fio para o sistema de interface
Petição 870190033755, de 08/04/2019, pág. 28/97
15/62 com o usuário. Em pelo menos uma modalidade, o sistema de interface de usuário 114 compreende um aplicativo de software que um usuário baixa e instala em um PED para receber e visualizar conteúdo através de um ponto de acesso 130. Embora problemas de limitação de largura de banda possam ocorrer em um sistema com fio em um veículo, como uma aeronave 132, em geral, a porção com fio do sistema 100A de informação do veículo é projetada com largura de banda suficiente para suportar todos os usuários a bordo do veículo, isto é, passageiros.
[0040] O sistema de interface de usuário 114 pode incluir um sistema de entrada (não mostrado) para permitir que o usuário (ou passageiro) se comunique com o sistema 100A, tal como através de uma troca de sinais de controle 138. Por exemplo, o sistema de entrada pode permitir ao usuário entrar com uma ou mais instruções de usuário 140 para controlar o funcionamento do sistema 100A. Instruções ilustrativas de usuário 140 podem incluir instruções para iniciar a comunicação com a fonte de conteúdo 113, instruções para selecionar o conteúdo de visualização 124 para apresentação e/ou instruções para controlar a apresentação do conteúdo de visualização selecionado 124. Se for necessária uma taxa para acessar o conteúdo de visualização 124 ou por qualquer outro motivo, as informações de pagamento também podem ser inseridas através do sistema de entrada. O sistema de entrada pode ser fornecido de qualquer maneira convencional e normalmente inclui uma tela
Petição 870190033755, de 08/04/2019, pág. 29/97
16/62 sensível ao toque, um microfone para entrada de voz, um ou mais interruptores (ou botões), como um teclado ou um teclado, e/ou um dispositivo apontador, como mouse, trackball ou caneta.
[0041] Em um aspecto, o sistema de interface de usuário 114 é fornecido em assentos individuais de passageiro da aeronave 132. O sistema de interface de usuário 114 pode ser adaptado a diferentes aeronaves e arranjos de assentos e os aspectos adaptativos descritos aqui não estão limitados aos arranjos específicos de assento ou tipos de interface de usuário.
[0042] A Figura IB mostra um exemplo de implementação do sistema de informação do veículo 100B (pode ser referido como sistema 100B) em um veículo 134 que pode incluir um ônibus, um veículo recreativo, um barco e/ou um trem, ou qualquer outro tipo de veículo de passageiros sem limitação. Os vários componentes do sistema 100B podem ser semelhantes aos componentes do sistema 100A descritos acima em relação à Figura 1A e por brevidade não são descritos novamente.
[0043] Sistema de Distribuição de Conteúdo: A Figura 2 ilustra um exemplo do sistema de distribuição de conteúdo 104 para o sistema de informação de veículo 200 (semelhante a 100A/100B), de acordo com um aspecto da presente divulgação. O sistema de distribuição de conteúdo 104 emparelha e suporta a comunicação entre o sistema servidor 112 e a pluralidade de sistemas de interface com o usuário 114.
Petição 870190033755, de 08/04/2019, pág. 30/97
17/62 [0044] O sistema de distribuição de conteúdo 104, por exemplo, pode ser fornecido como uma rede de comunicação convencional com fio e/ou sem fio, incluindo uma rede telefônica, uma rede local (LAN) , uma rede de longa distância (WAN) , uma rede de área de campus (CAN), rede de área pessoal (PAN) e/ou rede local sem fio (WLAN) de qualquer tipo. As redes locais sem fio exemplificativas incluem redes de fidelidade sem fio (Wi-Fi) de acordo com o Padrão 802.11 do Institute of Electrical and Electronics Engineers (IEEE) e/ou redes de área metropolitana sem fio (MANs), também conhecidas como WiMax Wireless Broadband. de acordo com o padrão IEEE 802.16.
[0045] Preferencialmente configurado para suportar altas taxas de transferência de dados, o sistema de distribuição de conteúdo 104 pode compreender uma rede de Internet de alta velocidade, como qualquer tipo de rede de comunicação Fast Ethernet (como 100 Base-X e/ou 100 Base-T) e/ou rede Gigabit Ethernet (como 1000 Base-X e/ou 1000 Base-T), com uma taxa de transferência de dados típica de pelo menos aproximadamente 100 megabits por segundo (100 Mbps) ou qualquer outra taxa de transferência. Para alcançar altas taxas de transferência de dados em um ambiente de comunicações sem fio, a tecnologia de óptica de espaço livre (ou laser), tecnologia de ondas milimétricas (e micro-ondas) e/ou tecnologia Ultra-Wideband (UWB) pode ser utilizada para suportar comunicações entre os vários recursos do sistema, conforme desejado.
Petição 870190033755, de 08/04/2019, pág. 31/97
18/62 [0046] Como ilustrado na Figura 2, o sistema de distribuição 104 pode ser fornecido como uma pluralidade de caixas de distribuição de área (ADBs) 206, uma pluralidade de caixas de desconexão de piso (FDBs) 208, e uma pluralidade de caixas eletrônicas de assento (SEBs) (e/ou caixas de componentes eletrônicos para assentos de vídeo (VSEB) e/ou caixas eletrônicas de assentos premium (PSEBs) 210 configuradas para comunicar em tempo real através de uma pluralidade de ligações de comunicação com fios e/ou sem fios 212.
[0047] O sistema de distribuição 104 da mesma forma pode incluir um sistema de comutação 202 para proporcionar uma interface entre o sistema de distribuição 104 e o sistema servidor 112. O sistema de comutação 202 pode compreender um sistema de comutação convencional, tal como um sistema de comutação Ethernet, e é configurado para acoplar o sistema servidor 112 com a caixas de distribuição de área 206. Cada uma das caixas de distribuição de área 206 é acoplada e se comunica com o sistema de comutação 202. Além disso, o sistema de distribuição 104 inclui um ou mais pontos de acesso sem fios (WAPs) (130A a 130N) ligados em comunicação com o sistema de comutação 202 para distribuição sem fios de conteúdo para sistemas de interface de usuário 114 incluindo PEDs.
[0048] Cada uma das caixas de distribuição de área 202, por sua vez, é acoplada e se comunica com pelo menos uma caixa de desconexão de piso 208. Embora as caixas de distribuição de área 206 e as caixas de desconexão de piso associadas 208
Petição 870190033755, de 08/04/2019, pág. 32/97
19/62 possam ser acopladas em qualquer configuração convencional, as caixas de desconexão de piso associadas 208 são preferivelmente dispostas em uma topologia de rede em estrela sobre uma caixa de distribuição de área central 206 como ilustrado na Figura 2. Cada caixa de desconexão de piso é acoplada a uma pluralidade de ligações em cascata das caixas eletrônicas de assento 210. As caixas eletrônicas de assento 210, por sua vez, são configuradas para se comunicar com os sistemas de interface de usuário 114. Cada caixa eletrônica de assento 210 pode suportar um ou mais dos sistemas de interface de usuário 114.
[0049] Os sistemas de comutação 202, as caixas de distribuição de área 206, as caixas de desconexão de piso 208, as caixas eletrônicas de assento (e/ou caixas eletrônicas de assento de vídeo (VSEBs) e/ou caixas eletrônicas de assento premium (PSEBs) 210, o sistema de antena 110, o sistema transceptor 108, a fonte de conteúdo 113, o sistema servidor 112 e outros recursos do sistema de informação do veículos, de um modo preferido, proporcionados como unidades substituíveis por linha (LRUs). A utilização de LRUs facilita a manutenção do sistema de informação do veículo 200 porque uma LRU defeituosa pode simplesmente ser removida do sistema de informação do veículo 200 e substituída por uma nova ou por outra LRU diferente. A LRU defeituosa depois disso pode ser reparada para posterior instalação. Vantajosamente, o uso de LRUs pode promover flexibilidade na configuração do sistema de
Petição 870190033755, de 08/04/2019, pág. 33/97
20/62 distribuição de conteúdo 104, permitindo a pronta modificação do número, disposição e/ou configuração dos recursos do sistema de distribuição de conteúdo 104. O sistema de distribuição de conteúdo 104 também pode ser facilmente atualizado substituindo quaisquer LRUs obsoletas por novas LRUs.
[0050] O sistema de distribuição 104 pode incluir pelo menos uma conexão de derivação de porta interna FDB 214 e/ou pelo menos uma conexão de enlace de retorno SEB 216. Cada conexão de desvio de porta interna FDB 214 é uma conexão de comunicação 212 que permite caixas de desconexão de piso 208 associadas a diferentes caixas de distribuição de área 206 para se comunicar diretamente. Cada ligação de enlace de retorno SEB 216 é uma ligação de comunicação 212 que acopla diretamente a última caixa eletrônica de assento 210 em cada caixa de ligação em cascata 210 para uma caixa de desconexão de chão selecionada 208 como mostrado na Figura 2. Cada
caminho de enlace de retorno entre as caixas elétricas de
assento encadeados em cascata 210, acoplado com a caixa de
interruptores de piso relevante 208.
[0051] Vale ressaltar que os vários aspectos da presente
divulgação podem ser implementados sem o uso do FDB 208.
Quando o FDB 2 08 não é utilizado, a ADB 206 se comunica
diretamente com a SEB 210 e/ou o sistema servidor 112 pode se comunicar diretamente com a SEB 210 ou assentos. Os vários
Petição 870190033755, de 08/04/2019, pág. 34/97
21/62 aspectos da presente divulgação não estão limitados a qualquer configuração de rede específica.
[0052] Sistema 300: A Figura 3A mostra um exemplo de um sistema 300 com um assistente digital 312 que pode ser executado em um dispositivo de assento 326 (também pode ser referido como dispositivo de encosto), um sistema de gerenciamento de bordo 344 e/ou um PED 302 que está emparelhado com o dispositivo de assento 326 e/ou o sistema de gestão de bordo 344, em um aspecto da presente divulgação. O sistema de gerenciamento de bordo 344 pode ser semelhante ao sistema de computador 106 e/ou servidor 112 descrito acima em relação às Figuras 1A/1B. O dispositivo de assento 326 pode fazer parte do sistema de interface de usuário 114 ou fazer interface com o sistema de interface de usuário 114 também descrito acima em relação às Figuras 1A/1B. É observado o dispositivo de assento 326 não necessita de ser montado no encosto de um assento e pode ser suportado por outras estruturas, tais como um anteparo, parede, braço de um assento, e etc. Os aspectos adaptativos da presente divulgação não são limitados para qualquer localização ou orientação específica do dispositivo de assento 326.
[0053] Em um aspecto, o dispositivo de assento 326 inclui um dispositivo de exibição 330, um processador 332, uma memória 340, uma interface de comunicação 328 e um dispositivo de armazenamento local 342 para armazenar conteúdo. O dispositivo de assento 326 recebe entrada/pedidos de usuário através de um
Petição 870190033755, de 08/04/2019, pág. 35/97
22/62 módulo de entrada 338. O módulo de entrada 338 pode ser configurado para utilizar uma tela sensível ao toque local incluída com o monitor 330, um teclado virtual local, um mouse externo, teclado externo ou qualquer outro dispositivo de entrada. Os vários aspectos adaptativos aqui descritos não estão limitados a nenhum dispositivo de entrada específico.
[0054] O dispositivo de assento 326 também pode receber entradas/comandos de voz através de um microfone 336. Os comandos de voz são fornecidos ao assistente digital 312 e processados, como descrito abaixo em detalhe.
[0055] O processador 332 tem acesso à memória 340 através de uma interconexão 305. O processador 332 pode ser, ou pode incluir, um ou mais microprocessadores programáveis para fins gerais ou fins específicos, processadores de sinal digital (DSPs), controladores programáveis, circuitos integrados de aplicação específica (ASICs), dispositivos lógicos programáveis (PLDs) ou similares, ou uma combinação de tais dispositivos. O sistema de barramento 305 é uma abstração que representa qualquer um ou mais barramentos físicos separados e/ou conexões ponto-a-ponto, conectados por pontes, adaptadores e/ou controladores apropriados. O sistema de barramento 305, portanto, pode incluir, por exemplo, um barramento de sistema, um barramento de interconexão de componentes periféricos (PCI), um barramento PCI-Express, HyperTransport ou ISA (Industry Standard Architecture), um barramento (SCSI), um barramento serial universal (USB) ou um
Petição 870190033755, de 08/04/2019, pág. 36/97
23/62 barramento padrão 1394 do Institute of Electrical and Electronics Engineers (IEEE) (às vezes chamado de Firewire) ou qualquer outro tipo de interconexão.
[0056] Em um aspecto, o processador 336 executa uma camada IFE 334 que proporciona entretenimento a bordo e outras opções aos usuários. A camada IFE 334 fornece conteúdo de áudio/vídeo, bem como controles para acessar o conteúdo. A camada IFE 334 utiliza a interface de comunicação 328 para fazer interface com o PED 3 02 e/ou com o sistema de gerenciamento de bordo 344. A interface de comunicação 328 inclui lógica e circuitos para fazer interface com o sistema de gerenciamento de bordo 344 e/ou PED 302. Em um aspecto, a interface de comunicação 328 pode usar uma conexão sem fio e/ou com fio para tal comunicação.
[0057] Em um aspecto, o PED 302 pode ser um telefone celular, um notebook, um tablet, um laptop ou qualquer outro dispositivo similar. O PED 302 pode incluir um processador 306 que tenha acesso a uma memória 310 através de uma interligação/barramento para executar as instruções armazenadas. O processador 306 pode ser, ou pode incluir, um ou mais microprocessadores programáveis de uso geral ou para fins especiais, processadores de sinais digitais (DSPs), controladores programáveis, circuitos integrados para aplicações específicas (ASICs), dispositivos lógicos programáveis (PLDs) ou similares ou uma combinação desses dispositivos. Os PEDs 302 incluem tipicamente um microfone 309
Petição 870190033755, de 08/04/2019, pág. 37/97
24/62 para detectar som e convertê-lo em sinais elétricos correspondentes para processamento, armazenamento e/ou saída, por exemplo, entrada de voz para comunicação telefônica, recepção de comandos de voz para operação do PED, gravação de informação de áudio, e etc.
[0058] O PED 302 inclui um dispositivo de armazenamento 316 que pode ser ou pode incluir qualquer meio de armazenamento para armazenar dados de uma maneira não volátil, como um ou mais discos de base magnética ou óptica, memória flash ou unidade de estado sólido. O dispositivo de armazenamento 316 pode ser usado para armazenar o conteúdo exibido em um monitor 304 do PED 302. Em um aspecto, o monitor 304 pode incluir uma tela sensível ao toque para receber comandos de entrada, bem como um microfone (não mostrado) para receber entrada de voz.
[0059] O dispositivo de armazenamento 316 pode armazenar o
assistente digital 312 que pode ser executado fora da memória
310. Em um aspecto, o assistente digital 312 pode ser
executado como um aplicativo para download que pode ser
armazenado em um dispositivo de armazenamento de uma loja de aplicativos (App Store”) (não mostrada) como a operada pela Apple, Inc. sob a marca comercial ITUNES, a loja de aplicativos operada pela Google, Inc. sob a marca registrada GOOGLE PLAY ou a loja de aplicativos operada pela Microsoft Corporation sob a marca WINDOWS STORE. Alternativamente, a loja de aplicativos pode ser um servidor de páginas da internet para um site operado por um provedor do sistema de
Petição 870190033755, de 08/04/2019, pág. 38/97
25/62 gerenciamento de bordo 344, como o fabricante ou uma companhia que opera o veículo (por exemplo, uma companhia aérea comercial, operadora de trem, linha de cruzeiro, uma linha de ônibus e etc.).
[0060] Em um aspecto, um controlador de função de assento 318 fornece um controlador 320 para controlar o sistema de entretenimento para acessar conteúdo de áudio/vídeo e um controlador 322 para controlar um monitor inteligente (ou seja, ou de interfaces com o dispositivo de assento 326) . Outro controlador de sistema 324 pode incluir um controlador para controlar o sistema de iluminação para controlar as luzes de um assento de passageiro, um controlador para um sistema de chamada de atendimento para chamar um atendente, um controlador para o sistema telefônico, um controlador para serviço de alimentos para pedir comida, um controlador para fazer ajustes de assento e outros. Os vários aspectos aqui divulgados não estão limitados a qualquer tipo particular de função de assento. Em um aspecto, com base em uma solicitação do usuário, o assistente digital 312 fornece um comando ao controlador de função do assento 318 para executar uma ação solicitada, por exemplo, luz de ligar ou desligar, chamar um atendente, pedir comida e outras funções.
[0061] Em um aspecto, o controlador de função de assento 318 se comunica com o módulo de comunicação PED 308, bem como com o dispositivo de assento 326. Em um aspecto, módulo de comunicação PED 308 pode incluir uma ou mais interfaces para
Petição 870190033755, de 08/04/2019, pág. 39/97
26/62 se comunicar com diferentes dispositivos, incluindo Wi Interface Wi-Fi, interface Bluetooth, interface NFC (Near Field Communication) e outros. Os aspectos adaptativos aqui descritos não estão limitados a qualquer interface específica. Contudo nota-se que apesar de um único bloco ser mostrado para o módulo de comunicação PED 308 por conveniência, o módulo de comunicação pode ter diferentes interfaces, cartões, lógica e circuitos para cumprir os diferentes protocolos/padrões de comunicação.
[0062] Em um aspecto, o sistema de gerenciamento integrado 344 inclui um servidor 345 (semelhante ao servidor de mídia 112 e/ou sistema de computador 106) . O servidor 345 inclui um processador 346 que tem acesso a uma memória 350 através de um sistema de barramento, semelhante ao barramento 305 descrito acima em detalhe. O processador 346 pode ser, ou pode incluir, um ou mais microprocessadores programáveis de uso geral ou para fins especiais, processadores de sinais digitais (DSPs), controladores programáveis, circuitos integrados de aplicação específica (ASICs), dispositivos lógicos programáveis (PLDs) ou similares ou uma combinação desses dispositivos.
[0063] O processador 346 tem acesso a um dispositivo de armazenamento 348 que pode ser usado para armazenar dados, aplicativos e arquivos de programa. Em um aspecto, o sistema de gerenciamento de bordo 344 mantém dados de voo e passageiros 352, por exemplo, hora de chegada, altitude e outras informações, bem como dados de passageiros que
Petição 870190033755, de 08/04/2019, pág. 40/97
27/62 identifiquem cada passageiro para um voo, um lugar atribuído a um passageiro e qualquer outra informação que pode identificar exclusivamente o passageiro. Os dados de voo podem ser recuperados e apresentados a um usuário pelo assistente digital 312, em resposta a um pedido do usuário.
[0064] O software de sistema 356 do sistema de gerenciamento de bordo 344 é executado pelo processador 346 para controlar o funcionamento global do servidor 345. Em um aspecto, o sistema de servidor 345 também pode executar o assistente digital 312 ou parte dele.
[0065] Em um aspecto, o servidor 345 se comunica com o PED 302 e/ou o dispositivo de assento 326 através de uma interface de comunicação 358. A interface de comunicação 358 também pode ser utilizada para receber informação do solo. A interface de comunicação 358 inclui uma ou mais interfaces para uma conexão com fio e/ou sem fio, como descrito acima com relação às Figuras 1A/1B e 2.
[0066] A Figura 3B mostra um diagrama de blocos do assistente digital 312, em um aspecto da presente divulgação. Em um aspecto, o assistente digital 312 é uma inteligência artificial que pode interagir com um usuário em um veículo de transporte, por exemplo, uma aeronave. O assistente digital 312 fornece informação relativa ao conteúdo que pode estar disponível na aeronave e/ou processa um pedido de ação ou um pedido de tripulação ou fornece ajuda com isso, como descrito abaixo em detalhe.
Petição 870190033755, de 08/04/2019, pág. 41/97
28/62 [0067] O assistente digital 312 recebe uma entrada de voz 360 ou uma entrada de texto 366. Os exemplos fornecidos a seguir de algumas solicitações de usuário/entrada: Reproduza um filme de Harry Potter. Há algum filme nesse voo interpretado por Brad Pitt? Reproduza uma lista de reprodução de rock. Toque uma música de Ed Sheeran. Mostre fotografias de Ed Sheeran. Eu quero um copo de água. Quanto tempo até chegarmos ao nosso destino? Qual é a altitude atual? Qual é a velocidade atual? Como está o clima no destino? Como está o tempo em Seattle? Listar todos os itens de compras para perfume. Você tem algum relógio eletrônico em duty free? Ligue a luz de leitura. Defina o controle parental para PG. Lembre-me de preencher minha I-94 quando chegarmos. Qual é a capital da França? Lembre-me de enviar uma mensagem para a coleta quando chegarmos.
[0068] A entrada de voz é fornecida a um módulo de voz para texto 362 (pode ser referido como módulo 362) que converte a entrada de voz em texto. O texto convertido ou a entrada de texto 366 é então fornecida a um analisador de linguagem natural 364 (também pode ser referido como analisador 364).
[0069] O analisador 364 marca as palavras na frase de entrada com conotações gramaticais. A lógica do analisador transforma frases em palavras com construções gramaticais e fornece uma melhor compreensão das palavras e seus relacionamentos com outras palavras em uma dada frase/entrada. A relação entre as palavras pode ser agrupada ou paralela. A relação agrupada
Petição 870190033755, de 08/04/2019, pág. 42/97
29/62 incluem palavras agrupadas que definem outra palavra ou a palavra anterior, conforme descrito abaixo em detalhes.
[0070] A saída do analisador de erros 364 é fornecida a um interpretador de linguagem natural treinado 368 (também pode ser referido como módulo 368) que inclui um categorizador 368A e um interpretador 368B. O módulo 368 traduz palavras e gramática para uma entrada legível por máquina que pode estar na forma de uma estrutura JSON (Java Script Object Notation).
[0071] O módulo 368 recebe um detalhamento das notações de frase e gramática do analisador 364. O módulo 368 verifica a lógica da árvore hierárquica, palavras dependentes conhecidas, ações, substantivos e outros. O categorizador 368A tenta categorizar a sentença bruta com base em um conjunto de dados treinado armazenado em uma estrutura de dados 372 ou outra forma, por exemplo, banco de dados, tabela e etc. O treinamento é supervisionado para garantir respostas apropriadas e não ofensivas pelo assistente digital, de modo contrário o treinamento não supervisionado que pode resultar em respostas imprevisíveis e/ou possivelmente ofensivas.
[0072] O conjunto de dados treinado pode ser para diferentes categorias, por exemplo, uma categoria de dados de voo que inclui metadados identificando várias ações em torno de dados de voo, uma categoria de dados de entretenimento para várias ações relacionadas ao entretenimento, por exemplo, filmes, áudio, reprodução de filme, pausar um filme, controles associados a movimentos) e uma categoria de compras para
Petição 870190033755, de 08/04/2019, pág. 43/97
30/62 armazenar metadados associados a ações relacionadas a compras, por exemplo, compra, devolução e listagem. 0 conjunto de dados treinados também pode incluir uma categoria de instruções da tripulação, uma categoria de segurança associada à segurança da aeronave e outras, como uma listagem de categoria de ajuda e explicação das instruções disponíveis. Vale ressaltar que o conjunto de dados treinados pode continuar evoluindo e mudando à medida que o assistente digital 312 se torna mais confiável e preciso ao longo do tempo. Por exemplo, pode haver casos de uso envolvendo idiomas estrangeiros que o conjunto de dados treinado não atende satisfatoriamente. Para lidar com essas situações, o conjunto de dados treinados pode incluir treinamento a bordo e incluir modificações e acréscimos com base no feedback dos usuários finais para melhorar ainda mais a qualidade das respostas às solicitações e instruções.
[0073] 0 interpretador 368B do módulo 368 começa a avaliar um item raiz e se move mais profundamente através de uma árvore constituinte para fornecer um relacionamento mais detalhado com uma palavra pai. 0 interpretador 3 6 8B fornece uma solicitação de ação ou informação a um processador de linguagem de máquina 370 (pode ser referido como Processador 370). 0 processador 370 então faz chamadas API (Application Programming Interface) para os dispositivos apropriados, por exemplo, dispositivos membros da tripulação 376 ou um dispositivo de assentos 374 (semelhante ao 326 descritos acima em relação à Figura 3A para executar uma ação solicitada.
Petição 870190033755, de 08/04/2019, pág. 44/97
31/62 [0074] Fluxo de Processo: A Figura 4A mostra um fluxo de processo 400 para usar o assistente digital 312, de acordo com um aspecto da presente descrição. O processo começa no bloco B402, quando o assistente digital 312 é instalado em um dispositivo de assento 326, servidor 345 e/ou PED 302. Os aspectos adaptativos descritos aqui não estão limitados aonde os vários componentes do assistente digital 312 são executados. Por exemplo, o módulo 362 pode ser executado no dispositivo de assento 326, enquanto o analisador 364, o módulo 368 e o processador 370 podem ser executados em outros dispositivos.
[0075] Uma vez que o assistente digital 312 é inicializado, uma entrada do usuário é recebida no bloco B404. O processo determina se a entrada é uma solicitação de voz no bloco B406. Em um aspecto, o pedido de voz é recebido pelo microfone 309 ou 33 6 (ver Fig. 3A) . Quando a entrada é uma entrada de voz, então esta é convertida em texto no bloco B408 pelo módulo 362 e fornecida ao analisador 364 no bloco B410. Quando a entrada é uma entrada de texto recebida através do módulo de entrada 338, então o texto é fornecido ao analisador 364.
[0076] No bloco B410, o analisador 364 examina o texto e transforma frases em palavras com construções gramaticais, o que proporciona uma melhor compreensão das palavras e suas relações com outras palavras em uma dada sentença/entrada. As relações das palavras podem ser agrupadas ou paralelas. Por exemplo, as relações agrupadas incluem palavras agrupadas que
Petição 870190033755, de 08/04/2019, pág. 45/97
32/62 definem outra palavra ou palavra anterior. Por exemplo, na frase Reproduza um filme”, o termo filme é agrupado em relação à palavra reproduza. Por outro lado, as palavras irmãs na frase Reproduzir um filme ou uma música são filme e música. Isso significa que a música não define a palavra filme, mas sim um novo caminho com uma relação e/ou com a palavra filme. O analisador 362 usa uma frase/sentença e gera uma construção legível por máquina da frase, por exemplo:
[0077] Uma frase de entrada reproduzir um filme que Brad Pitt atuou” pode ser representada como uma árvore a seguir.
(S (VP reproduzir (NP (NP um filme) (SBAR (WHNP que) (S (NP Brad
Pitt)(VP atuou (PP)))))))
Uma saída do analisador 364 pode ser:
natural”: Reproduzir filme que Brad Pitt atuou”,
Itens”: [ palavra” reproduzir” tipo”: VP” subpalavra” [ palavra”, filme” { tipo” : NP” subpalavra”
Petição 870190033755, de 08/04/2019, pág. 46/97
33/62 [
palavra, Brad Pitt tipo : NP subpalavra [
palavra, atuol tipo : NP subpalavra ]
] ]
]
Como mostrado acima, palavras dependentes que fornecem mais detalhes do anterior têm um relacionamento agrupado.
[0078] A informação pode ser extraída com base em campos aleatórios condicionais (CRF) ou modelos de Markov ocultos (HMM) conjuntos treinados que permite que as palavras apropriadas de uma sentença sejam identificadas e processadas. Os conjuntos treinados incluem frases, suas palavras, parte da fala de cada palavra e uma marcação de informações associadas. A intenção da pessoa que digitou ou pronunciou a frase pode ser analisada com base em conjuntos de treinamento para cada
Petição 870190033755, de 08/04/2019, pág. 47/97
34/62 intenção de extração de informações. Alternativamente, intenção pode ser analisada reutilizando algum outro conjunto comum treinado.
[0079] A seguir um exemplo:
Lembre VB o
me PRP o
de TO o
ir VB B-Subj
j antar NN I-Subj
no IN o
sábado NN B-dia
às IN o
3 CD B-tempo
As seguintes informações podem ser extraídas da frase lembre me de ir jantar no sábado às 3”:
• jantar” é a lembrança do sujeito.
• sábado” é o dia. Neste caso o sujeito escolherá o parente mais próximo de sábado.
• 3” é a hora. AM e PM podem ser decididos pelo sistema com base no mais próximo, AM ou PM, para a hora atual. Claro que algum treinamento incluirá AM e PM. Um exemplo a seguir será dado mais detalhes sobre quando. Campos perdidos de dia e hora serão gerados com base no tempo relativo.
Lembre VB o
me PRP o
de TO o
Petição 870190033755, de 08/04/2019, pág. 48/97
35/62
ir VB B-Subj
j antar NN I-Subj
no IN o
sábado NN B-dia
às IN o
3 CD B-tempo
PM NNP I-Time [0080] Voltando à Fig. 4B, no bloco B414 é fornecida uma saída do analisador 364 para o módulo 368 que interpreta a entrada e utiliza a aprendizagem automática para fornecer instruções ao processador 370. O módulo 368 recebe uma análise legível por máquina de uma frase e notações gramaticais do analisador 364. O módulo 368 verifica a lógica da árvore hierárquica, palavras dependentes conhecidas, ações, substantivos e outros.
[0081] O categorizador 368A tenta categorizar a sentença bruta com base em um conjunto de dados treinado armazenado na estrutura de dados 372 que fornece um certo grau de precisão, que é usado para calcular o nível de confiança de uma resposta. O interpretador 368B do módulo 368 começa a avaliar um item raiz e se move mais profundamente através da árvore constituinte para fornecer um relacionamento mais detalhado com uma palavra pai.
[0082] No exemplo fornecido acima, o interpretador 368B começa avaliando o primeiro item e verifica seu tipo. Por exemplo, se o tipo for um verbo, ele saberá que uma ação está envolvida. O interpretador 368B avalia em seguida o campo da palavra e
Petição 870190033755, de 08/04/2019, pág. 49/97
36/62 passa-o através de uma palavra derivada para converter palavras na sua parte básica antes de ser processado. Isso abrange, por exemplo, em que reproduzir, por exemplo, pode ser escrito como reproduções, reproduzidas e etc. Em seguida, ele usará essa palavra originária para filtrar o que é esperado a seguir. O interpretador 368B avalia subitens para obter mais detalhes sobre um item atual. Como exemplo, o interpretador 368B pode usar um algoritmo de aprendizado de máquina chamado Árvore de Decisão e Floresta Aleatória, para fornecer uma representação mais precisa de uma ação pretendida. Mesmo que a árvore de decisão possa ser formulada automaticamente com base no conjunto de treinamento, um exemplo de como a árvore pode parecer é mostrado na Figura 4B e descrito abaixo em detalhes.
[0083] O processador 370, em seguida, prepara uma resposta para o dispositivo apropriado. A resposta pode ser a de interagir com o sistema de atendimento ao passageiro, por exemplo, ativando uma luz de leitura, enviando uma solicitação à tripulação, por exemplo, solicitando uma bebida ou definindo um lembrete para preparar documentos personalizados antes da chegada.
[0084] A Figura 4B mostra um exemplo 420 de usar uma árvore de decisão, de acordo com um aspecto da presente divulgação. No bloco B424, o módulo 368 determina se existe um verbo raiz. Caso contrário, o assistente digital realiza uma pesquisa de conteúdo no bloco B426.
Petição 870190033755, de 08/04/2019, pág. 50/97
37/62 [0085] Se houver um verbo, então uma ação implícita é determinada no bloco B428. A ação implícita pode ser para uma reprodução de mídia no bloco B430, se o verbo estiver na lista de reprodução de mídia, por exemplo, reproduzir, lista e outros.
[0086] A ação implícita pode envolver compras, conforme mostrado no bloco B432. Isso novamente dependerá se o verbo estiver na categoria de compras, por exemplo, comprar, listar e outros.
[0087] A ação implícita pode envolver dados de voo, como mostrado no bloco B434. Isto dependerá se o verbo pertence à lista de verbos de dados de voo, por exemplo, mostrar e outros.
[0088] A ação implícita pode ser uma ação de lembrete, como mostrado no bloco B436, se o verbo estiver na lista de verbo lembrar, por exemplo, lembre, defina e outros.
[0089] A outra ação, mostrada no bloco B438 é desenvolvida a medida que o sistema continua a aprender e evoluir.
[0090] Como mostrado acima, a árvore de decisão pode mudar porque alguns verbos podem existir em várias listas com uma intenção diferente com base no substantivo ou no assunto da frase. Por exemplo, a palavra lista, pode existir em listas de verbos de dados de ação, compras e dados de reprodução de mídia. Substantivo, como filme, pode descrever ainda mais uma ação da lista pretendida. Portanto, com base nas variáveis de entropia e ganho de informações, a árvore de decisão pode ser
Petição 870190033755, de 08/04/2019, pág. 51/97
38/62 transformada para melhorar a eficiência da interpretação, em que uma lista pode se tornar um nó pai para determinadas categorias de ação. Quando um nó de folha é alcançado, o assistente digital 312 sabe a ação necessária com base na entrada.
[0091] Em um aspecto, a presente divulgação se refere às aplicações de entretenimento de voo para o tratamento de pedidos de clientes e/ou da tripulação usando um interpretador e interpretador de linguagem natural. Os métodos acima podem ser usados para aceitar solicitações de passageiros ou membros da tripulação a bordo de um sistema de voo através do uso de linguagem natural escrita ou digitada em um sistema em voo ou em um dispositivo eletrônico pessoal.
[0092] Em um aspecto, um usuário pode disponibilizar solicitações de informações em um voo ou uma ação por meio de um mecanismo de voz humana natural ou de texto. Os sistemas e métodos descritos aqui permitem que os usuários façam solicitações de informações, como horário de chegada ou informações relacionadas a uma listagem de filmes no voo, ou uma ação como reproduzir um filme ou solicitar um copo de água e outros. Os vários aspectos aqui descritos melhoram a experiência do passageiro ao fornecer uma ferramenta que responderá a todas as perguntas e/ou ajudará no preenchimento de solicitações sem precisar pesquisar por diferentes tipos de serviços.
Petição 870190033755, de 08/04/2019, pág. 52/97
39/62 [0093] Sistema de Processamento: A Figura 5 é um diagrama de blocos de alto nível mostrando um exemplo da arquitetura de um sistema de processamento 500 que pode ser usado de acordo com um aspecto. 0 sistema de processamento 500 pode representar o servidor multimídia 112, o sistema informático 106, o WAP 130, o sistema 344 de gerenciamento de bordo, o dispositivo de assento 326 ou qualquer dispositivo de usuário (PED 302) que tente estabelecer interface com um dispositivo informático de veículo. Note que certos componentes padrão e bem conhecidos que não são pertinentes aos aspectos presentes não são mostrados na Figura 5.
[0094] 0 sistema de processamento 500 inclui um ou mais processadores 502 e memória 504, acoplados a um sistema de barramento 505. 0 sistema de barramento 505 mostrado na Figura 5 é uma abstração que representa qualquer um ou mais barramentos físicos separados e/ou conexões ponto-a-ponto, conectados por pontes, adaptadores e/ou controladores apropriados. 0 sistema de barramento 505, portanto, pode incluir, por exemplo, um barramento de sistema, um barramento de interconexão de componentes periféricos (PCI), um barramento PCI-Express, HyperTransport ou ISA (Industry Standard Architecture), um barramento (SCSI), um barramento serial universal (USB) ou um barramento padrão 1394 do Institute of Electrical and Electronics Engineers (IEEE) (às vezes chamado de Firewire) ou qualquer outro tipo de interconexão.
Petição 870190033755, de 08/04/2019, pág. 53/97
40/62 [0095] Os processadores 502 são as unidades centrais de processamento (CPUs) do sistema de processamento 500 e, assim, controlam sua operação global. Em certos aspectos, os processadores 502 realizam isto executando o software armazenado na memória 504. Um processador 502 pode ser, ou pode incluir, um ou mais microprocessadores programáveis de uso geral ou para fins especiais, processadores de sinal digital (DSPs), controladores programáveis, circuitos integrados de aplicação específica (ASICs), dispositivos lógicos programáveis (PLDs) ou similares, ou uma combinação de tais dispositivos.
[0096] A memória 504 representa qualquer forma de memória de acesso aleatório (RAM), memória somente leitura (ROM), memória flash ou similares, ou uma combinação de tais dispositivos. A memória 504 inclui a memória principal do sistema de processamento 500. As instruções 506 podem ser utilizadas para implementar o assistente digital 312 e/ou as etapas do processo das figuras 4A-4B descritos acima.
[0097] Um ou mais dispositivos internos de armazenamento em massa 510 e um adaptador de rede 512, também estão ligados aos processadores 502 através do sistema de barramento 505. Dispositivos internos de armazenamento em massa 510 podem ser, ou podem incluir qualquer meio convencional para armazenar grandes volumes de dados de modo não volátil, como um ou mais discos magnéticos ou ópticos, memória flash ou unidade de estado sólido.
Petição 870190033755, de 08/04/2019, pág. 54/97
41/62
[0098] O adaptador de rede 512 fornece o sistema de
processamento 500 com a capacidade de se comunicar com
dispositivos remotos (por exemplo, através de uma rede e pode
ser, por exemplo, um adaptador internet ou similar.
[0099] O sistema de processamento 500 também inclui um ou mais dispositivos de entrada/saída (I/0) 508 acoplados ao sistema de barramento 505. Os dispositivos de I/0 508 podem incluir, por exemplo, um dispositivo de exibição, um teclado, um mouse O dispositivo de E/S pode estar na forma de um aparelho tendo um ou mais dos componentes anteriores, como um monitor com um teclado real ou virtual, botões e/ou outras superfícies sensíveis ao toque.
[00100] Sistema 600: A Figura 6 mostra outro exemplo de um assistente digital 600 (também pode ser referido como sistema 600) usando uma rede neural artificial (pode ser referida como ANN ou rede neural) 604 para responder a solicitações de usuários de acordo com outro aspecto da presente descrição, o sistema 600 pode ser usado para interagir com aplicativos de entretenimento a bordo para lidar com solicitações de clientes e/ou tripulação, ações relacionadas a compras e ações relacionadas à segurança. O sistema 600 permite fazer solicitações para informações/ações usando voz e/ou texto.
[00101] Em um aspecto, o sistema 600 usa uma memória de curto prazo 612 configurada para operar como um dispositivo menos utilizado recentemente (LRU) para responder a perguntas de acompanhamento do usuário após receber uma consulta inicial do
Petição 870190033755, de 08/04/2019, pág. 55/97
42/62 usuário. A memória de curto prazo 612 permite que um controlador 606 do sistema 600 emule uma conversação humana, mantendo o controle das respostas anteriores às solicitações do usuário, conforme descrito abaixo.
[00102] Em um aspecto, o sistema 600 inclui o módulo de voz 362 para texto que recebe uma entrada de voz (ou consulta/resposta do usuário) 360 e converte-a em texto. O texto é então fornecido ao analisador 364 que foi descrito acima em detalhes. Quando uma entrada de texto 366 é recebida, a entrada de texto é fornecida diretamente ao analisador 364. Contudo nota-se que embora o módulo de voz 362 para texto seja mostrado como um componente separado, pode ser integrado com um controlador 606 do sistema 600.
[00103] O analisador 364 examina o texto e transforma frases em palavras com construções gramaticais, o que proporciona uma melhor compreensão das palavras e suas relações com outras palavras em uma dada frase/entrada. O analisador 364 gera uma sentença marcada (referida como parte das etiquetas de fala ou pos_tags) com base no contexto da entrada do usuário 360. Contexto neste aspecto indica uma categoria de ação, por exemplo, ações relacionadas à mídia, ações de compras, ações de dados de voo, ações de lembrete ou qualquer outro tipo de ação que a rede neural 604 é treinada para tratar, como descrito abaixo em detalhes. Os vários aspectos adaptativos da presente divulgação não estão limitados a qualquer categoria de ação ou contexto específico. O termo contexto e categoria
Petição 870190033755, de 08/04/2019, pág. 56/97
43/62 são usados de forma intercambiável em relação a tomar qualquer ação em resposta a uma solicitação do usuário.
[00104] As etiquetas do analisador 364 são fornecidas para um módulo extrator de recursos (pode ser referido como extrator de recursos) 602 e para a rede neural 604. O extrator de recursos 602 extrai informações relevantes da sentença marcada e as fornece ao controlador 606.
[00105] Em um aspecto, a memória de curto prazo 612 armazena um parâmetro de filtro para o mapa de valores 614A/614N e 616A/616N para cada sessão de usuário como pares de valorchave. Os mapas de valores de parâmetros de filtro são baseados em parâmetros de contexto do filtro e um valor para cada parâmetro. Em um aspecto, a memória de curto prazo 612 é configurada para operar como uma memória do tipo LRU, em que
pares de valores-chave recentes são retidos para cada
sessão/ conversa do usuário, descritos abaixo em detalhes.
[00106] A entrada marcada com quaisquer contextos de saída
anteriores são fornecidos para a rede neural 604 para
avaliação. Quando uma solicitação é recebida pela primeira vez, pode não haver contexto anterior. A rede neural 604 fornece um contexto de ação, um contexto do filtro e pelo menos um contexto de resposta. O contexto de ação identifica um tipo de ação que pode ser necessário para uma solicitação de uma categoria de ação, incluindo mídia relacionada, compras, dados de voo, lembrete ou qualquer outra categoria de ação, conforme descrito abaixo em detalhes. O contexto do
Petição 870190033755, de 08/04/2019, pág. 57/97
44/62 filtro inclui parâmetros de filtro que são aplicados ao contexto de ação. O contexto de resposta fornece informações para extrair do contexto de ação e, em seguida, executar uma ação em resposta a uma solicitação.
[00107] Uma saída baseada em uma avaliação da rede neural 604 é fornecida ao controlador 606 que inclui uma máquina de estado 608 e um gerenciador de ação 610 que é usado para processar a saída de rede neural 604.
[00108] O controlador 606 mantém uma ou mais estruturas de dados para armazenar um contexto de ação 618, um contexto do filtro 620 e um contexto de resposta 622 para cada sessão de usuário. O contexto de ação 618 está associado a uma interface de programação de aplicativo (API) 624. O contexto do filtro 620 fornece um parâmetro de consulta 626 para a API 624. Uma resposta 644 para uma solicitação é gerada usando o contexto de resposta 622.
[00109] O controlador 606 utiliza a saída da rede neural 604 para encontrar um contexto de ação para uma sessão de comunicação do usuário. Se o contexto de ação estiver ausente, o controlador 606 notifica o usuário de que ele não entendeu a solicitação. Se um contexto de ação é encontrado a partir da estrutura de dados do contexto de ação 618, o controlador 606 verifica se um contexto de ação anterior corresponde ao novo. Se não houver correspondência, uma entrada na memória de curto prazo 612 para a sessão de usuário é limpa e a máquina de estado 608 realiza uma alternância de contexto, por exemplo,
Petição 870190033755, de 08/04/2019, pág. 58/97
45/62 de uma categoria de ação de pesquisa de mídia para uma categoria de ação de compra.
[00110] O controlador 606 verifica e manipula o contexto de resposta a partir da saída da rede neural 604. Se não houver contexto de resposta, o controlador 606 notifica o usuário de que ele não entendeu a solicitação.
[00111] O controlador 606 também recebe parâmetros de filtro da saída da rede neural 606. O controlador 606 verifica se os valores de parâmetros de filtro são armazenados na memória de curto prazo 612. Para parâmetros de filtro que não têm um valor associado, o controlador 606 adiciona os parâmetros de filtro a uma fila de entrada pendente para fazer perguntas de acompanhamento. Para cada item na fila de entrada pendente, o controlador 606 solicita que o usuário forneça uma resposta. A resposta do usuário, juntamente com os parâmetros do filtro, é novamente fornecida à rede neural 606 para processamento.
[00112] O controlador 606 determina se o usuário cancelou a solicitação. Se a solicitação não for cancelada, a saída da rede neural 605 para o acompanhamento é enviada para o analisador 364 para marcação e para o extrator de recurso 602 para extrair informações relevantes.
[00113] O controlador 606 também verifica se o valor para a consulta do usuário foi respondido. Se não, a pergunta é feita novamente. Se foi respondido, ele remove os parâmetros do filtro da fila pendente e, em seguida, faz um loop para verificar se há outros itens pendentes na fila.
Petição 870190033755, de 08/04/2019, pág. 59/97
46/62
Posteriormente, o gerenciador de ação 610 faz uma solicitação a uma entidade (por exemplo, o sistema de gerenciamento de bordo 344, um membro da tripulação PED, o controlador de função do banco 318 ou qualquer outro dispositivo) com base no contexto de ação e nos parâmetros do filtro. O gerenciador de ações 610 usa o contexto de resposta para saber quais informações extrair. O gerador de linguagem natural 646 então preenche uma frase com a informação solicitada e fornece uma resposta ao usuário.
[00114] Em um aspecto, o controlador 606 mantém uma estrutura de dados (pode ser referida como uma estrutura de dados de sessão do usuário) 627 para rastrear a comunicação com cada usuário PED. Cada sessão de comunicação unicamente identificada por um identificador 628. Uma consulta de usuário 630 armazenada em um dispositivo de memória acessível ao controlador 606 e pode ser diferente da memória de curto prazo 612. As etiquetas do analisador 364 são armazenadas como 632, enquanto as etiquetas de recurso do extrator de recursos 602 são armazenadas como 634. Um estado de sessão 636 é mantido pela máquina de estado 608 indicando se uma sessão é nova, se a sessão requer continuação ou é cancelada. Os parâmetros de filtro para uma solicitação atual 638 são mantidos como 640, enquanto o contexto de resposta é mantido como 640. A resposta que é enviada para o dispositivo de usuário para uma sessão de comunicação 642 também é armazenada. Um exemplo de uma
Petição 870190033755, de 08/04/2019, pág. 60/97
47/62 estrutura de dados de sessão de usuário 627 é dado a seguir. O controlador 606 é referido abaixo como Genie.
[00115] typedef struct GenieSession /** The session id. */ std::string sessionid [628, Figura 6A];
/** The query line. [Entrada do usuário 360] */ std::string line;
/** The part-of-speech tagged line [do analisador 364].
std::string pos_tagged_line;
/** The entity tag values. */
JSON::Value entity_tags;
/** Holds the state of the session [636, Figura 6A]
Current possible states are new, follow-up, cancel. */
GenieSessionState state;
/** last status */ int lastStatus;
/** Holds the saved values of previous and current input parameter context. */
Short term memory 612;
/** The last request action context */ std::string actionContext;
/** * Holds the filter parameters for a current request.
Petição 870190033755, de 08/04/2019, pág. 61/97
48/62 * This includes the filter context determined by neural network 604 and any missing required filter parmeters */ std::vector<std::string> filterContexts;
/** The response contexts */ std::vector<std::string> responseContexts;
/** The last artificial neural network (ANN) 604 context output */ std::vector<std::string> previousANNOutputContexts;
/** The current ANN context output */ std::vector<std::string> currentANNOutputContexts;
/** holds the filter parameters that requires a follow up with the user. */ std::queue<std::string> followUpFilterContextQueue;
/** Store the final response. This is the response returned to user. */
JSON::Value finalResponse;
/** The code of the natural language to be used for the responses. */ std::string languageCode;
/** * This variable is populated during a umake request state and used in the handle * response state. This holds the response context variables mapping to values.
Petição 870190033755, de 08/04/2019, pág. 62/97
49/62 std::vector<std::unordered_map<std::string, std::string>>
responseOutputValues;
ActionManager (610, Figura 6A)::ResponseType responseType;
/** * This is used to determine if there's a need to specify filter context * values used for the query to user.
*/ std::unordered_map<std::string, std::string>
previousFiltersValues;
bool isFilterContextChanged;
End GenieSession;
[00116] JSON, como usado acima, é uma abreviação de JavaScript Object Notation e é um formato legível para estruturar dados. As duas partes principais que compõem os objetos JSON são chaves e valores que juntos formam um par chave/valor. Uma chave é uma sequência entre aspas e o valor pode ser uma sequência, um número, uma expressão booleana, uma matriz ou um objeto. Um par de valores-chave que seguem uma sintaxe específica, com a chave seguida por dois pontos e um valor. O par chave/valor são separados por vírgula. Vale ressaltar que o JSON é simplesmente ilustrado como um exemplo e os aspectos adaptativos não estão limitados a qualquer estrutura de dados específica, formato de objeto ou linguagem de computador.
Petição 870190033755, de 08/04/2019, pág. 63/97
50/62 [00117] Em um aspecto, o controlador 606 é escalonável para diferentes ações que ele pode tomar para diferentes categorias de ação/contextos. Isso é implementado definindo uma classe de gerenciador de ações que registra a implementação de uma função de modelo. A função de modelo descreve como as solicitações do contexto das ações que são feitas, como os parâmetros de contexto do filtro são transmitidos e como extrair informações de uma resposta usando o contexto de resposta. A resposta da função de modelo inclui o que precisa ser armazenado na memória de curto prazo 612, bem como o que pode ser necessário para retornar a uma solicitação específica. Isto permite que o sistema 600 seja flexível para adicionar facilmente diferentes contextos de ação, contextos de filtro para treino da rede neural 604 e para o extrator de funções 602, respectivamente, e depois integrar o treino ao controlador 606 com o mínimo esforço e experimentação.
[00118] Um exemplo da função de modelo é fornecido como:
typedef Status (*ActionHandler) ( const std::string &languageCode, const std::unordered_map<std::string,std::string>
&filterContexts, const std::vector<std::string> &responseContexts, std::vector<std::unordered_map<std::string, std::string>> &outputValues, std::unordered_map<std::string, std::vector<std::string>> &storableValues,
ResponseType &responseType )
Petição 870190033755, de 08/04/2019, pág. 64/97
51/62 [00119] Em um aspecto, a memória de curto prazo 612 do sistema 600 permite que uma conversação entre um humano e o sistema IFE pareça mais realista, isto é, semelhante ao humano. A memória de curto prazo 612 pode ser configurada como uma memória LRU, onde o parâmetro de filtro para entradas de valor são movidos para cima em prioridade, pois são usados para evitar serem removidos. As entradas da memória de curto prazo 612 são removidas quando novos itens são adicionados se a capacidade de memória da memória de curto prazo 612 atingir um limite. O limite pode ser configurado com base no tamanho da memória, tipo de memória e ambiente operacional.
[00120] Vale ressaltar que os vários componentes do sistema 600 (ou seja, assistente digital 600) podem ser implementados em um dispositivo de computação ou distribuídos em vários dispositivos de computação. Por exemplo, semelhante ao assistente digital 312 descrito acima em detalhes, o sistema 600 pode ser implementado como uma aplicação descarregável executada pelo PED 302. Em outro aspecto, o sistema 600 pode ser executado pelo dispositivo de assento 326 que está emparelhado de forma segura com o PED 302 Ainda em um outro aspecto, o sistema 600 pode ser executado pelo sistema de gerenciamento de bordo 344. Em outro aspecto, os vários componentes do sistema 600 são distribuídos através de um PED 302, dispositivo de assento 326 e o sistema de gerenciamento de bordo 344, descrito acima em relação à Figura 3A. Os
Petição 870190033755, de 08/04/2019, pág. 65/97
52/62 aspectos adaptativos aqui descritos não estão limitados a qualquer dispositivo específico que execute o sistema 600.
[00121] Rede Neural 6 04: A Figura 6B mostra um exemplo da rede neural 604, de acordo com um aspecto da presente divulgação. A Figura 6C mostra um exemplo de um processo para treinar a rede neural 604, enquanto as Figuras 6D-6E fornecem capturas de tela de uma ferramenta de treinamento implementada por processador utilizada para treinar a rede neural 604, de acordo com um aspecto da presente descrição.
[00122] Em um aspecto, a rede neural 604 interage com ou inclui um conversor de entrada 646 que recebe uma frase de entrada 648 (semelhante à entrada de texto 366, Figura 6A) e parte das etiquetas de discurso 650 do analisador 364. As entradas são convertidas em vetores e, em seguida, fornecidos para a rede neural 604.
[00123] Como um exemplo, a rede neural 604 inclui uma pluralidade de camadas 604A-604C com uma pluralidade de nós interligados com uma função de ativação. Os vetores de entrada são apresentados à rede neural 604 através da camada de entrada 604A, que se comunica com uma ou mais camadas ocultas 604B que realizam processamento de vetor usando um sistema de conexões ponderadas. As camadas ocultas 604B são ligadas a uma camada de saída 604C que gera uma saída, por exemplo, um contexto de ação 652, contexto do filtro 654 e contexto de resposta 656. O contexto de resposta e os contextos de filtro são mapeados (mostrados como 658) e
Petição 870190033755, de 08/04/2019, pág. 66/97
53/62 retornados em loop a camada de entrada de rede neural 6 04A, mostrada como ações anteriores 660.
[00124] Em um aspecto, a rede neural 604 usa uma regra de aprendizagem, que modifica os pesos das conexões de acordo com padrões de entrada. Um exemplo, de uma regra de aprendizado é a regra delta” usando propagação retrógrada de erro. Com a regra delta, como com outros tipos de retropropagação, o aprendizado é um processo supervisionado que ocorre com cada ciclo ou caminho” (ou seja, cada vez que a rede neural 6 04 é apresentada com um novo padrão de entrada) através de um fluxo de ativação de saídas para frente e propagação inversa de erros de ajustes de peso. Mais simplesmente, quando a rede neural 604 é inicialmente apresentada com um padrão, ela faz um chute” aleatório sobre o que pode ser. Enquanto a rede neural 604 está sendo treinada, esta percebe o quanto sua resposta foi da resposta real e faz um ajuste apropriado aos seus pesos de conexão.
[00125] Como exemplo, uma entrada pode ser representada por:
I = f ((Σ Wi . Entrada)
Um nó de camada oculta usando uma função de ativação sigmoidal gera uma saída. A saída é então usada para modificar o peso da entrada durante o treinamento.
[00126] Uma vez que a rede neural 604 é treinada” para um nível satisfatório, esta é implementada dentro de um sistema IFE como parte do sistema 600. A companhia aérea não precisa especificar nenhuma operação de treinamento e em vez disso
Petição 870190033755, de 08/04/2019, pág. 67/97
54/62 permite que a rede neural 604 trabalhe em um modo de propagação direta. Novas entradas são apresentadas à camada de entrada 604A e são processadas pelas camadas do meio 604B como se o treinamento estivesse ocorrendo, no entanto, neste ponto a saída é retida e nenhuma retropropagação pode ocorrer. A saída de uma execução de propagação direta é um modelo previsto para dados, que podem ser usados para uso e análise futuros.
[00127] A Figura 6C mostra um exemplo de um processo 660 para treinar a rede neural 604 em um dispositivo de computação, por exemplo, sistema de computação 500, descrito acima em relação à Figura 5. Processo 660 começa no bloco B662. No bloco B664, a sentença de entrada 648 é criada para a rede neural 604. Um contexto do filtro, resposta e ação é atribuído à frase no bloco B666. As palavras da frase são rotuladas com base no contexto do filtro B668. Um exemplo de treino da rede neural 604 é mostrado nas capturas de tela das Figuras 6D e 6E que são agora descritas abaixo em detalhe.
[00128] A Figura 6D mostra uma captura de tela de uma ferramenta de treinamento que é executada por um dispositivo de computação, por exemplo, o sistema de processamento 500 da Figura 5. O código executável para a ferramenta de treinamento é executado fora de um dispositivo de memória, por exemplo, memória 504. O treino da rede neural 604 é executado com base em um conjunto de operações. Por exemplo, no bloco 672, uma ação pretendida é selecionada. A ação pretendida neste exemplo
Petição 870190033755, de 08/04/2019, pág. 68/97
55/62 é para pesquisar mídia. Parâmetros de filtro para a ação são
definidos no bloco 674. Neste exemplo, os parâmetros são
media_search. conent _type e media_search .genre. Uma
resposta é selecionada no bloco 676, por exemplo,
media_search.get_title. Uma questão é adicionada para a ação pretendida, filtros e resposta no bloco 678. Neste exemplo, a pergunta é mostrada como Liste todos os filmes de terror.
[00129] Os resultados do treinamento são enviados para um servidor. O servidor, por exemplo, o sistema de gerenciamento integrado 344. Os campos de filtro para este treinamento são especificados como media.genre e media.content_type e são mostrados como 682.
[00130] A Figura 6E mostra o uso de perguntas de acompanhamento para treinar a rede neural 604, continuando com o exemplo da Figura 6D. Os blocos 686, 688 e 690 são autoexplicativos, com base na descrição da Figura 6D acima. No bloco B692, a seguinte pergunta é mostrada como O que há sobre comédias?. Os blocos 694 e 696 são autoexplicativos. O segmento 698 mostra um exemplo de uma saída da rede neural 6 04, ou seja, o contexto de ação, contexto do filtro e contexto de resposta. Vale ressaltar que os exemplos das Figuras 6D e 6E são simplesmente mostrados como a rede neural 604 pode ser treinada para diferentes tipos de ação e contextos de ação. Não está limitada ao contexto de ação busca de mídia ou qualquer outro contexto de ação.
Petição 870190033755, de 08/04/2019, pág. 69/97
56/62 [00131] Fluxo de Processo: As Figuras 7A-7B (também podem ser referidas como Figura 7) mostram um fluxo de processo 700 para usar o sistema 600, de acordo com um aspecto da presente divulgação. Os blocos de processo da Figura 7 podem ser executados por componentes do sistema 600 que podem ser implementados em software, hardware ou uma combinação dos mesmos.
[00132] O processo 700 começa no bloco B702, quando o sistema 600 é instalado em um dispositivo de assento 326, servidor 345 e/ou PED 302 e quando a rede neural 604 foi treinada para uma ou mais categorias de ação/contextos, por exemplo, em entretenimento a bordo, incluindo reprodução de mídia, ações de compras para comprar produtos e serviços, informações de voo, ações de lembrete, interface com membros da tripulação para solicitar serviços ou qualquer outro tipo de contexto de ação. Os exemplos abaixo são descritos para um contexto de ação que é baseado na busca de mídia” para procurar mídia acessível ou armazenada pelo sistema IFE. Os aspectos adaptativos da presente divulgação não estão limitados a qualquer tipo específico de ação ou contexto de ação.
[00133] Os parâmetro do contexto do filtro para pesquisa de mídia podem incluir: media_search.cast, media_search.content_type, media_seach.director, media_search.genre, media_search.title, media_search.rating, e media_search.year. O uso de alguns destes parâmetros de filtro para treinar a rede neural 604 são mostrados nas
Petição 870190033755, de 08/04/2019, pág. 70/97
57/62
Figuras 6D e 6E, descritos acima. Exemplos de um contexto de resposta incluem:
media_search.get_cast, media_search.get_content_type, media_search.get_diretor, media_search.get_genre, media_search.get_title, media_search.get_rating, media_search.get_year.
[00134] O contexto de ação é mapeado para uma API (624) , enquanto os parâmetros de filtro são mapeados para um parâmetro de consulta da API e o contexto de resposta é mapeado para uma resposta para uma solicitação específica.
[00135] Um exemplo do uso da API de pesquisa de mídia para responder a uma consulta de usuário é o seguinte. Suponha que um usuário envie uma solicitação para: Listar um filme dirigido por Brad Pitt. O contexto de ação para essa consulta pode ser media_search, os parâmetros de contexto do filtro podem ser media_search.diretor e media_search.content_type, e O contexto de resposta pode ser media_search.get_title. Como descrito abaixo, o contexto de resposta pode ser emparelhado com um parâmetro de filtro (por exemplo, parâmetro de filtro para o mapa de valores 614A/614N, Figura 6A) para perguntas de acompanhamento com conhecimento do contexto. o usuário começou com a sentença Liste um filme dirigido por Brad Pitt, e depois fez uma pergunta de acompanhamento Quando foi lançado?, o contexto de resposta media search.get title se torna um parâmetro de filtro para media search.title para um próximo pedido.
Petição 870190033755, de 08/04/2019, pág. 71/97
58/62 [00136] No bloco B704, uma solicitação ou pergunta do usuário é recebida de um dispositivo do usuário (por exemplo, PED 302 ou dispositivo de assento 326), por exemplo, Lista de filmes por diretor” . A solicitação pode ser recebida por voz ou texto. Se um comando de voz é recebido, então o comando de voz é convertido em texto pela voz para o módulo de texto 362.
[00137] No bloco B706, o controlador 606 valida o pedido do usuário. Em um aspecto, o controlador 606 verifica ou gera um identificador de sessão de usuário 628 se comunicando com o usuário. Se a sessão for inválida, a solicitação será negada.
[00138] Se a sessão for válida, então o processo se move para o bloco B708, quando a solicitação do usuário é fornecida ao analisador 364 que analisa a solicitação do usuário e marca a solicitação do usuário. O pedido analisado é então fornecido ao extrator de características 602 e à rede neural 604 no bloco B710.
[00139] No bloco B712, com base no seu treinamento, a rede neural 604 processa a sentença marcada e fornece uma saída para o controlador 606. Em um aspecto, a saída da rede neural 604 inclui um contexto de ação, contexto do filtro e um contexto de resposta. Por exemplo, com relação à consulta do usuário, Liste filmes por diretor, o contexto de ação pode ser media_search”, os parâmetros de filtro podem ser media_search.content_type” e media_search.diretor, enquanto o contexto de resposta pode ser media_search.get_title”. Em um aspecto, uma vez que a rede neural 604 é treinada no
Petição 870190033755, de 08/04/2019, pág. 72/97
59/62 contexto de ação, como descrito acima em relação às Figuras 6C-6E, a saída da rede neural 6 04 é gerada com um elevado nível de precisão.
[00140] No bloco B714, o controlador 606 atualiza um contexto anterior, se disponível. Para atualizar o contexto anterior, o controlador 606 no bloco B716, primeiro encontra o contexto de ação (por exemplo, media_search) e determina se o contexto de ação foi alterado por qualquer motivo. O controlador 606 realiza esta tarefa usando uma ou mais estruturas de dados 627 que rastreiam uma sessão do usuário, como mostrado na Figura 6A e descrito acima em detalhes.
[00141] Se o contexto de ação foi alterado, então no bloco B718, o controlador 606 limpa quaisquer valores de entrada de uma memória que mantém a estrutura de dados. Esta memória é diferente da memória de curto prazo 612. O contexto de ação atual é então definido como o contexto de ação mais recente.
[00142] No bloco B720, o controlador 606 determina parâmetros de contexto do filtro, por exemplo, media_search.content_type e media_search.diretor, com base na consulta acima mencionada. No bloco B722, as entradas pendentes são configuradas para os valores dos parâmetros de contexto do filtro.
[00143] No bloco B724, o controlador 606 identifica o contexto de resposta, por exemplo, media search.title.
[00144] No bloco B726, o controlador 606 determina se a API de contexto de ação (por exemplo, 624) está ausente ou precisa de mais parâmetros. Essa determinação pode ser baseada em
Petição 870190033755, de 08/04/2019, pág. 73/97
60/62 parâmetros pré-configurados que podem ser necessários para determinados contextos de ação. Os parâmetros pré-configurados são pré-carregados e salvos em um dispositivo de memória (não mostrado) acessível ao controlador 606. Os parâmetros ausentes são adicionados ao contexto atual no bloco B728.
[00145] No bloco B730, o controlador 606 recupera valores de sentença marcados de um cache de memória (não mostrado) e os pares de valores-chave do extrator de recurso 602, quando todos os valores de parâmetro de contexto do filtro são atualizados.
[00146] No bloco B732, o controlador 606 armazena pares de valores-chave (614A/614N) na memória de curto prazo 612. Os pares de valores-chave para o exemplo anterior podem incluir: media_search.content_type (filter parameter) = movies (value) e media search.diretor (parâmetro de filtro) = null (valor) [00147] No bloco B734, o controlador 606 identifica quaisquer outros parâmetros de contexto do filtro ausentes, quando aplicável a quaisquer perguntas/respostas de acompanhamento pendentes à solicitação do usuário.
[00148] No bloco B736, o controlador 606 identifica se há uma pergunta/resposta de acompanhamento à consulta do usuário, por exemplo, Qual diretor. A pergunta de acompanhamento é então enviada ao usuário no bloco B738. A resposta do usuário é recebida no bloco B740 e analisada pelo analisador 364. A resposta do usuário pode ser Brad Pitt” ou qualquer outro nome.
Petição 870190033755, de 08/04/2019, pág. 74/97
61/62 [00149] A resposta marcada pelo analisador 364 é novamente enviada para a rede neural 604 e o extrator de características 602 no bloco B742. Por exemplo, a frase marcada é Brad Pitt e o contexto pode ser media_search.diretor. A rede neural 604 processa a resposta marcada no bloco B744 semelhante ao bloco de processo B712, descrito acima em detalhe.
[00150] No bloco B746, se uma continuação do usuário não tiver sido cancelada, os rótulos da resposta do usuário serão extraídos. Uma saída do extrator de características 602 é também extraída pelo controlador 606.
[00151] No bloco B748, os pares de valores-chave para a resposta são armazenados na memória de curto prazo 612, quando o contexto do filtro ainda existe e não foi cancelado.
[00152] No bloco B750, o gerenciador de ações 610 processa a solicitação de ação para a resposta e o contexto de ação é removido de um contexto de resposta de acompanhamento pendente que é mantido pelo controlador 606. A resposta é então processada no bloco B752, com base no contexto. No bloco B754, a resposta é fornecida ao usuário após ser convertida para uma linguagem natural pelo processador de linguagem natural 646.
[00153] O processo então procura uma próxima solicitação no mesmo contexto de ação ou em outro contexto de ação.
[00154] Em um aspecto, usar uma rede neural treinada, permite que o controlador processe eficientemente as solicitações do usuário. Isso melhora a comunicação com os dispositivos do
Petição 870190033755, de 08/04/2019, pág. 75/97
62/62 usuário e também fornece um melhor serviço para os passageiros.
[00155] Assim, métodos e sistemas para um assistente digital em um veículo de transporte foram descritos. Note-se que as referências ao longo deste relatório para um aspecto” (ou modalidade”) ou aspecto um aspecto” significam que uma característica, estrutura ou função particular descrita em relação ao aspecto está incluída em pelo menos um aspecto da presente divulgação. Portanto, é enfatizado e deve ser apreciado que duas ou mais referências para um aspecto” ou um aspecto único ou um aspecto alternativo” em várias partes deste relatório não são necessariamente todas referentes ao mesmo aspecto. Além disso, as características, estruturas ou funções particulares a serem referidas podem ser combinadas como adequadas em um ou mais aspectos da divulgação, como seria reconhecido pelos especialistas na técnica.
Embora a presente divulgação seja descrita acima em relação ao que é atualmente considerado seus aspectos preferidos, deve ser entendido que a divulgação não é limitada àquela descrita acima. Pelo contrário, a divulgação se destina a cobrir várias modificações e disposições equivalentes dentro do espírito e âmbito das reivindicações anexas.

Claims (20)

REIVINDICAÇÕES
1. Método CARACTERIZADO pelo fato de que compreende:
receber uma entrada do usuário para uma sessão de comunicação válida por um processador executável, assistente digital em um dispositivo em um veículo de transporte;
marcar pelo assistente digital, as palavras de entrada do usuário com uma conotação gramatical;
gerar um contexto de ação, um contexto do filtro e um contexto de resposta por uma rede neural, com base na entrada de usuário marcada;
armazenar pelo assistente digital, um par de valoreschave para um parâmetro do contexto do filtro em uma memória de curto prazo, com base em uma saída da rede neural;
atualizar pelo assistente digital, o par de valoreschave na memória de curto prazo após receber uma resposta a uma solicitação de acompanhamento e outra saída da rede neural treinada; e fornecer resposta à resposta do assistente digital.
2/5 categoria de compras para ações relacionadas a compras, uma categoria de instruções de tripulação e uma categoria de segurança associada a segurança do veículo de transporte.
2. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que um analisador de linguagem natural do assistente digital marca as palavras da entrada do usuário.
3/5 usando uma memória de curto prazo configurada como uma memória usada menos recentemente para armazenar um par de valores-chave associados ao parâmetro do contexto do filtro;
gerar uma saída pela rede neural em resposta a uma solicitação de acompanhamento do usuário;
atualizar o par de valores-chave na memória de curto prazo com base na saída da rede neural; e fornecer uma resposta ao pedido de acompanhamento.
3. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a rede neural é treinada em uma pluralidade de contextos de ação incluindo uma categoria de dados de entretenimento para ações relacionadas ao entretenimento, uma
Petição 870190033755, de 08/04/2019, pág. 77/97
4/5 uma memória incluindo um meio legível por máquina compreendendo código executável por máquina; e um módulo processador acoplado à memória, o módulo processador executa o código executável por máquina para um assistente digital para:
receber uma entrada do usuário para uma sessão de comunicação válida por um processador executável, assistente digital em um dispositivo em um veículo de transporte;
marcar pelo assistente digital, as palavras de entrada do usuário com uma conotação gramatical;
gerar um contexto de ação, um contexto do filtro e um contexto de resposta por uma rede neural, com base na entrada de usuário marcada;
armazenar pelo assistente digital, um par de valoreschave para um parâmetro do contexto do filtro em uma memória de curto prazo, com base em uma saída da rede neural treinada;
atualizar pelo assistente digital, o par de valoreschave na memória de curto prazo após receber uma resposta a uma solicitação de acompanhamento e outra saída da rede neural; e fornecer uma resposta à resposta do assistente digital.
4. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o dispositivo proporciona entretenimento no veículo de transporte.
5/5
5. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o dispositivo é um controlador de função do assento para funções de controle associadas a um assento no veículo de transporte.
6. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a memória de curto prazo é configurada como uma memória menos utilizada recentemente.
7. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o veículo de transporte é um entre uma aeronave, um trem, um ônibus, um navio e um veículo de recreação.
8. Método CARACTERIZADO pelo fato de que compreende:
treinar uma rede neural para uma categoria de ação em uma aeronave associada a uma solicitação de usuário pretendida, definindo pelo menos um parâmetro de filtro e um contexto de resposta com base no parâmetro de filtro;
gerar pela rede neural um contexto de ação baseado na categoria de ação, um contexto do filtro e um contexto de resposta para uma entrada de usuário marcada;
Petição 870190033755, de 08/04/2019, pág. 78/97
9. Método de acordo com a reivindicação 8, CARACTERIZADO pelo fato de que o contexto de ação envolve o uso de um controlador de função do assento que controla as funções associadas a um assento da aeronave.
10. Método de acordo com a reivindicação 8, CARACTERIZADO pelo fato de que o contexto de ação é para executar um pedido de compra usando o dispositivo de assento
na aeronave.
11. Método de acordo com a reivindicação 8, CARACTERIZADO pelo fato de que o contexto de ação é para
fornecer dados de voo para o usuário.
12. Método de acordo com a reivindicação 8, CARACTERIZADO pelo fato de que o contexto de ação é para
fornecer assistência para um membro da tripulação na aeronave.
13. Método de acordo com a reivindicação 8, CARACTERIZADO pelo fato de que o contexto de ação é para
definir um lembrete ao usuário na aeronave.
14. Sistema CARACTERIZADO pelo fato de que compreende:
Petição 870190033755, de 08/04/2019, pág. 79/97
15. Sistema de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que um analisador de linguagem natural do assistente digital marca as palavras da entrada do usuário.
Petição 870190033755, de 08/04/2019, pág. 80/97
16. Sistema de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que a rede neural é treinada em uma pluralidade de contextos de ação incluindo uma categoria de dados de entretenimento para ações relacionadas a entretenimento, uma categoria de compras para ações relacionadas a compras, uma categoria de instruções de tripulação e uma categoria de segurança associada à segurança do veículo de transporte.
17. Sistema de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que o dispositivo proporciona entretenimento no veículo de transporte.
18. Sistema de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que o dispositivo é um controlador da função de assento para controlar funções associadas a um assento no veículo de transporte.
19. Sistema de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que a memória de curto prazo é configurada como uma memória menos utilizada recentemente.
20. Sistema de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que o veículo de transporte é um entre uma aeronave, um trem, um ônibus, um navio e um veículo de recreação.
BR102019007123-0A 2018-04-16 2019-04-08 assistentes digitais e métodos associados para um veículo de transporte BR102019007123A2 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15/954,271 US10573299B2 (en) 2016-08-19 2018-04-16 Digital assistant and associated methods for a transportation vehicle

Publications (1)

Publication Number Publication Date
BR102019007123A2 true BR102019007123A2 (pt) 2019-10-29

Family

ID=68052916

Family Applications (1)

Application Number Title Priority Date Filing Date
BR102019007123-0A BR102019007123A2 (pt) 2018-04-16 2019-04-08 assistentes digitais e métodos associados para um veículo de transporte

Country Status (3)

Country Link
CN (1) CN110400561A (pt)
BR (1) BR102019007123A2 (pt)
DE (1) DE102019109933A1 (pt)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11475720B2 (en) 2020-03-31 2022-10-18 Toyota Research Institute, Inc. Methods and systems for collecting sensor data according to a data collection configuration based on an estimated information gain
CN111498148A (zh) * 2020-04-23 2020-08-07 北京航空航天大学 基于fdnn的智能航天器控制器和控制方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2747153A1 (en) * 2011-07-19 2013-01-19 Suleman Kaheer Natural language processing dialog system for obtaining goods, services or information
US9542956B1 (en) * 2012-01-09 2017-01-10 Interactive Voice, Inc. Systems and methods for responding to human spoken audio
KR101638812B1 (ko) * 2012-04-23 2016-07-12 인텔 코포레이션 관찰 정보의 검색 및 관련 특정 컨텍스트의 검색을 위해 안구 운동 추적을 사용하는 시스템, 방법 및 컴퓨터 프로그램 제품
KR101759009B1 (ko) * 2013-03-15 2017-07-17 애플 인크. 적어도 부분적인 보이스 커맨드 시스템을 트레이닝시키는 것
US9959129B2 (en) * 2015-01-09 2018-05-01 Microsoft Technology Licensing, Llc Headless task completion within digital personal assistants
US10362609B2 (en) * 2016-08-10 2019-07-23 Panasonic Avionics Corporation Methods and systems for automatically pairing a personal electronic device on a transportation vehicle
US9972312B2 (en) * 2016-08-19 2018-05-15 Panasonic Avionics Corporation Digital assistant and associated methods for a transportation vehicle

Also Published As

Publication number Publication date
DE102019109933A1 (de) 2019-10-17
CN110400561A (zh) 2019-11-01

Similar Documents

Publication Publication Date Title
US11048869B2 (en) Digital assistant and associated methods for a transportation vehicle
US9972312B2 (en) Digital assistant and associated methods for a transportation vehicle
US11288566B2 (en) Building a gossip group of domain-specific chatbots
CN111857794A (zh) 机器人可扩展性基础设施
US20150066817A1 (en) System and method for virtual assistants with shared capabilities
US11657801B2 (en) Voice command detection and prediction
US10817675B2 (en) Methods and systems for distributing information on transportation vehicles
CN107210033A (zh) 基于众包来更新用于数字个人助理的语言理解分类器模型
US20150067503A1 (en) System and method for virtual assistants with agent store
US11087090B2 (en) System for focused conversation context management in a reasoning agent/behavior engine of an agent automation system
KR20210039049A (ko) 음성 인식을 수행하는 인공 지능 장치 및 그 방법
CN104765621B (zh) 一种在集群节点中部署程序的方法和系统
US10839792B2 (en) Recognition of out-of-vocabulary in direct acoustics-to-word speech recognition using acoustic word embedding
BR102019007123A2 (pt) assistentes digitais e métodos associados para um veículo de transporte
US20230237277A1 (en) Aspect prompting framework for language modeling
US20230281221A1 (en) Method for content synchronization and replacement
CN115914148A (zh) 具有两侧建模的对话智能体
CN106371931B (zh) 一种基于Web框架的高性能地学计算服务系统
US20240022620A1 (en) System and method of communications using parallel data paths
WO2021262365A1 (en) Natural language processing
US10560736B2 (en) System and method for providing in-vehicle services to commuters
CN102546595A (zh) 媒体的轻量变换
US11942070B2 (en) Voice cloning transfer for speech synthesis
US20230368773A1 (en) Methods and systems for generating personal virtual agents
US11978437B1 (en) Natural language processing

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B11A Dismissal acc. art.33 of ipl - examination not requested within 36 months of filing
B11Y Definitive dismissal - extension of time limit for request of examination expired [chapter 11.1.1 patent gazette]