Analisar o texto para a satisfação do hotel

Este tutorial o ajuda a analisar o texto usando nós especializados no manuseio de texto. Por exemplo, você pode realizar uma análise de sentimento.

Neste tutorial, um gerente de hotel deseja analisar as avaliações do hotel para saber a opinião dos clientes. Os comentários expressam opiniões sobre pessoal do hotel, conforto, limpeza, preço e outras áreas de interesse.

Figura 1. Gráfico de opiniões positivas
Gráfico de opiniões positivas. Ele mostra termos e frases, como localização, orçamento e comodidades do hotel. Esses termos são de tamanhos diferentes dependendo de sua importância. Eles organizaram o termo mais importante central que está no centro e é o maior.
Figura 2 Diagrama de opiniões negativas
Gráfico de opiniões negativas. Ele mostra termos e frases, como localização, orçamento e comodidades do hotel. Esses termos são de tamanhos diferentes dependendo de sua importância. Eles organizaram o termo mais importante central que está no centro e é o maior.

Visualizando o tutorial

Assistir vídeo Assista a este vídeo para visualizar as etapas deste tutorial. Pode haver pequenas diferenças na interface do usuário mostrada no vídeo. O vídeo deve ser um complemento do tutorial escrito. Este vídeo oferece um método visual para aprender os conceitos e as tarefas desta documentação.

Experimente o tutorial

Neste tutorial, você concluirá estas tarefas:

Exemplo de fluxo do modelador e conjunto de dados

Este tutorial usa o fluxo Hotel Satisfaction no projeto de amostra. O fluxo usa nós Analítica de Texto para analisar revisões fictícias sobre o hotel. O arquivo de dados usado é hotelSatisfaction.csv. A imagem a seguir mostra o fluxo do modelador de amostra.

Fluxo concluído
A imagem a seguir mostra o conjunto de dados de amostra.
Conjunto de dados de amostra

Tarefa 1: Abrir o projeto de amostra

O projeto de amostra contém vários conjuntos de dados e fluxos de modelador de amostra. Se você ainda não tiver o projeto de amostra, consulte o tópico Tutoriais para criar o projeto de amostra. Em seguida, siga estas etapas para abrir o projeto de amostra:

  1. Em Cloud Pak for Data no menu de navegação Menu de Navegação, escolha Projetos > Exibir todos os projetos.
  2. Clique em SPSS Modeler Project.
  3. Clique na guia Assets (Ativos ) para ver os conjuntos de dados e os fluxos do modelador.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra a guia Assets (Ativos) do projeto. Agora você está pronto para trabalhar com o fluxo do modelador de amostra associado a este tutorial.

texto alternativo

de volta para a parte superior

Tarefa 2: Examinar o nó Data Asset

O Hotel Satisfaction inclui vários nós. Siga estas etapas para examinar o nó Data Asset:

  1. Na guia Assets (Ativos ), abra o fluxo do modelador Hotel Satisfaction e aguarde o carregamento da tela.
  2. Clique duas vezes no nó hotelSatisfaction.csv. Esse nó é um nó de ativo de dados que aponta para o arquivo hotelSatisfaction.csv no projeto.
  3. Revise as propriedades do formato do arquivo.
  4. Opcional: Clique em Preview data (Visualizar dados) para ver o conjunto completo de dados.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra o nó Data Asset. Agora você está pronto para examinar o nó Text Mining.

Nó de Filtro

de volta para a parte superior

Tarefa 3: Examinar o nó de mineração de texto

