Na Arquitetura e Soluções da Imagem trabalhamos no desenho de soluções que suportam as estratégias de negócio de um cliente.
Durante as interações com o cliente no processo de desenho da solução, independente de quem é cliente ou sua indústria, alguns padrões, necessidades e perguntas são frequentes e se repetem.
Por tratarmos de soluções corporativas que suportam os processos estratégicos destas empresas, esses padrões, necessidades e perguntas estão quase sempre relacionados ao estado da arte e boas práticas consolidadas da área tecnologia de informação, e os SIG – Sistemas de Informações Geográficas – ou GIS (sigla em inglês) são sobretudo, sistemas de informação.
Como o estado da arte da tecnologia da informação está em constante evolução, os interesses e perguntas das áreas de TI na plataforma ArcGIS acompanham esta constante evolução.
Uma das perguntas frequentes nas interações da Arquitetura de Solução com as áreas técnicas e de negócios dos clientes é: “Como o ArcGIS trata Inteligência Artificial (AI)?” Ou ainda, “a Plataforma ArcGIS faz Machine Learning?”
A resposta direta a estas perguntas é simplesmente: Sim!
Mas para entender os benefícios que algoritmos de Inteligência Artificial podem trazer quando combinada ao ArcGIS, nas próximas linhas vamos tratar de definir o que é AI e seus componentes, como usá-la na Plataforma ArcGIS e finalmente tecer algumas considerações gerais sobre o uso de Inteligência Artificial.
Inteligência Artificial, Machine Learning, Deep Learning e Processamento de Linguagem Natural
Mas o que seria Inteligência Artificial?
AI, do inglês Artificial Intelligence, Inteligência Artificial em português, resumidamente significa a mimetização de um comportamento humano por uma máquina, como por exemplo: um carro que dirige de modo autônomo, uma central de atendimento que interage com um cliente ou uma casa que conversa com seus habitantes para atender suas necessidades.
Todos estes comportamentos estão relacionados a capacidade de tomada de decisão.
O uso de AI permite automatizar e, deste modo, ganhar velocidade e escala em decisões que especialistas humanos tomariam. Para isto, estas máquinas precisam ser treinadas de modo a possuir o mesmo conhecimento que estes especialistas possuem. Em AI, dados são usados para treinar máquinas que produzem a partir destes dados conhecimento na forma de algoritmos.
Sendo Inteligência Artificial o conceito mais abrangente, é possível aplicar AI através de ML, do inglês Machine Learning, através de DL, do inglês Deep Learning, ou ainda através de NLP, do inglês Natural Language Processing.
Enquanto Machine Learning (ML) é uma parte, um subconjunto, de AI e Deep Learning (DL) é uma parte de ML. NLP, o processamento de linguagem natural é uma parte de AI e que também pode ser implementada com algoritmos de ML e DL.
Em Machine Learning, a máquina é treinada para escrever um algoritmo que seria complexo demais para um programador humano escrever, ou seja, o produto do aprendizado da máquina treinada é um código, escrito por ela, para resolver um problema. Tipicamente um problema de classificação, agrupamento ou predição (regressão).
Uma vez que o código está escrito, ou a máquina ter aprendido a resolver um problema, quando são apresentadas as mesmas variáveis ela saberá apontar o resultado e resolver o problema. E assim como nós, quando somos questionados, a máquina responde com diferentes graus de certeza baseado na quantidade de treinamento e na qualidade dos dados.
É necessária a avaliação deste grau de certeza somada a avaliação de um especialista no assunto, para decidir se o aprendizado da máquina foi realizado com sucesso. Assim como nós, a máquina passa por avaliações objetivas e subjetivas para ter seu sucesso medido.
Para que um algoritmo de Machine Learning seja treinado, um conjunto de observações com seus respectivos atributos é apresentado à máquina.
Para os problemas de classificação e regressão resolvidos por ML, resultados ou labels são adicionados a estes conjuntos de atributos e deste modo a máquina usa estas entradas e valores de referência para aprender.
Por exemplo, se o objetivo é ensinar uma máquina a calcular o valor de um imóvel como um corretor experiente, os atributos de imóveis (localização, número de quartos, se possui garagem, etc.) e o respectivo label de valor do imóvel, de várias observações de avaliações de imóveis são apresentados à máquina, que “escreve um código” para resolver este problema.
Após a máquina ser treinada, os resultados são avaliados por modos objetivos, baseados nas estatísticas de acerto e de modo mais subjetivo por um corretor experiente, o especialista no assunto.
Além do uso de redes neurais para a criação do algoritmo, a grande diferença entre Machine Learning e Deep Learning está nos atributos que são considerados pela máquina.
Enquanto em ML a decisão de quais atributos a máquina considerará no treinamento é passada para a máquina por um operador humano, em DL a máquina decide como e quais características do conjunto de observações serão usadas em seus códigos.
A máquina neste caso trabalha como autodidata, e como para este tipo aprendizado são usadas redes neurais, e em particular, com duas ou mais camadas (layers) entre a camada de entrada e a da saída da rede neural, a rede é considerada profunda (deep em inglês) em comparação a uma rede rasa que possui apenas uma camada entre as camadas de entrada e saída, daí o termo Deep Learning.
NLP, Natural Language Processing, ou Processamento de Linguagem Natural em português, permite a interpretação de textos livres, identificando no texto pessoas, lugares e o sentimento do texto. Alguns algoritmos de NLP podem usar ML ou ainda DL.
Fique por dentro de todas as novidades do Portal GEO. Faça grátis sua inscrição!
Veja também:
Lançamento Oficial do ArcGIS 10.7: ASSISTA AO VÍDEO COMPLETO!
ArcGIS na mais confiável estrutura empresarial na nuvem: ASSISTA AGORA!
Novidades do Operations Dashboard for ArcGIS
GIS, um elo entre indústria e meio ambiente
ArcGIS Enterprise no Microsoft Azure
Inteligência Artificial e Location Intelligence
A aplicação da Inteligência Artificial, assim como a Location Intelligence, pode resolver problemas de negócio relacionados ao atingimento dos objetivos estratégicos de uma empresa.
Quando usadas em conjunto, Inteligência Artificial e Location Intelligence, torna-se possível automatizar decisões complexas, onde a variável espacial possui importância estratégica e diferencial.
A plataforma ArcGIS possui a capacidade de aplicar IA através de algoritmos de: Classificação, Regressão, Agrupamentos e Processamento de Linguagem Natural (NLP).
A combinação destas duas estratégias denominaremos daqui em diante de Geo AI.
Classificação, Regressão, Agrupamentos e Processamento de Linguagem Natural (NLP) são algoritmos Inteligência Artificial, que respondem a tipos distintos de perguntas:
Classificação:
Quais segmentos de consumidores estão mais propensos a adquirir meus produtos?
Um algoritmo de Machine Learning treinado com as caraterísticas e comportamento sociais e padrões de consumo, pode determinar quais consumidores estão mais inclinados a aderir a campanhas de determinados produtos.
Considerando a relação destes consumidores com o meio geográfico (proximidade com avenidas, lojas, concorrência, trânsito,etc.) é possível inserir no algoritmo a influência da geografia na decisão do consumidor em adquirir determinado produto ou serviço, direcionando as ações de marketing e comerciais de uma empresa ao segmento de maior retorno.
De modo similar, com o treinamento de algoritmos com observações históricas de eventos e seus atributos, é possível classificar e atualizar os status de cruzamentos de veículos como propensos a acidentes ou determinar quais áreas de meu empreendimento estão suscetíveis à riscos e ações de terceiros.
Ainda em classificação, estão as identificações de padrões em imagens, como defeitos na pavimentação de rodovias, desmatamentos ou quantas/quais pessoas aparecem em determinada imagem, ou ainda qual tipo de aeronave foi identificada em determinado aeroporto.
Nos algoritmos de classificação, a partir de um conjunto de classes e atributos com as quais foi treinada, a máquina aponta a qual classe pertence uma determinada entrada de dados. A entrada de dados deve ter as mesmas dimensões dos atributos com os quais foi treinada.
Regressão:
Calcular valores de imóveis, quantidade de pessoas que comparecerão a um evento, a produção agrícola por talhão, quantidades de perdas técnicas ou não técnicas, as vendas em filiais no próximo ano.
As regressões estão associadas a predições que influenciam as estratégias de negócio, definem táticas e corrigem ações operacionais.
Combinar a variável geográfica e as relações topológicas como o contexto, proximidade com escolas, arruamento, tipo de solo, clima, áreas de influência do negócio e concorrentes, com os demais atributos do objeto para realizar o treinamento da máquina é combinar a Inteligência Artificial com Location Intelligence, empoderando o algoritmo de AI.
As variáveis, assim como no caso da classificação, são passadas ao algoritmo com valores de referência associados para treinar a máquina.
Nos algoritmos de Regressão, a partir do conjunto de valores e atributos com as quais foi treinada, a máquina apresenta um valor para uma determinada entrada de dados. A entrada de dados deve ter as mesmas dimensões dos atributos com os quais foi treinada.
Agrupamentos:
Preciso segmentar meus atendimentos para que eu possa criar uma política de relacionamento para cada um destes grupos, qual seria a melhor forma de criar os agrupamentos?
Como posso segmentar os distritos escolares levando em consideração as características sociais de cada setor censitário?
Quais pontos de venda da minha empresa estão em regiões que concentram meus clientes de interesse?
Onde estão concentradas as postagens de mídias sociais após uma determinada catástrofe?
Os algoritmos de agrupamento (clustering em inglês) vão criar grupos de objetos com características semelhantes entre si. Em uma plataforma como o ArcGIS, estes agrupamentos podem ter a questão espacial como um dos parâmetros para criar estas segmentações de universo de objetos.
Nos algoritmos de Agrupamento, a partir de um conjunto de objetos serão criados grupos baseando-se na semelhança dos atributos. Considerando a Location Intelligence associada à Inteligência Artificial, também é possível criar estes agrupamentos baseados na localização geográfica.
Processamento de Linguagem Natural:
Uma central de atendimento de despacho de serviços apoiada em Inteligência Artificial recebe uma mensagem de texto enviado pelo celular de um cliente, solicitando determinado tipo de serviços para um endereço e despacha uma equipe para o atendimento, considerando a melhor rota para este atendimento dentro da programação de atendimentos do dia.
Uma agência de publicidade analisa postagens em mídias sociais e sites de notícia para perceber se determinada campanha está tendo o resultado esperado por regiões onde a campanha foi realizada.
Um departamento que recebe relatórios das equipes de campo, feitos em texto livre de modo automático e processa automaticamente as pessoas envolvidas no relatório e as áreas geográficas de influência positivas e negativas do relatório.
Nos algoritmos de NLP, a partir de informações passadas em textos livres como postagem em mídias sociais, e-mails, reportagens ou relatórios, serão extraídos lugares, pessoas, sentimento do texto (sé é positivo, neutro ou negativo) e estatísticas sobre as palavras usadas.
Considerando a Location Intelligence associada à Inteligência Artificial, os lugares extraídos podem ser georreferenciados, transformando pontos de interesse e endereços em coordenadas geográficas, para poderem ser geoprocessados de acordo com as estratégias do negócio e eventualmente sendo entrada para os demais algoritmos de AI.
Adicionando mais estratégias ao Geo AI
Continuando a falar de Plataforma ArcGIS, outras estratégias como Tempo Real e Processamento de Big Data podem complementar a combinação Inteligência Artificial e Location Intelligence para tornar-se uma combinação de estratégias mais poderosa.
ArcGIS e AI⑴
A Esri está continuamente avançando com a Plataforma ArcGIS para aprofundar seu suporte em relação a Inteligência Artificial (AI). Como resultado destes avanços, o ArcGIS suporta Machine Learning (ML), um subconjunto de AI focado em algoritmos que reconhecem e aprendem por reconhecimento de padrões.
Muitas das ferramentas de análises do ArcGIS suportam técnicas de ML para classificar objetos, identificar padrões e fazer previsões. Estas fermentas ajudam os clientes da plataforma a responder questões complexas e geram insights mais assertivos.
Machine Learning na Plataforma ArcGIS
A plataforma ArcGIS usa técnicas de Machine Learning para automatizar tarefas de análise como detecção de objetos e classificação, agrupamentos e modelagem preditiva. Estas técnicas estão disponíveis nas ferramentas nativas de geoprocessamento da plataforma, não é necessário um pacote separado de Machine Learning para acessar ou usá-las.
As ferramentas de Machine Learning inseridas no ArcGIS incluem:
Ferramentas de Classificação:
A plataforma ArcGIS dispõe de métodos de classificação de imagens que utilizam algoritmos treinados em bases de treinamento para classificar arquivos raster de dados de sensoriamento remoto. Além da aplicação em rasters, é possível classificar dados vetoriais baseados em seus atributos e localização.
As ferramentas de Classificação no ArcGIS suportam algoritmos de Machine Learning incluindo: Forest-based Classification and Regression, Maximum Likelihood Classification, Non-Maximum Suppression, Random Trees, Support Vector Machine, Classify Pixels usando Deep Learning e Detect Objects usando Deep Learning.
Existem também ferramentas para a verificação de resultado da classificação como a geração de matrizes de confusão entre um mapa classificado e os dados de referência.
Ferramentas de Regressão (Predição):
A Plataforma ArcGIS suporta técnicas de regressão e interpolação que usam valores conhecidos para realizar predições.
As ferramentas de predição disponíveis na plataforma ArcGIS que aplicam algoritmos de Machine Learning incluem Empirical Bayesian Kriging (EBK), Areal Interpolation, EBK Regression Prediction, Ordinary Least Squares Regression, Exploratory Regression, Forest-based Classification and Regression e Geographically Weighted Regression.
Ferramentas de Agrupamento:
A plataforma ArcGIS inclui algoritmos que agrupam observações dos dados baseadas em similaridades de atributos, localização ou ambos.
As ferramentas de agrupamento que usam algoritmos de Machine Learning contêm Spatially Constrained Multivariate Clustering, Multivariate Clustering, Density-based Clustering, Image Segmentation, Hot Spot Analysis, Cluster e Outlier Analysis, Space Time Pattern Mining e Time Series Clustering.
NLP na Plataforma ArcGIS
O ArcGIS LocateXT é uma extensão que permite extrair coordenadas, lugares, nomes e outras informações críticas de textos livres (desestruturados). Deste modo permite descobrir com mais facilidade geoinformações inseridas em mensagens, relatórios, briefings, mídias sociais e outras fontes de informação baseadas em texto.
Integrações do ArcGIS com Machine Learning
A plataforma ArcGIS pode conectar-se de modo complementar com modelos e frameworks de Machine Learning.
Deste modo, é possível combinar as ferramentas do ArcGIS com ferramentas externas de ML, visualizando, validando e enriquecendo espacialmente os resultados dos seus Analytics no ArcGIS. Sendo assim, é possível aplicar mais efetivamente estatísticas espaciais e ML juntos para resolver problemas complexos.
As integrações podem ser feitas através da API do ArcGIS para Python, pelo package ArcPy para Python e pelo R-ArcGIS Bridge.
Com este conjunto de ferramentas é possível fazer o ArcGIS trabalhar com bibliotecas providas pelo IBM Watson, Microsoft CNTK, TensorFlow, Keras, scikit-learn, Theano, entre outros pacotes de Machine Learning.
A integração pode ser feita também pelo compartilhamento de dados processados na plataforma ArcGIS para uso nestas plataformas. Somado a estas possibilidades, está a capacidade de converter modelos treinados em Deep Learning para uso no ArcGIS e a criação de dados de teste para uso em outras aplicações.
Além destas integrações, A Esri está em parceria com a Microsoft para oferecer uma máquina virtual para Geo AI e Data Science – Geo AI Data Science Virtual Machine (DSVM).
Esta oferta adiciona as capacidades analíticas do ArcGIS Pro para as ferramentas de AI e Data Science disponíveis na Microsoft DSVM. É possível usar a Geo AIS DSVM para criar soluções de AI que aplicam a Location Intelligence para criar insights geoespaciais que informem e melhorem os processos de decisão.
Considerações sobre o uso de AI
Dados, mas dados de qualidade!
A assertividade de seu algoritmo está diretamente relacionada a qualidade das observações e seus atributos que são passadas para o treinamento da AI, seja o treinamento supervisionado ou não.
Em 1864, Charles Babbage, inventor e matemático considerado o pai do computador automático digital, registra em seu livro Passages from the Life of a Philosofer, que em duas ocasiões membros do parlamento inglês o questionaram se informado os dados errados ao computador ainda assim seria possível que o resultado fosse correto, o que Babbage entende como a pergunta de uma mente muito confusa.
Em duas ocasiões, membros do Parlamento Inglês me perguntaram, “Sr. Babbage, se você colocar dados errados nesta máquina, ela ainda dará as respostas certas?”. Eu não sou capaz de entender corretamente o tipo de confusão de ideias que poderia provocar tal pergunta.
Charles Babbage em ‘Difference Engine No. 1’, Passages from the Life of a Philosopher (1864), Cap. 5, 59.
Se por um lado o estado da arte da tecnologia de informação é dinâmico, algumas questões permanecem os mesmos por quase dois séculos. Para que possamos ter a resposta correta precisamos de dados de qualidade.
E algoritmos de AI precisam de muitos dados – muitos dados de qualidade!
Trazendo a pergunta dos membros de parlamento inglês do século XIX para o presente, seria como alguém acreditasse que com um dataset pequeno (em ambas as dimensões de número de observações ou atributos das observações) e de baixa qualidade (valores nulos ou não confiáveis) usado para treinar uma Inteligência Artificial poderia produzir alguma inteligência de fato.
É justamente nesta questão, engenharia de dados, onde boa parte do tempo do treinamento de AI deve ser alocado, obtendo as observações que serão usadas para o treino do modelo e garantindo que sejam em número suficiente e na qualidade adequada.
O algoritmo que a Inteligência Artificial gera a partir do seu treinamento será tão bom quanto a qualidade dos dados usados de entrada, e eventualmente, nem com dados de qualidade o resultado poderá ser aproveitado.
Neste ponto, entra o especialista no assunto (SME, do inglês Subject Matter Expert). O resultado do treino do algoritmo não deve ser verificado apenas do ponto de vista estatístico através de matrizes de confusão ou coeficientes de correlação, mas também do ponto de vista do negócio por um especialista no assunto.
Ética e um AI confiável
Uma vez treinado e avaliado por um SME, o algoritmo entra em produção interagindo com outros sistemas e pessoas. Neste momento é preciso garantir que a Inteligência Artificial esteja de acordo com a estratégia da empresa, garantindo e gerando valor para a pessoa que interage com a AI.
A estratégia de AI deverá estar conforme as regras de compliance e governança da tecnologia da informação, principalmente garantindo os mesmos diretos em relação aos clientes da empresa que interagem mais diretamente com os algoritmos de AI como aqueles que são garantidos quando a interação é feita por colaboradores humanos da empresa.
Há poucos dias, o grupo de especialistas em AI da comunidade europeia High-Level Expert Group on Artificial Intelligence (AI HLEG), divulgou um guia para ética e um AI confiável. Segundo o documento publicado pelo grupo, interfaces de AI devem garantir o respeito e aplicação de leis e regulamentos, respeitar a ética, princípio e valores, e ser robusto de um ponto de vista técnico, enquanto leva em conta o ambiente social, sem causar danos a este ambiente.
Além destes pontos, questões como Supervisão, Privacidade, Governança de Dados, Transparência, Igualdade no tratamento (questão do bias) e responsabilidade são requisitos-chave na aplicação de AI.
A AI confiável é aquela na qual a pessoa que interage com a AI e tem seus diretos garantidos e respeitados.
Hora de praticar!
Agora que já vimos:
- O conceito de AI;
- Como pode ser usada;
- Como potencializá-la com Location Intelligence;
- Como a plataforma ArcGIS suporta seu uso;
- A necessidade de um conjunto de dados de qualidade para seu treinamento;
- Que o resultado do treinamento tem que ser avaliado também por um especialista no negócio;
- Os limites de governança e éticos de seu uso.
Mãos à obra!
(1) Informações sobre algoritmos de ML e NLP implementadas na Plataforma ArcGIS extraídas de relatórios internos da Esri produzidos por Alexander Plant.
Você gostou desse artigo?
O Portal GEO está sempre trabalhando para trazer novidades, tendências e o que há de melhor em dicas do universo GIS. Clique abaixo e faça sua inscrição gratuita para receber com comodidade todos os nossos artigos, que tenho certeza, vão te apoiar em seu cotidiano profissional e pessoal, te deixando sempre bem informado: