• Nenhum resultado encontrado

3.4 Componentes de um sistema de di´ alogo

3.4.4 Gera¸c˜ ao de linguagem natural

A gera¸c˜ao de linguagem ´e um processo de transforma¸c˜ao de uma estrutura significa- tiva (l´ogica) em um conjunto de senten¸cas de uma linguagem natural. Essa estrutura ´e gerada ou fornecida pelo Gerente de Di´alogo e pode ser originada das informa¸c˜oes obtidas junto ao componente de Comunica¸c˜ao Externa ou seguindo a abordagem de di´alogo adotada pelo sistema.

O processo de gera¸c˜ao ´e divido em trˆes etapas, segundo Theune [30], onde cada uma possui desdobramentos importantes.

• Planejamento do texto – primeiro, as informa¸c˜oes obtidas de outros componentes s˜ao classificadas de sorte que seu conte´udo seja normalizado. Segundo, ap´os a

normaliza¸c˜ao as informa¸c˜oes s˜ao ordenadas para representar uma estrutura da sa´ıda do processo de gera¸c˜ao.

• Microplanejamento – a primeira tarefa dessa etapa consiste da escolha das pa- lavras que melhor representem os conceitos apresentados na estrutura de sa´ıda, levando em considera¸c˜ao um dado contexto. Na segunda ocorre uma decis˜ao de verificar dentro da estrutura de sa´ıda quais informa¸c˜oes podem ser agrupadas para formarem uma senten¸ca coesa. Por fim, informa¸c˜oes (pronomes, descri¸c˜oes literais, etc.) que possam descrever entidades de um contexto, ser˜ao utilizadas para criar novas frases.

• Realiza¸c˜ao de superf´ıcie – nesta etapa existem dois tipos de realiza¸c˜oes, a ling¨u´ıs- tica e a de estrutura. Na primeira est˜ao relacionados os aspectos gramaticais (re- gras sint´aticas e morfol´ogicas) envolvidos na cria¸c˜ao de senten¸cas gramaticais. E na segunda ocorre a convers˜ao das senten¸cas em algum formato de sa´ıda utilizado por um sistema de di´alogo (arquivo texto, informa¸c˜oes para um componente de sintetiza¸c˜ao, convers˜ao em imagens, etc.).

Na primeira etapa as informa¸c˜oes s˜ao independentes de linguagem, na segunda tanto informa¸c˜ao dependente de linguagem quanto dependente de contextos ser˜ao ne- cess´arias para a defini¸c˜ao de senten¸cas. E na terceira etapa, mais especificamente na realiza¸c˜ao ling¨u´ıstica, as informa¸c˜oes s˜ao dependentes de linguagem, pois neste caso trata-se da apresenta¸c˜ao formal e gramatical da mensagem de sa´ıda [30].

Em sistemas de di´alogo, a gera¸c˜ao de linguagem n˜ao necessita de todas as etapas apresentadas anteriormente. Apenas as etapas de microplanejamento e realiza¸c˜ao de superf´ıcie, uma vez que as informa¸c˜oes a serem repassadas ao usu´ario j´a foram traba- lhadas pelo Gerente de Di´alogo, o que dispensa a utiliza¸c˜ao da etapa de planejamento de texto, pelo menos como uma parte conjunta do processo de gera¸c˜ao de linguagem.

Theune [30] considera que os sistema de di´alogo focados a apenas um dom´ınio n˜ao necessitam de todas as etapas da gera¸c˜ao de linguagem, pois, alguns desses necessitam t˜ao somente de forma¸c˜ao de senten¸cas simples (sistema de perguntas e respostas). O

61 que envolve a determina¸c˜ao da estrutura coesa e gramatical da senten¸ca, duas partes das etapas da gera¸c˜ao de linguagem. E para isso, o uso de certas t´ecnicas para a manipula¸c˜ao de palavras ´e o suficiente para produzir sa´ıdas em linguagem natural.

Algumas dessas t´ecnicas s˜ao apresentadas por McTear [16]:

• Texto inalter´avel – utiliza partes das informa¸c˜oes advindas do Gerente de Di´alogo para a constru¸c˜ao da mensagem.

• Dados dispon´ıveis diretamente – uso de informa¸c˜oes obtidas diretamente, por meio do componente de Comunica¸c˜ao Externa (banco de dados ou base de co- nhecimento), para a constru¸c˜ao da estrutura da senten¸ca de sa´ıda.