A mineração de texto é um processo iterativo que identifica conceitos e padrões relevantes nos dados de texto. Quando você executa o nó Text Mining, o mecanismo de extração lê os dados do texto, identifica os conceitos relevantes e atribui um tipo a cada um deles. Em seguida, você pode revisar os resultados da extração usando o Text Analytics Workbench para ajustar o processo de extração. Você pode executar novamente o nó Text Mining para produzir novos resultados e, em seguida, avaliar os novos resultados. Observe o nó Type entre o nó Data Asset e o nó Text Mining. O nó Type é necessário para identificar corretamente os campos no conjunto de dados. Siga estas etapas para examinar o nó de mineração de texto:

  1. Clique duas vezes no nó Comments (Text Mining) para ver suas propriedades.
  2. Defina essas propriedades na seção Fields (Campos ):
    1. No campo Text (Texto), selecione Comments (Comentários).
    2. No campo ID, selecione id.
      Observação: somente o campo Texto é obrigatório.
      Figura 3. Propriedades do nó de mineração de texto
      Propriedades de construção do nó de mineração de texto. Ele mostra algumas configurações de campo na janela, como o campo Texto e o campo ID.
  3. Na seção Model (Modelo ), observe que o pacote de análise de texto selecionado é Hotel Satisfaction (English)/Topic + Opinion (Satisfação do hotel (Inglês)/Tópico + Opinião).

    Um pacote de análise de texto (TAP) é um conjunto predefinido de bibliotecas e recursos linguísticos e não linguísticos avançados, que são agrupados com um ou mais conjuntos de categorias predefinidas. Se nenhum pacote de análise de texto for relevante para o seu aplicativo, você poderá selecionar um modelo de recurso. Um modelo de recurso é um conjunto predefinido de bibliotecas e recursos linguísticos e não linguísticos avançados que foram ajustados para um domínio ou uso específico.

  4. Na seção Construir modelos, defina essas propriedades:
    1. Verifique se o campo Build modes está definido como Build interactively (nugget de modelo de categoria). Mais tarde, quando você executar o nó, essa opção iniciará o Text Analytics Workbench, que é uma interface interativa na qual você pode explorar e ajustar os resultados da extração.
    2. Verifique se o campo Iniciar sessão por está definido como Extração de conceitos e links de texto. A opção Extrair conceitos extrai apenas conceitos, enquanto a extração de TLA gera conceitos e links de texto que são conexões entre tópicos (como serviço, pessoal e comida) e opiniões.
  5. Expanda a seção Expert e verifique se a opção Accommodate spelling for a minimum word character length of está selecionada com um limite de ortografia de ' 5. Esta opção aplica uma técnica de agrupamento difuso que ajuda a agrupar palavras comumente escritas com ortografia incorreta ou palavras com grafia semelhante sob um conceito. O algoritmo de agrupamento fuzzy remove temporariamente as consoantes duplas ou triplas e todas as vogais (exceto a primeira) das palavras extraídas. Em seguida, ele os compara para ver se são iguais. Por exemplo, " location e " locattoin são agrupados.

    Figura 4. Propriedades de especialistas em nós de mineração de texto.
    Propriedades de especialistas em nós de mineração de texto. Ele mostra as configurações de propriedade do nó Text Mining. Alguns dos principais grupos de configurações são Settings, Build models e Expert. No agrupamento Especialista, há caixas de seleção para configurações como Acomodar ortografia para um limite mínimo de caracteres de raiz, Extrair unitermos, Extrair entidades não linguísticas, Algoritmo de maiúsculas, Agrupar nomes de pessoas parciais e completos quando possível e Usar derivação ao agrupar substantivos compostos.
  6. Clique em Salvar.
  7. Passe o mouse sobre o nó Comentários (Mineração de texto) e clique no ícone ExecutarÍcone de execução.
  8. No painel Outputs and models (Saídas e modelos ), clique nos resultados com o nome Comments (Comentários ) para abrir o Text Analytics Workbench.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra o Text Analytics Workbench. Agora você está pronto para ajustar os resultados.

Ambiente de trabalho de análise de texto

de volta para a parte superior

Tarefa 4: Ajuste os resultados no Text Analytics Workbench

O Text Analytics Workbench contém os resultados da extração e o modelo de categoria contido no pacote de análise de texto. É uma bancada de trabalho interativa na qual você pode explorar e ajustar os resultados extraídos, criar e refinar categorias e criar nuggets de modelos de categorias. Siga estas etapas para ajustar os resultados no Text Analytics Workbench:

