Inteligência Artificial como serviço Uma introdução aos Serviços Cognitivos da Microsoft Azure
Thiago CustódioPrefácio por Glauter Jannuzzi
A tecnologia transforma nossas vidas desde os tempos mais remotos. Particularmente quando o tema é relacionado a Inteligência Artificial, os mais aficionados por ficção científica vão se lembrar do HAL 9000, personagem da série “2001 – Uma odisseia no espaço” adaptado pelo cineasta Stanley Kubrick em 1968. HAL na verdade era o que podemos chamar hoje de assistente virtual inteligente, como a Alexa da Amazon ou o Google Assistent, ou ainda, a Siri, assistente presente nos iPhone da Apple ou a Cortana, assistente desenvolvida pela Microsoft para devices Windows. HAL na verdade era uma sigla para Heuristically programmed ALgorithmic Computer ou Computador Algorítmico Heuristicamente Programado.
O fato de que qualquer tipo de robô ou dispositivo que consiga passar a sensação de inteligência em uma interação com um ser humano já é bem notável. O fascínio que tal tipo de algoritmo desperta na humanidade é algo que vem de muitas décadas. Vide o famoso e ainda mais antigo experimento conhecido como Teste de Turing de 1950. Alan Turing, um gênio da lógica e computação, britânico, publicou um artigo intitulado “Computer Machinery and Intelligence” onde propôs esse teste. O teste consistia em colocar uma pessoa (chamada de juiz) em contato, através de uma máquina, com outros dois participantes de uma conversa. Um deles era um ser humano, assim como o juiz, o outro era um algoritmo de computador, uma máquina. Caso o juiz em interação usando linguagem natural não conseguisse distinguir quem era o humano ou a máquina, o algoritmo teria passado no teste.
Depois de 2001 – Uma odisseia no espaço (que na verdade foi concebido em 1968) e o teste de Turing de 1950, vamos retornar a 2020. Desde que conseguimos disponibilizar poder computacional em abundância com a computação em nuvem, tem sido cada vez mais fácil permitir que computadores (ou softwares) consigam processar imagens, sons e uma massa enorme de dados não relacionais para gerar inteligência a partir disso tudo. Graças à computação em nuvem, foi possível aprofundar ainda mais os estudos e falarmos de Deep Learning, disciplina que vem evoluindo muito desde 2010.
Sempre que recebo jovens na Microsoft para uma palestra sobre tecnologia, inovação e carreira, eu gosto de lhes perguntar se sabem o que é Inteligência Artificial (IA). Quando lanço a pergunta, muitos levantam as mãos afirmando que sabem do que se trata. Porém, quando peço para definirem, muitos têm dificuldade de explicar em poucas palavras o que é ou o que torna um dispositivo inteligente. E a resposta está no que chamamos de Serviços Cognitivos (do inglês Cognitive Services). Um dispositivo ou algoritmo inteligente que consegue interagir com humanos ou outros dispositivos usando os sentidos humanos de visão, audição, voz etc.
Em 2016, a Visão Computacional atingiu um grande marco: os computadores conseguiram a paridade com humanos no reconhecimento de objetos (Object Recognition). Em 2017, computadores conseguiram a paridade com humanos em reconhecimento de voz (Speech Recognition). Em 2018, as máquinas conseguiram paridade com humanos na capacidade de ler e interpretar um texto (Machine Reading Comprehension). Ainda em 2018, a máquina atingiu a paridade com humanos na capacidade de tradução de linguagens.
Perceba que, com a abundância de serviços na nuvem para processar grandes volumes de dados em tempos cada vez menores, estamos conseguindo criar o que nos primórdios se chamavam – com temor – de cérebro eletrônico. A máquina, conseguindo ser tão rápida quanto o homem, ou melhor, pois a partir do momento em que a paridade é atingida a máquina passa a nos superar. Foi assim na disputa entre um dos melhores enxadristas de todos os tempos, Garry Kasparov contra o computador Deep Blue, projetado pela IBM, que conseguia processar em sua versão inicial, cerca de 100 milhões de jogadas por segundo. Ainda assim, no primeiro jogo entre ambos, o humano venceu. Kasparov venceu Deep Blue em 1996. Na partida seguinte, um ano depois, Deep Blue já podia processar 250 milhões de jogadas por segundo e venceu Kasparov.
Não se trata de gerar temor de que as máquinas vão dominar o mundo, é preciso sim que haja ética e verificação sobre o que o ser humano pode e é capaz de criar utilizando não apenas IA, mas robótica, drones, Realidade Aumentada etc. O fato é que a Inteligência Artificial e todos os seus desdobramentos técnicos hoje em Machine Learning e Deep Learning podem habilitar o desenvolvimento de softwares de grande impacto em nossas vidas. Desenvolvedores e profissionais de TI podem fazer uso de Serviços Cognitivos já disponíveis na nuvem para criar soluções poderosas e tornarem seus aplicativos e devices, de fato, inteligentes.
Eu não diria que o céu é o limite, mas com o poder da computação em nuvem, especialmente, das plataformas de nuvem inteligente, há uma tendência de expansão infinita de capacidades que se expandem e multiplicam ano após ano. Neste livro, Thiago Custódio vai levar você a conhecer tecnicamente sobre os serviços cognitivos, detalhando o tema sobre análise de texto, pesquisa, reconhecimento de fala, tomada de decisão e visão computacional. Convido todos a estudarem o assunto e a partir desta obra, nos procurarem e participarem de nossos eventos de AI pelo mundo, pois o conteúdo é muito rico.
Boa leitura!
Glauter Jannuzzi - Microsoft MVP Lead e Apaixonado por Realidade Aumentada e Inteligência Artificial.
Sobre o livro
Por que escrevi este livro
Nos últimos anos, muito tem se falado sobre Aprendizado de Máquina (Machine Learning) e Inteligência Artificial (Artificial Intelligence). Também graças ao poder computacional disponível em provedores de computação em nuvem, está cada vez mais acessível adicionar estes algoritmos em suas aplicações seja via API ou bibliotecas.
Nosso objetivo com este livro é demonstrar o uso e alguns cenários onde os Serviços Cognitivos da Microsoft podem lhe economizar centenas ou milhares de linhas de código além de tornar a experiência da sua aplicação mais rica.
Para quem este livro se destina
Este livro se destina principalmente a todos da comunidade desenvolvedora e/ou arquiteta de software que estejam interessados em aprender e conhecer as possibilidades para deixar suas aplicações mais inteligentes pelo uso dos serviços cognitivos do Microsoft Azure.
Conhecimentos necessários
Assumimos que você possui conhecimento em lógica de programação e conhecimentos básicos em alguma linguagem de programação (preferencialmente C#).
Sobre o Microsoft Azure
Conhecimentos prévios em Microsoft Azure não são necessários, no entanto, para experimentar os serviços cognitivos é necessário possuir uma assinatura no Microsoft Azure.
Sobre o autor
Thiago trabalha com desenvolvimento utilizando a plataforma .NET desde 2004. De lá para cá, acumula dezenas de projetos entregues no Brasil, Nova Zelândia, Estados Unidos, Holanda, Austrália e República Tcheca.
Já ministrou diversos treinamentos oficiais Microsoft atuando como Microsoft Certified Trainer nos principais centros de ensino do Brasil. Também foi professor de MBA na FIAP, onde lecionou sobre Microsoft Azure no curso de Arquitetura e desenvolvimento na plataforma .NET.
Por suas contribuições junto aos times da Microsoft e a comunidade brasileira, Thiago é reconhecido como Most Valuable Professional desde 2015 na categoria Microsoft Azure.
Sumário
- Parte I - Um pouco de teoria
- 1 Inteligência Artificial e Aprendizado de Máquina, uma breve introdução
- 1.1 Como funciona a Visão Computacional?
- 1.2 Mesma ideia, mas para outros fins
- 2 Um pouco mais sobre Aprendizado de Máquina
- 2.1 Algoritmos supervisionados e não supervisionados
- Parte II - Começando com Serviços Cognitivos
- 3 Cognitive Services APIs
- 4 Introdução ao serviço de análise de textos
- 4.1 Criando o Serviço Cognitivo no Azure
- 4.2 Enviando chamadas via Visual Studio
- 4.3 Exemplos do mundo real
- 5 Adicionando buscas à aplicação com o Bing Search API
- 5.1 Criando o Serviço Cognitivo de Pesquisa no Azure
- 5.2 Criando uma Console Application para testes
- 5.3 Quando usar o Serviço Cognitivo de Busca - Bing Search?
- 6 Explorando o Serviço Cognitivo de fala
- 6.1 Provisionando o Serviço via Azure CLI
- 6.2 Prática
- 6.3 Case real - Protótipo Seeing AI
- 7 Moderação de conteúdo com o Azure Cognitive Services
- 7.1 Provisionando o serviço
- 7.2 Obtendo as chaves para autenticar a requisição
- 7.3 Moderando conteúdo de textos
- 7.4 Criando nosso projeto
- 8 Visão computacional com o Serviço Cognitivo de Visão
- 8.1 Provisionando o serviço em nossa assinatura do Microsoft Azure
- 8.2 Show me the code!
- 8.3 Possibilidades
- 9 Reconhecimento de tinta digital
- 9.1 Primeiros passos com o Serviço Cognitivo de Reconhecimento de Tinta Digital
- 10 Conhecendo o Serviço Cognitivo Video Indexer
- 10.1 Provisionando o serviço
- 10.2 Obtendo a Account Id e API Key
- 10.3 Criando a aplicação de teste
- 10.4 Casos de uso e aplicações
- 11 Introdução ao conceito de mineração de conhecimento
- 11.1 Entendendo como uma engine de busca funciona
- 11.2 Visão geral do Azure Cognitive Search
- 11.3 Provisionando o Azure Cognitive Search
- 11.4 Criando um índice reverso e enviando dados
- 11.5 Construindo uma aplicação de testes
- 11.6 Possibilidades e casos de uso
- 12 Presente, futuro e além
- 12.1 Futuro
- 12.2 Últimas considerações
Dados do produto
- Número de páginas:
- 131
- ISBN:
- 978-65-86110-18-0
- Data publicação:
- 06/2020