Fazer análise de sentimento com o Azure Stream Analytics e o Estúdio do Machine Learning (clássico)

Importante

O suporte para o Azure Machine Learning Studio (clássico) terminará em 31 de agosto de 2024. Recomendamos que você faça a transição para o Azure Machine Learning até essa data.

Desde 1º de dezembro de 2021, não é possível criar recursos (plano do serviço web e workspace) do Estúdio do Azure Machine Learning (clássico). Até 31 de agosto de 2024, você poderá continuar usando os serviços Web e experimentos existentes do Estúdio do Machine Learning (clássico). Para saber mais, veja:

A documentação do Estúdio do Machine Learning (clássico) está sendo desativada e pode não ser atualizada no futuro.

Este artigo mostra como configurar um trabalho simples do Azure Stream Analytics que usa o Estúdio do Machine Learning (clássico) para análise de sentimento. Você usa um modelo de análise de sentimento do Estúdio (clássico) na Galeria do Cortana Intelligence para analisar dados de texto de streaming e determinar a pontuação de sentimento.

Dica

É altamente recomendado usar UDFs do Azure Machine Learning em vez de UDFs do Estúdio do Machine Learning (clássico) para melhorar o desempenho e a confiabilidade.

Você pode aplicar o que aprendeu com este artigo a cenários como estes:

  • Analisar sentimento em tempo real no streaming de dados do Twitter.
  • Analisar registros de conversas do cliente com a equipe de suporte.
  • Avaliar comentários em fóruns, blogs e vídeos.
  • Muitos outros cenários de pontuação preditiva em tempo real.

O trabalho de Stream Analytics que você cria aplica o modelo de análise de sentimento como uma UDF (função definida pelo usuário) nos dados de texto de exemplo do repositório de blob. A saída (o resultado da análise de sentimento) é gravada no mesmo repositório de blob em um arquivo CSV diferente.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Uma assinatura ativa do Azure.

  • Arquivo CSV com alguns dados do Twitter. Baixe o arquivo de exemplo do GitHub ou crie seu próprio arquivo. Em um cenário do mundo real, você deve obter os dados diretamente de um fluxo de dados do Twitter.

Criar um contêiner de armazenamento e carregar o arquivo de entrada CSV

Nesta etapa, você carrega um arquivo CSV no contêiner de armazenamento.

  1. No portal do Azure, selecione Criar um recurso>Armazenamento>Conta de armazenamento.

  2. Preencha a guia Básico com os seguintes detalhes e deixe os valores padrão nos outros campos:

    Campo Valor
    Subscription Escolha sua assinatura.
    Resource group Escolha seu grupo de recursos.
    Nome da conta de armazenamento Insira um nome para a conta de armazenamento. O nome deve ser exclusivo em todo o Azure.
    Location Escolha um local. Todos os recursos devem usar o mesmo local.
    Tipo de conta BlobStorage

    provide storage account details

  3. Selecione Examinar + criar. Em seguida, selecione Criar para implantar sua conta de armazenamento.

  4. Após a conclusão da implantação, navegue até sua conta de armazenamento. Em Serviço Blob, selecione Contêineres. Então, selecione Contêiner para criar um novo contêiner.

    Create blob storage container for input

  5. Forneça um nome para o contêiner e verifique se o Nível de acesso público está definido como Privado. Quando terminar, selecione Criar.

    specify blob container details

  6. Navegue até o contêiner recém-criado e selecione Carregar. Carregue o arquivo sampleinput.csv baixado anteriormente.

    'Upload' button for a container

Agora que os dados de exemplo estão em um blob, você pode habilitar o modelo de análise de sentimento na Galeria do Cortana Intelligence.

  1. Acesse a página modelo preditivo de análise de sentimento da Galeria do Cortana Intelligence.

  2. Selecione Abrir no Studio (clássico) .

    Stream Analytics Machine Learning Studio (classic), open Studio (classic)

  3. Entre para acessar o workspace. Selecione uma localização.

  4. Selecione Executar na parte inferior da página. O processo é executado, o que leva cerca de um minuto.

    Run experiment in Studio (classic)

  5. Depois que o processo tiver sido executado com êxito, selecione Implantar serviço Web na parte inferior da página.

    Deploy experiment in Studio (classic) as a web service

  6. Para validar que o modelo de análise de sentimento está pronto para uso, selecione o botão Testar. Forneça entrada de texto, como "Eu amo a Microsoft".

    Test experiment in Studio (classic)

    Se o teste funcionar, você verá um resultado semelhante ao exemplo a seguir:

    Test results in Studio (classic)

  7. Na coluna Aplicativos, selecione o link Excel 2010 ou pasta de trabalho anterior para baixar uma pasta de trabalho do Excel. A pasta de trabalho contém a chave de API e a URL de que você precisará mais tarde para configurar o trabalho do Stream Analytics.

    Stream Analytics Machine Learning Studio (classic), quick glance

Criar um trabalho do Stream Analytics que usa o modelo do Estúdio (clássico)

Agora você pode criar um trabalho do Stream Analytics que leia os tweets de exemplo do arquivo CSV no armazenamento de blobs.

Criar o trabalho

Acesse o portal do Azure e crie um trabalho do Stream Analytics. Se você não estiver familiarizado com esse processo, confira Criar um trabalho do Stream Analytics usando o portal do Azure.

Configurar a entrada do trabalho