conceitos

  1. Clique na guia Conceitos.

    Durante o processo de extração, os dados de texto são analisados para identificar palavras únicas interessantes ou relevantes, como ' airport ou ' location, e frases de palavras, como ' airport pick-up. Essas palavras e frases são chamadas coletivamente de termos. Usando os recursos linguísticos, os termos relevantes são extraídos e os termos semelhantes são agrupados em um termo principal que é chamado de conceito.

    Dessa forma, um conceito pode representar vários termos subjacentes. Depende de como o termo é usado em seu texto e do conjunto de recursos linguísticos que você está usando.

  2. Clique no ícone Filter (Filtro ) Ícone de filtro
  3. Você também pode usar um filtro para selecionar um subconjunto de conceitos. A imagem a seguir mostra as diferentes opções:

    Figura 5. Text Analytics Workbench - opções de filtro
    Text Analytics Workbench - opções de filtro

    Se você quiser remover os filtros e exibir todos os conceitos, clique em Clear Filter (Limpar filtro).

    Clique em Cancelar para fechar o painel Filtro.

Links de texto

  1. Clique na guia Links de texto.

    A análise de links de texto (TLA) é uma tecnologia de correspondência de padrões que compara as regras da TLA a conceitos e relacionamentos extraídos encontrados em seu texto. Na guia Links de texto, você pode criar e explorar os padrões de TLA encontrados em seus dados de texto.

  2. Selecione um padrão de tipo (por exemplo, <Services> + <Positive> ) para ver uma visualização do texto no documento. Se o texto na visualização do documento estiver truncado, clique no ícone Exibir todo o documento Ícone de visualização do documento inteiro para exibir o texto inteiro.
    Workbench de análise de texto - guia Links de texto. Mostra os padrões de tipo na guia Link de texto. Ao lado está o painel Preview, que tem uma tabela com três colunas. As três colunas são Entrada, Visualização do documento e Caminho da categoria.

Categorias

  1. Clique na guia Categories (Categorias ).

    Você pode criar e gerenciar suas categorias. Depois que os conceitos e tipos forem extraídos dos dados de texto, você poderá começar a criar categorias automaticamente usando técnicas como inclusão de conceitos, rede semântica (somente em inglês) ou manualmente.

    Como esse fluxo de exemplo usa um modelo de pacote de análise de texto, o modelo de categoria já está preenchido.

  2. Clique em Score all para pontuar os documentos ou registros. Sempre que uma categoria é criada ou atualizada, você pode ver se algum texto corresponde a um descritor em uma categoria específica. Se uma correspondência for encontrada, o documento ou registro é atribuído a essa categoria. O resultado é que a maioria dos documentos ou registros, se não todos, são atribuídos a categorias com base nos descritores das categorias.
  3. Expanda uma categoria, por exemplo, Hotel Amenities > Cleanliness > Neg > not cleaned.
  4. Visualize os documentos na guia Preview (Visualização ) e na guia Descriptors (Descritores ) para ver os dados de origem.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra a visualização do documento para a categoria Limpeza. Agora você está pronto para construir o modelo.

Nó de Preenchimento

de volta para a parte superior

Tarefa 5: Criar o modelo