• Dados comput´aveis – utiliza¸c˜ao de informa¸c˜oes derivadas de algum processo de racionaliza¸c˜ao adotado pelo sistema de di´alogo para a determina¸c˜ao das palavras a serem integradas na estrutura de sa´ıda.

• Dados n˜ao dispon´ıveis – inclus˜ao de informa¸c˜oes complementares, ou seja, in- forma¸c˜oes que n˜ao est˜ao presentes diretamente nos dados resultantes, mas que possuem relevˆancia para a resposta ao usu´ario.

Contudo para sistemas mais complexos tais t´ecnicas n˜ao s˜ao suficientes, pois elas n˜ao produzem senten¸cas flex´ıveis e dependentes de contexto, algo que se assemelha a que os humanos fazem quando dialogam. Segundo Theune [30] alguns pontos rele- vantes da gera¸c˜ao de linguagem em di´alogos por humanos s˜ao os seguintes: estilo de di´alogo, rela¸c˜ao entre falante e ouvinte, estados cognitivo, entre outros.

Por tais motivos Theune [30] considera quatro tipos de abordagens como mais con- dizentes com a gera¸c˜ao complexa de di´alogo. Elas s˜ao: an´alise reversa, realiza¸c˜ao baseada em gram´atica, realiza¸c˜ao baseada em moldes4 e gera¸c˜ao completa.

3.4.4.1 An´alise reversa

A an´alise de linguagem transforma uma senten¸ca em uma representa¸c˜ao que ex- presse seu significado. A gera¸c˜ao de linguagem realiza o caminho inverso, a partir de uma representa¸c˜ao ela atribui os componentes ling¨u´ısticos que expressem seu signifi- cado. Partindo dessa id´eia poderia ser utilizada a mesma gram´atica de interpreta¸c˜ao sint´atica para a gera¸c˜ao sint´atica e a mesma representa¸c˜ao significativa de contextos, a qual ´e produzida pelo Gerente de Di´alogo e fornecida, via usu´ario pelo componente de Entendimento de Linguagem para a gera¸c˜ao de linguagem natural.

Esse tipo de abordagem para gera¸c˜ao tr´as algumas vantagens: simplicidade de im- plementa¸c˜ao, pois somente uma gram´atica seria utilizada no sistema, uso de um padr˜ao para a representa¸c˜ao significativa de conceitos, aceita¸c˜ao psicol´ogica, uma vez que o sistema entenderia o que gera e interpreta e possibilidade de utiliza¸c˜ao de componentes diferentes para a sintetiza¸c˜ao de fala [30].

Entretanto, a gram´atica utilizada para o entendimento de linguagem ´e desenvolvida especialmente para esta tarefa, utilizando adapta¸c˜oes que permitam o entendimento de senten¸cas que n˜ao sejam totalmente gramaticais. Isso invalidaria o uso de tal gra- m´atica para a gera¸c˜ao, pois nela as senten¸cas produzidas tˆem de estar de acordo com a gramaticalidade da linguagem adotada pelo sistema.

Um outro fator negativo ´e a ambig¨uidade que a representa¸c˜ao significativa pode apresentar quando na gera¸c˜ao de linguagem. Isso ´e explicado pela pr´opria ambig¨ui- dade de uma linguagem natural, onde uma palavra pode expressar mais de um conceito, e uma reuni˜ao de conceitos podem determinar mais de uma senten¸ca que expresse o mesmo significado dependente de contexto.

Sistemas de di´alogo que possuam um dom´ınio espec´ıfico, logo um vocabul´ario fe- chado, podem se valer dessa abordagem. Pois, eles podem determinar um n´umero finito de senten¸cas a serem produzidas e ainda possuir poucas palavras a serem agre- gadas a algumas estruturas de sa´ıda em linguagem natural. Todavia, para estes tipos

63 de sistema esta abordagem apresenta uma desvantagem marcante, a falta de um meca- nismo de produ¸c˜ao de senten¸cas que leve em considera¸c˜ao fatores n˜ao significativos, ou proposicionais, tais como estilo de linguagem, estrutura de informa¸c˜oes, etc. Portanto, uma representa¸c˜ao significativa ser´a sempre mapeada para uma mesma senten¸ca [30].

3.4.4.2 Realiza¸c˜ao baseada em gram´atica

Utiliza uma gram´atica especializada para a gera¸c˜ao de uma linguagem natural, o que evita muitos dos problemas de uso de gram´atica apresentados anteriormente. Con- tudo, essa abordagem ainda apresenta algumas desvantagens, por´em todas de natureza pr´atica e n˜ao te´orica.