O trabalho obtém sua entrada do arquivo CSV que você carregou anteriormente para o armazenamento de blobs.

  1. Navegue até o trabalho do Stream Analytics. Em Topologia do Trabalho, selecione a opção Entradas. Selecione Adicionar Entrada de Fluxo>Armazenamento de Blobs.

  2. Preencha os detalhes de Armazenamento de Blobs com estes valores:

    Campo Valor
    Alias de entrada Dê um nome à sua entrada. Lembre-se desse alias ao escrever sua consulta.
    Subscription Selecione sua assinatura.
    Conta de armazenamento Escolha a conta de armazenamento criada na etapa anterior.
    Contêiner Selecione o contêiner que você criou na etapa anterior.
    Formato de serialização do evento CSV
  3. Selecione Salvar.

Configurar a saída do trabalho

O trabalho envia resultados para o mesmo armazenamento de blobs do qual ele obtém a entrada.

  1. Navegue até o trabalho do Stream Analytics. Em Topologia do Trabalho, selecione a opção Saídas. Selecione Adicionar>Armazenamento de Blobs.

  2. Preencha o formulário Armazenamento de Blobs com estes valores:

    Campo Valor
    Alias de entrada Dê um nome à sua entrada. Lembre-se desse alias ao escrever sua consulta.
    Subscription Selecione sua assinatura.
    Conta de armazenamento Escolha a conta de armazenamento criada na etapa anterior.
    Contêiner Selecione o contêiner que você criou na etapa anterior.
    Formato de serialização do evento CSV
  3. Selecione Salvar.

Adicionar a função Estúdio (clássico)

Anteriormente, você publicou um modelo de Estúdio (clássico) em um serviço Web. Nesse cenário, quando o trabalho de Stream Analysis é executado, ele envia cada tweet de exemplo da entrada para o serviço Web para análise de sentimento. O serviço Web do Estúdio (clássico) retorna um sentimento (positive, neutral ou negative) e uma probabilidade de o tweet ser positivo.

Nesta seção, você define uma função no trabalho do Stream Analysis. A função pode ser invocada para enviar um tweet ao serviço Web e retornar a resposta.

  1. Verifique se que você tem a URL do serviço Web e a chave de API baixada anteriormente na pasta de trabalho do Excel.

  2. Navegue até o trabalho do Stream Analytics. Em seguida, selecione Funções>+ Adicionar>Estúdio do Azure ML

  3. Preencha o formulário Função do Azure Machine Learning com estes valores:

    Campo Valor
    Alias da função Use o nome sentiment e selecione a opção Fornecer as configurações de função do Azure Machine Learning manualmente, que oferece uma opção para inserir a URL e a chave.
    URL Cole a URL do serviço Web.
    Chave Cole a chave de API.
  4. Selecione Salvar.

Criar uma consulta para transformar os dados

O Stream Analytics usa uma consulta declarativa baseada em SQL para examinar a entrada e processá-la. Nesta seção, você cria uma consulta que lê cada tweet da entrada e, em seguida, invoca a função de Estúdio (clássico) para executar a análise de sentimento. A consulta então envia o resultado para a saída definida (armazenamento de blobs).

  1. Retorne para a visão geral do trabalho do Stream Analytics.

  2. Em Topologia do trabalho, selecione Consulta.

  3. Insira a consulta a seguir:

    WITH sentiment AS (  
    SELECT text, sentiment1(text) as result 
    FROM <input>  
    )  
    
    SELECT text, result.[Score]  
    INTO <output>
    FROM sentiment  
    

    A consulta invoca a função que você criou anteriormente (sentiment) para executar a análise de sentimento em cada tweet na entrada.

  4. Selecione Salvar para salvar a consulta.

Iniciar o trabalho do Stream Analytics e verificar a saída

Agora você pode iniciar o trabalho do Stream Analytics.

Iniciar o trabalho

  1. Retorne para a visão geral do trabalho do Stream Analytics.

  2. Na parte superior da página, selecione Iniciar.

  3. Em Iniciar trabalho, selecione Personalizado e, em seguida, selecione um dia antes de quando você carregou o arquivo CSV para o armazenamento de blobs. Quando terminar, selecione Iniciar.

Verifique a saída

  1. Deixe o trabalho ser executado por alguns minutos até ver a atividade na caixa Monitoramento.

  2. Se você tiver uma ferramenta que use normalmente para examinar o conteúdo do armazenamento de blobs, use essa ferramenta para examinar o contêiner. Como alternativa, siga estas etapas no portal do Azure:

    1. No portal do Azure, localize a conta de armazenamento e, dentro da conta, localize o contêiner. Você ver dois arquivos no contêiner: o arquivo que contém os tweets de exemplo e um arquivo CSV gerado pelo trabalho do Stream Analytics.
    2. Clique com o botão direito do mouse no arquivo gerado e, em seguida, selecione Baixar.
  3. Abra o arquivo CSV gerado. Você verá algo parecido com o exemplo a seguir:

    Stream Analytics Machine Learning Studio (classic), CSV view

Métricas de exibição

Você também pode exibir as métricas relacionadas à função do Estúdio (clássico). As métricas a seguir relacionados à função são exibidas na caixa Monitoramento da visão geral do trabalho:

  • Solicitações de Função indica o número de solicitações enviadas a um serviço Web do Estúdio (clássico).
  • Eventos de função indica o número de eventos na solicitação. Por padrão, cada solicitação para um serviço Web do Estúdio (clássico) contém até mil eventos.

Próximas etapas