Quando terminar de ajustar o processo de extração, você poderá gerar um modelo de categoria a partir das personalizações e das categorias que você criou. Siga estas etapas para criar e implantar o modelo:

  1. Clique em Generate a model (Gerar um modelo ) para gerar um modelo de categoria.
    Imagem mostrando o botão para Gerar um modelo
  2. Clique em Build para confirmar que você deseja gerar um modelo de categoria.
  3. Quando você vir o Success! clique em Retornar ao fluxo.
  4. Clique em Salvar e sair para salvar suas alterações e o nó Text Mining no fluxo.
    O nugget de modelo de categoria gerado é exibido em sua tela de fluxo.
    Figura 6. Nugget de modelo de categoria gerado
    Nugget de modelo de categoria gerado. Mostra um fluxo com um nó de Text Mining e um nugget de modelo de categoria.
  5. Observe os dois nós do Satisfaction Model no fluxo de exemplo. Agora que o Text Analytics Workbench validou e gerou um modelo de categoria, você pode implantá-lo em seu fluxo e pontuar o mesmo conjunto de dados ou pontuar novos dados. Cada modelo usa um modo diferente de pontuação.
    Figura 7. Fluxo de exemplo com dois modos para escoragem
    Fluxo de exemplo com dois modos para escoragem
  6. Clique duas vezes no primeiro nó do Modelo de Satisfação.
    1. Expanda a seção Configurações para ver que esse nó usa o modo de pontuação Categorias como campos. Com esse modo de pontuação, há tantos registros de saída quanto havia na entrada.
    2. Clique em Preview data (Visualizar dados). Você pode ver que cada registro agora contém um novo campo para cada categoria selecionada na guia Model (Modelo ). Para cada campo, insira um valor de sinalizador para true e false, como True/False ou 1/0. Nesse fluxo, os valores são configurados como 1 e 0 para agregar resultados e contar o número de respostas positivas, negativas, mistas (positivas e negativas) ou sem pontuação (sem opinião).

      Figura 8. Resultados do modelo - categorias como campos (1).
      Resultados do modelo - categorias como campos. É uma tabela com as colunas ID, Comments, Gender, Reason, Neg, Pos, Cont e Sentiment. As entradas da coluna ID são números. As entradas da coluna Comentários mostram frases curtas extraídas do texto. Por exemplo, um registro diz que é muito silencioso, mas muito caro. As entradas da coluna Motivo mostram se a viagem foi a negócios ou a lazer. Neg e Pos mostram uma contagem de sentimentos negativos e positivos para cada frase curta. O sentimento mostra se a avaliação foi positiva (somente números na coluna Pos), negativa (somente números na coluna Neg) ou mista (números nas colunas Neg e Pos).
    3. Feche a janela Visualizar.
    4. Clique em Cancelar.
  7. Clique duas vezes no segundo nó Satisfaction Model.
    1. Expanda a seção Configurações para ver que esse nó usa o modo de pontuação Categorias como registros. Um novo registro é criado para cada par " category, document. Tipicamente, há mais registros na saída do que havia na entrada.
    2. Clique em Preview data (Visualizar dados). Você pode ver que, junto com os campos de entrada, novos campos também são adicionados aos dados, dependendo do tipo de modelo.

      Figura 9. Resultados do modelo - categorias como registros (2).
      Resultados do modelo - categorias como registros. É uma tabela com as colunas ID, Comentários, Gênero, Motivo, Categoria e Sentimento. As entradas da coluna ID são números. As entradas da coluna Comentários mostram frases curtas extraídas do texto. Por exemplo, um registro diz que é muito silencioso, mas muito caro. As entradas da coluna Motivo mostram se a viagem foi a negócios ou a lazer. Neg e Pos mostram uma contagem de sentimentos negativos e positivos para cada frase curta. O sentimento mostra se a avaliação foi positiva (somente números na coluna Pos), negativa (somente números na coluna Neg) ou mista (números nas colunas Neg e Pos).
    3. Feche a janela Visualizar.
    4. Clique em Cancelar.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra o modelo de satisfação com uma visualização de documento. Agora você está pronto para visualizar os comentários.

Nó Modelo

de volta para a parte superior

Tarefa 6: Visualize os comentários

Você pode obter informações rápidas sobre o que os hóspedes apreciam no hotel visualizando os comentários. Siga estas etapas para criar um gráfico de nuvem de palavras:

  1. Selecione os comentários positivos:
    1. Na paleta, expanda a seção Operações de registro.
    2. Arraste o nó Select para a tela.
    3. Conecte o supernó Derive Sentiment ao nó Select.
    4. Clique duas vezes no nó Select para visualizar suas propriedades.
    5. Para o Modo, selecione Incluir.
    6. Para a condição, digite " Sentiment = "Pos".
    7. Clique em Salvar.
  2. Adicione um gráfico:
    1. Na paleta, expanda a seção Graphs (Gráficos ).
    2. Arraste o nó Gráficos para a tela.
    3. Conecte o nó Select ao nó Charts.
  3. Crie um gráfico de nuvem de palavras:
    1. Clique duas vezes no nó Gráficos para visualizar suas propriedades.
    2. Clique em Launch Chart Builder.
    3. Em Colunas a serem visualizadas, selecione Comentários.
    4. Exiba a lista de todos os tipos de gráfico e selecione Nuvem de palavras.

      Figura 10. Todos os tipos de gráficos
      Todos os tipos de gráficos
  4. Quando terminar, clique em Retornar ao fluxo.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra um gráfico de nuvem de palavras. Agora você está pronto para examinar o nó Text Link Analysis.

Gráfico de nuvem de palavras

de volta para a parte superior