O tipo de representa¸c˜ao significativa usada como entrada necessita de certas in- forma¸c˜oes ling¨u´ısticas que n˜ao est˜ao dispon´ıveis em representa¸c˜oes significativas que utilizam l´ogica para sua express˜ao. A resolu¸c˜ao desse problema ´e utilizar t´ecnicas espec´ıficas para a etapa de microplanejamento, onde elas adicionam informa¸c˜oes em falta (tempo, n´umero, grau, gˆenero, etc.) na representa¸c˜ao significativa fornecida pelo componente de Gerˆencia de Di´alogo.

Por´em, essa medida causa uma outra desvantagem pr´atica ao uso de realiza¸c˜ao baseada em gram´atica, a lentid˜ao do processo de gera¸c˜ao de linguagem, o que pode atrapalhar o di´alogo entre usu´ario e sistema [30].

3.4.4.3 Realiza¸c˜ao baseada em moldes

Outra forma de realiza¸c˜ao ling¨u´ıstica ´e utilizar um conjuntos de estruturas semi- preenchidas de senten¸cas pr´e-definidas ou regras que expressam como produzir reali- za¸c˜oes ling¨u´ısticas [31] denominados moldes, para produzir senten¸cas em linguagem natural. Isso permite o uso de menos recursos gramaticais para a gera¸c˜ao de senten- ¸cas, pois os detalhes ling¨u´ısticos da etapa de microplanejamento s˜ao codificados na estrutura dos moldes.

Sendo assim, a representa¸c˜ao significativa, mesmo a que utiliza algum tipo de for- malismo l´ogico, pode ser utilizada sem maiores adapta¸c˜oes no processo de gera¸c˜ao de linguagem, uma vez que os recursos ling¨u´ısticos necess´arios para poss´ıveis adapta¸c˜oes estar˜ao presentes nos moldes.

Apesar da vantagem de praticidade de implementa¸c˜ao, esta abordagem apresenta a desvantagem de necessitar de codifica¸c˜ao antecipada dos poss´ıveis grupos de senten¸cas a serem gerados por este componente. Tamb´em como na abordagem anterior ainda ´e necess´ario que o componente Gerente de Di´alogo forne¸ca informa¸c˜oes que seriam tratadas pela etapa de planejamento de texto do processo de gera¸c˜ao de linguagem.

Outra desvantagem ´e a necessidade de adapta¸c˜ao ou mesmo reconstru¸c˜ao dos mol- des de um sistema de di´alogo. Isso ocorre por conseq¨uˆencia da determina¸c˜ao de moldes ser dependente de informa¸c˜oes espec´ıficas de dom´ınio e linguagem [30].

3.4.4.4 Gera¸c˜ao completa

Para sistemas de di´alogo simples o componente de gera¸c˜ao de linguagem utiliza apenas uma ou no m´aximo duas etapas do processo de gera¸c˜ao de linguagem, realiza- ¸c˜ao e microplanejamento. Todavia, para di´alogos mais complexos o uso de todas as etapas pode ser necess´ario. Assim, com a utiliza¸c˜ao de todas a etapas de gera¸c˜ao de linguagem o componente de gera¸c˜ao poderia receber informa¸c˜oes que n˜ao contivessem aspectos ling¨u´ısticos e ainda assim gerar senten¸cas gramaticais.

Contudo o uso de todas as etapas do processo de gera¸c˜ao em um componente de gera¸c˜ao de linguagem natural acarreta em uma cobertura maior do que a necess´aria para um sistema de di´alogo, mesmo os que necessitem lidar com di´alogos complexos, pois a uni˜ao de todas as etapas do processo de gera¸c˜ao de linguagem normalmente gera senten¸cas adequadas a um texto e n˜ao a um di´alogo [30].

65 Ent˜ao para o uso adequado de um componente de gera¸c˜ao de linguagem, adapta¸c˜oes ser˜ao necess´arias para que a sa´ıda textual deste componente se integre com os demais componentes do sistema e assim permite a gera¸c˜ao de senten¸cas para um di´alogo. Isto pode ser alcan¸cado pela adapta¸c˜ao de uma de suas etapas `a estrutura de hist´orico de di´alogo, mantida pelo componente de Gerˆencia de Dialogo, o que adequaria a sa´ıda textual ao tipo de coes˜ao encontrada em di´alogos.