Tarefa 7: Examinar o nó de análise de links de texto

Às vezes, talvez não seja necessário criar um modelo de categoria para pontuar. O nó Text Link Analysis adiciona uma tecnologia de correspondência de padrões à extração de conceitos da mineração de texto. O nó Text Link Analysis identifica as relações entre os conceitos nos dados de texto com base em padrões conhecidos. Esses relacionamentos podem descrever como um cliente se sente em relação a um produto, quais empresas estão fazendo negócios juntas ou até mesmo os relacionamentos entre genes e agentes farmacêuticos. Siga estas etapas para examinar o nó Análise de links de texto:
Nó de análise de link de texto
  1. Clique duas vezes no nó Text Link Analysis para ver suas propriedades.
  2. Defina essas propriedades na seção Fields (Campos ):
    1. No campo Text (Texto), selecione Comments (Comentários).
    2. No campo ID, selecione id.
      Observação: somente o campo Texto é obrigatório.

      Figura 11. Propriedades do CAMPO do nó Análise de links de texto.
      Propriedades do CAMPO do nó Análise de links de texto. Ele mostra as configurações de campo, como o campo de ID, o campo de texto, o campo de idioma, o tipo de documento, a unidade textual e as configurações do modo de parágrafo.
  3. Na seção Copiar recursos de, observe que o modelo de recurso selecionado é Hotel Satisfaction (inglês).

    Um modelo de recurso é um conjunto predefinido de bibliotecas e recursos linguísticos e não linguísticos avançados que foram ajustados para um domínio ou uso específico.

  4. Expanda a seção Expert e verifique se a opção Accommodate spelling for a minimum word character length of está selecionada com um limite de ortografia de ' 5.

    Figura 12. Propriedades de especialista do nó Text Link Analysis.
    Propriedades de especialista do nó Text Link Analysis. Ele mostra caixas de seleção para configurações como Acomodar a ortografia para um limite mínimo de caracteres de raiz, Extrair unitermos, Extrair entidades não linguísticas, Algoritmo de maiúsculas, Agrupar nomes de pessoas parciais e completos quando possível e Usar derivação ao agrupar substantivos compostos.
  5. Clique em Salvar.
  6. Passe o mouse sobre o nó de saída Raw TLA e clique no ícone Run (Executar ) Ícone de execução.
  7. No painel Outputs and models (Saídas e modelos ), clique nos resultados com o nome Raw TLA output (Saída TLA bruta) para ver os resultados.

    Figura 13. Saída bruta do TLA.
    Saída bruta do TLA. É uma tabela com colunas como Concept1, Type1, Concept2, Type2, ID e Matched text. As entradas para colunas de conceito são palavras como quarto ou estacionamento. As entradas para colunas de tipo são palavras como Budget (Orçamento) ou Services (Serviços). As linhas mostram como um conceito está relacionado a um tipo ou a outros conceitos. Cada linha também mostra como essas palavras aparecem no texto.

    Figura 14. Contagem de sentimentos em um nó TLA.
    Contagem de sentimentos em um nó TLA. É uma tabela com as colunas ID, Comments, Pos_Count_Sum e Neg_Count_Sum. As entradas para a coluna ID são números para cada linha. As entradas da coluna Comentários mostram frases curtas extraídas do texto. Por exemplo, uma entrada diz Quartos confortáveis, café da manhã excelente e serviço simpático. As entradas para as colunas Pos_Count_Sum e Neg_Count_Sum mostram números que contam o número de sentimentos positivos ou negativos para cada frase curta. Por exemplo, para a frase anterior, ele contou três sentimentos positivos.

Ícone de ponto de controle Verifique seu progresso

A imagem a seguir mostra o fluxo concluído.

Fluxo concluído

de volta para a parte superior

Resumo

Esse fluxo de satisfação do hotel mostrou como um gerente de hotel pode analisar as avaliações do hotel para ver as opiniões expressas pelos clientes sobre o pessoal do hotel, o conforto, a limpeza, o preço e outras áreas de interesse. Esse fluxo ilustra duas maneiras de analisar dados de texto, usando um nó Text Mining ou um nó Text Link Analysis.

Próximas etapas

Agora você está pronto para experimentar outros tutoriais do SPSS® Modeler.